/* hppy CRM – Markenfarben: Nachtblau #222d5a, Safran #fab800 */
:root{
  --bg:#f4f4f7;--sf:#ffffff;--sf2:#f8f8fb;--bd:#dfe1e6;--bd2:#c9ccd6;--tx:#161b31;--mt:#5f6685;--ac:#222d5a;--ac2:#1e284f;--acs:rgba(34,45,90,.08);
  --gn:#1a7f37;--gns:rgba(26,127,55,.1);--rd:#c4262e;--rds:rgba(196,38,46,.1);--am:#9a6700;--ams:rgba(191,135,0,.13);--bl:#0b63c9;--bls:rgba(11,99,201,.1);--gy:#6e6e76;--gys:rgba(110,110,118,.12);
  --r:10px;--sh:0 1px 2px rgba(0,0,0,.04),0 2px 8px rgba(0,0,0,.04);--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --side:244px;color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#121629;--sf:#1b2139;--sf2:#222845;--bd:#2a3150;--bd2:#3a4266;--tx:#eef0f7;--mt:#a3a9c6;--ac:#fab800;--ac2:#fccd4d;--acs:rgba(250,184,0,.14);
  --gn:#4ac26b;--gns:rgba(74,194,107,.14);--rd:#f0626a;--rds:rgba(240,98,106,.14);--am:#e3b341;--ams:rgba(227,179,65,.14);--bl:#58a6ff;--bls:rgba(88,166,255,.14);--gy:#9a9aa3;--gys:rgba(154,154,163,.14);
  --sh:0 1px 2px rgba(0,0,0,.3);color-scheme:dark}}
/* Hell gewählt: Browser dürfen die Seite nicht selbst abdunkeln (Chrome „Dunkles Design für Websites“, Samsung Internet) */
:root[data-theme="light"]{color-scheme:only light}
:root[data-theme="dark"]{
  --bg:#121629;--sf:#1b2139;--sf2:#222845;--bd:#2a3150;--bd2:#3a4266;--tx:#eef0f7;--mt:#a3a9c6;--ac:#fab800;--ac2:#fccd4d;--acs:rgba(250,184,0,.14);
  --gn:#4ac26b;--gns:rgba(74,194,107,.14);--rd:#f0626a;--rds:rgba(240,98,106,.14);--am:#e3b341;--ams:rgba(227,179,65,.14);--bl:#58a6ff;--bls:rgba(88,166,255,.14);--gy:#9a9aa3;--gys:rgba(154,154,163,.14);
  --sh:0 1px 2px rgba(0,0,0,.3);color-scheme:dark}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--tx)}
a{color:inherit;text-decoration:none}a:hover{color:var(--ac)}
h1{font-size:24px;letter-spacing:-.02em;margin:0;line-height:1.2}
h2{font-size:15px;margin:0 0 12px;letter-spacing:-.01em}
h3{font-size:13px;margin:0 0 10px;text-transform:uppercase;letter-spacing:.05em;color:var(--mt)}
code,.mono{font-family:var(--mono);font-size:.92em}
code{background:var(--gys);padding:1px 5px;border-radius:4px}
.muted{color:var(--mt)}.neg{color:var(--rd)}.pos{color:var(--gn)}.small{font-size:12px}.center{text-align:center}.nowrap{white-space:nowrap}.mt{margin-top:10px}
.ic{flex-shrink:0;vertical-align:-3px}
small{font-size:12px}

/* Shell */
.shell{display:flex;min-height:100vh}
.side{width:var(--side);background:var(--sf);border-right:1px solid var(--bd);position:sticky;top:0;height:100vh;display:flex;flex-direction:column;flex-shrink:0;z-index:30}
.brand{display:flex;align-items:center;gap:10px;padding:18px 18px 14px}
.brand-logo{height:30px;width:auto;display:block}.brand-logo.lg{height:40px}
.brand-tag{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--ac);border:1px solid color-mix(in srgb,var(--ac) 35%,transparent);border-radius:5px;padding:1px 6px;margin-top:2px}
.brand-logo.bl-d{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .brand-logo.bl-l{display:none}:root:not([data-theme="light"]) .brand-logo.bl-d{display:block}}
:root[data-theme="dark"] .brand-logo.bl-l{display:none}:root[data-theme="dark"] .brand-logo.bl-d{display:block}
.brand b{color:var(--ac)}
.brand-mark{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--ac);color:#fff;font-weight:800;font-size:12px;letter-spacing:.02em}
.side nav{flex:1;overflow-y:auto;padding:4px 10px 12px}
.nav-sec{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--mt);padding:14px 10px 4px}
.side nav a{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:8px;color:var(--tx);font-size:13.5px;margin:1px 0}
.side nav a .ic{color:var(--mt)}
.side nav a:hover{background:var(--sf2);color:var(--tx)}
.side nav a.on{background:var(--acs);color:var(--ac);font-weight:600}.side nav a.on .ic{color:var(--ac)}
.cnt{margin-left:auto;font-style:normal;background:var(--ac);color:#fff;border-radius:10px;font-size:11px;padding:0 7px;font-weight:600}
.side-foot{border-top:1px solid var(--bd);padding:10px;display:flex;align-items:center;gap:6px}
.me{display:flex;align-items:center;gap:10px;flex:1;padding:6px;border-radius:8px;min-width:0}
.me:hover,.me.on{background:var(--sf2);color:var(--tx)}
.me span:last-child{display:flex;flex-direction:column;line-height:1.25;min-width:0}.me b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.me small{color:var(--mt)}
.main{flex:1;min-width:0;display:flex;flex-direction:column}
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:12px;padding:10px 28px;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--bd)}
.search{flex:1;max-width:560px;display:flex;align-items:center;gap:8px;background:var(--sf);border:1px solid var(--bd);border-radius:9px;padding:0 10px;color:var(--mt)}
.search input{border:0;background:transparent;padding:8px 0;flex:1;outline:0;color:var(--tx);font:inherit}
.search:focus-within{border-color:var(--ac)}
kbd{font:11px var(--mono);border:1px solid var(--bd);border-radius:4px;padding:0 5px;color:var(--mt)}
.top-r{margin-left:auto;display:flex;gap:8px;align-items:center}
.content{padding:24px 28px 60px;max-width:1440px;width:100%}
.page-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.actions{display:flex;gap:8px;flex-wrap:wrap}
.subhead{margin:-8px 0 18px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.menu-btn{display:inline-grid}
.mini-only{display:none}
.scrim{display:none}

/* Buttons & Inputs */
.btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 13px;border-radius:8px;border:1px solid var(--bd2);background:var(--sf);color:var(--tx);font:500 13px/1 inherit;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}
.btn:hover{border-color:var(--mt);color:var(--tx)}
.btn.primary{background:var(--ac);border-color:var(--ac);color:#fff}.btn.primary:hover{background:var(--ac2);border-color:var(--ac2)}
.btn.danger{color:var(--rd);border-color:color-mix(in srgb,var(--rd) 40%,var(--bd))}.btn.danger:hover{background:var(--rds)}
.btn.ghost{background:transparent;border-color:transparent}.btn.ghost:hover{background:var(--gys)}
.btn.sm{height:28px;padding:0 10px;font-size:12px}
.btn.block{width:100%;justify-content:center}
.btn:disabled{opacity:.45;cursor:not-allowed}
.btn.vsc{background:#0078d4;border-color:#0078d4;color:#fff}
.icon-btn{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:8px;border:0;background:transparent;color:var(--mt);cursor:pointer}
.icon-btn:hover{background:var(--gys);color:var(--tx)}
.icon-btn.sm{width:28px;height:28px}.icon-btn.xs{width:22px;height:22px}
form.inline{display:inline}
input,select,textarea{font:inherit;color:var(--tx);background:var(--sf);border:1px solid var(--bd2);border-radius:8px;padding:7px 10px;min-height:34px;width:100%;outline:0}
input:focus,select:focus,textarea:focus{border-color:var(--ac);box-shadow:0 0 0 3px var(--acs)}
textarea{resize:vertical;min-height:0}
input[type=checkbox],input[type=radio]{width:auto;min-height:0;accent-color:var(--ac)}
select.sm{min-height:28px;padding:3px 8px;font-size:12px;width:auto}
.f{display:flex;flex-direction:column;gap:5px;min-width:0}
.f>span{font-size:12px;color:var(--mt);font-weight:500}
.f.check,label.check{flex-direction:row;align-items:center;gap:8px;font-size:13px;color:var(--tx);cursor:pointer}
.stack{display:flex;flex-direction:column;gap:12px}
.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row>*{flex:1 1 auto;width:auto}.row>.btn,.row>button,.row>label.check{flex:0 0 auto}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.form-grid.narrow,.narrow{max-width:760px}
.span2{grid-column:1/-1}
.form-actions{display:flex;gap:8px;align-items:center}
.form-actions.sticky{position:sticky;bottom:0;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(8px);padding:12px 0;margin-top:4px;z-index:5}
.seg{display:inline-flex;border:1px solid var(--bd2);border-radius:9px;padding:3px;gap:2px;flex-wrap:wrap;width:fit-content}
.seg label{cursor:pointer}.seg input{position:absolute;opacity:0;pointer-events:none}
.seg span{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:6px;font-size:13px;color:var(--mt)}
.seg input:checked+span{background:var(--acs);color:var(--ac);font-weight:600}
.seg.sm span{padding:3px 9px;font-size:12px}
.otp{font:600 26px var(--mono);letter-spacing:.3em;text-align:center}.otp.sm{font-size:18px;max-width:170px;flex:0 0 170px}
.inf{background:var(--bls);border-radius:8px;padding:10px 12px;color:var(--mt);font-size:13px}

/* Cards, tables */
.card{background:var(--sf);border:1px solid var(--bd);border-radius:var(--r);padding:18px;box-shadow:var(--sh);margin-bottom:16px}
.card.flush{padding:0;overflow:hidden}
.card-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.card-h h2,.card-h h3{margin:0}
.tbl{width:100%;border-collapse:collapse}
.tbl th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--mt);font-weight:600;padding:10px 14px;border-bottom:1px solid var(--bd);background:var(--sf2);white-space:nowrap}
.tbl td{padding:10px 14px;border-bottom:1px solid var(--bd);vertical-align:middle}
.tbl tr:last-child td{border-bottom:0}
.tbl tr.click{cursor:pointer}.tbl tr.click:hover td{background:var(--sf2)}
.tbl .r,.r{text-align:right}
.tbl tr.dim td,.dim{opacity:.55}
.card>.tbl th:first-child,.card>.tbl td:first-child{padding-left:18px}
.who{display:flex;align-items:center;gap:10px}.who>span:last-child{display:flex;flex-direction:column;line-height:1.3;min-width:0}
.av{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--acs);color:var(--ac);font-weight:700;font-size:13px;flex-shrink:0}
.av.sm{width:30px;height:30px;font-size:11px}.av.xs{width:20px;height:20px;font-size:9px;vertical-align:middle}
.av.privat{background:var(--bls);color:var(--bl)}
.badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:20px;font-size:11.5px;font-weight:600;white-space:nowrap}
.b-green{background:var(--gns);color:var(--gn)}.b-red{background:var(--rds);color:var(--rd)}.b-amber{background:var(--ams);color:var(--am)}.b-blue{background:var(--bls);color:var(--bl)}.b-gray{background:var(--gys);color:var(--gy)}
.tag,.chip{display:inline-flex;align-items:center;gap:4px;font-size:12px;background:var(--gys);border-radius:20px;padding:1px 9px;margin:1px 2px}
.chip button{border:0;background:none;color:var(--rd);cursor:pointer;padding:0 0 0 2px;font-size:14px;line-height:1}
.empty{text-align:center;padding:26px 16px;color:var(--mt)}.empty p{margin:0 0 10px}.empty h2{color:var(--tx)}
.flash{padding:11px 14px;border-radius:9px;margin-bottom:14px;border:1px solid;font-size:13.5px}
.flash.ok{background:var(--gns);border-color:color-mix(in srgb,var(--gn) 30%,transparent)}
.flash.err{background:var(--rds);border-color:color-mix(in srgb,var(--rd) 30%,transparent)}
.flash.warn{background:var(--ams);border-color:color-mix(in srgb,var(--am) 30%,transparent)}
.flash pre{white-space:pre-wrap;margin:6px 0 0}
.pager{display:flex;flex-wrap:wrap;gap:4px;justify-content:center;margin:8px 0 16px}.pager .gap{border:0}.pager a,.pager span{min-width:32px;height:32px;display:grid;place-items:center;border-radius:8px;border:1px solid var(--bd)}.pager .on{background:var(--ac);color:#fff;border-color:var(--ac)}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;align-items:center}.filters input[type=search]{max-width:360px}.filters select{width:auto}
/* Filter-Leiste (Status u. ä.) im Stil der Reiter: dezente Buttons */
.tabs-pills{display:flex;gap:5px;flex-wrap:wrap;width:fit-content;max-width:100%;padding:5px;margin-bottom:12px;background:color-mix(in srgb,var(--gys) 45%,var(--sf2));border:1px solid var(--bd);border-radius:12px}
.tabs-pills a{display:inline-flex;align-items:center;gap:5px;padding:5px 13px;border-radius:8px;font-size:13px;font-weight:500;line-height:1.35;color:var(--mt);border:1px solid var(--bd);background:color-mix(in srgb,var(--sf) 75%,transparent);box-shadow:0 1px 1px rgba(0,0,0,.03);transition:background .12s,color .12s,border-color .12s,box-shadow .12s}
.tabs-pills a:hover{background:var(--sf);border-color:var(--bd2);color:var(--tx);box-shadow:0 1px 2px rgba(0,0,0,.06),0 2px 6px rgba(0,0,0,.04)}
.tabs-pills a:active{transform:translateY(1px)}
.tabs-pills a.on{background:var(--sf);border-color:color-mix(in srgb,var(--ac) 45%,var(--bd2));color:var(--tx);font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.06),0 3px 8px rgba(0,0,0,.06),inset 0 -2px 0 var(--ac)}
.tabs-pills em{font-style:normal;font-size:11px;font-weight:600;color:var(--mt);background:var(--gys);border-radius:9px;padding:0 6px;line-height:17px}
.tabs-pills a.on em{background:var(--acs);color:var(--ac)}
.tabs-pills.sm{padding:4px;gap:4px}.tabs-pills.sm a{padding:3px 10px;font-size:12px}
.sumbar{display:flex;gap:22px;flex-wrap:wrap;color:var(--mt);font-size:13px;margin-bottom:10px}.sumbar b{color:var(--tx)}
.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:13px}.kv span{color:var(--mt)}.kv b{text-align:right}
.dl{display:grid;grid-template-columns:110px 1fr;gap:7px 12px;margin:0;font-size:13.5px}.dl dt{color:var(--mt)}.dl dd{margin:0;word-break:break-word}
.note{background:var(--ams);border-radius:8px;padding:10px 12px;margin-top:12px;font-size:13px}
.note-card{white-space:normal;color:var(--mt)}
.meter{height:6px;background:var(--gys);border-radius:4px;overflow:hidden;margin:6px 0}.meter i{display:block;height:100%;background:var(--ac)}.meter.bad i{background:var(--rd)}

/* Dashboard */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(max(200px,calc((100% - 24px) / 3)),1fr));gap:12px;margin-bottom:16px}
.kpi{background:var(--sf);border:1px solid var(--bd);border-radius:var(--r);padding:14px 16px;display:flex;flex-direction:column;gap:2px;box-shadow:var(--sh)}
a.kpi:hover{border-color:var(--bd2);color:inherit}
.kpi small{color:var(--mt);font-size:12px;font-weight:500}.kpi b{font-size:22px;letter-spacing:-.02em}.kpi b.sm{font-size:15px}.kpi span{font-size:12px}
.grid-main{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;align-items:start}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;align-items:start}
.bars{display:flex;align-items:flex-end;height:190px;gap:0;padding-top:18px}
.bar{display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end;padding:0 3px}
.bar-v{width:100%;max-width:44px;background:linear-gradient(180deg,var(--ac),color-mix(in srgb,var(--ac) 70%,#000));border-radius:5px 5px 2px 2px;position:relative;min-height:2px}
.bar-v span{position:absolute;top:-17px;left:50%;transform:translateX(-50%);font-size:10.5px;color:var(--mt);white-space:nowrap}
.bar small{font-size:11px;color:var(--mt);margin-top:6px;white-space:nowrap}
.list{list-style:none;margin:0;padding:0}.list li a{display:flex;align-items:center;gap:12px;padding:9px 4px;border-bottom:1px solid var(--bd);justify-content:space-between}
.list li:last-child a{border-bottom:0}.list li a>span{display:flex;flex-direction:column;line-height:1.35;flex:1;min-width:0}
.list li a>span.av{flex:0 0 auto;display:inline-grid}
.list.compact li a{padding:6px 2px;justify-content:flex-start}
.date-chip{flex:0 0 44px!important;align-items:center;background:var(--acs);color:var(--ac);border-radius:8px;padding:4px 0;font-size:11px;text-transform:uppercase}.date-chip b{font-size:16px;line-height:1}
.funnel{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.funnel a{background:var(--sf2);border:1px solid var(--bd);border-radius:8px;padding:10px;display:flex;flex-direction:column}.funnel span{font-size:12px;color:var(--mt)}.funnel b{font-size:20px}.funnel small{color:var(--mt)}
.svc-mini{display:flex;flex-wrap:wrap;gap:6px 14px}
.dot-l{display:inline-flex;align-items:center;gap:6px;font-size:12.5px}.dot-l::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gy)}.dot-l.ok::before{background:var(--gn);box-shadow:0 0 0 3px var(--gns)}.dot-l.bad::before{background:var(--rd);box-shadow:0 0 0 3px var(--rds)}
.svc{display:flex;align-items:center;gap:14px;padding:10px 0;border-bottom:1px solid var(--bd)}.svc:last-child{border:0}.svc .dot-l{min-width:180px}.svc form{margin-left:auto}

/* Tasks & timeline */
.tasklist{list-style:none;margin:0;padding:0}
.task{display:flex;align-items:center;gap:10px;padding:8px 2px;border-bottom:1px solid var(--bd)}.task:last-child{border:0}
.task .tick{width:22px;height:22px;border-radius:50%;border:2px solid var(--bd2);background:transparent;display:grid;place-items:center;cursor:pointer;color:transparent;padding:0}
.task .tick:hover{border-color:var(--gn);color:var(--gn)}
.task.done .tick{background:var(--gn);border-color:var(--gn);color:#fff}
.task.done .task-b b{text-decoration:line-through;color:var(--mt)}
.task.prio-hoch .tick{border-color:var(--rd)}
.task-b{display:flex;flex-direction:column;line-height:1.35;flex:1;min-width:0}
.quick-task{display:flex;gap:6px;margin-bottom:8px;flex-wrap:wrap}.quick-task input[name=title]{flex:1 1 220px}.quick-task input[type=date],.quick-task select{width:auto;flex:0 0 auto}
.timeline{list-style:none;margin:8px 0 0;padding:0;position:relative}
.timeline::before{content:"";position:absolute;left:13px;top:6px;bottom:6px;width:2px;background:var(--bd)}
.timeline li{display:flex;gap:12px;padding:7px 0;position:relative}
.t-ic{width:28px;height:28px;border-radius:50%;background:var(--sf);border:2px solid var(--bd);display:grid;place-items:center;color:var(--mt);flex-shrink:0;z-index:1}
.t-anruf .t-ic{color:var(--gn);border-color:var(--gn)}.t-email .t-ic{color:var(--bl);border-color:var(--bl)}.t-meeting .t-ic{color:var(--am);border-color:var(--am)}.t-notiz .t-ic{color:var(--ac);border-color:var(--ac)}
.t-b{flex:1;min-width:0;padding-top:3px}.t-h{display:flex;gap:6px;flex-wrap:wrap;align-items:baseline}.t-m{font-size:12px;margin-left:auto}
.t-system .t-h b{font-weight:500;color:var(--mt)}
.t-body{margin-top:4px;background:var(--sf2);border:1px solid var(--bd);border-radius:8px;padding:8px 10px;font-size:13px}
.t-del{opacity:0}.timeline li:hover .t-del{opacity:1}
.act-form{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--sf2);border:1px solid var(--bd);border-radius:9px;margin-bottom:10px}
.act-form .row input[type=datetime-local]{flex:0 0 210px}

/* Detail */
.detail{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start}
.detail-main+.detail-side{order:2}
.detail:has(.detail-main:first-child){grid-template-columns:minmax(0,1fr) 320px}
/* Reiter als dezente Button-Leiste */
.tabs{display:flex;flex-wrap:wrap;gap:6px;padding:6px;margin-bottom:16px;background:color-mix(in srgb,var(--gys) 45%,var(--sf2));border:1px solid var(--bd);border-radius:12px}
.tabs button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--bd);background:color-mix(in srgb,var(--sf) 75%,transparent);padding:6px 12px;border-radius:8px;font-family:inherit;font-size:13px;font-weight:500;line-height:1.3;color:var(--mt);cursor:pointer;white-space:nowrap;box-shadow:0 1px 1px rgba(0,0,0,.03);transition:background .12s,color .12s,border-color .12s,box-shadow .12s}
.tabs button:hover{background:var(--sf);border-color:var(--bd2);color:var(--tx);box-shadow:0 1px 2px rgba(0,0,0,.06),0 2px 6px rgba(0,0,0,.04)}
.tabs button:active{transform:translateY(1px)}
.tabs button:focus-visible{outline:2px solid color-mix(in srgb,var(--ac) 45%,transparent);outline-offset:1px}
.tabs button em{font-style:normal;font-size:11px;font-weight:600;line-height:17px;min-width:19px;text-align:center;background:var(--gys);color:var(--mt);border-radius:9px;padding:0 6px}
.tabs button.on{background:var(--sf);border-color:color-mix(in srgb,var(--ac) 45%,var(--bd2));color:var(--tx);font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.06),0 3px 8px rgba(0,0,0,.06),inset 0 -2px 0 var(--ac)}
.tabs button.on em{background:var(--acs);color:var(--ac)}
@media (max-width:640px){.tabs{gap:4px;padding:5px}.tabs button{padding:5px 10px;font-size:12.5px}}
.tab-pane{display:none}.tab-pane.on{display:block}
.tab-pane:not(.card){background:var(--sf);border:1px solid var(--bd);border-radius:var(--r);padding:16px;box-shadow:var(--sh)}
.pane-actions{display:flex;justify-content:flex-end;margin-bottom:8px}
.drop{position:relative;border:2px dashed var(--bd2);border-radius:10px;padding:20px;display:flex;align-items:center;gap:10px;justify-content:center;color:var(--mt);margin-bottom:12px}
.drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.drop.over{border-color:var(--ac);background:var(--acs)}
.collapse{display:none;margin-top:12px}.collapse.open{display:block}
td.collapse{padding:0 14px}td.collapse.open{display:table-cell;padding:12px 14px;background:var(--sf2)}
.collapse-row td:not(.open){border:0;padding:0}
.user-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}.user-row .collapse{flex-basis:100%}
.qr-row{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:10px 0}.qr{width:170px;height:170px;background:#fff;padding:8px;border-radius:10px}
.secret{display:block;margin-top:6px;font-size:14px;letter-spacing:.08em}
.logo-prev{max-height:40px;flex:0 0 auto!important;background:#fff;padding:4px;border-radius:6px}
.reveal{cursor:pointer;color:var(--bl)}
pre.log{background:#0b0c10;color:#c9d1d9;border-radius:9px;padding:14px;font:12px/1.55 var(--mono);overflow:auto;max-height:420px;white-space:pre-wrap;word-break:break-all}pre.log.tall{max-height:70vh}

/* Deals board */
.board{display:grid;grid-template-columns:repeat(6,minmax(165px,1fr));gap:10px;overflow-x:auto;padding-bottom:10px}
.col-b{background:var(--sf2);border:1px solid var(--bd);border-radius:var(--r);display:flex;flex-direction:column;min-height:300px}
.col-h{padding:10px 12px;border-bottom:3px solid var(--bd2);display:flex;flex-direction:column}.col-h span{font-size:12px}
.stage-gewonnen .col-h{border-color:var(--gn)}.stage-verloren .col-h{border-color:var(--rd)}.stage-angebot .col-h{border-color:var(--bl)}.stage-verhandlung .col-h{border-color:var(--am)}
.col-body{padding:8px;display:flex;flex-direction:column;gap:8px;flex:1}
.col-b.over{outline:2px dashed var(--ac);outline-offset:-4px}
.deal{background:var(--sf);border:1px solid var(--bd);border-radius:9px;padding:10px;display:flex;flex-direction:column;gap:2px;cursor:grab;box-shadow:var(--sh)}
.deal:hover{border-color:var(--bd2);color:inherit}.deal.dragging{opacity:.4}
.deal-f{display:flex;justify-content:space-between;align-items:center;margin-top:6px}
.stagebar{display:flex;gap:4px;margin-bottom:16px;flex-wrap:wrap}.stagebar form{flex:1;min-width:100px}
.st{width:100%;border:1px solid var(--bd);background:var(--sf);padding:8px;font:500 12.5px inherit;color:var(--mt);cursor:pointer;border-radius:8px}
.st.on{background:var(--ac);border-color:var(--ac);color:#fff}.st-gewonnen.on{background:var(--gn);border-color:var(--gn)}.st-verloren.on{background:var(--rd);border-color:var(--rd)}

/* Documents */
.items input,.items textarea{border-color:transparent;background:transparent;padding:5px 6px;min-height:30px}
.items input:hover,.items textarea:hover{border-color:var(--bd)}.items input:focus,.items textarea:focus{border-color:var(--ac);background:var(--sf)}
.items td{vertical-align:top;padding:6px 6px}.items textarea{font-size:12.5px;color:var(--mt);margin-top:2px}
.items .it-title{font-weight:600}
.items td.line{padding-top:12px;font-weight:600}
.items .drag{cursor:grab;color:var(--mt);padding-top:12px;user-select:none}
.items tr.dragging{opacity:.4}
.items-foot{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 16px;border-top:1px solid var(--bd);gap:12px;flex-wrap:wrap}
.totals{border-collapse:collapse;min-width:260px}.totals td{padding:4px 0 4px 20px}.totals td:first-child{padding-left:0;color:var(--mt)}.totals .g td{border-top:1px solid var(--bd2);font-weight:700;font-size:16px;padding-top:8px;color:var(--tx)}
.pay{display:flex;align-items:center;gap:8px;font-size:13px;padding:6px 0;border-top:1px solid var(--bd)}.pay span{flex:1;color:var(--mt)}

/* Calendar */
.cal-head{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.cal-head h2{margin:0 8px;min-width:170px;text-align:center}
.legend{margin-left:auto;font-size:12px;color:var(--mt);display:flex;gap:10px;align-items:center}.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:3px}
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--bd);border-radius:var(--r);overflow:hidden;background:var(--bd);gap:1px}
.cal-wd{background:var(--sf2);padding:6px 8px;font-size:11px;text-transform:uppercase;color:var(--mt);font-weight:600}
.cal-d{background:var(--sf);min-height:112px;padding:4px 5px;display:flex;flex-direction:column;gap:2px;min-width:0}
.cal-d.out{background:var(--sf2)}.cal-d.out .cal-n{opacity:.45}
.cal-n{font-size:12px;font-weight:600;width:24px;height:24px;display:grid;place-items:center;border-radius:50%}
.cal-d.today .cal-n{background:var(--ac);color:#fff}
.ev{font-size:11.5px;padding:1px 6px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:3px solid}
.ev.appt,.legend .appt{background:var(--bls);border-color:var(--bl)}.ev.task,.legend .task{background:var(--ams);border-color:var(--am)}
.ev.deal,.legend .deal{background:var(--gns);border-color:var(--gn)}.ev.inv,.legend .inv{background:var(--rds);border-color:var(--rd)}.ev.bday{background:var(--gys);border-color:var(--gy)}

/* Projects / terminal */
.proj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.proj{display:flex;flex-direction:column;gap:4px;margin:0}.proj h3{text-transform:none;letter-spacing:0;color:var(--tx);font-size:15px;margin:0}
.term iframe{width:100%;height:calc(100vh - 290px);min-height:420px;border:0;display:block;background:#0a0c12}

/* Dropdown */
.dd{position:relative}
.dd-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);background:var(--sf);border:1px solid var(--bd);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.14);padding:6px;min-width:200px;z-index:40}
.dd.open .dd-menu{display:block}
.dd-menu a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:7px;font-size:13.5px}.dd-menu a:hover{background:var(--sf2);color:var(--tx)}

/* Auth */
.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(1200px 500px at 50% -10%,var(--acs),transparent),var(--bg)}
.auth{width:100%;max-width:380px;background:var(--sf);border:1px solid var(--bd);border-radius:14px;padding:30px;box-shadow:0 20px 60px rgba(0,0,0,.08)}
.auth h1{font-size:22px;margin:18px 0 2px}.auth p{margin:0 0 18px}
.auth-brand{display:flex;align-items:center;gap:10px;font-size:15px}.auth-brand b{color:var(--ac)}

/* Responsive */
@media (max-width:1100px){.grid-main,.detail,.detail:has(.detail-main:first-child){grid-template-columns:minmax(0,1fr)}.detail-main+.detail-side{order:0}}
@media (max-width:860px){
  .side{position:fixed;left:0;top:0;transform:translateX(-100%);transition:transform .2s;box-shadow:0 0 40px rgba(0,0,0,.2)}
  body.nav-open .side{transform:none}
  body.nav-open .scrim{display:block;position:fixed;inset:0;background:rgba(0,0,0,.3);z-index:25}
  .menu-btn{display:inline-grid}
  .top{padding:8px 16px}.content{padding:18px 16px 60px}
  .search kbd,.hide-sm{display:none}
  .form-grid{grid-template-columns:minmax(0,1fr)}
  .funnel{grid-template-columns:repeat(2,1fr)}
  .cal-d{min-height:70px}.ev{font-size:10px;padding:0 3px}.legend{display:none}
  .tbl th,.tbl td{padding:9px 10px}
  h1{font-size:20px}
}
@media print{.side,.top,.actions,.btn{display:none!important}.content{padding:0}}

/* ---- Erweiterungen: Finanzen, Import, Telefonie ---- */
.picker{position:relative}
.picker-list{display:none;position:absolute;left:0;right:0;top:calc(100% + 4px);background:var(--sf);border:1px solid var(--bd2);border-radius:9px;box-shadow:0 10px 30px rgba(0,0,0,.14);z-index:30;max-height:320px;overflow:auto;padding:4px}
.picker-list.open{display:block}
.pi{padding:7px 10px;border-radius:6px;cursor:pointer;display:flex;flex-direction:column;line-height:1.3}.pi small{color:var(--mt)}
.pi:hover,.pi.on{background:var(--acs)}
.items tr.headline td{background:var(--sf2)}.items tr.headline .it-text{font-weight:700;color:var(--tx)}
.items tr.headline input.calc,.items tr.headline [name="einheit[]"],.items tr.headline .einmalig{visibility:hidden}
.items .it-text{font-weight:500;color:var(--tx);font-size:13.5px}
.tbl tr.hl td{background:var(--sf2)}
.sig-pad{width:100%;height:220px;border:2px dashed var(--bd2);border-radius:10px;background:#fff;touch-action:none;display:block;margin-top:10px}
.sig img{max-width:100%;max-height:120px;background:#fff;border:1px solid var(--bd);border-radius:6px;display:block}
.card-h.pad,.pad{padding:14px 18px}
.card-h.pad{margin:0;border-bottom:1px solid var(--bd)}
.modus{padding:12px 16px;border-radius:10px;margin-bottom:16px;font-size:14px}
.modus.test{background:var(--ams);border:1px solid color-mix(in srgb,var(--am) 30%,transparent)}
.modus.live{background:var(--gns);border:1px solid color-mix(in srgb,var(--gn) 30%,transparent)}
.opt{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--bd);border-radius:9px;cursor:pointer}
.opt:has(input:checked){border-color:var(--ac);background:var(--acs)}
.opt span{display:flex;flex-direction:column;gap:3px}.opt small{color:var(--mt);line-height:1.45}
.opt input{margin-top:4px}
.steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:10px}.steps li.done{color:var(--mt)}.steps li.done b::after{content:" ✓";color:var(--gn)}
.spinner{width:18px;height:18px;border:2px solid var(--bd2);border-top-color:var(--ac);border-radius:50%;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.comments{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.comments li{background:var(--sf2);border:1px solid var(--bd);border-radius:8px;padding:8px 10px;font-size:13.5px}
.comments li:hover .t-del{opacity:1}
.einsatz.heute{border-color:var(--ac);box-shadow:0 0 0 2px var(--acs)}
.test-badge{text-decoration:none}
code.wrap{display:block;word-break:break-all;white-space:normal;padding:8px}
.pay a{color:var(--bl)}
#anruf-banner{position:fixed;right:20px;top:70px;z-index:60;background:var(--sf);border:1px solid var(--bd2);border-left:4px solid var(--gn);border-radius:12px;box-shadow:0 14px 40px rgba(0,0,0,.2);padding:14px 16px;min-width:280px;display:none;flex-direction:column;gap:4px}
#anruf-banner.show{display:flex}
#anruf-banner .ab-t{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--gn);font-weight:700}
.vor-ort .picker-q{font-size:16px}

@media (max-width:860px){
  .items thead{display:none}
  .items,.items tbody{display:block}
  .items tr.item{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 34px;gap:6px 8px;padding:12px 12px 10px;border-bottom:1px solid var(--bd);position:relative}
  .items tr.item td{display:block;padding:0;border:0}
  .items tr.item td.drag{display:none}
  .items tr.item td.it-main{grid-column:1/4}
  .items tr.item td:last-child{grid-column:4;grid-row:1;align-self:start}
  .items tr.item td[data-l]::before{content:attr(data-l);display:block;font-size:11px;color:var(--mt)}
  .items tr.item input,.items tr.item textarea{border-color:var(--bd)}
  .items td.line{padding-top:0;align-self:end;text-align:left}
  .items tr.headline td[data-l]{display:none}
  .items-foot{padding:12px}
  .totals{min-width:0;width:100%}
}

/* ---- KI-Assistent ---- */
.ki-fab{position:fixed;right:22px;bottom:22px;z-index:50;width:54px;height:54px;border-radius:50%;border:0;background:var(--ac);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 24px rgba(34,45,90,.35)}
.ki-fab:hover{background:var(--ac2)}
.ki-panel{position:fixed;right:22px;bottom:88px;z-index:55;width:min(440px,calc(100vw - 32px));height:min(640px,calc(100vh - 120px));background:var(--sf);border:1px solid var(--bd2);border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.22);display:flex;flex-direction:column;overflow:hidden}
.ki-panel header{display:flex;align-items:center;gap:8px;padding:12px 12px 12px 16px;border-bottom:1px solid var(--bd)}.ki-panel header small{margin-right:auto}
.ki-log{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--sf2)}
.ki-msg{max-width:88%;padding:9px 12px;border-radius:12px;font-size:14px;line-height:1.45;white-space:normal}
.ki-msg.bot{background:var(--sf);border:1px solid var(--bd);align-self:flex-start;border-bottom-left-radius:4px}
.ki-msg.ich{background:var(--ac);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
.ki-msg.fehler{background:var(--rds);color:var(--rd);align-self:flex-start}
.ki-msg.denkt{color:var(--mt);animation:puls 1.2s ease-in-out infinite}
@keyframes puls{50%{opacity:.4}}
.ki-vorschlag{background:var(--sf);border:1px solid var(--ac);border-radius:12px;padding:10px 12px;font-size:13px;display:flex;flex-direction:column;gap:8px;align-self:stretch}
.ki-vorschlag table{width:100%;border-collapse:collapse}.ki-vorschlag td{padding:3px 0;border-bottom:1px solid var(--bd);vertical-align:top}.ki-vorschlag td+td{padding-left:8px}
.ki-vorschlag tr.sum td{font-weight:700;border:0;padding-top:6px}
.ki-ok{color:var(--gn);font-weight:600}
.ki-panel form{border-top:1px solid var(--bd);padding:10px;display:flex;flex-direction:column;gap:8px}
.ki-panel textarea{resize:none}
.ki-mic.an{background:var(--rd);border-color:var(--rd);color:#fff;animation:puls 1.2s ease-in-out infinite}
.ki-panel [data-ki-status]{flex:1}
@media (max-width:860px){.ki-panel{right:8px;left:8px;width:auto;bottom:80px;height:calc(100vh - 150px)}.ki-fab{right:14px;bottom:14px}}
@media print{.ki-fab,.ki-panel{display:none!important}}

/* To-dos */
.todo-neu{display:grid;grid-template-columns:minmax(180px,1fr) 2fr auto minmax(130px,auto) auto;gap:10px;align-items:center;padding:14px 16px}
.warn-t{color:var(--am);font-weight:600}.sm-only{display:none}
.todo-neu .picker,.filters .picker{min-width:0}
.tbl.todos td{vertical-align:top}.tbl.todos td:nth-child(1){width:1%}
.todo-text{color:inherit;text-decoration:none}.todo-text:hover{text-decoration:underline}
.todo-st{padding:4px 8px;border-radius:999px;font-size:12.5px;font-weight:600;border:1px solid var(--bd);width:auto}
.todo-st.st-offen{color:#1d5fbf}.todo-st.st-in_arbeit{color:#a66300}.todo-st.st-erledigt{color:#1c7c43}
@media (max-width:760px){.todo-neu{grid-template-columns:1fr 1fr}.todo-neu .picker,.todo-neu input[name=text]{grid-column:1/-1}.todo-neu .btn{justify-self:start}}
.todo-neu.kompakt{grid-template-columns:1fr auto;padding:0 0 12px}
@media (max-width:760px){
  .tbl.todos,.tbl.todos tbody{display:block}.tbl.todos thead{display:none}
  .tbl.todos tr{display:grid;grid-template-columns:1fr auto;gap:3px 12px;padding:12px 14px;border-bottom:1px solid var(--bd)}
  .tbl.todos tr:last-child{border-bottom:0}
  .tbl.todos td{padding:0!important;border:0}
  .tbl.todos .t-dat{grid-column:1;font-size:12px;color:var(--mt)}
  .tbl.todos .t-kd{grid-column:1}
  .tbl.todos .t-txt{grid-column:1/-1}
  .tbl.todos .t-st{grid-column:2;grid-row:1/span 2;align-self:start}
  .tbl.todos .t-fae{grid-column:1/-1;font-size:12.5px}.tbl.todos .sm-only{display:inline}
}


/* Domain-Bestellung */
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.grid-2>.card{margin:0}
@media (max-width:900px){.grid-2{grid-template-columns:1fr}}
.domain-form h3{margin:8px 0 0;font-size:15px}
.domain-ergebnis.frei{color:var(--gn);font-weight:600}.domain-ergebnis.vergeben{color:var(--am);font-weight:600}
.domain-umzug{background:var(--sf2);border-radius:var(--r);padding:12px}
.row>form.inline{flex:0 0 auto}
.badge.ls{font-size:10px;padding:1px 5px;vertical-align:1px}.dup{display:flex;flex-direction:column;gap:4px}
.ls-leiste{align-items:flex-end;gap:14px}.ls-leiste .f{flex:0 0 auto}.ls-summe{display:flex;flex-direction:column;flex:1 1 auto}.ls-summe b{font-size:17px}.ls-vermerk{color:var(--gn);margin:0}

/* Kalender (Google-Stil, FullCalendar) */
.content:has(.kal){max-width:none;padding-bottom:12px}
.content:has(.kal) .page-head{display:none}
.kal{display:grid;grid-template-columns:256px minmax(0,1fr);gap:0;height:calc(100vh - 88px);min-height:520px;margin:-8px -12px 0}
.kal-seite{padding:8px 16px 16px 8px;overflow-y:auto;display:flex;flex-direction:column;gap:18px}
.kal-neu{align-self:flex-start;border-radius:16px;padding:14px 22px 14px 16px;font-size:14.5px;font-weight:600;box-shadow:0 1px 3px rgba(60,64,67,.3),0 4px 8px 3px rgba(60,64,67,.15);background:var(--sf);gap:10px}
.kal-neu:hover{box-shadow:0 1px 3px rgba(60,64,67,.3),0 6px 10px 4px rgba(60,64,67,.15);background:var(--sf2)}
.kal-mini-kopf{display:flex;justify-content:space-between;align-items:center;padding:0 2px 6px 8px;font-size:13.5px}
.kal-mini-kopf button{border:0;background:none;width:28px;height:28px;border-radius:50%;cursor:pointer;color:var(--tx);font-size:17px}
.kal-mini-kopf button:hover{background:var(--sf2)}
.kal-mini-raster{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-size:11.5px}
.kal-mini-raster .wt{color:var(--mt);font-weight:600;padding:4px 0;font-size:10.5px}
.kal-mini-raster button{border:0;background:none;width:28px;height:28px;margin:1px auto;border-radius:50%;cursor:pointer;color:var(--tx);font-size:11.5px;padding:0}
.kal-mini-raster button:hover{background:var(--sf2)}
.kal-mini-raster button.aus{color:var(--mt)}
.kal-mini-raster button.sicht{background:color-mix(in srgb,#1a73e8 12%,transparent);border-radius:0}
.kal-mini-raster button.akt{background:color-mix(in srgb,#1a73e8 28%,transparent);border-radius:50%;font-weight:600}
.kal-mini-raster button.heute{background:#1a73e8;color:#fff;border-radius:50%;font-weight:600}
.kal-liste{display:flex;flex-direction:column;gap:2px}
.kal-liste-kopf{font-size:13px;font-weight:600;margin:10px 0 4px 6px}
.kal-cb{display:flex;align-items:center;gap:10px;padding:5px 6px;border-radius:6px;font-size:13.5px;cursor:pointer}
.kal-cb:hover{background:var(--sf2)}
.kal-cb input[type=checkbox]{appearance:none;width:18px;height:18px;border:2px solid var(--f);border-radius:3px;margin:0;display:grid;place-items:center;cursor:pointer;flex:0 0 auto}
.kal-cb input[type=checkbox]:checked{background:var(--f) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/14px no-repeat}
.kal-cb input[type=radio]{margin:0 4px}
.kal-hinweis{font-size:12.5px;margin:6px 6px 0}
.kal-tasten{font-size:11.5px;line-height:1.6;margin-top:auto;padding:0 6px}
.kal-haupt{display:flex;flex-direction:column;min-width:0;min-height:0}
.kal-leiste{display:flex;align-items:center;gap:6px;padding:4px 8px 10px}
.kal-leiste .btn{border-radius:6px;padding:7px 16px}
.kal-leiste .icon-btn{width:36px;height:36px;border-radius:50%;font-size:22px;line-height:1;display:grid;place-items:center;border:0;background:none;color:var(--tx);cursor:pointer}
.kal-leiste .icon-btn:hover{background:var(--sf2)}
.kal-titel{margin:0 12px 0 8px;font-size:21px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}
.kal-ansicht{width:auto;border-radius:6px;padding:7px 30px 7px 12px;font-weight:500}
.kal-menu{display:none}
.kal-fc{flex:1;min-height:0;background:var(--sf);border:1px solid var(--bd);border-radius:12px;overflow:hidden}
/* FullCalendar an das CRM anpassen */
.kal .fc{--fc-border-color:var(--bd);--fc-page-bg-color:var(--sf);--fc-neutral-bg-color:var(--sf2);--fc-today-bg-color:transparent;--fc-now-indicator-color:#ea4335;
  --fc-list-event-hover-bg-color:var(--sf2);--fc-highlight-color:color-mix(in srgb,#1a73e8 14%,transparent);font-size:12.5px;color:var(--tx)}
.kal .fc-col-header-cell{padding:6px 0;font-weight:500}
.kal .fc-col-header-cell-cushion{color:var(--mt);text-transform:uppercase;font-size:11px;letter-spacing:.04em;text-decoration:none}
.kal .fc-day-today .fc-col-header-cell-cushion{color:#1a73e8;font-weight:700}
.kal .fc-daygrid-day-number,.kal .fc-list-day-text,.kal .fc-list-day-side-text{color:var(--tx);text-decoration:none}
.kal .fc-day-today .fc-daygrid-day-number{background:#1a73e8;color:#fff;border-radius:50%;min-width:24px;height:24px;display:grid;place-items:center;margin:3px;padding:0}
.kal .fc-timegrid-slot{height:24px}
.kal .fc-timegrid-slot-minor{border-top-style:none}
.kal .fc-timegrid-slot-label-cushion{font-size:10.5px;color:var(--mt)}
.kal .fc-timegrid-axis-cushion,.kal .fc-week-number{font-size:10.5px;color:var(--mt);text-decoration:none}
.kal .fc-event{border-radius:5px;font-size:12px;cursor:pointer}
.kal .fc-timegrid-event{box-shadow:0 0 0 1px var(--sf)}
.kal .fc-timegrid-event .fc-event-main{padding:2px 5px}
.kal .fc-event-time{font-weight:600}
.kal .fc-daygrid-dot-event{padding:1px 4px}.kal .fc-daygrid-dot-event:hover{background:var(--sf2)}
.kal .fc-daygrid-event-dot{border-width:5px}
.kal .fc-daygrid-dot-event .fc-event-title{font-weight:500}
.kal .fc-list-event:hover td{background:var(--sf2)}
.kal .fc-timegrid-now-indicator-arrow{border:0;width:12px;height:12px;border-radius:50%;background:#ea4335;margin-top:-6px;margin-left:-6px}
.kal .fc-highlight{border-radius:4px}
.kal .fc-daygrid-more-link{color:var(--tx);font-weight:600}
.kal .fc-popover{background:var(--sf);border-radius:8px;box-shadow:0 8px 28px rgba(0,0,0,.25)}
/* Popover (Termin ansehen / schnell anlegen) */
.kal-pop{position:fixed;z-index:60;background:var(--sf);color:var(--tx);border-radius:10px;box-shadow:0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12),0 11px 15px -7px rgba(0,0,0,.2);padding:14px 14px 12px 18px}
.kal-pop-kopf{display:flex;gap:12px;align-items:flex-start}
.kal-pop-kopf h3{margin:0 0 2px;font-size:19px;font-weight:400;word-break:break-word;text-transform:none;letter-spacing:0;color:var(--tx)}
.kal-pop-kopf p{margin:0;color:var(--mt);font-size:13px}
.kal-pop-kopf .icon-btn{margin-left:auto;border:0;background:none;font-size:22px;width:32px;height:32px;border-radius:50%;cursor:pointer;color:var(--mt)}
.kal-pop-kopf .icon-btn:hover{background:var(--sf2)}
.kal-farbe{width:14px;height:14px;border-radius:4px;margin-top:6px;flex:0 0 auto}
.kal-pop-z{margin:10px 0 0 26px;font-size:13.5px}
.kal-pop-text{max-height:140px;overflow:auto;color:var(--mt)}
.kal-pop-fuss{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.kal-neu-titel{border:0;border-bottom:2px solid #1a73e8;border-radius:0;font-size:19px;padding:4px 2px;margin-bottom:6px;width:100%;background:transparent}
.kal-neu-titel:focus{outline:none}
.kal-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,80px);background:#323232;color:#fff;padding:12px 20px;border-radius:6px;font-size:13.5px;z-index:70;transition:transform .2s;box-shadow:0 3px 10px rgba(0,0,0,.25)}
.kal-toast.an{transform:translate(-50%,0)}.kal-toast.fehler{background:#b3261e}
@media (max-width:1100px){.kal{grid-template-columns:220px minmax(0,1fr)}}
@media (max-width:760px){
  .kal{grid-template-columns:1fr;height:calc(100vh - 70px);margin:0}
  .kal-seite{position:fixed;inset:56px auto 0 0;width:280px;background:var(--sf);z-index:55;box-shadow:0 8px 24px rgba(0,0,0,.25);transform:translateX(-105%);transition:transform .2s}
  .kal.seite-auf .kal-seite{transform:none}
  .kal-menu{display:grid}
  .kal-leiste{flex-wrap:wrap;padding:0 0 8px}.kal-titel{font-size:17px;flex-basis:100%;order:5;margin:4px 0 0}
  .kal-leiste .btn{padding:6px 12px}
  .kal-ansicht{margin-left:auto}
  .kal-fc{border-radius:8px}
  .kal-tasten{display:none}
}
.kal .fc-timegrid .fc-col-header-cell-cushion{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 0 6px}
.kal .kal-wt{font-size:11px;letter-spacing:.06em;color:var(--mt);text-transform:uppercase}
.kal .kal-tz{font-size:24px;line-height:44px;width:44px;height:44px;border-radius:50%;color:var(--tx);text-transform:none;letter-spacing:0;font-weight:400}
.kal .fc-col-header-cell-cushion:hover .kal-tz{background:var(--sf2)}
.kal .fc-day-today .kal-wt{color:#1a73e8;font-weight:700}
.kal .fc-day-today .kal-tz{background:#1a73e8;color:#fff}
.kal .fc-daygrid .fc-col-header-cell-cushion{text-transform:uppercase}
@media (max-width:760px){.kal .kal-tz{font-size:18px;width:34px;height:34px;line-height:34px}}
.gk-liste{margin:10px 0}.gk-farbe{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px}
.kal-typ{display:flex;gap:6px;margin:6px 0 8px}
.kal-typ button{border:0;background:none;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;color:var(--tx)}
.kal-typ button:hover{background:var(--sf2)}.kal-typ button.an{background:color-mix(in srgb,#1a73e8 14%,transparent);color:#1a73e8}
.kal-ziel{display:flex;align-items:center;gap:10px;margin:10px 0 0 0;font-size:13px;color:var(--mt)}
.kal-ziel select{flex:1;min-width:0;padding:6px 8px;font-size:13px}
.kal-cb span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Artikel-Suche „+ Artikel“ */
.art-pick{position:relative;display:inline-block}
.art-pick-pop{position:fixed;z-index:80;width:min(440px,90vw);background:var(--sf);border:1px solid var(--bd);border-radius:10px;box-shadow:0 12px 32px rgba(0,0,0,.18);padding:8px}
.art-pick-pop input{width:100%;margin-bottom:6px}
.art-pick-liste{max-height:320px;overflow-y:auto}
.art-pick-liste .ap{display:grid;grid-template-columns:1fr auto;gap:0 10px;padding:8px 10px;border-radius:6px;cursor:pointer}
.art-pick-liste .ap b{font-weight:600}.art-pick-liste .ap span{color:var(--mt);white-space:nowrap}
.art-pick-liste .ap small{grid-column:1/-1;color:var(--mt);font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.art-pick-liste .ap.on,.art-pick-liste .ap:hover{background:var(--sf2)}
.art-pick-liste .ap.leer{cursor:default;color:var(--mt)}
.pos-schnell{display:flex;align-items:center;gap:8px;flex-wrap:wrap;align-self:flex-start}
.pos-gewaehlt{font-weight:600;font-size:13px}
.pos-menge{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--mt)}.pos-menge input{width:70px}
.ls-zeile{margin:0;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.ws-kopf{flex-wrap:wrap;gap:10px}
/* Prognose */
.prognose .prog-zahlen{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:16px;margin:6px 0 4px}
.prognose .prog-zahlen>div{display:flex;flex-direction:column;gap:2px}
.prognose .prog-zahlen small{color:var(--mt);font-size:12px}.prognose .prog-zahlen b{font-size:20px}.prognose .prog-haupt b{font-size:28px;color:var(--ac)}
.prognose .prog-zahlen span{font-size:12.5px}
.prog-details{margin-top:10px;font-size:13.5px}.prog-details summary{cursor:pointer;color:var(--mt)}.prog-details p{margin:8px 0}
.bar.prog .bar-v{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--ac) 28%,transparent) 0 6px,color-mix(in srgb,var(--ac) 16%,transparent) 6px 12px);border:1px dashed color-mix(in srgb,var(--ac) 60%,transparent)}
.legende-prog{display:flex;gap:8px;align-items:center}.legende-prog span{display:inline-block;width:12px;height:12px;border-radius:3px}
.lp-ist{background:var(--ac)}.lp-prog{background:color-mix(in srgb,var(--ac) 25%,transparent);border:1px dashed var(--ac)}
@media (max-width:760px){.prognose .prog-zahlen{grid-template-columns:1fr 1fr}.prognose .prog-haupt{grid-column:1/-1}}
.monat-leiste{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 10px}.monat-titel{font-size:16px;min-width:140px;text-align:center}
.monat-leiste input[type=month]{width:auto;padding:5px 8px;font-size:13px}
/* Ampel Verbindungstest */
.wg-test{display:flex;align-items:center;gap:12px;margin-top:12px;padding:10px 12px;border:1px solid var(--bd);border-radius:10px;background:var(--sf2)}
.wg-test>div{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.wg-test small{overflow-wrap:anywhere}
.ampel{width:18px;height:18px;border-radius:50%;background:#9aa0a6;flex:0 0 auto;box-shadow:inset 0 -2px 3px rgba(0,0,0,.25)}
.ampel.gruen{background:#1e8e3e;box-shadow:0 0 10px 2px rgba(30,142,62,.55),inset 0 -2px 3px rgba(0,0,0,.2)}
.ampel.gelb{background:#f9ab00;box-shadow:0 0 10px 2px rgba(249,171,0,.5)}
.ampel.rot{background:#d93025;box-shadow:0 0 10px 2px rgba(217,48,37,.45)}
.ampel.pruefe{background:#9aa0a6;animation:ampelblink .8s infinite alternate}@keyframes ampelblink{to{opacity:.35}}

/* Wartungsverträge */
.wv-drop{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 16px;border:2px dashed var(--bd);border-radius:12px;text-align:center;transition:background .15s,border-color .15s}
.wv-drop.over{border-color:var(--bl);background:var(--bls)}
.wv-drop .row{justify-content:center;flex-wrap:wrap}.wv-drop .picker{min-width:280px;text-align:left}
.wv-wahl{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.wv-wahl .btn{cursor:pointer}
.wv-auswahl{width:100%;max-width:760px;text-align:left;background:var(--sf2);border:1px solid var(--bd);border-radius:10px;padding:10px 12px;font-size:13px}
.wv-auswahl>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wv-auswahl>div .btn{margin-left:auto}
.wv-auswahl ul{margin:8px 0 0;padding:0 0 0 18px;max-height:180px;overflow:auto;font-family:var(--mono);font-size:12px;color:var(--mt)}
.wv-fortschritt{width:100%;max-width:420px;display:flex;flex-direction:column;gap:4px;align-items:center}
.wv-balken{width:100%;height:6px;border-radius:3px;background:var(--gys);overflow:hidden}.wv-balken i{display:block;height:100%;width:0;background:var(--ac);transition:width .2s}
.wv-pos input{width:100%}.wv-pos td{padding:4px 6px}.wv-pos input.r{text-align:right}
.wv-hinweise{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13.5px}.wv-hinweise .badge{margin-right:6px;min-width:46px;justify-content:center}
.wv-kand{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.wv-pruef details summary{cursor:pointer;font-weight:600;margin:4px 0 12px}
.wv-dl{grid-template-columns:140px 1fr}
.wv-vorschau{border:1px solid var(--bd);border-radius:10px;padding:24px 28px;max-height:640px;overflow:auto;background:var(--bg2,transparent);font-size:13.5px;line-height:1.55}
.wv-doc h1{font-size:20px;margin:0 0 4px}.wv-doc h2{font-size:15px;margin:18px 0 6px}.wv-doc p{margin:0 0 6px}.wv-doc ul{margin:0 0 6px;padding-left:20px}
.wv-doc .wv-nr{color:var(--mt)}.wv-parteien,.wv-sign{width:100%;border-collapse:collapse;margin:10px 0 16px}.wv-parteien td,.wv-sign td{width:50%;vertical-align:top;padding:4px 12px 4px 0}
.wv-abs{display:flex;gap:8px;margin-bottom:4px}.wv-abs>span{flex:0 0 26px;color:var(--mt)}

/* Aufbewahrungsfristen */
.aufb-form{flex-wrap:wrap;align-items:center}.row.aufb-form>label.check{flex:1 1 320px;min-width:0;white-space:normal}.aufb-form select{width:auto}

/* Einkaufspreise (nur intern) */
.it-ek{display:flex;align-items:center;gap:8px;margin-top:3px;min-height:20px}
.ek-btn{font-size:10.5px;font-weight:700;letter-spacing:.3px;padding:1px 7px;border:1px solid var(--bd);border-radius:5px;background:transparent;color:var(--mt);cursor:pointer}
.ek-btn:hover{color:var(--tx);border-color:var(--bd2,var(--bd))}
.ek-txt,.ek-zeile{font-size:11.5px;color:var(--mt)}.ek-txt.neg,.ek-zeile.neg{color:var(--rd)}
.ek-zeile{margin-top:3px}
.ek-pop .ek-manuell{margin-top:8px;padding-top:8px;border-top:1px solid var(--bd)}.ek-pop .ek-manuell label{display:flex;align-items:center;gap:6px;flex:0 0 auto}.ek-pop .ek-m{width:90px}
.totals tr.ek-sum td{font-size:12px;color:var(--mt)}
.items-foot.ek-akt{justify-content:flex-start;gap:10px;align-items:center;border-top:1px dashed var(--bd)}
.ia-modal{position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.35);display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px}
.ia-box{width:min(900px,100%);max-height:86vh;overflow:auto;margin:0}.ia-box .ia-q{width:100%;margin-bottom:10px}
.ia-pos td{vertical-align:middle}.ia-pos .ia-menge{width:60px}.ia-aktion{justify-content:flex-end;margin-top:12px}.ia-aktion label{display:flex;align-items:center;gap:6px;flex:0 0 auto}.ia-aktion .ia-aufschlag{width:56px}
.ia-liste tr.ia-zeile{cursor:pointer}.ia-liste tr.ia-zeile:hover td{background:var(--hv,rgba(0,0,0,.03))}
.ek-lf{display:inline-block;font-size:10px;font-weight:700;padding:0 5px;border-radius:4px;margin-right:4px;vertical-align:1px;background:var(--gys);color:var(--gy)}
.ek-lf-ingram{background:var(--bls);color:var(--bl)}.ek-lf-wortmann{background:var(--ams);color:var(--am)}
.art-pick-liste .ap.ek-bester{box-shadow:inset 3px 0 0 var(--gn)}
.wm-kopf{align-items:center;margin-bottom:6px}.wm-kopf .wm-q{flex:1 1 320px}.wm-kopf label{display:flex;align-items:center;gap:6px;flex:0 0 auto}.wm-kopf .wm-auf{width:56px}
.wm-tab td{vertical-align:middle}.wm-tab .wm-menge{width:52px}.wm-tab tr.wm-fertig td{background:var(--gns)}
.art-pick-pop .wm-sprung{width:100%;margin-top:6px;justify-content:center}

.ek-lf-amazon{background:#ffe8c2;color:#8a4b00}
.lt-status{gap:6px}.lt-status>.badge{flex:0 0 auto}

.am-manuell{display:flex;gap:4px;justify-content:flex-end;margin-top:4px}.am-manuell input{width:76px;text-align:right}
.ek-pop .ek-manuell .ek-amazon{flex:0 0 auto}

/* Bezugsquelle je Position */
.ql-btn{padding:1px 5px}.ql-btn.ql-an{color:var(--bl);border-color:var(--bl)}
.ql-link{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
.ql-inp{width:100%;margin-top:4px;font-size:12.5px}
.ql-zeile a{word-break:break-all}

/* E-Mail */
.mail-layout{display:grid;grid-template-columns:220px 1fr;gap:18px;align-items:start}
@media (max-width:900px){.mail-layout{grid-template-columns:1fr}}
.mail-nav{display:flex;flex-direction:column;gap:2px;position:sticky;top:12px}
.mail-nav a{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border-radius:8px;color:var(--tx);text-decoration:none;font-size:13.5px}
.mail-nav a:hover{background:var(--hv,rgba(0,0,0,.04))}.mail-nav a.on{background:var(--rds,#fde8ea);color:var(--ak,#222d5a);font-weight:600}
.mail-nav a em{font-style:normal;font-size:11px;font-weight:700;background:var(--ak,#222d5a);color:#fff;border-radius:10px;padding:0 7px}
.mail-konto{margin:12px 10px 2px;text-transform:uppercase;letter-spacing:.4px;color:var(--mt);font-size:11px}
.mail-nav-fuss{margin-top:14px;border-top:1px solid var(--bd);padding-top:8px;display:flex;flex-direction:column;gap:2px}
.mail-kopf{justify-content:space-between;align-items:center;margin-bottom:8px}.mail-kopf h2{margin:0}
.mail-aktionen{padding:8px 12px;border-bottom:1px solid var(--bd);gap:6px;align-items:center}.mail-aktionen select.sm{padding:3px 6px;font-size:12.5px;width:auto}
.mail-tab td{vertical-align:top}.mail-tab .mail-cb{width:28px}.mail-tab .mail-wer{width:24%}.mail-tab .mail-kunde{width:16%}.mail-tab .mail-datum{width:90px}
.mail-tab tr.mail-neu td,.tbl tr.mail-neu td{font-weight:600}.mail-tab tr.mail-neu small{font-weight:400}
.mail-tab .mail-inhalt a{color:var(--tx);text-decoration:none}.mail-fahne{color:var(--rd)}
.mail-kv{grid-template-columns:80px 1fr}.mail-kv b{text-align:left;font-weight:500}
.mail-anh{display:flex;flex-wrap:wrap;gap:6px}
.mail-body-kopf{padding:8px 12px;border-bottom:1px solid var(--bd);display:flex;gap:8px;align-items:center}
.mail-frame{width:100%;min-height:300px;border:0;display:block;background:#fff}
.mail-text{white-space:pre-wrap;word-wrap:break-word;font-family:inherit;font-size:14px;line-height:1.55;padding:16px 18px;margin:0}
.mail-eingabe{font-family:inherit;font-size:14px;line-height:1.5;width:100%}
.ki-antwort input{flex:1 1 320px}.regel-zeile{gap:6px;margin-bottom:6px;align-items:center}.regel-zeile select{width:auto}.regel-zeile input{flex:1 1 200px}.regel-zeile .picker{min-width:260px}
.mail-nav-fuss a{justify-content:flex-start;gap:8px}

.kat-punkt{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px;vertical-align:0}
.kat-punkt.b-red{background:var(--rd)}.kat-punkt.b-green{background:var(--gn)}.kat-punkt.b-amber{background:var(--am)}.kat-punkt.b-blue{background:var(--bl)}.kat-punkt.b-gray{background:var(--gy)}
.vm-box{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--bd);border-radius:10px;background:var(--rds,#fde8ea)}
.vm-box audio,.vm-audio{height:34px;max-width:100%}.vm-tab td{vertical-align:middle}.vm-audio{width:260px}
.vm-transkript{flex-basis:100%;font-size:13px;margin-top:6px;line-height:1.45}.vm-transkript span{white-space:pre-wrap}.vm-tab .vm-transkript{max-width:520px}
.anruf-transkript{font-size:12.5px;color:var(--muted,#667);margin-top:3px;line-height:1.4;max-width:560px}.tbl-aktionen{padding:8px 12px;gap:8px;align-items:center;border-bottom:1px solid var(--line,#e5e7eb)}td.cb,th.cb{width:28px}form.inline{display:inline}
.sz-monatwahl{align-items:center;gap:8px;margin-bottom:12px}.sz-monatwahl input[type=month]{width:auto}
.sz-tbl td{padding-top:3px;padding-bottom:3px}.sz-tbl input,.sz-tbl select{padding:4px 6px;min-height:0;font-size:13.5px}.sz-tbl .sz-zeit{width:72px}.sz-tbl .sz-pause{width:62px}.sz-tbl .sz-k{width:64px}
.sz-tbl tr.sz-we td{background:var(--bg-soft,rgba(0,0,0,.035))}.sz-tbl tr.sz-fei td{background:rgba(34,45,90,.06)}.sz-fei-name{color:#222d5a}.sz-tbl .sz-dauer{font-variant-numeric:tabular-nums;font-weight:600}
.az-balken{height:7px;border-radius:4px;background:var(--line,#e5e7eb);overflow:hidden;min-width:90px;margin:3px 0}.az-balken span{display:block;height:100%;background:#2e9d5b}.az-balken.gross{width:260px;height:10px}
.az-pos{margin:8px 0}.az-pos a{color:inherit}.az-wochen{display:flex;flex-wrap:wrap;gap:6px}.az-position{margin-bottom:12px}.az-pos-kopf{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.az-pos-kopf span{flex:1;font-weight:600}.az-pos-kopf form{margin-left:auto}
.az-ziele{list-style:none;margin:8px 0 0;padding:0}.az-ziele li{display:flex;gap:10px;align-items:flex-start;padding:6px 0;border-top:1px solid var(--line,#eee)}.az-ziele li>div{flex:1}
.az-haken{border:0;background:none;font-size:20px;line-height:1;cursor:pointer;color:#999;padding:0 2px}.az-z-in_arbeit .az-haken{color:#d18a00}.az-z-erledigt .az-haken{color:#2e9d5b}.az-z-erledigt>div{color:var(--muted,#666)}
.az-z-nr{font-size:12px;color:var(--muted,#888);font-variant-numeric:tabular-nums}.az-notiz{display:block;width:100%;margin-top:4px;padding:3px 6px;font-size:12.5px;border:1px dashed transparent;background:transparent}.az-notiz:hover,.az-notiz:focus{border-color:var(--line,#ccc);background:var(--bg,#fff)}
.az-neu{margin-top:8px;gap:6px}.az-feld{display:grid;grid-template-columns:1fr 110px;gap:10px}.az-punkte-wahl{border:1px solid var(--line,#e5e7eb);border-radius:8px;padding:8px 12px}.az-punkte-wahl label{display:flex;margin:3px 0 3px 8px}.az-pw-kopf{font-weight:600;font-size:13px;margin-top:8px}
@media (max-width:640px){.az-feld{grid-template-columns:1fr}}
.az-haken,.az-haken-legende{display:inline-block;width:18px;height:18px;border-radius:50%;border:2px solid #9aa0a6;background:transparent;padding:0;flex:none;margin-top:2px;vertical-align:-4px}
.az-haken[data-status=in_arbeit],.az-haken-legende[data-status=in_arbeit]{border-color:#d18a00;background:linear-gradient(90deg,#d18a00 50%,transparent 50%)}
.az-haken[data-status=erledigt],.az-haken-legende[data-status=erledigt]{border-color:#2e9d5b;background:#2e9d5b url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E") center/12px no-repeat}
.az-haken-legende{width:12px;height:12px;border-width:1.5px;vertical-align:-1px}
.rechte-scroll{overflow-x:auto}.rechte-tbl th,.rechte-tbl td{vertical-align:top}.rechte-tbl .c{text-align:center;min-width:150px}.rechte-gruppe td{background:var(--bg-soft,rgba(0,0,0,.04));font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.rechte-zelle{white-space:nowrap}.rechte-zelle label{display:inline-flex;flex-direction:column;align-items:center;margin:0 2px;font-size:11px;cursor:pointer}.rechte-zelle input{margin:0}.rechte-zelle .rechte-e{margin-left:6px;color:#222d5a}.rechte-zelle.leer{opacity:.55}
.rechte-name{font-weight:600;text-align:center;padding:3px 6px}.rechte-beschr{font-size:11.5px;margin-top:3px;padding:2px 6px}.rechte-nutzer{display:block;margin-top:4px;font-weight:normal}
.rechte-tbl th input{display:block;width:100%;box-sizing:border-box;text-transform:none;letter-spacing:0}.rechte-tbl th{text-transform:none}.rechte-tbl th .rechte-nutzer{text-transform:none}
.rechte-abw td{background:rgba(209,138,0,.07)}
.kn-ok td{background:rgba(46,157,91,.05)}
tr.click td:has(> input[type=checkbox]),tr.click td.mail-cb{cursor:default}
tr.click td:has(> input[type=checkbox]) input,tr.click td.mail-cb input{cursor:pointer}
tr.click td:has(> input[type=checkbox]:only-child){width:44px;padding-left:14px;padding-right:14px}
.ml-cb{width:40px;text-align:center}.ml-leiste{position:sticky;top:8px;z-index:5;display:flex;gap:10px;align-items:center;background:var(--card,#fff);border:1px solid #222d5a;border-radius:10px;padding:8px 12px;margin-bottom:10px;box-shadow:0 4px 14px rgba(0,0,0,.08)}.ml-leiste span{font-weight:600}
.mail-nav em.muted-em{background:transparent;color:var(--muted,#888);font-weight:normal}
.mail-bausteine{gap:10px;align-items:center}.mail-bausteine select{max-width:320px}
.ordner-wahl{display:flex;gap:6px;flex-wrap:wrap}.ordner-wahl .ordner-filter{max-width:200px}.ordner-wahl select{max-width:320px}
.veeam-fehler{white-space:pre-wrap;background:rgba(34,45,90,.06);border-left:3px solid #222d5a;padding:8px 10px;margin:0;font-size:12.5px;border-radius:4px;overflow-x:auto}.veeam-warning .veeam-fehler{background:rgba(209,138,0,.08);border-color:#d18a00}.veeam-text{max-width:420px}
.veeam-bericht .row>.badge{flex:none;width:auto}
.wv-gruppe-liste{color:var(--muted,#666)}
.mail-sort{color:inherit;text-decoration:none;white-space:nowrap}.mail-sort.on{color:var(--accent,#222d5a);font-weight:700}.mail-sort:hover{text-decoration:underline}
.mail-bearb-status{background:rgba(209,138,0,.08);border-radius:8px;padding:8px 10px}.mail-bearb-status.pos{background:rgba(46,157,91,.08)}.todo-mail{margin-left:6px;text-decoration:none}

/* E-Mail: Handy-Ansicht */
.mail-nav-box>summary{display:none}
.mail-haupt{min-width:0}
@media (max-width:760px){
  .mail-layout{gap:10px}
  .mail-nav-box{background:var(--card,#fff);border:1px solid var(--bd,#e5e7eb);border-radius:10px}
  .mail-nav-box>summary{display:block;padding:10px 12px;font-weight:600;cursor:pointer;list-style:none}
  .mail-nav-box>summary::-webkit-details-marker{display:none}
  .mail-nav-box[open]>summary{border-bottom:1px solid var(--bd,#e5e7eb)}
  .mail-nav-box .mail-nav{position:static;padding:6px}
  .mail-kopf{flex-direction:column;align-items:stretch;gap:8px}
  .mail-kopf .filters{display:flex;flex-wrap:wrap;gap:6px}.mail-kopf .filters input[type=search]{flex:1 1 100%;min-width:0}
  .mail-aktionen{flex-wrap:wrap}.mail-aktionen select,.mail-aktionen .ordner-wahl{max-width:100%}.mail-aktionen .ordner-wahl .ordner-filter{max-width:120px}
  .mail-tab thead tr{display:flex;gap:14px;padding:6px 12px}.mail-tab thead th{display:block;padding:0;border:0;width:auto!important}.mail-tab thead th.mail-cb,.mail-tab thead th.hide-sm{display:none}
  .mail-tab tbody tr{display:grid;grid-template-columns:30px minmax(0,1fr) auto;grid-template-areas:"cb wer datum" "cb inhalt inhalt";column-gap:6px;padding:10px 12px;border-bottom:1px solid var(--bd,#eee)}
  .mail-tab tbody td{display:block;padding:0;border:0;width:auto!important;min-width:0}
  .mail-tab td.mail-cb{grid-area:cb;padding-top:2px}.mail-tab td.mail-wer{grid-area:wer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-tab td.mail-wer br,.mail-tab td.mail-wer br+small{display:none}
  .mail-tab td.mail-datum{grid-area:datum;text-align:right}.mail-tab td.mail-datum br{display:none}.mail-tab td.mail-datum b{margin-left:4px}
  .mail-tab td.mail-inhalt{grid-area:inhalt;margin-top:2px;overflow-wrap:anywhere}.mail-tab td.mail-inhalt small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .mail-tab td.mail-kunde{display:none}
  .vm-tab thead{display:none}.vm-tab tbody tr{display:block;padding:10px 12px;border-bottom:1px solid var(--bd,#eee)}.vm-tab tbody td{display:block;padding:2px 0;border:0;text-align:left!important}.vm-tab .vm-audio{width:100%}
  .mail-kv{grid-template-columns:64px minmax(0,1fr)}.mail-kv b,.mail-kv span{overflow-wrap:anywhere}
  .mail-body-kopf{flex-wrap:wrap}
  .page-head .actions,.page-head>div:last-child{flex-wrap:wrap}
  .ordner-wahl{flex-direction:column}.ordner-wahl .ordner-filter,.ordner-wahl select{max-width:100%;width:100%}
  .mail-bausteine{flex-wrap:wrap}.mail-bausteine select{max-width:100%;flex:1 1 100%}
}
@media (max-width:760px){
  .mail-aktionen .ordner-wahl{flex-direction:row;flex:1 1 auto}.mail-aktionen .ordner-wahl .ordner-filter{display:none}.mail-aktionen .ordner-wahl select{flex:1}
  .form-actions.sticky{padding-right:76px;flex-wrap:wrap}.form-actions.sticky small{display:none}
}
.relaunch-vergleich{display:grid;grid-template-columns:1fr 1fr;gap:12px}.relaunch-vergleich iframe{width:100%;height:520px;border:1px solid var(--bd,#ddd);border-radius:8px;background:#fff}@media (max-width:760px){.relaunch-vergleich{grid-template-columns:1fr}.relaunch-vergleich iframe{height:420px}}
.ki-tage{display:flex;gap:4px;align-items:flex-end;height:120px}.ki-tage div{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end}.ki-tage span{display:block;width:100%;background:#222d5a;border-radius:3px 3px 0 0;min-height:2px}.ki-tage small{font-size:10px;color:var(--mt,#888)}

/* Mail-Liste: Kunde für mehrere E-Mails zuordnen */
.mail-kunde-wahl{display:inline-block;position:relative}.mail-kunde-wahl .picker-q{padding:4px 8px;font-size:12.5px;height:auto}

/* Telefonanlage: Hinweis nach Klick-zum-Anrufen */
#pbx-hinweis{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:80;max-width:min(560px,calc(100vw - 32px));background:var(--sf);border:1px solid var(--bd2);border-left:4px solid var(--gn);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.18);padding:12px 16px;font-size:14px;display:none}
#pbx-hinweis.show{display:block}#pbx-hinweis.err{border-left-color:var(--rd,#b5110f)}
[data-softphone]{position:relative}[data-softphone]::after{content:'';position:absolute;right:5px;top:5px;width:8px;height:8px;border-radius:50%;background:#b3b3b3}[data-softphone].sp-an::after{background:#1a9b4b}[data-softphone].sp-gespraech::after{background:#e0a100}
/* ---- E-Learning ---- */
.el-kicker{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mf,var(--pr,#b5110f));margin:0 0 6px}
.el-hero{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:start}.el-titel{font-size:26px;margin:0 0 4px}
.el-stand{display:flex;flex-direction:column;gap:8px;background:var(--bg2,rgba(0,0,0,.03));border-radius:12px;padding:16px}.el-stand b{font-size:34px;line-height:1}
.el-balken{height:8px;border-radius:99px;background:rgba(127,127,127,.18);overflow:hidden}.el-balken span{display:block;height:100%;background:var(--gn,#1a9b4b);border-radius:99px}
.el-module{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-top:18px}
.el-modul{position:relative;display:flex;flex-direction:column;gap:6px;padding:18px 18px 16px;border-radius:14px;background:var(--sf);border:1px solid var(--bd);border-top:5px solid var(--mf);text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}
.el-modul:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.08)}
.el-nr{position:absolute;right:14px;top:10px;font-size:30px;font-weight:800;color:var(--mf);opacity:.25}
.el-icon{font-size:26px}.el-icon.big{font-size:44px}.el-ziel{font-size:13.5px;color:var(--mut,#666);flex:1}
.el-karten{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:12px;align-items:start}
.el-karte summary{cursor:pointer;list-style:none}.el-karte summary::after{content:'＋';float:right;opacity:.5}.el-karte[open] summary::after{content:'－'}
.el-modulkopf{display:flex;gap:20px;align-items:center;border-left:5px solid var(--mf)}.el-zielgross{font-size:18px;margin:0 0 10px}
.el-liste{list-style:none;margin-top:16px;padding:0}.el-liste li a{display:grid;grid-template-columns:34px 1fr auto;gap:14px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--bd);text-decoration:none;color:inherit}
.el-liste li a:hover{background:rgba(127,127,127,.06)}.el-liste small{display:block}
.el-haken{width:26px;height:26px;border-radius:50%;border:2px solid var(--bd2,#ccc);display:grid;place-items:center;font-weight:800;color:#fff}.el-liste li.ok .el-haken{background:var(--gn,#1a9b4b);border-color:var(--gn,#1a9b4b)}
.el-meta{font-size:12.5px;color:var(--mut,#666);text-align:right}
.el-lektion{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:16px}
.el-md{line-height:1.7;font-size:15.5px}.el-md h1,.el-md h2{font-size:21px;margin:26px 0 8px;padding-top:4px;border-top:1px solid var(--bd)}.el-md h1:first-of-type,.el-md h2:first-of-type{border-top:0}
.el-md h3{font-size:17px;margin:18px 0 6px}.el-md ul,.el-md ol{padding-left:22px}.el-md li{margin:3px 0}
.el-md blockquote{border-left:4px solid var(--mf,var(--pr));margin:14px 0;padding:6px 14px;background:rgba(127,127,127,.06);border-radius:0 8px 8px 0}
.el-md table{border-collapse:collapse;width:100%;font-size:14px;margin:12px 0}.el-md th,.el-md td{border:1px solid var(--bd);padding:7px 9px;text-align:left}.el-md th{background:rgba(127,127,127,.08)}
.el-md code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;background:rgba(127,127,127,.12);padding:1px 5px;border-radius:5px}
.el-md pre{position:relative;background:#0f172a;color:#e2e8f0;border-radius:10px;padding:16px 14px;overflow:auto;font-size:13.5px;line-height:1.55}.el-md pre code{background:none;padding:0;color:inherit;white-space:pre-wrap;word-break:break-word}
.el-kopieren{position:absolute;top:8px;right:8px;font-size:12px;padding:4px 10px;border-radius:6px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#e2e8f0;cursor:pointer}
.hljs-keyword,.hljs-selector-tag,.hljs-built_in{color:#c792ea}.hljs-string,.hljs-attr{color:#a5d6a7}.hljs-number,.hljs-literal{color:#f78c6c}.hljs-comment{color:#7f8ea3;font-style:italic}.hljs-title,.hljs-function{color:#82aaff}.hljs-variable,.hljs-template-variable{color:#ffcb6b}.hljs-meta{color:#89ddff}
.el-quiz fieldset{border:1px solid var(--bd);border-radius:10px;padding:12px 14px;margin:0 0 12px}.el-quiz legend{font-weight:700;padding:0 4px}
.el-quiz .richtig{border-color:var(--gn,#1a9b4b);background:rgba(26,155,75,.06)}.el-quiz .falsch{border-color:#c62828;background:rgba(198,40,40,.05)}
.el-quiz label.loesung{font-weight:700}.el-erkl{margin:8px 0 0;font-size:14px}
.el-abschluss{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.el-nav{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.el-editor{display:grid;grid-template-columns:1fr 1fr;gap:16px}.el-editor textarea{width:100%;font-size:13px}
@media(max-width:860px){.el-hero,.el-editor{grid-template-columns:1fr}.el-modulkopf{flex-direction:column;align-items:flex-start}.el-nav .btn{width:100%;text-align:center}}
.el-md h2,.el-md h3,.el-md h4{text-transform:none;letter-spacing:0;color:inherit;font-weight:700}.el-md h3{font-size:17px}
/* ---- Kampagnen ---- */
.kp-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.kp-card{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:inherit}.kp-card:hover{box-shadow:0 6px 18px rgba(0,0,0,.07)}
.row.between{justify-content:space-between;align-items:center}
.kp-zahlen{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:var(--mut,#666)}.kp-zahlen b{font-size:17px;color:var(--tx,inherit)}
.kp-kopf{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center}
.kp-board{overflow-x:auto}.kp-board .col-b{min-width:210px}
.kp-stufe{border:1px solid var(--bd);border-radius:10px;padding:12px 14px;margin:0 0 12px}.kp-stufe legend{font-weight:700;padding:0 6px}
.kp-stufe textarea{width:100%;font-family:inherit}
.kp-pre{white-space:pre-wrap;background:rgba(127,127,127,.07);border-radius:8px;padding:12px;font-family:inherit;font-size:14px}
/* ---- Kampagnen: Ablauf-Editor ---- */
.kf{display:grid;grid-template-columns:1fr 340px;gap:16px;align-items:start}
.kf-canvas{position:relative;overflow:auto;min-height:420px;background:repeating-linear-gradient(0deg,transparent 0 19px,rgba(127,127,127,.08) 19px 20px),repeating-linear-gradient(90deg,transparent 0 19px,rgba(127,127,127,.08) 19px 20px);border:1px solid var(--bd);border-radius:12px;touch-action:none}
.kf-svg{position:absolute;left:0;top:0;pointer-events:none;color:var(--mut,#71717a)}
.kf-kante{fill:none;stroke:currentColor;stroke-width:2}.kf-kante.kf-ja{stroke:#16a34a;color:#16a34a}.kf-kante.kf-nein{stroke:#dc2626;color:#dc2626}
.kf-label{font-size:11px;fill:var(--tx,#18181b);paint-order:stroke;stroke:var(--sf,#fff);stroke-width:4px;font-weight:600}
.kf-node{position:absolute;width:230px;min-height:86px;box-sizing:border-box;padding:8px 12px;border-radius:10px;background:var(--sf,#fff);border:1px solid var(--bd);border-left:5px solid #2563eb;box-shadow:0 2px 8px rgba(0,0,0,.06);cursor:grab;user-select:none;display:flex;flex-direction:column;gap:2px}
.kf-node:active{cursor:grabbing}.kf-node.aktiv{outline:3px solid var(--pr,#b5110f);outline-offset:1px}
.kf-node.start{box-shadow:0 0 0 2px #16a34a33,0 2px 8px rgba(0,0,0,.06)}
.kf-node b{font-size:14px;line-height:1.3}.kf-node small{font-size:12px;color:var(--mut,#71717a);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kf-h{display:flex;justify-content:space-between;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--mut,#71717a)}
.kf-anz{background:var(--pr,#b5110f);color:#fff;border-radius:99px;padding:0 7px}
.kf-aufgabe{border-left-color:#ca8a04}.kf-bedingung{border-left-color:#7c3aed}.kf-ende{border-left-color:#475569}
.kf-panel{position:sticky;top:12px;border:1px solid var(--bd);border-radius:12px;padding:14px;background:var(--sf,#fff);max-height:calc(100vh - 40px);overflow:auto}
.kf-panel textarea{width:100%;font-family:inherit}
.kf-tools{flex-wrap:wrap;gap:6px}
@media(max-width:960px){.kf{grid-template-columns:1fr}.kf-panel{position:static;max-height:none}}
/* ---- Kampagnen: Mail-Baukasten ---- */
.kd{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.kd-vorschau{position:sticky;top:12px}
.kd-frame{width:640px;max-width:100%;height:75vh;border:1px solid var(--bd);border-radius:10px;background:#fff;display:block;margin:10px auto 0;transition:width .2s}
.kd-frame.klein{height:420px;width:100%}
.kd-liste{display:flex;flex-direction:column;gap:10px;margin:12px 0}
.kd-block{border:1px solid var(--bd);border-radius:10px;padding:10px 12px;background:rgba(127,127,127,.03)}
.kd-bh{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.kd-block textarea,.kd-block input:not([type=file]){width:100%}
.kd-bild{display:flex;gap:12px;align-items:center;margin-bottom:6px}.kd-bild img{width:120px;height:80px;object-fit:cover;border-radius:6px;border:1px solid var(--bd)}
.kd-add{flex-wrap:wrap;gap:6px}
.kp-mailbox{flex-wrap:wrap;gap:6px}
@media(max-width:1100px){.kd{grid-template-columns:1fr}.kd-vorschau{position:static}}
.kd-block.fokus{border-color:var(--pr,#b5110f);box-shadow:0 0 0 2px rgba(181,17,15,.12)}
/* ---- Umfragen ---- */
.uf-gross{font-size:34px;font-weight:800;margin:8px 0}.uf-stern{color:#f59e0b}
.uf-bar{display:grid;grid-template-columns:minmax(60px,35%) 1fr 32px;gap:8px;align-items:center;font-size:13px;margin:4px 0}
.uf-bar i{display:block;height:10px;border-radius:99px;background:var(--pr,#b5110f);min-width:2px}.uf-bar b{text-align:right}
.it-akt{white-space:nowrap}.it-akt .icon-btn+.icon-btn{margin-left:2px}
tr.item.kopiert td{background:rgba(26,155,75,.10);transition:background .8s}
.kpi .kpi-brutto{display:block;font-size:14px;font-weight:600;color:var(--tx,inherit);opacity:.8;margin:-2px 0 2px}
/* Suchvorschau */
form.search{position:relative}
.gs-vorschau{position:absolute;left:0;right:0;top:calc(100% + 6px);background:var(--sf,#fff);border:1px solid var(--bd);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.14);max-height:min(70vh,560px);overflow:auto;z-index:60;padding:6px}
.gs-vorschau a{display:flex;flex-direction:column;gap:1px;padding:7px 10px;border-radius:8px;text-decoration:none;color:inherit}
.gs-vorschau a small{color:var(--mut,#71717a);font-size:12px}
.gs-vorschau a:hover,.gs-vorschau a.akt{background:rgba(181,17,15,.08)}
.gs-gruppe{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--mut,#71717a);padding:8px 10px 2px}
.gs-alle{border-top:1px solid var(--bd);margin-top:4px;font-weight:600}.gs-leer{padding:12px;color:var(--mut,#71717a)}
[data-live-ergebnis].laedt{opacity:.55;transition:opacity .15s}

/* Rechnung: uneinbringliche Forderung */
details.unein > summary { list-style: none; cursor: pointer; }
details.unein > summary::-webkit-details-marker { display: none; }
details.unein[open] > summary { margin-bottom: .6rem; }
.unein-info { border-left: 3px solid var(--red, #c62828); background: color-mix(in srgb, var(--red, #c62828) 8%, transparent); padding: .6rem .75rem; border-radius: 6px; }
.unein-info p { margin: .4rem 0 0; }

/* Belegliste: Zeitraum-Leiste (Woche/Monat/von–bis) + Aktionsspalte vorn */
.zeitraum-leiste{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 10px}
.zeitraum-leiste .zr-schnell{display:inline-flex;gap:4px;flex-wrap:wrap}
.zeitraum-leiste .zr-schnell .btn.ghost{border:1px solid var(--bd);background:var(--sf)}.zeitraum-leiste .zr-schnell .btn.ghost:hover{border-color:var(--bd2)}
.zeitraum-leiste .zr-bereich{display:inline-flex;align-items:center;gap:4px}
.zeitraum-leiste input[type=date],.zeitraum-leiste input[type=month]{width:auto;max-width:150px;padding:5px 8px;font-size:13px}
.zeitraum-leiste .monat-titel small{font-weight:400;font-size:12px}
.tbl th.aktionen-sp,.tbl td.aktionen-sp{width:56px;padding-right:0;white-space:nowrap}
.tbl td.aktionen-sp .icon-btn{vertical-align:middle}.tbl td.aktionen-sp .icon-btn:hover{background:var(--bg2,rgba(0,0,0,.06));color:var(--tx)}
.icon-btn.leer{visibility:hidden}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:640px){.zeitraum-leiste .zr-bereich{flex:1 1 100%}.zeitraum-leiste .zr-bereich input{flex:1;max-width:none}}
.tbl td.aktionen-sp+td{white-space:nowrap}.tbl th.aktionen-sp{padding-left:0}

/* Mahnwesen: Filter + sortierbare Spalten */
.mahn-filter{margin:0;padding-top:0}.mahn-filter input[type=search]{min-width:260px}
.tbl th a.sortlink{color:inherit;text-decoration:none;white-space:nowrap}.tbl th a.sortlink.on{color:var(--ac)}
.mahn-kd{color:inherit}.mahn-kd:hover{color:var(--ac);text-decoration:underline}

/* Menü: zuklappbare Bereiche */
button.nav-sec{display:flex;align-items:center;gap:6px;width:100%;border:0;background:none;cursor:pointer;font:inherit;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--mt);padding:14px 10px 4px;text-align:left;border-radius:6px}
button.nav-sec:hover{color:var(--tx)}
button.nav-sec>span{flex:1}
button.nav-sec .nav-pfeil{transition:transform .15s;opacity:.7}
button.nav-sec.zu .nav-pfeil{transform:rotate(-90deg)}
button.nav-sec.zu+.nav-grp{display:none}
button.nav-sec .nav-sec-cnt:empty{display:none}
button.nav-sec .nav-sec-cnt{font-style:normal;letter-spacing:0;text-transform:none}

/* Bankabgleich (Vorschau) */
.bank-upload .row{gap:10px;flex-wrap:wrap;align-items:center}
.bank-tbl td{vertical-align:top}.bank-zweck{display:block;max-width:420px;word-break:break-word}
.bank-re{font-size:13px;margin-top:3px}
.bank-re{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 10px;padding:4px 0;border-top:1px dashed var(--bd)}.bank-re:first-of-type{border-top:0}
.bank-akt{display:inline-flex;gap:6px;align-items:center;white-space:nowrap}
.bank-rueck{border-left:3px solid var(--red,#c62828)}

/* Positionen: Brutto→Netto-Umrechnung am Einzelpreis */
.ep-feld{display:flex;gap:3px;align-items:center}.ep-feld input{min-width:0}
.ep-bn{flex:none;border:1px solid var(--bd);background:var(--sf);color:var(--mt);border-radius:6px;font-size:10.5px;padding:3px 4px;cursor:pointer;line-height:1.2}
.ep-bn:hover{color:var(--tx)}.ep-bn.an{background:var(--acs);color:var(--ac);border-color:var(--ac)}
.ep-brutto{display:block;font-size:11px;color:var(--ac);margin-top:2px}.ep-brutto:empty{display:none}
.sz-tbl .sz-zweit{display:block;margin-top:3px}.sz-tbl .sz-zweit[hidden]{display:none}
.sz-plus{border:1px solid var(--bd);background:var(--sf);color:var(--mt);border-radius:5px;width:20px;height:20px;line-height:16px;padding:0;font-size:13px;cursor:pointer;vertical-align:middle}
.sz-plus:hover{color:var(--tx)}.sz-plus.an{background:var(--acs);color:var(--ac);border-color:var(--ac)}

/* Listen: Auswahl über Seiten + Einträge je Seite */
.auswahl-info{display:inline-flex;align-items:center;gap:6px;background:var(--acs);color:var(--ac);border-radius:8px;padding:2px 4px 2px 10px;font-size:13px}
.pager-leiste{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:10px}.pager-leiste .pager{margin:0}
.pro-seite{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--mt);margin-left:auto}.pro-seite select{width:auto;padding:4px 8px}


/* Menü: schmale Symbolleiste (Knopf oben links oder Taste „[“, wird gemerkt); beim Überfahren klappt sie vorübergehend auf */
.side{transition:width .18s ease}
@media (min-width:861px){
  html.side-mini{--side:68px}
  html.side-mini .side:not(:hover) .brand{justify-content:center;padding:18px 0 14px}
  html.side-mini .side:not(:hover) .brand-logo,html.side-mini .side:not(:hover) .brand-tag{display:none}
  html.side-mini .side:not(:hover) .mini-only{display:inline-grid}
  html.side-mini .side:not(:hover) nav{padding:4px 8px 12px}
  html.side-mini .side:not(:hover) nav a{justify-content:center;position:relative;padding:9px 0}
  html.side-mini .side:not(:hover) nav a>span{display:none}
  html.side-mini .side:not(:hover) nav a .cnt{position:absolute;top:1px;right:4px;min-width:16px;padding:0 4px;font-size:10px;margin:0;text-align:center;line-height:16px}
  html.side-mini .side:not(:hover) button.nav-sec{height:12px;padding:0;margin:8px 10px;border:0;border-top:1px solid var(--bd);border-radius:0;pointer-events:none;width:auto}
  html.side-mini .side:not(:hover) button.nav-sec>*{display:none}
  html.side-mini button.nav-sec.zu+.nav-grp{display:block}
  html.side-mini .side:not(:hover) .side-foot{flex-direction:column;padding:10px 4px}
  html.side-mini .side:not(:hover) .me{justify-content:center;flex:none}
  html.side-mini .side:not(:hover) .me span:last-child,html.side-mini .side:not(:hover) .side-foot form{display:none}
  html.side-mini .side:hover{width:244px;margin-right:-176px;box-shadow:10px 0 24px rgba(0,0,0,.18)}
}

/* Förderportal: kompakte Tabelle, volle Breite */
.fp-wide .content{max-width:none}
.fp-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.fp-bar input[type=text],.fp-bar input:not([type]){width:auto;flex:1 1 220px;max-width:340px}
.fp-bar input[type=number]{width:72px}
.fp-bar select{width:auto}
.fp-grund{width:100%!important;max-width:340px!important;flex:1 1 260px!important}
.fp-tbl th,.fp-tbl td{padding:8px 10px;vertical-align:top}
.fp-tbl td small{display:block;line-height:1.35}
.fp-tbl .fp-name{font-weight:600;color:var(--tx)}
.fp-tbl select{width:100%;max-width:215px;padding:4px 24px 4px 8px;font-size:13px;margin-top:3px}
.fp-tbl .fp-grund-text{max-width:240px;overflow-wrap:anywhere}
.fp-tbl .fp-ek{white-space:nowrap}
.fp-tbl .fp-links{margin-top:3px}.fp-tbl .fp-links a{font-size:12px;color:var(--ac)}
details.fp-info>summary{cursor:pointer;font-weight:600;list-style:none}
details.fp-info>summary::before{content:"▸ ";color:var(--mt)}details.fp-info[open]>summary::before{content:"▾ "}


/* E-Mail-Warteschlange: kompakte Zeilen, Text umbrochen, Aktionen immer sichtbar */
.ws-kopf{position:sticky;top:57px;z-index:6;background:var(--sf);border-bottom:1px solid var(--bd)}
.ws-tbl{table-layout:fixed}
.ws-tbl th:nth-child(1){width:34px}.ws-tbl th:nth-child(2){width:21%}.ws-tbl th:nth-child(3){width:19%}.ws-tbl th:nth-child(5){width:120px}.ws-tbl th:last-child{width:148px}
.ws-tbl td{vertical-align:top;overflow-wrap:anywhere}
.ws-tbl .ws-aktion{white-space:nowrap}
.ws-tbl .ws-vorschau{margin-top:2px;line-height:1.4}
.ws-tbl details.ws-text{margin-top:4px}
.ws-tbl details.ws-text>summary{cursor:pointer;color:var(--ac);list-style:none}
.ws-tbl details.ws-text>summary::-webkit-details-marker{display:none}
.ws-tbl details.ws-text>summary::before{content:"▸ "}
.ws-tbl details.ws-text[open]>summary::before{content:"▾ "}
.ws-tbl details.ws-text pre{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font-size:13px;line-height:1.55;font-family:inherit;margin:6px 0 0;padding:12px 14px;background:var(--sf2);border:1px solid var(--bd);border-radius:8px;max-height:360px;overflow:auto}
@media (max-width:860px){.ws-tbl{table-layout:auto}.ws-kopf{top:49px}}

.card.flush.ws-card{overflow:visible}
.ws-card>.ws-kopf{border-radius:12px 12px 0 0}
.ws-card .ws-tbl thead th:first-child{border-top-left-radius:0}

/* Warteschlange: Verlauf kompakt (eine Zeile je Eintrag, Filter, „Mehr anzeigen“) */
.vl-kopf{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.vl-filter{gap:6px;flex-wrap:wrap;align-items:center}
.vl-f.on{background:var(--acs);color:var(--ac);border-color:var(--ac)}
.vl-suche{width:230px!important;padding:5px 10px;font-size:13px}
.vl-tbl{table-layout:fixed}
.vl-tbl th,.vl-tbl td{padding:6px 12px;vertical-align:top}
.vl-tbl .vl-betreff{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vl-tbl .vl-betreff small{white-space:normal;display:block}
.vl-tbl .vl-mail{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vl-ok{color:var(--ok,#1a9d52);font-size:12.5px;white-space:nowrap}
.vl-fuss{padding:10px 14px;border-top:1px solid var(--bd);display:flex;gap:10px;align-items:center}
@media (max-width:860px){.vl-tbl{table-layout:auto}.vl-suche{width:100%!important}}

/* Förderanträge: kompakte Tabelle */
.fa-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin:6px 0 10px}
.fa-bar input[type=search]{padding:6px 10px;font-size:13px}
.fa-tbl th,.fa-tbl td{padding:9px 12px;vertical-align:top}
.fa-tbl td small{display:block;line-height:1.35}
.fa-tbl select.fa-quick{display:block;margin-top:5px;max-width:200px;padding:3px 24px 3px 8px;font-size:12.5px}
.fa-tbl .fa-zeit{white-space:nowrap;font-size:13px}
.fa-tbl .amber{color:#d97706}
@media (max-width:860px){.fa-bar input[type=search]{width:100%!important}}
.todo-sort{gap:6px;align-items:center;flex-wrap:wrap;margin:0 0 10px}
.empf-wahl{display:flex;flex-direction:column;gap:6px}
.empf-wahl label.check{align-items:flex-start;gap:8px;line-height:1.25}
.empf-wahl label.check input{margin-top:3px}
.b-purple{background:#efe7fb;color:#6a3bb5}
.todo-st.st-wartet{color:#6a3bb5}
.todo-letzt{display:block;margin-top:3px;font-size:12px;color:var(--mt);text-decoration:none;line-height:1.35}
.todo-letzt:hover{color:var(--tx)}.todo-letzt em{font-style:normal;opacity:.75}
.todo-verlauf{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.todo-verlauf li{display:flex;gap:10px;align-items:flex-start}
.tv-sym{flex:0 0 26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--bg2,#f1f3f6);font-size:13px}
.tv-teilweise .tv-sym{background:#fff1d6;color:#a66300}.tv-wartet .tv-sym{background:#efe7fb;color:#6a3bb5}
.tv-status{opacity:.7}.tv-status div div{font-size:13px}

.art-pick-liste .ap-kopf{padding:8px 10px 4px;margin-top:4px;border-top:1px solid var(--bd);font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--mt)}.art-pick-liste .ap-kopf small{text-transform:none;letter-spacing:0;font-weight:400;margin-left:6px}
/* Mail-Liste: nie breiter als die Karte (lange Wörter/Unterstrich-Linien in der Vorschau brechen um) */
.mail-tab:not(.vm-tab){table-layout:fixed;width:100%}
.mail-tab td.mail-inhalt{overflow-wrap:anywhere;min-width:0}.mail-tab td.mail-wer{overflow-wrap:anywhere}
.mail-tab:not(.vm-tab) thead th:nth-child(1){width:36px}.mail-tab:not(.vm-tab) thead th:nth-child(2){width:22%}.mail-tab:not(.vm-tab) thead th:nth-child(4){width:15%}.mail-tab:not(.vm-tab) thead th:nth-child(5){width:96px}
/* Besprechungseinladung in E-Mails */
.einl-box{border:1px solid var(--bd);border-left:4px solid var(--bl);border-radius:10px;padding:12px 14px;display:grid;gap:8px;background:var(--sf2)}
.einl-box.einl-abgesagt{border-left-color:var(--rd)}
.einl-kopf{display:flex;align-items:center;gap:6px;color:var(--bl)}.einl-abgesagt .einl-kopf{color:var(--rd)}
.einl-daten{display:grid;gap:2px}.einl-abgesagt .einl-daten b{text-decoration:line-through}
.einl-aktion{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0}
.einl-kol{color:var(--am)}.einl-kol a{color:inherit;text-decoration:underline}

/* ---- E-Mail wie Roundcube: Lesebereich, Drag & Drop, Editor, Ordnerverwaltung ---- */
.content:has(.mail-layout){max-width:none}
/* Lesebereich unter der Liste (wie Roundcube „Liste oben, Vorschau unten“) */
.mail-layout.mit-vorschau{grid-template-columns:210px minmax(0,1fr)}
.mail-layout.mit-vorschau .mail-vorschau{grid-column:2}
.mail-layout.mit-vorschau [data-mail-liste]{max-height:44vh;overflow:auto}
.mail-layout.mit-vorschau [data-mail-liste] .mail-aktionen{position:sticky;top:0;z-index:3;background:var(--sf)}
.mail-layout.mit-vorschau .mail-tab .mail-inhalt small{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.mail-layout.mit-vorschau .mail-tab td{padding-top:6px;padding-bottom:6px}
.mail-vorschau{height:max(480px,calc(100vh - 44vh - 150px));background:var(--sf);border:1px solid var(--bd);border-radius:12px;overflow:hidden;display:flex}
.mail-vorschau iframe{flex:1;border:0;width:100%;height:100%;background:transparent}
.mail-vorschau-leer{margin:auto;text-align:center;padding:20px;line-height:1.8}
.mail-tab tr.aktiv td{background:var(--acs)!important}
.mail-tab tr.aktiv td:first-child{box-shadow:inset 3px 0 0 var(--ac)}
.mail-tab tr.ziehen{opacity:.45}
.mail-nav a.drop-ok{outline:2px dashed var(--ac);outline-offset:-2px;background:var(--acs)}
.mail-stern{border:0;background:none;padding:0 2px;cursor:pointer;color:var(--mt);font-size:14px;line-height:1;opacity:.45}
.mail-stern:hover{opacity:1}.mail-stern.on{color:var(--rd);opacity:1}
.mail-ansicht{margin-left:auto;display:inline-flex;gap:4px;align-items:center}
.mail-ansicht .on{background:var(--acs);color:var(--ac)}
@media (max-width:899px){.mail-ansicht [data-vorschau-schalter]{display:none}}
.mail-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--tx);color:var(--bg);padding:9px 16px;border-radius:9px;font-size:13.5px;z-index:9999;box-shadow:0 6px 24px rgba(0,0,0,.25);max-width:90vw}
.mail-toast.err{background:var(--rd);color:#fff}
.mail-tasten{position:fixed;inset:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:9998}
.mail-tasten>div{background:var(--sf);color:var(--tx);border-radius:14px;padding:20px 24px;max-width:460px;width:92vw;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.mail-tasten table{width:100%;border-collapse:collapse;font-size:13.5px}.mail-tasten td{padding:4px 6px;border-bottom:1px solid var(--bd)}
.mail-tasten kbd{display:inline-block;min-width:22px;text-align:center;padding:1px 6px;border:1px solid var(--bd2);border-bottom-width:2px;border-radius:5px;font:12px/1.4 ui-monospace,monospace;background:var(--bg)}
/* Lesebereich (eigene Seite im iframe) */
.mv-body{margin:0;padding:0;background:var(--sf);min-height:100vh}
.mv-leiste{position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;gap:5px;padding:8px 12px;border-bottom:1px solid var(--bd);background:var(--sf)}
.mv-leiste a:last-child{margin-left:auto}
.mv-kopf{padding:12px 16px 8px;border-bottom:1px solid var(--bd)}
.mv-kopf h2{margin:0 0 6px;font-size:17px;line-height:1.3}
.mv-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13.5px}
.mv-kopf .mail-anh{margin-top:8px}
.mv-bilder{padding:4px 16px;font-size:12px}
.mv-frame{display:block;width:100%;border:0;min-height:300px}
.mv-text{padding:14px 16px;margin:0;white-space:pre-wrap}
/* Editor */
.mail-editor-leiste{gap:8px;align-items:center;flex-wrap:wrap}
.seg button{border:0;background:none;padding:5px 12px;border-radius:6px;font-size:13px;color:var(--mt);cursor:pointer}
.seg button.on{background:var(--acs);color:var(--ac);font-weight:600}
.mail-fmt{display:inline-flex;flex-wrap:wrap;gap:3px;align-items:center}
.mail-fmt button{border:1px solid var(--bd2);background:var(--sf);color:var(--tx);border-radius:6px;min-width:30px;height:30px;padding:0 7px;cursor:pointer;font-size:13px}
.mail-fmt button:hover{background:var(--acs)}
.mail-fmt select{height:30px;padding:2px 6px;width:auto;font-size:12.5px}
.mail-fmt input[type=color]{width:34px;height:30px;padding:2px;border-radius:6px}
.mail-editor{min-height:340px;max-height:70vh;overflow:auto;border:1px solid var(--bd2);border-radius:9px;padding:12px 14px;font-size:14px;line-height:1.5;background:var(--sf);color:var(--tx);outline:none}
.mail-editor:focus{border-color:var(--ac);box-shadow:0 0 0 3px var(--acs)}
.mail-editor blockquote{margin:6px 0;padding:2px 0 2px 12px;border-left:3px solid var(--bd2);color:var(--mt)}
.mail-editor p{margin:0 0 .6em}
.mail-ccbcc-links{position:absolute;right:10px;top:2px;font-size:12px;display:flex;gap:8px}
label.f.span2{position:relative}
.ac-liste{position:absolute;z-index:50;background:var(--sf);border:1px solid var(--bd2);border-radius:9px;box-shadow:0 10px 30px rgba(0,0,0,.15);padding:4px;min-width:280px;max-width:480px}
.ac-liste div{padding:6px 10px;border-radius:6px;cursor:pointer;font-size:13.5px;display:flex;justify-content:space-between;gap:12px}
.ac-liste div small{color:var(--mt);white-space:nowrap}
.ac-liste div.on,.ac-liste div:hover{background:var(--acs)}
/* Ordnerverwaltung */
.mo-tab td{vertical-align:middle}.mo-umbenennen{display:inline-block;position:relative}.mo-umbenennen>summary{list-style:none;display:inline-flex}.mo-umbenennen>summary::-webkit-details-marker{display:none}
.mo-umbenennen[open] form{position:absolute;right:0;top:110%;z-index:5;background:var(--sf);border:1px solid var(--bd2);border-radius:9px;padding:8px;box-shadow:0 8px 24px rgba(0,0,0,.15);flex-wrap:nowrap}
.mo-umbenennen form input{width:200px}
@media print{.mail-vorschau{display:none}}
.mail-editor-leiste .seg{flex:0 0 auto}
.tbl-scroll{overflow-x:auto}
.mahn-tab .mahn-st{text-align:center;font-size:12.5px;width:92px}
.mahn-tab td{vertical-align:middle}
.mahn-cb{width:30px}
.mahn-leiste{gap:8px;align-items:center;border-bottom:1px solid var(--bd);flex-wrap:wrap}
.mahn-leiste button:disabled{opacity:.45;cursor:not-allowed}
.pdf-dialog{width:min(980px,96vw);height:92vh;max-height:92vh;padding:0;border:0;border-radius:14px;background:var(--sf);color:var(--tx);box-shadow:0 30px 80px rgba(0,0,0,.35);overflow:hidden}
.pdf-dialog[open]{display:flex;flex-direction:column}
.pdf-dialog::backdrop{background:rgba(0,0,0,.45)}
.pdf-dialog-kopf{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--bd)}
.pdf-dialog-kopf span{display:flex;gap:6px;align-items:center}
.pdf-dialog iframe{flex:1;width:100%;border:0;background:#525659}
a.mahn-pdf{color:inherit;text-decoration:underline dotted;text-underline-offset:3px}
a.mahn-pdf:hover,a.badge.b-amber:hover{color:var(--ac)}
.mahn-trenner{width:1px;height:20px;background:var(--bd2);margin:0 4px}
.mahn-kdnr{font-size:12px;color:var(--mt);white-space:nowrap;margin-left:2px}.mahn-kdnr::before{content:"· Kd.-Nr. "}
.gs-re{display:flex;flex-direction:column;gap:6px;margin-top:6px}.gs-re p{margin:0}.gs-ok{color:var(--gn)}
.mahn-bez{margin-right:6px}
.mail-layout.mit-vorschau .mail-nav-box{grid-row:1 / span 2}
/* Eingangsbelege */
.eb-detail{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,1fr);gap:16px;align-items:start}
.eb-vorschau{position:sticky;top:70px;min-height:300px;overflow:hidden}
.eb-frame{width:100%;height:calc(100vh - 120px);min-height:520px;border:0;display:block;background:#525659}
.eb-bild{display:block;max-width:100%;max-height:calc(100vh - 120px);margin:0 auto}
.eb-xml{margin:0;padding:14px;max-height:calc(100vh - 120px);overflow:auto;font-size:11px}
.eb-kand{justify-content:space-between;flex-wrap:nowrap;padding:8px 0;border-top:1px solid var(--bd)}.eb-kand>div{font-size:13px}
.eb-vorlagen{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.eb-vorlage{display:flex;flex-direction:column;gap:4px;margin:0;color:var(--tx)}.eb-vorlage:hover{border-color:var(--ac);color:var(--tx)}
.eb-vorlage.eb-da{opacity:.6}
.eb-mini-upload{display:inline}
.eb-oben .card{margin:0}
@media (max-width:1000px){.eb-detail{grid-template-columns:1fr}.eb-vorschau{position:static}.eb-frame{height:70vh}}

/* ---- Team-Chat ---- */
.content:has(.team-app){max-width:none;padding:12px 16px 12px}
.content:has(.team-app)>.page-head{display:none}
body:has(.team-app) .ki-fab{bottom:28px;right:auto;left:calc(var(--side) + 200px);width:40px;height:40px;box-shadow:0 4px 14px rgba(34,45,90,.3)}
.team-app{position:relative;display:grid;grid-template-columns:272px minmax(0,1fr);height:calc(100dvh - 80px);min-height:420px;background:var(--sf);border:1px solid var(--bd);border-radius:var(--r);box-shadow:var(--sh);overflow:hidden}
.team-app.mit-thread{grid-template-columns:272px minmax(0,1fr) minmax(320px,380px)}
.tm-liste{display:flex;flex-direction:column;border-right:1px solid var(--bd);background:var(--sf2);min-height:0}
.tm-liste-kopf{display:flex;align-items:center;gap:6px;padding:10px 10px 6px}
.tm-ich{display:flex;align-items:center;gap:8px;flex:1;min-width:0}
.tm-ich select{flex:0 1 auto;min-height:30px;padding:3px 6px;font-size:12.5px;border-color:transparent;background:transparent;width:auto;max-width:170px}
.tm-ich select:hover{border-color:var(--bd2)}
.team-app .av,.tm-modal .av{position:relative}
.tm-dot{position:absolute;right:-2px;bottom:-2px;width:11px;height:11px;border-radius:50%;border:2px solid var(--sf);background:var(--gy)}
.av.xs .tm-dot{width:8px;height:8px;border-width:1.5px;right:-2px;bottom:-2px}
.tm-dot.on{background:var(--gn)}.tm-dot.ab{background:var(--am)}.tm-dot.bs{background:var(--rd)}.tm-dot.off{background:transparent;border-color:var(--gy);box-shadow:inset 0 0 0 1.5px var(--sf)}
.tm-suche{display:flex;align-items:center;gap:6px;margin:0 10px 8px;padding:0 8px;border:1px solid var(--bd);border-radius:8px;background:var(--sf);color:var(--mt)}
.tm-suche input{border:0;box-shadow:none!important;padding:6px 0;min-height:32px;background:transparent}
.tm-hinweis-push{display:flex;gap:8px;align-items:center;margin:0 10px 8px;padding:8px 10px;border-radius:8px;background:var(--bls);font-size:12px}.tm-hinweis-push span{flex:1}
.tm-kanaele{flex:1;overflow-y:auto;padding:0 6px 12px}
.tm-sec{display:flex;align-items:center;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--mt);padding:12px 8px 4px;font-weight:600}
.tm-pad{padding:4px 8px}
.tm-k{display:flex;align-items:center;gap:9px;padding:6px 8px;border-radius:8px;font-size:13.5px;color:var(--tx);min-height:38px}
.tm-k:hover{background:var(--gys);color:var(--tx)}
.tm-k.on{background:var(--acs);color:var(--ac)}
.tm-k.neu .tm-kn{font-weight:700}
.tm-k.stumm{color:var(--mt)}
.tm-kn{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tm-kic{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--gys);color:var(--mt);flex-shrink:0}
.tm-kic.lg{width:36px;height:36px}
.tm-k.on .tm-kic{background:var(--sf);color:var(--ac)}
.av.tm-grp{background:var(--bls);color:var(--bl)}
.tm-badge{font-style:normal;background:var(--ac);color:#fff;border-radius:10px;font-size:11px;padding:0 7px;font-weight:700;line-height:18px}
.tm-badge.erw{background:var(--bl)}
.tm-stumm{color:var(--mt);display:inline-flex}.tm-stumm .ic{width:14px;height:14px}
.tm-chat{display:flex;flex-direction:column;min-width:0;min-height:0;position:relative}
.tm-chat.drop::after,.tm-thread.drop::after{content:"Dateien hier ablegen";position:absolute;inset:8px;border:2px dashed var(--ac);border-radius:10px;background:color-mix(in srgb,var(--sf) 85%,transparent);display:grid;place-items:center;font-weight:600;color:var(--ac);z-index:5}
.tm-leer{margin:auto;text-align:center;color:var(--mt);padding:30px}.tm-leer h2{margin:10px 0 4px;color:var(--tx)}.tm-leer.klein{padding:40px 10px}
.tm-kopf{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--bd);min-height:58px}
.tm-kopf-t{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}
.tm-kopf-t b{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tm-kopf-t small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tm-kopf-a{display:flex;gap:2px;align-items:center}
.tm-mitgl{width:auto;padding:0 8px;gap:3px;display:inline-flex;align-items:center}.tm-mitgl small{font-size:12px}
.tm-zurueck,.tm-zurueck-t{display:none}
.tm-verlauf{flex:1;overflow-y:auto;padding:8px 0 10px;min-height:0;overscroll-behavior:contain}
.tm-mehr,.tm-anfang{text-align:center;padding:10px}
.tm-tag{display:flex;align-items:center;gap:10px;margin:12px 16px 4px;color:var(--mt);font-size:12px;font-weight:600}
.tm-tag::before,.tm-tag::after{content:"";flex:1;height:1px;background:var(--bd)}
.tm-m{position:relative;display:flex;gap:10px;padding:6px 16px 4px}
.tm-m.kompakt{padding-top:1px}
.tm-m:hover{background:var(--sf2)}
.tm-m.erwaehnt{background:color-mix(in srgb,var(--am) 9%,transparent);box-shadow:inset 3px 0 0 var(--am)}
.tm-m.blink{animation:tmBlink 2.4s}
@keyframes tmBlink{0%,60%{background:var(--ams)}100%{background:transparent}}
.tm-zeit-k{width:30px;flex-shrink:0;font-size:10.5px;color:var(--mt);opacity:0;padding-top:3px;text-align:right}
.tm-m:hover .tm-zeit-k{opacity:1}
.tm-mb{flex:1;min-width:0}
.tm-mk{display:flex;gap:8px;align-items:baseline}.tm-mk b{font-size:13.5px}.tm-mk time{font-size:11.5px;color:var(--mt)}
.tm-text{word-wrap:break-word;overflow-wrap:anywhere;line-height:1.5}
.tm-text.gross{font-size:30px;line-height:1.25}
.tm-text a{color:var(--bl);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--bl) 35%,transparent)}
.tm-pre{background:var(--gys);border-radius:6px;padding:8px 10px;margin:4px 0;overflow-x:auto;font:12.5px/1.45 var(--mono);white-space:pre}
.tm-erw{background:var(--bls);color:var(--bl);border-radius:4px;padding:0 3px;font-weight:600}.tm-erw.ich{background:var(--ams);color:var(--am)}
.tm-sys{text-align:center;color:var(--mt);font-size:12px;padding:4px 16px}
.tm-aktionen{position:absolute;right:12px;top:-14px;display:none;background:var(--sf);border:1px solid var(--bd);border-radius:8px;box-shadow:var(--sh);padding:2px;z-index:3}
.tm-m:hover .tm-aktionen,.tm-m:focus-within .tm-aktionen{display:flex}
.tm-bilder{display:grid;gap:4px;margin:6px 0;max-width:min(460px,100%)}
.tm-bilder.n2{grid-template-columns:1fr 1fr}.tm-bilder.n3{grid-template-columns:1fr 1fr 1fr}
.tm-bilder img{display:block;width:100%;height:auto;max-height:340px;object-fit:cover;border-radius:8px;border:1px solid var(--bd);background:var(--gys)}
.tm-bilder.n1 img{width:auto;max-width:100%;object-fit:contain}
.tm-bilder.n2 img,.tm-bilder.n3 img{aspect-ratio:1;height:100%}
.tm-dateien{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.tm-datei{display:flex;align-items:center;gap:8px;border:1px solid var(--bd);border-radius:8px;padding:6px 10px;max-width:320px;background:var(--sf)}
.tm-datei span{display:flex;flex-direction:column;min-width:0;line-height:1.3}.tm-datei b{font-weight:600;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tm-vorschauen{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.tm-vk{display:flex;flex-direction:column;gap:1px;border:1px solid var(--bd);border-left:3px solid var(--ac);border-radius:8px;padding:7px 11px;max-width:380px;background:var(--sf);line-height:1.35;position:relative}
.tm-vk small{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--mt);font-weight:600}.tm-vk b{font-size:13.5px}.tm-vk span{font-size:12.5px}
.tm-vk .badge{position:absolute;right:8px;top:7px}
.tm-vk.gesperrt{border-left-color:var(--gy);opacity:.7}
.tm-todo{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--gn);background:var(--gns);border-radius:20px;padding:1px 9px;margin:4px 0}
.tm-reak{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.tm-reak button{border:1px solid var(--bd);background:var(--sf);border-radius:20px;padding:1px 8px;font-size:14px;cursor:pointer;line-height:22px}
.tm-reak button.ich{border-color:var(--bl);background:var(--bls)}
.tm-reak small{font-size:11.5px;color:var(--mt)}
.tm-antw{display:inline-flex;align-items:center;gap:5px;margin-top:3px;border:0;background:none;color:var(--bl);font:600 12.5px inherit;cursor:pointer;padding:2px 0}
.tm-gesehen{font-size:11px;color:var(--mt);margin-top:2px;display:flex;align-items:center;gap:3px}
.tm-neu-pill{position:absolute;left:50%;transform:translateX(-50%);bottom:120px;z-index:4;border:0;border-radius:20px;background:var(--ac);color:#fff;padding:6px 14px;font:600 12.5px inherit;cursor:pointer;box-shadow:var(--sh)}
.tm-tippen{min-height:18px;font-size:12px;color:var(--mt);padding:0 18px;display:flex;align-items:center;gap:6px}
.tm-punkte{display:inline-flex;gap:3px}.tm-punkte i{width:5px;height:5px;border-radius:50%;background:var(--mt);animation:tmPunkt 1.2s infinite}
.tm-punkte i:nth-child(2){animation-delay:.2s}.tm-punkte i:nth-child(3){animation-delay:.4s}
@keyframes tmPunkt{0%,60%,100%{opacity:.25}30%{opacity:1}}
.tm-hinweis{padding:12px 16px;border-top:1px solid var(--bd);color:var(--mt);display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap}
.tm-composer{position:relative;padding:4px 12px 12px}
.tm-eingabe{border:1px solid var(--bd2);border-radius:10px;background:var(--sf);display:flex;flex-direction:column}
.tm-eingabe:focus-within{border-color:var(--ac);box-shadow:0 0 0 3px var(--acs)}
.tm-eingabe textarea{border:0;box-shadow:none!important;resize:none;padding:10px 12px 4px;min-height:40px;max-height:220px;background:transparent}
.tm-werkzeuge{display:flex;align-items:center;gap:2px;padding:2px 6px 6px}
.tm-werkzeuge label.icon-btn{cursor:pointer}
.tm-senden{margin-left:auto;height:32px;padding:0 12px}
.tm-anh{display:flex;flex-wrap:wrap;gap:6px}.tm-anh:not(:empty){margin-bottom:6px}
.tm-anh-i{display:flex;align-items:center;gap:6px;border:1px solid var(--bd);border-radius:8px;padding:4px 4px 4px 6px;font-size:12.5px;max-width:260px;background:var(--sf)}
.tm-anh-i img{width:34px;height:34px;object-fit:cover;border-radius:5px}
.tm-anh-i span{display:flex;flex-direction:column;min-width:0;line-height:1.25}.tm-anh-i span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tm-anh-i.laedt{opacity:.6}
.tm-pop{position:absolute;left:12px;right:12px;bottom:calc(100% - 2px);background:var(--sf);border:1px solid var(--bd);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.16);padding:8px;z-index:6;max-height:320px;overflow-y:auto}
.tm-pop>input{margin-bottom:6px}
.tm-obj-l button,.tm-erw-l button{display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:100%;text-align:left;border:0;background:none;padding:7px 8px;border-radius:7px;cursor:pointer;color:var(--tx);font:inherit}
.tm-obj-l button{flex-direction:column;align-items:flex-start;gap:0;line-height:1.35}.tm-obj-l small{font-size:10.5px;text-transform:uppercase;color:var(--mt);letter-spacing:.05em}.tm-obj-l span{font-size:12px}
.tm-obj-l button:hover,.tm-erw-l button:hover,.tm-erw-l button.on{background:var(--sf2)}
.tm-emojis{display:flex;flex-wrap:wrap;gap:2px}
.tm-emojis button{border:0;background:none;font-size:21px;width:38px;height:38px;border-radius:8px;cursor:pointer}.tm-emojis button:hover{background:var(--gys)}
.tm-popup{position:fixed;z-index:200;background:var(--sf);border:1px solid var(--bd);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.18);padding:6px}
.tm-popup .tm-emojis{max-width:214px}
.tm-menue{display:flex;flex-direction:column;min-width:190px}
.tm-menue button{border:0;background:none;text-align:left;padding:8px 10px;border-radius:7px;cursor:pointer;font:inherit;color:var(--tx)}.tm-menue button:hover{background:var(--sf2)}.tm-menue button.neg{color:var(--rd)}
.tm-edit{margin:2px 0}.tm-edit textarea{margin-bottom:6px}.tm-edit .row{justify-content:flex-end}.tm-edit .row small{flex:1}
.tm-thread{display:flex;flex-direction:column;border-left:1px solid var(--bd);min-height:0;background:var(--sf);position:relative}
.tm-thread-eltern{border-bottom:1px solid var(--bd);padding-bottom:6px}
.tm-treffer{padding:8px;border-radius:8px;cursor:pointer;font-size:13px;line-height:1.4}.tm-treffer:hover{background:var(--gys)}
.tm-treffer mark{background:var(--ams);color:inherit;border-radius:3px}
.tm-modal{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:300;display:grid;place-items:center;padding:16px}
.tm-dlg{background:var(--sf);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.3);width:min(480px,100%);max-height:calc(100dvh - 32px);display:flex;flex-direction:column}
.tm-dlg header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--bd)}
.tm-dlg-b{padding:14px 16px;overflow-y:auto;display:flex;flex-direction:column;gap:10px}
.tm-dlg footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--bd)}
.tm-dlg .tm-vk{max-width:none}
.tm-personen{display:flex;flex-direction:column;gap:2px;max-height:300px;overflow-y:auto}
.tm-personen label,.tm-personen.nur>div{display:flex;align-items:center;gap:8px;padding:6px 6px;border-radius:7px;cursor:pointer}.tm-personen label:hover{background:var(--sf2)}
.tm-kliste>div{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--bd)}.tm-kliste>div>span:nth-child(2){flex:1;display:flex;flex-direction:column;line-height:1.35}
.tm-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--tx);color:var(--sf);padding:10px 16px;border-radius:9px;z-index:400;font-size:13.5px;box-shadow:0 8px 24px rgba(0,0,0,.25);max-width:calc(100vw - 32px)}
.tm-toast.err{background:var(--rd);color:#fff}.tm-toast a{color:inherit;text-decoration:underline}
.tm-lightbox{position:fixed;inset:0;z-index:350;background:rgba(0,0,0,.88);display:grid;place-items:center;padding:50px 16px 70px}
.tm-lightbox img{max-width:100%;max-height:calc(100dvh - 130px);object-fit:contain;border-radius:6px}
.tm-lb-leiste{position:fixed;left:0;right:0;bottom:0;display:flex;gap:8px;align-items:center;padding:12px 16px;color:#fff}.tm-lb-leiste span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tm-lb-p{position:fixed;top:50%;transform:translateY(-50%);border:0;background:rgba(255,255,255,.15);color:#fff;font-size:34px;width:46px;height:64px;border-radius:8px;cursor:pointer}.tm-lb-p.l{left:10px}.tm-lb-p.r{right:10px}
@media (max-width:1100px){
  .team-app.mit-thread{grid-template-columns:240px minmax(0,1fr)}
  .team-app{grid-template-columns:240px minmax(0,1fr)}
  .tm-thread{position:absolute;right:0;top:0;bottom:0;width:min(400px,100%);z-index:10;box-shadow:-10px 0 30px rgba(0,0,0,.15)}
}
@media (max-width:860px){
  .content:has(.team-app){padding:0}
  .team-app,.team-app.mit-thread{grid-template-columns:minmax(0,1fr);height:calc(100dvh - 51px);border:0;border-radius:0;box-shadow:none}
  .team-app .tm-chat{display:none}
  .team-app.zeige-chat .tm-liste{display:none}
  .team-app.zeige-chat .tm-chat{display:flex}
  .team-app.zeige-chat{position:fixed;top:0;left:0;right:0;height:var(--tm-vh,100dvh)!important;z-index:70}
  body:has(.team-app.zeige-chat){overflow:hidden}
  .tm-zurueck,.tm-zurueck-t{display:inline-grid}
  .tm-kopf{padding:8px 8px;gap:6px}
  .tm-thread{width:100%;box-shadow:none}
  .tm-thread .tm-kopf-a{display:none}
  .tm-m{padding:6px 10px 4px}
  .tm-aktionen{top:-12px;right:6px}
  .tm-composer{padding:4px 8px 8px}
  .tm-eingabe textarea{font-size:16px}
  .tm-k{min-height:44px;font-size:14.5px}
  body:has(.team-app) .ki-fab{display:none}
  .tm-neu-pill{bottom:110px}
}
@media (hover:none){.tm-aktionen{display:flex;position:static;border:0;box-shadow:none;background:none;padding:0;margin-left:auto;align-self:flex-start;opacity:.55}.tm-m{flex-wrap:nowrap}}

/* Dokumente (Synology Drive) */
.dok-pfad { margin: 0 0 .8rem; color: var(--muted, #6b7280); word-break: break-word; }
.dok-pfad a { color: inherit; }
.dok-treffer { font-size: .85rem; color: var(--muted, #6b7280); margin-top: .25rem; line-height: 1.4; }
.dok-treffer mark, .dok-text mark { background: #fde68a; color: inherit; padding: 0 .1em; border-radius: 2px; }
.dok-vorschau { width: 100%; height: 78vh; min-height: 420px; border: 1px solid var(--line, #e5e7eb); border-radius: 10px; background: #fff; margin-bottom: 1rem; }
.dok-bild { max-width: 100%; max-height: 75vh; display: block; margin: 0 auto; }
.dok-text { white-space: pre-wrap; word-break: break-word; max-height: 60vh; overflow: auto; font-size: .82rem; line-height: 1.45; background: var(--bg2, #f8fafc); padding: .8rem; border-radius: 8px; }
.dok-tbl td { vertical-align: top; }
.dok-tbl td b { word-break: break-word; }

/* Datenmodule */
.dm-detail { display: grid; grid-template-columns: minmax(140px, 30%) 1fr; gap: .45rem 1rem; margin: 0; }
.dm-detail dt { color: var(--muted, #6b7280); }
.dm-detail dd { margin: 0; word-break: break-word; }
.dm-spalten input[type=text], .dm-spalten input:not([type]) { min-width: 160px; }
.dm-liste th a { color: inherit; text-decoration: none; }
@media (max-width: 640px) { .dm-detail { grid-template-columns: 1fr; } .dm-detail dd { margin-bottom: .4rem; } }
/* Team-Chat: Besprechungen, Extras */
.tm-schnell{display:flex;gap:4px;margin:0 10px 6px}.tm-schnell .btn{flex:1;justify-content:center;gap:5px;color:var(--mt)}.tm-schnell .btn:hover{color:var(--tx)}
.tm-mk-l .tm-kn{display:flex;flex-direction:column;line-height:1.25}.tm-mk-l small{color:var(--mt);font-size:11.5px}
.tm-live{width:10px;height:10px;border-radius:50%;background:var(--rd);box-shadow:0 0 0 0 var(--rd);animation:tmLive 1.6s infinite}
@keyframes tmLive{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--rd) 60%,transparent)}70%{box-shadow:0 0 0 7px transparent}100%{box-shadow:0 0 0 0 transparent}}
.tm-vk.meet{border-left-color:var(--bl);padding-right:100px;min-width:260px}
.tm-vk.meet .tm-beitreten{position:absolute;right:10px;bottom:10px;color:#fff}
.tm-vk.meet .badge{right:10px;top:8px}
.tm-gepinnt{display:flex;align-items:center;gap:4px;font-size:11.5px;color:var(--am);font-weight:600}.tm-gepinnt .ic{width:13px;height:13px}
.tm-audio{display:flex;flex-direction:column;gap:2px;margin:6px 0}.tm-audio audio{width:min(320px,100%);height:40px}
.tm-video{display:block;max-width:min(460px,100%);max-height:340px;border-radius:8px;margin:6px 0;background:#000}
.tm-aufnahme{display:flex;align-items:center;gap:8px;padding:6px 10px;margin-bottom:6px;border-radius:8px;background:var(--rds);font-size:13px;flex-wrap:wrap}
.tm-aufnahme i{width:10px;height:10px;border-radius:50%;background:var(--rd);animation:tmBlinkRec 1s infinite}.tm-aufnahme span{font-variant-numeric:tabular-nums;font-weight:600}
@keyframes tmBlinkRec{50%{opacity:.25}}
[data-tm-sprache].rec{color:var(--rd);background:var(--rds)}
.tm-galerie{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px;margin-bottom:10px}
.tm-galerie img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:7px;display:block;border:1px solid var(--bd)}
.tm-dzeile{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--bd);flex-wrap:wrap}.tm-dzeile a{font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tm-meet{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--bd)}.tm-meet>span:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.35}
.tm-meet.alt{opacity:.55}
.tm-treffer.neu{box-shadow:inset 3px 0 0 var(--bl)}
.tm-dlg .tabs-pills a{cursor:pointer}

/* ===== Navigation v2: Hauptbereiche oben, Unterpunkte darunter (body.nm-top) ===== */
:root{--ease:cubic-bezier(.2,.7,.2,1);--r-lg:14px}
.nm-top .shell{flex-direction:column}
.nm-top .main{width:100%}
.top2{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--sf) 88%,transparent);backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--bd)}
.top-main{display:flex;align-items:center;gap:18px;padding:8px 24px;max-width:1680px;margin:0 auto;width:100%}
.top2 .brand{padding:0;flex-shrink:0}
.top2 .brand-logo{height:26px}
.mainnav{display:flex;gap:2px;align-items:center;min-width:0;overflow-x:auto;scrollbar-width:none;flex:1}
.mainnav::-webkit-scrollbar,.subnav::-webkit-scrollbar{display:none}
.mainnav a{display:flex;align-items:center;gap:7px;padding:8px 12px;border-radius:9px;color:var(--mt);font-size:13.5px;font-weight:550;white-space:nowrap;position:relative;transition:background .15s var(--ease),color .15s}
.mainnav a .ic{color:inherit;opacity:.85}
.mainnav a:hover{background:var(--sf2);color:var(--tx)}
.mainnav a.on{color:var(--ac);background:var(--acs)}
.mainnav .cnt,.subnav .cnt{margin-left:2px;font-size:10.5px;line-height:16px;min-width:16px;padding:0 5px;text-align:center}
.mainnav .cnt[hidden],.subnav .cnt[hidden]{display:none}
.top2 .top-r{margin-left:0;flex-shrink:0}
.cmdk-btn{display:flex;align-items:center;gap:8px;background:var(--sf2);border:1px solid var(--bd);color:var(--mt);border-radius:9px;padding:6px 8px 6px 10px;font:inherit;font-size:13px;cursor:pointer;min-width:200px;transition:border-color .15s}
.cmdk-btn:hover{border-color:var(--bd2);color:var(--tx)}
.cmdk-btn kbd{margin-left:auto}
.user-btn{border:0;background:none;padding:2px;border-radius:50%;cursor:pointer}
.user-btn:hover .av{box-shadow:0 0 0 3px var(--acs)}
.user-btn .av{width:32px;height:32px;transition:box-shadow .15s}
.dd-head{padding:8px 10px 10px;border-bottom:1px solid var(--bd);margin-bottom:6px;display:flex;flex-direction:column;line-height:1.3}.dd-head small{color:var(--mt)}
.dd-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:0;background:none;border-radius:7px;font:inherit;font-size:13.5px;color:var(--tx);cursor:pointer;text-align:left}
.dd-menu button:hover{background:var(--sf2)}
.dd-menu form{margin:0}
.subnav{display:flex;gap:2px;padding:0 24px;max-width:1680px;margin:0 auto;width:100%;overflow-x:auto;scrollbar-width:none;border-top:1px solid color-mix(in srgb,var(--bd) 60%,transparent)}
.subnav a{display:flex;align-items:center;gap:7px;padding:10px 12px 9px;color:var(--mt);font-size:13px;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s}
.subnav a .ic{opacity:.7}
.subnav a:hover{color:var(--tx)}
.subnav a.on{color:var(--tx);font-weight:600;border-bottom-color:var(--ac)}.subnav a.on .ic{color:var(--ac);opacity:1}
.nm-top .content{max-width:1680px;margin:0 auto;padding:22px 24px 64px}
.crumbs{display:flex;gap:6px;font-size:12px;color:var(--mt);margin-bottom:2px}.crumbs a{color:var(--mt)}.crumbs a:hover{color:var(--ac)}
.ph-t h1{margin:0}
.nm-side .crumbs{display:none}
@media (max-width:1280px){.hide-md{display:none}.cmdk-btn{min-width:0}}
@media (max-width:1100px){.mainnav a span{display:none}.mainnav a{padding:9px 11px}.mainnav a.on span{display:inline}}
@media (max-width:860px){
  .top-main{padding:8px 12px;gap:8px;flex-wrap:wrap}
  .mainnav{order:3;flex-basis:100%}
  .mainnav a span{display:inline;font-size:12.5px}.mainnav a{padding:8px 10px}
  .top2 .top-r{margin-left:auto}
  .subnav{padding:0 8px}
  .nm-top .content{padding:16px 14px 64px}
}
/* Befehlspalette */
.cmdk{position:fixed;inset:0;z-index:100;background:rgba(10,10,14,.45);backdrop-filter:blur(3px);display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 0}
.cmdk[hidden]{display:none}
.cmdk-box{width:100%;max-width:640px;background:var(--sf);border:1px solid var(--bd);border-radius:var(--r-lg);box-shadow:0 30px 80px rgba(0,0,0,.35);overflow:hidden;animation:cmdkin .16s var(--ease)}
@keyframes cmdkin{from{opacity:0;transform:translateY(-8px) scale(.985)}}
.cmdk-in{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--bd)}
.cmdk-in input{flex:1;border:0;outline:0;background:transparent;font:inherit;font-size:16px;color:var(--tx);padding:4px 0;box-shadow:none}
.cmdk-list{max-height:min(55vh,460px);overflow-y:auto;padding:6px}
.cmdk-g{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--mt);padding:10px 10px 4px}
.cmdk-list a{display:flex;align-items:baseline;gap:10px;padding:8px 10px;border-radius:8px;color:var(--tx);font-size:14px}
.cmdk-list a small{color:var(--mt);font-size:12px;margin-left:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:55%}
.cmdk-list a.akt{background:var(--acs);color:var(--tx)}
.cmdk-alle{color:var(--ac)!important;font-weight:550}
.cmdk-leer{padding:24px;text-align:center;color:var(--mt)}
.cmdk-foot{display:flex;gap:16px;padding:8px 14px;border-top:1px solid var(--bd);font-size:12px;color:var(--mt);background:var(--sf2)}
.cmdk-foot kbd{margin-right:4px}
body.cmdk-open{overflow:hidden}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media print{.top2{display:none!important}}
.nm-top .content:has(.kal),.nm-top .content:has(.mail-layout),.nm-top .content:has(.team-app),.nm-top.fp-wide .content,.nm-top .fp-wide .content{max-width:none}
/* Dashboard: verdeckte Zahlen */
.zahlen{margin:6px 0 20px}.zahlen-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.zahlen-h h2{margin:0;font-size:15px}
.kpis-fin{margin-bottom:12px}
button.kpi{font:inherit;color:inherit;text-align:left;cursor:pointer;width:100%;transition:border-color .15s,transform .15s var(--ease)}
button.kpi:hover{border-color:var(--bd2);transform:translateY(-1px)}
.kpi-hide b.mask{letter-spacing:.14em;color:var(--mt);filter:blur(.4px);user-select:none}
.kpi-hide.offen{border-color:color-mix(in srgb,var(--ac) 35%,var(--bd))}
.kpi-hide .sub{min-height:16px}
.zahlen-chart{margin:0}
.zahlen-chart .bars{height:150px}
.kpis-ops,.kpis-fin{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.kpis-ops .kpi,.kpis-fin .kpi{padding:12px 14px}
@media (max-width:1620px){.hide-md{display:none}.cmdk-btn{min-width:0;padding:7px 9px}.cmdk-btn kbd{display:none}.top2 .brand-tag{display:none}}
@media (max-width:1400px){.mainnav a{padding:8px 9px}.top-main{gap:10px}}
@media (max-width:1700px) and (min-width:1101px){.mainnav a>.ic{display:none}}
.timeline,.timeline *{min-width:0}.timeline{overflow-wrap:anywhere}
.grid-main>.col{min-width:0}
/* Seitenleiste als Akkordeon (schmale Symbolleiste nur am Desktop – am Handy immer volle Beschriftung) */
.side nav{padding-top:6px}
button.nav-sec{padding:10px 10px 8px;font-size:12px;font-weight:650;letter-spacing:.06em;color:var(--tx);border-radius:8px}
button.nav-sec .ic{color:var(--mt)}
button.nav-sec:hover{background:var(--sf2)}
button.nav-sec:not(.zu){color:var(--ac)}button.nav-sec:not(.zu) .ic{color:var(--ac)}
.nav-grp{margin:0 0 6px 12px;padding-left:6px;border-left:1px solid var(--bd)}
@media (min-width:861px){html.side-mini .side:not(:hover) .nav-grp{margin-left:0;padding-left:0;border-left:0}}
@media (min-width:861px){html.side-mini .side:not(:hover) button.nav-sec{height:auto;padding:9px 0;margin:2px 0;border-top:0;justify-content:center;pointer-events:auto;width:100%}}
@media (min-width:861px){html.side-mini .side:not(:hover) button.nav-sec>span,html.side-mini .side:not(:hover) button.nav-sec>.nav-pfeil,html.side-mini .side:not(:hover) button.nav-sec>.nav-sec-cnt{display:none}}
@media (min-width:861px){html.side-mini .side:not(:hover) button.nav-sec>.ic{display:block}}
/* Geschäftszahlen: Gesamtschalter */
.zahlen-h #zahlen-alle{padding:6px 12px;font-weight:600;border-radius:999px}
.zahlen-h #zahlen-alle[aria-pressed=true]{background:var(--acs);border-color:var(--ac);color:var(--ac)}

/* ===== Kopfnavigation, Feinschliff: Stil der Seitenleiste + Aufklappmenü ===== */
.top2{background:color-mix(in srgb,var(--sf) 92%,transparent)}
.top-main{padding:6px 24px;gap:14px}
.mainnav{overflow:visible;gap:2px}
.mn{position:relative}
.mainnav a{font-size:12px;font-weight:650;text-transform:uppercase;letter-spacing:.06em;color:var(--tx);padding:9px 11px;border-radius:8px}
.mainnav a .ic{color:var(--mt);opacity:1}
.mainnav a:hover,.mn:hover>a,.mn:focus-within>a{background:var(--sf2);color:var(--tx)}
.mainnav a.on{background:var(--acs);color:var(--ac)}.mainnav a.on .ic{color:var(--ac)}
.mainnav>.mn>a>.cnt{margin-left:1px}
.mn-menu{display:none;position:absolute;left:0;top:100%;padding-top:8px;min-width:230px;z-index:60}
.mn-menu::before{content:"";position:absolute;left:0;right:0;top:8px;bottom:0;background:var(--sf);border:1px solid var(--bd);border-radius:12px;box-shadow:0 18px 50px rgba(0,0,0,.16)}
.mn-menu>*{position:relative}
.mn-menu{padding:8px 6px 6px}
.mn-menu::before{top:6px}
.mn-h{font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--mt);padding:12px 12px 4px}
.mn-menu a{display:flex;align-items:center;gap:10px;text-transform:none;letter-spacing:0;font-size:13.5px;font-weight:500;color:var(--tx);padding:8px 12px;margin:1px 6px;border-radius:8px;white-space:nowrap}
.mn-menu a .ic{color:var(--mt)}
.mn-menu a:hover{background:var(--sf2)}
.mn-menu a.on{background:var(--acs);color:var(--ac);font-weight:600}.mn-menu a.on .ic{color:var(--ac)}
.mn-menu .cnt{margin-left:auto}
@media (hover:hover) and (min-width:861px){
  .mn:hover>.mn-menu,.mn:focus-within>.mn-menu{display:block;animation:mnin .14s var(--ease)}
}
@keyframes mnin{from{opacity:0;transform:translateY(-4px)}}
/* Unterpunkte als Pillen wie in der Seitenleiste */
.subnav{border-top:0;padding:2px 24px 8px;gap:4px;background:transparent}
.subnav a{padding:6px 12px;border-radius:8px;border-bottom:0;margin-bottom:0;font-size:13px;color:var(--mt);font-weight:500}
.subnav a:hover{background:var(--sf2);color:var(--tx)}
.subnav a.on{background:var(--acs);color:var(--ac);font-weight:650}.subnav a.on .ic{color:var(--ac)}
.top2{border-bottom:1px solid var(--bd)}
@media (max-width:1500px){.mainnav a{padding:9px 8px;letter-spacing:.04em;font-size:11.5px}.mainnav a>.ic{display:none}.mainnav a.on>.ic{display:block}}
@media (max-width:1180px){.mainnav a span{display:none}.mainnav a>.ic{display:block}.mainnav a.on span{display:inline}}
@media (max-width:860px){.mainnav{overflow-x:auto}.mn-menu{display:none!important}.mainnav a>.ic{display:block}.mainnav a span{display:inline}.subnav{padding:2px 8px 8px}}
.mainnav .mn-menu a{text-transform:none;letter-spacing:0;font-size:13.5px;font-weight:500;padding:8px 12px;color:var(--tx)}
.mainnav .mn-menu a>.ic{display:block;color:var(--mt)}
.mainnav .mn-menu a.on{color:var(--ac);font-weight:600}.mainnav .mn-menu a.on>.ic{color:var(--ac)}
.mainnav .mn-menu a span{display:inline}
.hide-md{display:none}.cmdk-btn{min-width:0;padding:7px 9px}.cmdk-btn kbd{display:none}.top2 .brand-tag{display:none}
@media (max-width:1800px) and (min-width:861px){.mainnav>.mn>a>.ic{display:none}.mainnav>.mn>a.on>.ic{display:block}}
@media (max-width:1300px) and (min-width:861px){.mainnav>.mn>a>span{display:none}.mainnav>.mn>a>.ic{display:block}.mainnav>.mn>a.on>span{display:inline}.mainnav>.mn>a{padding:9px 10px}}
.nav-pfeil{padding:6px;margin:-6px -4px -6px 0;box-sizing:content-box;border-radius:6px}.nav-pfeil:hover{background:var(--bd)}
/* Suche direkt in der Unternavigation (hinter dem letzten Punkt) */
.subnav-zeile{display:flex;align-items:center;gap:10px;padding:0 24px;max-width:1680px;margin:0 auto;width:100%;border-top:1px solid color-mix(in srgb,var(--bd) 60%,transparent)}
.subnav-zeile .subnav{padding:0;margin:0;width:auto;max-width:none;flex:0 1 auto;min-width:0;border-top:0}
.subnav-suche{position:relative;flex:0 1 280px;min-width:160px;max-width:280px;margin:5px 0;padding:0 9px;gap:7px;background:var(--sf2)}
.subnav-suche input{padding:5px 0;font-size:13px;border:0;box-shadow:none;outline:0;background:transparent;min-width:0}
.subnav-suche .gs-vorschau{width:min(440px,90vw);right:auto}
@media (max-width:860px){.subnav-zeile{padding:0 12px;flex-wrap:wrap;gap:0}.subnav-zeile .subnav{flex-basis:100%}.subnav-suche{flex:1 1 100%;max-width:none;margin:6px 0 8px}}

.pool-bar select{width:auto;min-width:180px}.pool-bar .btn{white-space:nowrap}.pool-bar .f{display:flex;flex-direction:column}
/* Onboarding */
.ob-balken{height:8px;background:var(--bd);border-radius:6px;overflow:hidden;margin:6px 0 4px}.ob-balken span{display:block;height:100%;background:var(--gn);transition:width .3s var(--ease)}
.ob-liste{list-style:none;margin:0;padding:0}.ob-zeile{display:flex;gap:12px;padding:10px 16px;border-top:1px solid var(--bd);align-items:flex-start}
.ob-zeile.ok .ob-text>b{text-decoration:line-through;color:var(--mt)}
.ob-check input{width:18px;height:18px;margin-top:2px}.ob-text{flex:1;min-width:0}.ob-notiz{width:100%;max-width:520px;margin-top:6px;font-size:13px}
/* To-do-Board: Spalten je Mitarbeiter */
.seg a{display:inline-flex;padding:5px 12px;border-radius:6px;font-size:13px;color:var(--mt)}.seg a.on{background:var(--acs);color:var(--ac);font-weight:600}
.todo-board-filter{align-items:center}
.tb{display:flex;gap:14px;align-items:flex-start}
.tb-spalten{display:flex;gap:12px;flex:1 1 auto;min-width:0;overflow-x:auto;padding-bottom:14px;align-items:flex-start;scroll-snap-type:x proximity}
.tb-spalten>.tb-sp{flex:1 0 270px;max-width:440px} /* freie Breite (z. B. eingeklapptes Menü) wird auf die Spalten verteilt */
.tb-sp{flex:0 0 290px;background:var(--sf2);border:1px solid var(--bd);border-radius:12px;display:flex;flex-direction:column;max-height:calc(100vh - 230px);scroll-snap-align:start;transition:border-color .15s,background .15s}
.tb-allg{background:color-mix(in srgb,var(--ams) 55%,var(--sf2));border-color:color-mix(in srgb,var(--am) 35%,var(--bd))}
.tb-ich{border-color:color-mix(in srgb,var(--ac) 40%,var(--bd))}
.tb-sp.tb-drueber{border-color:var(--ac);background:var(--acs)}
.tb-kopf{display:flex;align-items:center;gap:9px;padding:10px 12px 8px}.tb-kopf div{display:flex;flex-direction:column;line-height:1.25;min-width:0;flex:1}.tb-kopf small{font-size:11.5px}
.tb-kopf .av{width:28px;height:28px;font-size:11px;flex:0 0 28px}
.tb-n{font-style:normal;font-size:12px;font-weight:600;color:var(--mt);background:var(--sf);border:1px solid var(--bd);border-radius:10px;padding:0 8px;line-height:20px}
.tb-neu{padding:0 10px 8px}.tb-neu input{width:100%;font-size:13px;padding:6px 9px;background:var(--sf)}
.tb-karten{display:flex;flex-direction:column;gap:8px;padding:2px 10px 12px;overflow-y:auto;min-height:60px}
.tb-karte{position:relative;background:var(--sf);border:1px solid var(--bd);border-radius:10px;padding:9px 10px 8px 42px;box-shadow:var(--sh);cursor:grab;font-size:13.5px}
.tb-karte:hover{border-color:var(--bd2)}.tb-karte.zieht{opacity:.45;cursor:grabbing}
.tb-karte.tb-ueber{border-left:3px solid var(--rd)}
.tb-karte.st-in_arbeit{border-left:3px solid var(--am)}.tb-karte.st-wartet{border-left:3px solid #8250df}
.tb-haken{position:absolute;left:8px;top:8px;margin:0}
.tb-text{display:block;color:var(--tx);line-height:1.35;word-break:break-word}.tb-text:hover{color:var(--ac)}
.tb-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:6px;font-size:12px;color:var(--mt)}.tb-meta a{color:var(--mt)}.tb-meta a:hover{color:var(--ac)}
.tb-weiter{margin-left:auto;border:1px solid var(--bd);background:var(--sf2);color:var(--mt);border-radius:7px;padding:0 8px;line-height:20px;cursor:pointer;font-size:13px}.tb-weiter:hover{color:var(--ac);border-color:var(--ac)}
.tb-wahl{width:100%;margin-top:6px;font-size:13px}
.tb-leer{text-align:center;padding:14px 4px}
@media (max-width:760px){.tb-sp{flex-basis:84vw;max-height:none}}
/* Rechtsklick-Menü */
.km{position:fixed;z-index:1000;min-width:230px;max-width:320px;background:var(--sf);border:1px solid var(--bd2);border-radius:11px;box-shadow:0 14px 40px rgba(0,0,0,.18),0 2px 6px rgba(0,0,0,.08);padding:5px;font-size:13.5px;animation:km-auf .08s ease-out}
@keyframes km-auf{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}
.km-h{padding:6px 10px 3px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--mt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.km-e{display:flex;align-items:center;gap:10px;width:100%;padding:6px 10px;border:0;background:none;border-radius:7px;font:inherit;color:var(--tx);text-align:left;cursor:pointer;text-decoration:none}
.km-e:hover,.km-e:focus{background:var(--acs);color:var(--ac);outline:0}
.km-e[aria-disabled]{opacity:.4;cursor:default}.km-e[aria-disabled]:hover{background:none;color:var(--tx)}
.km-i{width:16px;text-align:center;color:var(--mt);flex:0 0 16px}.km-e:hover .km-i{color:var(--ac)}
.km-e kbd{margin-left:auto;font-size:10.5px}
.km-tr{height:1px;background:var(--bd);margin:4px 6px}
.km-fuss{padding:5px 10px 3px;font-size:11px;color:var(--mt);border-top:1px solid var(--bd);margin-top:4px}
/* Menü anpassen (pro Benutzer) */
.menue-edit{display:flex;flex-direction:column;gap:12px;max-width:860px}
.menue-sec{padding:6px 10px;margin:0}
.menue-z{display:flex;align-items:center;gap:10px;padding:5px 4px;border-radius:8px}
.menue-z input:not([type]),.menue-z input[name^="name"]{flex:1 1 auto;max-width:300px;padding:5px 9px;font-size:13.5px}
.menue-kopf{font-weight:600;border-bottom:1px solid var(--bd);padding-bottom:8px;margin-bottom:4px}
.menue-items{display:flex;flex-direction:column;padding-left:22px}
.menue-griff{cursor:grab;color:var(--mt);user-select:none;font-size:15px}
.menue-pf{margin-left:auto;display:flex;gap:2px}
.menue-pfad{font-family:var(--mono);font-size:11px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}
.menue-aus>.menue-kopf,.menue-z.menue-aus{opacity:.45}.menue-sec.menue-aus .menue-items{opacity:.5}
.menue-z.zieht{opacity:.3}.menue-blink{background:var(--acs);transition:background .5s}
@media (max-width:640px){.menue-pfad{display:none}.menue-items{padding-left:6px}}
/* „Mehr ▾“ für Einträge, die nicht in die Kopfleiste passen (nav-mehr.js) */
.nm-mehr{position:relative;flex:0 0 auto}
.nm-mehr-k{display:flex;align-items:center;gap:5px;border:0;background:none;font:inherit;cursor:pointer;color:var(--tx);border-radius:8px;white-space:nowrap}
.top-main .nm-mehr-k{font-size:12px;font-weight:650;text-transform:uppercase;letter-spacing:.06em;padding:9px 11px}
.subnav-zeile .nm-mehr-k{font-size:13px;color:var(--mt);font-weight:500;padding:6px 12px;margin:2px 0 8px}
.nm-mehr-k:hover,.nm-mehr.auf .nm-mehr-k{background:var(--sf2);color:var(--tx)}
.nm-mehr-k span{font-size:10px}
.nm-mehr-m{display:none;position:absolute;right:0;top:calc(100% + 4px);z-index:70;min-width:220px;background:var(--sf);border:1px solid var(--bd);border-radius:12px;box-shadow:0 18px 50px rgba(0,0,0,.16);padding:6px}
.subnav-zeile .nm-mehr-m{left:0;right:auto}
.nm-mehr.auf .nm-mehr-m{display:block;animation:mnin .14s var(--ease)}
.nm-mehr-m a{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;font-size:13.5px;font-weight:500;color:var(--tx);white-space:nowrap;text-transform:none;letter-spacing:0}
.nm-mehr-m a .ic{display:block!important;color:var(--mt)}.nm-mehr-m a span{display:inline!important}
.nm-mehr-m a:hover{background:var(--sf2)}.nm-mehr-m a.on{background:var(--acs);color:var(--ac)}
.nm-mehr-m .cnt{margin-left:auto}

/* ===== E-Mail kompakt: weniger Kopf, schmalere Zeilen, mehr Mails ohne Scrollen ===== */
.content:has([data-mail-liste]){padding-top:10px;padding-bottom:24px}
.content:has([data-mail-liste])>.page-head{display:none}
.mail-kopf-akt{display:inline-flex;gap:6px;align-items:center;margin-left:4px}.mail-kopf-akt .btn{padding:5px 11px;font-size:13px}.mail-kopf-akt form{margin:0}
.mail-kopf{gap:10px;flex-wrap:wrap;margin-bottom:6px}.mail-kopf h2{font-size:16px}.mail-kopf .filters{margin-left:auto;display:flex;gap:6px;align-items:center}
.mail-kopf .filters input[type=search]{padding:5px 9px;font-size:13px;min-width:220px}.mail-kopf .filters select,.mail-kopf .filters .btn{padding:5px 9px;font-size:13px}
.mail-layout{gap:14px}
.mail-nav{gap:0;top:8px}.mail-nav a{padding:3px 8px;font-size:13px}.mail-konto{margin:8px 8px 1px}.mail-nav-fuss{margin-top:8px;padding-top:4px}
.mail-aktionen{padding:4px 8px;gap:4px;row-gap:3px;flex-wrap:wrap}
.mail-aktionen .btn.sm{padding:3px 8px;font-size:12.5px}.mail-aktionen select.sm,.mail-aktionen select{padding:3px 6px;font-size:12.5px;max-width:170px}
.mail-aktionen .mail-kunde-wahl .picker-q{min-width:150px;max-width:190px}
.mail-tab:not(.vm-tab) thead th{padding:5px 8px;font-size:11px}
.mail-tab:not(.vm-tab) tbody td{padding:5px 8px;line-height:1.3;vertical-align:middle}
.mail-tab:not(.vm-tab) td.mail-wer{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}
.mail-tab:not(.vm-tab) td.mail-wer b{font-weight:inherit}.mail-tab:not(.vm-tab) tr.mail-neu td.mail-wer b{font-weight:700}
.mail-tab:not(.vm-tab) td.mail-inhalt{font-size:13.5px}
.mail-tab:not(.vm-tab) td.mail-inhalt small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;margin-top:1px}
.mail-tab:not(.vm-tab) td.mail-inhalt br{display:none}
.mail-tab:not(.vm-tab) td.mail-datum{white-space:nowrap;font-size:12px}.mail-tab:not(.vm-tab) .mail-cb{padding-left:8px;padding-right:0}
.mail-tab:not(.vm-tab) td.mail-kunde .badge{font-size:11px;padding:0 7px}
.mail-layout.mit-vorschau [data-mail-liste]{max-height:42vh}
/* E-Mail lesen: Kopf und Daten schlanker */
.content:has(.mail-kopfdaten){padding-top:10px}
.content:has(.mail-kopfdaten)>.page-head{margin-bottom:8px}.content:has(.mail-kopfdaten)>.page-head h1{font-size:19px}.content:has(.mail-kopfdaten) .crumbs{display:none}
.content:has(.mail-kopfdaten) .actions .btn{padding:5px 11px;font-size:13px}
.mail-kopfdaten{padding:10px 14px;gap:6px}.mail-kv{grid-template-columns:64px 1fr;row-gap:1px;font-size:13px}
.mail-body-kopf{padding:5px 12px}
.mail-kopf .filters{flex-wrap:nowrap;flex:1;justify-content:flex-end;min-width:0}.mail-kopf .filters input[type=search]{flex:1 1 180px;min-width:140px;max-width:340px;width:auto}
.mail-kopf .filters select{width:auto;flex:0 0 auto}.mail-kopf .filters .check{white-space:nowrap}
.mail-tab:not(.vm-tab) td.mail-kunde{overflow:hidden;white-space:nowrap}.mail-tab:not(.vm-tab) td.mail-kunde .badge{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
.mail-vorschau{height:max(380px,calc(100vh - 42vh - 120px))}
/* Mit Lesebereich: Liste + Vorschau füllen genau den Bildschirm – kein Seiten-Scrollen */
.nm-top{--kopfh:96px}.nm-side{--kopfh:62px}
.mail-layout.mit-vorschau{--avail:calc(100vh - var(--kopfh) - 24px)}
.mail-layout.mit-vorschau .mail-kopf{margin-bottom:4px}
.mail-layout.mit-vorschau [data-mail-liste]{max-height:calc(var(--avail) * .44)}
.mail-layout.mit-vorschau .mail-vorschau{height:max(300px,calc(var(--avail) * .56 - 162px))}
.mail-nav{max-height:calc(100vh - var(--kopfh) - 16px);overflow:auto}
/* Angebote: optionale Positionen */
tr.pos-optional td,tr.item.optional .line{color:var(--mt);font-style:italic}tr.item.optional textarea{font-style:italic}
.sort-th{color:inherit;text-decoration:none;white-space:nowrap}.sort-th:hover,.sort-th.on{color:var(--ac)}a.kpi{text-decoration:none;color:inherit}
/* To-do-Board: Kollegen als Kacheln (zu) rechts, anklicken = Spalte */
.tb-andere{flex:0 0 220px;display:flex;flex-direction:column;gap:6px;position:sticky;top:10px;max-height:calc(100vh - 180px);overflow-y:auto;padding-bottom:4px}
.tb-andere-titel{padding:2px 4px 0;font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:11px}.tb-andere-titel span{text-transform:none;letter-spacing:0;font-weight:400}
.tb-sp.tb-zu{flex:none;max-height:none;border-radius:10px;background:var(--sf)}
.tb-sp.tb-zu .tb-neu,.tb-sp.tb-zu .tb-karten{display:none}
.tb-sp.tb-zu .tb-kopf{padding:7px 10px}
.tb-sp.tb-zu.tb-drueber{border-color:var(--ac);background:var(--acs);transform:scale(1.02)}
[data-umschalten]{cursor:pointer;user-select:none}[data-umschalten]:hover b{color:var(--ac)}
.tb-pfeil::after{content:'▸';color:var(--mt);font-size:12px;margin-left:2px}.tb-sp:not(.tb-zu) .tb-pfeil::after{content:'✕'}
@media (max-width:760px){.tb{flex-direction:column}.tb-spalten{width:100%}.tb-spalten>.tb-sp{flex:0 0 84vw;max-width:none}
  .tb-andere{flex:none;width:100%;position:static;max-height:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.tb-andere-titel{grid-column:1/-1}}

/* BWA (Berichte → BWA) */
.bwa-chart{display:flex;gap:8px;align-items:flex-end;padding:8px 16px 4px;height:230px}
.bwa-m{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:3px;height:100%}
.bwa-m.unv{opacity:.45}
.bwa-saeulen{flex:1;width:100%;display:flex;gap:3px;align-items:flex-end;justify-content:center}
.bwa-saeulen i{display:block;width:42%;max-width:26px;border-radius:4px 4px 0 0;min-height:1px}
.bwa-saeulen i.u,.bwa-lg.u{background:var(--ac)}.bwa-saeulen i.k,.bwa-lg.k{background:color-mix(in srgb,var(--mt) 45%,transparent)}
.bwa-m b{font-size:11.5px;white-space:nowrap}.bwa-m small{font-size:11px;color:var(--mt)}
.bwa-lg{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:middle;margin:0 3px 0 8px}
.bwa-tab td:first-child{white-space:nowrap}.bwa-tab tr.bwa-summe td{font-weight:650;background:var(--sf2)}
.bwa-tab td,.bwa-tab th{padding:7px 9px;font-size:13px}
.bwa-abgl td,.bwa-abgl th{white-space:nowrap}
@media (max-width:760px){.bwa-chart{gap:3px;padding:8px 6px 4px;height:190px}.bwa-m b{font-size:9.5px}}
.empf-zeile{display:flex;gap:6px;align-items:center}.empf-zeile input{flex:1;min-width:0}.empf-zeile .btn{flex:none;padding:6px 12px;font-size:16px;line-height:1}
.empf-weitere{display:flex;flex-direction:column;gap:6px}.empf-weitere:empty{display:none}
/* Mail → To-do */
.todo-dlg{width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 24px);border:0;border-radius:14px;padding:0;background:var(--sf);color:var(--tx);box-shadow:0 20px 60px rgba(0,0,0,.3)}
.todo-dlg::backdrop{background:rgba(15,20,30,.45)}
.todo-dlg-kopf{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 6px}
.todo-dlg-tabs{display:flex;gap:4px;padding:0 16px;border-bottom:1px solid var(--line,#e5e5ea)}
.todo-dlg-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:8px 10px;font:inherit;color:var(--muted,#666);cursor:pointer}
.todo-dlg-tabs button.on{color:var(--ac);border-bottom-color:var(--ac);font-weight:600}
.todo-dlg form{padding:14px 16px 16px}
.todo-dlg textarea{width:100%}
.todo-dlg-liste{width:100%;min-height:180px}
.todo-dlg-suche{width:100%}
.mail-todos .task{position:relative}.mail-todos .todo-loesen{opacity:.5}.mail-todos .todo-loesen:hover{opacity:1}
.mail-todo-wahl{display:inline-flex;gap:4px;align-items:center}.mail-todo-wahl select{max-width:150px}
.detail-side select{max-width:100%}

/* Einheitliche Button-Menüs (Umschalter, Dialog-Reiter) – gleicher Stil wie .tabs / .tabs-pills */
.seg{background:color-mix(in srgb,var(--gys) 45%,var(--sf2));border:1px solid var(--bd);border-radius:11px;padding:4px;gap:4px}
.seg span,.seg a,.seg button{border:1px solid var(--bd);background:color-mix(in srgb,var(--sf) 75%,transparent);border-radius:7px;font-weight:500;color:var(--mt);box-shadow:0 1px 1px rgba(0,0,0,.03);transition:background .12s,color .12s,border-color .12s,box-shadow .12s}
.seg label:hover span,.seg a:hover,.seg button:hover{background:var(--sf);border-color:var(--bd2);color:var(--tx)}
.seg input:checked+span,.seg a.on,.seg button.on{background:var(--sf);border-color:color-mix(in srgb,var(--ac) 45%,var(--bd2));color:var(--tx);font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.06),0 3px 8px rgba(0,0,0,.06),inset 0 -2px 0 var(--ac)}
.seg input:focus-visible+span{outline:2px solid color-mix(in srgb,var(--ac) 45%,transparent);outline-offset:1px}
.todo-dlg-tabs{gap:5px;margin:8px 16px 4px;padding:5px;border:1px solid var(--bd);border-radius:12px;background:color-mix(in srgb,var(--gys) 45%,var(--sf2));width:fit-content}
.todo-dlg-tabs button{border:1px solid var(--bd);border-radius:8px;padding:5px 12px;background:color-mix(in srgb,var(--sf) 75%,transparent);color:var(--mt);font-size:13px;font-weight:500}
.todo-dlg-tabs button:hover{background:var(--sf);border-color:var(--bd2);color:var(--tx)}
.todo-dlg-tabs button.on{background:var(--sf);border-color:color-mix(in srgb,var(--ac) 45%,var(--bd2));color:var(--tx);font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.06),inset 0 -2px 0 var(--ac)}

/* Auftragsliste: Akkordeon + Prüfung „abrechenbar?“ */
.akk-tab .akk-sp{width:34px;padding-right:0}
.akk-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid transparent;border-radius:7px;background:none;color:var(--mt);cursor:pointer;padding:0}
.akk-btn:hover{background:var(--sf2);border-color:var(--bd);color:var(--tx)}
.akk-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--ac) 45%,transparent);outline-offset:1px}
.akk-chev{transition:transform .15s}
.akk-zeile{cursor:pointer}
.akk-zeile:hover>td{background:var(--sf2)}
.akk-zeile.akk-offen>td{background:color-mix(in srgb,var(--acs) 55%,var(--sf));border-bottom-color:transparent}
.akk-zeile.akk-offen .akk-chev,[data-akk-alle].akk-alle-auf .akk-chev{transform:rotate(90deg)}
[data-akk-alle] .akk-chev{transform:rotate(0)}
.akk-detail>td{background:var(--sf2);padding:0 0 0 34px;border-bottom:2px solid var(--bd)}
.akk-inhalt{padding:12px 14px 14px;border-left:3px solid var(--ac)}
.akk-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,1fr);gap:16px;align-items:start}
.akk-pos-tab{background:var(--sf);border:1px solid var(--bd);border-radius:8px}
.akk-pos-tab th,.akk-pos-tab td{padding:6px 9px;font-size:12.5px;vertical-align:top}
.akk-pos-tab tr.akk-hl td{background:var(--sf2)}
.akk-mehr{border:0;background:none;color:var(--ac);font:inherit;font-size:12px;cursor:pointer;padding:0}
.akk-summen{margin:8px 0 0 auto;font-size:13px}
.akk-seite{display:flex;flex-direction:column;gap:10px}
.akk-box{background:var(--sf);border:1px solid var(--bd);border-radius:8px;padding:9px 11px;font-size:13px}
.akk-box ul{margin:6px 0 0;padding-left:18px;font-size:12.5px}.akk-box li{margin:2px 0}
.akk-pruef.akk-abrechenbar{border-color:color-mix(in srgb,var(--gn) 45%,var(--bd))}
.akk-pruef.akk-evtl{border-color:color-mix(in srgb,var(--am) 55%,var(--bd))}
.akk-notiz{margin:6px 0 0;font-size:12.5px;white-space:normal}
.akk-aktionen{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:12px}
.akk-meldung{font-size:12.5px}
.ar-badge{margin-top:3px;white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis;display:inline-block;vertical-align:middle}
@media (max-width:860px){.akk-grid{grid-template-columns:1fr}.akk-detail>td{padding-left:0}}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .b-purple{background:rgba(167,123,240,.16);color:#c3a5f5}}
:root[data-theme="dark"] .b-purple{background:rgba(167,123,240,.16);color:#c3a5f5}
/* Spam-Badge klickbar + Hinweis mit Rückgängig */
button.spam-klick{border:0;cursor:pointer;font-family:inherit;line-height:inherit;vertical-align:baseline}
button.spam-klick:hover{filter:brightness(.92);box-shadow:0 0 0 2px color-mix(in srgb,var(--rd) 35%,transparent)}
button.spam-klick:disabled{opacity:.5;cursor:wait}
.mail-toast.spam{display:flex;align-items:center;gap:14px}
.mail-toast.spam button{background:transparent;color:inherit;border:1px solid currentColor;border-radius:7px;padding:3px 10px;font:inherit;font-weight:600;cursor:pointer;opacity:.9}
.mail-toast.spam button:hover{opacity:1}
/* E-Mail-Signatur: Vorschau wie im Postfach des Empfängers (immer hell) */
.mail-sig-box{background:#fff;color:#1d1d1f;border:1px solid var(--bd);border-radius:10px;padding:14px 18px;overflow-x:auto;color-scheme:light}
.mail-sig-vorschau>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mail-sig-vorschau>summary::-webkit-details-marker{display:none}
.mail-sig-vorschau[open] .mail-sig-box{margin-top:10px}
/* ---- Eigenständige Handy-Apps (Kachel-Start /app, „BW-Media Teams“ /teams): schlanker Rahmen ohne CRM-Menü ---- */
.app-shell{display:block;min-height:100dvh}
.app-shell>.main{margin:0!important;padding:0;min-height:100dvh;display:flex;flex-direction:column}
.appbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:10px;padding:calc(8px + env(safe-area-inset-top)) 14px 8px;background:var(--sf);border-bottom:1px solid var(--bd);min-height:52px}
.appbar-logo img{display:block;border-radius:7px}
.appbar-titel{font-size:17px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.appbar-r{display:flex;gap:6px;align-items:center}
.app-shell .content{flex:1;max-width:none;padding:14px 14px calc(18px + env(safe-area-inset-bottom))}
.app-shell-body .ki-fab{bottom:calc(16px + env(safe-area-inset-bottom))}
/* Teams im App-Rahmen: volle Höhe unter der App-Leiste */
.app-shell .content:has(.team-app){padding:0}
.app-shell .team-app,.app-shell .team-app.mit-thread{height:calc(100dvh - 53px - env(safe-area-inset-top));border:0;border-radius:0;box-shadow:none}
body.app-shell-body:has(.team-app) .ki-fab{display:none}
/* Kachel-Startseite */
.kacheln-suche{display:flex;align-items:center;gap:8px;background:var(--sf);border:1px solid var(--bd);border-radius:14px;padding:10px 14px;margin:2px 0 16px;box-shadow:var(--sh)}
.kacheln-suche input{border:0;background:transparent;flex:1;font-size:16px;outline:none;padding:2px 0;color:var(--tx)}
.kacheln{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;max-width:980px}
@media (max-width:520px){.kacheln{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}}
@media (max-width:360px){.kacheln{grid-template-columns:repeat(2,minmax(0,1fr))}}
.kachel{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;aspect-ratio:1/1;padding:10px 6px;border-radius:18px;background:var(--sf);border:1px solid var(--bd);box-shadow:var(--sh);color:var(--tx);text-decoration:none;text-align:center;font-weight:600;font-size:13px;line-height:1.25;transition:transform .12s ease,box-shadow .12s ease;-webkit-tap-highlight-color:transparent}
.kachel:active{transform:scale(.96)}
@media (hover:hover){.kachel:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.08)}}
.kachel-ic{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;color:#fff;background:var(--k,#222d5a);box-shadow:0 4px 12px color-mix(in srgb,var(--k,#222d5a) 35%,transparent)}
.kachel-ic .ic{width:26px;height:26px}
.kachel em{position:absolute;top:8px;right:8px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#d92d20;color:#fff;font-style:normal;font-size:12px;line-height:22px;font-weight:700}
.kachel small{display:block;font-weight:400;color:var(--mt);font-size:11.5px}
.kacheln-titel{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--mt);margin:20px 0 8px;font-weight:700}
.kacheln-fuss{margin-top:22px;display:flex;gap:10px;flex-wrap:wrap}
.nur-mobil{display:none!important}
@media (max-width:860px){.nur-mobil{display:inline-flex!important}}
.app-shell .content:has(.kacheln){padding-bottom:calc(96px + env(safe-area-inset-bottom))}
.content:has([data-todo-board]){max-width:none} /* Board nutzt die volle Breite (v. a. bei eingeklapptem Menü) */
/* Mail-Ordnerbaum: Unterordner eingerückt, mit feiner Führungslinie */
.mail-nav a.ord-tief{padding-left:calc(8px + var(--tiefe,1) * 14px);position:relative;color:var(--tx)}
.mail-nav a.ord-tief::before{content:'';position:absolute;left:calc(var(--tiefe,1) * 14px - 2px);top:4px;bottom:4px;border-left:1px solid var(--bd)}
/* Ordnerbaum: Auf-/Zuklapp-Pfeil */
.mail-nav .ord-lab{display:inline-flex;align-items:center;gap:2px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mail-nav .ord-pfeil{flex:0 0 16px;width:16px;height:18px;display:inline-grid;place-items:center;margin-left:-4px;border-radius:4px;color:var(--mt);cursor:pointer}
.mail-nav .ord-pfeil::before{content:'';width:6px;height:6px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(-45deg);transition:transform .15s ease}
.mail-nav a.ord-offen>.ord-lab>.ord-pfeil::before{transform:rotate(45deg) translate(-1px,-1px)}
.mail-nav .ord-pfeil:hover{background:var(--acs);color:var(--ac)}
.mail-nav .ord-pfeil.leer{cursor:default}.mail-nav .ord-pfeil.leer::before{content:none}.mail-nav .ord-pfeil.leer:hover{background:none}
.mail-nav em.ord-summe{opacity:.75}
.mail-nav a[hidden]{display:none!important}
/* Rechtsklick-Menü Mail-Ordner */
.ctx-menue{position:fixed;z-index:2000;min-width:230px;max-width:320px;background:var(--sf);color:var(--tx);border:1px solid var(--bd);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.18);padding:5px;font-size:13.5px}
.ctx-menue .ctx-kopf{padding:6px 10px 5px;font-size:12px;color:var(--mt);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ctx-menue button[role=menuitem]{display:block;width:100%;text-align:left;background:none;border:0;border-radius:6px;padding:7px 10px;color:inherit;font:inherit;cursor:pointer}
.ctx-menue button[role=menuitem]:hover,.ctx-menue button[role=menuitem]:focus{background:var(--acs);color:var(--ac);outline:none}
.ctx-menue button.gefahr{color:var(--rd)}.ctx-menue button.gefahr:hover,.ctx-menue button.gefahr:focus{background:var(--rds);color:var(--rd)}
.ctx-menue button[disabled]{opacity:.45;cursor:not-allowed;background:none!important;color:inherit!important}
.ctx-menue hr{border:0;border-top:1px solid var(--bd);margin:4px 2px}
.ctx-eingabe{width:260px;padding:8px}.ctx-eingabe input{width:100%;margin:2px 0 8px}.ctx-eingabe .ctx-knoepfe{display:flex;gap:6px;justify-content:flex-end}
.mail-nav .mail-konto[data-konto-menue]{cursor:context-menu}
/* ===== BW-Media Mail (/mailapp): losgelöstes Mailprogramm im Vollbild ===== */
.mail-app{--appbar:53px}
.mail-app .appbar{gap:8px;padding-top:calc(6px + env(safe-area-inset-top));padding-bottom:6px;min-height:48px;--appbar:49px}
.mail-app{--appbar:49px}
.mailapp-marke{display:flex;align-items:center;gap:9px;color:inherit;text-decoration:none;font-size:16px;white-space:nowrap}
.mailapp-marke img{border-radius:7px;display:block}
.mail-app .appbar-r{gap:4px}.mail-app .appbar-r form{display:inline-flex;margin:0}
.mail-app .ki-fab{display:none}
@media (max-width:640px){.mail-app .nur-breit{display:none}.mailapp-marke b{display:none}}
.mailapp-hinweis{display:block;width:100%;border:0;background:var(--acs);color:var(--ac);font:inherit;font-weight:600;font-size:13.5px;padding:8px 12px;cursor:pointer;text-align:center;border-bottom:1px solid var(--bd)}
.mailapp-hinweis:hover{filter:brightness(.97)}
/* andere Seiten der App (Lesen, Schreiben, Einstellungen): zentriert */
.mail-app .content:not(:has(.mail-layout)){width:100%;max-width:1280px;margin:0 auto}
/* Hauptansicht: Ordner | Liste | Lesebereich über die ganze Fensterhöhe */
@media (min-width:900px){
  .mail-app .content:has(.mail-layout){padding:0!important}
  .mail-app .content:has(.mail-layout)>.page-head,.mail-app .content:has(.mail-layout)>.crumbs{display:none}
  .mail-app .content:has(.mail-layout)>.flash{margin:8px 12px 0}
  .mail-app .mail-layout{display:grid;gap:0;height:calc(100dvh - var(--appbar) - env(safe-area-inset-top));overflow:hidden;
    grid-template-columns:clamp(200px,17vw,260px) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"nav kopf" "nav liste" "nav pager"}
  .mail-app .mail-haupt{display:contents}
  .mail-app .mail-nav-box{grid-area:nav;overflow:auto;background:var(--sf2);border-right:1px solid var(--bd);padding:6px 4px 10px;min-height:0}
  .mail-app .mail-nav{position:static;max-height:none;overflow:visible}
  .mail-app .mail-kopf{grid-area:kopf;margin:0!important;padding:8px 12px;border-bottom:1px solid var(--bd);background:var(--sf);gap:10px;min-width:0}
  .mail-app .mail-kopf h2{font-size:16px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:30%}
  .mail-app [data-mail-liste]{grid-area:liste;overflow:auto;max-height:none!important;border:0;border-radius:0;box-shadow:none;margin:0;min-height:0;background:var(--sf)}
  .mail-app .mail-layout>.pager,.mail-app .mail-haupt>.pager{grid-area:pager;margin:0;padding:6px 12px;border-top:1px solid var(--bd);background:var(--sf)}
  .mail-app .mail-vorschau{grid-area:vorschau;height:auto!important;min-height:0;border:0;border-radius:0}
  /* Lesebereich rechts (Standard, wie Outlook) */
  .mail-app .mail-layout.mit-vorschau.v-rechts{grid-template-columns:clamp(200px,17vw,260px) minmax(340px,36%) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"nav kopf kopf" "nav liste vorschau" "nav pager vorschau"}
  .mail-app .mail-layout.mit-vorschau.v-rechts .mail-vorschau{border-left:1px solid var(--bd)}
  /* Lesebereich unten */
  .mail-app .mail-layout.mit-vorschau.v-unten{grid-template-rows:auto minmax(0,42%) auto minmax(0,1fr);grid-template-areas:"nav kopf" "nav liste" "nav pager" "nav vorschau"}
  .mail-app .mail-layout.mit-vorschau.v-unten .mail-vorschau{border-top:1px solid var(--bd)}
  /* Liste rechts-Modus: Mails als zweizeilige Karten statt Tabelle */
  .mail-app .v-rechts .mail-tab:not(.vm-tab){display:block}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) thead{display:none}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) tbody{display:block}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) tr{display:grid;grid-template-columns:24px minmax(0,1fr) auto;grid-template-areas:"cb wer datum" "cb inhalt inhalt" "cb kunde kunde";column-gap:6px;row-gap:1px;padding:8px 12px 8px 6px;border-bottom:1px solid var(--bd);cursor:pointer}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) td{display:block;border:0!important;padding:0!important;background:none!important;min-width:0}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) td.mail-cb{grid-area:cb;padding-top:2px!important}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) td.mail-wer{grid-area:wer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) td.mail-wer br{display:none}.mail-app .v-rechts .mail-tab:not(.vm-tab) td.mail-wer small{margin-left:6px}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) td.mail-datum{grid-area:datum;text-align:right}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) td.mail-inhalt{grid-area:inhalt;overflow:hidden}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) td.mail-inhalt>a{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:inherit}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) td.mail-inhalt br{display:none}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) td.mail-inhalt small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) td.mail-kunde{grid-area:kunde}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) td.mail-kunde:empty{display:none}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) tr:hover{background:var(--sf2)}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) tr.aktiv{background:var(--acs);box-shadow:inset 3px 0 0 var(--ac)}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) tr.mail-neu{box-shadow:inset 3px 0 0 var(--bl)}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) tr.mail-neu.aktiv{box-shadow:inset 3px 0 0 var(--ac)}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) tr.mail-neu td.mail-inhalt>a{font-weight:700}
  .mail-app [data-mail-liste] .mail-aktionen{position:sticky;top:0;z-index:3;background:var(--sf);padding:6px 10px;border-bottom:1px solid var(--bd);gap:4px 6px}
}
@media (min-width:900px){.mail-app .mail-layout.mit-vorschau .mail-vorschau{grid-area:vorschau}}
@media (min-width:900px){
  .mail-app .mail-layout{align-items:stretch}
  .mail-app .mail-vorschau{display:flex}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) td.mail-inhalt{white-space:nowrap;text-overflow:ellipsis}
  .mail-app .v-rechts .mail-tab:not(.vm-tab) td.mail-inhalt>a{display:inline}
  /* Werkzeugleiste wie Outlook: Aktionen erst, wenn Mails ausgewählt sind */
  .mail-app [data-mail-liste]:not(:has(input[name="ids[]"]:checked)) .mail-aktionen>:not(label.check):not(.muted):not(.mail-ansicht):not(button[formaction*="alle-gelesen"]):not(input[type=hidden]){display:none}
}
@media (min-width:900px){.mail-app .mail-layout>.mail-nav-box{grid-area:auto!important;grid-column:1!important;grid-row:1 / -1!important}}
@media (max-width:899px){.mail-kopf .filters{flex-wrap:wrap!important}.mail-kopf .filters input[type=search]{flex:1 1 100%!important;max-width:none!important}.mail-app .mail-ansicht>button:first-child:not([data-vorschau-schalter]){display:none}}
.mail-kopf-akt{flex-shrink:0}
.mail-kopf .filters{min-width:auto;justify-content:safe flex-end}
/* Abwesenheitsnotiz */
.abw-leiste{flex:1 1 100%;order:-1;display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;padding:7px 12px;border-radius:9px;background:var(--ams);color:var(--tx);border:1px solid color-mix(in srgb,var(--am) 35%,transparent);font-size:13.5px}
.abw-leiste>span{flex:1;min-width:200px}.abw-leiste form{margin:0}
.abw-status{display:flex;align-items:center;flex-wrap:wrap;gap:10px;max-width:860px;padding:10px 14px;margin-bottom:12px;border-radius:10px;border:1px solid var(--bd);background:var(--sf2)}
.abw-status.abw-aktiv{background:var(--ams);border-color:color-mix(in srgb,var(--am) 35%,transparent)}.abw-status form{margin:0 0 0 auto}
.mail-konto .abw-marke{text-decoration:none;font-size:13px;margin-left:2px}
.mail-konto:has(.abw-marke){display:flex;align-items:center;gap:4px}

/* Postfach-Assistent (/mail/konten/assistent) */
.mka{max-width:760px;display:flex;flex-direction:column;gap:14px}
.mka-schritte{display:flex;gap:6px;list-style:none;margin:0;padding:0;counter-reset:s}
.mka-schritte li{flex:1;counter-increment:s;padding:8px 10px;border-radius:8px;background:var(--bg2,#eef0f3);color:var(--muted,#667);font-size:13px;font-weight:600}
.mka-schritte li::before{content:counter(s);display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;margin-right:6px;background:#fff;color:inherit;font-size:12px}
.mka-schritte li.on{background:var(--primary,#222d5a);color:#fff}.mka-schritte li.on::before{color:var(--primary,#222d5a)}
.mka-schritte li.fertig{background:#e3f4e8;color:#17703a}.mka-schritte li.fertig::before{content:'✓'}
.mka-pw{display:flex;gap:6px}.mka-pw input{flex:1}
.mka-paar{display:flex;gap:6px}.mka-paar input{width:90px;flex:none}.mka-paar select{flex:1}
.mka-fehler{white-space:pre-line;margin:0}
.mka-log{margin:0;padding-left:18px;font-size:14px;line-height:1.7}
.mka-log li:last-child{font-weight:600}
.mka-log li.laeuft::after,.mka-log:not(:has(li.fertig)) li:last-child::after{content:'';display:inline-block;width:12px;height:12px;margin-left:8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:mka-dreh .8s linear infinite;vertical-align:-1px}
@keyframes mka-dreh{to{transform:rotate(360deg)}}
.mka-ergebnis{display:flex;flex-direction:column;gap:6px}
.mka-zeile{display:grid;grid-template-columns:110px 1fr;gap:8px;padding:8px 10px;border-radius:8px;background:#eaf6ee;font-size:14px}
.mka-zeile.warn{background:#fff6e0}
.mka-art{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mka-wahl{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border:1px solid var(--bd,#dde);border-radius:10px;cursor:pointer}
.mka-wahl:has(input:checked){border-color:var(--primary,#222d5a);box-shadow:0 0 0 1px var(--primary,#222d5a)}
.mka-wahl span{display:flex;flex-direction:column;gap:2px}.mka-wahl small{color:var(--muted,#667);font-size:12.5px}
.mka-wer{border:1px solid var(--bd,#dde);border-radius:8px;padding:8px 12px;display:flex;flex-wrap:wrap;gap:6px 14px}
.mka-benutzer{display:flex;flex-wrap:wrap;gap:4px 14px;width:100%}
.mailapp-kopf{margin:4px 0 12px}
@media (max-width:640px){.mka-art{grid-template-columns:1fr}.mka-zeile{grid-template-columns:1fr}.mka-schritte li{font-size:12px;padding:6px}}

/* E-Mails am To-do */
.todo-mails{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.todo-mails li{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;background:var(--bg2,#f4f5f7)}
.todo-mails .tm-r{flex:none;width:18px;text-align:center;color:var(--muted,#667);font-weight:700}
.todo-mails .tm-b{flex:1;min-width:0;display:flex;flex-direction:column;color:inherit;text-decoration:none}
.todo-mails .tm-b b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.todo-mails .tm-b:hover b{text-decoration:underline}
.todo-mails .tm-v{color:var(--muted,#667);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.todo-mails form{margin:0;flex:none}
.tm-suche{gap:6px}.tm-suche input{flex:1;min-width:0}
.tm-vorschlag{display:flex;flex-direction:column;gap:6px}
.todo-mail sup{font-size:10px;margin-left:1px}

/* Programmteile als eigene Apps (/apps/<app>) */
.crm-app .appbar{gap:6px;padding-top:calc(6px + env(safe-area-inset-top));padding-bottom:6px;min-height:50px}
.crm-app .appbar-titel{display:none}
.crm-app .appbar-r{gap:4px;margin-left:auto;flex:none}
.crmapp-marke{display:flex;align-items:center;gap:8px;color:inherit;text-decoration:none;flex:none;margin-right:6px}
.crmapp-marke img{border-radius:7px}.crmapp-marke b{font-size:16px;white-space:nowrap}
.crmapp-nav{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0}
.crmapp-nav::-webkit-scrollbar{display:none}
.crmapp-nav a{display:flex;align-items:center;gap:6px;padding:7px 11px;border-radius:8px;color:var(--muted,#555);text-decoration:none;font-size:14px;font-weight:500;white-space:nowrap}
.crmapp-nav a:hover{background:var(--bg2,#f0f1f4);color:var(--fg,#111)}
.crmapp-nav a.on{background:color-mix(in srgb,var(--app-farbe,#222d5a) 12%,transparent);color:var(--app-farbe,#222d5a);font-weight:600}
.app-kunden{--app-farbe:#0f766e}.app-aufgaben{--app-farbe:#7c3aed}.app-buchhaltung{--app-farbe:#15803d}
.crm-app .content{max-width:1600px;margin:0 auto;width:100%}
@media (max-width:760px){.crmapp-marke b{display:none}.crmapp-nav a span{display:none}.crmapp-nav a{padding:8px 10px}.crmapp-nav a.on span{display:inline}}
/* Apps-Übersicht */
.apps-raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin:12px 0 18px}
.apps-karte{display:grid;grid-template-columns:64px 1fr;gap:6px 14px;align-items:start;border-top:4px solid var(--app)}
.apps-karte img{border-radius:14px}.apps-karte h3{margin:2px 0 4px}.apps-karte p{margin:0 0 4px}
.apps-teile{color:var(--app);font-weight:500}
.apps-knoepfe{grid-column:1/-1;display:flex;gap:8px;margin-top:4px}
.apps-anleitung{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.apps-anleitung p{margin:4px 0 0}

/* Ruf der Mailserver (/mail/ruf) */
.ruf-ip.ruf-schlecht{border-left:4px solid #dc2626}.ruf-ip.ruf-gut{border-left:4px solid #16a34a}
.ruf-listen{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.ruf-liste{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:8px;background:#f0f9f2;font-size:13px}
.ruf-liste small{color:var(--muted,#667)}.ruf-liste.ja{background:#fdecec}.ruf-liste.ja b{color:#b91c1c}.ruf-liste.nein b{color:#15803d}
.ruf-liste.unklar{background:var(--bg2,#f2f3f5)}.ruf-liste .btn{align-self:flex-start;margin-top:4px}.ruf-txt{word-break:break-word}
[data-theme=dark] .ruf-liste{background:#183021}[data-theme=dark] .ruf-liste.ja{background:#3a1717}

/* Warteschlange: einzelne Mail */
.vl-link{color:inherit;text-decoration:none}.vl-link:hover{text-decoration:underline}
.ws-kopfdaten{display:grid;grid-template-columns:110px 1fr;gap:6px 14px;margin:0;font-size:14px}
.ws-kopfdaten dt{color:var(--muted,#667)}.ws-kopfdaten dd{margin:0;word-break:break-word}
.ws-html{width:100%;min-height:520px;border:1px solid var(--bd,#dde);border-radius:8px;background:#fff}
.ws-text-voll{white-space:pre-wrap;font:14px/1.55 inherit;font-family:inherit;background:var(--bg2,#f6f7f9);padding:14px;border-radius:8px;margin:0}
@media (max-width:640px){.ws-kopfdaten{grid-template-columns:1fr}.ws-kopfdaten dt{margin-top:6px}}

.mail-nav .ord-gruppe{display:flex;align-items:center;gap:4px;width:100%;margin:6px 0 2px;padding:3px 8px;background:none;border:0;color:var(--mt);font:inherit;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;text-align:left}
.mail-nav .ord-gruppe:hover{color:var(--ac)}
.mail-nav .ord-gruppe .ord-pfeil{transform:rotate(90deg);transition:transform .15s ease}.mail-nav .ord-gruppe.zu .ord-pfeil{transform:none}

.mail-nav .mail-konto{display:flex;align-items:center;gap:2px}.mail-nav .mail-konto .ord-pfeil{transform:rotate(90deg);transition:transform .15s ease}.mail-nav .mail-konto.zu .ord-pfeil{transform:none}

/* Mail: Schnellfilter + aufgeräumter Kopf (Handy/Desktop getrennt) */
.mail-schnell{margin:0;padding:3px;flex:1 1 100%;order:3;width:auto;max-width:100%;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}
.mail-schnell::-webkit-scrollbar{display:none}
.mail-schnell a{white-space:nowrap;flex:0 0 auto}
.mail-kopf .filters{flex-wrap:wrap}
@media (min-width:900px){.mail-app .mail-schnell{flex:0 1 auto;order:0;margin-right:auto}.mail-app .mail-kopf{flex-wrap:wrap}}
@media (max-width:899px){
  /* Handy: Aktionsleiste nur bei Auswahl, einzeilig wischbar; Nebensächliches ausblenden */
  .mail-app [data-mail-liste]:not(:has(input[name="ids[]"]:checked)) .mail-aktionen>:not(label.check):not(.muted):not(input[type=hidden]):not(button[formaction*="alle-gelesen"]){display:none}
  .mail-app .mail-aktionen{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;position:sticky;top:0;z-index:3;background:var(--sf)}
  .mail-app .mail-aktionen::-webkit-scrollbar{display:none}
  .mail-app .mail-aktionen>*{flex:0 0 auto}
  .mail-app .mail-ansicht,.mail-app [data-tasten-hilfe]{display:none!important}
  .mail-app .mail-kunde-wahl,.mail-app .mail-todo-wahl{display:none}
  .mail-app [data-mail-liste]:has(input[name="ids[]"]:checked) .mail-kunde-wahl,.mail-app [data-mail-liste]:has(input[name="ids[]"]:checked) .mail-todo-wahl{display:inline-flex}
}
@media (max-width:640px){
  .mail-app .appbar-r [data-mailapp-benachr],.mail-app .appbar-r a[href="/"][target]{display:none!important}
  .mail-kopf{gap:6px!important;padding:6px 10px}
  .mail-kopf .filters{flex:1 1 100%;gap:6px;flex-wrap:nowrap!important}
  .mail-kopf .filters input[type=search]{flex:1 1 auto!important;min-width:0}
  .mail-kopf .filters .check{display:none}
  .mail-kopf .filters:has(input[name=such]:not(:placeholder-shown)) .check{display:inline-flex}
  .mail-kopf .filters:has(input[name=such]:not(:placeholder-shown)){flex-wrap:wrap!important}
  .mail-such-btn{padding:6px 10px;flex:0 0 auto}
  .mail-app .abw-leiste{font-size:12.5px;padding:6px 10px}
}
.mail-such-btn .nur-breit{display:none!important}
@media (min-width:900px){
  .mail-kopf .mail-schnell{order:1;flex:0 0 auto;margin:0}
  .mail-kopf .filters{order:2;flex:1 1 260px;flex-wrap:nowrap;margin-left:0;justify-content:flex-end}
  .mail-kopf .filters input[type=search]{flex:1 1 220px;max-width:420px}
  .mail-app .mail-kopf h2{max-width:none}
}

/* Mail (Handy, App und CRM): kompakter Kopf – Ordnerleiste, Suche, Filter und Liste randlos */
.mail-nav-box>summary .nb-titel{font-weight:700}
@media (max-width:899px){
  .mail-app .content:has(.mail-layout){padding:0!important}
  .mail-app .content:has(.mail-layout)>.page-head,.mail-app .content:has(.mail-layout)>.crumbs{display:none}
  .mail-app .mail-layout{display:block;gap:0}
  .mail-app .mail-nav-box{border:0;border-bottom:1px solid var(--bd);border-radius:0;background:var(--sf);margin:0}
  .mail-app .mail-nav-box>summary{padding:9px 14px;font-size:15px;display:flex;align-items:center;gap:6px}
  .mail-app .mail-nav-box>summary::after{content:'▾';margin-left:auto;color:var(--mt)}
  .mail-app .mail-nav-box[open]>summary::after{content:'▴'}
  .mail-app .mail-nav-box .nb-lbl{display:none}
  .mail-app .mail-kopf{display:block;padding:8px 10px 4px;margin:0!important;background:var(--sf);border:0}
  .mail-app .mail-kopf h2{display:none}
  .mail-app .mail-kopf .filters{display:flex!important;flex-wrap:nowrap!important;width:100%;max-width:none;margin:0 0 6px;gap:6px;justify-content:stretch}
  .mail-app .mail-kopf .filters input[type=search]{flex:1 1 auto!important;min-width:0;max-width:none!important;width:auto;height:36px;padding:0 12px;font-size:14px}
  .mail-app .mail-such-btn{height:36px;padding:0 11px}
  .mail-app .mail-schnell{background:none;border:0;padding:0 0 6px;margin:0;gap:6px;flex:none;width:100%;box-shadow:none}
  .mail-app .mail-schnell a{padding:5px 12px;font-size:13px;border-radius:16px;box-shadow:none}
  .mail-app .mail-schnell a.on{background:var(--ac);color:#fff;border-color:var(--ac);box-shadow:none}
  .mail-app [data-mail-liste]{border:0;border-radius:0;box-shadow:none;margin:0;border-top:1px solid var(--bd)}
  .mail-app .mail-aktionen{padding:4px 12px;min-height:34px}
  .mail-app .mail-tab thead th{padding:4px 6px;font-size:11px}
  .mail-app .mail-tab thead th.mail-cb{display:none}
}
@media (max-width:899px){
  .mail-app .mail-kopf-akt:empty{display:none}
  .mail-app .mail-aktionen{padding:2px 12px;min-height:30px;font-size:13px}
  .mail-app .mail-tab thead tr{display:flex;gap:4px;padding:0 8px 2px}
  .mail-app .mail-tab thead th{padding:2px 8px!important;background:none!important;border:0!important}
  .mail-app .mail-tab thead th.hide-sm{display:none}
}
.tbl tr.wv-grp td{background:var(--bg-soft,#f1f5f9);border-top:2px solid var(--line,#cbd5e1);padding:10px 12px;font-size:1rem}

/* Wischgesten in der Mailliste */
.mail-tab tr.wischt td{transform:translateX(var(--sw,0));transition:none;position:relative;z-index:1;background:var(--bg,#fff)}
.mail-tab tbody tr{touch-action:pan-y}
.mail-wisch-hinweis{position:fixed;z-index:5;display:flex;align-items:center;padding:0 18px;color:#fff;font-weight:600;font-size:14px;pointer-events:none}
.mail-wisch-blatt{position:fixed;left:0;right:0;bottom:0;z-index:10000;background:var(--bg,#fff);color:var(--tx);border-radius:16px 16px 0 0;box-shadow:0 -8px 30px rgba(0,0,0,.3);padding:8px 12px calc(12px + env(safe-area-inset-bottom));max-height:70vh;overflow:auto;display:flex;flex-direction:column;gap:2px}
.mail-wisch-blatt .mail-wisch-kopf{font-weight:600;padding:10px 6px}
.mail-wisch-blatt button{background:none;border:0;text-align:left;padding:13px 10px;font:inherit;color:inherit;border-radius:9px}
.mail-wisch-blatt button:active{background:rgba(127,127,127,.18)}
.mail-wisch-blatt .abbruch{color:var(--rd);margin-top:4px}

body.mail-wischt-maus{user-select:none;cursor:grabbing}
/* dezente Buttons: ehemals reine Textlinks (Bilder laden, Als Beleg übernehmen, Löschen …) */
.btn.ghost{border-color:var(--bd);background:color-mix(in srgb,var(--sf) 70%,transparent)}
.btn.ghost:hover{background:var(--gys);border-color:var(--bd2);box-shadow:0 1px 2px rgba(0,0,0,.06)}
.btn.ghost:active{transform:translateY(1px);box-shadow:none}
.btn.danger.ghost{border-color:color-mix(in srgb,var(--rd) 28%,var(--bd))}
.btn.danger.ghost:hover{background:var(--rds)}

.filter-zeile{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px 14px;margin-bottom:4px}.filter-zeile .tabs-pills{margin-bottom:8px}
.fz-label{display:inline-flex;align-items:center;gap:4px;padding:5px 6px 5px 8px;font-size:12px;color:var(--mt)}
.fz-n{font-size:11px;opacity:.7;font-variant-numeric:tabular-nums}
.tabs-pills.sm a{padding:4px 11px;font-size:12.5px}

.ansichten-zeile{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0 0 10px}
.chip-ansicht{display:inline-flex;align-items:center;gap:4px;padding:3px 11px;border-radius:999px;border:1px solid var(--bd);background:color-mix(in srgb,var(--sf) 75%,transparent);font-size:12.5px;color:var(--mt);text-decoration:none;transition:background .15s,border-color .15s}
.chip-ansicht:hover{background:var(--sf);border-color:var(--bd2);color:var(--tx)}
.chip-ansicht.on{background:var(--sf);border-color:color-mix(in srgb,var(--ac) 45%,var(--bd));color:var(--tx);font-weight:600}
.chip-ansicht.eigen{padding-right:4px}.chip-ansicht.eigen a{color:inherit;text-decoration:none}.chip-ansicht.eigen form{display:inline;margin:0}
.chip-ansicht.eigen button{border:0;background:none;color:var(--mt);cursor:pointer;font-size:11px;padding:2px 5px;border-radius:50%;opacity:.6}.chip-ansicht.eigen button:hover{opacity:1;background:var(--gys)}
.ansicht-neu{display:inline-flex;gap:4px;align-items:center}.ansicht-neu input{height:26px;font-size:12.5px;width:210px;padding:0 9px}

/* Mail-Kopf: Verschieben-Menü */
.mv-menue{position:relative;display:inline-block}.mv-menue>summary{list-style:none;cursor:pointer}.mv-menue>summary::-webkit-details-marker{display:none}
.mv-menue-box{position:absolute;right:0;top:calc(100% + 6px);z-index:50;width:min(340px,86vw);display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--sf);border:1px solid var(--bd2);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.mv-menue-box .ordner-wahl,.mv-menue-box select,.mv-menue-box input{width:100%}

.mv-menue-box2{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--bd);padding-top:8px}.mv-menue-box2 select{width:100%}
.mv-form1{display:flex;flex-direction:column;gap:8px}

/* Rechtsklick-Menü Mailliste */
.mail-ctx{position:fixed;z-index:10001;min-width:230px;max-width:90vw;background:var(--sf);color:var(--tx);border:1px solid var(--bd2);border-radius:11px;box-shadow:0 12px 36px rgba(0,0,0,.22);padding:5px;font-size:13.5px}
.mail-ctx .ctx-kopf{padding:5px 10px;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--mt)}
.mail-ctx .ctx-e{display:block;width:100%;text-align:left;border:0;background:none;color:inherit;font:inherit;padding:7px 10px;border-radius:7px;cursor:pointer}
.mail-ctx .ctx-e:hover,.mail-ctx .ctx-e:focus-visible{background:var(--gys);outline:none}.mail-ctx .ctx-rot{color:var(--rd)}.mail-ctx .ctx-e[hidden]{display:none}
.mail-ctx .ctx-t{height:1px;background:var(--bd);margin:4px 6px}
.mail-ctx .ctx-subbox{position:absolute;left:calc(100% + 4px);top:0;width:290px;background:var(--sf);border:1px solid var(--bd2);border-radius:11px;box-shadow:0 12px 36px rgba(0,0,0,.22);padding:7px}
.mail-ctx.ctx-links .ctx-subbox{left:auto;right:calc(100% + 4px)}
.mail-ctx .ctx-subbox[hidden]{display:none}.mail-ctx .ctx-subbox input{width:100%;margin-bottom:6px}
.mail-ctx .ctx-liste{max-height:min(55vh,420px);overflow:auto}.mail-ctx .ctx-gruppe{padding:6px 10px 2px;font-size:11px;text-transform:uppercase;color:var(--mt)}

/* Einheitliche Kopfleiste auf dem Handy: App-Symbol (Kacheln) immer ganz links, Titel, wenige Aktionen rechts */
.appbar-home{flex:none}
.mailapp-marke b{font-size:17px}
@media (max-width:860px){
  .mailapp-marke b{display:inline!important}
  .top .nur-mobil,.top2 .top-main>.nur-mobil{order:-3}
  .top .menu-btn{order:-2}
  .top .search{flex:1 1 0;min-width:0}.top .search input{min-width:0;width:100%}.top .search kbd{display:none}
  .top .top-r,.top2 .top-r{flex:none;gap:6px}
  .top .top-r>:not(.dd),.top2 .top-r>:not(.dd){display:none!important}
  .top2 .top-main .brand{order:-1}
}

.abwm-leiste{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.abwm-leiste form,.abw-mailhinweis form{display:inline;margin:0}

/* Change Log */
.cl-filter{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}.cl-filter input[type=search]{flex:1;min-width:180px}
.cl-tag{margin-bottom:18px}.cl-datum{margin:0 0 6px;font-size:1rem;position:sticky;top:0;background:var(--bg);padding:6px 0;z-index:1}
.cl-eintrag{display:flex;gap:10px;align-items:flex-start;padding:9px 12px;background:var(--sf);border:1px solid var(--bd);border-radius:var(--r);margin-bottom:6px}
.cl-b{flex:0 0 auto;min-width:120px;text-align:center}.cl-inhalt{flex:1;min-width:0}.cl-inhalt .muted{font-size:.9em;margin-top:2px}
@media(max-width:640px){.cl-eintrag{flex-wrap:wrap}.cl-b{min-width:0}}
/* Mail-Einzelansicht mobil: Verschieben-Menü als Bottom-Sheet statt links aus dem Bild */
@media (max-width:700px){
  .mv-menue-box{position:fixed;left:10px;right:10px;bottom:10px;top:auto;width:auto;max-height:70vh;overflow:auto;z-index:300}
  .mv-menue[open]::before{content:"";position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:299}
}
/* PDF-Betrachter (pdfview.js) */
html.pdfv-offen{overflow:hidden}
.pdfv{position:fixed;inset:0;z-index:2000;background:#3b3b3f;display:flex;flex-direction:column}
.pdfv-bar{display:flex;align-items:center;gap:10px;padding:10px 12px;padding-top:max(10px,env(safe-area-inset-top));background:#222;color:#fff}
.pdfv-bar button,.pdfv-bar a{background:none;border:0;color:#fff;font-size:20px;line-height:1;padding:8px 10px;text-decoration:none}
.pdfv-t{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:15px}
.pdfv-body{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;padding:4px;touch-action:pan-x pan-y pinch-zoom;text-align:center}
.pdfv-seite{display:block;margin:0 auto 6px;background:#fff;box-shadow:0 1px 6px rgba(0,0,0,.4);max-width:none}
.pdfv-msg{color:#ddd;padding:30px 16px}
/* Handy: Sammelaktionen der Mailliste umbrechen statt versteckt seitlich zu scrollen; Kopfzeile in der Browser-Ansicht ohne Überbreite */
@media (max-width:700px){
  .mail-app .mail-aktionen{flex-wrap:wrap;overflow-x:visible;max-height:42vh;overflow-y:auto}
  .mail-app .mail-aktionen>*{flex:0 1 auto;max-width:100%}
  .mail-kopf{flex-wrap:wrap}.mail-kopf h2{min-width:0;max-width:100%}
  .mail-kopf-akt{flex-wrap:wrap;max-width:100%;margin-left:0}
  .mail-kopf .filters{flex-wrap:wrap;max-width:100%;min-width:0}.mail-kopf .filters input[type=search]{min-width:0;max-width:100%;flex:1 1 100%}
  .mail-haupt,.mail-layout{min-width:0;max-width:100%}
}
/* Mail schreiben mobil: Aktionsleiste kompakt (nahm ~140px des Bildschirms ein) */
@media (max-width:700px){
  [data-mail-form] .form-actions.sticky{gap:4px 6px;padding:6px 8px;align-items:center;flex-wrap:wrap}
  [data-mail-form] .form-actions .btn{padding:7px 10px;font-size:13px;white-space:nowrap}
  [data-mail-form] .form-actions .check{font-size:12px;gap:4px;white-space:nowrap}
  [data-mail-form] .form-actions [data-entwurf-status]{display:none}
  [data-mail-form] .form-actions [data-senden]{flex:1 1 auto;justify-content:center}
}
@media (max-width:700px){
  [data-mail-form] .form-actions.sticky{padding:5px 64px 5px 8px;gap:4px 5px}
  [data-mail-form] .form-actions .btn{padding:6px 8px;font-size:12.5px}
  [data-mail-form] .form-actions .check{font-size:11.5px;gap:3px}
  [data-mail-form] .form-actions [data-senden]{flex:0 0 auto}
}
/* Bildschirmtastatur offen (wenig Höhe): Leiste nicht mehr mitlaufen lassen */
@media (max-width:700px) and (max-height:560px){[data-mail-form] .form-actions.sticky{position:static;padding-right:8px}}
.form-actions .fa-haupt,.form-actions .fa-opt{display:contents}
@media (max-width:700px){
  /* Nur Senden/Warteschlange/Entwurf laufen unten mit; Optionen + Abbrechen stehen darüber im normalen Fluss */
  [data-mail-form] .form-actions.sticky{display:contents}
  [data-mail-form] .form-actions .fa-opt,[data-mail-form] .form-actions .fa-abbr{order:1}
  [data-mail-form] .form-actions .fa-opt{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
  [data-mail-form] .form-actions .fa-abbr{align-self:flex-start}
  [data-mail-form] .form-actions .fa-haupt{order:2;display:flex;gap:6px;position:sticky;bottom:0;z-index:5;padding:6px 64px 6px 8px;margin:0 -8px;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(8px);border-top:1px solid var(--bd)}
  [data-mail-form] .form-actions .fa-haupt .btn{flex:0 1 auto}
  [data-mail-form] .form-actions .fa-haupt [data-senden]{flex:1 1 auto;justify-content:center}
}
@media (max-width:700px) and (max-height:560px){[data-mail-form] .form-actions .fa-haupt{position:static}}
/* Handy-Mailliste: Sammelleiste kompakt (→ info@, To-do, Löschen) – Rest im „⋯ Mehr“-Menü */
.mail-mehr-btn{display:none}
@media (max-width:700px){
  .mail-app .mail-aktionen .mail-mehr-btn{display:inline-flex}
  .mail-app .mail-aktionen:not(.mehr-offen)>:not(label.check):not(.muted):not(.mail-mehr-btn):not(input[type=hidden]):not(button[value="info"]):not(.mail-todo-wahl):not(button[value="papierkorb"]):not(button[value="loeschen"]):not(button[formaction*="alle-gelesen"]){display:none}
  .mail-app .mail-aktionen:not(.mehr-offen) .mail-todo-wahl select{display:none}
  .mail-app [data-mail-liste]:has(input[name="ids[]"]:checked) .mail-aktionen:not(.mehr-offen) button[formaction*="alle-gelesen"]{display:none}
  .mail-app .mail-aktionen:not(.mehr-offen){flex-wrap:nowrap;max-height:none;overflow:visible}
  .mail-app .mail-aktionen.mehr-offen>*{display:revert}
  .mail-app .mail-aktionen.mehr-offen .mail-mehr-btn{display:inline-flex}
  .mail-app .mail-aktionen.mehr-offen .mail-kunde-wahl,.mail-app .mail-aktionen.mehr-offen .mail-todo-wahl{display:inline-flex}
  .mail-app .mail-aktionen.mehr-offen input[type=hidden]{display:none}
}
@media (max-width:700px){.mail-app [data-mail-liste]:has(input[name="ids[]"]:checked) .mail-aktionen:not(.mehr-offen) .muted{display:none}}
/* Handy: Seitenzahlen der Mailliste als größere Tippflächen */
@media (max-width:700px){.mail-app .pager a,.mail-app .pager span.on{min-width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;font-size:14px}}
/* Mail: weitere Schnellfilter (Anhang, Kontakte, An mich, Zeitraum, Suche eingrenzen) */
.mail-filter2{display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center;flex:1 1 100%;order:9;margin-top:2px}
.mail-filter2 a{white-space:nowrap;flex:0 0 auto}
.mail-filter2 .mf2-trenn{width:1px;height:18px;background:var(--bd);margin:0 4px}
.mail-filter2 .mf2-lab{font-size:12px;color:var(--mt)}
@media (max-width:700px){
  .mail-filter2{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.mail-filter2::-webkit-scrollbar{display:none}
}
@media (max-width:700px){.mail-app .mail-aktionen:not(.mehr-offen)>button[value="kein_spam"]{display:inline-flex!important}}
@media (max-width:700px){.mail-app .mail-aktionen:not(.mehr-offen)>button[value="archivieren"]{display:inline-flex!important}}
@media (max-width:700px){.mail-app .mail-aktionen:not(.mehr-offen){flex-wrap:wrap}}
/* Handy: Archivieren/Kein Spam nur bei Auswahl; Filter-Chips mit größerer Tippfläche */
@media (max-width:700px){
  .mail-app [data-mail-liste]:not(:has(input[name="ids[]"]:checked)) .mail-aktionen>button[value="archivieren"],
  .mail-app [data-mail-liste]:not(:has(input[name="ids[]"]:checked)) .mail-aktionen>button[value="kein_spam"]{display:none!important}
  .mail-filter2 a{min-height:34px;display:inline-flex;align-items:center;padding-left:12px;padding-right:12px}
}
.mail-filter2 .mf2-aus{color:var(--danger,#b4141c);border:1px dashed currentColor;background:transparent}
@media (max-width:700px){.mail-filter2 .mf2-aus{position:sticky;left:0;z-index:2;background:var(--sf,#fff);box-shadow:6px 0 6px -4px var(--sf,#fff)}}
@media (max-width:700px){.mail-app .mail-aktionen .btn.sm,.mail-app .mail-aktionen button.btn{min-height:36px}.mail-app .mail-aktionen{gap:6px 6px}}
/* To-do mit Bild */
.bild-btn{padding:6px 10px;line-height:1}.bild-chip{cursor:pointer;font-size:12px;background:var(--sf);border:1px solid var(--bd,#ddd);border-radius:12px;padding:3px 9px;white-space:nowrap}
.bild-drop{outline:2px dashed #222d5a;outline-offset:-2px}
.tb-neu{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.tb-neu input[name=text]{flex:1 1 140px;width:auto}.tb-neu .bild-btn{padding:3px 7px;font-size:13px}
.todo-neu .bild-btn{justify-self:start}
.todo-bilder{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.todo-bilder figure{margin:0}
.todo-bilder img{width:100%;height:150px;object-fit:cover;border-radius:8px;border:1px solid var(--bd,#ddd);display:block}
.todo-bilder figcaption{display:flex;justify-content:space-between;align-items:center;gap:6px}.todo-bilder figcaption small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.todo-neu .bild-chip{grid-column:1/-1;justify-self:start}
.wv-upload>summary{cursor:pointer;font-weight:600;list-style:none;display:flex;align-items:center;gap:8px}.wv-upload>summary::-webkit-details-marker{display:none}
.wv-upload>summary::after{content:"▾";margin-left:auto;transition:transform .15s}.wv-upload:not([open])>summary::after{transform:rotate(-90deg)}
.wv-upload[open]>summary{margin-bottom:12px}
.wv-serie-info{font-size:13px;border:1px solid var(--bd,#ddd);border-radius:8px;padding:8px 10px;margin-top:8px;background:var(--sf)}.wv-serie-info ul{margin:6px 0 6px 18px;padding:0}.wv-serie-info .pos{color:#1a7f37}
.icon-btn.re-bez{color:#1a9b4b}.icon-btn.re-bez:hover{background:#e7f6ec;color:#127a39}
