[hidden]{display:none!important}
:root{color-scheme:light;--acc:#1d4f86;--acc2:#12304f;--bg:#f6f7f9;--card:#fff;--fg:#1b1f26;--mut:#5f6876;--line:#dde2e8;--line2:#eceff3;--ok:#1d6b3e;--bad:#a8231c;--warn:#8a5a00;--head:#f6f7f9;--red:#c8102e;--r:3px}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--fg);font:14px/1.5 "Segoe UI","Helvetica Neue",Arial,sans-serif}
a{color:var(--acc)}
button{font:inherit;cursor:pointer;border:1px solid var(--acc);border-radius:var(--r);padding:6px 14px;background:var(--acc);color:#fff;font-weight:600;letter-spacing:.01em}
button:hover{filter:brightness(1.08)}
button.s{background:var(--card);color:var(--fg);border-color:var(--line);font-weight:500}
button.d{background:var(--bad);border-color:var(--bad)}button.ok{background:var(--ok);border-color:var(--ok)}
button.sm{padding:3px 10px;font-size:12.5px}
button:disabled{opacity:.45;cursor:default;filter:none}
input,select,textarea{font:inherit;color:var(--fg);background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:6px 8px;width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb,var(--acc) 45%,transparent);outline-offset:0;border-color:var(--acc)}
input:disabled,select:disabled,textarea:disabled{background:var(--head)}
textarea{min-height:100px;resize:vertical}
input[type=checkbox]{width:auto;accent-color:var(--acc)}
label{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--mut);font-weight:600;text-transform:uppercase;letter-spacing:.03em}
label.cb{flex-direction:row;align-items:center;gap:7px;font-weight:500;color:var(--fg);font-size:13px;text-transform:none;letter-spacing:0}
h1{font-size:21px;margin:0;font-weight:700;letter-spacing:-.01em}h2{font-size:14px;margin:0;font-weight:700;text-transform:uppercase;letter-spacing:.04em}h3{font-size:13px;margin:14px 0 6px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--mut)}
hr{border:0;border-top:1px solid var(--line2)}
.hint{color:var(--mut);font-size:12.5px}
.warn{color:var(--bad)}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:10px}
.bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.bar .sp,.sp{flex:1}
.rwr{display:flex;height:5px}.rwr i{flex:1;background:var(--red)}.rwr i:nth-child(2){background:#fff}
/* Seitenkopf */
.phead.bar{justify-content:flex-start;align-items:center}.phead.bar>h1{margin-right:6px}
.phead{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;border-bottom:2px solid var(--fg);padding-bottom:8px;margin-bottom:16px}
.crumb{font-size:11.5px;color:var(--mut);text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}.crumb a{color:var(--mut)}
.card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:0 16px 14px;margin-bottom:14px;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.card>:first-child:not(.ctitle){margin-top:14px}
.ctitle{display:flex;align-items:center;gap:10px;margin:0 -16px 12px;padding:10px 16px;border-bottom:1px solid var(--line2);border-radius:8px 8px 0 0}.ctitle h2{font-size:13.5px;text-transform:none;letter-spacing:0}.ctitle svg{color:var(--acc);flex:none}
.ctitle h2{flex:1}
.notice{background:color-mix(in srgb,var(--warn) 10%,var(--card));border:1px solid color-mix(in srgb,var(--warn) 40%,transparent);border-left:4px solid var(--warn);padding:9px 14px;margin-bottom:14px;font-size:13.5px}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:14px}
.tile{background:var(--card);border:1px solid var(--line);border-top:3px solid var(--acc);border-radius:var(--r);padding:10px 14px}
.tile b{display:block;font-size:22px;font-variant-numeric:tabular-nums}.tile span{color:var(--mut);font-size:12px}
.tile.link{cursor:pointer}.tile.link:hover{border-color:var(--acc)}.tile.attn{border-top-color:var(--bad)}
table{width:100%;border-collapse:collapse;font-size:13.5px}
th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--mut);text-align:left;padding:7px 8px;background:var(--head);border:1px solid var(--line2);border-width:1px 0}
td{padding:7px 8px;border-bottom:1px solid var(--line2);vertical-align:top}
tr.click{cursor:pointer}tr.click:hover td{background:color-mix(in srgb,var(--acc) 6%,transparent)}
.tag{display:inline-block;font-size:11px;font-weight:700;padding:1px 7px;border-radius:2px;border:1px solid var(--line);color:var(--mut);white-space:nowrap;text-transform:uppercase;letter-spacing:.03em;background:var(--card)}
.tag.ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 45%,transparent)}.tag.bad{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 45%,transparent)}.tag.warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 45%,transparent)}.tag.acc{color:var(--acc);border-color:color-mix(in srgb,var(--acc) 45%,transparent)}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#9aa4b4;margin-right:6px}.dot.on{background:#1f9d55}
.pager{display:flex;gap:6px;align-items:center;justify-content:flex-end;margin-top:10px;font-size:12.5px;color:var(--mut);flex-wrap:wrap}
/* ───────── Anmeldung ───────── */
#login{min-height:100vh;background:#fff}
.ltop{display:flex;align-items:center;gap:10px;padding:10px 18px;border-bottom:1px solid var(--line2);background:#fff}
.ltop b{font-size:14px;letter-spacing:.02em}.lorg{font-size:12px;color:var(--mut)}
.logo{width:30px;height:30px;border-radius:7px;background:var(--acc);color:#fff;display:grid;place-items:center;font-weight:800;font-size:11px;flex:none;letter-spacing:.02em}
.lstage{position:relative;max-width:980px;margin:42px auto 0;padding:0 16px;display:grid;grid-template-columns:47% 53%;grid-template-rows:250px auto}
.lpanel{background:var(--acc)}
.lhero{background:linear-gradient(135deg,var(--acc2),color-mix(in srgb,var(--acc) 70%,#000));background-size:cover;background-position:center;position:relative;overflow:hidden;display:grid;place-items:center}
.lhero span{font-size:120px;font-weight:900;color:rgba(255,255,255,.12);letter-spacing:-.03em;user-select:none}
.lhero::after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.05) 0 2px,transparent 2px 18px)}
.lhero.img::after,.lhero.img span{display:none}
#login .box{position:absolute;left:calc(16px + 4%);top:165px;width:calc(42% - 16px);background:#fff;box-shadow:0 14px 40px rgba(16,24,40,.14);z-index:2;border:0;border-radius:2px}
#login .box .rwr{display:none}
.linfo{grid-column:2;padding:22px 0 0 32px;font-size:13.5px;color:var(--mut)}.linfo h3{margin:0 0 8px;color:var(--fg);font-size:15px;text-transform:none;letter-spacing:0}
.linfo ul{margin:6px 0 12px;padding-left:18px}.linfo a{font-weight:600}
.lbackrow{max-width:980px;margin:0 auto;padding:18px 16px 40px;min-height:40px}.lback{font-size:13px;font-weight:600;text-decoration:none}
.lhead{display:flex;gap:12px;align-items:center;padding:18px 22px 0}
.lhead b{display:block;font-size:16px}.parent{font-size:11px;color:var(--mut);text-transform:uppercase;letter-spacing:.05em}.sys{font-size:12px;color:var(--mut)}
.lbody{padding:16px 22px 20px}.lbody h1{font-size:24px;line-height:1.15;margin:4px 0 16px;letter-spacing:-.015em}.lbody h2{margin-bottom:12px}
.lbody label{text-transform:none;letter-spacing:0;font-size:12.5px;color:var(--fg);font-weight:700}
.lbody .req{color:var(--acc)}
.lbody button.go{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.04em;font-size:13px;padding:8px 16px;border-radius:2px;justify-self:start}
.lfoot{border-top:1px solid var(--line2);padding:10px 22px;font-size:11.5px;color:var(--mut)}.lfoot .rp{margin-top:4px;font-size:11px}
.seal{width:44px;height:44px;border:2px solid var(--acc);color:var(--acc);display:grid;place-items:center;font-weight:800;font-size:12px;letter-spacing:.02em;flex:none;background:var(--card);border-radius:8px}
.tabs{display:flex;gap:0;margin:0 0 12px;border:1px solid var(--line);border-radius:6px;overflow:hidden}.tabs button{flex:1;border:0;border-radius:0}.tabs button:not(.on){background:var(--card);color:var(--fg);font-weight:500}
/* ───────── Rahmen ───────── */
#hdr{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;box-shadow:inset 0 -2px 0 var(--acc)}
#hdr .hin{display:flex;align-items:center;gap:10px;padding:7px 16px}
#hdrAuth b{display:block;font-size:13.5px;line-height:1.2;letter-spacing:.02em}#hdrAuth .sys{font-size:11.5px}
.iconbtn{background:transparent;border:1px solid var(--line);color:var(--fg);padding:4px 9px;border-radius:6px}
.who{display:flex;align-items:center;gap:10px;font-size:12.5px}.who .av{width:28px;height:28px;font-size:11px}.who .nm{text-align:right;line-height:1.25}.who .nm span{color:var(--mut);font-size:11.5px}
.av{width:42px;height:42px;border-radius:50%;background:var(--acc);color:#fff;display:grid;place-items:center;font-weight:800;font-size:14px;flex:none;box-shadow:0 0 0 2px #fff,0 0 0 3px color-mix(in srgb,var(--acc) 40%,transparent)}
#body{display:flex;min-height:calc(100vh - 47px - 26px)}
#side{width:240px;flex:none;background:#fff;border-right:1px solid var(--line);padding:0 0 30px;display:flex;flex-direction:column;position:sticky;top:47px;height:calc(100vh - 47px - 26px);overflow:auto}
.ucard{display:flex;gap:10px;align-items:center;padding:12px 12px 10px;border-bottom:1px solid var(--line2);cursor:pointer;text-decoration:none;color:var(--fg);background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 5%,#fff),#fff)}
.ucard:hover{background:color-mix(in srgb,var(--acc) 8%,#fff)}
.ucard .rk{font-size:10px;font-weight:800;color:var(--acc);text-transform:uppercase;letter-spacing:.04em;line-height:1.2;display:flex;align-items:center;gap:5px}
.ucard .rk i{width:8px;height:8px;background:var(--acc);display:inline-block;border-radius:1px;flex:none}
.ucard b{display:block;font-size:13.5px;line-height:1.25}.ucard small{color:var(--mut);font-size:11.5px}.ucard .chev{margin-left:auto;color:var(--mut)}
.dnr{font-size:11px;color:var(--mut);padding:6px 14px;border-bottom:1px solid var(--line2);font-weight:600}
#side .grp{display:flex;align-items:center;gap:6px;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--mut);padding:10px 14px 4px;font-weight:700;cursor:pointer;user-select:none;border-top:1px solid var(--line2);margin-top:4px}
#side .grp.first{border-top:0}
#side .grp .car{transition:transform .15s;font-size:9px}#side .grp.shut .car{transform:rotate(-90deg)}
#side .items.shut{display:none}
#side a.nv{display:flex;align-items:center;gap:9px;color:#2b313b;text-decoration:none;padding:5px 10px;margin:1px 8px;font-size:13.5px;border-radius:6px;border-left:3px solid transparent;line-height:1.3}
#side a.nv svg{flex:none;color:#4a5260}
#side a.nv:hover{background:var(--head)}
#side a.nv.on{background:color-mix(in srgb,var(--acc) 10%,#fff);color:var(--fg);font-weight:600;border-left-color:var(--acc)}#side a.nv.on svg{color:var(--acc)}
#side a.nv .n{margin-left:auto;background:var(--acc);color:#fff;border-radius:9px;font-size:10.5px;font-weight:700;padding:0 6px;line-height:17px}
.sidefoot{font-size:10.5px;color:var(--mut);text-transform:uppercase;letter-spacing:.06em;padding:12px 14px 4px}
#main{flex:1;min-width:0;padding:10px 22px 10px}
#crumbs{font-size:11.5px;color:var(--mut);padding:2px 0 8px 22px;border-bottom:1px solid var(--line2);margin:0 -22px 14px}#crumbs b{color:var(--fg);font-weight:600}
.phead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.phead .crumb{display:none}
.phead h1{display:flex;align-items:center;gap:9px;font-size:19px}.phead h1 svg{color:var(--acc)}
#foot{font-size:11px;color:var(--mut);border-top:1px solid var(--line2);margin-top:14px;padding:8px 0 40px}
.fbrow{text-align:center;margin-top:16px}.fbbtn{border-radius:16px!important;font-weight:600!important;display:inline-flex!important;align-items:center;gap:6px}.fbbtn svg{color:var(--acc)}
#status{position:fixed;left:0;right:0;bottom:0;height:26px;background:#fff;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 12px;font-size:11.5px;color:var(--mut);z-index:35}
#status b{color:var(--fg)}#status #stR{display:flex;gap:10px;align-items:center;font-variant-numeric:tabular-nums}
#menuBtn{display:none}
/* ───────── Übersicht ───────── */
.welcome{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:linear-gradient(100deg,color-mix(in srgb,var(--acc) 12%,#fff),#fff 70%);border:1px solid var(--line);border-left:5px solid var(--acc);border-radius:8px;padding:16px 18px;margin-bottom:14px}
.welcome h2{font-size:19px;text-transform:none;letter-spacing:-.01em;margin:0}.welcome p{margin:2px 0 0;color:var(--mut);font-size:13px}
.welcome .chipx{margin-left:auto;display:flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:16px;padding:4px 12px;font-size:12.5px;font-weight:600}
.todo{list-style:none;margin:0;padding:0}.todo li a{display:flex;gap:10px;align-items:center;padding:7px 2px;border-bottom:1px solid var(--line2);color:var(--fg);text-decoration:none;font-size:13.5px}.todo li:last-child a{border:0}
.todo li a:hover{color:var(--acc)}.todo .n{min-width:24px;text-align:center;background:color-mix(in srgb,var(--acc) 12%,#fff);color:var(--acc);font-weight:800;border-radius:10px;font-size:12px;padding:1px 6px}
.alldone{display:flex;align-items:center;gap:8px;color:var(--ok);font-weight:600;font-size:13.5px;padding:2px 0 4px}
.pill{border-radius:10px;padding:1px 9px;font-size:11px;font-weight:700;background:var(--ok);color:#fff}.pill.w{background:#c25b00}
.abs{display:flex;flex-wrap:wrap;gap:6px}.abs span{border:1px solid var(--line);border-radius:6px;padding:3px 9px;font-size:12px;background:#fff}.abs b{font-weight:700}.abs em{font-style:normal;color:#c25b00;font-weight:700}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.kpi{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px;cursor:pointer;box-shadow:0 1px 2px rgba(16,24,40,.04)}.kpi:hover{border-color:var(--acc)}
.kpi i{width:30px;height:30px;border-radius:7px;display:grid;place-items:center;color:#fff;margin-bottom:8px}
.kpi b{display:block;font-size:24px;line-height:1.1;font-variant-numeric:tabular-nums}.kpi span{font-size:12px;color:var(--mut)}
.c1{background:#1f6fb2}.c2{background:#d2691e}.c3{background:#7b4ddb}.c4{background:#16897a}.c5{background:#c1123a}.c6{background:#4a5568}.c7{background:#b7791f}.c8{background:#2f855a}
.qgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.qa{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--fg);text-decoration:none}.qa:hover{border-color:var(--acc)}
.qa i{width:32px;height:32px;border-radius:7px;background:color-mix(in srgb,var(--acc) 9%,#fff);color:var(--acc);display:grid;place-items:center;flex:none}
.qa b{display:block;font-size:13px}.qa small{color:var(--mut);font-size:11.5px;line-height:1.3;display:block}
.sech{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--mut);font-weight:700;margin:4px 0 8px}
/* ───────── Organigramm, Rangtafel, Ansprechpartner ───────── */
.org{display:flex;flex-direction:column;align-items:center}
.obox{background:#fff;border:1px solid var(--line);border-top:3px solid var(--acc);border-radius:8px;padding:10px 14px;min-width:240px;text-align:center;box-shadow:0 1px 3px rgba(16,24,40,.06)}
.obox b{display:block}.obox small{color:var(--mut)}.obox .ol{display:flex;flex-direction:column;gap:2px;margin-top:6px;font-size:12.5px}
.ovl{width:2px;height:22px;background:var(--line)}
.orow{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;width:100%;border-top:2px solid var(--line);padding-top:16px}
.odept{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.odept h4{margin:0;padding:8px 12px;background:color-mix(in srgb,var(--acc) 7%,#fff);border-bottom:1px solid var(--line2);font-size:13px;display:flex;justify-content:space-between;gap:8px}
.odept ul{list-style:none;margin:0;padding:6px 0}.odept li{padding:3px 12px;font-size:12.5px;display:flex;gap:6px;align-items:center}.odept li a{color:var(--fg);text-decoration:none}.odept li a:hover{color:var(--acc)}.odept li small{color:var(--mut);margin-left:auto;white-space:nowrap}
.odept li.head a{font-weight:700}
.rtafel{display:grid;gap:8px}.rrow{display:grid;grid-template-columns:220px 1fr;gap:12px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px 12px;align-items:start}
.rrow .rn{display:flex;gap:10px;align-items:center}.rrow .rn b{display:block}.rrow .rn small{color:var(--mut)}
.rrow .rm{display:flex;flex-wrap:wrap;gap:6px}.rrow .rm a{border:1px solid var(--line);border-radius:14px;padding:2px 10px;font-size:12.5px;text-decoration:none;color:var(--fg)}.rrow .rm a:hover{border-color:var(--acc)}
.rbadge{min-width:34px;height:34px;border-radius:7px;background:color-mix(in srgb,var(--acc) 10%,#fff);color:var(--acc);display:grid;place-items:center;font-weight:800;font-size:11px;padding:0 4px}
.cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:10px}
.ccard{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px;display:flex;gap:10px;align-items:flex-start}.ccard b{display:block}.ccard small{display:block;color:var(--mut);font-size:12px}.ccard a{font-size:12.5px;word-break:break-all}
.ccard .av{width:36px;height:36px;font-size:12px}
.ccard i.ic{width:36px;height:36px;border-radius:50%;background:color-mix(in srgb,var(--acc) 10%,#fff);color:var(--acc);display:grid;place-items:center;flex:none}
.news{border-bottom:1px solid var(--line2);padding:10px 0}.news:last-child{border:0}.news h3{margin:0 0 3px;font-size:14px;text-transform:none;letter-spacing:0;color:var(--fg)}
.news.unacked{border-left:3px solid var(--warn);padding-left:10px}
.pre{white-space:pre-wrap}
.doc h1,.doc h2,.doc h3{margin:12px 0 6px;text-transform:none;letter-spacing:0;color:var(--fg)}.doc ul{margin:6px 0;padding-left:20px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid2>.card{margin-bottom:0}.grid2{margin-bottom:14px}
.kv{display:grid;grid-template-columns:170px 1fr;gap:3px 10px;font-size:13.5px}.kv>span:nth-child(odd){color:var(--mut)}
#dlg{position:fixed;inset:0;background:rgba(15,20,28,.55);display:flex;align-items:flex-start;justify-content:center;padding:40px 14px;z-index:50;overflow:auto}
#dlg .win{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--acc);width:100%;max-width:840px;padding:18px 20px;box-shadow:0 20px 60px rgba(0,0,0,.35)}
#dlg .win.sm{max-width:460px}
#dlg header{display:flex;align-items:center;gap:10px;margin-bottom:12px;border-bottom:1px solid var(--line2);padding-bottom:8px}#dlg header h2{margin:0;flex:1}
#toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:#1b1f26;color:#fff;padding:9px 16px;border-radius:var(--r);z-index:60;font-size:13px;box-shadow:0 8px 30px rgba(0,0,0,.3);border-left:4px solid var(--ok)}
#toast.bad{border-left-color:#ff6b5e}
.pick{position:relative}.pick .opts{position:absolute;left:0;right:0;top:100%;background:var(--card);border:1px solid var(--line);z-index:5;max-height:220px;overflow:auto;box-shadow:0 8px 24px rgba(0,0,0,.15)}
.pick .opts div{padding:7px 10px;cursor:pointer;font-size:13px}.pick .opts div:hover{background:var(--head)}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;align-items:center}.chip{background:var(--head);border:1px solid var(--line);border-radius:2px;padding:2px 4px 2px 8px;font-size:12.5px;display:flex;align-items:center;gap:6px}
.chip button{padding:0 6px;background:transparent;color:var(--mut);border:0}
.roster-day{border-top:1px solid var(--line2);padding:8px 0}.roster-day b{display:block;margin-bottom:4px}
.perms{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:4px 14px}
/* Lagezentrum */
.inc{border:1px solid var(--line);border-left:5px solid var(--acc);padding:10px 12px;margin-bottom:10px;background:var(--card)}.inc.p2{border-left-color:#d08b00}.inc.p3{border-left-color:var(--bad);background:color-mix(in srgb,var(--bad) 4%,var(--card))}
.fms{display:inline-grid;place-items:center;width:22px;height:22px;font-weight:800;font-size:12px;color:#fff;background:#6b7380;border-radius:2px}
.fms.s1,.fms.s2{background:#1d6b3e}.fms.s3,.fms.s4{background:#b26a00}.fms.s7,.fms.s8{background:#1d4f86}.fms.s5{background:#7a3db8}.fms.s6{background:#555}.fms.s0{background:var(--bad)}
.fmsbar{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}.fmsbtn{display:flex;gap:8px;align-items:center;text-align:left;padding:6px 8px}.fmsbtn b{font-size:16px;min-width:16px}.fmsbtn span{font-size:12px}
.fmsbtn.on{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 12%,var(--card))}
.log{max-height:220px;overflow:auto;font-size:12.5px;border-left:2px solid var(--line);padding-left:10px;margin-top:6px}
/* Statistik */
.bars{display:grid;gap:6px}.brow{display:grid;grid-template-columns:minmax(120px,38%) 1fr 70px;gap:8px;align-items:center;font-size:12.5px}.brow b{text-align:right;font-variant-numeric:tabular-nums}
.btrack{height:12px;background:var(--head);border:1px solid var(--line2)}.bfill{height:100%;background:var(--acc)}
.danger1{border-left:4px solid var(--warn)}.danger2{border-left:4px solid #e67e22}.danger3{border-left:4px solid var(--bad)}
.mxwrap{overflow:auto;max-height:70vh;border:1px solid var(--line)}
table.matrix{border-collapse:separate;border-spacing:0;font-size:12.5px;width:max-content;min-width:100%}
table.matrix th,table.matrix td{border-bottom:1px solid var(--line2);border-right:1px solid var(--line2);padding:5px 8px;background:var(--card)}
table.matrix thead th{position:sticky;top:0;z-index:2;background:var(--head);vertical-align:bottom;height:110px}
table.matrix thead th span{writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap;font-size:11.5px}
table.matrix tbody th{position:sticky;left:0;z-index:1;text-align:left;min-width:170px;font-weight:600}
table.matrix thead th:first-child{left:0;z-index:3;text-align:left}
table.matrix td{text-align:center;font-size:15px;color:var(--line);cursor:default}table.matrix td[title]{cursor:pointer}
td.q-ok{color:var(--ok)!important}td.q-soon{color:var(--warn)!important;background:color-mix(in srgb,var(--warn) 8%,var(--card))!important}td.q-exp{color:var(--bad)!important;background:color-mix(in srgb,var(--bad) 7%,var(--card))!important}
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.cwd{background:var(--head);font-size:11px;font-weight:700;text-transform:uppercase;padding:4px 6px;color:var(--mut)}
.cday{background:var(--card);min-height:78px;padding:4px 5px;display:flex;flex-direction:column;gap:2px;overflow:hidden}.cday.off{background:var(--head)}
.cday b{font-size:12px}.cday.today b{background:var(--acc);color:#fff;border-radius:2px;padding:0 5px;align-self:flex-start}.cday.has{cursor:pointer}.cday.has:hover{background:color-mix(in srgb,var(--acc) 6%,var(--card))}
.cev{font-size:11px;line-height:1.3;padding:1px 4px;border-left:3px solid var(--acc);background:var(--head);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cev.k-lehrgang{border-color:var(--ok)}.cev.k-dienst{border-color:var(--mut)}.cev.k-besprechung,.cev.k-einsatz{border-color:var(--bad)}.cev.k-uebung{border-color:var(--warn)}
.calrow .bar{gap:6px}
.qbox{border:1px solid var(--line);border-radius:var(--r);padding:8px 12px 10px;margin:0 0 12px}.qbox legend{font-size:11.5px;font-weight:700;color:var(--mut);text-transform:uppercase;padding:0 4px}
label.opt{flex-direction:row;align-items:flex-start;gap:8px;text-transform:none;letter-spacing:0;font-size:14px;font-weight:400;color:var(--fg);padding:6px 8px;border:1px solid var(--line2);border-radius:var(--r);margin:4px 0;cursor:pointer}
label.opt:hover{border-color:var(--acc)}label.opt input{margin-top:3px;width:auto;flex:none}.opts2{margin:6px 0 10px}
.timer{position:fixed;right:18px;bottom:18px;z-index:50;background:var(--acc);color:#fff;font-weight:700;padding:9px 14px;border-radius:var(--r);font-variant-numeric:tabular-nums;box-shadow:0 4px 14px rgba(0,0,0,.25)}.timer.low{background:var(--bad)}
.result{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-left:5px solid;margin-bottom:12px;background:var(--head)}.result b{font-size:20px}.result.ok{border-color:var(--ok)}.result.ok b{color:var(--ok)}.result.bad{border-color:var(--bad)}.result.bad b{color:var(--bad)}
.news.good{border-left:3px solid var(--ok);padding-left:10px}.news.badl{border-left:3px solid var(--bad);padding-left:10px}
.strike{text-decoration:line-through;color:var(--mut)}
.applylink{margin-top:14px;padding-top:12px;border-top:1px solid var(--line2);font-size:13.5px}
h2.sub{margin:20px 0 10px;color:var(--mut)}.brow.mine span:first-child{font-weight:700}
details.card>summary{cursor:pointer;list-style:none}details.card>summary::before{content:'▸ ';color:var(--mut)}details.card[open]>summary::before{content:'▾ '}
label.cb.chip{padding:3px 8px;text-transform:none;letter-spacing:0;font-weight:500;color:var(--fg);font-size:12.5px}
#dlg2{position:fixed;inset:0;background:rgba(15,20,28,.45);display:flex;align-items:flex-start;justify-content:center;padding:60px 14px;z-index:60;overflow:auto}
#dlg2 .win{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--acc);width:100%;max-width:840px;padding:18px 20px;box-shadow:0 20px 60px rgba(0,0,0,.4)}
#dlg2 .win.sm{max-width:480px}#dlg2 header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:10px}
#dlg .win.xl,#dlg2 .win.xl{max-width:1000px}
.pdfview{width:100%;height:70vh;border:1px solid var(--line);background:#525659;display:block}
.mbh{padding:9px 12px}.mbh b{font-size:13px}.mbh .hint{font-size:11px;word-break:break-all}
.cnt{position:absolute;right:10px;top:8px;background:var(--acc);color:#fff;font-size:11px;font-weight:700;border-radius:9px;padding:0 7px;line-height:18px}.mfold .cnt{top:5px}
.applylink a{white-space:nowrap}
.sitebar{background:color-mix(in srgb,var(--warn) 14%,var(--card));border-bottom:1px solid color-mix(in srgb,var(--warn) 40%,transparent);color:var(--fg);padding:7px 20px;font-size:13px}
.sitebar.bad{background:color-mix(in srgb,var(--bad) 14%,var(--card));border-color:color-mix(in srgb,var(--bad) 40%,transparent)}
.lbody .sitebar{margin:0 0 12px;border:1px solid color-mix(in srgb,var(--warn) 40%,transparent);border-radius:var(--r);padding:8px 12px}
.result.warn{border-color:var(--warn)}.result.warn b{color:var(--warn)}.result span{color:var(--fg)}
.fld{display:flex;flex-direction:column;gap:3px}.flab{font-size:11.5px;color:var(--mut);font-weight:600;text-transform:uppercase;letter-spacing:.03em}
@media print{#hdr,#side,#foot,#status,#crumbs,.fbrow,.bar button,.pager{display:none!important}.mxwrap{max-height:none;overflow:visible}#main{padding:0}.card{border:0}}
@media (max-width:860px){
  .mail{grid-template-columns:1fr}.prev{max-width:220px}.pdfview{height:60vh}
  .cday{min-height:46px}.cev{display:none}.cday.has b::after{content:' •';color:var(--acc)}
  #side{position:fixed;left:-260px;top:0;z-index:40;transition:left .2s;width:250px;height:100vh}
  #app.menu #side{left:0;box-shadow:0 0 40px rgba(0,0,0,.4)}
  #menuBtn{display:inline-block}
  #hdr .hin{padding:7px 12px}.who .nm{display:none}#hdrAuth .sys{display:none}
  #main{padding:10px 12px}#crumbs{margin:0 -12px 12px;padding-left:12px}
  #status #stM{display:none}
  .lstage{grid-template-columns:1fr;grid-template-rows:120px auto auto;margin-top:0;padding:0}
  .lhero{display:none}.lpanel{grid-row:1;grid-column:1}
  #login .box{position:relative;left:auto;top:auto;width:auto;margin:-70px 14px 0;grid-row:2;grid-column:1}
  .linfo{grid-column:1;grid-row:3;padding:18px 16px 0}
  .rrow{grid-template-columns:1fr}
  .grid2{grid-template-columns:1fr}
  .kv{grid-template-columns:120px 1fr}
  table.cards thead{display:none}
  table.cards tr{display:block;border:1px solid var(--line);margin-bottom:8px;background:var(--card)}
  table.cards td{display:flex;gap:10px;border:0;padding:4px 10px}
  table.cards td::before{content:attr(data-l);color:var(--mut);font-size:11px;min-width:96px;flex:none;text-transform:uppercase}
}

@media (max-width:900px){.qgrid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){.kpis{grid-template-columns:repeat(2,1fr)}.qgrid{grid-template-columns:1fr}#status #stL,#status #stM{display:none}#status{justify-content:flex-end}}

/* ───────── E-Mail im Outlook-Stil ───────── */
.ol{--ob:#f3f5f8;--osel:color-mix(in srgb,var(--acc) 12%,#fff);--ohov:#f2f4f7;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;height:calc(100vh - 150px);min-height:540px;box-shadow:0 1px 2px rgba(16,24,40,.05)}
.orib{display:flex;align-items:center;gap:2px;padding:6px 8px;border-bottom:1px solid var(--line);background:var(--ob);flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}
.orib .rb{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid transparent;color:var(--fg);font-weight:500;padding:5px 9px;border-radius:5px;white-space:nowrap;font-size:13px}
.orib .rb:hover{background:#fff;border-color:var(--line);filter:none}.orib .rb svg{color:var(--acc)}
.orib .rb.pri{background:var(--acc);color:#fff;font-weight:600;padding:6px 14px}.orib .rb.pri svg{color:#fff}.orib .rb.pri:hover{filter:brightness(1.08);background:var(--acc)}
.orib .rb.act{background:#fde7e9;border-color:#f1b0b7}.orib .car{font-style:normal;font-size:10px;color:var(--mut);margin-left:-2px}
.orib .rsep{width:1px;align-self:stretch;background:var(--line);margin:2px 6px}.orib .sp{flex:1;min-width:8px}
.osearch{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:6px;padding:0 6px 0 9px;min-width:230px;color:var(--mut)}
.osearch input{border:0;padding:6px 2px;outline:0;min-width:120px;flex:1}.osearch input:focus{outline:0}.osearch select{border:0;border-left:1px solid var(--line);border-radius:0;width:auto;padding:4px 6px;font-size:12px;color:var(--mut);background:transparent}
.osearch .iconbtn{border:0;padding:2px 6px}
.rbi span{display:none}
.ogrid{flex:1;display:grid;grid-template-columns:236px minmax(300px,380px) 1fr;min-height:0}
.otree{border-right:1px solid var(--line);overflow:auto;background:#fafbfc;padding:6px 0 10px;font-size:13.5px}
.otm{display:none}
.oorg{padding:10px 14px 4px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--mut);font-weight:700;display:flex;gap:6px;align-items:center}
.ombox{display:flex;align-items:center;gap:6px;padding:7px 10px 7px 8px;color:var(--fg);text-decoration:none;font-weight:600}
.ombox:hover{background:var(--ohov)}.ombox .tw{font-style:normal;width:12px;color:var(--mut);font-size:11px}.ombox .bn{flex:1;min-width:0;line-height:1.25}
.ombox small{display:block;font-weight:400;color:var(--mut);font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ombox .ooo{font-size:10.5px;background:#fff4ce;color:#7a5b00;border:1px solid #f1dc8a;border-radius:9px;padding:0 6px;font-weight:600}
.ofolders{padding:0 0 6px}
.of{display:flex;align-items:center;gap:9px;padding:5px 10px 5px 28px;color:var(--fg);text-decoration:none;position:relative;border-left:3px solid transparent}
.of svg{color:var(--mut);flex:none}.of .fn{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.of:hover{background:var(--ohov)}.of.on{background:var(--osel);border-left-color:var(--acc);font-weight:600}.of.on svg{color:var(--acc)}
.of.drop{background:color-mix(in srgb,var(--acc) 22%,#fff);outline:2px dashed var(--acc);outline-offset:-2px}
.of.add{color:var(--mut);font-size:12.5px}.of.add:hover{color:var(--acc)}
.of .ofx{display:none;gap:2px}.of.cust:hover .ofx{display:flex}.of.cust:hover .ocnt{display:none}
.of .ofx button{background:transparent;border:0;color:var(--mut);padding:0 4px;font-size:12px}.of .ofx button:hover{color:var(--acc)}
.ocnt{font-size:12px;font-weight:700;color:var(--acc);min-width:18px;text-align:right}.ocnt.d{color:var(--mut);font-weight:500}
.otfoot{margin:14px 12px 0;padding:10px;border:1px dashed var(--line);border-radius:6px;font-size:12px;color:var(--mut);display:grid;gap:2px}.otfoot b{color:var(--fg);font-size:12px}
.orgb{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.03em;padding:0 6px;border-radius:9px;background:#eef1f5;color:#4a5568;border:1px solid #dfe4ea;vertical-align:1px;margin-left:5px;line-height:17px}
.orgb.o-lpd{background:#e6eef8;color:#1d4f86;border-color:#c7d7ec}.orgb.o-r1{background:#fbe8ec;color:#a50f31;border-color:#f2c3cd}.orgb.o-fdisk{background:#fdeee3;color:#a4410e;border-color:#f6d2bb}
.oorg .orgb{margin-left:0}
.olist{border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0;min-width:0}
.olh{border-bottom:1px solid var(--line);padding:8px 10px 0}
.olt{display:flex;align-items:center;gap:8px}.olt input[type=checkbox]{width:auto;margin:0 2px}
.oltt{min-width:0}.oltt b{display:block;font-size:15px}.oltt small{display:block;color:var(--mut);font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}
.olt .iconbtn{border:0;padding:4px 6px;color:var(--mut)}.olt .iconbtn:hover{background:var(--ohov);color:var(--acc)}
.oflt{display:flex;gap:2px;margin-top:6px}.oflt button{background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;color:var(--mut);font-weight:500;padding:5px 8px;font-size:12.5px}
.oflt button.on{color:var(--acc);border-bottom-color:var(--acc);font-weight:600}.oflt button:hover{color:var(--fg);filter:none}
.oitems{overflow:auto;flex:1}
.ogrp{position:sticky;top:0;background:#fff;z-index:1;padding:8px 12px 4px;font-size:12px;font-weight:700;color:var(--fg);border-bottom:1px solid var(--line2)}
.oi{display:flex;gap:10px;padding:9px 28px 9px 9px;border-bottom:1px solid var(--line2);border-left:3px solid transparent;cursor:pointer;position:relative;outline:0}
.oi:hover{background:var(--ohov)}.oi:focus-visible{box-shadow:inset 0 0 0 2px var(--acc)}
.oi.unr{border-left-color:var(--acc)}.oi.unr .oifrom,.oi.unr .oisub{font-weight:700}.oi.unr .oisub{color:var(--acc)}
.oi.cur,.oi.sel{background:var(--osel)}
.oisel{position:relative;flex:none;width:34px;height:34px}.oisel input{position:absolute;inset:0;width:34px;height:34px;margin:0;opacity:0;cursor:pointer}
.oi.sel .oisel .oav{opacity:0}.oi.sel .oisel input{opacity:1;width:18px;height:18px;inset:8px}
@media (hover:hover){.oi:hover .oisel .oav{opacity:0}.oi:hover .oisel input{opacity:1;width:18px;height:18px;inset:8px}}
.oav{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#fff;font-weight:700;font-size:13px;flex:none;letter-spacing:.02em}
.oim{flex:1;min-width:0}
.oi1{display:flex;align-items:center;gap:5px}.oifrom{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.oic{color:var(--mut);display:inline-flex}
.oit{font-size:12px;color:var(--mut);white-space:nowrap;margin-left:4px}.oi.unr .oit{color:var(--acc);font-weight:600}
.oi2{display:flex;align-items:center;gap:6px;font-size:13px}.oisub{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.oi3{font-size:12.5px;color:var(--mut);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:6px}
.drf{color:#c42b1c;font-style:normal;font-weight:600}
.oprio{color:#c42b1c;font-weight:800;font-size:14px;padding:0 4px 0 2px}
.osys{font-size:10.5px;background:#eef1f5;border-radius:3px;padding:0 5px;color:var(--mut);font-weight:600;white-space:nowrap}
.cdot{display:inline-block;width:10px;height:10px;border-radius:2px;flex:none}
.oiact{position:absolute;right:6px;top:30px;display:none;gap:2px;background:inherit}.oi:hover .oiact{display:flex}
.oiact button{background:#fff;border:1px solid var(--line);color:var(--mut);padding:3px 5px;border-radius:4px;display:inline-flex}.oiact button:hover{color:var(--acc);filter:none}.oiact button.fl.on{color:#c42b1c}
.oflag{position:absolute;right:10px;bottom:9px;color:#c42b1c}.oi:hover .oflag{display:none}
.oempty{display:grid;justify-items:center;gap:6px;padding:40px 20px;color:var(--mut);text-align:center}.oempty svg{color:#b8c0cc}.oempty b{color:var(--fg);font-size:15px}
.oempty.big{padding-top:18vh}.oempty .oaddr{font-size:12.5px;margin:6px 0}
.oread{overflow:auto;min-width:0;background:#fff}
.orh{display:flex;align-items:center;gap:10px;padding:14px 22px 6px}.orh h2{margin:0;font-size:19px;font-weight:600;text-transform:none;letter-spacing:0;flex:1;min-width:0;line-height:1.3}
.ocat{font-size:11.5px;border-radius:3px;padding:1px 7px;color:#fff;background:var(--c);font-weight:600}.oflag2{color:#c42b1c;display:inline-flex}
.omsg{margin:6px 16px 12px;border:1px solid var(--line);border-radius:8px;padding:14px 16px;box-shadow:0 1px 3px rgba(16,24,40,.06)}
.ofrom{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}.ofm{flex:1;min-width:220px;display:grid;gap:2px;font-size:13px}
.orcp{display:flex;flex-wrap:wrap;gap:2px 8px;align-items:center}.orcp .l{color:var(--mut);min-width:28px}.orcp .rc{white-space:nowrap}.orcp .rc .orgb{margin-left:3px}
.oacts{display:flex;gap:2px;align-items:center}.oacts .rb{display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid transparent;color:var(--fg);font-weight:500;padding:4px 8px;border-radius:5px;font-size:12.5px}
.oacts .rb svg{color:var(--acc)}.oacts .rb:hover{background:var(--ohov);border-color:var(--line);filter:none}.oacts .iconbtn{border:0;font-size:16px;padding:2px 8px}
.oinfo{margin:10px 0 0;font-size:12.5px;color:var(--mut);display:flex;gap:6px;align-items:center;background:#f6f8fa;padding:5px 9px;border-radius:5px}
.oatts{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.oatt{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);color:var(--fg);padding:6px 10px 6px 6px;border-radius:6px;font-weight:500;max-width:280px;text-align:left}
.oatt:hover{border-color:var(--acc);filter:none}.oatt i{font-style:normal;background:#c42b1c;color:#fff;font-size:10px;font-weight:800;padding:6px 5px;border-radius:3px}
.oatt b{display:block;font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.oatt small{display:block;color:var(--mut);font-size:11px}
.oatt button{background:transparent;border:0;color:var(--mut);padding:0 2px}
.obody{margin-top:14px;font-size:14px;line-height:1.6;word-break:break-word}.obody .pre{white-space:pre-wrap}
.oqbtn{background:#eef1f5;border:0;color:var(--mut);padding:0 8px;line-height:14px;border-radius:3px;margin-top:8px;font-weight:800}
.oquote{color:#4d5562;border-left:3px solid var(--line);padding-left:12px;margin-top:8px;font-size:13px}
.orec{margin-top:16px;padding-top:10px;border-top:1px solid var(--line2);display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12.5px}.orec>b{width:100%;font-size:12px;color:var(--mut)}
.orec .rr{border:1px solid var(--line);border-radius:14px;padding:2px 10px;background:#fafbfc}.orec .rr.ok{border-color:#b7dfc5;background:#effaf3}.orec .rr small{color:var(--mut);margin-left:4px}
.othread{margin:0 16px 20px}.oth{font-size:12px;font-weight:700;color:var(--mut);margin:4px 2px 6px;text-transform:uppercase;letter-spacing:.05em}
.otm2{border:1px solid var(--line);border-radius:8px;margin-bottom:6px;padding:8px 12px}.otm2 .obody{margin-top:8px}
.otmh{display:flex;align-items:center;gap:10px;color:var(--fg);text-decoration:none}.otmh small{display:block;color:var(--mut);font-size:11.5px}.otmh .prev{flex:1;min-width:0;color:var(--mut);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.omenu{position:fixed;z-index:70;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 10px 30px rgba(16,24,40,.18);padding:4px;min-width:230px;display:grid}
.omenu button{display:flex;align-items:center;gap:9px;background:transparent;border:0;color:var(--fg);font-weight:500;text-align:left;padding:7px 10px;border-radius:4px}.omenu button:hover{background:var(--ohov);filter:none}.omenu button svg{color:var(--acc)}
.omenu hr{border:0;border-top:1px solid var(--line2);margin:4px 0}
/* Verfassen */
.ocomp{display:flex;flex-direction:column;height:100%}
.orib.csm{background:#fff}
.cstat{font-size:12px;color:var(--mut);white-space:nowrap}
.cform{padding:4px 18px 0}
.crow{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line2);min-height:42px;padding:4px 0}
.crow .clab{flex:none;min-width:52px;text-align:left;color:var(--fg);font-weight:500;background:transparent;border:1px solid transparent;padding:4px 8px;border-radius:4px}
button.clab{border-color:var(--line)}button.clab:hover{border-color:var(--acc);color:var(--acc);filter:none}
.cfrom{border:0;padding:4px 0;font-weight:500;width:auto;max-width:100%;background:transparent}
.csub{border:0;padding:6px 0;font-size:15px}.csub:focus{outline:0}
.afield{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-width:0;cursor:text}
.achips{display:contents}.afield .chip{display:inline-flex;align-items:center;gap:5px;background:#eef3fa;border:1px solid #d3e0f0;border-radius:14px;padding:1px 3px 1px 2px;font-size:12.5px}
.afield .chip.ext{background:#fff7e6;border-color:#f0d9a8;padding-left:9px}.afield .chip small{color:var(--mut);font-size:10.5px;font-weight:700}
.afield .chip .oav{width:18px;height:18px;font-size:8px}.afield .chip button{background:transparent;border:0;color:var(--mut);padding:0 5px;font-size:11px}
.afield .pick{flex:1;min-width:140px}.ainp{border:0;padding:5px 2px}.ainp:focus{outline:0}
.afield .opts{min-width:320px}.afield .opts div{display:flex;align-items:center;gap:9px;padding:6px 10px}.afield .opts div.on{background:var(--osel)}
.afield .opts span b{display:block;font-size:13px}.afield .opts span small{display:block;color:var(--mut);font-size:11.5px}.afield .opts span:nth-child(2){flex:1;min-width:0}
.cct{display:flex;gap:8px;font-size:12.5px}.cct a{color:var(--mut)}
.cbody{flex:1;border:0;padding:14px 18px;resize:none;font-size:14px;line-height:1.6;min-height:240px}.cbody:focus{outline:0}
.chint{font-size:11.5px;color:var(--mut);padding:6px 18px 10px;border-top:1px solid var(--line2)}
.abn{display:flex;align-items:center;gap:9px}.abn small{display:block;color:var(--mut);font-size:11.5px}.abbtn{display:flex;gap:4px;justify-content:flex-end;flex-wrap:wrap}
.abtabs{flex-wrap:wrap}.abtabs button{flex:none;padding:6px 14px}
.m-only{display:none!important}
@media (max-width:1720px){.orib .rb.l2 span{display:none}.orib .rb.l2{padding:5px 7px}}
@media (max-width:1280px){.ogrid{grid-template-columns:210px minmax(280px,330px) 1fr}.orib .rb span{display:none}.orib .rb.pri span{display:inline}.osearch{min-width:220px}}
@media (max-width:900px){
  .ol{height:calc(100vh - 120px);border-radius:6px}
  .ogrid{grid-template-columns:1fr;position:relative}
  .otree,.olist,.oread{display:none;border:0}
  .ol[data-pane=tree] .otree,.ol[data-pane=list] .olist,.ol[data-pane=read] .oread{display:flex;flex-direction:column}
  .ol[data-pane=read] .oread{display:block}
  .m-only{display:inline-flex!important}.otm{display:flex;align-items:center;gap:8px;padding:4px 10px 8px}
  .osearch{min-width:0;flex:1}.osearch select{display:none}.orib .rsep{display:none}.rbi{display:none!important}
  .oiact{display:none!important}.omsg{margin:6px 8px}.orh{padding:10px 12px 4px}.oacts .rb span{display:none}
  .cform{padding:4px 10px 0}.cbody{padding:12px 10px}
}

/* ───────── Personal: Dienstgrade, Funktionen, Personalliste ───────── */
.rimg{object-fit:contain;flex:none;vertical-align:middle}
.rbadge.sm{border-radius:4px;display:inline-grid;flex:none;font-weight:800;vertical-align:middle}
.pphoto{border-radius:50%;object-fit:cover;flex:none;border:1px solid var(--line);vertical-align:middle;background:#fff}
.pav{display:inline-grid;place-items:center;border-radius:50%;background:#e6e9ee;color:#5b6472;font-weight:700;flex:none;vertical-align:middle}
.rkc{display:inline-flex;align-items:center;gap:8px}.nmc{white-space:nowrap}
.dnrc{font:600 12px ui-monospace,SFMono-Regular,Consolas,monospace;background:#f2f4f7;border:1px solid var(--line2);border-radius:3px;padding:1px 6px;color:#2d3440}
.fnl{font-size:12.5px;color:var(--mut)}
.plist table.cards td{vertical-align:middle}
.stc{white-space:nowrap}.st{white-space:nowrap;display:inline-flex;align-items:center;gap:4px;font-weight:600;font-size:13px}.st.ok{color:#1d7a3e}.st.abs{color:#c25b00}.stn{color:var(--mut);font-size:11.5px}
.fchip{display:inline-flex;align-items:center;gap:5px;border:1px solid color-mix(in srgb,var(--c,#5f6876) 35%,#fff);background:color-mix(in srgb,var(--c,#5f6876) 9%,#fff);color:color-mix(in srgb,var(--c,#5f6876) 75%,#000);border-radius:12px;padding:1px 9px;font-size:12px;font-weight:600}
.cgroup{display:flex;flex-wrap:wrap;gap:6px}.cgroup .cg{display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--fg);border:1px solid var(--line);font-weight:500;padding:4px 10px;border-radius:14px;font-size:12.5px}
.cgroup .cg.on{background:color-mix(in srgb,var(--acc) 10%,#fff);border-color:var(--acc);color:var(--acc);font-weight:600}.cgroup .cg:hover{filter:none;border-color:var(--acc)}
.cgroup.compact .cg{padding:2px 8px;font-size:12px}.cgroup .cg:disabled{opacity:.35}
.flab2{display:block;font-size:12px;color:var(--mut);margin:8px 0 4px;font-weight:600}
.sub{border-top:1px solid var(--line2);padding-top:10px;margin-top:10px}.sub:first-of-type{border-top:0;margin-top:0;padding-top:0}.sub h3{margin:0 0 8px;font-size:14px}
.mhead2 .mh{display:flex;gap:14px;align-items:center}.mhead2 h1{margin:2px 0}.mranks{display:flex;align-items:center;gap:8px;font-size:13px;flex-wrap:wrap}
.rolegrid{display:grid;gap:8px}.rcard{padding:0!important;overflow:hidden}.rcard summary{list-style:none;cursor:pointer;padding:12px 14px;display:block}.rcard summary::marker{content:''}.rcard[open] .rhd b::after{content:' ▾';color:var(--mut)}.rcard:not([open]) .rhd b::after{content:' ▸';color:var(--mut)}.rcard summary::-webkit-details-marker{display:none}
.rhd{display:flex;align-items:center;gap:10px}.rhd i{width:12px;height:12px;border-radius:3px;background:var(--c)}.rhd .hint{margin-left:auto}
.rbd{padding:0 14px 14px;display:grid;gap:10px}.rbd input[type=color]{width:60px;height:34px;padding:2px}
.pgroups{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.pg{display:grid;gap:4px;align-content:start}.pg>b{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--mut)}
.pg label.cb{font-size:13px}
.rtab{width:100%;border-collapse:collapse}.rtab th{text-align:left;font-size:11.5px;color:var(--mut);text-transform:uppercase;letter-spacing:.04em;padding:6px;border-bottom:1px solid var(--line)}
.rtab td{padding:6px;border-bottom:1px solid var(--line2);vertical-align:middle}.rtab .fcol{min-width:260px}
.rbadgeedit{display:flex;align-items:center;gap:6px}
.rrow .rm a.x2{border-style:dashed;color:var(--mut)}
.lsec{border:1px solid var(--line);border-radius:8px;padding:10px 12px}.lsec h3{margin:0 0 6px;font-size:14px}
.ucard img.avimg{object-fit:cover;padding:0}

.mpick{max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}
.mpop{position:fixed;z-index:70;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 10px 30px rgba(16,24,40,.18);padding:6px 10px;display:grid;gap:2px;min-width:240px;max-height:60vh;overflow:auto}
.mpop label.cb{font-size:13px;padding:3px 0}
.rtab .fcol{min-width:200px}

/* Kein Zugriff / Fehler */
.denied{max-width:620px;margin:40px auto;background:#fff;border:1px solid var(--line);border-top:4px solid var(--acc);border-radius:10px;padding:30px 32px;text-align:center;box-shadow:0 4px 18px rgba(16,24,40,.06)}
.denied .dico{width:70px;height:70px;border-radius:50%;margin:0 auto 12px;display:grid;place-items:center;background:color-mix(in srgb,var(--acc) 10%,#fff);color:var(--acc)}
.denied.err{border-top-color:#c25b00}.denied.err .dico{background:#fff4e5;color:#c25b00}
.denied h1{margin:0 0 6px;font-size:22px}.denied .lead{font-size:15px;margin:0 0 14px}
.denied .need,.denied .mine{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;background:#f6f8fa;border:1px solid var(--line2);border-radius:6px;padding:8px 12px;margin:8px auto;max-width:480px}
.denied .need span,.denied .mine>span:first-child{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--mut);font-weight:700}
.denied .hint{margin:14px auto 16px;max-width:480px}
/* Ansprechpartner */
.ccard.vac{opacity:.7}.ccard .ct{font-weight:700;color:var(--acc)}
.cedit{display:grid;gap:10px}.crowx{border:1px solid var(--line);border-radius:8px;padding:10px 12px;display:grid;gap:6px}
.cwho .pick,.cwho>div{width:100%}
.acph{display:flex;gap:16px;align-items:center}
a.av.avimg{display:block}

.fldp{display:grid;gap:4px;align-content:start}.flab3{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--mut)}.cwho .chip{width:fit-content}
