/* ===== Farben und Maße je Design (data-theme am <html>) ===== */
:root,[data-theme=klassisch]{
  --navy:#1F3864;--teal:#2A9D8F;--amber:#F4A62A;--blue:#3E7CB1;--coral:#E4572E;
  --bg:#F3F5F8;--card:#fff;--line:#E3E7ED;--txt:#1b2434;--mut:#6b7686;
  --ink:#1F3864;--acc:#2A9D8F;--acc-ink:#fff;--link:#3E7CB1;--teal-ink:#1F7A70;
  --th-bg:#1F3864;--th-ink:#fff;--side-bg:#1F3864;--side-ink:#dfe6f3;--side-on:#2A9D8F;--side-on-ink:#fff;--side-line:rgba(255,255,255,.18);
  --radius:12px;--radius-s:8px;--shadow:none;--sum-bg:rgba(42,157,143,.12);--zebra:rgba(127,140,160,.06);--track:rgba(127,140,160,.22);
  --ok-bg:#C6EFCE;--ok-ink:#006100;--bad-bg:#FFC7CE;--bad-ink:#9C0006;--info-bg:#DDEBF7;--info-ink:#1F4E78;--warn-bg:#FCE4D6;--warn-ink:#C65911;
  --paid-bg:#D5F0E8;--paid-ink:#1E6B5C;--part-bg:#FFEB9C;--part-ink:#9C5700;--off-bg:#E7E6E6;--off-ink:#595959;
  --font:"Segoe UI",Arial,sans-serif;--fs:14px;color-scheme:light}
[data-theme=modern]{
  --navy:#243447;--teal:#14876F;--amber:#C98A00;--blue:#2F6FB5;--coral:#D2452B;
  --bg:#ECEEF0;--card:#fff;--line:#E2E5E8;--txt:#1A1F24;--mut:#5F6B76;
  --ink:#14181C;--acc:#C94408;--acc-ink:#fff;--link:#B83D06;--teal-ink:#0F6B58;
  --th-bg:transparent;--th-ink:#5F6B76;--side-bg:#fff;--side-ink:#3B4650;--side-on:#FBE9DF;--side-on-ink:#A63505;--side-line:#E2E5E8;
  --radius:18px;--radius-s:11px;--shadow:0 0 0 1px rgba(20,24,28,.045),0 12px 30px -18px rgba(20,24,28,.28);--sum-bg:#F6F1EC;--zebra:transparent;--track:#E4E7EA;
  --ok-bg:#DDF3E8;--ok-ink:#0B5D3E;--bad-bg:#FBE0DA;--bad-ink:#9A2A16;--info-bg:#E1ECF8;--info-ink:#1F4F85;--warn-bg:#FCE9D6;--warn-ink:#9A4A06;
  --paid-bg:#D9F1EA;--paid-ink:#0B5E4C;--part-bg:#FBF0C9;--part-ink:#7A5800;--off-bg:#ECEEF0;--off-ink:#55606B;
  --font:"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,sans-serif;--fs:14.5px;color-scheme:light}
[data-theme=dunkel]{
  --navy:#8FB4E6;--teal:#3FBFA6;--amber:#E9B44C;--blue:#6FA8E8;--coral:#F27A5E;
  --bg:#111417;--card:#1A1E23;--line:#2A3037;--txt:#E5E8EC;--mut:#97A1AC;
  --ink:#F2F4F6;--acc:#FF8E52;--acc-ink:#1B1006;--link:#FFA877;--teal-ink:#5FD8BF;
  --th-bg:transparent;--th-ink:#97A1AC;--side-bg:#15181C;--side-ink:#B7C0C9;--side-on:#2B2119;--side-on-ink:#FFA877;--side-line:#2A3037;
  --radius:18px;--radius-s:11px;--shadow:0 0 0 1px rgba(255,255,255,.04);--sum-bg:#242A30;--zebra:transparent;--track:#2E353C;
  --ok-bg:#16382B;--ok-ink:#7BE0AE;--bad-bg:#432019;--bad-ink:#FF9C85;--info-bg:#18304A;--info-ink:#8EC0F5;--warn-bg:#40290F;--warn-ink:#FFB873;
  --paid-bg:#15372F;--paid-ink:#79DCC4;--part-bg:#3E3410;--part-ink:#F0CF6A;--off-bg:#262B31;--off-ink:#A8B1BA;
  --font:"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,sans-serif;--fs:14.5px;color-scheme:dark}

/* ===== Grundlage ===== */
*{box-sizing:border-box}
body{margin:0;font:var(--fs)/1.45 var(--font);background:var(--bg);color:var(--txt)}
a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}
:focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:4px}
.layout{display:flex;min-height:100vh}
.side{width:224px;background:var(--side-bg);color:var(--side-ink);padding:18px 12px;flex:none;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;overflow-y:auto}
.side .logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:16px;padding:4px 10px 16px;letter-spacing:.2px;color:var(--side-ink)}
.side .logo .mark{display:none}
.side .logo small{display:block;font-weight:400;font-size:11px;opacity:.7}
.side a{display:flex;align-items:center;gap:10px;color:var(--side-ink);padding:9px 12px;border-radius:var(--radius-s);margin-bottom:2px}
.side a .ic{display:none;flex:none}
.side a:hover{background:rgba(127,140,160,.16);text-decoration:none}
.side a.on{background:var(--side-on);color:var(--side-on-ink);font-weight:600}
.side .sp{flex:1}
.side .user{font-size:12px;opacity:.9;padding:8px 10px;border-top:1px solid var(--side-line);display:flex;flex-direction:column;gap:1px}
.side .user .ver{opacity:.6;font-size:11px;margin-bottom:6px}.side .user .rolle{opacity:.7}
.side .user a{display:inline;padding:0;color:inherit;text-decoration:underline}
.side button{background:none;border:0;color:inherit;cursor:pointer;padding:0;font:inherit;text-decoration:underline}
main{flex:1;padding:0 28px 22px;min-width:0}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0 12px;min-height:44px}
.topbar .firma{font-size:12px;color:var(--mut)}
.loginbar{justify-content:flex-end}
.designs{display:inline-flex;gap:2px;padding:3px;border:1px solid var(--line);border-radius:99px;background:var(--card);margin-left:auto}
.designs button{border:0;background:transparent;color:var(--mut);font:inherit;font-size:12.5px;padding:4px 13px;border-radius:99px;cursor:pointer}
.designs button:hover{color:var(--txt)}
.designs button.on{background:var(--acc);color:var(--acc-ink);font-weight:600}
h1{font-size:22px;margin:0 0 4px;color:var(--ink)}
.head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.sub{color:var(--mut);margin:0 0 18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px;margin-bottom:18px;box-shadow:var(--shadow)}
.card h2,h2.sec{font-size:14px;margin:0 0 10px;color:var(--ink);text-transform:uppercase;letter-spacing:.4px}
h2.sec{margin:6px 0 10px}
.card h3{font-size:14px;margin:0 0 6px;color:var(--ink)}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:18px}
.kpi{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--c,var(--navy));border-radius:var(--radius);padding:12px 14px;box-shadow:var(--shadow)}
.kpi .l{font-size:11px;font-weight:700;color:var(--mut);letter-spacing:.4px;text-transform:uppercase}
.kpi .v{font-size:21px;font-weight:700;color:var(--c,var(--navy));margin:4px 0 2px;font-variant-numeric:tabular-nums}
.kpi .s{font-size:12px;color:var(--mut)}
table{border-collapse:collapse;width:100%}
th{background:var(--th-bg);color:var(--th-ink);font-size:12px;text-align:left;padding:8px 10px;white-space:nowrap}
td{padding:7px 10px;border-bottom:1px solid var(--line);vertical-align:top}
tr:nth-child(even) td{background:var(--zebra)}
td.n,th.n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
tr.sum td{font-weight:700;background:var(--sum-bg)}
tr.inaktiv td{opacity:.55}
.mut{color:var(--mut)}.brk{color:var(--mut);font-style:italic}
.scroll{overflow-x:auto}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.grid3{display:grid;grid-template-columns:300px 1fr;gap:18px}
@media (max-width:1100px){.grid2,.grid3{grid-template-columns:1fr}}
.chart{width:100%;height:auto;max-height:330px}.chart .ca,.chart .cg{font-size:10px;fill:var(--mut)}.chart .cl{font-size:11px;font-weight:700;fill:#fff}.chart .ct{fill:var(--mut);font-size:12px}
.chart .grid{stroke:var(--line)}
.filter{display:flex;flex-wrap:wrap;gap:12px;align-items:end;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;margin-bottom:18px;box-shadow:var(--shadow)}
label{display:block;font-size:12px;font-weight:600;color:var(--mut);margin-bottom:3px}
input,select,textarea{font:inherit;padding:7px 9px;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--card);color:var(--txt);min-width:0}
input:disabled,select:disabled,textarea:disabled{opacity:.55}
input[type=checkbox]{accent-color:var(--acc)}
.btn{display:inline-block;background:var(--acc);color:var(--acc-ink);border:0;padding:8px 14px;border-radius:var(--radius-s);cursor:pointer;font:inherit;font-weight:600}
.btn:hover{filter:brightness(1.08);text-decoration:none}
.btn.sec{background:transparent;color:var(--link);border:1px solid var(--line)}
.btn.red{background:var(--coral);color:#fff}
.badge{display:inline-block;padding:2px 9px;border-radius:99px;font-size:12px;font-weight:600;white-space:nowrap}
.s-Offen-im-Skontozeitraum,.inv-in-Nutzung{background:var(--info-bg);color:var(--info-ink)}
.s-Offen-ohne-Skontoabzug{background:var(--warn-bg);color:var(--warn-ink)}
.s-Überfällig-offen{background:var(--bad-bg);color:var(--bad-ink)}
.s-Bezahlt,.inv-voll-abgeschrieben{background:var(--ok-bg);color:var(--ok-ink)}
.s-Bezahlt-mit-Skonto{background:var(--paid-bg);color:var(--paid-ink)}
.s-Bezahlt-mit-Abzug-Teilzahlung{background:var(--part-bg);color:var(--part-ink)}
.s-Storno,.s-Gutschrift,.inv-ausgeschieden,.inv-noch-nicht-angeschafft{background:var(--off-bg);color:var(--off-ink)}
.flash{padding:10px 14px;border-radius:var(--radius-s);margin-bottom:14px}
.flash.ok{background:var(--ok-bg);color:var(--ok-ink)}.flash.fehler{background:var(--bad-bg);color:var(--bad-ink)}
.form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px 16px}
.form .full{grid-column:1/-1}
.form input,.form select,.form textarea{width:100%}
.login{max-width:360px;margin:8vh auto;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}
.login h1{margin-bottom:14px}.login input{width:100%;margin-bottom:12px}
.hint{font-size:12px;color:var(--mut)}
.pill{background:var(--bg);border:1px solid var(--line);border-radius:99px;padding:1px 8px;font-size:12px}
.flt{color:var(--coral);font-weight:700}
td:first-child{white-space:nowrap}td a{white-space:nowrap}
.seg{display:flex;border:1px solid var(--line);border-radius:var(--radius-s);overflow:hidden}
.seg button{border:0;background:var(--card);color:var(--txt);padding:8px 14px;cursor:pointer;font:inherit;border-left:1px solid var(--line)}
.seg button:first-child{border-left:0}.seg button.on{background:var(--acc);color:var(--acc-ink);font-weight:600}
.grid2w{display:grid;grid-template-columns:2fr 1fr;gap:18px}
@media (max-width:1100px){.grid2w{grid-template-columns:1fr}}
.stand{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:center}.stand .chart{max-width:210px}
.leg{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13px}
.leg li{display:flex;align-items:center;gap:8px}.leg .sw{width:12px;height:12px;border-radius:3px}.leg .n{margin-left:auto;padding-left:14px;color:var(--mut);font-variant-numeric:tabular-nums}
.todo{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--line)}.todo .n{margin-left:auto;font-weight:600;font-variant-numeric:tabular-nums}
.bar1{margin-bottom:12px}.bar1 .r{display:flex;justify-content:space-between;font-size:13px;margin-bottom:4px}
.track{height:11px;border-radius:6px;background:var(--track);overflow:hidden;flex:1}.track>div{height:100%;border-radius:6px}
.prog{display:flex;align-items:center;gap:8px}.prog .n{width:56px;text-align:right;font-variant-numeric:tabular-nums}
.mods{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.mods .card{margin-bottom:0;display:flex;flex-direction:column;gap:6px}.mods .card.off{background:transparent;border-style:dashed}
.mods .mh{display:flex;justify-content:space-between;align-items:center}

/* ===== Modern und Dunkel: Icon-Leiste, flache Kennzahlen, ruhige Tabellen ===== */
[data-theme=modern] .layout,[data-theme=dunkel] .layout{padding-left:76px}
[data-theme=modern] .side,[data-theme=dunkel] .side{position:fixed;left:0;top:0;bottom:0;width:76px;padding:14px 12px;overflow:hidden;z-index:20;
  border-right:1px solid var(--side-line);transition:width .18s ease,box-shadow .18s ease}
[data-theme=modern] .side:hover,[data-theme=modern] .side:focus-within,[data-theme=dunkel] .side:hover,[data-theme=dunkel] .side:focus-within{width:252px;box-shadow:18px 0 40px -22px rgba(0,0,0,.35)}
[data-theme=modern] .side .logo .mark,[data-theme=dunkel] .side .logo .mark{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:12px;background:var(--acc);color:var(--acc-ink);font-size:14px;font-weight:800;letter-spacing:.5px}
[data-theme=modern] .side .logo,[data-theme=dunkel] .side .logo{padding:2px 0 16px 0}
[data-theme=modern] .side .lb,[data-theme=dunkel] .side .lb{white-space:nowrap;opacity:0;transition:opacity .12s ease}
[data-theme=modern] .side:hover .lb,[data-theme=modern] .side:focus-within .lb,[data-theme=dunkel] .side:hover .lb,[data-theme=dunkel] .side:focus-within .lb{opacity:1}
[data-theme=modern] .side a,[data-theme=dunkel] .side a{padding:10px;margin-bottom:3px;border-radius:12px}
[data-theme=modern] .side a .ic,[data-theme=dunkel] .side a .ic{display:block;margin:0 3px}
[data-theme=modern] .side a.on,[data-theme=dunkel] .side a.on{font-weight:600}
[data-theme=modern] .side .user,[data-theme=dunkel] .side .user{white-space:nowrap;opacity:0;transition:opacity .12s ease;padding:10px 4px 2px}
[data-theme=modern] .side:hover .user,[data-theme=modern] .side:focus-within .user,[data-theme=dunkel] .side:hover .user,[data-theme=dunkel] .side:focus-within .user{opacity:1}
[data-theme=modern] main,[data-theme=dunkel] main{padding:0 36px 36px;max-width:1500px}
[data-theme=modern] .topbar,[data-theme=dunkel] .topbar{position:sticky;top:0;z-index:10;padding:14px 0;margin-bottom:6px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(8px)}
[data-theme=modern] .topbar .firma,[data-theme=dunkel] .topbar .firma{font-size:13px;font-weight:600;color:var(--txt)}
[data-theme=modern] h1,[data-theme=dunkel] h1{font-size:30px;line-height:1.12;font-weight:650;letter-spacing:-.022em}
[data-theme=modern] .sub,[data-theme=dunkel] .sub{font-size:14.5px;margin-bottom:22px;max-width:70ch}
[data-theme=modern] .card,[data-theme=dunkel] .card{border:0;padding:22px 24px}
[data-theme=modern] .card h2,[data-theme=dunkel] .card h2,[data-theme=modern] h2.sec,[data-theme=dunkel] h2.sec{font-size:16px;font-weight:650;text-transform:none;letter-spacing:-.005em}
[data-theme=modern] .card h3,[data-theme=dunkel] .card h3{font-size:14.5px;font-weight:650}
[data-theme=modern] .kpis,[data-theme=dunkel] .kpis{gap:0;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:6px 0}
[data-theme=modern] .kpi,[data-theme=dunkel] .kpi{border:0;border-radius:0;box-shadow:none;background:transparent;padding:12px 24px;border-left:1px solid var(--line)}
[data-theme=modern] .kpi:first-child,[data-theme=dunkel] .kpi:first-child{border-left:0}
[data-theme=modern] .kpi .l,[data-theme=dunkel] .kpi .l{display:flex;align-items:center;gap:7px;text-transform:none;letter-spacing:0;font-size:12.5px;font-weight:600}
[data-theme=modern] .kpi .l::before,[data-theme=dunkel] .kpi .l::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c,var(--navy));flex:none}
[data-theme=modern] .kpi .v,[data-theme=dunkel] .kpi .v{font-size:26px;white-space:nowrap;font-weight:650;letter-spacing:-.025em;color:var(--ink);margin:6px 0 2px}
[data-theme=modern] th,[data-theme=dunkel] th{font-weight:600;font-size:12.5px;padding:10px 12px;border-bottom:2px solid var(--ink)}
[data-theme=modern] td,[data-theme=dunkel] td{padding:10px 12px}
[data-theme=modern] tr:hover td,[data-theme=dunkel] tr:hover td{background:rgba(127,140,160,.07)}
[data-theme=modern] tr.sum td,[data-theme=dunkel] tr.sum td{background:var(--sum-bg);border-bottom:0}
[data-theme=modern] .filter,[data-theme=dunkel] .filter{border:0}
[data-theme=modern] input,[data-theme=modern] select,[data-theme=modern] textarea,[data-theme=dunkel] input,[data-theme=dunkel] select,[data-theme=dunkel] textarea{padding:9px 11px;border-color:#D5D9DD}
[data-theme=dunkel] input,[data-theme=dunkel] select,[data-theme=dunkel] textarea{border-color:#323A42;background:#14181C}
[data-theme=modern] input:focus,[data-theme=modern] select:focus,[data-theme=modern] textarea:focus,[data-theme=dunkel] input:focus,[data-theme=dunkel] select:focus,[data-theme=dunkel] textarea:focus{border-color:var(--acc);outline:2px solid color-mix(in srgb,var(--acc) 30%,transparent);outline-offset:0}
[data-theme=modern] .btn,[data-theme=dunkel] .btn{padding:9px 16px;border-radius:99px}
[data-theme=modern] .btn.sec,[data-theme=dunkel] .btn.sec{color:var(--txt);border-color:#CDD2D7}
[data-theme=dunkel] .btn.sec{border-color:#3A424A}
[data-theme=modern] .designs,[data-theme=dunkel] .designs{border:0;box-shadow:var(--shadow)}
[data-theme=modern] .pill,[data-theme=dunkel] .pill{background:transparent}
[data-theme=modern] .chart .cl,[data-theme=dunkel] .chart .cl{fill:#fff}
[data-theme=modern] .login,[data-theme=dunkel] .login{border:0;padding:32px}
[data-theme=modern] .flash,[data-theme=dunkel] .flash{border-radius:14px}
[data-theme=dunkel] .btn.red{color:#1B0A06}
@media (max-width:820px){
  [data-theme=modern] .layout,[data-theme=dunkel] .layout{padding-left:0;padding-bottom:68px}
  [data-theme=modern] .side,[data-theme=dunkel] .side{top:auto;width:100%;height:60px;flex-direction:row;padding:6px 8px;overflow-x:auto;overflow-y:hidden;border-right:0;border-top:1px solid var(--side-line)}
  [data-theme=modern] .side:hover,[data-theme=modern] .side:focus-within,[data-theme=dunkel] .side:hover,[data-theme=dunkel] .side:focus-within{width:100%}
  [data-theme=modern] .side .logo,[data-theme=dunkel] .side .logo,[data-theme=modern] .side .user,[data-theme=dunkel] .side .user,[data-theme=modern] .side .sp,[data-theme=dunkel] .side .sp{display:none}
  [data-theme=modern] .side .lb,[data-theme=dunkel] .side .lb{display:none}
  [data-theme=modern] main,[data-theme=dunkel] main{padding:0 16px 24px}
  [data-theme=modern] h1,[data-theme=dunkel] h1{font-size:25px}
  [data-theme=modern] .kpis,[data-theme=dunkel] .kpis{grid-template-columns:1fr 1fr}
  [data-theme=modern] .kpi,[data-theme=dunkel] .kpi{border-left:0;padding:10px 16px}
}
@media (max-width:1100px){.side{width:180px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

[hidden]{display:none!important}
.zf{display:flex;gap:6px;align-items:center;flex-wrap:nowrap}
.zf select,.zf input{padding:4px 6px;font-size:12.5px;border-radius:var(--radius-s)}
.zf input[name=betrag]{width:92px}
.zf .btn{padding:4px 10px;font-size:12.5px;white-space:nowrap}

.tabs{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin:0 0 18px}
.tabs nav{display:flex;gap:4px;flex-wrap:wrap}
.tabs nav a{padding:9px 14px;color:var(--mut);border-bottom:3px solid transparent;margin-bottom:-1px;font-weight:600}
.tabs nav a:hover{color:var(--txt);text-decoration:none}
.tabs nav a.on{color:var(--ink);border-bottom-color:var(--acc)}
.tabs form{margin-bottom:6px}

/* ===== Menü mit Hauptpunkten und Unterpunkten ===== */
.side details.grp{margin-bottom:2px}
.side summary{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius-s);cursor:pointer;list-style:none;color:var(--side-ink);user-select:none}
.side summary::-webkit-details-marker{display:none}
.side summary:hover{background:rgba(127,140,160,.16)}
.side summary::after{content:"";margin-left:auto;width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);opacity:.6;transition:transform .15s ease;flex:none}
.side details[open]>summary::after{transform:rotate(225deg)}
.side details.act>summary{font-weight:600;color:var(--side-ink)}
.side summary .ic{display:none;flex:none}
.side .subs{margin:2px 0 6px 20px;padding-left:10px;border-left:1px solid var(--side-line)}
.side .subs a{padding:6px 10px;font-size:13px;margin-bottom:1px;border-radius:8px}
.side .sec-h{margin:14px 10px 6px;padding-top:10px;border-top:1px solid var(--side-line);font-size:11.5px;font-weight:600;letter-spacing:.3px;opacity:.65}
[data-theme=modern] .side summary .ic,[data-theme=dunkel] .side summary .ic{display:block;margin:0 3px}
[data-theme=modern] .side summary,[data-theme=dunkel] .side summary{padding:10px;border-radius:12px}
[data-theme=modern] .side summary::after,[data-theme=dunkel] .side summary::after{opacity:0;transition:opacity .12s ease}
[data-theme=modern] .side:hover summary::after,[data-theme=modern] .side:focus-within summary::after,[data-theme=dunkel] .side:hover summary::after,[data-theme=dunkel] .side:focus-within summary::after{opacity:.6}
[data-theme=modern] .side details.act>summary,[data-theme=dunkel] .side details.act>summary{background:var(--side-on);color:var(--side-on-ink)}
[data-theme=modern] .side:not(:hover):not(:focus-within) .subs,[data-theme=dunkel] .side:not(:hover):not(:focus-within) .subs{display:none}
[data-theme=modern] .side .sec-h,[data-theme=dunkel] .side .sec-h{margin:10px 6px 6px;white-space:nowrap}
[data-theme=modern] .side .sec-h .lb,[data-theme=dunkel] .side .sec-h .lb{display:inline}
@media (max-width:820px){
  [data-theme=modern] .side details,[data-theme=dunkel] .side details{display:contents}
  [data-theme=modern] .side summary,[data-theme=dunkel] .side summary,[data-theme=modern] .side .sec-h,[data-theme=dunkel] .side .sec-h{display:none}
  [data-theme=modern] .side .subs,[data-theme=dunkel] .side .subs{display:flex!important;margin:0;padding:0;border:0}
  [data-theme=modern] .side .subs a,[data-theme=dunkel] .side .subs a{white-space:nowrap;padding:10px 12px}
  [data-theme=modern] .side .subs .lb,[data-theme=dunkel] .side .subs .lb{display:inline;opacity:1}
}

/* anpassbares Dashboard */
.dash{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));column-gap:18px}
.dash>.w{grid-column:span 6;margin-bottom:18px;min-width:0}.dash>.w.c4{grid-column:span 4}.dash>.w.c2{grid-column:span 2}.dash>.w.c3{grid-column:span 3}
.dash>.w>.card,.dash>.w>.kpis,.dash>.w>.mods{margin-bottom:0}.dash>.w>.card{height:100%}
@media (max-width:1100px){.dash>.w.c4,.dash>.w.c2,.dash>.w.c3{grid-column:span 6}}
details.anpassen{margin:0 0 14px}details.anpassen>summary{cursor:pointer;font-weight:600;width:max-content}
.dlist{list-style:none;margin:8px 0;padding:0;max-width:560px}.dlist li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid var(--line)}
.dlist label{display:flex;gap:8px;align-items:center;font-weight:400;margin:0}.dlist input[type=checkbox]{width:auto}.dlist .mv{display:flex;gap:4px}.dlist .mv .btn{padding:2px 9px}

.ansichten{margin:0 0 10px}.ansichten form{display:flex;align-items:center;gap:8px}.ansichten label{margin:0;font-weight:600}.ansichten select{max-width:260px}
.neueansicht{margin-top:14px;max-width:560px}

/* Programm-Tabs */
.topbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.modtabs{display:flex;gap:4px;flex-wrap:wrap;margin-right:auto}
.modtabs a{padding:6px 14px;border-radius:999px;text-decoration:none;color:var(--ink-2,inherit);font-weight:600;font-size:14px;border:1px solid transparent}
.modtabs a:hover{background:var(--hover,rgba(0,0,0,.05))}
.modtabs a.on{background:var(--navy);color:#fff}
.modtabs a:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
td .chk{background:none;border:0;font-size:20px;line-height:1;cursor:pointer;padding:0 4px;color:var(--teal-ink,inherit)}
tr.erl td{opacity:.55;text-decoration:line-through}
.zuw{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.zuw fieldset{border:1px solid var(--line,#c9d1dc);border-radius:6px;padding:8px 10px;max-height:190px;overflow:auto;margin:0}
.zuw legend{font-weight:600;padding:0 4px}
.chk2{display:flex;gap:8px;align-items:center;margin:3px 0;font-weight:400}
.chk2 input{width:auto}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:12px 0}
.kpi{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--line,#c9d1dc);border-radius:6px}
.kpi strong{font-size:1.15rem}
.proj-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:14px;align-items:start}
@media(max-width:480px){.proj-grid{grid-template-columns:1fr}}
/* Pop-up-Fenster */
.dlg{position:fixed;z-index:200;max-height:88vh;display:flex;flex-direction:column;background:var(--card,#fff);color:inherit;border:1px solid var(--line,#c9d1dc);border-radius:10px;box-shadow:0 12px 40px rgba(20,30,50,.28)}
.dlg-bar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid var(--line,#c9d1dc);cursor:move;touch-action:none;user-select:none;font-weight:600}
.dlg-x{border:0;background:transparent;font-size:1.05rem;cursor:pointer;padding:2px 8px;color:inherit}
.dlg-body{overflow:auto;padding:12px 16px 16px}
.dlg-body h1{display:none}
.dlg-body .card{border:0;box-shadow:none;padding:0;margin:0}
.dlg-body .head{display:none}
.popup-hidden{display:none}
@media(max-width:600px){.dlg{left:6px!important;width:calc(100vw - 12px)!important}}
/* Widget-Editor */
.wbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:0 0 12px}
.wtools{display:inline-flex;gap:8px;flex-wrap:wrap;align-items:center}
.dash.editing>.w{position:relative;cursor:grab;touch-action:none;outline:2px dashed var(--blue,#2f6fb5);outline-offset:3px;border-radius:8px;user-select:none}
.dash.editing>.w>*:not(.wctl){pointer-events:none}
.dash.editing>.w.wdrag{z-index:50;opacity:.88;box-shadow:0 14px 34px rgba(20,30,50,.35);cursor:grabbing}
body.wdragging{cursor:grabbing;user-select:none}
.wctl{display:none}
.dash.editing .wctl{display:flex;position:absolute;top:6px;right:6px;gap:6px;align-items:center;z-index:5;pointer-events:auto}
.wgrip{background:var(--navy,#1f3864);color:#fff;border-radius:6px;padding:2px 8px;font-size:1.1rem;line-height:1.3}
.wdel{border:0;background:var(--coral,#c0392b);color:#fff;border-radius:6px;width:28px;height:28px;cursor:pointer;font-size:.95rem;pointer-events:auto}
.wpick{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.wtile{display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:left;padding:10px;border:2px solid var(--line,#c9d1dc);border-radius:12px;background:var(--card,#fff);color:inherit;cursor:pointer;font:inherit}
.wtile.on{border-color:var(--blue,#2f6fb5);background:rgba(47,111,181,.08)}
.wtile small{color:var(--mut,#5a6577)}
.wtile .wst{margin-top:auto;font-size:.85rem;font-weight:600}
.wprev{display:flex;gap:4px;align-items:flex-end;height:30px;margin-bottom:4px}
.wprev i{display:block;width:12px;background:var(--blue,#2f6fb5);border-radius:3px;opacity:.6}
.wprev i:nth-child(1){height:14px}.wprev i:nth-child(2){height:26px}.wprev i:nth-child(3){height:20px}
/* Beleg-Ablage per Drag-and-drop */
.dropov{position:fixed;inset:0;z-index:300;background:rgba(31,56,100,.55);display:flex;align-items:center;justify-content:center;pointer-events:none}
.dropov>div{background:var(--card,#fff);border:3px dashed var(--blue,#2f6fb5);border-radius:16px;padding:36px 52px;text-align:center;display:flex;flex-direction:column;gap:6px;font-size:1.1rem}
.dropov span{color:var(--mut,#5a6577);font-size:.9rem}
.dropzone{border:2px dashed var(--line,#c9d1dc);border-radius:10px;padding:22px;text-align:center;margin:12px 0;color:var(--mut,#5a6577)}
.bp{margin-bottom:18px}.bp h2{font-size:1rem;margin:0 0 6px;word-break:break-all}
.bp-liste{list-style:none;margin:8px 0;padding:0;display:flex;flex-direction:column;gap:6px}
.bp-liste li{display:flex;gap:10px;align-items:flex-start}
.bp-s{flex:0 0 22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:#fff;background:#8A94A6}
.bp-ok .bp-s{background:var(--teal,#1e9e8a)}.bp-warn .bp-s{background:var(--amber,#d98c00)}.bp-fehler .bp-s{background:var(--coral,#c0392b)}.bp-info .bp-s{background:var(--blue,#2f6fb5)}
.bp-t{color:var(--mut,#5a6577);font-size:.9rem}
.bp-fehler.bp-t,p.bp-fehler{color:var(--coral,#c0392b)}
.rtab th.c,.rtab td.c{text-align:center;width:120px}
.rtab input[type=checkbox]{width:auto}

/* Protokollvorlagen: Bausteine per Drag-and-drop */
.vl-layout{display:grid;grid-template-columns:260px 1fr;gap:16px;align-items:start}
@media(max-width:800px){.vl-layout{grid-template-columns:1fr}}
.vl-pal .vl-item{display:flex;flex-direction:column;gap:2px;padding:10px 12px;margin-bottom:8px;border:1px dashed var(--line,#c9d3df);border-radius:8px;background:var(--card,#fff);cursor:grab}
.vl-pal .vl-item:hover,.vl-pal .vl-item:focus{border-color:var(--teal,#2a9d8f);outline:none}
.vl-pal .vl-item span{font-size:.82rem}
.vl-canvas{min-height:90px;border:2px dashed transparent;border-radius:8px;padding:2px}
.vl-canvas.over{border-color:var(--teal,#2a9d8f);background:rgba(42,157,143,.06)}
.vl-block{border:1px solid var(--line,#c9d3df);border-radius:8px;background:var(--card,#fff);margin-bottom:10px;padding:10px 12px}
.vl-block.drag{opacity:.45}
.vl-head{display:flex;gap:8px;align-items:center;margin-bottom:8px}
.vl-grip{cursor:grab;user-select:none;font-size:1.2rem;line-height:1;color:var(--muted,#6b7a8c);padding:2px 6px}
.vl-typ{font-size:.78rem;color:var(--muted,#6b7a8c);white-space:nowrap}
.vl-head input{flex:1}
.vl-block textarea{width:100%}
.vl-marke{height:4px;border-radius:2px;background:var(--teal,#2a9d8f);margin:0 0 10px}
.vl-layout>*{min-width:0}
.dv-row.drag{opacity:.4}
.vl-pal button.vl-item{font:inherit;color:inherit;text-align:left}

/* Seitenlayout-Editor */
.ly-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}
@media(max-width:900px){.ly-grid{grid-template-columns:1fr}}
.ly-sheet{position:relative;background:#fff;border:1px solid var(--line,#c9d3df);box-shadow:0 2px 8px rgba(0,0,0,.12);width:100%;max-width:280px;aspect-ratio:210/297;margin:0 auto;color:#555}
.ly-frame{position:absolute;border:1px dashed var(--teal,#2a9d8f);display:flex;flex-direction:column;gap:6px;padding:6px;overflow:hidden}
.ly-frame i{display:block;height:5px;background:#d7dee6;border-radius:2px}
.ly-kopf,.ly-fuss{position:absolute;left:0;right:0;font:6px/1.2 system-ui,sans-serif;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}

/* ===== Kontrast: kräftigere Rahmen um Felder, Karten, Tabellen ===== */
:root,[data-theme=klassisch]{--line:#B9C2CF;--field:#7A889B}
[data-theme=modern]{--line:#B4BBC2;--field:#76828E}
[data-theme=dunkel]{--line:#47515B;--field:#7F8B97}
input,select,textarea{border:1.5px solid var(--field)!important;background:var(--card)}
input[type=checkbox],input[type=radio],input[type=color]{border:0!important}
input:focus,select:focus,textarea:focus{border-color:var(--acc,#2a9d8f)!important;outline:2px solid color-mix(in srgb,var(--acc,#2a9d8f) 35%,transparent);outline-offset:0}
.card,.kpi,.filter{border:1.5px solid var(--line)}
th{border-bottom:2px solid var(--field)}
td{border-bottom:1px solid var(--line)}
label{color:var(--txt);font-weight:600}
.btn.sec{border:1.5px solid var(--field)}
.ly-sheet{border:1.5px solid var(--field)}
.ly-pause{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none;mix-blend-mode:multiply}
.ly-pv.gross .ly-sheet{max-width:520px!important}
/* Körper der Vorlage, Wasserzeichen-Vorschau */
.wz-box{border:1.5px solid var(--line);border-radius:var(--radius-s);padding:10px 12px}
#ky-box{border:1.5px solid var(--line);border-radius:var(--radius-s);padding:10px 12px;background:color-mix(in srgb,var(--acc,#2a9d8f) 5%,var(--card))}
.ky-row{border:1.5px solid var(--line);border-radius:var(--radius-s);padding:8px 10px;margin:8px 0;background:var(--card)}
.ky-kopf{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.ky-felder{display:flex;flex-wrap:wrap;gap:8px 12px}.ky-f{display:flex;flex-direction:column;font-size:12px;font-weight:600;gap:3px}.ky-f input:not([type=checkbox]):not([type=color]){width:72px}.ky-f textarea{width:100%;min-width:300px}
.ky-f input[type=color]{width:56px;height:30px;padding:1px}
.ly-ky{position:absolute;inset:0;pointer-events:none}
.ky-el{position:absolute;pointer-events:auto;cursor:move;outline:1px dashed #2a7fff;touch-action:none;overflow:visible;font-family:system-ui,sans-serif;line-height:1.25;box-sizing:border-box}
.ky-el.ky-logo{background:repeating-linear-gradient(45deg,#e4edf7,#e4edf7 4px,#d3e1f0 4px,#d3e1f0 8px);font-size:7px;color:#345;display:flex;align-items:center;justify-content:center}
.ky-el:hover,.ky-el:focus{outline:2px solid #2a7fff}
.ky-gr{position:absolute;right:-4px;bottom:-4px;width:9px;height:9px;background:#2a7fff;cursor:nwse-resize;border-radius:2px}
.ly-wz{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;color:#778;text-align:center;font-family:system-ui,sans-serif;overflow:hidden}
.ly-wz span{font-size:26px;font-weight:700;letter-spacing:1px}.ly-wz em{font-size:9px;font-style:normal}.ly-wz b{font-size:12px;border:1px dashed #778;padding:6px 14px;margin-bottom:6px}
.ly-wz.diag{transform:rotate(-40deg)}
.ly-pv{position:sticky;top:12px;align-self:start}
.ly-pv .ly-sheet{max-width:340px}
/* ===== Layout-Editor als Arbeitsfläche (Seitenansicht, Lineal, Werkzeugleiste, Eigenschaften) ===== */
.ly-grid{grid-template-columns:minmax(290px,350px) minmax(0,1fr);gap:18px}
@media(max-width:1000px){.ly-grid{grid-template-columns:1fr}}
.ly-ws{min-width:0}
.ly-set .form{grid-template-columns:1fr 1fr}
.ky-bar{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;padding:8px 10px;border:1.5px solid var(--line);border-radius:var(--radius-s);background:var(--card);position:sticky;top:0;z-index:5}
.ky-grp{display:inline-flex;gap:4px;align-items:center;flex-wrap:wrap;padding-right:12px;border-right:1.5px solid var(--line)}.ky-grp:last-child{border-right:0;padding-right:0}
.ky-grp>b{font-size:12px;margin-right:2px}
.ky-bar .btn{padding:4px 9px;font-size:13px}.ky-bar .btn.on{background:var(--acc,#2a9d8f);color:#fff;border-color:var(--acc,#2a9d8f)}.ky-bar .btn:disabled{opacity:.4;cursor:default}
.ky-bar input[type=color]{width:34px;height:28px;padding:1px}.ky-bar input#ky-gr{width:48px;padding:3px 5px}
.ky-mini{display:inline-flex;flex-direction:column;font-size:11px;font-weight:600;gap:1px}.ky-mini select{padding:3px 5px;font-size:12.5px}
.ky-zt{min-width:46px;text-align:center;font-size:13px;font-weight:600}
.ky-pausebar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:8px;padding:6px 10px;border:1.5px dashed var(--line);border-radius:var(--radius-s)}
.ky-pausebar label{margin:0}.ky-pausebar input[type=range]{width:140px}
.ky-stage{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:12px;margin-top:10px;align-items:start}
@media(max-width:1250px){.ky-stage{grid-template-columns:1fr}}
.ky-desk{background:#8e98a6;border:1.5px solid var(--field);border-radius:var(--radius-s);padding:18px 18px 26px;overflow:auto;max-height:78vh;min-height:420px}
[data-theme=dunkel] .ky-desk{background:#2b3138}
.ky-page{position:relative;padding:20px 0 0 22px;width:max-content;margin:0 auto}
.ky-desk .ly-sheet{max-width:none;margin:0;box-shadow:0 3px 14px rgba(0,0,0,.35)}
.ly-kopf,.ly-fuss{font-size:calc(var(--ppm,2)*2.6px);line-height:1.2}
.ly-frame{gap:calc(var(--ppm,2)*2px);padding:calc(var(--ppm,2)*2px)}.ly-frame i{height:calc(var(--ppm,2)*1.4px);opacity:.45}
.ky-el{position:absolute;pointer-events:auto;cursor:move;touch-action:none;box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;white-space:pre-wrap;word-break:break-word}
.ky-el::before{content:"";position:absolute;inset:-4px}
.ky-el.ky-text:hover,.ky-el.ky-rechteck:hover,.ky-el.ky-logo:hover,.ky-el.ky-linie:hover{outline:1.5px dashed #2a7fff}
.ky-el.sel{outline:2px solid #2a7fff!important;outline-offset:1px}
.ky-el.edit{cursor:text;outline:2px solid #e07b00!important;background:rgba(255,255,230,.9)}
.ky-el.ky-logo{background:repeating-linear-gradient(45deg,#e4edf7,#e4edf7 4px,#d3e1f0 4px,#d3e1f0 8px);color:#345;display:flex;align-items:center;justify-content:center;font-size:11px}
.ky-gr{position:absolute;right:-6px;bottom:-6px;width:11px;height:11px;background:#2a7fff;border:1.5px solid #fff;cursor:nwse-resize;border-radius:2px;z-index:2}
.ky-guide{position:absolute;pointer-events:none;background:#e0267a;z-index:4}.ky-guide.v{top:0;bottom:0;width:1px}.ky-guide.h{left:0;right:0;height:1px}
.ky-props{border:1.5px solid var(--line);border-radius:var(--radius-s);padding:10px 12px;background:var(--card);max-height:78vh;overflow:auto}
.ky-props h3{margin:0 0 6px;font-size:14px}
.ky-felder{display:flex;flex-wrap:wrap;gap:8px 10px;margin-bottom:10px}.ky-f.voll{flex:1 1 100%}.ky-f.voll textarea{width:100%}
.ky-f{display:flex;flex-direction:column;font-size:12px;font-weight:600;gap:3px}.ky-f input:not([type=checkbox]):not([type=color]){width:70px}.ky-f input[type=color]{width:56px;height:30px;padding:1px}
.ky-ebenen{display:flex;flex-direction:column;gap:3px}.ky-eb{font:inherit;font-size:12.5px;text-align:left;padding:4px 8px;border:1.5px solid var(--line);border-radius:var(--radius-s);background:var(--card);color:var(--txt);cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ky-eb.on{border-color:#2a7fff;background:color-mix(in srgb,#2a7fff 12%,var(--card))}
.ly-wz span{font-size:3.2em}.ly-wz em{font-size:1.1em}.ly-wz b{font-size:1.4em}
.ky-props textarea{box-sizing:border-box}

/* ===== Seitenleiste einklappen ===== */
.side .side-tgl{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;margin-bottom:6px;border-radius:var(--radius-s);text-decoration:none!important;opacity:.85;text-align:left}
.side .side-tgl:hover{background:rgba(127,140,160,.16);opacity:1}
.side .side-tgl .tg-ic{flex:none;transition:transform .15s ease}
html.side-min .side .side-tgl .tg-ic{transform:rotate(180deg)}
html:not(.side-offen)[data-theme=modern] .side .side-tgl .tg-ic,html:not(.side-offen)[data-theme=dunkel] .side .side-tgl .tg-ic{transform:rotate(180deg)}
@media(min-width:821px){
html.side-min .layout{padding-left:76px}
html.side-min .side{position:fixed;left:0;top:0;bottom:0;width:76px;padding:14px 12px;overflow:hidden;z-index:20;border-right:1px solid var(--side-line);transition:width .18s ease,box-shadow .18s ease}
html.side-min .side:hover,html.side-min .side:focus-within{width:252px;box-shadow:18px 0 40px -22px rgba(0,0,0,.35)}
html.side-min .side .logo .mark{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:12px;background:var(--acc);color:var(--acc-ink);font-size:14px;font-weight:800;letter-spacing:.5px}
html.side-min .side .logo{padding:2px 0 16px 0}
html.side-min .side .lb{white-space:nowrap;opacity:0;transition:opacity .12s ease}
html.side-min .side:hover .lb,html.side-min .side:focus-within .lb{opacity:1}
html.side-min .side a,html.side-min .side summary,html.side-min .side .side-tgl{padding:10px;margin-bottom:3px;border-radius:12px}
html.side-min .side a .ic,html.side-min .side summary .ic{display:block;margin:0 3px}
html.side-min .side .side-tgl .tg-ic{margin:0 3px}
html.side-min .side summary::after{opacity:0;transition:opacity .12s ease}
html.side-min .side:hover summary::after,html.side-min .side:focus-within summary::after{opacity:.6}
html.side-min .side details.act>summary{background:var(--side-on);color:var(--side-on-ink)}
html.side-min .side .user{white-space:nowrap;opacity:0;transition:opacity .12s ease;padding:10px 4px 2px}
html.side-min .side:hover .user,html.side-min .side:focus-within .user{opacity:1}
html.side-min .side .subs{margin-left:20px}
/* Modern/Dunkel: Leiste dauerhaft aufgeklappt */
html.side-offen[data-theme=modern] .layout,html.side-offen[data-theme=dunkel] .layout{padding-left:236px}
html.side-offen[data-theme=modern] .side,html.side-offen[data-theme=dunkel] .side{width:236px;box-shadow:none}
html.side-offen[data-theme=modern] .side .lb,html.side-offen[data-theme=dunkel] .side .lb,html.side-offen[data-theme=modern] .side .user,html.side-offen[data-theme=dunkel] .side .user{opacity:1}
html.side-offen[data-theme=modern] .side summary::after,html.side-offen[data-theme=dunkel] .side summary::after{opacity:.6}
html.side-offen[data-theme=modern] .side,html.side-offen[data-theme=dunkel] .side{overflow-y:auto}
}
@media(max-width:820px){.side .side-tgl{display:none}}

/* Layout-Editor: Einstellungen einklappbar */
.ly-set-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ly-set-h .btn{padding:3px 9px;font-size:12.5px}
.ly-grp{border:1.5px solid var(--line);border-radius:var(--radius-s);padding:0;background:var(--card);margin-bottom:8px}
.ly-grp>summary{cursor:pointer;font-weight:700;padding:8px 12px;list-style:none;display:flex;align-items:center;justify-content:space-between}
.ly-grp>summary::-webkit-details-marker{display:none}
.ly-grp>summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);opacity:.6;transition:transform .15s}
.ly-grp[open]>summary::after{transform:rotate(225deg)}
.ly-grp>.form{padding:4px 12px 12px}
.ly-set>.form{display:block}
#ly-form.set-zu .ly-grid{grid-template-columns:minmax(0,1fr)}
#ly-form.set-zu .ly-set{display:none}
#ly-form:not(.set-zu) .ky-setgrp .btn{background:color-mix(in srgb,var(--acc,#2a9d8f) 14%,var(--card))}
@media(min-width:821px){
html.side-min .side:not(:hover):not(:focus-within) .subs,html:not(.side-offen)[data-theme=modern] .side:not(:hover):not(:focus-within) .subs,html:not(.side-offen)[data-theme=dunkel] .side:not(:hover):not(:focus-within) .subs{display:none}
}

.ky-block{border:1.5px dashed #1f8a70;background:rgba(31,138,112,.07);color:#1d4f43;overflow:hidden;font-family:Helvetica,Arial,sans-serif}
.ky-block.aus{opacity:.35}
.ky-block.ky-b-logo{display:flex;align-items:center;justify-content:center;font-size:11px;background:repeating-linear-gradient(45deg,rgba(31,138,112,.1),rgba(31,138,112,.1) 4px,rgba(31,138,112,.2) 4px,rgba(31,138,112,.2) 8px)}
.ky-block.ky-b-inhalt{background:rgba(42,127,255,.05);border-color:#2a7fff;color:#3b6ab5;line-height:1.3;padding:3px 5px}

/* Gestaltung des Inhalts */
.inh{padding:4px 12px 12px;font-size:13px}.inh h4{margin:12px 0 6px;font-size:13px}
.inh-t{width:100%;border-collapse:collapse}.inh-t th{font-size:11.5px;text-align:left;padding:3px 4px}.inh-t td{padding:3px 4px;border-bottom:1px solid var(--line);vertical-align:middle}
.inh-t input:not([type=checkbox]):not([type=color]){width:100%;min-width:0;padding:3px 5px;box-sizing:border-box}.inh-t select{padding:3px 4px;font-size:12.5px}
.inh-t input[type=color],.inh-g input[type=color]{width:34px;height:24px;padding:1px;vertical-align:middle}
.inh-g{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px}.inh-g label{font-size:12px;font-weight:600;display:flex;flex-direction:column;gap:3px}.inh-g label.inh-c{flex-direction:row;align-items:center;gap:6px;font-weight:600}
.inh-g input:not([type=checkbox]):not([type=color]){width:100%;box-sizing:border-box;padding:3px 5px}
.ly-inh{position:absolute;overflow:hidden;pointer-events:none;color:#111;box-sizing:border-box}
.ly-frame i{display:none}

.inh-g label.inh-c{white-space:nowrap}.inh-g input[type=checkbox]{width:auto!important;flex:none;margin:0}
.inh-tb{border:1.5px solid var(--line);border-radius:var(--radius-s);margin:0 0 8px;padding:6px 10px 10px}.inh-tb legend{font-weight:700;font-size:12.5px;padding:0 4px}
.inh-g select{padding:3px 5px;font-size:12.5px;width:100%;box-sizing:border-box}

/* ===== Seitenlayout-Editor 0.29: Menüband, Panels, Lineale ===== */
.sr{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ed-form{margin:0}
.ed{display:flex;flex-direction:column;height:calc(100vh - 70px);min-height:660px;margin-top:10px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;font-size:13px;color:var(--txt)}
.ed svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ed-top{display:flex;align-items:center;gap:10px;padding:8px 14px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.ed-brand{color:var(--ink);font-size:15px;white-space:nowrap}
.ed-name{min-width:260px;font-weight:600;padding:5px 9px}
.ed-sp{flex:1}
.ed-top .btn,.ed-dd summary{padding:6px 12px;font-size:13px}
.ed-dd{position:relative}.ed-dd summary{list-style:none;cursor:pointer;display:inline-block}.ed-dd summary::-webkit-details-marker{display:none}
.ed-menu{position:absolute;right:0;top:100%;margin-top:4px;z-index:30;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-s);box-shadow:0 10px 30px rgba(20,30,50,.25);padding:6px;display:flex;flex-direction:column;gap:4px;min-width:240px}
.ed-menu .btn{text-align:left}
.ed-tabs{display:flex;gap:2px;padding:6px 14px 0;background:var(--bg);border-bottom:1px solid var(--line);flex-wrap:wrap}
.ed-tabs button{border:1px solid transparent;border-bottom:0;background:transparent;padding:7px 14px;border-radius:8px 8px 0 0;cursor:pointer;font:inherit;color:var(--mut);font-weight:600;margin-bottom:-1px}
.ed-tabs button:hover{color:var(--txt)}
.ed-tabs button.on{background:var(--card);border-color:var(--line);color:var(--ink);box-shadow:inset 0 3px 0 var(--acc);border-bottom:1px solid var(--card)}
.ed-rib{border-bottom:1px solid var(--line);background:var(--card);flex:none}
.rib-p{display:flex;padding:4px 6px;min-height:92px;overflow-x:auto}.rib-p[hidden]{display:none}
.grp{display:flex;flex-direction:column;justify-content:space-between;padding:6px 12px 4px;border-right:1px solid var(--line);flex:none}.grp:last-child{border-right:0}
.gl{text-align:center;color:var(--mut);font-size:12px;padding-top:4px}
.gb{display:flex;gap:2px;align-items:center;flex:1}
.gb.gcol{flex-direction:column;align-items:flex-start;justify-content:center;gap:6px}
.gb.gform{gap:10px;align-items:flex-end}
.gform label{display:block;font-size:11.5px;color:var(--mut);font-weight:600;margin-bottom:2px}
.gform input:not([type=color]):not([type=range]):not([type=checkbox]),.gform select,.gform textarea{padding:4px 7px;font-size:13px;box-sizing:border-box}
.gform input[size]{width:70px}.gform select{max-width:200px}
.gform .breit input,.gform .breit textarea{width:270px}
.gform .gc{display:flex;flex-direction:column;gap:4px}
.ed-farbe{width:56px;height:30px;padding:1px}
.ed-chk{display:flex;gap:6px;align-items:center;font-weight:400!important;color:var(--txt)!important;margin:0!important}
.ed-h{max-width:250px;line-height:1.35}
.rb{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:0;background:transparent;padding:6px 8px;border-radius:8px;min-width:58px;cursor:pointer;font:inherit;font-size:12px;color:var(--txt);text-decoration:none}
.rb svg{width:24px;height:24px;color:var(--acc)}
.rb:hover{background:color-mix(in srgb,var(--acc) 12%,var(--card))}
.rb:disabled{opacity:.4;cursor:default;background:transparent}
.rb-del svg{color:var(--coral)}
.rbz{font-size:22px;line-height:24px;color:var(--acc)}
.rs{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;border:1px solid transparent;background:transparent;border-radius:6px;cursor:pointer;color:var(--txt);font:inherit;padding:0 4px}
.rs:hover{background:color-mix(in srgb,var(--acc) 12%,var(--card))}.rs:disabled{opacity:.4;cursor:default}.rs.on{background:var(--acc);color:var(--acc-ink)}
.grow{display:flex;gap:6px;align-items:center}
.sw{padding:0;overflow:hidden}.sw input[type=color]{width:30px;height:28px;padding:1px;border:0}
.ed-body{flex:1;display:flex;min-height:0}
.ed-left{width:236px;flex:none;background:var(--bg);border-right:1px solid var(--line);padding:12px;overflow:auto;display:flex;flex-direction:column;gap:8px}
.ed-h2{font-size:12.5px;color:var(--mut);margin:6px 0 0;font-weight:700}
.ed-liste{display:flex;flex-direction:column;gap:2px}
.ed-li{display:flex;align-items:center;border-radius:8px}.ed-li:hover{background:color-mix(in srgb,var(--txt) 7%,transparent)}
.ed-li.on{background:color-mix(in srgb,var(--acc) 16%,var(--card));box-shadow:inset 3px 0 0 var(--acc);font-weight:600}
.ed-lb{flex:1;min-width:0;text-align:left;border:0;background:transparent;padding:7px 10px;font:inherit;color:inherit;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ed-li.aus .ed-lb{opacity:.5}
.ed-eye{border:0;background:transparent;cursor:pointer;padding:6px 8px;color:var(--mut)}.ed-eye:hover{color:var(--txt)}
.ed-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.tile{display:flex;flex-direction:column;align-items:center;gap:6px;border:1px solid var(--line);border-radius:10px;padding:10px 4px;background:var(--card);cursor:pointer;font:inherit;font-size:12px;color:var(--txt)}
.tile:hover{border-color:var(--acc)}.tile svg{width:22px;height:22px;color:var(--acc)}
.ed-pause{display:flex;gap:10px;align-items:center;border:1px dashed var(--mut);border-radius:10px;padding:10px;color:var(--txt);text-decoration:none;margin-top:auto}
.ed-pause svg{color:var(--acc);width:22px;height:22px}
.ly-ws{flex:1;min-width:0;display:flex;flex-direction:column;position:relative}
.ky-desk{flex:1;max-height:none;min-height:0;border:0;border-radius:0;background:color-mix(in srgb,var(--txt) 14%,var(--bg));padding:12px 24px 40px;overflow:auto}
.ky-page{padding:24px 0 0 24px}
.ky-rx,.ky-ry{position:absolute;background:var(--card);color:var(--txt);font:9px/1 var(--font);overflow:hidden;pointer-events:none;z-index:5;box-sizing:border-box}
.ky-rx{left:24px;top:0;height:22px;border-bottom:1px solid var(--line)}
.ky-ry{left:0;top:24px;width:22px;border-right:1px solid var(--line)}
.ky-rx .zone,.ky-ry .zone{position:absolute;background:color-mix(in srgb,var(--txt) 12%,transparent)}
.ky-rx .zone{top:0;bottom:0}.ky-ry .zone{left:0;right:0}
.ky-rx span,.ky-ry span{position:absolute;background:color-mix(in srgb,var(--txt) 45%,transparent)}
.ky-rx span{bottom:0;width:1px;height:3px}.ky-rx span.mitte{height:6px}.ky-rx span.gross{height:10px;background:var(--txt)}
.ky-ry span{right:0;height:1px;width:3px}.ky-ry span.mitte{width:6px}.ky-ry span.gross{width:10px;background:var(--txt)}
.ky-rx span em{position:absolute;left:3px;top:-11px;font-style:normal;color:var(--txt)}
.ky-ry span em{position:absolute;right:12px;top:3px;font-style:normal;color:var(--txt);writing-mode:vertical-rl;transform:rotate(180deg)}
.ky-rx .selr,.ky-ry .selr{position:absolute;background:color-mix(in srgb,var(--acc) 30%,transparent);box-sizing:border-box}
.ky-rx .selr{top:0;bottom:0;border-left:1px solid var(--acc);border-right:1px solid var(--acc)}
.ky-ry .selr{left:0;right:0;border-top:1px solid var(--acc);border-bottom:1px solid var(--acc)}
.ky-rx .selw,.ky-ry .selw{position:absolute;background:var(--acc);color:var(--acc-ink);font-size:9px;line-height:11px;font-weight:700;padding:0 3px;border-radius:3px;z-index:2}
.ky-rx .selw{top:2px;transform:translateX(-50%)}.ky-ry .selw{left:1px;transform:translateY(-50%)}
.ky-rx .pm,.ky-ry .pm{position:absolute;background:var(--coral);text-decoration:none;z-index:3}
.ky-rx .pm{top:0;bottom:0;width:1px}.ky-ry .pm{left:0;right:0;height:1px}
.ky-dim{position:absolute;pointer-events:none;background:var(--acc);z-index:5}
.ky-dim.h{height:1.5px;transform:translateY(-.75px)}.ky-dim.v{width:1.5px;transform:translateX(-.75px)}
.ky-dim::before,.ky-dim::after{content:"";position:absolute;background:var(--acc)}
.ky-dim.h::before,.ky-dim.h::after{top:-4px;width:1.5px;height:9.5px}.ky-dim.h::before{left:0}.ky-dim.h::after{right:0}
.ky-dim.v::before,.ky-dim.v::after{left:-4px;height:1.5px;width:9.5px}.ky-dim.v::before{top:0}.ky-dim.v::after{bottom:0}
.ky-dimw{position:absolute;pointer-events:none;z-index:6;background:var(--acc);color:var(--acc-ink);font:600 9px/12px var(--font);padding:0 4px;border-radius:3px;white-space:nowrap}
.ky-dimw.hz{transform:translate(-50%,-140%)}.ky-dimw.vt{transform:translate(-50%,-50%)}
.ky-float{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);z-index:8;pointer-events:none}.ky-float[hidden]{display:none}
.ky-fp{display:flex;gap:12px;align-items:center;background:#1B2430;color:#fff;border-radius:10px;padding:6px 14px;box-shadow:0 6px 18px rgba(20,30,50,.3);white-space:nowrap}
.ky-fp strong{font-weight:600}.ky-fp span{color:#C9D3E6}
.ed-right{width:330px;flex:none;border-left:1px solid var(--line);background:var(--bg);overflow:auto;padding:12px;display:flex;flex-direction:column;gap:10px}
.ed-right .ky-props{border:0;padding:0;background:transparent;max-height:none;overflow:visible;display:flex;flex-direction:column;gap:10px}
.ky-ph{display:flex;flex-direction:column;gap:2px;padding:2px 2px 4px}.ky-ph strong{font-size:15px}
.ky-bhint{margin:0}
.ed-card.ly-grp{margin:0;overflow:hidden}
.ed-card .ky-felder{padding:2px 12px 12px;display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;margin:0}
.ed-card .ky-f{min-width:0}.ed-card .ky-f.voll{grid-column:1/-1}
.ed-card .ky-f input:not([type=checkbox]):not([type=color]),.ed-card .ky-f select,.ed-card .ky-f textarea{width:100%;box-sizing:border-box}
.ed-card .ky-f input[type=checkbox]{width:auto;align-self:flex-start}
.ed-r-h{display:flex;flex-direction:column;gap:2px;padding:2px 2px 4px}.ed-r-h strong{font-size:15px}
#ed-r-beleg{display:flex;flex-direction:column;gap:10px}#ed-r-beleg[hidden],#ed-r-el[hidden]{display:none}
.ed-status{display:flex;align-items:center;gap:14px;padding:5px 14px;border-top:1px solid var(--line);font-size:12px;color:var(--mut);flex:none}
.ed-status p{margin:0}
.ed-zoom{display:flex;align-items:center;gap:4px}.ed-zoom .rs{min-width:26px;height:24px}
.ed-hinweis{margin:8px 2px 14px}
@media(max-width:1180px){.ed-left{width:190px}.ed-right{width:290px}}
@media(max-width:900px){.ed{height:auto}.ed-body{flex-direction:column}.ed-left,.ed-right{width:auto;border:0}.ky-desk{min-height:480px}}
.tile span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px}

.ed-right .inh-g{grid-template-columns:1fr}
.ed-right .inh-g label.inh-c{white-space:normal}
.ed-card .ky-f textarea{min-width:0}

/* ===== To-Dos 0.30: Filter, Tafel, Kalender, farbige Blöcke ===== */
.tk-n{display:inline-block;min-width:18px;padding:0 6px;border-radius:99px;background:color-mix(in srgb,var(--txt) 12%,transparent);font-size:11.5px;font-weight:700;text-align:center;line-height:18px}
.tk-filter{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:end;padding:12px 14px;margin:10px 0}
.tk-filter>div{display:flex;flex-direction:column;gap:3px;min-width:120px}.tk-filter label{font-size:12px;font-weight:600;margin:0}.tk-filter input,.tk-filter select{padding:5px 8px;font-size:13px}
.tk-fb{flex-direction:row!important;gap:6px;align-items:center}
.tk-st{padding:3px 6px;font-size:12.5px;border-radius:99px;font-weight:600}
.tk-st.s-in_arbeit{background:color-mix(in srgb,var(--amber) 22%,var(--card))}.tk-st.s-erledigt{background:var(--ok-bg);color:var(--ok-ink)}.tk-st.s-abgewiesen{background:var(--off-bg);color:var(--off-ink)}
.tk-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}.tk-bar .btn{padding:5px 12px}.tk-titel{margin:0 6px;font-size:18px}.tk-sp{flex:1}
.tk-bar .seg a{border:0;background:var(--card);color:var(--txt);padding:6px 14px;font:inherit;border-left:1px solid var(--line);text-decoration:none;display:inline-block}.tk-bar .seg a:first-child{border-left:0}.tk-bar .seg a.on{background:var(--acc);color:var(--acc-ink);font-weight:600}
.tk-farbe{font-size:12.5px;color:var(--mut);display:inline-flex;gap:4px;align-items:center}.tk-farbe a{padding:3px 9px;border-radius:99px;text-decoration:none;color:var(--txt);border:1px solid var(--line)}.tk-farbe a.on{background:var(--acc);color:var(--acc-ink);border-color:var(--acc)}
.tk-leer{color:var(--mut);font-size:12.5px}
/* farbige Blöcke */
.tk-blk,.tk-chip{--c:#3E7CB1;border-left:5px solid var(--c);background:color-mix(in srgb,var(--c) 16%,var(--card));color:var(--txt);text-decoration:none;border-radius:8px}
.tk-blk.s-erledigt,.tk-chip.s-erledigt,.tk-blk.s-abgewiesen,.tk-chip.s-abgewiesen{opacity:.55}.tk-blk.s-erledigt .tk-t,.tk-chip.s-erledigt,.tk-blk.s-abgewiesen .tk-t,.tk-chip.s-abgewiesen{text-decoration:line-through}
.tk-blk.s-in_arbeit,.tk-chip.s-in_arbeit{box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--c) 60%,transparent)}
.tk-chip{display:block;padding:2px 6px;font-size:12px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.tk-chip b{font-weight:700}
/* Tafel */
.tk-board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);gap:12px;overflow-x:auto;padding-bottom:8px}
.tk-col{background:color-mix(in srgb,var(--txt) 5%,var(--bg));border:1.5px solid var(--line);border-radius:12px;padding:10px;min-height:260px;display:flex;flex-direction:column;gap:8px}
.tk-col.ziel{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 10%,var(--bg))}
.tk-col h3{margin:0;font-size:14px;display:flex;justify-content:space-between;align-items:center}
.tk-cards{display:flex;flex-direction:column;gap:8px;flex:1}
.tk-card{padding:9px 11px;display:flex;flex-direction:column;gap:4px;cursor:grab;box-shadow:0 1px 2px rgba(20,30,50,.12)}.tk-card.zieht{opacity:.4}
.tk-card .tk-t{font-weight:600;color:inherit;text-decoration:none}.tk-m{font-size:12px;color:var(--mut)}.tk-m .ueber{color:var(--coral);font-weight:700}
/* Kalender */
.tk-monat{border:1px solid var(--line);border-radius:10px;overflow:hidden}.tk-wt,.tk-wo{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.tk-wt span{padding:6px 8px;font-size:12px;font-weight:700;color:var(--mut);background:var(--bg);border-bottom:1px solid var(--line)}
.tk-tag{min-height:104px;padding:4px 5px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0}.tk-tag:nth-child(7n){border-right:0}.tk-tag.we{background:color-mix(in srgb,var(--txt) 4%,transparent)}.tk-tag.aus{opacity:.5}
.tk-tag.heute{box-shadow:inset 0 0 0 2px var(--acc)}.tk-dn{font-weight:700;font-size:12.5px;color:var(--txt);text-decoration:none}.tk-mehr{display:block;font-size:11.5px;margin-top:2px}
.tk-woche{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.tk-wspalte{border:1px solid var(--line);border-radius:10px;padding:8px;min-height:260px;min-width:0}.tk-wspalte.heute{box-shadow:inset 0 0 0 2px var(--acc)}.tk-wspalte.we{background:color-mix(in srgb,var(--txt) 4%,transparent)}
.tk-wk{display:block;font-size:12.5px;margin-bottom:6px;color:var(--txt);text-decoration:none}
.tk-ohne{display:flex;flex-wrap:wrap;gap:6px}.tk-ohne .tk-chip{display:inline-block;max-width:280px}
.tk-jahr{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.tk-mt{font-weight:700;color:var(--txt);text-decoration:none;display:flex;justify-content:space-between;margin-bottom:4px}
.tk-mg{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;font-size:11.5px;text-align:center}.tk-mg .k{font-style:normal;color:var(--mut);font-weight:700}
.tk-mg .d{padding:3px 0;border-radius:5px;color:var(--txt);text-decoration:none}.tk-mg .d.n1{background:color-mix(in srgb,var(--acc) 22%,transparent)}.tk-mg .d.n2{background:color-mix(in srgb,var(--acc) 42%,transparent)}.tk-mg .d.n3{background:color-mix(in srgb,var(--acc) 66%,transparent);font-weight:700}.tk-mg .d.heute{outline:2px solid var(--acc)}
/* Tagesansicht */
.tk-ganz{display:flex;flex-wrap:wrap;gap:6px;align-items:center;border:1.5px dashed var(--line);border-radius:10px;padding:8px 10px;margin-bottom:8px;min-height:44px}.tk-ganz.ziel{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 10%,transparent)}.tk-gl{font-size:12px;font-weight:700;color:var(--mut);margin-right:6px}
.tk-klein{display:inline-flex;flex-direction:column;padding:4px 10px;cursor:grab}
.tk-tl{position:relative;border:1px solid var(--line);border-radius:10px;background:var(--card);overflow:hidden;touch-action:none}
.tk-std{position:absolute;left:0;right:0;border-top:1px solid var(--line);height:0}.tk-std span{position:absolute;left:8px;top:2px;font-size:11.5px;color:var(--mut)}
.tk-tl .tk-blk{position:absolute;padding:4px 8px;overflow:hidden;display:flex;flex-direction:column;gap:2px;cursor:grab;box-sizing:border-box;touch-action:none;user-select:none;z-index:1}.tk-tl .tk-blk.zieht{opacity:.35}
.tk-t{font-weight:600;font-size:13px;overflow:hidden;text-overflow:ellipsis}
.tk-geist{position:fixed!important;z-index:300;pointer-events:none;opacity:.92;box-shadow:0 8px 22px rgba(20,30,50,.3);display:flex;flex-direction:column;padding:4px 8px;box-sizing:border-box}
.tk-schnell{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.tk-schnell input[name=titel]{flex:1;min-width:220px}
.tk-melde{position:fixed;right:20px;bottom:20px;z-index:400;background:#1B2430;color:#fff;border-radius:10px;padding:9px 16px;box-shadow:0 8px 24px rgba(0,0,0,.3)}.tk-melde[hidden]{display:none}
#tk-abw{border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:var(--card);color:var(--txt);min-width:320px}
@media(max-width:900px){.tk-woche{grid-template-columns:1fr}.tk-tag{min-height:70px}}
.tabs{margin-top:14px}

/* Fahrtenbuch: Druckansicht */
@media print{.side,.topbar,.noprint,.designs,.tabs{display:none!important}.layout{display:block}main{padding:0;margin:0;max-width:none}body{background:#fff;color:#000}.card{box-shadow:none;border:0;padding:0}table{font-size:10.5px}}
.ver-box{margin-top:14px}.ver-box summary{cursor:pointer}

/* Vorlagen-Galerie */
.vk-leiste{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:6px 0 14px}.vk-leiste input[type=search]{flex:1;min-width:200px;max-width:340px}
.vk-leiste .seg button{border:0;background:var(--card);color:var(--txt);padding:6px 14px;font:inherit;border-left:1px solid var(--line);cursor:pointer}.vk-leiste .seg button:first-child{border-left:0}.vk-leiste .seg button.on{background:var(--acc);color:var(--acc-ink);font-weight:600}
.vk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.vk-karte{background:var(--card);border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;overflow:visible}.vk-karte[hidden]{display:none}
.vk-bild{display:flex;justify-content:center;align-items:center;padding:14px;background:color-mix(in srgb,var(--txt) 6%,var(--bg));border-radius:12px 12px 0 0;min-height:200px;text-decoration:none}
.vk-text{padding:10px 14px 4px;display:flex;flex-direction:column;gap:2px}.vk-text strong{font-size:15px}.vk-meta{font-size:12.5px}
.vk-akt{display:flex;gap:6px;padding:8px 14px 14px;margin-top:auto;align-items:center;flex-wrap:wrap}.vk-akt .btn{padding:5px 12px}
.vk-mehr .ed-menu{right:0;left:auto;min-width:190px}.vk-mehr .ed-menu form,.vk-mehr .ed-menu a{display:block;width:100%}.vk-mehr .ed-menu .btn{width:100%;text-align:left}
.vk-neu .ed-menu{right:0;left:auto;min-width:240px}.vk-neu .ed-menu a{display:block}
.vk-blatt{--c:#2A9D8F;width:118px;aspect-ratio:1/1.414;background:#fff;border:1px solid #cfd6e0;box-shadow:0 2px 8px rgba(20,30,50,.18);position:relative;padding:12px 10px;display:flex;flex-direction:column;gap:5px;overflow:hidden;color:#1b2430}
.vk-blatt.quer{width:150px;aspect-ratio:1.414/1}
.vk-blatt i{display:block;background:#d9dee6;height:3px;border-radius:2px}.vk-blatt .vk-kopf{position:absolute;left:0;right:0;top:0;height:7px;background:var(--c);border-radius:0}
.vk-blatt .vk-t{font-size:9px;color:var(--c);margin-top:6px}.vk-blatt .w9{width:90%}.vk-blatt .w6{width:60%}.vk-blatt .w5{width:50%}
.vk-blatt .vk-logo{width:22px;height:12px;background:var(--c);opacity:.8;margin-top:6px}.vk-blatt .vk-adr{width:45%;height:10px;background:#e7ebf0}
.vk-blatt .vk-tab{height:24px;background:repeating-linear-gradient(#e7ebf0 0 3px,#fff 3px 7px);border-top:2px solid var(--c);border-radius:0}.vk-blatt .vk-sum{width:40%;height:8px;margin-left:auto;background:var(--c);opacity:.8}
.vk-blatt .vk-chk{width:80%;height:6px;background:linear-gradient(90deg,var(--c) 0 6px,#fff 6px 9px,#d9dee6 9px);border-radius:1px}
.vk-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.vk-akt{flex-wrap:nowrap}.vk-akt .btn{padding:5px 10px;white-space:nowrap}

/* Platzhalter-Auswahl */
.ph-pick{position:relative;display:inline-block}.ph-panel{position:absolute;z-index:60;top:calc(100% + 4px);left:0;width:min(420px,92vw);max-height:380px;overflow:auto;background:var(--card);color:var(--txt);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px rgba(20,30,50,.25);padding:8px}
.ph-panel[hidden]{display:none}.ph-q{width:100%;margin-bottom:6px}.ph-gr{font-size:11.5px;font-weight:700;color:var(--mut);padding:8px 6px 2px}
.ph-item{display:flex;width:100%;justify-content:space-between;gap:10px;align-items:baseline;text-align:left;background:transparent;border:0;border-radius:6px;padding:5px 8px;cursor:pointer;color:inherit;font:inherit}.ph-item:hover,.ph-item:focus{background:color-mix(in srgb,var(--acc) 14%,transparent)}
.ph-item code{font-size:12.5px;white-space:nowrap}.ph-wert{font-size:12.5px;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:55%}.ph-wert.mut{font-style:italic}
.ph-warn{color:var(--coral);margin-top:3px}
.ph-panel{display:block}.ph-panel[hidden]{display:none}.ph-list{display:block}.ph-panel .ph-q{display:block}
.ky-desk{position:relative}

.bb-gruppe{margin:22px 0 10px;font-size:17px}
.bb-blatt{width:100%;max-width:230px;min-height:128px;background:#fff;color:#2b3440;border:1px solid #cfd6e0;box-shadow:0 2px 8px rgba(20,30,50,.18);padding:10px 12px;font-size:11px;line-height:1.35;display:flex;flex-direction:column;gap:5px;overflow:hidden;box-sizing:border-box;text-align:left}
.bb-blatt p{margin:0;color:#4a5563}.bb-t{color:#1F3864;font-size:12px}.bb-blatt small{color:#7a8594}
.bb-chk,.bb-zeile,.bb-pers{display:flex;gap:6px;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bb-chk:before{content:"";flex:none;width:9px;height:9px;border:1.5px solid #2A9D8F;border-radius:2px}
.bb-zeile i{flex:none;width:7px;height:7px;background:#2A9D8F;border-radius:50%}
.bb-pers em{flex:none;width:18px;height:18px;border-radius:50%;background:#dbe6f3;color:#1F3864;font-style:normal;font-weight:700;display:inline-flex;align-items:center;justify-content:center;font-size:10px}
.bb-pos{display:grid;grid-template-columns:1fr auto;gap:3px 8px;border-top:2px solid #1F3864;padding-top:6px}.bb-pos b{grid-column:1/3}.bb-pos strong{text-align:right}.bb-pos span{color:#4a5563}
.rm-leiste{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:8px 0 12px}
.rm-wrap{display:grid;grid-template-columns:170px minmax(0,1fr) 300px;gap:12px;align-items:start}
.rm-pal{display:flex;flex-direction:column;gap:6px}.rm-pal h3,.rm-probe h3{margin:8px 0 2px;font-size:13px}.rm-pal .btn{text-align:left;padding:5px 10px;font-size:13px}
.rm-canvas{position:relative;overflow:auto;height:68vh;min-height:420px;border:1.5px solid var(--field);border-radius:var(--radius-s);background:
 radial-gradient(circle,color-mix(in srgb,var(--txt) 22%,transparent) 1px,transparent 1.5px) 0 0/20px 20px,var(--card)}
.rm-svg{position:absolute;left:0;top:0;pointer-events:none}.rm-svg path{pointer-events:none}.rm-svg .rm-kante-hit{pointer-events:stroke;stroke:transparent;stroke-width:14;fill:none;cursor:pointer}
.rm-kante{fill:none;stroke:var(--acc);stroke-width:2.2}.rm-kabel{stroke-dasharray:5 4;opacity:.7}
#rm-nodes{position:relative}
.rm-n{position:absolute;width:190px;background:var(--card);border:1.5px solid var(--line);border-radius:10px;box-shadow:0 2px 8px rgba(20,30,50,.15);font-size:13px}
.rm-eingabe{border-top:4px solid #2A9D8F}.rm-rechnen{border-top:4px solid #3b6fb6}.rm-ausgabe{border-top:4px solid var(--coral)}
.rm-kopf{display:flex;justify-content:space-between;align-items:center;gap:6px;padding:6px 8px;cursor:grab;touch-action:none;user-select:none}
.rm-x{border:0;background:none;color:var(--mut,#7a8594);font-size:17px;line-height:1;cursor:pointer;padding:0 4px}
.rm-koerper{padding:2px 10px 10px 18px;display:flex;flex-direction:column;gap:6px}
.rm-zeile{display:flex;align-items:center;gap:8px;position:relative}
.rm-in,.rm-out{display:block;width:14px;height:14px;border-radius:50%;background:var(--card);border:2.5px solid var(--acc);cursor:crosshair;flex:none;box-sizing:border-box}
.rm-in{position:absolute;left:-26px}.rm-out{position:absolute;right:-8px;top:50%}
.rm-in:hover,.rm-out:hover{background:var(--acc)}
.rm-p{display:flex;flex-direction:column;gap:2px;font-size:12px}.rm-p input[type=text],.rm-p select{padding:3px 6px;font-size:13px;width:100%;box-sizing:border-box}
.rm-p input[type=checkbox]{align-self:flex-start}
.rm-probe{display:flex;flex-direction:column;gap:6px}.rm-pt{border-collapse:collapse;font-size:12.5px;width:100%}.rm-pt th{text-align:left;font-weight:600;padding:2px 4px}.rm-pt td{padding:2px 4px;border-top:1px solid var(--line)}.rm-pt input{width:100%;padding:2px 4px;text-align:right;box-sizing:border-box}.rm-pt td.n{text-align:right}
.rm-sum{margin:2px 0;font-size:13px}.rm-netto{font-weight:700}
.rm-fehler{background:color-mix(in srgb,var(--coral) 14%,var(--card));border:1px solid var(--coral);border-radius:8px;padding:8px;font-size:13px}
@media(max-width:1100px){.rm-wrap{grid-template-columns:1fr}.rm-pal{flex-direction:row;flex-wrap:wrap}}

.ph-panel{z-index:1000}
.er-karte{text-decoration:none;color:inherit}.er-karte:hover{border-color:var(--acc);box-shadow:0 4px 14px rgba(20,30,50,.15)}.er-karte .vk-text .mut{font-size:13px;line-height:1.4}

/* Plansafe, Mängelradar, Flotte */
.st-freigegeben,.ms-abgenommen,.fl-fahrt{background:var(--ok-bg);color:var(--ok-ink)}
.st-pruefung,.ms-arbeit,.fl-steht{background:var(--warn-bg);color:var(--warn-ink)}
.st-abgelehnt,.ms-offen{background:var(--bad-bg);color:var(--bad-ink)}
.ms-gemeldet{background:var(--info-bg);color:var(--info-ink)}
.st-ersetzt,.fl-aus{background:var(--bg);color:var(--mut);border:1px solid var(--line)}
.st-ersetzt{text-decoration:line-through}
.pv{position:relative;display:inline-block;max-width:100%;line-height:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#fff}
.pv img{max-width:100%;height:auto;display:block}
.pv.klick{cursor:crosshair}
.pin{position:absolute;transform:translate(-50%,-50%);min-width:24px;height:24px;padding:0 4px;box-sizing:border-box;border-radius:50%;border:2px solid #fff;color:#fff;font:700 12px/20px sans-serif;text-align:center;box-shadow:0 1px 4px rgba(0,0,0,.4);text-decoration:none}
.pin.ms-offen{background:#c0392b;color:#fff}.pin.ms-arbeit{background:#d98a12;color:#fff}.pin.ms-gemeldet{background:#3E7CB1;color:#fff}.pin.ms-abgenommen{background:#1f7f73;color:#fff}.pin.neu{background:#7a1fa2;color:#fff}
.pin.sel{outline:3px solid #1d3256;z-index:3}
.zwei{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:18px;align-items:start}
@media(max-width:900px){.zwei{grid-template-columns:1fr}}
.bar{height:10px;background:var(--line);border-radius:6px;overflow:hidden}.bar i{display:block;height:100%}
.ampel{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px;vertical-align:-1px}
.verlauf{border-left:3px solid var(--line);padding-left:10px;margin-bottom:8px}
#karte{height:520px;border-radius:8px;border:1px solid var(--line)}

table.kompakt th,table.kompakt td{padding:6px 8px;font-size:13px}
table.kompakt input,table.kompakt select{font-size:13px}
table.kompakt .zf{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
table.kompakt .badge{white-space:normal;display:inline-block}
table.kompakt .zf select{width:112px}
table.kompakt .zf input[type=date]{width:124px}
table.kompakt .zf input[name=betrag]{width:84px}
/* Tabellen in Karten passen sich der Kartenbreite an: lange Namen umbrechen, Beträge bleiben in einer Zeile */
.projekt-seite .card{min-width:0}
.projekt-seite .card > table td{overflow-wrap:break-word}
.projekt-seite .card > table td.n,.projekt-seite .card > table td.d{overflow-wrap:normal;white-space:nowrap}
.projekt-seite .card > table td:first-child,.projekt-seite .card > table td a{white-space:normal}
@media(max-width:560px){.projekt-seite .card{overflow-x:auto}}
/* Auswahlfelder bleiben in ihrer Tabellenzelle */
main .card td > select{max-width:100%;min-width:0;box-sizing:border-box}
.side .subs a{padding-left:8px;padding-right:6px;font-size:12.5px;overflow-wrap:anywhere}
.side .subs a{hyphens:auto;overflow-wrap:normal}
.as-wartend{background:var(--warn-bg);color:var(--warn-ink)}
.as-freigegeben{background:var(--ok-bg);color:var(--ok-ink)}
.as-abgewiesen{background:var(--bad-bg);color:var(--bad-ink)}
.as-zurückgezogen{background:var(--bg);color:var(--mut);border:1px solid var(--line)}

/* LV-Tabelle (Raster wie in einer Tabellenkalkulation) und Einfügen-Popup */
.lvsheet{border:1px solid var(--line);border-radius:var(--radius-s);overflow:hidden;background:var(--card)}
.lvscroll{max-height:72vh;overflow:auto}
table.lvgrid{border-collapse:separate;border-spacing:0;width:100%;min-width:980px;table-layout:fixed;font-variant-numeric:tabular-nums}
.lvgrid th{position:sticky;top:0;z-index:3;background:var(--th-bg,var(--card));color:var(--th-ink);border-bottom:1px solid var(--line);border-right:1px solid rgba(127,140,160,.25)}
.lvgrid th:last-child{border-right:0}
.lvgrid th.n,.lvgrid td.n{text-align:right}
.lvgrid td{padding:0;height:34px;vertical-align:middle;border-bottom:1px solid var(--line);border-right:1px solid var(--line);background:var(--card);position:relative}
.lvgrid td:last-child{border-right:0}
.lvgrid tr:nth-child(even) td{background:var(--card)}
.lvgrid td.ro{padding:0 8px}.lvgrid td:first-child:not(.ro){padding:0 6px}
.lvgrid td input,.lvgrid td select{width:100%;height:33px;border:0;background:transparent;color:inherit;font:inherit;padding:0 8px;margin:0;border-radius:0;box-shadow:none;outline:none}
.lvgrid td.n input{text-align:right}
.lvgrid td select{padding:0 2px;font-size:12.5px}
.lvgrid td:focus-within{outline:2px solid var(--acc);outline-offset:-2px;z-index:2}
.lvgrid tr.pk:hover td{background:rgba(127,140,160,.08)}
.lvgrid tr.lgk td{background:rgba(62,124,177,.18);font-weight:700;height:36px}
.lvgrid tr.ulgk td{background:rgba(127,140,160,.12);font-weight:600}
.lvgrid tr.vk td,.lvgrid tr.dk td{background:rgba(127,140,160,.05);height:auto}
.lvgrid tr.dk td.ro{padding:8px 10px 10px}
.lvgrid tr.dk textarea{width:100%;display:block}
.lvgrid .dkf{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:6px}
.lvgrid .dkf select{width:auto;height:30px;border:1px solid var(--line)}
.lvgrid .tg,.lvgrid .ex,.qt .tg,.qt .ex{border:0;background:none;cursor:pointer;color:inherit;width:22px;padding:0;font-size:13px}
.lvgrid .kt{display:flex;align-items:center}
.lvgrid tr.ak td{background:var(--card)}.lvgrid tr.ak input::placeholder{color:var(--mut);font-style:italic}
.lvgrid tr.tot td{position:sticky;bottom:0;z-index:3;background:var(--sum-bg);font-weight:700;border-top:2px solid var(--acc);height:38px}
.lvgrid td.act{white-space:nowrap;text-align:center}.lvgrid td.act .btn{padding:2px 7px;margin:0 1px}
.lvgrid td .fx{color:var(--acc);font-size:11px;font-weight:700}
.lvgrid select.art-bedarf{color:#9A4A06;font-weight:600}.lvgrid select.art-alternativ{color:#1F4F85;font-weight:600}
.lvstat{display:flex;gap:18px;flex-wrap:wrap;padding:7px 12px;border-top:1px solid var(--line);font-size:12.5px}
.lvstat kbd{border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;padding:0 5px;font-size:11.5px}
#qdlg{display:none}#qdlg[open]{display:block}
#qdlg form{height:100%}
.qflt{width:100%;margin-bottom:6px}.qscroll{max-height:none;overflow:auto;flex:1}
table.qt{border-collapse:separate;border-spacing:0;width:100%;table-layout:fixed;font-variant-numeric:tabular-nums}
.qt th{position:sticky;top:0;z-index:2;background:var(--th-bg,var(--card));color:var(--th-ink);padding:6px 8px;border-bottom:1px solid var(--line)}
.qt td{padding:4px 8px;height:32px;vertical-align:middle;border-bottom:1px solid var(--line)}
.qt tr:nth-child(even) td{background:var(--card)}
.qt th.n,.qt td.n{text-align:right;width:90px}
.qt tr.qg td{background:rgba(127,140,160,.14);font-weight:600}
.qt tr.qp{cursor:pointer}.qt tr.qp:hover td{background:rgba(127,140,160,.08)}.qt tr.qp.on td{background:var(--sum-bg)}
.qt .lt{white-space:normal;color:var(--mut);font-size:12px;line-height:1.3;padding:2px 0 4px}
.qt .qnr{color:var(--mut)}
.lvgrid td>.ro,.lvgrid td>a.ro{display:block;padding:0 8px;line-height:33px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lvgrid tr.lgk td.ro.mut{font-weight:400;font-size:12px}
.lvgrid td.n>a.ro{text-decoration:none}
.lvgrid td input:not([type=checkbox]),.lvgrid td select{border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none;outline:none}
.lvgrid td input:focus,.lvgrid td select:focus{outline:none!important}
.lvgrid td textarea{border:1px solid var(--line)!important}
.lvgrid .dkf select{border:1px solid var(--line)!important;background:var(--card)!important;border-radius:6px!important}
.lvgrid td.act .btn{border-width:1px!important;border-radius:6px;padding:1px 6px;font-size:13px;line-height:22px;background:transparent}
.qflt{border-width:1px!important}

.qtb{display:flex;gap:12px;align-items:end;padding:10px 16px;border-bottom:1px solid var(--line)}
.qdd{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--mut);flex:1 1 0;min-width:0;margin:0}.qdd.qw{flex:1.3 1 0}
.qdd select,.qsr input{width:100%;height:36px}.qsr{flex:1.4 1 0;margin-left:auto;min-width:0}
.qhint{display:none;padding:7px 16px;font-size:12.5px;color:var(--mut);background:var(--sum-bg);border-bottom:1px solid var(--line)}
.qt .c-ck{width:34px}.qt .c-nr{width:100px}.qt .c-q{width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qt .c-ein{width:60px}
.qt td{color:var(--txt)}.qt td.qnr{color:var(--mut)}

/* LV prüfen: Popup und Zeilenmarkierung */
.prdlg{position:fixed;right:16px;bottom:16px;left:auto;top:auto;margin:0;width:min(470px,94vw);height:min(62vh,560px);padding:0;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--card);color:var(--txt);box-shadow:0 10px 34px rgba(10,20,40,.32);z-index:40;flex-direction:column}
.prdlg[open]{display:flex}
.prh{display:flex;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line)}
.prk{display:flex;gap:6px;flex-wrap:wrap;padding:8px 12px;border-bottom:1px solid var(--line)}
.prc{border:1px solid var(--line);background:transparent;color:var(--txt);border-radius:99px;padding:3px 11px;font:inherit;font-size:12.5px;cursor:pointer}.prc.on{outline:2px solid var(--acc)}
.prc.prs-Fehler{border-color:#8c2a1f;color:#8c2a1f}.prc.prs-Warnung{border-color:#b36b00;color:#b36b00}.prc.prs-Hinweis{border-color:#4a5d7a;color:#4a5d7a}
.prl{flex:1;overflow:auto;padding:4px 0}
.prz{display:flex;gap:9px;align-items:flex-start;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;color:inherit;font:inherit;font-size:13px;padding:8px 12px;cursor:pointer}
.prz:hover{background:rgba(127,140,160,.12)}.prz.allg{cursor:default}
.prz .pb{flex:none;color:#fff;font-size:11px}.pill.prs-Fehler{background:#8c2a1f}.pill.prs-Warnung{background:#b36b00}.pill.prs-Hinweis{background:#4a5d7a}
.prt{min-width:0}.prp{display:block;font-size:12px;margin-top:2px}
.prf{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:7px 12px;border-top:1px solid var(--line);font-size:12px}
.lvgrid tr.hit td,.lvgrid tr.hitd td{background:rgba(244,166,42,.28)!important}
.lvgrid tr.hit-Fehler td,.lvgrid tr.hit-Fehler+tr.hitd td{background:rgba(200,60,45,.24)!important}
.lvgrid tr.hit-Hinweis td,.lvgrid tr.hit-Hinweis+tr.hitd td{background:rgba(70,100,150,.20)!important}
.lvgrid tr.hit td:first-child{box-shadow:inset 4px 0 0 var(--acc)}

/* Reiter anpassen */
.modtabs a.gefaerbt{border-color:color-mix(in srgb,var(--rc) 55%,transparent);box-shadow:inset 0 -3px 0 var(--rc)}
.modtabs a.gefaerbt.on{background:var(--rc);color:var(--rt);border-color:var(--rc)}
.rt-edit{background:none;border:1px solid transparent;border-radius:999px;padding:4px 9px;cursor:pointer;color:var(--ink-2,inherit);font-size:15px;line-height:1;opacity:.55}
.rt-edit:hover,.rt-edit:focus-visible{opacity:1;background:var(--hover,rgba(0,0,0,.05))}
.rtdlg{border:1px solid var(--line,#ccc);border-radius:12px;padding:18px;max-width:min(680px,94vw);width:100%;background:var(--card,#fff);color:var(--txt,inherit)}
.rtdlg::backdrop{background:rgba(0,0,0,.4)}
.rtlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.rtlist li{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border:1px solid var(--line,#ccc);border-radius:8px;padding:6px 8px;background:var(--card,#fff)}
.rtlist li.zieh{opacity:.45}
.rt-griff{cursor:grab;color:var(--mut,#777);font-size:18px;user-select:none}
.rt-pf{background:none;border:1px solid var(--line,#ccc);border-radius:6px;cursor:pointer;padding:2px 7px;font-size:11px;color:inherit}
.rtlist input.rt-name{width:150px!important;padding:4px 8px!important}
.rt-farben{display:flex;gap:4px;align-items:center;flex-wrap:wrap}
.rt-sw{width:20px;height:20px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;font-size:11px;line-height:1;color:var(--mut,#777);background:none}
.rt-sw.on{border-color:var(--txt,#000);box-shadow:0 0 0 2px var(--card,#fff) inset}
.rtlist input.rt-col{width:26px!important;height:24px;padding:0!important;border:0!important;background:none}
.rt-zeig{margin-left:auto;font-weight:400;display:flex;gap:6px;align-items:center}
.rt-zeig input{width:auto!important}
.pvz{position:relative;overflow:hidden;max-width:100%;border:1px solid var(--line);border-radius:6px;background:#fff}
.pvz .pv{display:block;border:0;border-radius:0;overflow:visible;max-width:none;width:100%}
.pvz .pin{transform:translate(-50%,-50%) scale(var(--ps,1))}
.pz-bt{position:absolute;right:8px;top:8px;display:flex;gap:4px;z-index:5}
.pz-bt button{min-width:36px;height:36px;border:1px solid #9aa8bf;border-radius:6px;background:#fff;font:600 16px sans-serif;cursor:pointer}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{--c:#6b7a90;display:inline-flex;gap:6px;align-items:center;padding:6px 12px;border:2px solid var(--c);border-radius:18px;font-weight:600;cursor:pointer;background:#fff;color:#1b2433}
.chip input{position:absolute;opacity:0;width:0;height:0}
.chip:has(input:checked){background:var(--c);color:#fff}
.chip:has(input:focus-visible){outline:3px solid #1d3256;outline-offset:2px}
.cs-offen{--c:#c0392b}.cs-arbeit{--c:#b87408}.cs-gemeldet{--c:#3E7CB1}.cs-abgenommen{--c:#1f7f73}
tr.zs-offen td:first-child{box-shadow:inset 5px 0 0 #c0392b}tr.zs-arbeit td:first-child{box-shadow:inset 5px 0 0 #d98a12}
tr.zs-gemeldet td:first-child{box-shadow:inset 5px 0 0 #3E7CB1}tr.zs-abgenommen td:first-child{box-shadow:inset 5px 0 0 #1f7f73}
