/* Projektraum pr.schreiter.ai – gemeinsames Stylesheet (CI.md: Segoe UI, schwarz/grau/orange, Punkt-Prinzip,
   keine Pill-Knöpfe, keine Wechselzeilen, Symbole statt Text). Hell/Dunkel über html.dunkel (modus.js). */
:root { color-scheme:light; --orange:#E65A05; --orange-dunkel:#C74D04; --schwarz:#1D1D1B; --grau:#808080; --dunkelgrau:#404040;
  --hellgrau:#F2F2F2; --weiss:#FFFFFF; --linie:#EEEEEE; --flaeche:#FAFAFA; --karte:#FFFFFF; --aus:#C8C8C8; --warnton:#FFF6EF;
  --rot:#C62828; --gruen:#2E7D32; }
html.dunkel { color-scheme:dark; --schwarz:#E6E7E8; --grau:#9AA1A8; --dunkelgrau:#C3C8CD; --hellgrau:#262B31; --weiss:#121416;
  --linie:#2E343A; --flaeche:#181B1F; --karte:#1C2025; --aus:#4A5159; --warnton:#33251A; --orange-dunkel:#F07A2E; --rot:#EF6B5E; --gruen:#6BCB77; }
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:"Segoe UI","Helvetica Neue",Arial,sans-serif; font-size:16px; line-height:1.55; color:var(--schwarz); background:var(--weiss); }
button { -webkit-appearance:none; appearance:none; -webkit-text-fill-color:currentColor; }
.wrap { max-width:1160px; margin:0 auto; padding:0 28px 60px; }
h1 { font-weight:300; font-size:1.9rem; margin:24px 0 6px; }
h2 { font-weight:600; font-size:1.15rem; margin:22px 0 8px; }
h3 { font-weight:600; font-size:1rem; margin:14px 0 6px; }
.hinweis { color:var(--grau); font-size:14px; }
.klein { font-size:13.5px; color:var(--grau); }
a { color:var(--orange); text-decoration:none; }
input, select, textarea { border:0; background:var(--hellgrau); border-radius:12px; padding:9px 13px; font:inherit; font-size:15px; outline:none; color:var(--schwarz); max-width:100%; }
textarea { width:100%; min-height:72px; resize:vertical; }
input[type=checkbox], input[type=radio] { accent-color:var(--orange); width:auto; padding:0; }
label { display:block; font-size:13.5px; color:var(--grau); margin:10px 0 4px; }
button { border:0; background:none; padding:6px 0; font:inherit; font-weight:600; font-size:17px; color:var(--schwarz); cursor:pointer; display:inline-flex; align-items:center; gap:14px; }
button::before { content:""; width:40px; height:40px; border-radius:50%; background:var(--orange); flex:none; transition:transform .15s; }
button:hover { color:var(--orange); }
button:hover::before { transform:scale(1.08); }
button:disabled { opacity:.5; cursor:default; }
button.leise { color:var(--grau); font-weight:400; font-size:14.5px; padding:6px 0; }
button.leise::before { content:none; }
button.leise:hover { color:var(--orange); }
button.klein-primaer { font-size:15px; gap:10px; }
button.klein-primaer::before { width:28px; height:28px; }
.reiter { display:flex; gap:26px; margin:18px 0 10px; flex-wrap:wrap; }
.reiter button { background:none; color:var(--grau); font-weight:600; font-size:16px; padding:6px 0; gap:9px; }
.reiter button::before { content:""; width:11px; height:11px; border-radius:50%; background:var(--linie); }
.reiter button:hover { color:var(--schwarz); }
.reiter button.aktiv { color:var(--schwarz); }
.reiter button.aktiv::before { background:var(--orange); }
table { width:100%; border-collapse:collapse; font-size:14.5px; }
th { text-align:left; color:var(--grau); font-weight:600; padding:8px 10px 8px 0; border-bottom:1px solid var(--linie); white-space:nowrap; }
td { padding:7px 10px 7px 0; border-bottom:1px solid var(--linie); vertical-align:top; }
td.r, th.r { text-align:right; }
.name { font-weight:600; }
.karte { background:var(--hellgrau); border-radius:16px; padding:16px 18px; margin:10px 0; }
.detail { background:var(--hellgrau); border-radius:14px; padding:12px 16px; margin:4px 0 10px; font-size:14.5px; }
.meldung { background:var(--warnton); border-radius:12px; padding:10px 14px; margin:10px 0; font-size:14.5px; }
.meldung.fehler { color:var(--rot); }
.meldung.gut { color:var(--gruen); }
.zeilenknoepfe { display:flex; gap:4px; flex-wrap:wrap; align-items:center; }
.kopfzeile { display:flex; gap:10px 18px; align-items:center; flex-wrap:wrap; margin:14px 0; }
.kopfzeile .frei { flex:1 1 auto; }
.formular { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:4px 18px; }
.formular .breit { grid-column:1 / -1; }
.formular input, .formular select { width:100%; }
.formular input[type=checkbox], .formular input[type=radio] { width:auto; margin-right:8px; vertical-align:-1px; }
.aktionen { display:flex; gap:22px; align-items:center; flex-wrap:wrap; margin-top:14px; }
.kacheln { display:grid; grid-template-columns:repeat(auto-fit, minmax(260px, 1fr)); gap:16px; margin:22px 0; }
.kachel { display:block; background:var(--hellgrau); border-radius:20px; padding:22px; color:var(--schwarz); transition:background .15s; }
.kachel:hover { background:var(--linie); }
.kachel h2 { font-weight:600; font-size:1.1rem; margin:0 0 4px; }
.kachel h2 .punkt { display:inline-block; width:8px; height:8px; border-radius:50%; background:var(--orange); margin-right:9px; vertical-align:1px; }
.kachel p { color:var(--dunkelgrau); font-size:14.5px; }
.kachel.aus { opacity:.6; }
.login { max-width:400px; margin:70px auto; }
.login input { width:100%; margin-bottom:12px; }
.lage { display:grid; grid-template-columns:270px 1fr; gap:24px; align-items:start; }
.lage > * { min-width:0; }
.baum { background:var(--hellgrau); border-radius:16px; padding:12px; font-size:14.5px; }
.baum .knoten { padding:4px 6px 4px 8px; border-radius:8px; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:6px; }
.baum .knoten:hover { background:var(--linie); }
.baum .knoten.aktiv { background:var(--schwarz); color:var(--weiss); }
.baum .knoten.durchgang { color:var(--grau); font-style:italic; }
.baum .knoten .zub { visibility:hidden; display:flex; gap:0; flex:none; }
.baum .knoten .zub .sym { width:26px; height:26px; }
.baum .knoten .zub .sym svg { width:16px; height:16px; }
.baum .knoten:hover .zub { visibility:visible; }
.baum .knoten.aktiv .zub .sym { color:var(--aus); }
.baum .knoten .zahl { color:var(--grau); font-size:12.5px; margin-left:6px; }
.baum .knoten.aktiv .zahl { color:var(--aus); }
.baum .knoten .n { flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.drop { border:2px dashed var(--linie); border-radius:16px; padding:16px; text-align:center; color:var(--grau); margin:0 0 14px; cursor:pointer; transition:border-color .15s, background .15s; font-size:14.5px; }
.drop.aktiv { border-color:var(--orange); background:var(--warnton); color:var(--schwarz); }
.status { display:inline-flex; align-items:center; gap:6px; font-size:13px; color:var(--dunkelgrau); white-space:nowrap; }
.status::before { content:""; width:9px; height:9px; border-radius:50%; background:var(--aus); }
.status.vorabzug::before { background:var(--grau); }
.status.pruefung::before { background:var(--orange); }
.status.ausgabe::before { background:var(--gruen); }
.status.archiv::before { background:var(--aus); }
.status.leer { color:var(--rot); } .status.leer::before { background:var(--rot); }
.chip { display:inline-block; background:var(--karte); border:1px solid var(--linie); border-radius:10px; padding:2px 9px; font-size:13px; margin:2px 6px 2px 0; color:var(--dunkelgrau); }
.fortschritt { height:6px; background:var(--linie); border-radius:3px; overflow:hidden; margin:4px 0; }
.fortschritt span { display:block; height:100%; background:var(--orange); width:0; transition:width .2s; }
.pfad { color:var(--grau); font-size:14px; margin:0 0 8px; }
.pfad a { color:var(--grau); } .pfad a:hover { color:var(--orange); }
.pfad b { color:var(--schwarz); font-weight:600; }
.fuss { color:var(--grau); font-size:13.5px; margin:40px 0 20px; }
.fuss a { color:var(--grau); margin-right:14px; }
.nurlesen button[disabled], .nurlesen select[disabled], .nurlesen input[disabled], .nurlesen textarea[readonly], .nurlesen input[readonly] { opacity:.55; cursor:default; }
@media (max-width:760px) { .lage { grid-template-columns:1fr; } }
@media (max-width:640px) { .wrap { padding:0 16px 40px; } .kacheln { grid-template-columns:1fr; } .kachel { padding:18px; }
  table { display:block; overflow-x:auto; } .reiter { gap:16px; } .login { margin:36px auto; } }
