:root{--maroon: #6b4a5a;--maroon-dark: #4a2f3c;--bg: #faf7f8;--line: #e7dde1}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:#2a2226}header.app{background:var(--maroon-dark);color:#fff;padding:14px 24px;display:flex;align-items:baseline;gap:12px}header.app h1{font-size:18px;margin:0}header.app .tag{font-size:12px;opacity:.8}header.app .spacer{flex:1}header.app button{background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff;border-radius:6px;padding:4px 10px;cursor:pointer}.cols{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:20px;max-width:1100px;margin:0 auto}.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px}.card h2{margin:0 0 12px;font-size:16px;color:var(--maroon-dark)}textarea,input{width:100%;border:1px solid var(--line);border-radius:8px;padding:8px;font:inherit}textarea:focus,input:focus,select:focus{outline:none;border-color:var(--maroon);box-shadow:0 0 0 3px #6b4a5a26}button:focus-visible,a:focus-visible{outline:2px solid var(--maroon);outline-offset:2px}.icon-btn:focus-within,label.dropzone:focus-within{outline:2px solid var(--maroon);outline-offset:2px}button.primary{background:var(--maroon);color:#fff;border:none;border-radius:8px;padding:8px 14px;cursor:pointer}button.primary:disabled{opacity:.5;cursor:not-allowed}button.ghost{background:#fff;border:1px solid var(--line);border-radius:6px;padding:5px 10px;cursor:pointer;margin-right:6px}button.danger{background:#fff;border:1px solid #b3261e;color:#b3261e;border-radius:6px;padding:5px 10px;cursor:pointer;margin-right:6px}button.danger:hover{background:#fdeceb}.icon-btn{display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:6px;padding:5px;cursor:pointer;color:var(--maroon-dark);line-height:0}.icon-btn:hover{border-color:var(--maroon)}.icon-btn.danger{color:#b3261e;border-color:var(--line);margin-right:0}.icon-btn.danger:hover{border-color:#b3261e;background:#fdeceb}.visually-hidden{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}label.dropzone{display:flex;align-items:center;justify-content:center;gap:8px;flex-direction:column;text-align:center;border:2px dashed var(--line);border-radius:10px;padding:18px;cursor:pointer;color:#7a6b72;background:#fdfbfc}label.dropzone:hover,label.dropzone.dragover{border-color:var(--maroon);color:var(--maroon-dark)}.suchfeld{display:flex;align-items:center;gap:8px}.suchfeld .lupe{color:#998b91;flex:0 0 auto;line-height:0}.proposal{border:1px solid var(--line);border-radius:8px;padding:10px;margin:8px 0}.proposal .src{font-size:12px;color:#7a6b72;margin:4px 0 8px}.chip{display:inline-block;font-size:11px;background:#f0e8eb;color:var(--maroon-dark);border-radius:999px;padding:1px 8px;margin-left:6px}.chip.warn{background:#fdeceb;color:#b3261e}.kat-dot{display:inline-block;width:8px;height:8px;border-radius:4px;margin-right:5px;vertical-align:middle}.entity{border-bottom:1px solid var(--line);padding:8px 0}.empty{color:#998b91;font-size:14px}.tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--line)}.tab{background:transparent;border:1px solid var(--line);border-bottom:none;border-radius:8px 8px 0 0;padding:8px 16px;cursor:pointer;color:var(--maroon-dark);font:inherit}.tab.active{background:var(--maroon);color:#fff;border-color:var(--maroon)}.card.onboarding{border-color:var(--maroon)}.card.onboarding ol{color:#2a2226}.auth{max-width:340px;margin:8vh auto}.auth .card>*{margin-bottom:10px}.auth a{color:var(--maroon);cursor:pointer;font-size:14px}.err{color:#b3261e;font-size:13px}.bogen{margin-top:10px;border-top:1px dashed #bbb;padding-top:8px}.bogen h3{margin:0 0 6px;font-size:14px;color:var(--maroon-dark)}.bogen-inhalt{margin-top:6px}.bogen-kopf{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:14px;margin-bottom:6px}.bogen-kopf .chip{margin-left:0}.bogen-banner{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:#f0e8eb;border:1px solid var(--maroon);border-radius:8px;padding:8px 10px;margin:8px 0;color:var(--maroon-dark);font-weight:600}.werte{list-style:none;margin:8px 0 0;padding:0}.werte li{border-bottom:1px solid var(--line)}button.wert{display:flex;justify-content:space-between;gap:12px;width:100%;background:none;border:none;padding:6px 2px;font:inherit;text-align:left;cursor:pointer;color:inherit}button.wert:hover{background:#fdfbfc}.wert-label,.rechenweg{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;min-width:0}.wert-zahl{flex:0 0 auto;font-weight:600;font-variant-numeric:tabular-nums}.rechenweg{font-size:13px;color:#5a4a52;background:#faf7fd;border-left:3px solid var(--maroon);padding:4px 8px;margin:0 0 6px}.bogen-bestaetigen{border:1px solid var(--line);border-radius:8px;padding:10px;margin:8px 0}.bogen-felder{border:none;padding:0;margin:0;min-width:0}.bogen-felder:disabled{opacity:.6}.bogen-feld{display:block;margin-bottom:8px;font-size:14px}.bogen-feld span{display:block;margin-bottom:2px;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.bogen-feld select{width:100%;max-width:100%}.bogen-feld small{display:block;margin-top:2px;font-size:13px;overflow-wrap:break-word}.bogen-feld small.hinweis{color:#5a4a52}.bogen-vorschau{margin:8px 0}.vorher-nachher{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:8px}.vorher-nachher th,.vorher-nachher td{border-bottom:1px solid var(--line);padding:4px;text-align:left;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.punkt-oeffnen{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;padding:6px 0}.punkt-oeffnen label{display:flex;flex-direction:column;font-size:13px;gap:2px;flex:1 1 140px;min-width:0}.punkt-oeffnen select{max-width:100%}.stufen-tabelle .aktionen button{margin:2px 6px 2px 0}.stufen-freigabe{margin-top:14px}.stufen-tabelle{width:100%;border-collapse:collapse;font-size:14px;margin-top:8px}.stufen-tabelle th,.stufen-tabelle td{border-bottom:1px solid var(--line);padding:6px 4px;text-align:left;vertical-align:top;overflow-wrap:break-word}.stufen-tabelle td[data-label=Stufe],.stufen-tabelle td[data-label=Bogen],.stufen-tabelle td[data-label=Quiz],.stufen-tabelle .chip{white-space:nowrap}.cols>*{min-width:0}@media (max-width: 700px){.cols{grid-template-columns:1fr;padding:12px}header.app{flex-wrap:wrap;padding:12px 16px}}@media (max-width: 520px){.stufen-tabelle thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.stufen-tabelle,.stufen-tabelle tbody,.stufen-tabelle tr,.stufen-tabelle td{display:block;width:100%}.stufen-tabelle tr{border-bottom:1px solid var(--line);padding:6px 0}.stufen-tabelle td{border-bottom:none;padding:2px 0}.stufen-tabelle td[data-label]:not(.aktionen):before{content:attr(data-label) ": ";color:#7a6b72}.stufen-tabelle td:empty{display:none}}.aufstieg-dialog,.glossar-dialog{width:min(720px,calc(100vw - 16px));max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);overflow-y:auto;overflow-x:hidden;border:1px solid var(--line);border-radius:10px;padding:16px;background:#fff;color:inherit}.glossar-dialog{width:min(560px,calc(100vw - 32px))}.aufstieg-dialog::backdrop,.glossar-dialog::backdrop{background:#2a222673}.aufstieg-dialog *,.glossar-dialog *{overflow-wrap:anywhere}.dialog-kopf{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px}.dialog-kopf h2{margin:0 0 8px;font-size:16px;color:var(--maroon-dark);min-width:0}.aufstieg-fortschritt{display:flex;flex-wrap:wrap;gap:4px;list-style:none;padding:0;margin:6px 0 2px;font-size:12px}.aufstieg-fortschritt li{border:1px solid var(--line);border-radius:999px;padding:2px 8px;color:#7a6b72}.aufstieg-fortschritt li.erledigt{background:#f0e8eb;color:var(--maroon-dark)}.aufstieg-fortschritt li.aktuell{background:var(--maroon);border-color:var(--maroon);color:#fff;font-weight:600}.schritt-zaehler{margin:2px 0 8px;font-size:12px}.aufstieg-schritt h3{margin:4px 0 8px;font-size:15px;color:var(--maroon-dark)}.aufstieg-schritt h3:focus{outline:none}.aufstieg-schritt h3:focus-visible{outline:2px solid var(--maroon);outline-offset:2px}.aufstieg-liste{padding-left:18px;margin:6px 0}.aufstieg-wahl,.quiz-frage{border:1px solid var(--line);border-radius:8px;padding:8px 10px;margin:0 0 10px;min-width:0}.aufstieg-wahl legend,.quiz-frage legend{font-weight:600;padding:0 4px}.aufstieg-wahl .hinweis{font-size:13px;color:#5a4a52;margin:2px 0 6px}label.option{display:flex;align-items:flex-start;gap:8px;padding:4px 0;cursor:pointer}label.option input[type=radio]{width:auto;flex:0 0 auto;margin-top:3px}label.option small{display:block;color:#7a6b72}.warum{background:#faf7fd;border-left:3px solid var(--maroon);border-radius:0 8px 8px 0;padding:8px 10px;font-size:14px}.warum h4{margin:0 0 4px;font-size:14px;color:var(--maroon-dark)}.warum ul{margin:0 0 6px;padding-left:18px}.warum p{margin:4px 0 0}.merkmal{border:1px solid var(--line);border-radius:8px;padding:8px 10px;margin:0 0 10px}.merkmal h4,.merkmal-regel{margin:0 0 6px;font-size:14px}.merkmal details{font-size:14px;margin:0 0 6px}.merkmal summary{cursor:pointer;color:var(--maroon-dark)}.glossar-links{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:0;font-size:13px}.glossar-links button{margin:0}.abschreiben{list-style:none;margin:6px 0;padding:0}.abschreiben li{border-bottom:1px solid var(--line);padding:6px 0}.abschreiben li.ok .wert-label:after{content:" ✓";color:#2e7d32}.abschreiben-zeile{display:flex;justify-content:space-between;gap:12px}.abschreiben-knoepfe{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.abschreiben-knoepfe button{margin:0}.abschreiben-knoepfe button[aria-pressed=true]{border-color:#2e7d32;color:#2e7d32}.quiz-antworten{display:flex;flex-direction:column;gap:6px}.quiz-antworten button{margin:0;text-align:left}.quiz-antworten button.richtig{border-color:#2e7d32;color:#2e7d32}.quiz-antworten button.falsch{border-color:#b3261e;color:#b3261e}.quiz-antworten button[aria-disabled=true]{cursor:default}.quiz-richtig{color:#2e7d32;font-size:14px;margin:6px 0 0}.quiz-falsch{color:#b3261e;font-size:14px;margin:6px 0 0}.erfolg{color:#2e7d32;font-weight:600}.aufstieg-nav{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:12px}.aufstieg-nav button{margin:0}.regel-grundlagen{font-size:12px;margin-bottom:6px}.glossar-liste{margin:0}.glossar-liste dt{font-weight:600;margin-top:8px}.glossar-liste dd{margin:2px 0 0;font-size:14px}a.einseiter-link{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:6px;padding:4px 10px;color:var(--maroon-dark);text-decoration:none;font-size:13px}a.einseiter-link:hover{border-color:var(--maroon)}.einseiter-alle,.spielerfelder{margin:8px 0}.spielerfelder form{border:1px solid var(--line);border-radius:8px;padding:10px;margin-top:6px;display:grid;gap:8px}.spielerfelder fieldset{border:none;margin:0;padding:0;display:grid;gap:6px;min-width:0}.spielerfelder legend{font-weight:600;font-size:14px;margin-bottom:4px}.spielerfelder label{display:grid;gap:2px;font-size:13px;min-width:0}.spielerfelder .zeichen-rest{font-size:12px;color:#6b5c63}.spielerfelder button[type=submit]{justify-self:start}.spielerfelder .notiz-feld{display:grid;gap:2px;min-width:0}.zauber-fest{font-size:13px;background:#f6f2f4;border-radius:6px;padding:4px 8px;margin:4px 0 8px}.zauber-filter{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 6px}.zauber-filter label{display:flex;flex-direction:column;gap:2px;font-size:12px;color:#5a4a52;flex:1 1 180px;min-width:0}.zauber-filter select{border:1px solid var(--line);border-radius:8px;padding:8px;font:inherit;background:#fff}.zauber-zaehler{margin:4px 0;font-size:14px}.zauber-zaehler.ok b{color:#2e7d32}.zauber-liste{max-height:52vh;overflow-y:auto;border-top:1px solid var(--line)}.zauber-liste h4{margin:0;padding:8px 0 2px;z-index:1;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--maroon-dark);position:sticky;top:0;background:#fff}label.zauber-option{display:flex;align-items:flex-start;gap:8px;padding:5px 4px;border-bottom:1px solid var(--line);cursor:pointer}label.zauber-option.gewaehlt{background:#f6f2f4}label.zauber-option input[type=checkbox]{width:auto;flex:0 0 auto;margin-top:3px}label.zauber-option small{display:block;color:#5a4a52;font-size:13px}label.zauber-option .zauber-meta{color:#7a6b72;font-size:12px}label.zauber-option .zauber-grund{color:#4a2f3c}.zauber-en{color:#7a6b72;font-size:12px}.badge{display:inline-block;font-size:11px;border-radius:999px;padding:1px 8px;margin-left:6px;white-space:nowrap}.badge-build{background:#e6f0e4;color:#2e5d2a}.badge-allgemein{background:#f0e8eb;color:var(--maroon-dark)}.badge-riesen{background:#e4ecf5;color:#2b4a6b}.card+.killcounter{margin-top:20px}.killcounter h3{margin:14px 0 6px;font-size:14px;color:var(--maroon-dark)}.kill-form{border:1px solid var(--line);border-radius:8px;padding:10px;display:grid;gap:8px}.kill-form label{display:grid;gap:2px;font-size:13px;min-width:0}.kill-form select,.kill-form input{max-width:100%;box-sizing:border-box}.kill-form button[type=submit]{justify-self:start;margin:0}.kill-zahlen{display:flex;flex-wrap:wrap;gap:8px}.kill-zahlen label{flex:1 1 100px}.kill-vorschlaege{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:13px}.kill-vorschlaege ul{display:flex;flex-wrap:wrap;gap:4px;list-style:none;margin:0;padding:0}.kill-vorschlaege button{margin:0;padding:2px 8px;font-size:12px;border-radius:999px}.kill-rangliste{list-style:none;margin:0;padding:0}.kill-rangliste li{display:flex;gap:8px;border-bottom:1px solid var(--line);padding:4px 0}.kill-platz{flex:0 0 2em;color:#7a6b72;font-variant-numeric:tabular-nums}.kill-name{flex:1 1 auto;overflow-wrap:break-word;min-width:0}.kill-summe{flex:0 0 auto;font-weight:600;font-variant-numeric:tabular-nums}.kill-gegner-tabelle{width:100%;border-collapse:collapse;font-size:14px}.kill-gegner-tabelle th,.kill-gegner-tabelle td{border-bottom:1px solid var(--line);padding:4px;text-align:left;overflow-wrap:break-word}.kill-gegner-tabelle th:last-child,.kill-gegner-tabelle td:last-child{text-align:right;width:4em}.kill-letzte{list-style:none;margin:0;padding:0}.kill-letzte li{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;border-bottom:1px solid var(--line);padding:6px 0;overflow-wrap:break-word}.kill-letzte li>div{min-width:0}.kill-letzte button{flex:0 0 auto;margin:0}.kill-meta{font-size:12px}.questlog-kopf{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.questlog-kopf h2{margin:0}.questlog-kopf .spacer{flex:1}.quest-gruppe{margin-top:14px}.quest-gruppe h3{margin:0 0 4px;font-size:15px;color:var(--maroon-dark)}.quest-liste{list-style:none;margin:0;padding:0}.quest{border:1px solid var(--line);border-radius:8px;padding:10px;margin:8px 0}.quest-kopf{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.quest-kopf b{flex:1 1 200px;min-width:0;overflow-wrap:anywhere}.quest-kopf .chip{margin-left:0}.quest-kopf button.ghost{margin-right:0}.quest-felder{display:grid;grid-template-columns:max-content 1fr;gap:2px 12px;margin:8px 0 4px;font-size:14px}.quest-felder dt{color:#7a6b72}.quest-felder dd{margin:0;min-width:0;overflow-wrap:anywhere}.quest-verlauf summary{cursor:pointer;font-size:13px;color:var(--maroon-dark)}.quest-verlauf ol{margin:4px 0 0;padding-left:20px;font-size:13px}.chip.quest-status-aktiv{background:#e3efe1;color:#2f5a2a}.chip.quest-status-erledigt{background:#e6eef6;color:#2b4a6b}.chip.quest-status-gescheitert{background:#fdeceb;color:#b3261e}.quest-formular{border:1px solid var(--maroon);border-radius:8px;padding:10px;margin:10px 0}.quest-formular h3{margin:0 0 8px;font-size:14px;color:var(--maroon-dark)}.quest-feld{display:block;margin-bottom:8px;font-size:14px;flex:1 1 200px;min-width:0}.quest-feld span{display:block;margin-bottom:2px}.quest-feld select{width:100%;max-width:100%}.quest-feld-reihe{display:flex;gap:12px;flex-wrap:wrap}.quest-aktionen{display:flex;gap:8px}@media (max-width: 520px){.quest-felder{grid-template-columns:1fr}.quest-felder dd{margin-bottom:4px}}
