/* DarkBot – Antragsseite (beantragen / discord / telegram / whatsapp)
 * Baut auf dark-base.css + dark-storm.css + dark-header.css auf; hier steht nur,
 * was die Antragsseite zusaetzlich braucht. Keine fremden Quellen. */
.da-app { display: grid; gap: 1.3rem; min-width: 0; }
.da-app *, .da-app *::before, .da-app *::after { box-sizing: border-box; }
.da-karte { border: 1px solid rgba(193,18,31,.3); border-radius: var(--db-radius-lg, 18px); background: linear-gradient(120deg, rgba(193,18,31,.10), rgba(12,9,14,.85) 60%); padding: 1.2rem 1.1rem; min-width: 0; }
.da-karte h2 { margin: 0 0 .8rem; font-size: 1.15rem; overflow-wrap: anywhere; }
.da-karte h3 { margin: 1rem 0 .5rem; font-size: 1rem; }
.da-leise { color: var(--db-muted, #9c8d93); font-size: .88rem; }

/* Plattformwahl */
.da-plattformen { display: grid; gap: .8rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); }
.da-plattform { display: flex; flex-direction: column; gap: .3rem; align-items: flex-start; text-align: left; min-height: 96px; padding: 1rem; border-radius: 14px; border: 1px solid rgba(255,255,255,.14); background: rgba(5,4,7,.7); color: #f3eef0; font: inherit; cursor: pointer; transition: border-color .15s, background .15s, transform .15s; }
.da-plattform:hover { border-color: rgba(255,43,61,.6); transform: translateY(-1px); }
.da-plattform:focus-visible, .da-knopf:focus-visible, .da-wahl label:focus-within { outline: 3px solid rgba(255,43,61,.55); outline-offset: 2px; }
.da-plattform[aria-checked="true"] { border-color: #ff2b3d; background: rgba(255,43,61,.12); box-shadow: 0 0 22px rgba(193,18,31,.3); }
.da-plattform b { font-size: 1.1rem; }
.da-plattform span { color: var(--db-muted, #9c8d93); font-size: .85rem; }

.da-schritte { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 170px), 1fr)); gap: .6rem; margin: 0; padding: 0; list-style: none; counter-reset: s; }
.da-schritte li { counter-increment: s; border: 1px solid rgba(255,255,255,.1); border-radius: 12px; padding: .7rem .9rem; font-size: .88rem; color: var(--db-muted, #9c8d93); }
.da-schritte li::before { content: counter(s) " · "; color: #ff2b3d; font-weight: 800; }

/* Formular */
.da-form { display: grid; gap: 1.1rem; min-width: 0; }
.da-raster { display: grid; gap: .9rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); }
.da-feld { display: flex; flex-direction: column; gap: .35rem; min-width: 0; }
.da-feld.breit { grid-column: 1 / -1; }
.da-feld label { font-size: .88rem; font-weight: 700; color: var(--db-bone, #efe6e8); }
.da-feld label .da-pflicht { color: #ff6b78; margin-left: .2rem; }
.da-feld small { color: var(--db-muted, #9c8d93); font-size: .78rem; overflow-wrap: anywhere; }
.da-feld input, .da-feld textarea { width: 100%; min-width: 0; min-height: 44px; padding: .65rem .8rem; border-radius: 10px; border: 1px solid rgba(255,255,255,.14); background: rgba(5,4,7,.85); color: #f3eef0; font: inherit; }
.da-feld textarea { min-height: 96px; resize: vertical; }
.da-feld input:focus, .da-feld textarea:focus { outline: none; border-color: #ff2b3d; box-shadow: 0 0 0 3px rgba(255,43,61,.25); }
.da-feld [aria-invalid="true"] { border-color: #ff6b78; }
.da-fehler { color: #ff8b95; font-size: .82rem; font-weight: 600; min-height: 0; }
.da-fehler:empty { display: none; }
.da-wahl { display: flex; flex-wrap: wrap; gap: .5rem; }
.da-wahl label { display: inline-flex; align-items: center; gap: .45rem; padding: .5rem .8rem; border-radius: 10px; border: 1px solid rgba(255,255,255,.14); cursor: pointer; min-height: 44px; }
.da-wahl input, .da-regeln input { accent-color: #ff2b3d; width: 18px; height: 18px; flex: none; }
.da-wahl label:has(input:checked) { border-color: #ff2b3d; background: rgba(255,43,61,.1); }
.da-regeln { display: grid; gap: .45rem; margin: 0; padding: 0; list-style: none; }
.da-regeln label { display: flex; gap: .6rem; align-items: flex-start; padding: .45rem .2rem; min-height: 44px; cursor: pointer; }
.da-regeln input { margin-top: .15rem; }
.da-honig { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.da-meldung { padding: .8rem 1rem; border-radius: 10px; border: 1px solid rgba(255,43,61,.5); background: rgba(255,43,61,.08); overflow-wrap: anywhere; }
.da-meldung[hidden] { display: none; }
.da-meldung.gut { border-color: rgba(74,222,128,.5); background: rgba(74,222,128,.08); }
.da-hinweis { border-left: 3px solid #ff2b3d; padding: .6rem .9rem; background: rgba(255,43,61,.07); border-radius: 0 10px 10px 0; font-size: .9rem; }
.da-knopfreihe { display: flex; flex-wrap: wrap; gap: .6rem; align-items: center; }
.da-knopf { min-height: 44px; }
.da-knopf[disabled] { opacity: .6; cursor: progress; }
pre.da-vorschau { white-space: pre-wrap; overflow-wrap: anywhere; margin: .5rem 0 0; font: inherit; color: var(--db-muted, #9c8d93); }

/* Erfolg + Status */
.da-schluessel { display: grid; gap: .7rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); margin: .8rem 0; }
.da-schluessel div { border: 1px dashed rgba(255,255,255,.25); border-radius: 12px; padding: .7rem .9rem; min-width: 0; }
.da-schluessel dt { font-size: .78rem; color: var(--db-muted, #9c8d93); text-transform: uppercase; letter-spacing: .06em; }
.da-schluessel dd { margin: .2rem 0 .5rem; font-family: ui-monospace, 'Cascadia Mono', Consolas, monospace; font-size: 1.02rem; overflow-wrap: anywhere; word-break: break-all; user-select: all; }
.da-status-kopf { display: flex; flex-wrap: wrap; gap: .5rem .8rem; align-items: center; }
.da-chip { display: inline-flex; align-items: center; padding: .3rem .7rem; border-radius: 999px; border: 1px solid rgba(255,255,255,.2); font-size: .85rem; font-weight: 700; }
.da-chip.aktiv, .da-chip.genehmigt { border-color: rgba(74,222,128,.6); color: #86efac; }
.da-chip.abgelehnt, .da-chip.fehler, .da-chip.gesperrt { border-color: rgba(255,43,61,.7); color: #ff8b95; }
.da-chip.rueckfrage { border-color: rgba(192,132,252,.7); color: #d8b4fe; }
.da-liste { display: grid; gap: .5rem; margin: .6rem 0 0; padding: 0; list-style: none; }
.da-liste li { border: 1px solid rgba(255,255,255,.1); border-radius: 10px; padding: .55rem .8rem; overflow-wrap: anywhere; }
.da-liste li b { display: block; font-size: .8rem; color: var(--db-muted, #9c8d93); }
.da-liste li.team { border-color: rgba(255,43,61,.35); }
.da-arten { display: grid; gap: .8rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); margin-top: .8rem; }
.da-arten section { border: 1px solid rgba(255,255,255,.12); border-radius: 12px; padding: .8rem .9rem; min-width: 0; }
.da-arten section.aus { border-style: dashed; opacity: .85; }
.da-arten h3 { margin: 0 0 .4rem; font-size: .95rem; }
.da-arten dl { margin: 0; display: grid; gap: .35rem; }
.da-arten dt { font-size: .8rem; color: var(--db-muted, #9c8d93); }
.da-arten dd { margin: 0 0 .3rem; overflow-wrap: anywhere; }
@media (max-width: 420px) { .da-karte { padding: 1rem .8rem; } .da-knopfreihe .da-knopf { width: 100%; justify-content: center; text-align: center; } }
@media (prefers-reduced-motion: reduce) { .da-plattform { transition: none; } .da-plattform:hover { transform: none; } }
/* Der Seitentitel ist länger als die übrigen Hero-Wörter: umbrechen statt überlaufen. */
.ds-hero .ds-t.da-titel { margin: 0; font-size: clamp(1.25rem, 5.4vw, 2.4rem); line-height: 1.2; white-space: normal; overflow-wrap: anywhere; letter-spacing: .02em; }
.ds-hero .ds-frame { max-width: 100%; }
