:root{--bg:#f4f7fb;--panel:#fff;--panel-2:#f8fafc;--text:#172033;--muted:#687386;--line:#dfe5ee;--primary:#1668e8;--primary-dark:#0d47a1;--sidebar:#0c1b31;--sidebar-2:#122540;--success:#1d9b55;--warning:#d88914;--danger:#d43d4f;--info:#246ca8;--shadow:0 16px 42px rgba(15,31,55,.09);--radius:18px;--radius-sm:11px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:light}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}body{font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.65rem,2vw,2.2rem);line-height:1.15;margin-bottom:.5rem}h2{font-size:1.2rem}h3{font-size:.96rem;margin-bottom:.35rem}.muted{color:var(--muted)}small{display:block;color:var(--muted)}code,pre{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--sidebar),#091426);color:#dfe9f8;padding:22px 16px;display:flex;flex-direction:column;z-index:30}.brand{display:flex;align-items:center;gap:11px}.brand strong,.brand small{display:block;color:inherit;line-height:1.1}.brand small{font-size:.82rem;opacity:.82}.brand-mark{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#5e91ff,#1668e8);display:grid;place-items:center;color:#fff;font-weight:900;box-shadow:0 8px 20px rgba(22,104,232,.35)}.brand.large .brand-mark{width:48px;height:48px;font-size:1.25rem}.main-nav{display:grid;gap:6px;margin-top:32px}.nav-item{display:flex;align-items:center;gap:11px;width:100%;border:0;background:transparent;color:#b8c6d9;padding:11px 12px;border-radius:11px;text-align:left;transition:.2s}.nav-item:hover,.nav-item.active{background:linear-gradient(90deg,#1668e8,#2b79ef);color:#fff}.nav-item.danger:hover{background:rgba(212,61,79,.18);color:#ff9dab}.counter{margin-left:auto;background:#ef4056;color:#fff;border-radius:999px;min-width:22px;padding:1px 7px;text-align:center;font-size:.75rem}.sidebar-user{margin-top:auto;display:flex;align-items:center;gap:10px;padding:15px 10px;border-top:1px solid rgba(255,255,255,.11)}.sidebar-user strong,.sidebar-user small{display:block;max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user small{color:#8fa1b9}.avatar{flex:0 0 auto;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#dce9ff;color:#1458b5;font-weight:800}.avatar.group{background:#e9e0ff;color:#7047c8}.logout-form{margin-top:4px}.app-main{min-width:0}.topbar{height:70px;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;position:sticky;top:0;z-index:20}.topbar-title{font-weight:750}.top-user{margin-left:auto;color:var(--muted)}.menu-button{display:none;border:0;background:transparent;font-size:1.35rem;margin-right:12px}.content{padding:28px;max-width:1600px;margin:0 auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px}.page-heading p{color:var(--muted);margin:0}.eyebrow{text-transform:uppercase;letter-spacing:.09em;color:var(--primary);font-size:.76rem;font-weight:800}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.actions.end{justify-content:flex-end}.btn{border:1px solid transparent;border-radius:10px;padding:10px 15px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:.18s;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn.primary{background:linear-gradient(135deg,var(--primary),#2b79ef);color:#fff;box-shadow:0 8px 20px rgba(22,104,232,.2)}.btn.secondary{background:#fff;border-color:var(--line);color:var(--text)}.btn.ghost{background:transparent;border-color:var(--line);color:var(--muted)}.btn.small{padding:7px 10px;font-size:.82rem}.btn.wide{width:100%}.panel,.narrow-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}.narrow-card{max-width:620px;margin:50px auto}.alert{border-radius:12px;padding:12px 15px;margin-bottom:16px;border:1px solid transparent}.alert.success{background:#eaf8ef;border-color:#b9e8cb;color:#126438}.alert.warning{background:#fff5df;border-color:#f1d49a;color:#7e510d}.alert.danger{background:#fff0f2;border-color:#f2bbc3;color:#8a1f2d}.alert.info{background:#eaf4ff;border-color:#bedcff;color:#174f83}.workspace-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.workspace-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:28px;text-align:center;min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:var(--shadow);transition:.22s}.workspace-card:hover{transform:translateY(-4px);border-color:#9fc1f7;box-shadow:0 22px 55px rgba(22,104,232,.14)}.workspace-card p{color:var(--muted);max-width:300px}.workspace-icon{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#4387ed,#1668e8);color:#fff;font-size:2rem;margin-bottom:18px;box-shadow:0 12px 28px rgba(22,104,232,.2)}.workspace-icon.truck{background:linear-gradient(135deg,#39c878,#18924e);box-shadow:0 12px 28px rgba(29,155,85,.2)}.workspace-open{margin-top:12px;background:var(--primary);color:#fff;padding:10px 22px;border-radius:9px;font-weight:800}.empty-state{max-width:720px;margin:70px auto;text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:50px 30px;box-shadow:var(--shadow)}.empty-icon{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:#eef4ff;color:var(--primary);font-weight:900;font-size:1.3rem;margin:0 auto 20px}.form-grid{display:grid;gap:16px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .full{grid-column:1/-1}label{display:grid;gap:7px;font-weight:700;color:#344054}input,select,textarea{width:100%;border:1px solid #cfd7e4;border-radius:10px;background:#fff;color:var(--text);padding:10px 12px;outline:none;transition:.18s}input:focus,select:focus,textarea:focus{border-color:#6da3f4;box-shadow:0 0 0 3px rgba(22,104,232,.12)}textarea{resize:vertical}.check{display:flex;align-items:center;gap:9px;font-weight:500}.check input,.check-card input{width:auto}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;margin-bottom:12px}.check-card{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:10px;padding:9px 11px;background:var(--panel-2);font-weight:600}.signature-section{border-top:1px solid var(--line);padding-top:18px}.section-title{display:flex;justify-content:space-between;gap:12px}.signature-section p{color:var(--muted)}.signature-canvas{width:100%;height:220px;border:2px dashed #aab7c9;border-radius:14px;background:#fff;touch-action:none}.filter-bar{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;background:var(--panel);padding:14px;border:1px solid var(--line);border-radius:14px;margin-bottom:18px}.filter-bar label{min-width:150px}.table-panel{padding:0;overflow:hidden}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:780px}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid #e8edf4;vertical-align:middle}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;background:#f8fafc}td small{margin-top:2px}.empty-cell{text-align:center;color:var(--muted);padding:35px}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-weight:800;font-size:.76rem}.badge.success{background:#e6f8ed;color:#147441}.badge.warning{background:#fff1d2;color:#8a5a05}.badge.danger{background:#ffe7eb;color:#9b2837}.badge.muted{background:#edf1f6;color:#637083}.detail-grid,.two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.detail-list{display:grid;gap:0;margin:0}.detail-list div{display:grid;grid-template-columns:160px 1fr;gap:15px;padding:11px 0;border-bottom:1px solid var(--line)}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0;font-weight:700}.signature-image{max-width:100%;max-height:160px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:10px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:14px;margin-bottom:22px}.stat-card{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:18px;box-shadow:var(--shadow)}.stat-card small{font-weight:700}.stat-card strong{display:block;font-size:2rem;margin-top:4px}.admin-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:16px;margin-bottom:22px}.admin-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:21px;box-shadow:var(--shadow);transition:.2s}.admin-card:hover{transform:translateY(-3px);border-color:#a9c7f5}.admin-card p{color:var(--muted)}.admin-card span{color:var(--primary);font-weight:800}.admin-card.accent{background:linear-gradient(145deg,#ecf4ff,#fff)}.admin-split{display:grid;grid-template-columns:minmax(330px,430px) minmax(0,1fr);gap:20px}.sticky-panel{align-self:start;position:sticky;top:92px}.row-actions{display:flex;gap:6px;align-items:center}.inline-form{display:flex;gap:9px;margin-bottom:16px}.simple-list{list-style:none;margin:0;padding:0}.simple-list li{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.messenger-overview{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contacts-panel{grid-column:1/-1}.conversation-list{display:grid;gap:5px}.conversation-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px;border-radius:12px}.conversation-item:hover{background:var(--panel-2)}.conversation-item strong,.conversation-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item time{font-size:.75rem;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.contact-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;border:1px solid var(--line);border-radius:13px;padding:11px;background:var(--panel-2)}.chat-page{height:calc(100vh - 126px);display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;background:var(--panel);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}.chat-header{display:flex;align-items:center;gap:15px;padding:15px 18px;border-bottom:1px solid var(--line)}.chat-header h1{font-size:1.05rem;margin:0}.chat-header p{font-size:.8rem;color:var(--muted);margin:0}.chat-messages{padding:18px;overflow-y:auto;background:linear-gradient(135deg,#f4f7fb,#eef3f9);display:flex;flex-direction:column;gap:10px}.message{align-self:flex-start;max-width:min(75%,680px);background:#fff;border-radius:4px 15px 15px 15px;padding:10px 12px;box-shadow:0 4px 14px rgba(15,31,55,.08)}.message.mine{align-self:flex-end;background:#dff5d9;border-radius:15px 4px 15px 15px}.message-meta{display:flex;gap:12px;justify-content:space-between;font-size:.75rem}.message-meta time{color:var(--muted)}.message p{margin:5px 0;white-space:pre-wrap}.read-state{font-size:.7rem;text-align:right;color:#397b8f}.attachment{display:inline-block;margin-top:6px;color:var(--primary);font-weight:700}.typing-line{min-height:24px;padding:2px 18px;color:var(--muted);font-size:.8rem}.chat-compose{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:end;padding:12px;border-top:1px solid var(--line)}.chat-compose textarea{max-height:130px;min-height:44px}.attach-button,.send-button{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;border:0;background:#eef3f8;font-size:1.3rem}.attach-button input{display:none}.send-button{background:var(--primary);color:#fff}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr)}.login-visual{background:linear-gradient(rgba(5,20,38,.66),rgba(5,20,38,.78)),radial-gradient(circle at 25% 20%,#3f6da4 0,#10233a 46%,#081421 100%);display:flex;align-items:center;padding:8vw;color:#fff}.login-overlay{max-width:530px}.login-overlay h1{margin-top:38px;font-size:3rem}.login-overlay p{color:#d4dfed;font-size:1.08rem}.login-panel{display:grid;place-items:center;padding:35px;background:#f7f9fc}.auth-card{width:min(440px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px;box-shadow:var(--shadow);display:grid;gap:17px}.mobile-brand{display:none}.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.report-grid pre{background:#101827;color:#dce8f7;border-radius:10px;padding:12px;overflow:auto;min-height:100px}.mt{margin-top:15px}.print-toolbar{display:flex;gap:10px;justify-content:flex-end;align-items:center;margin-bottom:15px}.print-toolbar form{display:flex;gap:8px}.print-sheet{background:#fff;color:#111827;max-width:210mm;margin:0 auto;padding:12mm;border:1px solid #ddd;box-shadow:0 8px 30px rgba(0,0,0,.08)}.print-sheet header{display:flex;justify-content:space-between;border-bottom:2px solid #dce5ef;padding-bottom:5mm;margin-bottom:5mm}.print-sheet header h1{margin:0}.print-meta{text-align:right;font-size:.85rem}.print-grid{display:grid;grid-template-columns:1fr 1fr;gap:3mm}.print-box{border:1px solid #cfd8e4;border-radius:9px;padding:4mm}.print-box.full{grid-column:1/-1}.print-box small{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.print-box strong{display:block;margin-top:3px}.print-box img{max-width:100%;max-height:45mm}.print-sheet footer{margin-top:5mm;color:#6b7280;font-size:.75rem}.print-table{min-width:0;font-size:.75rem}.print-table th,.print-table td{padding:7px}.landscape{max-width:297mm}
@media(max-width:1050px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-280px;width:260px;transition:.22s;box-shadow:20px 0 50px rgba(0,0,0,.25)}.sidebar.open{left:0}.menu-button{display:block}.admin-split{grid-template-columns:1fr}.sticky-panel{position:static}.messenger-overview{grid-template-columns:1fr}.contacts-panel{grid-column:auto}.login-page{grid-template-columns:1fr}.login-visual{display:none}.mobile-brand{display:flex}.detail-grid,.two-column{grid-template-columns:1fr}}
@media(max-width:720px){.content{padding:18px 12px}.topbar{padding:0 14px}.top-user{display:none}.page-heading{display:grid}.page-heading .actions{width:100%}.page-heading .actions .btn{flex:1}.form-grid.two{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.filter-bar{display:grid;grid-template-columns:1fr 1fr}.filter-bar label{min-width:0}.workspace-card{min-height:240px}.panel{padding:16px;border-radius:14px}.detail-list div{grid-template-columns:1fr;gap:2px}.chat-page{height:calc(100vh - 105px);border-radius:0;border-left:0;border-right:0}.message{max-width:88%}.report-grid{grid-template-columns:1fr}.print-toolbar{flex-wrap:wrap;justify-content:stretch}.print-toolbar>*{flex:1}.auth-card{padding:24px}.login-panel{padding:15px}.inline-form{display:grid}.row-actions{flex-direction:column;align-items:stretch}.contact-card{grid-template-columns:auto 1fr}.contact-card .btn{grid-column:1/-1}.signature-canvas{height:180px}}
@media(prefers-color-scheme:dark){:root{--bg:#0f1724;--panel:#152033;--panel-2:#19263a;--text:#e8eef8;--muted:#9cabbe;--line:#2d3c52;--shadow:0 16px 42px rgba(0,0,0,.25);color-scheme:dark}.topbar{background:rgba(21,32,51,.92)}input,select,textarea{background:#101a2a;color:var(--text);border-color:#3b4a60}.btn.secondary{background:#1a273b}.workspace-open{color:#fff}th{background:#19263a}.chat-messages{background:linear-gradient(135deg,#111c2c,#162237)}.message{background:#202d42}.message.mine{background:#1b4d36}.auth-card,.login-panel{background:var(--panel)}.login-panel{background:#101927}.signature-canvas,.print-sheet{background:#fff;color:#111827}.alert.info{background:#162c42;color:#a9d5ff}.alert.success{background:#163225;color:#a5e4bd}.alert.warning{background:#392c12;color:#f0cf8a}.alert.danger{background:#3a1920;color:#f0b2bb}}
@media print{.sidebar,.topbar,.print-toolbar,.alert{display:none!important}.app-shell{display:block}.content{padding:0}.print-sheet{border:0;box-shadow:none;max-width:none;padding:0}.print-body{background:#fff}.print-grid{break-inside:avoid}.print-box{break-inside:avoid}@page{size:A4 portrait;margin:10mm}.print-sheet.landscape{@page{size:A4 landscape}}}

.automatic-signature-preview{min-height:180px;border:1px solid var(--line);border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:center;padding:24px;overflow:hidden}.automatic-signature-preview span{display:block;max-width:100%;font-family:cursive;font-size:clamp(2.2rem,7vw,4.8rem);font-style:italic;line-height:1.1;color:#172033;text-align:center;border-bottom:2px solid #94a3b8;padding:0 2rem .35rem;white-space:normal;overflow-wrap:anywhere}


/* v3.0.3: readable missing tools/material cards */
.missing-items-fieldset{border:1px solid var(--line);border-radius:12px;padding:12px}.missing-items-fieldset legend{padding:0 .35rem;color:var(--text);font-weight:750}.missing-items-fieldset>label,.missing-items-fieldset .check-card{color:var(--text)}.missing-items-fieldset .check-card{opacity:1;background:var(--panel-2);border-color:var(--line)}.missing-items-fieldset .check-card:hover{border-color:#5b8def;background:color-mix(in srgb,var(--panel-2) 88%,#2b79ef 12%)}.missing-items-fieldset .check-card:focus-within{border-color:#6da3f4;box-shadow:0 0 0 3px rgba(22,104,232,.12)}
@media(prefers-color-scheme:dark){.missing-items-fieldset legend,.missing-items-fieldset>label,.missing-items-fieldset .check-card{color:#e8eef8}.missing-items-fieldset .check-card{background:#19263a;border-color:#3b4a60}.missing-items-fieldset .check-card:hover{background:#20314a;border-color:#6da3f4}.missing-items-fieldset textarea{color:#e8eef8}}


/* v3.0.4: global Dashboard Info-Box module */
.info-box-page-heading{align-items:center}.info-box-last-change{display:flex;align-items:center;justify-content:flex-end;gap:.32rem;flex-wrap:wrap;color:var(--muted);font-size:.9rem;text-align:right}.info-box-last-change strong{color:var(--text);font-weight:650}.info-box-last-change-separator{padding:0 .12rem}.info-box-panel{border-radius:24px}.info-box-form{display:grid;gap:15px}.info-box-toolbar{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.info-box-tool,.info-box-color-chip,.info-box-color-picker{width:48px;min-width:48px;height:48px;min-height:48px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2);color:var(--text);display:inline-flex;align-items:center;justify-content:center;padding:0;font-size:1.06rem}.info-box-tool:hover,.info-box-tool:focus-visible,.info-box-color-chip:hover,.info-box-color-chip:focus-visible{border-color:#6da3f4;box-shadow:0 0 0 3px rgba(22,104,232,.12)}.info-box-tool.clear{font-size:1.35rem;color:var(--muted)}.info-box-color-picker{padding:5px;overflow:hidden}.info-box-color-chip{border-color:rgba(255,255,255,.18)}.info-box-color-chip.red{background:#4a2d3d}.info-box-color-chip.yellow{background:#484538}.info-box-color-chip.green{background:#27453f}.info-box-color-chip.blue{background:#263f5a}.info-box-editor{min-height:460px;border:1px solid #3b4a60;border-radius:18px;background:#202d46;color:#f7fbff;padding:17px 18px;line-height:1.58;white-space:normal;overflow-wrap:anywhere;outline:none;overflow-y:auto}.info-box-editor:focus{border-color:#6da3f4;box-shadow:0 0 0 3px rgba(22,104,232,.12)}.info-box-editor:empty:before{content:attr(data-placeholder);color:rgba(232,238,248,.45);pointer-events:none}.info-box-editor p,.info-box-editor div{margin:0 0 .55rem}.info-box-editor ul,.info-box-editor ol{padding-left:1.55rem;margin:.25rem 0 1rem}.info-box-editor li{margin:.18rem 0}.info-box-actions{margin-top:4px}.info-box-actions .btn{min-width:260px}
@media(max-width:720px){.info-box-page-heading{align-items:flex-start}.info-box-last-change{justify-content:flex-start;text-align:left}.info-box-toolbar{gap:6px}.info-box-tool,.info-box-color-chip,.info-box-color-picker{width:42px;min-width:42px;height:42px;min-height:42px}.info-box-editor{min-height:360px;padding:14px}.info-box-actions .btn{width:100%;min-width:0}}
@media(prefers-color-scheme:dark){.info-box-tool,.info-box-color-picker{background:#19263a;border-color:#3b4a60;color:#e8eef8}.info-box-editor{background:#202d46;border-color:#3b4a60;color:#f7fbff}}

/* v3.0.5: globale Dashboard Info-Box auf der Home-Seite */
.dashboard-info-box { margin-bottom: 2rem; }
.dashboard-info-box .info-box-page-heading { margin-bottom: 1rem; }
.dashboard-workspace-heading { margin-top: 0; }
@media (max-width: 760px) {
  .dashboard-info-box .info-box-page-heading { align-items: flex-start; }
  .dashboard-info-box .info-box-last-change { width: 100%; justify-content: flex-start; }
}

/* v3.0.7: eigene Dashboard Info-Box je Arbeitsbereich */
.nav-subitem{margin-top:-5px;margin-left:18px;width:calc(100% - 18px);font-size:.91rem;opacity:.92}
.nav-subitem span{font-size:.92rem}
.nav-subitem.active{opacity:1}
.workspace-info-box-change{justify-content:flex-start;margin:-8px 0 16px}
.workspace-info-box-panel{margin-top:0}
.workspace-module-grid{max-width:560px}
@media(max-width:720px){.nav-subitem{margin-left:12px;width:calc(100% - 12px)}.workspace-info-box-change{margin-top:0}}

/* v3.0.8: robuster Info-Box-Editor mit Klartext-Fallback */
.info-box-fallback-label{display:grid;gap:8px;color:var(--text);font-weight:650}
.info-box-fallback-input{width:100%;min-height:360px;resize:vertical;border:1px solid #3b4a60;border-radius:18px;background:#202d46;color:#f7fbff;padding:17px 18px;line-height:1.58;font:inherit;outline:none}
.info-box-fallback-input:focus{border-color:#6da3f4;box-shadow:0 0 0 3px rgba(22,104,232,.12)}
.info-box-fallback-label small{color:var(--muted);font-weight:400}
.info-box-form.rich-editor-ready .info-box-fallback-label{display:none}
.info-box-toolbar[hidden],.info-box-editor[hidden]{display:none!important}
.info-box-editor strong,.info-box-editor b{font-weight:800}
.info-box-editor em,.info-box-editor i{font-style:italic}
.info-box-editor u{text-decoration:underline;text-underline-offset:2px}
@media(max-width:720px){.info-box-fallback-input{min-height:320px;padding:14px}}

/* v3.1.0: dynamische Modulauswahl je Arbeitsbereich */
.workspace-overview-heading{margin-bottom:18px}
.module-selection-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:16px 18px;background:var(--panel);border:1px solid var(--line);border-radius:14px}
.module-selection-intro h2{margin:0 0 3px}
.module-selection-intro p{margin:0;color:var(--muted)}
.module-count{display:inline-flex;align-items:center;justify-content:center;min-width:86px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line);padding:7px 12px;font-weight:800;color:var(--muted)}
.module-card-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.module-card{min-height:255px;position:relative}
.module-card-title-line{display:flex;align-items:center;justify-content:center;gap:9px;max-width:100%}
.module-card-title-line h2{margin-bottom:0}
.module-card .module-counter{margin-left:0}
.module-card-disabled{opacity:.7;cursor:not-allowed}
.module-card-disabled:hover{transform:none;border-color:var(--line);box-shadow:var(--shadow)}
.module-card-disabled .workspace-open{background:var(--panel-2);color:var(--muted);border:1px solid var(--line)}
.workspace-icon.module-icon.info{background:linear-gradient(135deg,#8158e8,#6336c7);box-shadow:0 12px 28px rgba(99,54,199,.22)}
.workspace-icon.module-icon.chat{background:linear-gradient(135deg,#1bb6a5,#118174);box-shadow:0 12px 28px rgba(17,129,116,.22)}
.workspace-icon.module-icon.clipboard{background:linear-gradient(135deg,#4387ed,#1668e8)}
.workspace-icon.module-icon.user{background:linear-gradient(135deg,#ef8c45,#d36419)}
@media(max-width:720px){.module-selection-intro{align-items:flex-start;display:grid}.module-count{justify-self:start}.module-card-grid{grid-template-columns:1fr}.module-card{min-height:220px}}

/* v3.1.3: globale Module dynamisch in der Hauptnavigation */
.nav-item .nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav-counter{margin-left:auto;flex:0 0 auto}
.notification-list{display:grid;gap:12px}
.notification-card{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:18px 20px;box-shadow:var(--shadow)}
.notification-card.unread{border-color:#6da3f4;box-shadow:0 10px 30px rgba(22,104,232,.12)}
.notification-card-main{min-width:0;flex:1}
.notification-title-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.notification-title-line h2{margin:0}
.notification-card p{margin:.55rem 0;color:var(--text)}
.notification-card small{margin-top:.4rem}
.notification-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.badge.info{background:#eaf4ff;color:#174f83}
@media(max-width:720px){.notification-card{display:grid;padding:16px}.notification-actions{justify-content:flex-start}.notification-actions form,.notification-actions .btn{width:100%}.notification-actions .btn{justify-content:center}}
@media(prefers-color-scheme:dark){.badge.info{background:#16314d;color:#acd5ff}.notification-card.unread{border-color:#4e89de}}

/* v3.1.4: Verwaltung von Gruppenchats */
.btn.danger{background:var(--danger);color:#fff;border-color:var(--danger)}
.btn.danger:hover{filter:brightness(.96)}
fieldset .muted{font-weight:500;margin-bottom:10px}
@media(max-width:760px){.row-actions{align-items:stretch;flex-direction:column}.row-actions form,.row-actions .btn{width:100%}}


/* v3.1.5: offene und globale Gruppenchats */
.access-scope-help{border:1px solid var(--line);border-radius:12px;background:var(--panel-2);padding:12px 14px;color:var(--muted)}
.access-scope-help strong{color:var(--text);margin-right:.35rem}
.conversation-scope{color:var(--primary);font-weight:700;margin-bottom:2px}
[data-group-chat-group-field][hidden],[data-group-chat-workspaces][hidden]{display:none!important}
@media(prefers-color-scheme:dark){.access-scope-help{background:#19263a;border-color:#3b4a60}}

/* v3.1.7: Schreibrechte pro Gruppenchat */
.soft-divider{border:0;border-top:1px solid var(--line);margin:8px 0 4px;width:100%}
.chat-readonly-notice{margin-top:12px;border:1px solid var(--line);border-radius:16px;background:var(--panel-2);color:var(--muted);padding:14px 16px;font-weight:650;text-align:center}
.tall-checkbox-grid{max-height:280px;overflow:auto;padding-right:4px}
[data-group-chat-writer-roles][hidden],
[data-group-chat-writer-groups][hidden],
[data-group-chat-writer-users][hidden]{display:none!important}
.badge.warning{background:#fff4d6;color:#8a5a00}
@media(prefers-color-scheme:dark){.chat-readonly-notice{background:#19263a;border-color:#3b4a60;color:#d8e2f2}.badge.warning{background:#3a2c12;color:#ffd98a}}

/* v3.2.0 Stable/Qualitätsversion: Systemstatus, Backup und Rechteübersicht */
.compact-list{margin:.65rem 0 0 1.1rem;padding:0}.compact-list li{margin:.15rem 0}.rights-table table{min-width:760px}.rights-table th:not(:first-child),.rights-table td:not(:first-child){text-align:center}.admin-card-grid .admin-card h2{display:flex;align-items:center;gap:.35rem}.badge.danger{background:#fff0f2;color:#8a1f2d}.badge.muted{background:#eef2f7;color:#627087}.table-wrap td .muted{display:inline-block}.stat-card strong{overflow-wrap:anywhere}
@media(prefers-color-scheme:dark){.badge.danger{background:#3d1720;color:#ffabb7}.badge.muted{background:#1b2738;color:#b6c4d8}}


/* v3.2.1: moderne 404-Seite */
.not-found-state{min-height:calc(100vh - 126px);display:grid;place-items:center;padding:28px}.not-found-card{width:min(720px,100%);background:linear-gradient(145deg,var(--panel),var(--panel-2));border:1px solid var(--line);border-radius:26px;padding:38px;text-align:left;box-shadow:var(--shadow);position:relative;overflow:hidden}.not-found-card:before{content:"";position:absolute;inset:-120px auto auto -120px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(22,104,232,.28),rgba(22,104,232,0) 68%)}.not-found-code{position:relative;width:82px;height:82px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),#2b79ef);color:#fff;font-weight:900;font-size:1.35rem;box-shadow:0 15px 35px rgba(22,104,232,.25);margin-bottom:18px}.not-found-card h1{position:relative;margin-bottom:10px}.not-found-lead{position:relative;color:var(--muted);font-size:1.02rem;max-width:620px}.not-found-hint{position:relative;background:rgba(22,104,232,.08);border:1px solid rgba(22,104,232,.22);border-radius:18px;padding:16px 18px;margin:22px 0;color:var(--text)}.not-found-hint ul{margin:9px 0 0 18px;padding:0;color:var(--muted)}.not-found-hint li{margin:5px 0}.actions.center{justify-content:flex-start}@media (max-width:720px){.not-found-state{padding:18px;place-items:start}.not-found-card{padding:26px 20px;border-radius:20px}.actions.center{display:grid}.actions.center .btn{width:100%}}

/* v3.2.2: Systemstatus-Anzeige robust und ohne versteckte Tabellenwerte */
.system-status-stats .stat-card strong{font-size:1.05rem;line-height:1.35;min-height:1.45rem;color:var(--text);word-break:break-word}
.system-table table{min-width:0;width:100%}
.system-table th{width:190px;white-space:nowrap}
.system-table td{word-break:break-word;color:var(--text)}
.system-meta-row{margin:.35rem 0 1rem;color:var(--muted)}
.system-meta-row code{color:var(--text)}
@media (max-width:900px){.system-status-grid{grid-template-columns:1fr}.system-table th{width:auto;white-space:normal}}
@media(prefers-color-scheme:dark){.system-status-stats .stat-card strong,.system-table td,.system-meta-row code{color:#eaf1fb}.system-table th{background:#172236;color:#9fb0c7}}
.system-debug-details {
  margin-top: 12px;
  color: var(--muted, #a9b8d6);
}
.system-debug-details summary {
  cursor: pointer;
  font-weight: 700;
}

/* v3.3.0: Systemwartung, Backup-Plan und Wartungsmodus */
.maintenance-admin-banner{margin-bottom:16px}
.maintenance-settings-grid{align-items:start}.maintenance-settings-grid .panel{height:100%}
.wide-actions{grid-column:1 / -1;justify-content:flex-end}.check-row{display:flex!important;align-items:flex-start;gap:10px;margin:12px 0}.check-row input{width:auto;margin-top:4px}.check-row span{font-weight:650;color:var(--text)}
.maintenance-state{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at top left,rgba(22,104,232,.18),transparent 34%),var(--bg)}
.maintenance-card{width:min(760px,100%);background:linear-gradient(145deg,var(--panel),var(--panel-2));border:1px solid var(--line);border-radius:28px;padding:42px;box-shadow:var(--shadow);position:relative;overflow:hidden}.maintenance-icon{width:86px;height:86px;border-radius:24px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),#2b79ef);color:#fff;font-size:2.1rem;box-shadow:0 16px 36px rgba(22,104,232,.24);margin-bottom:18px}.maintenance-card h1{max-width:640px}.maintenance-card .not-found-lead{max-width:670px}.maintenance-card .actions{position:relative}
@media(max-width:720px){.maintenance-card{padding:28px 20px;border-radius:22px}.wide-actions{justify-content:stretch}.wide-actions .btn{width:100%}}
@media(prefers-color-scheme:dark){.maintenance-state{background:radial-gradient(circle at top left,rgba(74,137,222,.18),transparent 34%),var(--bg)}}

/* v3.3.1: kleiner Feinschliff für Wartung und Backups */
.backup-summary-grid .stat-card strong{font-size:1.12rem;line-height:1.35}
.backup-create-panel,.maintenance-quick-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}
.backup-create-panel p,.maintenance-quick-actions p{margin:0;color:var(--muted)}
.maintenance-admin-banner a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media(max-width:720px){.backup-create-panel,.maintenance-quick-actions{display:grid}.backup-create-panel .actions,.maintenance-quick-actions .actions{display:grid}.backup-create-panel .btn,.maintenance-quick-actions .btn{width:100%}.backup-summary-grid .stat-card strong{font-size:1rem}}
@media(prefers-color-scheme:dark){.maintenance-admin-banner a{color:#ffe0a6}}

/* v3.4.0: Schrottcontainer-Befuellung / Container-Kippzaehler */
.scrap-container-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px}.scrap-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:16px}.scrap-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.scrap-card-head h2{margin:0 0 3px}.scrap-card-head p{margin:0;color:var(--muted);font-weight:700}.scrap-points{display:flex;align-items:center;gap:10px;padding:12px 0}.scrap-points.compact{justify-content:flex-end}.scrap-point{width:22px;height:22px;border-radius:50%;border:2px solid #9fb0c7;background:transparent;display:inline-block}.scrap-point.filled{background:linear-gradient(135deg,var(--primary),#2b79ef);border-color:transparent;box-shadow:0 0 0 4px rgba(22,104,232,.12)}.scrap-status-almost_full .scrap-point.filled,.scrap-status-full .scrap-point.filled{background:linear-gradient(135deg,var(--danger),#ef6b7b)}.scrap-status-high .scrap-point.filled{background:linear-gradient(135deg,var(--warning),#f0ac35)}.scrap-count{font-size:1.05rem;color:var(--muted)}.scrap-count strong{font-size:1.45rem;color:var(--text);margin-right:5px}.scrap-actions{display:grid;gap:10px;margin-top:auto}.scrap-empty-form{display:grid;gap:9px}.compact-alert{margin:0;padding:10px 12px}.workspace-icon.module-icon.scrap{background:linear-gradient(135deg,#6fcf97,#168a55);box-shadow:0 12px 28px rgba(22,138,85,.22)}.scrap-history-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.badge.info{background:#eaf4ff;color:#174f83}
@media(max-width:720px){.scrap-container-grid{grid-template-columns:1fr}.scrap-card{padding:18px}.scrap-card-head{display:grid}.scrap-points{gap:8px}.scrap-point{width:20px;height:20px}.scrap-history-head{display:grid}.scrap-points.compact{justify-content:flex-start}.scrap-actions .btn{min-height:48px}}
@media(prefers-color-scheme:dark){.scrap-card{background:#111c2c;border-color:#2d3b50}.scrap-point{border-color:#596a82}.badge.info{background:#16314d;color:#acd5ff}}

/* v3.4.3 Rechteverwaltung */
.rights-admin-panel .section-title{margin-bottom:14px}.rights-form{display:grid;gap:14px}.rights-group{border:1px solid var(--line);border-radius:14px;background:var(--panel-2);overflow:hidden}.rights-group summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;font-weight:850}.rights-group summary span{font-size:.8rem;color:var(--muted);font-weight:700}.rights-group .table-wrap{border-top:1px solid var(--line)}.rights-table table{min-width:860px}.rights-table th:not(:first-child),.rights-table td:not(:first-child){text-align:center}.rights-table td:first-child small{margin-top:3px}.permission-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel);font-weight:800;color:var(--text)}.permission-toggle input{width:auto;margin:0;accent-color:var(--primary)}.permission-toggle.locked{opacity:.65;background:#eef2f7}.protected-permission-row td:first-child{border-left:4px solid #f0b429}.rights-actions{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(255,255,255,.82),var(--panel));border-top:1px solid var(--line);padding-top:14px;margin-top:4px}
@media (prefers-color-scheme:dark){.permission-toggle.locked{background:#17243a}.rights-actions{background:linear-gradient(180deg,rgba(15,23,42,.82),var(--panel))}}

/* v3.4.4 Schrottcontainer Benutzerinformation */
.scrap-module-info{border-left:4px solid var(--primary);margin-bottom:18px}
.scrap-module-info h2,.scrap-info-admin-panel h2{margin-top:0}
.scrap-module-info-text{font-size:1rem;line-height:1.6;color:var(--text);white-space:normal}
.scrap-info-admin-panel textarea{min-height:130px;resize:vertical}
@media(prefers-color-scheme:dark){.scrap-module-info{background:#111c2c;border-color:var(--primary)}}

/* v3.4.6 Schrottcontainer: Information pro Container */
.scrap-container-info{border:1px solid var(--line);border-radius:16px;padding:12px;background:rgba(255,255,255,.035);display:grid;gap:8px}
.scrap-container-info h3{margin:0;font-size:.95rem;color:var(--text)}
.scrap-container-info-text{white-space:normal;line-height:1.55;color:var(--text);font-weight:650}
.scrap-info-editor summary{cursor:pointer;color:var(--primary);font-weight:800;margin-top:4px}
.scrap-info-form{display:grid;gap:9px;margin-top:9px}
.scrap-info-form textarea{min-height:86px;resize:vertical;width:100%}
@media(prefers-color-scheme:dark){.scrap-container-info{background:#0d1726;border-color:#2d3b50}.scrap-info-editor summary{color:#91bbff}}

/* v3.4.7 Schrottcontainer-Bilder */
.scrap-card-image{width:100%;height:150px;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#0d1726;display:flex;align-items:center;justify-content:center}
.scrap-card-image img{width:100%;height:100%;object-fit:cover;display:block}
.scrap-card-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2.6rem;color:var(--muted);background:linear-gradient(135deg,rgba(22,104,232,.12),rgba(111,207,151,.10))}
.scrap-image-preview-admin{width:100%;max-width:360px;height:180px;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:#0d1726;margin:8px 0 10px}
.scrap-image-preview-admin img{width:100%;height:100%;object-fit:cover;display:block}
.scrap-table-container{display:flex;align-items:center;gap:12px}
.scrap-table-container img{width:54px;height:42px;border-radius:9px;object-fit:cover;border:1px solid var(--line);flex:0 0 auto}
.form-field.full{grid-column:1/-1;display:grid;gap:8px}
@media(max-width:720px){.scrap-card-image{height:135px}.scrap-image-preview-admin{height:150px}.scrap-table-container{align-items:flex-start}.scrap-table-container img{width:48px;height:38px}}
@media(prefers-color-scheme:dark){.scrap-card-image,.scrap-image-preview-admin,.scrap-table-container img{border-color:#2d3b50;background:#0d1726}}

/* v3.4.9: Progressive Web App / App-Installation */
.topbar-app-link,.topbar-install-button{margin-left:12px;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:10px;padding:8px 12px;font-weight:800;white-space:nowrap}.topbar-install-button{background:linear-gradient(135deg,var(--primary),#2b79ef);color:#fff;border-color:transparent}.topbar-install-button[hidden]{display:none}.top-user{margin-left:12px}.pwa-login-link{margin-top:8px}.pwa-install-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.pwa-install-card{text-align:center}.pwa-app-icon{width:92px;height:92px;border-radius:24px;margin:0 auto 16px;overflow:hidden;box-shadow:0 16px 36px rgba(22,104,232,.25);background:linear-gradient(135deg,#5e91ff,#1668e8)}.pwa-app-icon img{width:100%;height:100%;display:block}.pwa-install-status{border:1px solid var(--line);border-radius:14px;background:var(--panel-2);padding:12px 14px;margin:16px 0;color:var(--muted);font-weight:750}.instruction-list{margin:0;padding-left:22px}.instruction-list li{margin:9px 0;color:var(--text)}.pwa-standalone .topbar-app-link,.pwa-standalone .topbar-install-button{display:none!important}
@media(max-width:720px){.topbar-app-link{display:none}.topbar-install-button{padding:7px 10px;font-size:.82rem}.pwa-install-grid{grid-template-columns:1fr}.pwa-install-card .btn{width:100%}}
@media(prefers-color-scheme:dark){.topbar-app-link{background:#111c2c;border-color:#2d3b50;color:#dfe9f8}.pwa-install-status{background:#0d1726;border-color:#2d3b50;color:#9fb0c7}}

.pwa-public-page{padding:28px;max-width:1200px;margin:0 auto}.guest-body .pwa-public-page{min-height:100vh;display:flex;flex-direction:column;justify-content:center}.guest-body .pwa-public-page .page-heading{max-width:1100px;width:100%;margin-left:auto;margin-right:auto}.guest-body .pwa-install-grid{width:100%;max-width:1100px;margin:0 auto}

/* v3.4.11: programmierte SVG-Icons fuer Menue, Module und Arbeitsbereiche */
.bp-icon{width:1.22em;height:1.22em;display:inline-block;vertical-align:-.18em;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.nav-icon-wrap{width:22px;height:22px;display:inline-grid;place-items:center;flex:0 0 auto}.nav-icon-wrap .bp-icon{width:19px;height:19px}.workspace-icon .bp-icon{width:42px;height:42px;stroke-width:1.7}.module-icon .bp-icon{width:42px;height:42px}.workspace-icon.conveyor{background:linear-gradient(135deg,#3378ff,#1352cf)}.workspace-icon.forklift,.workspace-icon.truck{background:linear-gradient(135deg,#39c878,#168a55)}.workspace-icon.warehouse{background:linear-gradient(135deg,#7c9cff,#445bce)}.workspace-icon.factory{background:linear-gradient(135deg,#5e91ff,#2d5fc7)}.workspace-icon.wrench,.workspace-icon.settings-wrench{background:linear-gradient(135deg,#5a78a8,#314d7f)}.workspace-icon.clipboard-check{background:linear-gradient(135deg,#4387ed,#1668e8)}.workspace-icon.messages{background:linear-gradient(135deg,#4387ed,#1668e8)}.workspace-icon.info-card{background:linear-gradient(135deg,#4f9bff,#1668e8)}.workspace-icon.container-dots{background:linear-gradient(135deg,#6fcf97,#168a55)}.workspace-icon.backup-cloud{background:linear-gradient(135deg,#58a6ff,#2563eb)}.workspace-icon.monitor-check{background:linear-gradient(135deg,#22c55e,#0f766e)}.workspace-icon.shield-user{background:linear-gradient(135deg,#4f7cff,#2740b8)}.workspace-icon.app-device{background:linear-gradient(135deg,#46b0ff,#1668e8)}.workspace-icon.bell{background:linear-gradient(135deg,#ffbd4a,#e28a00)}.workspace-icon.user{background:linear-gradient(135deg,#7d9cff,#4d66d9)}.workspace-icon.grid,.workspace-icon.module,.workspace-icon.briefcase{background:linear-gradient(135deg,#5e91ff,#1668e8)}.icon-preview-box{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2);padding:12px 14px;color:var(--text)}.icon-preview-box span{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),#2b79ef);color:#fff}.preview-svg-icon{width:25px!important;height:25px!important}.table-icon{width:36px;height:36px;border-radius:12px;display:inline-grid;place-items:center;background:linear-gradient(135deg,var(--primary),#2b79ef);color:#fff;margin-bottom:4px}.table-icon .bp-icon{width:21px;height:21px}.admin-card{position:relative}.admin-card-icon{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),#2b79ef);color:#fff;margin-bottom:12px;box-shadow:0 10px 24px rgba(22,104,232,.18)}.admin-card-icon .bp-icon{width:25px;height:25px}.icon-select option{font-weight:650}@media(prefers-color-scheme:dark){.icon-preview-box{background:#0d1726;border-color:#2d3b50}.table-icon,.admin-card-icon{box-shadow:0 10px 26px rgba(22,104,232,.28)}}


/* v3.4.12: Admin-Icons kontrastreicher darstellen */
.admin-card .admin-card-icon{
  color:#fff!important;
  background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.24),transparent 34%),linear-gradient(135deg,#2f86ff,#115bd8)!important;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 12px 28px rgba(22,104,232,.34), inset 0 1px 0 rgba(255,255,255,.18);
}
.admin-card .admin-card-icon .bp-icon{
  width:28px!important;
  height:28px!important;
  color:#fff!important;
  stroke:#fff!important;
  stroke-width:2.45!important;
  opacity:1!important;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.28));
}
.admin-card:hover .admin-card-icon{
  transform:translateY(-1px);
}
.admin-card.accent{
  background:linear-gradient(145deg,rgba(22,104,232,.18),var(--panel))!important;
  border-color:rgba(94,145,255,.42)!important;
  color:var(--text)!important;
}
.admin-card.accent h2,
.admin-card.accent p{
  color:var(--text)!important;
}
.admin-card.accent p{
  color:var(--muted)!important;
}
.admin-card.accent > span:not(.admin-card-icon){
  color:var(--primary)!important;
}
@media (prefers-color-scheme: dark){
  .admin-card .admin-card-icon{
    background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.28),transparent 34%),linear-gradient(135deg,#338bff,#0f5dde)!important;
  }
}

/* v3.5.0: Benachrichtigungen / Systemmeldungen */
.notification-toolbar.slim-panel{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding:14px 16px}.notification-card.urgent{border-color:rgba(212,61,79,.45)}.notification-card.important{border-color:rgba(216,137,20,.48)}.notification-admin-form .target-field[hidden]{display:none!important}.notification-card .badge.warning{background:#fff0c4;color:#7a4a00}.notification-card .badge.danger{background:#ffe2e7;color:#8a1f2d}.notification-card .badge.info{background:#e2f0ff;color:#174f83}
@media(prefers-color-scheme:dark){.notification-card .badge.warning{background:#3f2f13;color:#f2c879}.notification-card .badge.danger{background:#3f1820;color:#ffb6c0}.notification-card .badge.info{background:#17304d;color:#b9dcff}}

/* v3.6.0 – Modern UI Refresh
   Ziel: moderneres Portal-Design ohne fachliche Logik zu verändern. */
:root{
  --bg:#eef3fa;
  --panel:rgba(255,255,255,.94);
  --panel-solid:#ffffff;
  --panel-2:#f7faff;
  --text:#111827;
  --muted:#667085;
  --line:#d9e3f0;
  --primary:#2563eb;
  --primary-dark:#1d4ed8;
  --primary-soft:rgba(37,99,235,.11);
  --sidebar:#0f172a;
  --sidebar-2:#111f39;
  --success:#16a34a;
  --warning:#f59e0b;
  --danger:#ef4444;
  --info:#0ea5e9;
  --shadow:0 20px 52px rgba(15,23,42,.10);
  --shadow-soft:0 10px 28px rgba(15,23,42,.08);
  --radius:22px;
  --radius-sm:14px;
  --focus:0 0 0 4px rgba(37,99,235,.18);
}
html{scroll-behavior:smooth}
body{background:
  radial-gradient(circle at top left,rgba(37,99,235,.14),transparent 34rem),
  radial-gradient(circle at top right,rgba(14,165,233,.11),transparent 32rem),
  var(--bg);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.app-shell{grid-template-columns:282px minmax(0,1fr)}
.sidebar{padding:20px 14px;background:linear-gradient(180deg,#0f172a 0%,#101f39 48%,#08111f 100%);box-shadow:14px 0 38px rgba(15,23,42,.18)}
.brand{padding:6px 9px 16px;border-bottom:1px solid rgba(255,255,255,.08)}
.brand-mark{border-radius:16px;background:linear-gradient(135deg,#38bdf8,#2563eb 58%,#7c3aed);box-shadow:0 14px 32px rgba(37,99,235,.32)}
.brand strong{font-size:1rem;letter-spacing:.01em}.brand small{color:#aebbd0;opacity:1;margin-top:2px}.main-nav{gap:7px;margin-top:22px}.nav-item{position:relative;min-height:44px;border-radius:15px;color:#b9c7dc;padding:11px 12px;font-weight:700;letter-spacing:.002em}.nav-item:hover{background:rgba(255,255,255,.075);color:#fff;transform:translateX(2px)}.nav-item.active{background:linear-gradient(135deg,rgba(37,99,235,.96),rgba(14,165,233,.82));color:#fff;box-shadow:0 14px 28px rgba(37,99,235,.26)}.nav-item.active:before{content:"";position:absolute;left:-8px;top:12px;bottom:12px;width:4px;border-radius:999px;background:#93c5fd}.nav-icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:0 0 24px}.nav-icon-wrap svg{width:21px;height:21px;stroke-width:2.35}.nav-counter{box-shadow:0 6px 18px rgba(239,68,68,.28)}.sidebar-user{margin:16px 0 2px;border-top:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045);border-radius:18px;padding:12px}.avatar{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1d4ed8;box-shadow:inset 0 0 0 1px rgba(37,99,235,.15)}.topbar{height:76px;padding:0 32px;background:rgba(255,255,255,.78);backdrop-filter:blur(22px) saturate(170%);border-bottom:1px solid rgba(217,227,240,.88)}.topbar-title{font-size:1.02rem;font-weight:850}.top-user,.topbar-app-link,.topbar-install-button{border:1px solid var(--line);background:rgba(255,255,255,.72);border-radius:999px;padding:9px 13px;color:#334155;font-weight:750}.topbar-app-link{margin-left:auto}.topbar-install-button{margin-left:8px}.top-user{margin-left:8px}.content{padding:34px;max-width:1680px}.page-heading{margin-bottom:26px;padding:2px 0}.page-heading h1{font-weight:900;letter-spacing:-.035em}.page-heading p{color:var(--muted);font-size:1.02rem;max-width:780px}.eyebrow{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-weight:900;font-size:.75rem;letter-spacing:.055em;text-transform:uppercase;margin-bottom:10px}.panel,.stat-card,.workspace-card,.admin-card,.scrap-card,.empty-state,.not-found-card,.maintenance-card{border:1px solid rgba(217,227,240,.92);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,255,.96));box-shadow:var(--shadow-soft)}.panel{border-radius:var(--radius);padding:24px}.panel h2{font-size:1.1rem;font-weight:900;letter-spacing:-.012em}.stats-grid{gap:18px}.stat-card{border-radius:20px;padding:20px;position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;right:-26px;top:-34px;width:92px;height:92px;border-radius:50%;background:rgba(37,99,235,.10)}.stat-card small{text-transform:uppercase;letter-spacing:.055em;font-weight:900;color:#7a8798}.stat-card strong{font-size:clamp(1.25rem,2vw,1.85rem);font-weight:950;color:#0f172a}.workspace-grid,.admin-card-grid{gap:20px}.workspace-card,.admin-card{border-radius:24px;padding:24px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;background:linear-gradient(145deg,#fff,#f7fbff)}.workspace-card:hover,.admin-card:hover{transform:translateY(-4px);border-color:rgba(37,99,235,.38);box-shadow:0 24px 60px rgba(15,23,42,.14)}.workspace-icon,.admin-card-icon{border-radius:20px;background:linear-gradient(135deg,#2563eb,#0ea5e9);box-shadow:0 14px 34px rgba(37,99,235,.24);color:#fff}.workspace-icon svg,.admin-card-icon svg,.card-svg-icon{stroke-width:2.35}.workspace-card h2,.admin-card h2{font-weight:900;letter-spacing:-.018em}.workspace-open,.admin-card span:last-child{color:var(--primary);font-weight:900}.module-selection-intro{border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,rgba(37,99,235,.09),rgba(14,165,233,.07));box-shadow:none}.module-count{background:#fff;color:#1d4ed8;border:1px solid rgba(37,99,235,.18);box-shadow:0 10px 26px rgba(37,99,235,.11)}.btn,button.btn,a.btn{border-radius:14px;font-weight:850;box-shadow:0 12px 24px rgba(37,99,235,.16);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 16px 32px rgba(37,99,235,.22)}.btn.secondary{background:#fff;color:#1f2937;border:1px solid var(--line);box-shadow:0 10px 22px rgba(15,23,42,.06)}.btn.danger{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 12px 24px rgba(239,68,68,.18)}.btn.success{background:linear-gradient(135deg,#16a34a,#059669);box-shadow:0 12px 24px rgba(22,163,74,.18)}input,select,textarea{border-radius:14px;border:1px solid var(--line);background:#fff;color:var(--text);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}input:focus,select:focus,textarea:focus{outline:0;border-color:rgba(37,99,235,.72);box-shadow:var(--focus)}label{font-weight:800;color:#344054}.table-wrap{border-radius:18px;border:1px solid var(--line);box-shadow:0 12px 28px rgba(15,23,42,.05);overflow:auto}table th{background:#f3f7fc;color:#475569;text-transform:uppercase;letter-spacing:.045em;font-size:.76rem}table td,table th{border-bottom:1px solid rgba(217,227,240,.78)}table tbody tr:hover{background:rgba(37,99,235,.035)}.badge{border-radius:999px;font-weight:900;padding:.28rem .62rem}.badge.success{background:#dcfce7;color:#166534}.badge.warning{background:#fef3c7;color:#92400e}.badge.danger{background:#fee2e2;color:#991b1b}.badge.info{background:#e0f2fe;color:#075985}.badge.muted{background:#e5e7eb;color:#475569}.alert{border-radius:18px;border:1px solid var(--line);box-shadow:0 10px 24px rgba(15,23,42,.05)}.alert.success{background:#ecfdf3;border-color:#bbf7d0;color:#14532d}.alert.warning{background:#fffbeb;border-color:#fde68a;color:#78350f}.alert.danger{background:#fef2f2;border-color:#fecaca;color:#7f1d1d}.alert.info{background:#eff6ff;border-color:#bfdbfe;color:#1e3a8a}.admin-card-grid .admin-card{min-height:168px}.admin-card-icon{width:56px;height:56px}.admin-card-icon svg{width:28px;height:28px}.scrap-container-grid{gap:20px}.scrap-card{border-radius:24px;overflow:hidden}.scrap-card-image img{border-radius:18px;box-shadow:0 14px 30px rgba(15,23,42,.10)}.scrap-point{width:24px;height:24px;border-width:2px}.scrap-point.filled{box-shadow:0 0 0 5px rgba(37,99,235,.11)}.messenger-shell,.conversation-list,.conversation-panel{border-radius:22px}.message-bubble{border-radius:18px}.notification-item,.notification-card{border-radius:18px}.rights-group{border-radius:18px}.permission-toggle{border-radius:999px;background:#fff}.form-grid,.two-column,.admin-split{gap:20px}.icon-preview-box,.table-icon{border-radius:14px}.guest-body{background:radial-gradient(circle at top left,rgba(37,99,235,.16),transparent 36rem),linear-gradient(135deg,#edf4ff,#f8fbff)}.login-card,.auth-card{border-radius:28px;box-shadow:0 28px 80px rgba(15,23,42,.16)}
@media(prefers-color-scheme:dark){
  :root{--bg:#08111f;--panel:rgba(15,23,42,.92);--panel-solid:#0f172a;--panel-2:#111f33;--text:#e5edf7;--muted:#9aa8bd;--line:#26364d;--primary:#60a5fa;--primary-dark:#3b82f6;--primary-soft:rgba(96,165,250,.13);--sidebar:#050b14;--sidebar-2:#0b1728;--shadow:0 20px 52px rgba(0,0,0,.35);--shadow-soft:0 14px 34px rgba(0,0,0,.26);color-scheme:dark}
  body{background:radial-gradient(circle at top left,rgba(37,99,235,.18),transparent 34rem),radial-gradient(circle at top right,rgba(14,165,233,.12),transparent 32rem),#08111f;color:var(--text)}
  .topbar{background:rgba(8,17,31,.78);border-bottom-color:#1f2f46}.top-user,.topbar-app-link,.topbar-install-button{background:#0f172a;border-color:#2d3f59;color:#d9e6f7}.panel,.stat-card,.workspace-card,.admin-card,.scrap-card,.empty-state,.not-found-card,.maintenance-card{background:linear-gradient(180deg,rgba(15,23,42,.96),rgba(13,25,43,.96));border-color:#25364f;box-shadow:var(--shadow-soft)}.workspace-card,.admin-card{background:linear-gradient(145deg,#101b2e,#0d1829)}.workspace-card:hover,.admin-card:hover{border-color:rgba(96,165,250,.48);box-shadow:0 24px 62px rgba(0,0,0,.42)}.page-heading p,.muted,small{color:#9aa8bd}.stat-card strong,.workspace-card h2,.admin-card h2,.panel h2,.system-table td,.system-meta-row code{color:#edf5ff}.stat-card small{color:#93a4bd}.module-selection-intro{background:linear-gradient(135deg,rgba(96,165,250,.10),rgba(14,165,233,.08));border-color:#2a3b55}.module-count{background:#101b2e;color:#bfdbfe;border-color:#315179}.btn.secondary{background:#101b2e;color:#e5edf7;border-color:#2d3f59}.table-wrap{border-color:#26364d;box-shadow:0 12px 28px rgba(0,0,0,.20)}table th{background:#111f33;color:#aebdd2}table td,table th{border-bottom-color:#26364d}table tbody tr:hover{background:rgba(96,165,250,.06)}input,select,textarea{background:#0f172a;border-color:#2d3f59;color:#e5edf7}label{color:#d9e6f7}.permission-toggle{background:#101b2e}.badge.success{background:#123822;color:#86efac}.badge.warning{background:#3a2b10;color:#fde68a}.badge.danger{background:#3a1720;color:#fecaca}.badge.info{background:#102b44;color:#bae6fd}.badge.muted{background:#1f2937;color:#cbd5e1}.alert.success{background:#0d2b1a;border-color:#14532d;color:#bbf7d0}.alert.warning{background:#33260b;border-color:#854d0e;color:#fde68a}.alert.danger{background:#35131a;border-color:#7f1d1d;color:#fecaca}.alert.info{background:#10243c;border-color:#1e3a8a;color:#bfdbfe}.guest-body{background:radial-gradient(circle at top left,rgba(37,99,235,.22),transparent 36rem),linear-gradient(135deg,#08111f,#0d1728)}
}
@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{width:min(88vw,320px)}.content{padding:22px}.topbar{padding:0 18px;height:66px}.topbar-title{max-width:48vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-app-link,.topbar-install-button,.top-user{padding:7px 10px}.workspace-grid,.admin-card-grid,.scrap-container-grid{grid-template-columns:1fr!important}}
@media(max-width:560px){.content{padding:18px 14px}.page-heading{display:grid;gap:12px}.panel,.workspace-card,.admin-card,.scrap-card,.stat-card{border-radius:20px;padding:18px}.workspace-icon,.admin-card-icon{width:52px;height:52px;border-radius:17px}.actions,.row-actions,.form-actions{display:grid;gap:10px}.actions .btn,.row-actions .btn,.form-actions .btn{width:100%;justify-content:center}.scrap-point{width:20px;height:20px}.topbar-app-link{display:none}}


/* v3.6.1: Button-Sichtbarkeit auf Arbeitsbereichs- und Modul-Karten */
.workspace-card .workspace-open,
.module-card .workspace-open,
.module-card-disabled .workspace-open {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 172px;
  min-height: 42px;
  margin-top: 18px;
  padding: 10px 22px;
  border-radius: 14px;
  border: 1px solid rgba(96, 165, 250, .35);
  background: linear-gradient(135deg, #2563eb, #0ea5e9);
  color: #ffffff !important;
  font-weight: 900;
  line-height: 1.2;
  text-align: center;
  box-shadow: 0 14px 30px rgba(37, 99, 235, .24);
}
.workspace-card .workspace-open:hover,
.module-card .workspace-open:hover {
  background: linear-gradient(135deg, #1d4ed8, #0284c7);
  color: #ffffff !important;
}
.module-card-disabled .workspace-open {
  background: rgba(148, 163, 184, .14);
  border-color: var(--line);
  color: var(--muted) !important;
  box-shadow: none;
}
@media(prefers-color-scheme:dark){
  .workspace-card .workspace-open,
  .module-card .workspace-open {
    border-color: rgba(147,197,253,.42);
    background: linear-gradient(135deg,#2563eb,#0284c7);
    color:#ffffff !important;
    box-shadow: 0 14px 30px rgba(37,99,235,.28);
  }
  .module-card-disabled .workspace-open {
    background: rgba(30, 41, 59, .95);
    border-color:#334155;
    color:#cbd5e1 !important;
  }
}


/* v3.6.2: Sidebar-Benutzerbereich fest unten und Topbar-Benutzername entfernen */
.sidebar{
  display:flex;
  flex-direction:column;
}
.main-nav{
  flex:1 1 auto;
  align-content:start;
  overflow-y:auto;
  padding-bottom:18px;
}
.sidebar-user{
  margin-top:auto!important;
  margin-bottom:8px!important;
  flex:0 0 auto;
}
.logout-form{
  margin-top:0!important;
  flex:0 0 auto;
}
.logout-form .nav-item{
  justify-content:flex-start;
}
.top-user{
  display:none!important;
}
@media(max-width:980px){
  .main-nav{max-height:calc(100vh - 220px);}
}

/* v3.6.3: Sidebar-Horizontal-Scrollbar entfernen */
.sidebar,
.main-nav{
  overflow-x:hidden!important;
}
.sidebar{
  min-width:0;
}
.main-nav{
  min-width:0;
  width:100%;
}
.nav-item{
  max-width:100%;
  min-width:0;
}
.nav-item.active:before{
  left:0!important;
}
.sidebar-user,
.logout-form,
.logout-form .nav-item{
  max-width:100%;
  min-width:0;
}
.sidebar-user strong,
.sidebar-user small{
  max-width:140px;
}


/* v3.6.4: Mobile Sidebar vollständig ausblenden, wenn Menü geschlossen ist */
@media(max-width:980px){
  html,
  body{
    width:100%;
    max-width:100%;
    overflow-x:hidden!important;
  }
  .app-shell{
    display:block!important;
    width:100%;
    max-width:100%;
    min-width:0;
    overflow-x:hidden!important;
  }
  .app-main{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow-x:hidden!important;
  }
  .sidebar{
    position:fixed!important;
    top:0!important;
    left:0!important;
    bottom:0!important;
    width:min(88vw,320px)!important;
    max-width:320px!important;
    height:100vh!important;
    height:100dvh!important;
    transform:translateX(calc(-100% - 28px))!important;
    transition:transform .22s ease!important;
    overflow-x:hidden!important;
    will-change:transform;
  }
  .sidebar.open{
    transform:translateX(0)!important;
  }
  .topbar{
    left:0!important;
    width:100%!important;
    max-width:100%;
  }
  .content{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow-x:hidden!important;
  }
  .workspace-grid,
  .admin-card-grid,
  .scrap-container-grid{
    width:100%;
    max-width:100%;
  }
  .workspace-card,
  .module-card,
  .admin-card,
  .scrap-card{
    max-width:100%;
    min-width:0;
  }
}
@media(max-width:520px){
  .content{
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .page-heading h1{
    font-size:1.55rem;
  }
  .workspace-card,
  .module-card{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  .topbar-title{
    max-width:46vw!important;
  }
  .topbar-app-link,
  .topbar-install-button{
    padding:7px 9px!important;
    font-size:.82rem;
  }
}

/* v3.6.7: Rollenmatrix UI-Rebuild */
.rights-page-heading{align-items:flex-start}.role-overview-panel,.rights-matrix-panel{overflow:hidden}.rights-section-title{align-items:flex-start;margin-bottom:16px}.rights-section-title h2{margin-bottom:4px}.role-create-card{border:1px solid var(--line);border-radius:18px;background:var(--panel-2);margin-bottom:18px;overflow:hidden}.role-create-card summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px;font-weight:900}.role-create-card summary small{font-weight:650;text-align:right}.role-create-card[open] summary{border-bottom:1px solid var(--line)}.role-create-form{padding:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.role-create-form .full{grid-column:1/-1}.role-table-wrap{margin-top:0}.rights-matrix-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px}.rights-matrix-summary>div{border:1px solid var(--line);background:linear-gradient(145deg,var(--panel-2),var(--panel));border-radius:16px;padding:13px 15px}.rights-matrix-summary strong{display:block;font-size:1.05rem}.rights-matrix-summary small{text-transform:uppercase;letter-spacing:.055em;font-weight:900}.rights-matrix-scroll{overflow:auto;padding-bottom:2px}.rights-role-header{position:sticky;top:0;z-index:3;display:grid;grid-template-columns:minmax(220px,290px) minmax(240px,1fr) repeat(var(--role-count),minmax(132px,.66fr)) 86px 38px;gap:0;align-items:center;min-width:calc(610px + (var(--role-count) * 132px));padding:10px 12px;margin-bottom:10px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(180deg,rgba(248,250,252,.98),rgba(241,246,252,.95));box-shadow:0 10px 22px rgba(15,23,42,.04)}.rights-role-label,.rights-permission-label,.rights-count-label{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:950}.role-chip{justify-self:center;max-width:128px;min-width:112px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--line);border-radius:999px;background:var(--panel);padding:8px 12px;font-size:.82rem;font-weight:900;box-shadow:0 8px 18px rgba(15,23,42,.04)}.role-chip.primary{background:linear-gradient(135deg,var(--primary),#2b79ef);color:#fff;border-color:transparent}.rights-module-list{display:grid;gap:10px;min-width:calc(610px + (var(--role-count,5) * 132px))}.rights-module-card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,var(--panel),var(--panel-2));overflow:hidden;box-shadow:0 12px 28px rgba(15,23,42,.05)}.rights-module-card summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;border-bottom:1px solid var(--line)}.rights-module-card summary::-webkit-details-marker{display:none}.module-card-head{display:flex;align-items:center;gap:13px;min-width:0}.module-card-head strong{display:block;font-weight:950;color:var(--text);line-height:1.15}.module-card-head small{max-width:330px}.module-icon-box{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(255,255,255,.22);box-shadow:0 12px 28px rgba(15,23,42,.10);color:#fff}.module-icon-box svg{width:25px;height:25px;stroke-width:2.45}.accent-blue .module-icon-box{background:linear-gradient(135deg,#2563eb,#0ea5e9)}.accent-violet .module-icon-box{background:linear-gradient(135deg,#7c3aed,#c084fc)}.accent-amber .module-icon-box{background:linear-gradient(135deg,#d97706,#f59e0b)}.accent-teal .module-icon-box{background:linear-gradient(135deg,#0f766e,#14b8a6)}.accent-green .module-icon-box{background:linear-gradient(135deg,#15803d,#22c55e)}.accent-cyan .module-icon-box{background:linear-gradient(135deg,#0369a1,#06b6d4)}.module-right-count{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:6px 10px;color:var(--muted);font-size:.78rem;font-weight:950;white-space:nowrap}.rights-module-rows{display:grid}.rights-permission-row{display:grid;grid-template-columns:minmax(220px,290px) minmax(240px,1fr) repeat(var(--role-count),minmax(132px,.66fr)) 86px 38px;align-items:center;min-height:64px;border-bottom:1px solid rgba(217,227,240,.75)}.rights-permission-row:last-child{border-bottom:0}.module-inline-spacer{min-height:1px}.permission-name-cell{padding:13px 16px;border-left:1px solid rgba(217,227,240,.72);border-right:1px solid rgba(217,227,240,.72)}.permission-name-cell strong{display:block;font-weight:900;line-height:1.2}.permission-name-cell small{margin-top:3px}.permission-state-cell{display:grid;place-items:center;min-height:64px;border-right:1px solid rgba(217,227,240,.55)}.permission-pill{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:78px;border:1px solid var(--line);border-radius:999px;background:var(--panel);padding:6px 9px;font-weight:950;font-size:.82rem;color:var(--text)}.permission-pill input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}.permission-pill-icon{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:999px;font-weight:950;line-height:1}.permission-pill.is-yes{color:#166534;border-color:rgba(22,163,74,.22);background:rgba(34,197,94,.10)}.permission-pill.is-yes .permission-pill-icon{background:#22c55e;color:#fff}.permission-pill.is-no{color:#64748b;background:rgba(100,116,139,.08)}.permission-pill.is-no .permission-pill-icon{background:#cbd5e1;color:#475569}.permission-pill:not(.locked){cursor:pointer}.permission-pill:not(.locked):hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(15,23,42,.08)}.permission-pill.locked{opacity:.78}.row-right-count,.row-chevron{display:grid;place-items:center;color:var(--muted);font-size:.82rem;font-weight:850}.protected-permission-row .permission-name-cell{box-shadow:inset 4px 0 0 #f0b429}.improved-rights-form .rights-actions{margin-top:16px}.rights-form{gap:0}
@media(prefers-color-scheme:dark){.role-create-card,.rights-matrix-summary>div,.rights-role-header,.rights-module-card{background:linear-gradient(145deg,rgba(15,31,55,.96),rgba(12,24,43,.96));border-color:#253753}.rights-role-header{box-shadow:0 18px 38px rgba(0,0,0,.16)}.role-chip,.module-right-count,.permission-pill{background:#12213a;border-color:#2b3d59}.rights-permission-row,.permission-name-cell,.permission-state-cell{border-color:#253753}.permission-pill.is-yes{background:rgba(34,197,94,.13);color:#bbf7d0;border-color:rgba(34,197,94,.25)}.permission-pill.is-no{background:rgba(100,116,139,.12);color:#cbd5e1}.permission-pill.is-no .permission-pill-icon{background:#334155;color:#94a3b8}.role-create-card[open] summary,.rights-module-card summary{border-color:#253753}}
@media(max-width:900px){.rights-page-heading{display:grid}.role-create-form{grid-template-columns:1fr}.rights-matrix-summary{grid-template-columns:1fr}.rights-role-header,.rights-module-list{min-width:1120px}.role-create-card summary{align-items:flex-start;display:grid}.role-create-card summary small{text-align:left}.rights-actions{position:sticky;left:0}}

/* v3.6.8: Skalierbare rollenbasierte Rechteverwaltung */
.role-create-panel{overflow:hidden}.rights-warning{margin-bottom:16px}.rights-workspace{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:18px;align-items:start}.rights-role-sidebar,.selected-role-panel{overflow:hidden}.rights-sidebar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.rights-sidebar-head h2,.selected-role-head h2{margin:0 0 4px}.btn.compact{padding:9px 12px;border-radius:12px;font-size:.82rem;white-space:nowrap}.btn.disabled{opacity:.65;pointer-events:none}.role-filter-box,.permission-search-box{position:relative}.role-filter-box input,.permission-search-box input{width:100%;padding-right:40px;background:var(--panel-2)}.role-filter-box span,.permission-search-box span{position:absolute;right:13px;top:50%;transform:translateY(-50%);color:var(--muted);font-weight:900}.role-filter-chips,.permission-filter-chips{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.filter-chip{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:999px;background:var(--panel-2);color:var(--muted);font-weight:900;font-size:.82rem;padding:7px 11px}.filter-chip.active{background:linear-gradient(135deg,var(--primary),#2b79ef);border-color:transparent;color:#fff}.scalable-role-list{display:grid;gap:8px;max-height:560px;overflow:auto;padding-right:4px}.role-list-item{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:11px;border:1px solid transparent;border-radius:16px;padding:10px 11px;text-decoration:none;color:var(--text);background:rgba(255,255,255,.02);transition:border-color .15s ease,background .15s ease,transform .15s ease}.role-list-item:hover{border-color:rgba(37,99,235,.35);background:rgba(37,99,235,.06);transform:translateY(-1px)}.role-list-item.active{border-color:rgba(37,99,235,.82);background:linear-gradient(135deg,rgba(37,99,235,.16),rgba(14,165,233,.07));box-shadow:inset 4px 0 0 var(--primary)}.role-avatar{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:rgba(148,163,184,.14);color:var(--muted)}.role-avatar svg{width:18px;height:18px}.role-list-text{min-width:0}.role-list-text strong,.role-list-text small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-list-text small{color:var(--muted);font-size:.78rem;margin-top:3px}.selected-role-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:center;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,var(--panel-2),var(--panel));padding:16px;margin-bottom:14px}.selected-role-main{display:flex;align-items:center;gap:15px;min-width:0}.selected-role-main h3{margin:2px 0 4px;font-size:1.35rem}.selected-role-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;color:#fff;box-shadow:0 14px 30px rgba(15,23,42,.14);flex:0 0 auto}.selected-role-icon svg{width:28px;height:28px}.selected-role-icon.system{background:linear-gradient(135deg,#2563eb,#0ea5e9)}.selected-role-icon.custom{background:linear-gradient(135deg,#15803d,#22c55e)}.selected-role-meta{display:flex;border-left:1px solid var(--line);border-right:1px solid var(--line)}.selected-role-meta>div{padding:0 18px}.selected-role-meta small,.selected-role-stats small{display:block;color:var(--muted);font-weight:850;text-transform:uppercase;letter-spacing:.045em}.selected-role-meta strong{font-size:1.2rem}.selected-role-actions{display:flex;align-items:center;gap:10px}.selected-role-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.selected-role-stats>div{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,var(--panel-2),var(--panel));padding:14px 15px}.selected-role-stats strong{font-size:1.25rem;line-height:1}.selected-role-stats small{grid-column:2}.stat-icon{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;font-weight:950;color:#fff}.stat-icon svg{width:20px;height:20px}.stat-icon.blue{background:linear-gradient(135deg,#2563eb,#0ea5e9)}.stat-icon.violet{background:linear-gradient(135deg,#7c3aed,#c084fc)}.stat-icon.green{background:linear-gradient(135deg,#16a34a,#22c55e)}.stat-icon.muted{background:linear-gradient(135deg,#64748b,#334155)}.permission-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:12px;align-items:center;margin-bottom:12px}.selected-module-list{display:grid;gap:10px}.selected-module-card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,var(--panel),var(--panel-2));overflow:hidden;box-shadow:0 12px 28px rgba(15,23,42,.05)}.selected-module-card summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer}.selected-module-card summary::-webkit-details-marker{display:none}.selected-module-card[open] summary{border-bottom:1px solid var(--line)}.module-card-status{display:flex;align-items:center;gap:12px;white-space:nowrap;color:#22c55e;font-size:.82rem;font-weight:950}.module-card-status b{font-size:1rem;color:var(--muted);transition:transform .15s ease}.selected-module-card[open] .module-card-status b{transform:rotate(180deg)}.selected-permission-list{display:grid;padding:2px 16px 10px}.selected-permission-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;min-height:58px;border-bottom:1px solid rgba(217,227,240,.7);padding:10px 0}.selected-permission-row:last-child{border-bottom:0}.selected-permission-row strong{display:block;font-weight:900}.selected-permission-row small{display:block;color:var(--muted);margin-top:3px}.permission-switch{display:inline-flex;align-items:center;gap:9px;min-width:112px;justify-content:flex-end;cursor:pointer;font-weight:950}.permission-switch input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}.permission-switch span{width:44px;height:24px;border-radius:999px;position:relative;background:#94a3b8;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12);transition:background .15s ease}.permission-switch span::after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:999px;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.2);transition:transform .15s ease}.permission-switch.is-on span,.permission-switch:has(input:checked) span{background:#22c55e}.permission-switch.is-on span::after,.permission-switch:has(input:checked) span::after{transform:translateX(20px)}.permission-switch.is-on b,.permission-switch:has(input:checked) b{color:#16a34a}.permission-switch.is-off b{color:#64748b}.permission-switch.locked{opacity:.72;cursor:not-allowed}.selected-role-note{margin-top:14px}.protected-permission-row{box-shadow:inset 4px 0 0 #f0b429;padding-left:10px}.selected-role-save-actions{position:sticky;bottom:12px;z-index:2;margin-top:16px;padding:12px;border:1px solid var(--line);border-radius:18px;background:rgba(248,250,252,.88);backdrop-filter:blur(16px)}
@media(prefers-color-scheme:dark){.role-filter-box input,.permission-search-box input,.filter-chip,.selected-role-head,.selected-role-stats>div,.selected-module-card{background:linear-gradient(145deg,rgba(15,31,55,.96),rgba(12,24,43,.96));border-color:#253753}.role-list-item{background:rgba(15,31,55,.5)}.role-list-item.active{background:linear-gradient(135deg,rgba(37,99,235,.22),rgba(14,165,233,.08))}.selected-role-meta{border-color:#253753}.selected-module-card[open] summary,.selected-permission-row{border-color:#253753}.selected-role-save-actions{background:rgba(12,24,43,.88);border-color:#253753}.permission-switch.is-on b,.permission-switch:has(input:checked) b{color:#bbf7d0}.permission-switch.is-off b{color:#cbd5e1}}
@media(max-width:1200px){.rights-workspace{grid-template-columns:1fr}.scalable-role-list{max-height:360px}.selected-role-head{grid-template-columns:1fr}.selected-role-meta{border:0;justify-content:flex-start}.selected-role-actions{justify-content:flex-start}.permission-toolbar{grid-template-columns:1fr}.selected-role-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.selected-role-stats{grid-template-columns:1fr}.selected-permission-row{grid-template-columns:1fr}.permission-switch{justify-content:flex-start}.rights-sidebar-head{display:grid}.role-list-item{grid-template-columns:32px minmax(0,1fr)}.role-list-item .badge{grid-column:2;justify-self:start}.selected-role-main{align-items:flex-start}.selected-role-actions{display:grid}.permission-filter-chips{margin:0}}


/* v3.6.13: Rollenrechte Toggle-Fix */
.permission-switch{user-select:none}.permission-switch:not(.locked) span,.permission-switch:not(.locked) b{pointer-events:none}.permission-switch .permission-switch-input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}


/* v3.6.14: Rollenrechte Button-Toggle-Fix */
.permission-switch{border:0;background:transparent;color:inherit;font:inherit;padding:0;appearance:none;-webkit-appearance:none}
button.permission-switch:not(.locked){cursor:pointer}
.permission-switch:not(.locked) span,.permission-switch:not(.locked) b{pointer-events:none}
.permission-switch.is-on span{background:#22c55e}
.permission-switch.is-on span::after{transform:translateX(20px)}
.permission-switch.is-off span{background:#94a3b8}
.permission-switch.is-off span::after{transform:translateX(0)}
.permission-switch.is-on b{color:#16a34a}
.permission-switch.is-off b{color:#64748b}
@media(prefers-color-scheme:dark){.permission-switch.is-on b{color:#bbf7d0}.permission-switch.is-off b{color:#cbd5e1}}

/* v3.6.15: Rollenrechte Native-Checkbox-Fix
   Schalter sind native Checkboxen mit Hidden-Fallback. Dadurch funktioniert Aktivieren
   und Deaktivieren auch dann, wenn Inline-JavaScript oder alte Browser-Caches stören. */
.permission-switch-native{position:relative;border:0;background:transparent;padding:0;user-select:none;appearance:none;-webkit-appearance:none}
.permission-switch-native .permission-checkbox{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:3;margin:0}
.permission-switch-native .permission-switch-track{width:44px;height:24px;border-radius:999px;position:relative;background:#94a3b8;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12);transition:background .15s ease;flex:0 0 auto}
.permission-switch-native .permission-switch-track::after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:999px;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.2);transition:transform .15s ease}
.permission-switch-native:has(.permission-checkbox:checked) .permission-switch-track{background:#22c55e}
.permission-switch-native:has(.permission-checkbox:checked) .permission-switch-track::after{transform:translateX(20px)}
.permission-switch-native .state-label{min-width:54px;text-align:left}
.permission-switch-native .state-on{display:none;color:#16a34a}
.permission-switch-native .state-off{display:inline;color:#64748b}
.permission-switch-native:has(.permission-checkbox:checked) .state-on{display:inline}
.permission-switch-native:has(.permission-checkbox:checked) .state-off{display:none}
.permission-switch-native:focus-within .permission-switch-track{outline:2px solid rgba(37,99,235,.45);outline-offset:3px}
.permission-switch-native.locked .permission-switch-track{pointer-events:none}
@media(prefers-color-scheme:dark){.permission-switch-native:has(.permission-checkbox:checked) .state-on{color:#bbf7d0}.permission-switch-native .state-off{color:#cbd5e1}}

/* v3.6.21 logo / PWA icon update */
.brand.brand-logo{display:block;gap:0;padding:6px 4px 16px}.brand.brand-logo .brand-image{display:block;max-width:100%;height:auto}.sidebar-logo{width:190px}.login-overlay .brand.brand-logo{padding:0;border:0;margin-bottom:18px}.login-logo{width:min(520px,100%);filter:drop-shadow(0 12px 24px rgba(6,182,212,.12))}.mobile-brand.brand-logo{display:none;padding:0;border:0;margin-bottom:6px}.mobile-brand-logo{width:220px}.pwa-app-icon img{display:block;width:100%;height:100%;object-fit:contain}.login-overlay h1{margin-top:26px}.brand.brand-logo img{user-select:none;-webkit-user-drag:none}@media(max-width:1050px){.mobile-brand.brand-logo{display:block}.sidebar-logo{width:176px}.login-logo{width:min(320px,100%)}}

/* v3.7.0 Web-Push UI */
.push-settings-panel{margin-top:22px}
.push-settings-panel .section-title{align-items:flex-start;margin-bottom:16px}
.push-status{display:inline-flex;align-items:center;gap:8px;margin:8px 0 16px;padding:10px 13px;border:1px solid var(--line);border-radius:14px;background:rgba(37,99,235,.08);color:var(--text);font-weight:800}
.push-preferences-form{margin-top:12px}
.push-settings-panel h3{margin-top:22px}
.push-settings-panel code{background:rgba(15,23,42,.08);padding:2px 6px;border-radius:7px}
@media(max-width:1050px){.push-settings-panel .section-title{display:grid}.push-settings-panel .actions{justify-content:flex-start}.push-settings-panel .actions .btn{width:100%}}

/* v3.7.3 Schrottcontainer Gewichtssystem */
.weight-grid .scrap-card,.scrap-weight-card{display:flex;flex-direction:column;text-decoration:none;color:inherit}
.scrap-weight-main{display:flex;align-items:baseline;gap:8px;margin:12px 0 8px}
.scrap-weight-main strong{font-size:1.55rem;line-height:1;color:var(--text)}
.scrap-weight-main span{color:var(--muted);font-weight:700}
.scrap-weight-main.large strong{font-size:2.1rem}
.scrap-weight-main.compact{margin:0}
.weight-progress{height:12px;border-radius:999px;background:rgba(148,163,184,.22);overflow:hidden;border:1px solid rgba(148,163,184,.18)}
.weight-progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#22c55e,#f59e0b,#ef4444);transition:width .2s ease}
.weight-progress.large{height:16px;margin:8px 0 10px}
.scrap-weight-meta{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:.9rem;font-weight:700;margin:8px 0 12px}
.scrap-detail-grid{align-items:flex-start}
.scrap-detail-hero{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:center}
.scrap-detail-hero>img,.scrap-detail-hero>.scrap-card-image-placeholder{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px;background:rgba(15,23,42,.08)}
.scrap-total-box{padding:14px 16px;border-radius:16px;background:rgba(37,99,235,.08);border:1px solid var(--line);font-size:1.05rem}
.scrap-total-box strong{font-size:1.25rem}
.scrap-empty-form{margin-top:16px}
.scrap-admin-split{align-items:flex-start}
.scrap-dump-type-form{margin-bottom:18px}
.table-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.inline-form{display:inline}
@media(max-width:800px){.scrap-detail-hero{grid-template-columns:1fr}.scrap-weight-meta{display:grid}.table-actions .btn{width:100%}}
