/* Video hochladen (Etappe 5, web/reels.ts): Formular, Detail eines eigenen
   Videos und die Upload-Kachel im Wochenraster. Eigene Datei neben app.css,
   nur --marke-* Tokens und die Rollen aus app.css, keine eigenen Farbwerte. */

/* Upload-Kachel im Wochenraster (ADR 0017): steht nach Zeit zwischen den
   Terminen, belegt keinen und zählt nicht in "n von N Terminen". Das Cover
   wird wie die Termin-Vorschau auf 4:5 beschnitten, damit die Reihe gleich
   hoch bleibt. Die Marke "Eigenes Video" sitzt rechts in der Statuszeile. */
.upload-marke {
  margin-left: auto;
  background: var(--marke-ink);
  color: var(--marke-paper);
  border-radius: var(--marke-radius-pill);
  padding: 1px 8px;
  font-size: .7rem;
  font-weight: 500;
  white-space: nowrap;
}

/* Leere Badges (Säule eines Uploads in Verlauf und Agentur-Karten) nicht als leere Pille zeigen. */
.badge:empty { display: none; }

/* Formular */
.upload-formular input[type="file"] {
  display: block;
  width: 100%;
  padding: 12px;
  border: 1.5px dashed var(--marke-faint);
  border-radius: var(--marke-radius);
  background: var(--marke-paper);
  font: inherit;
}
.upload-formular input[type="file"]::file-selector-button {
  font: inherit;
  font-weight: 500;
  color: var(--marke-ink);
  background: var(--fuellung);
  border: 0;
  border-radius: var(--marke-radius-pill);
  padding: 7px 14px;
  margin-right: 12px;
  cursor: pointer;
}
.upload-formular input[type="datetime-local"],
#termin-aendern input[type="datetime-local"] {
  display: block;
  width: 100%;
  max-width: 320px;
  height: 44px;
  margin: 6px 0 8px;
  padding: 0 12px;
  border: 1px solid var(--marke-line);
  border-radius: var(--marke-radius);
  background: var(--marke-card);
  color: var(--marke-ink);
  font: inherit;
}
.kanal-wahl {
  margin: 4px 0 18px;
  padding: 10px 14px 12px;
  border: 1px solid var(--marke-line);
  border-radius: var(--marke-radius);
}
.kanal-wahl legend { padding: 0 6px; font-size: .86rem; font-weight: 500; color: var(--marke-ink); }
.kanal-wahl .radio { display: flex; align-items: center; gap: 10px; min-height: 44px; margin: 2px 0; cursor: pointer; font-weight: 400; }
.kanal-wahl .radio input { accent-color: var(--marke-tann); width: 18px; height: 18px; }
.schnellwahl-reihe { margin: 4px 0 0; }
button.chip.schnellwahl { width: auto; min-height: 40px; cursor: pointer; font: inherit; font-size: .85rem; font-weight: 500; letter-spacing: 0; padding: 7px 14px; border-radius: var(--marke-radius-pill); }

/* Detail */
.upload-wartet {
  aspect-ratio: 9 / 16;
  max-height: 60vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  border: 1.5px dashed var(--marke-faint);
  border-radius: var(--marke-radius-card);
  background: var(--marke-paper);
}
.loeschen-link { margin: 4px 0 0; font-size: .85rem; }
.loeschen-link a { color: var(--marke-muted); }
.loeschen-box { border-color: var(--marke-amber700); }
