/* Kleine Ergänzungen zu Tailwind (selbst gehostet, siehe /static/vendor). */
.htmx-indicator { opacity: 0; transition: opacity .2s; }
.htmx-request .htmx-indicator, .htmx-request.htmx-indicator { opacity: 1; }

/* Kanban-Spalten auf Mobilgeräten horizontal scrollbar. */
.board-scroll { -webkit-overflow-scrolling: touch; scrollbar-width: thin; }

/* Drag & Drop */
.karte-grab { cursor: grab; }
.karte-grab:active { cursor: grabbing; }
[data-stufe].drag-over { outline: 2px dashed #38bdf8; outline-offset: -2px; background: #eff6ff; }

/* Formular- und Button-Basis (unabhängig von Tailwind-Utilities). */
.inp {
  width: 100%; border: 1px solid #cbd5e1; border-radius: .375rem;
  padding: .375rem .5rem; font-size: .875rem; background: #fff; color: #0f172a;
}
.inp:focus { outline: 2px solid #7dd3fc; outline-offset: 0; border-color: #38bdf8; }
.label { display: block; font-size: .75rem; color: #475569; margin-bottom: .25rem; }

.btn {
  display: inline-flex; align-items: center; gap: .25rem; border: 0;
  border-radius: .375rem; padding: .375rem .75rem; font-size: .875rem;
  font-weight: 500; background: #1e293b; color: #fff; cursor: pointer;
}
.btn:hover { background: #0f172a; }
.btn:disabled { opacity: .45; cursor: not-allowed; }
.btn-sekundaer { background: #fff; color: #334155; border: 1px solid #cbd5e1; }
.btn-sekundaer:hover { background: #f8fafc; }
.btn-gefahr { background: #fff; color: #b91c1c; border: 1px solid #fecaca; }
.btn-gefahr:hover { background: #fef2f2; }
