/* Schrift Poppins direkt in dieser Datei (seit Update 328; SIL Open Font License 1.1, Copyright 2020 The Poppins
   Project Authors, github.com/itfoundry/Poppins) — keine Verbindung mehr zu Google Fonts, also keine Übermittlung
   von Besucher-IP-Adressen an Google (DSGVO). Schnitte 400–800, Zeichensatz Latin (inkl. Umlaute, ß, €). */
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2');}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2');}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2');}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2');}
@font-face{font-family:'Poppins';font-style:normal;font-weight:800;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2');}

/* =====================================================================
   Portal-Design nach Brandbook GREEN TC 2026 (seit Update 290)
   Navy #111B2D Basis · Grün #669C34 Leitfarbe · Rot #F82249 Signal ·
   Grau #D8D8D8 neutral · Poppins als einzige Textschrift.
   Wird NACH den Grundstilen aus index.html geladen und überschreibt sie.
   ===================================================================== */
:root{
  --navy:#111B2D;
  --navy-2:#1A2740;
  --navy-3:#24334F;
  --gruen:#669C34;
  --rot:#F82249;
  --grau:#D8D8D8;

  --accent:#669C34;
  --accent-dark:#456F20;   /* dunkler als vorher (#4F7C25): Text darauf/daneben erreicht Kontrast 4,5:1 */
  --btn-gruen:#4F7C25;      /* Knopf-Grün: weiße Schrift 4,9:1 (Leitfarbe #669C34 nur 3,3:1) */
  --accent-tint:#EEF5E6;
  --text:#111B2D;
  --text-mute:#5E6878;
  --line:#E5E8EE;
  --line-strong:#D8D8D8;
  --bg:#FFFFFF;
  --bg-alt:#F4F6F9;
  --bg-sunken:#EDF0F4;
  --danger:#E01E42;
  --radius-sm:9px;
  --radius:14px;
  --radius-lg:18px;
  --shadow-xs:0 1px 2px rgba(17,27,45,.05);
  --shadow-sm:0 1px 3px rgba(17,27,45,.07), 0 1px 2px rgba(17,27,45,.04);
  --shadow-md:0 6px 16px rgba(17,27,45,.08), 0 2px 4px rgba(17,27,45,.04);
  --shadow-lg:0 16px 36px rgba(17,27,45,.12);
  --seite:#F4F6F9;
  --karte-rand:#E5E8EE;
}

/* ---------- Schrift ---------- */
body, button, input, select, textarea{font-family:'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;}
body{font-size:13.5px; color:var(--text); background:var(--seite); letter-spacing:0;}
h1,h2,h3,h4{letter-spacing:-.01em; color:var(--navy);}
main h1{font-size:24px; font-weight:700; line-height:1.25; margin:0 0 4px;}
main h2{font-size:15.5px; font-weight:600;}
main h3{font-weight:600;}
.subtitle{color:var(--text-mute); font-size:13px; font-weight:300;}

/* ---------- Rahmen: Kopfleiste ---------- */
.topbar{
  height:62px; padding:0 22px; background:#fff; border-bottom:1px solid var(--line);
  box-shadow:none;
}
.brand-logo{height:30px;}
.global-search input, .global-search-input{
  border-radius:10px !important; background:var(--bg-alt) !important; border:1px solid transparent !important;
  padding-left:12px !important; transition:background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.global-search input:focus, .global-search-input:focus{background:#fff !important; border-color:var(--accent) !important; box-shadow:0 0 0 3px var(--accent-tint) !important; outline:none;}
.user-avatar-small{background:var(--navy); font-weight:600;}
.user-trigger{font-weight:500; color:var(--navy);}

/* ---------- Rahmen: Seitenleiste in Navy ---------- */
.sidebar{
  background:var(--navy); border-right:none; padding:18px 12px 14px; width:236px;
  scrollbar-width:thin; scrollbar-color:rgba(255,255,255,.18) transparent;
}
.sidebar.collapsed{width:64px;}
.sidebar-group + .sidebar-group{border-top:1px solid rgba(255,255,255,.07); margin-top:12px; padding-top:12px;}
.sidebar-group-label{color:rgba(255,255,255,.42); font-size:10px; font-weight:600; letter-spacing:.12em; padding:0 10px 6px;}
.sidebar-item{
  color:rgba(255,255,255,.78); font-size:13px; font-weight:400; padding:7px 10px; border-radius:10px; gap:11px;
}
.sidebar-item:hover{background:rgba(255,255,255,.06); color:#fff; box-shadow:none;}
.sidebar-item.active{
  background:linear-gradient(90deg, var(--gruen), #5A8C2D); color:#fff; font-weight:500;
  box-shadow:0 6px 16px rgba(102,156,52,.28);
}
.sidebar-item-icon{background:rgba(255,255,255,.06); color:rgba(255,255,255,.82); box-shadow:none; width:28px; height:28px; border-radius:8px;}
.sidebar-item:hover .sidebar-item-icon{color:#fff;}
.sidebar-item.active .sidebar-item-icon{background:rgba(255,255,255,.18); color:#fff;}
.sidebar .nav-badge{background:var(--rot);}
.sidebar-version, .sidebar .hint{color:rgba(255,255,255,.38) !important;}
.sidebar-handle{left:224px; color:var(--navy); border-color:var(--line);}
.sidebar.collapsed .sidebar-handle{left:52px;}
.sidebar-mobile-userbox{border-top-color:rgba(255,255,255,.1) !important;}
.sidebar-mobile-userbox .user-trigger{color:#fff;}
.sidebar-mobile-userbox .user-dropdown{background:transparent;}
.sidebar-mobile-userbox .user-dropdown-item{color:rgba(255,255,255,.85);}
.sidebar-mobile-userbox .user-dropdown-item:hover{background:rgba(255,255,255,.06);}

/* ---------- Hauptbereich ---------- */
main{padding:28px 32px 64px; background:var(--seite);}
main.main-wide{padding-left:32px; padding-right:32px;}

/* Karten statt flacher Flächen */
.panel{
  background:#fff; border:1px solid var(--karte-rand); border-radius:var(--radius);
  box-shadow:var(--shadow-xs); padding:22px 24px;
}
.panel .panel{box-shadow:none; background:var(--bg-alt); border-color:transparent;}
.panel + .panel{margin-top:16px;}
.grid{gap:16px;}

/* ---------- Knöpfe ---------- */
.btn{
  border-radius:10px; font-weight:500; font-size:13.5px; padding:9px 18px; letter-spacing:0;
  box-shadow:0 1px 2px rgba(17,27,45,.08);
}
.btn:hover{transform:translateY(-1px);}
/* Barrierefreiheit (Update 393): weiße Schrift auf Leitfarbe #669C34 hat nur Kontrast 3,3:1 → Knöpfe im dunkleren Brand-Grün */
.btn{background:var(--btn-gruen); border-color:var(--btn-gruen);}
.btn:hover{background:var(--accent-dark); border-color:var(--accent-dark);}
.btn.secondary{background:#fff; color:var(--navy); border-color:var(--line-strong);}
.btn.secondary:hover{background:var(--bg-alt); border-color:#B9BEC7;}
.btn.danger{color:var(--danger); border-color:#F3B3C0;}
.btn.danger:hover{background:#FFF0F3;}
.btn.danger-solid{background:var(--danger); border-color:var(--danger);}
.btn.success{background:var(--btn-gruen); border-color:var(--btn-gruen);}
.btn.success:hover{background:var(--accent-dark); border-color:var(--accent-dark);}
.linklike{color:var(--accent-dark);}

/* ---------- Eingabefelder ---------- */
.field label{font-size:12px; font-weight:500; color:var(--text-mute); letter-spacing:.01em;}
.field input, .field select, .field textarea{border-radius:10px; border-color:var(--line-strong); padding:9px 12px; font-size:13.5px;}
main input[type=search]{border-radius:10px !important; padding-left:12px !important; background:#fff;}
input[type=checkbox]{border-radius:5px;}
input[type=checkbox]:checked{background:var(--gruen); border-color:var(--gruen);}

/* ---------- Reiter: Segment-Leiste ---------- */
.tabs{
  border-bottom:none; background:#fff; border:1px solid var(--karte-rand); border-radius:12px;
  padding:4px; gap:2px; display:inline-flex; max-width:100%; flex-wrap:wrap; box-shadow:var(--shadow-xs);
}
.tabs button{border-bottom:none; margin:0; border-radius:9px; padding:7px 14px; font-size:13px; color:var(--text-mute); font-weight:500;}
.tabs button:hover{background:var(--bg-alt); color:var(--navy);}
.tabs button.active{background:var(--navy); color:#fff; font-weight:500; border-bottom:none;}
.tabs.tabs-grouped{display:flex; background:transparent; border:none; box-shadow:none; padding:0;}
.tabs.tabs-grouped .tabs-group-buttons{background:#fff; border:1px solid var(--karte-rand); border-radius:12px; padding:4px;}

/* ---------- Tabellen ---------- */
table.data{font-size:13px; background:#fff;}
table.data th{
  background:#fff; color:var(--text-mute); font-size:10.5px; font-weight:600; letter-spacing:.08em;
  border-bottom:1px solid var(--line); padding:11px 12px;
}
table.data td{border-bottom:1px solid #EEF0F4; padding:11px 12px;}
table.data tbody tr:hover{background:#F7F9FB;}
.panel > table.data, .panel-table > table.data{border-radius:10px;}

/* ---------- Kennzeichen ---------- */
.tag, .role-badge{border-radius:999px; font-size:10.5px; font-weight:600; letter-spacing:.06em; padding:3px 9px; border-color:var(--line-strong); color:var(--navy);}
.tag.admin, .role-badge.admin{background:var(--navy); border-color:var(--navy); color:#fff;}
.nav-badge{background:var(--rot);}

/* ---------- Startseite / Kacheln ---------- */
.home-tile{border-radius:var(--radius-lg); border-color:var(--karte-rand); padding:18px 18px 16px; box-shadow:var(--shadow-xs);}
.home-tile:hover{border-color:var(--gruen); box-shadow:var(--shadow-md);}
.home-tile-icon{width:36px; height:36px; border-radius:11px; background:var(--accent-tint); color:var(--accent-dark); margin-bottom:10px;}
.home-tile-title{font-size:14px; font-weight:600; color:var(--navy);}
.home-tile-stat{font-size:12.5px;}

/* ---------- Zweite Navigation (Einstellungen, Hilfe) ---------- */
.settings-nav{background:#fff; border:1px solid var(--karte-rand); border-radius:var(--radius); padding:12px 10px; box-shadow:var(--shadow-xs); top:12px; align-self:flex-start;}
.settings-nav-group + .settings-nav-group{border-top-color:var(--line);}
.settings-nav-group-label{font-size:10px; font-weight:600; letter-spacing:.12em; color:#8B94A3;}
.settings-nav-item{border-radius:8px; font-size:12.8px; color:#3D4757;}
.settings-nav-item:hover{background:var(--bg-alt); color:var(--navy);}
.settings-nav-item.active{background:var(--navy); color:#fff; font-weight:500;}
.settings-nav-item.active .settings-nav-item-icon{color:#fff;}
.settings-body.panel, .settings-body{min-width:0;}

/* ---------- Fenster ---------- */
.modal-overlay{background:rgba(17,27,45,.48); backdrop-filter:blur(3px);}
.modal-box{border-radius:var(--radius-lg); border:none; box-shadow:0 24px 60px rgba(17,27,45,.28);}
.modal-header{border-bottom:1px solid var(--line);}
.modal-header h2, .modal-header h3{font-weight:600;}

/* ---------- Meldungen ---------- */
.error-msg{color:var(--danger);}
.empty{color:var(--text-mute); font-weight:300;}

/* ---------- Anmeldung ---------- */
.login-card{border-radius:var(--radius-lg); border:1px solid var(--karte-rand); box-shadow:var(--shadow-lg);}

/* ---------- Seitenkopf-Band (Bausteinklasse für die App-Überarbeitung) ---------- */
.app-header{
  position:relative; overflow:hidden; border-radius:var(--radius-lg); padding:22px 26px; margin:0 0 18px;
  background:linear-gradient(110deg, var(--navy) 0%, var(--navy-2) 55%, #2E4A2A 100%); color:#fff;
  box-shadow:var(--shadow-md);
}
.app-header h1{color:#fff; margin:0 0 2px;}
.app-header .subtitle{color:rgba(255,255,255,.72); margin:0;}
.app-header-numbers{display:grid; grid-template-columns:repeat(auto-fit, minmax(130px, 1fr)); gap:10px; margin-top:16px;}
.app-header-number{background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.1); border-radius:12px; padding:10px 14px;}
.app-header-number b{display:block; font-size:22px; font-weight:600; line-height:1.15; color:#fff;}
.app-header-number span{font-size:11.5px; color:rgba(255,255,255,.68);}

/* ---------- Tablet ---------- */
@media (max-width:1100px){
  main, main.main-wide{padding:22px 20px 56px;}
  .panel{padding:18px;}
}

/* ---------- Handy ---------- */
@media (max-width:760px){
  .topbar{height:56px; padding:0 12px;}
  .sidebar{width:min(86vw, 300px);}
  main, main.main-wide{padding:16px 12px 40px;}
  main h1{font-size:20px;}
  .panel{padding:14px; border-radius:12px;}
  .tabs{display:flex; overflow-x:auto; flex-wrap:nowrap; -webkit-overflow-scrolling:touch; scrollbar-width:none;}
  .tabs::-webkit-scrollbar{display:none;}
  .tabs button{white-space:nowrap; flex-shrink:0;}
  .app-header{padding:16px 16px; border-radius:14px;}
  .app-header-numbers{grid-template-columns:repeat(2, 1fr);}
  .settings-nav{border-radius:12px;}
}

/* ---------- Grundform aller Eingabefelder (niedrige Spezifität über :where,
   damit gezielte Stile wie kompakte Tabellenfelder weiter gewinnen) ---------- */
main :where(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=color]):not([type=range]):not([type=hidden]), select, textarea),
.modal-box :where(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=color]):not([type=range]):not([type=hidden]), select, textarea){
  border:1px solid var(--line-strong); border-radius:9px; background:#fff; color:var(--text);
  padding:7px 11px; font-size:13.5px; font-family:inherit; min-height:36px;
  transition:border-color .12s ease, box-shadow .12s ease;
}
main :where(input, select, textarea):focus, .modal-box :where(input, select, textarea):focus{
  outline:none; border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-tint);
}
main :where(select), .modal-box :where(select){
  -webkit-appearance:none; appearance:none; padding-right:32px; cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235E6878' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 11px center;
}
main :where(input[type=file])::file-selector-button, .modal-box :where(input[type=file])::file-selector-button{
  font-family:inherit; font-size:13px; font-weight:500; color:var(--navy); background:#fff;
  border:1px solid var(--line-strong); border-radius:9px; padding:6px 12px; margin-right:10px; cursor:pointer;
}
main :where(input[type=file])::file-selector-button:hover{background:var(--bg-alt);}
table.data :where(input:not([type=checkbox]), select){min-height:0; padding:4px 8px; border-radius:7px;}

/* ---------- Anmeldeseite im Markenauftritt (Navy-Verlauf wie Brandbook-Titel) ---------- */
.login-wrap{
  background:radial-gradient(1200px 600px at 85% 110%, rgba(102,156,52,.35), transparent 60%),
             linear-gradient(135deg, #111B2D 0%, #16233A 60%, #1C3326 100%);
  padding:24px 16px;
}
.login-card{border:none; border-radius:20px; padding:38px 34px 30px; box-shadow:0 30px 80px rgba(0,0,0,.35);}
.login-card h1{font-size:24px; font-weight:700; color:var(--navy);}
.login-wrap + *, .login-wrap .hint{color:inherit;}
.login-wrap > div[style*="position:fixed"]{color:rgba(255,255,255,.6) !important; opacity:1 !important;}

/* ---------- Startseite: Kopfband (seit Update 291) ---------- */
.home-header .home-header-row{align-items:flex-start;}
.home-header .home-header-btn, .home-header .home-header-btn .home-header-btn-icon{color:rgba(255,255,255,.78);}
.home-header .home-header-btn:hover, .home-header .home-header-btn:hover .home-header-btn-icon{color:#fff;}
.app-header-number{font-family:inherit; text-align:left; cursor:pointer; color:#fff; transition:background-color .15s ease, border-color .15s ease, transform .1s ease;}
button.app-header-number:hover{background:rgba(255,255,255,.13); border-color:rgba(255,255,255,.22); transform:translateY(-1px);}
.app-header-number.hervor{background:rgba(102,156,52,.28); border-color:rgba(132,190,78,.55);}
.app-header-number.hervor b{color:#C9EFA2;}
.home-grid{grid-template-columns:repeat(auto-fill, minmax(200px, 1fr)); grid-auto-rows:118px; gap:14px;}
@media (max-width:640px){ .home-grid{grid-template-columns:repeat(2, 1fr); grid-auto-rows:104px; gap:10px;} .app-header-number b{font-size:19px;} }

/* ---------- Kopfband: Titelzeile mit Aktionen (seit Update 292) ---------- */
.app-header-row{display:flex; align-items:flex-start; justify-content:space-between; gap:14px; flex-wrap:wrap;}
.app-header-actions{display:flex; gap:8px; flex-wrap:wrap; align-items:center;}
.app-header .btn.secondary{background:rgba(255,255,255,.08); color:#fff; border-color:rgba(255,255,255,.18); box-shadow:none;}
.app-header .btn.secondary:hover{background:rgba(255,255,255,.16); border-color:rgba(255,255,255,.3);}
.app-header .btn:not(.secondary){background:var(--btn-gruen); border-color:var(--btn-gruen);}
.crm-map{height:280px;}
.crm-map-panel{border-radius:var(--radius); overflow:hidden; border:1px solid var(--karte-rand); background:#fff;}

/* ---------- Disposition: Kopfband (seit Update 293, nur Darstellung) ---------- */
.dispatch-header .dispatch-kpi button:not(.status-tile){
  background:rgba(255,255,255,.07) !important; color:#fff !important; border-top:1px solid rgba(255,255,255,.12) !important;
  border-right:1px solid rgba(255,255,255,.12) !important; border-bottom:1px solid rgba(255,255,255,.12) !important;
  border-left-width:4px !important; border-radius:12px !important; min-width:104px !important; padding:8px 14px !important;
}
.dispatch-header .dispatch-kpi button:not(.status-tile):hover{background:rgba(255,255,255,.14) !important;}
.dispatch-header .dispatch-kpi button:not(.status-tile) b, .dispatch-header .dispatch-kpi button:not(.status-tile) div, .dispatch-header .dispatch-kpi button:not(.status-tile) span{color:inherit !important;}
.dispatch-header .dispatch-carriers > div{color:rgba(255,255,255,.88); font-size:12.5px !important;}
.dispatch-header .dispatch-carriers > div span:last-child{font-weight:500 !important;}
@media (max-width:760px){ .dispatch-header .dispatch-kpi, .dispatch-header .dispatch-kpi > div{margin-left:0 !important; width:100%;} .dispatch-header .dispatch-kpi button{flex:1 1 30%; min-width:0 !important;} }
.dispatch-header .dispatch-kpi button:not(.status-tile)[title="Filter aufheben"]{background:rgba(102,156,52,.45) !important; border-color:rgba(160,210,110,.75) !important; box-shadow:0 0 0 2px rgba(160,210,110,.35);}

/* ---------- Kommissionierung: Auftragskacheln im Raster (seit Update 294, nur Darstellung) ---------- */
.pick-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(320px, 1fr)); gap:14px;}
.pick-grid > div{margin-bottom:0 !important; border-radius:16px !important; box-shadow:var(--shadow-xs); transition:box-shadow .15s ease, border-color .15s ease, transform .1s ease;}
.pick-grid > div:hover{box-shadow:var(--shadow-md); border-color:var(--gruen) !important;}
@media (max-width:760px){ .pick-grid{grid-template-columns:1fr; gap:10px;} }

/* ---------- Kompaktes Kopfband + Chips (seit Update 295) ---------- */
.app-header-compact{padding:18px 24px;}
.app-header-compact h1{font-size:22px;}
.app-header-chips{display:flex; flex-wrap:wrap; gap:6px; align-items:center; justify-content:flex-end; max-width:60%;}
.app-header-chip{font-size:11.5px; font-weight:500; padding:4px 10px; border-radius:999px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16); color:rgba(255,255,255,.9);}
@media (max-width:760px){ .app-header-chips{max-width:none; justify-content:flex-start;} }
/* Rechner: Ergebnisbereich als Karte */
.calc-split-right > div > .empty{background:#fff; border:1px dashed var(--line-strong); border-radius:var(--radius); padding:48px 20px !important;}
.result-card{border-radius:var(--radius) !important; border-color:var(--karte-rand) !important; box-shadow:var(--shadow-xs);}
.calc-split{gap:22px;}
.calc-split-left .panel{background:#fff !important; border:1px solid var(--karte-rand) !important; border-radius:var(--radius) !important; padding:20px 22px !important; box-shadow:var(--shadow-xs) !important;}
@media (min-width:761px) and (max-width:1600px){
  .calc-split-left{flex:0 0 54%; max-width:54%;}
  .calc-split-right{flex:0 0 calc(46% - 22px); max-width:calc(46% - 22px);}
}
@media (min-width:761px){ .calc-split-right{flex-basis:calc(40% - 22px); max-width:calc(40% - 22px);} }
@media (min-width:761px) and (max-width:1600px){ .calc-split-right{flex-basis:calc(46% - 22px); max-width:calc(46% - 22px);} }
.price-total{white-space:nowrap;}
.price-total small{white-space:normal;}

/* ---------- Abholer (seit Update 296) ---------- */
.pickup-nav h2{color:#fff !important;}
.pickup-nav .btn.secondary{padding:7px 14px !important;}
.pickup-layout{display:grid; grid-template-columns:minmax(0, 1fr) 360px; gap:18px; align-items:start;}
.pickup-page{position:sticky; top:12px;}
.pickup-page .panel{margin-bottom:0 !important;}
.pickup-page .grid{grid-template-columns:1fr !important;}
.pickup-page .app-header-number b{font-size:16px;}
.app-header-number b{overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
@media (max-width:1100px){ .pickup-layout{grid-template-columns:1fr;} .pickup-page{position:static; order:-1;} }
.app-header-number.warnung{background:rgba(248,34,73,.18); border-color:rgba(248,34,73,.5);}
.app-header-number.warnung b{color:#FFB3C1;}
.app-header-numbers{grid-template-columns:repeat(auto-fit, minmax(min(130px, 100%), 1fr));}
.app-header-number{min-width:0;}
@media (max-width:760px){
  .app-header-numbers{grid-template-columns:repeat(2, minmax(0, 1fr));}
  .app-header-number b{white-space:normal; font-size:17px; overflow-wrap:anywhere;}
}

/* ---------- Personal: Reiter im Kopfband, gruppiert (seit Update 299) ---------- */
.hr-tab{display:flex; flex-wrap:wrap; gap:12px 22px; margin-top:16px;}
.hr-tab-group{display:flex; flex-direction:column; gap:6px; min-width:0; max-width:100%;}
.hr-tab-title{font-size:10px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.55);}
.app-header .tabs{background:rgba(255,255,255,.07); border-color:rgba(255,255,255,.12); box-shadow:none; margin:0;}
.app-header .tabs button{color:rgba(255,255,255,.78);}
.app-header .tabs button:hover{background:rgba(255,255,255,.1); color:#fff;}
.app-header .tabs button.active{background:#fff; color:var(--navy);}

/* ---------- Auswertungen: Diagramme im Raster (seit Update 300) ---------- */
.report-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(440px, 100%), 1fr)); gap:16px; align-items:start;}
.report-grid > .panel{margin:0 !important;}
.report-grid svg{max-width:100%; height:auto;}

/* ---------- Automatisches Kopfband (seit Update 301) ---------- */
.app-header-auto{display:block;}
.app-header-auto[style*="display:flex"], .app-header-auto[style*="display: flex"]{display:flex !important;}
.app-header-auto h1{color:#fff !important;}
.app-header-auto .subtitle, .app-header-auto p{color:rgba(255,255,255,.72) !important;}
.app-header-auto .hint{color:rgba(255,255,255,.6) !important;}
.app-header-auto .linklike{color:#C9EFA2;}
.app-header-auto .btn.secondary{background:rgba(255,255,255,.08); color:#fff; border-color:rgba(255,255,255,.18);}
.app-header-auto .btn.secondary:hover{background:rgba(255,255,255,.16);}
.app-header-auto > p.subtitle:last-child{margin-bottom:0 !important;}
.app-header-auto input[type=search]{background:rgba(255,255,255,.95) !important;}
.app-header h1{color:#fff;}

/* ---------- Detailseiten im Kopfband-Stil (seit Update 302) ---------- */
.crm-detail-header{
  background:linear-gradient(110deg, var(--navy) 0%, var(--navy-2) 55%, #2E4A2A 100%) !important; color:#fff !important;
  border:none !important; border-radius:var(--radius-lg) !important; box-shadow:var(--shadow-md) !important; padding:22px 26px !important;
}
.crm-detail-header .crm-detail-company{color:#fff !important;}
.crm-detail-header .crm-detail-meta, .crm-detail-header .crm-detail-meta span, .crm-detail-header .hint{color:rgba(255,255,255,.72) !important;}
.crm-detail-header .crm-detail-potential{color:#C9EFA2 !important;}
.crm-detail-header .customer-type-badge{background:rgba(255,255,255,.12) !important; color:#fff !important; border-color:rgba(255,255,255,.2) !important;}
.crm-detail-header .btn.secondary{background:rgba(255,255,255,.08); color:#fff; border-color:rgba(255,255,255,.18);}
.user-header .hint{color:rgba(255,255,255,.7) !important;}
.user-header > div:first-child{background:rgba(255,255,255,.12) !important; color:#fff !important;}
.user-header .tag{background:rgba(255,255,255,.12); color:#fff; border-color:rgba(255,255,255,.25);}

/* ---------- Drucken (seit Update 305): nur der Inhalt, ohne Navigation, Kopfband hell ---------- */
@media print{
  .sidebar, .topbar, .sidebar-handle, .inbox-toast, .toast{display:none !important;}
  body, main{background:#fff !important;}
  main, main.main-wide{padding:0 !important;}
  .app-header{background:#fff !important; color:var(--navy) !important; box-shadow:none !important; border:1px solid var(--line); padding:12px 16px !important;}
  .app-header h1, .app-header .subtitle, .app-header-number b, .app-header-number span, .app-header p{color:var(--navy) !important;}
  .app-header-number{background:#fff !important; border-color:var(--line) !important;}
  .app-header .btn, .app-header-actions{display:none !important;}
  .panel{box-shadow:none !important; break-inside:avoid;}
}

/* ---------- Wiki-Arbeitsbereich (seit Update 306) ---------- */
.wiki-header .app-header-actions{display:flex; align-items:center; gap:8px; flex-wrap:wrap;}
.wiki-header .app-header-number{padding:6px 14px; min-width:0; display:flex; align-items:baseline; gap:6px;}
.wiki-header .app-header-number b{font-size:18px;}
.wiki-layout .wiki-sidebar-col{background:#fff; border:1px solid var(--line); border-radius:14px; padding:14px; align-self:flex-start;}
.wiki-layout .wiki-content-col{background:#fff; border:1px solid var(--line); border-radius:14px; padding:22px 28px; box-shadow:0 1px 2px rgba(17,27,45,.04);}
.wiki-layout .wiki-content-col > div{max-width:860px;}
@media (max-width:760px){
  .wiki-layout .wiki-content-col{padding:16px;}
  .wiki-header .app-header-actions .btn{flex:1 1 auto;}
}
@media (max-width:900px){ .wiki-layout .wiki-sidebar-col{flex:0 0 auto; width:auto;} }
@media (max-width:760px){ .wiki-page-actions .btn{padding:8px 12px;} }

/* ---------- Einstellungen + Links (seit Update 307) ---------- */
/* Themen-Navigation bleibt beim Scrollen langer Einstellungsseiten sichtbar (nur Desktop). */
@media (min-width:901px){
  .settings-nav{position:sticky; top:12px; max-height:calc(100vh - 24px); overflow-y:auto; scrollbar-width:thin;}
}
/* Schlichte Textlinks im Inhaltsbereich (z. B. Dateibrowser, Brotkrumen) in Markenfarben statt Browser-Blau. */
:where(main) a:where(:not([class])){color:var(--navy); text-decoration:none; font-weight:500;}
:where(main) a:where(:not([class])):hover{color:var(--accent-dark, var(--gruen)); text-decoration:underline; text-underline-offset:2px;}

/* ---------- Zeiterfassung Stempelkarte (seit Update 310) ---------- */
.time-clock-box{background:#fff; border:1px solid var(--line); border-radius:var(--radius, 14px); box-shadow:var(--shadow-xs);}
.time-clock-status{font-size:18px; color:var(--navy);}

/* ---------- Kopfband am Handy kompakter (seit Update 311): Inhalt rückt nach oben ---------- */
@media (max-width:640px){
  .app-header{padding:14px 14px;}
  .app-header h1{font-size:21px;}
  .app-header .subtitle{font-size:12.5px;}
  .app-header-numbers{gap:8px; margin-top:12px;}
  .app-header-number{padding:8px 10px; border-radius:10px;}
  .app-header-number b{font-size:16px;}
  .app-header-number span{font-size:10.5px; line-height:1.25; display:block;}
  /* Ab 5 Kennzahlen drei Spalten statt zwei — spart eine bis zwei Zeilen. */
  .app-header-numbers:has(> :nth-child(5)){grid-template-columns:repeat(3, minmax(0, 1fr));}
  .app-header-actions{gap:6px;}
  .app-header-actions .btn{padding:7px 11px; font-size:12.5px;}
}
/* Startseite am Handy (seit Update 312): Kacheln so verdichtet, dass Titel + Kennzeile in die 104-px-Zeile passen (vorher abgeschnitten). */
@media (max-width:640px){
  .home-tile{padding:12px 12px 10px;}
  .home-tile-icon{width:30px; height:30px; border-radius:9px; margin-bottom:6px;}
  .home-tile-icon svg{width:16px; height:16px;}
  .home-tile-title{font-size:13.5px; line-height:1.25; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
  .home-tile-stat{font-size:11.5px; line-height:1.3; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
}
/* Abholer (seit Update 315): Formular „Neuer Abholtermin" in der schmalen rechten Spalte einspaltig, alle Felder gleich breit. */
.pickup-layout .grid.cols-4{grid-template-columns:minmax(0,1fr); gap:12px; align-items:start !important;}
.pickup-layout .grid.cols-4 > .field{grid-column:auto !important; margin:0;}
.pickup-layout .grid.cols-4 input:not([type=checkbox]){width:100%;}
/* Personenauswahl „Wer bist du?" (seit Update 317): kompakter Dialog statt bildschirmbreit. */
.modal-box:has(.person-picker){max-width:min(640px, calc(100vw - 32px));}
@media (max-width:640px){ .modal-box:has(.person-picker){height:auto !important; max-height:calc(100vh - 32px); border-radius:16px; margin:auto 0;} }
/* Kiosk „Lager heute" (seit Update 321): sechs Kennzahlen auf Tablet-Hochformat/Handy in 3 bzw. 2 Spalten statt abgeschnitten. */
@media (max-width:1000px){ .lh-kpis{grid-template-columns:repeat(3, minmax(0,1fr)) !important;} }
@media (max-width:560px){ .lh-kpis{grid-template-columns:repeat(2, minmax(0,1fr)) !important;} }
@media (max-width:560px){ .lh-kpis > *{min-width:0; padding-left:14px !important; padding-right:10px !important; hyphens:auto; -webkit-hyphens:auto; overflow-wrap:anywhere;} }
/* Kiosk-Ansichten auf Tablet-Querformat/kleinen Bildschirmen (seit Update 323): Panel-Titel kleiner, Zähler bleibt in der Zeile. */
@media (min-width:901px) and (max-width:1400px){
  .kiosk-carrier-panel{padding:16px 18px;}
  .kiosk-carrier-panel-name{font-size:20px; line-height:1.25; min-width:0;}
  .kiosk-carrier-panel-header{gap:10px;}
  .kiosk-carrier-panel-count{flex-shrink:0;}
  .kiosk-carrier-row{font-size:14.5px; padding:10px 12px; gap:10px;}
}
/* Kiosk-Kopfzeile (seit Update 324): zwischen 901 und 1400 px etwas kleiner, damit Datum/Uhr rechts neben Logo + Titel bleiben; bricht sie doch um, steht die Uhr rechtsbündig. */
@media (min-width:901px) and (max-width:1400px){
  .kiosk-logo{height:44px;}
  .kiosk-title-divider{height:44px;}
  .kiosk-title{font-size:34px;}
  .kiosk-date{font-size:16px;}
  .kiosk-clock{font-size:36px;}
}
.kiosk-header > div:last-child{margin-left:auto;}
@media (max-width:560px){
  .kiosk-title-row{flex-wrap:wrap; gap:6px 12px;}
  .kiosk-title-row .kiosk-title-divider{display:none;}
  .kiosk-title-row .kiosk-title{flex-basis:100%; font-size:22px;}
}

/* ---------- Barrierefreiheit (seit Update 325) ---------- */
/* Gruppenüberschriften der Einstellungs-Navigation: Kontrast 3,1:1 → 5,6:1 (WCAG AA). */
.settings-nav-group-label{color:var(--text-mute);}
/* Wer im System „Bewegung reduzieren" eingestellt hat, bekommt keine Animationen/Übergänge. */
@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important;}
  .btn:hover, button.app-header-number:hover{transform:none;}
}
.jump-link{position:fixed; left:12px; top:-60px; z-index:10000; background:var(--navy); color:#fff !important; padding:10px 16px; border-radius:10px; font-weight:600; text-decoration:none; transition:top .15s;}
.jump-link:focus{top:12px; outline:2px solid var(--gruen); outline-offset:2px;}
main:focus{outline:none;}

/* ---------- Handy: Tabellen als Karten (seit Update 328) ----------
   app.js versieht jede Zelle mit der Spaltenüberschrift (data-label). Unter 640 px wird jede Zeile
   eine Karte; ausgeblendete Spalten bleiben ausgeblendet. Opt-out: Elternelement mit .no-cards. */
@media (max-width:640px){
  table.cards-table{display:block; width:100% !important; min-width:0 !important; border:none; background:none;}
  table.cards-table > thead, table.cards-table > tbody, table.cards-table > tfoot{display:block;}
  table.cards-table tr{display:block; background:#fff; border:1px solid var(--line); border-radius:12px; padding:8px 12px; margin:0 0 10px; box-shadow:var(--shadow-xs);}
  table.cards-table tr.kb-header{display:none;}
  table.cards-table th, table.cards-table td{display:flex; align-items:center; justify-content:space-between; gap:12px; border:none !important; padding:5px 0 !important; text-align:right; position:static !important; width:auto !important; min-width:0 !important; max-width:none !important; box-shadow:none !important; background:none !important; white-space:normal !important; overflow-wrap:anywhere; font-size:13.5px;}
  table.cards-table td[data-label]::before, table.cards-table th[data-label]::before{content:attr(data-label); flex:0 0 auto; max-width:45%; text-align:left; font-size:11px; font-weight:600; letter-spacing:.3px; text-transform:uppercase; color:var(--text-mute);}
  table.cards-table td:not([data-label]), table.cards-table th:not([data-label]){justify-content:flex-start; text-align:left; flex-wrap:wrap;}
  table.cards-table td:empty{display:none;}
  table.cards-table td > *{min-width:0;}
  table.cards-table td .btn{margin:0 !important;}
  /* Zeilen-Hervorhebungen (z. B. „in Kommissionierung") behalten ihre Farbe als Kartenhintergrund. */
  table.cards-table tr[style*="background"]{border-color:#E8C48A;}
  .panel-table:has(> table.cards-table), .table-wrap:has(> table.cards-table){overflow:visible; background:none; border:none; box-shadow:none; padding:0;}
}
@media (max-width:640px){
  /* Kopfzeile bleibt verborgen — nur Knöpfe darin (z. B. „Filter zurücksetzen") bleiben erreichbar. */
  table.cards-table tr.kb-header:has(button){display:flex; justify-content:flex-end; background:none; border:none; box-shadow:none; padding:0; margin:0 0 6px;}
  table.cards-table tr.kb-header > *{display:none !important;}
  table.cards-table tr.kb-header > *:has(button){display:flex !important;}
  /* Filterzeilen kompakt zweispaltig, Beschriftung über dem Feld. */
  table.cards-table tr.filter-row{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:8px 10px; background:var(--bg-alt);}
  table.cards-table tr.filter-row > *{flex-direction:column; align-items:stretch; gap:2px; padding:0 !important;}
  table.cards-table tr.filter-row > *::before{max-width:none !important;}
  table.cards-table tr.filter-row > *:not([data-label]), table.cards-table tr.filter-row > *:empty{display:none !important;}
  table.cards-table tr.filter-row input, table.cards-table tr.filter-row select{font-size:14px !important; padding:6px 8px !important; min-width:0 !important;}
  /* Dispo-Liste: kein innerer Scrollbereich am Handy, die Seite scrollt. */
  .semi-scroll{max-height:none !important; overflow:visible !important; border:none !important; min-height:0 !important;}
}
@media (max-width:640px){ table.cards-table td[data-empty]{display:none !important;} }
@media (max-width:640px){ table.cards-table tr.kb-header:has(input[type=checkbox]){display:flex; align-items:center; background:none; border:none; box-shadow:none; padding:0 12px; margin:0 0 6px;} table.cards-table tr.kb-header > *:has(input[type=checkbox]){display:flex !important;} }
@media (max-width:640px){
  /* Abholer: Datumszeile mit Pfeilen und „Heute" in einer Zeile. */
  .pickup-nav{flex-wrap:nowrap !important; gap:6px !important;}
  .pickup-nav h2{font-size:14.5px !important; line-height:1.3;}
  .pickup-nav .btn.secondary{padding:7px 10px !important; font-size:12.5px;}
  /* CRM: Suche volle Breite, Filter und Schnellfilter als 2-Spalten-Raster, Ansichtsumschalter rechts. */
  .crm-werkzeuge{margin:12px 0 !important; gap:8px !important;}
  .crm-filter{display:grid !important; grid-template-columns:repeat(2, minmax(0,1fr)); gap:8px !important; width:100%;}
  .crm-filter > input{grid-column:1 / -1; width:100% !important; max-width:none !important;}
  .crm-filter > select, .crm-filter > .btn{width:100%; max-width:none !important; min-width:0; padding:8px 10px; font-size:13px;}
  .crm-werkzeuge .crm-view-toggle{width:100%; display:grid; grid-template-columns:1fr 1fr;}
}
/* Projekte „Meine Übersicht": lange Aufgabentitel dürfen die Spalte nicht verbreitern (Seite wurde am Handy breiter als der Bildschirm). */
.pm-overview-body > *{min-width:0;}
@media (max-width:900px){ .pm-overview-body{grid-template-columns:minmax(0,1fr) !important;} }
@media (max-width:640px){ table.cards-table td select{min-width:150px; padding-right:30px !important; text-overflow:ellipsis;} }
/* Handy-Feinschliff (seit Update 329): Suchfelder volle Breite, Untertitel im Kopfband höchstens zwei Zeilen. */
@media (max-width:640px){
  main input[type=search]{width:100% !important; max-width:none !important;}
  .app-header .subtitle{display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
}
/* Schlichte Textlinks auch in Dialogen in Markenfarben (seit Update 331). */
:where(.modal-box) a:where(:not([class])){color:var(--navy); font-weight:500; text-underline-offset:2px; text-decoration-color:rgba(17,27,45,.35);}
:where(.modal-box) a:where(:not([class])):hover{color:var(--accent-dark, var(--gruen)); text-decoration-color:currentColor;}
/* Farbwähler (seit Update 331): als Farbfeld statt leerer Eingabezeile. */
input[type=color]{width:52px !important; min-width:52px; height:40px; padding:3px !important; border-radius:10px; cursor:pointer; background:#fff;}
input[type=color]::-webkit-color-swatch-wrapper{padding:0;}
input[type=color]::-webkit-color-swatch{border:none; border-radius:7px;}
input[type=color]::-moz-color-swatch{border:none; border-radius:7px;}
/* Projekte-Board am Handy (seit Update 332): Ansichtsumschalter passt in die Breite, Werkzeugleiste kompakt als Raster. */
@media (max-width:640px){
  .pm-view-toggle{width:100%; overflow-x:auto; scrollbar-width:none;}
  .pm-view-toggle::-webkit-scrollbar{display:none;}
  .pm-view-toggle button{flex:1 0 auto; min-width:0; padding:7px 8px !important; font-size:12px !important;}
  .pm-toolbar{display:grid !important; grid-template-columns:repeat(2, minmax(0,1fr)); gap:6px !important;}
  .pm-toolbar > *{min-width:0;}
  .pm-toolbar .pm-toolbar-search-wrap, .pm-toolbar .pm-toolbar-sort-wrap, .pm-toolbar > .btn, .pm-toolbar > div:first-child{grid-column:1 / -1;}
  .pm-toolbar .pm-toolbar-btn{font-size:12.5px; padding:7px 9px; border:1px solid var(--line); border-radius:9px; background:#fff; justify-content:flex-start;}
  .pm-toolbar .pm-toolbar-more-btn{grid-column:auto; justify-self:end;}
}
@media (max-width:640px){
  :where(main) div:has(> .pm-view-toggle){flex-wrap:wrap !important; gap:6px !important;}
  .pm-toolbar .pm-toolbar-btn{overflow:hidden; white-space:nowrap; text-overflow:ellipsis; display:flex;}
}
@media (max-width:640px){ table.cards-table td[data-label]::before, table.cards-table th[data-label]::before{overflow-wrap:normal; word-break:normal; hyphens:auto; -webkit-hyphens:auto; max-width:50%;} }
/* Personalakte (nur Ansicht) am Handy (seit Update 335): Bezeichnung links, Wert rechts — halbiert die Höhe. */
@media (max-width:640px){
  div:has(> .hr-display){grid-template-columns:minmax(0,1fr) !important; gap:0 !important;}
  .hr-display{display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:7px 0; border-bottom:1px solid var(--line);}
  .hr-display:last-child{border-bottom:none;}
  .hr-display > :first-child{flex:0 0 auto; max-width:45%;}
  .hr-display > :last-child{text-align:right; overflow-wrap:anywhere; min-width:0;}
}

/* ---------- Englische Klassennamen (seit der Umbenennung): Datenwerte wie Status werden auch als CSS-Klasse genutzt ---------- */
.crm-status-badge.isActive{background:var(--accent-tint); color:var(--accent-dark);}
.crm-status-badge.inactive{background:var(--bg-alt); color:var(--text-mute);}
.week-calendar-item.followUp{background:#eef4fb; border-color:#bcd3ea;}
.app-header-number.highlight{background:rgba(102,156,52,.28); border-color:rgba(132,190,78,.55);}
.app-header-number.highlight b{color:#C9EFA2;}
.app-header-number.warning{background:rgba(248,34,73,.18); border-color:rgba(248,34,73,.5);}
.app-header-number.warning b{color:#FFB3C1;}
.org-card2 .caption{font-size:12.5px; color:var(--text-mute); line-height:1.3;}
.pfb-label .help{display:block; font-size:11.5px; color:var(--text-mute); margin-top:2px;}

/* Englische Klassennamen für Regeln, die noch in index.html (Server) stehen */
.customer-type-toggle{display:flex; gap:8px;}
.customer-type-toggle button{flex:1; padding:9px 12px; border:1.5px solid var(--line-strong); border-radius:7px;
    background:var(--bg); cursor:pointer; font-size:13px; font-weight:600; color:var(--text-mute);
    transition:border-color .12s ease, background-color .12s ease, color .12s ease;}
.customer-type-toggle button.checked{border-color:var(--accent); background:var(--accent-tint); color:var(--accent-dark);}
.customer-type-badge{font-size:11px; padding:2px 8px; border-radius:20px; border:1px solid var(--line-strong);
    color:var(--text-mute); white-space:nowrap;}
.crm-detail-company{font-size:26px; font-weight:800; color:var(--text);}
.crm-detail-potential{font-size:20px; font-weight:800; color:var(--accent-dark); margin-top:8px;}
.crm-contact-row, .crm-task-row{display:flex; align-items:center; gap:12px; padding:9px 12px; border:1px solid var(--line); border-radius:8px; background:var(--bg);}
.offer-cell{min-width:130px;}
.offer-badge{display:inline-block; font-size:11px; font-weight:700; padding:3px 9px; border-radius:10px;
    background:var(--bg-alt); color:var(--text-mute);}
.offer-badge.sent{background:var(--accent-tint); color:var(--accent-dark);}
.offer-form{display:grid; grid-template-rows:0fr; opacity:0; transition:grid-template-rows .16s ease, opacity .12s ease;
    min-width:190px;}
.offer-form > *{overflow:hidden;}
.offer-form.open{grid-template-rows:1fr; opacity:1; margin-top:8px;}
.offer-form input[type=date]{width:100%; padding:6px 8px; border:1px solid var(--line-strong); border-radius:5px; font-size:12px;}
.kiosk-side-row.done .kiosk-side-time, .kiosk-side-row.done .kiosk-side-customer, .kiosk-side-row.done .kiosk-side-note{text-decoration:line-through;}
.kiosk-side-row.cancelled .kiosk-side-time, .kiosk-side-row.cancelled .kiosk-side-customer, .kiosk-side-row.cancelled .kiosk-side-note{text-decoration:line-through; color:var(--danger);}
.kiosk-side-row.moved .kiosk-side-time, .kiosk-side-row.moved .kiosk-side-customer, .kiosk-side-row.moved .kiosk-side-note{text-decoration:line-through; color:#2f6fb8;}
.kiosk-current-customer{font-size:56px; font-weight:800; color:var(--text); line-height:1.15;}
.kiosk-row-customer{flex:1; min-width:140px;}
.kiosk-row.cancelled .kiosk-row-time, .kiosk-row.cancelled .kiosk-row-customer,
  .kiosk-row.moved .kiosk-row-time, .kiosk-row.moved .kiosk-row-customer{text-decoration:line-through; opacity:.7;}
.kiosk-carrier-row-customer{flex:1; min-width:100px;}
.kiosk-carrier-row-editor{font-size:13px; color:#15803d; font-weight:700; display:flex; align-items:center; gap:5px;}
@media(max-width:900px){.kiosk-current-customer{font-size:32px;}}
.sales-price-chip{display:flex; align-items:center; gap:9px;
    padding:6px 14px 6px 6px; background:#eef6e8; border:1px solid #cfe6bd; border-radius:22px;}
.sales-price-chip-icon{display:flex; align-items:center; justify-content:center; flex-shrink:0;
    width:26px; height:26px; border-radius:50%; background:var(--accent);}
.sales-price-chip-label{font-size:10px; color:var(--text-mute); text-transform:uppercase; letter-spacing:.3px; display:flex; align-items:center; cursor:help;}
.sales-price-chip-info{display:inline-flex; align-items:center; justify-content:center; margin-left:5px;
    width:13px; height:13px; border-radius:50%; background:#c9dcbb; color:#fff;
    font-size:9px; font-weight:700; font-style:italic; font-family:Georgia, serif;}
.sales-price-chip-price{font-size:16px; font-weight:800; color:var(--accent-dark); font-variant-numeric:tabular-nums; line-height:1.2;}
.help-article-body p{margin:0 0 12px; line-height:1.55;}
.help-article-body ul, .help-article-body ol{margin:0 0 12px; padding-left:22px; line-height:1.55;}
.help-article-body li{margin-bottom:6px;}
.help-article-body code{background:var(--bg-alt); padding:1px 5px; border-radius:4px; font-size:12.5px;}
@media(max-width:760px){.sales-price-chip{padding:5px 10px 5px 5px;}}

/* Frachtpreisvergleich: alle Sonderleistungs-Kacheln gleich hoch (Update 344) */
.sc-grid{grid-auto-rows:1fr;}

/* Auswahlfelder seitenweit mit Chevron (Update 345): ältere Regeln wie
   ".field select{background:#fff}" hatten das Pfeil-Symbol überschrieben. */
select:not([multiple]):not([size]){
  -webkit-appearance:none; -moz-appearance:none; appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235E6878' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 10px center; background-size:12px 12px;
  padding-right:30px; cursor:pointer;
}
select:not([multiple]):not([size]):disabled{cursor:not-allowed; opacity:.75;}

/* Profilbilder in den runden Avataren (Update 345) */
.user-avatar-img{width:100%; height:100%; border-radius:50%; object-fit:cover; display:block;}
.user-avatar-small:has(.user-avatar-img), .user-avatar-lg:has(.user-avatar-img), .crm-owner-avatar:has(.user-avatar-img){background:var(--bg-alt); overflow:hidden;}

/* Frachtpreisvergleich: rechte Spalte (Hinweis bzw. "Ergebnis") beginnt
   bündig mit der Oberkante des Eingabe-Panels (Update 346) */
@media (min-width:761px){
  .calc-split-right > div{margin-top:0 !important;}
  .calc-split-right > div > div:first-child > h2:first-child{margin-top:0; line-height:1.2;}
}

/* Passwortmanager (Update 350) */
.vault-layout{display:grid; grid-template-columns:240px minmax(0,1fr); gap:16px; align-items:start;}
.vault-side{padding:12px !important;}
.vault-side-title{font-size:11px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--text-mute); padding:4px 8px 6px;}
.vault-folder-row{display:flex; align-items:center; gap:2px;}
.vault-folder{flex:1; display:flex; align-items:center; gap:6px; width:100%; text-align:left; background:none; border:none; border-radius:8px; padding:7px 8px; font:inherit; font-size:13px; color:var(--text); cursor:pointer; min-width:0;}
.vault-folder:hover{background:var(--bg-alt);}
.vault-folder.active{background:var(--accent-tint); color:var(--accent-dark); font-weight:600;}
.vault-folder-name{flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.vault-folder-count{font-size:11.5px; color:var(--text-mute);}
.vault-folder-more{background:none; border:none; padding:4px; border-radius:6px; cursor:pointer; color:var(--text-mute); display:inline-flex;}
.vault-folder-more:hover{background:var(--bg-alt); color:var(--text);}
.vault-badge{display:inline-flex; color:var(--accent-dark);}
.vault-pw{font-family:ui-monospace,monospace; font-size:12.5px; letter-spacing:.02em;}
.vault-icon-btn{text-decoration:none !important; padding:2px; display:inline-flex; color:var(--text-mute);}
.vault-icon-btn:hover{color:var(--accent-dark);}
.vault-share-list{border:1px solid var(--line); border-radius:10px; padding:4px 12px; margin-bottom:12px;}
.vault-share-row{display:flex; justify-content:space-between; align-items:center; gap:10px; padding:8px 0; border-bottom:1px solid var(--line);}
.vault-share-row:last-child{border-bottom:none;}
.vault-share-add{display:flex; gap:8px; flex-wrap:wrap; align-items:center; margin-bottom:12px;}
.vault-form .field{margin-bottom:12px;}
@media (max-width:760px){ .vault-layout{grid-template-columns:1fr;} }

/* Status-Kacheln (Update 356, neues Design): farbige Fläche, Zahl + Bezeichnung, Anteilsbalken */
.status-tile{--tile-color:#8a8f98; position:relative; display:flex; flex-direction:column; justify-content:space-between; gap:10px;
  min-width:132px; padding:12px 16px 12px; border:0; border-radius:14px; background:var(--tile-color); color:#fff;
  font:inherit; text-align:left; cursor:pointer; box-shadow:0 1px 2px rgba(16,24,40,.08); transition:transform .12s ease, box-shadow .12s ease, filter .12s ease;}
.status-tile:hover{transform:translateY(-1px); box-shadow:0 6px 16px rgba(16,24,40,.18); filter:brightness(1.04);}
.status-tile:focus-visible{outline:3px solid rgba(255,255,255,.85); outline-offset:2px;}
.status-tile.active{box-shadow:0 0 0 3px #fff, 0 0 0 5px var(--tile-color);}
.status-tile-row{display:flex; align-items:baseline; gap:10px; min-width:0;}
.status-tile-number{font-size:30px; font-weight:800; line-height:1; letter-spacing:-.01em;}
.status-tile-label{font-size:13px; font-weight:500; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; opacity:.95;}
.status-tile-bar{display:block; height:4px; border-radius:4px; background:rgba(255,255,255,.28); overflow:hidden;}
.status-tile-bar > span{display:block; height:100%; border-radius:4px; background:rgba(255,255,255,.75);}
@media (max-width:760px){ .status-tile{min-width:0; flex:1 1 30%; padding:10px 12px;} .status-tile-row{flex-direction:column; align-items:flex-start; gap:4px;} .status-tile-number{font-size:24px;} .status-tile-label{white-space:normal; font-size:12px; line-height:1.2;} }
.status-tile-sub{font-size:13px; font-weight:500; opacity:.9; margin-top:-4px;}
.status-tile-lg{padding:16px 20px; border-radius:16px; gap:12px;}
.status-tile-lg .status-tile-number{font-size:46px;}
.status-tile-lg .status-tile-label{font-size:17px; font-weight:600; white-space:normal;}
.status-tile-lg .status-tile-bar{height:6px;}
.status-tile-number{white-space:nowrap;}
.status-tile-lg .status-tile-row{flex-wrap:wrap; row-gap:4px;}

/* Balkenliste (Update 357): ersetzt die SVG-Diagramme mit abgeschnittenen Beschriftungen */
.bar-list{display:flex; flex-direction:column; gap:10px; width:100%;}
.bar-list-row{display:flex; flex-direction:column; gap:4px; min-width:0;}
.bar-list-head{display:flex; justify-content:space-between; align-items:baseline; gap:12px; font-size:13px;}
.bar-list-label{color:var(--text); min-width:0; overflow-wrap:anywhere;}
.bar-list-value{color:var(--text-mute); font-variant-numeric:tabular-nums; white-space:nowrap;}
.bar-list-track{height:8px; border-radius:6px; background:var(--bg-alt, #eef0f3); overflow:hidden;}
.bar-list-fill{height:100%; border-radius:6px;}

/* Startseiten-Kacheln (Update 357): keine festen Höhen mehr — Kacheln wachsen mit
   ihrem Inhalt (mehrere Abholtermine, Projektaufgaben), nichts ragt heraus. */
.home-grid{grid-auto-rows:minmax(118px, auto) !important;}
.home-tile{min-width:0; overflow-wrap:anywhere;}
.home-tile-large, .home-tile-large .home-tile-chart-host{overflow:visible !important;}
.home-tile-large .home-tile-chart-host{align-items:flex-start !important; padding-top:6px;}
@media (max-width:640px){ .home-grid{grid-auto-rows:minmax(104px, auto) !important;} }

/* Produktübersicht (Update 357): Kopfzeile und Zeilen nutzen dasselbe Spaltenraster */
.prod-header, ul.plain li.prod-row{display:grid !important; grid-template-columns:16px 56px minmax(0,1fr) 150px 74px 60px 37px; column-gap:14px !important; align-items:center;}
.prod-header > :not(img), li.prod-row > :not(img){width:auto !important; min-width:0 !important;}
li.prod-row > :nth-child(2){width:56px !important;} li.prod-row > img{height:56px;}
li.prod-row > :nth-child(4), .prod-header > :nth-child(4){text-align:right; white-space:nowrap;}
li.prod-row > :nth-child(5), li.prod-row > :nth-child(6), .prod-header > :nth-child(5), .prod-header > :nth-child(6){text-align:center;}
@media (max-width:760px){
  .prod-header{display:none !important;}
  ul.plain li.prod-row{grid-template-columns:20px 48px minmax(0,1fr) 37px; row-gap:6px; padding-left:0 !important;}
  li.prod-row > :nth-child(2){width:48px !important;} li.prod-row > img{height:48px;}
  li.prod-row > :nth-child(4){grid-column:3; grid-row:2; text-align:left;}
  li.prod-row > :nth-child(5){grid-column:3; grid-row:3; text-align:left; justify-self:start;}
  li.prod-row > :nth-child(6){display:none;}
  li.prod-row > :nth-child(7){grid-column:4; grid-row:1;}
}
.prod-variant .prod-text{padding-left:22px; border-left:2px solid var(--line); }

/* Projekte „Heute & überfällig“ mobil (Update 357): Titel volle Breite, bis zu 2 Zeilen; Status und Datum darunter */
@media (max-width:640px){
  .pm-overview-todo-row{display:grid !important; grid-template-columns:auto 1fr; grid-template-areas:"main main" "status date"; gap:6px 10px; align-items:center;}
  .pm-overview-todo-row .pm-todo-main{grid-area:main;}
  .pm-overview-todo-row .pm-todo-status{grid-area:status; width:auto !important;}
  .pm-overview-todo-row .pm-todo-date{grid-area:date; text-align:right;}
  .pm-overview-todo-row .pm-todo-title{white-space:normal !important; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; font-weight:600;}
}

/* Kennzahlen im Kopfband am Handy (Update 357): zwei Spalten, Werte nie mitten in der Zahl umbrechen */
@media (max-width:640px){
  .app-header-numbers, .app-header-numbers:has(> :nth-child(5)){grid-template-columns:repeat(2, minmax(0, 1fr)) !important;}
  .app-header-number b{white-space:nowrap !important; overflow-wrap:normal !important; font-size:clamp(14px, 4.4vw, 17px) !important; font-variant-numeric:tabular-nums;}
}

/* Speditionsformular (Update 357): Umbruch nach der tatsächlich verfügbaren Inhaltsbreite
   (Container-Abfrage auf den Hauptbereich, berücksichtigt Navigation ein-/ausgeklappt). */
main{container:page / inline-size;}
.calc-split-left{container:calcform / inline-size;}
.calc-split-left .grid.cols-4{grid-template-columns:repeat(2, minmax(0, 1fr)) !important;}
@container calcform (min-width: 880px){ .calc-split-left .grid.cols-4{grid-template-columns:repeat(4, minmax(0, 1fr)) !important;} }
@container calcform (max-width: 340px){ .calc-split-left .grid.cols-4{grid-template-columns:1fr !important;} }
@container page (max-width: 1080px){
  .calc-split{flex-direction:column !important; align-items:stretch !important;}
  .calc-split-left, .calc-split-right{flex:1 1 auto !important; width:100% !important; max-width:100% !important; position:static !important; max-height:none !important; overflow:visible !important;}
  .calc-split-left{max-width:760px !important;}
  /* Ergebnisbereich erst nach der Berechnung: leerer Platzhalter entfällt */
  .calc-split-right > div > .empty{display:none !important;}
  .calc-split-right > div:empty{display:none;}
}
.calc-split-left .grid.cols-4 > .field-wide{grid-column:span 2;}

/* =====================================================================
   UX Teil 2 (Update 358): gemeinsame Gestaltung
   ===================================================================== */

/* --- Seitenkopf: Titel, kurze Beschreibung, Hauptaktion — ohne großes Verlaufsband --- */
body .app-header, body .crm-detail-header{
  background:none !important; color:var(--navy) !important; box-shadow:none !important; border:none !important;
  border-radius:0 !important; padding:2px 0 0 !important; margin:0 0 14px !important; overflow:visible !important;
}
body .app-header h1, body .app-header-auto h1, body .crm-detail-header .crm-detail-company{color:var(--navy) !important; font-size:24px; line-height:1.2; margin:0 0 2px;}
body .app-header .subtitle, body .app-header-auto .subtitle, body .app-header-auto p, body .crm-detail-header .crm-detail-meta,
body .crm-detail-header .crm-detail-meta span, body .crm-detail-header .hint, body .user-header .hint{color:var(--text-mute) !important; max-width:80ch;}
body .app-header .subtitle{display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; font-size:13.5px;}
body .app-header-auto .hint{color:var(--text-mute) !important;}
body .app-header-auto .linklike{color:var(--accent-dark);}
body .crm-detail-header .crm-detail-potential{color:var(--accent-dark) !important;}
body .crm-detail-header .customer-type-badge, body .user-header .tag{background:var(--bg-alt) !important; color:var(--navy) !important; border-color:var(--line) !important;}
body .user-header > div:first-child{background:var(--accent-tint) !important; color:var(--accent-dark) !important;}
/* Buttons im Kopf: normale Nebenaktion bzw. grüne Hauptaktion */
body .app-header .btn.secondary, body .app-header-auto .btn.secondary, body .crm-detail-header .btn.secondary{background:#fff; color:var(--navy); border-color:var(--line-strong); box-shadow:none;}
body .app-header .btn.secondary:hover, body .app-header-auto .btn.secondary:hover, body .crm-detail-header .btn.secondary:hover{background:var(--bg-alt); border-color:var(--text-mute);}
body .app-header-chip{background:var(--bg-alt); border-color:var(--line); color:var(--text);}
body .home-header .home-header-btn, body .home-header .home-header-btn .home-header-btn-icon{color:var(--text-mute);}
body .home-header .home-header-btn:hover, body .home-header .home-header-btn:hover .home-header-btn-icon{color:var(--navy);}
body .dispatch-header .dispatch-carriers > div{color:var(--text);}
/* Reiter im Kopf wie alle anderen Reiter */
body .app-header .tabs{background:var(--bg-alt); border:1px solid var(--line); box-shadow:none;}
body .app-header .tabs button{color:var(--text-mute);}
body .app-header .tabs button:hover{background:#fff; color:var(--navy);}
body .app-header .tabs button.active{background:var(--navy); color:#fff;}

/* --- Kennzahlen: kompakte Zeile statt großer Kacheln --- */
body .app-header-numbers{display:flex !important; flex-wrap:wrap; gap:8px; margin-top:12px; grid-template-columns:none !important;}
body .app-header-number{display:inline-flex; align-items:baseline; gap:6px; flex:0 0 auto; min-width:0; width:auto;
  padding:6px 12px; border-radius:10px; background:#fff; border:1px solid var(--line); color:var(--navy); box-shadow:none; transform:none;}
body .app-header-number b{display:inline; font-size:15px !important; font-weight:700; color:var(--navy) !important; white-space:nowrap !important; overflow:visible; font-variant-numeric:tabular-nums;}
body .app-header-number span{display:inline !important; font-size:12.5px !important; color:var(--text-mute) !important; line-height:1.2;}
body button.app-header-number:hover{background:var(--bg-alt); border-color:var(--text-mute); transform:none;}
body .app-header-number.hervor{background:var(--accent-tint); border-color:rgba(102,156,52,.4);}
body .app-header-number.hervor b{color:var(--accent-dark) !important;}
body .app-header-number.warnung, body .app-header-number.warning{background:#fdecea; border-color:#f3b8b1;}
body .app-header-number.warnung b, body .app-header-number.warning b{color:#b3261e !important;}
/* Nullwerte zurücknehmen; ist alles 0/–, entfällt die Zeile (siehe markZeroNumbers in app.js) */
body .app-header-number.is-zero{opacity:.62;}
body .app-header-numbers.all-zero{display:none !important;}
@media (max-width:640px){
  body .app-header h1{font-size:21px;}
  body .app-header-numbers{gap:6px;}
  body .app-header-number{padding:5px 9px;}
  body .app-header-number b{font-size:14px !important;}
  body .app-header-number span{font-size:11.5px !important;}
}

/* --- Navigation: aktiver Eintrag ohne Leuchteffekt --- */
.sidebar-item.active{background:rgba(102,156,52,.9) !important; box-shadow:none !important;}

/* --- Einheitliche Grundformen --- */
:root{--r-control:10px;}
.btn, .tabs button, main :where(input:not([type=checkbox]):not([type=radio]), select, textarea), .modal-box :where(input:not([type=checkbox]):not([type=radio]), select, textarea){border-radius:var(--r-control);}
.btn{font-weight:600;}
.tabs{gap:4px; padding:4px; border-radius:12px; border:1px solid var(--line); background:var(--bg-alt); display:inline-flex; flex-wrap:wrap; max-width:100%;}
.tabs button{border-radius:8px;}
.tabs button.active{background:var(--navy); color:#fff;}
:focus-visible{outline:3px solid rgba(102,156,52,.55); outline-offset:2px;}
.btn:focus-visible, .tabs button:focus-visible, .sidebar-item:focus-visible{outline:3px solid rgba(102,156,52,.6); outline-offset:2px;}

/* --- Lesbare Breiten: Fließtext und Formulare begrenzen, Tabellen dürfen breit sein --- */
main .panel > p, main .panel > .subtitle, main .panel > .hint, main .help-article p, main .help-article li{max-width:80ch;}
main .form-narrow{max-width:720px;}

/* --- Lange Erklärungen einklappen (siehe collapseLongExplanations in app.js) --- */
.explain-clamp{display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
.explain-toggle{background:none; border:0; padding:0; margin:2px 0 8px; font:inherit; font-size:12.5px; color:var(--accent-dark); cursor:pointer; text-decoration:underline; text-underline-offset:2px;}

/* --- Gemeinsame Werkzeugleiste: Suche, Filter, Hauptaktion, weitere Aktionen --- */
.page-toolbar{display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:0 0 14px;}
.page-toolbar .tb-search{flex:1 1 260px; min-width:0; max-width:460px;}
.page-toolbar .tb-filters{display:flex; gap:8px; flex-wrap:wrap; align-items:center;}
.page-toolbar .tb-spacer{flex:1 1 auto;}
.page-toolbar .tb-actions{display:flex; gap:8px; align-items:center; flex-wrap:wrap;}
@media (max-width:640px){ .page-toolbar .tb-search{flex-basis:100%; max-width:none;} .page-toolbar .tb-spacer{display:none;} }

/* --- Status immer mit Text: Legende für Farbpunkte --- */
.status-legend{display:inline-flex; flex-wrap:wrap; gap:4px 12px; font-size:12px; color:var(--text-mute); align-items:center;}
.status-legend i{display:inline-block; width:8px; height:8px; border-radius:50%; margin-right:4px; vertical-align:middle;}
.sr-only{position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;}
/* Nach dem hellen Seitenkopf (Update 358): weiße Schrift aus dem alten dunklen Band zurücksetzen */
body .pickup-nav h2{color:var(--navy) !important;}
body .hr-tab-title{color:var(--text-mute);}

/* =====================================================================
   UX Teil 3, Paket 1 (Update 360): Start, Eingang, Zeiterfassung, Abholer,
   Kommissionierung, Direktfahrten, Projekte
   ===================================================================== */
/* Leere Zustände: kompakt, mit Erklärung und nächster Aktion */
.panel.empty-state{text-align:center; padding:28px 20px;}
.panel.empty-state h2{font-size:17px; margin:0 0 6px;}
.panel.empty-state p{max-width:62ch; margin:0 auto 6px; color:var(--text-mute); font-size:13.5px;}
.empty-state-actions{display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-top:12px;}
/* Abschnittskopf mit Nebenaktion */
.section-head{display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin:22px 0 10px;}
.section-head h2{margin:0; font-size:17px;}
.section-head-link{display:inline-flex; align-items:center; gap:5px; font-size:12.5px; color:var(--text-mute); text-decoration:none;}
.section-head-link:hover{color:var(--navy);}
/* Start: Als Nächstes */
.home-next{padding:14px 16px !important; margin-bottom:16px;}
.home-next-head{font-size:15px; margin:0 0 8px;}
.home-next-list{display:flex; flex-direction:column; gap:6px;}
.home-next-row{display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:10px; width:100%; text-align:left;
  background:var(--bg-alt); border:1px solid var(--line); border-radius:var(--r-control, 10px); padding:8px 12px; font:inherit; color:var(--text); cursor:pointer;}
.home-next-row:hover{border-color:var(--text-mute); background:#fff;}
.home-next-tag{font-size:11.5px; font-weight:700; padding:3px 8px; border-radius:999px; background:var(--accent-tint); color:var(--accent-dark); white-space:nowrap;}
.home-next-tag.is-late{background:rgba(214,69,69,.12); color:#b42318;}
.home-next-tag.is-muted{background:#fff; color:var(--text-mute); border:1px solid var(--line);}
.home-next-title{font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.home-next-meta{font-size:12px; color:var(--text-mute); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:28ch;}
.home-next-more .home-next-title{font-weight:500; color:var(--text-mute); grid-column:1 / -1;}
@media (max-width:640px){
  .home-next-row{grid-template-columns:auto minmax(0,1fr);}
  .home-next-meta{grid-column:2; max-width:none;}
}
/* Abholer: Tagesplan zuerst; Formular steht immer darunter (Knopf „Neuer Abholtermin“ seit Update 446 entfernt) */
@media (max-width:1100px){
  body .pickup-page{order:1 !important;}
}
/* Gruppierte Formularbereiche (Direktfahrt-Anfrage) */
fieldset.form-group-box{border:1px solid var(--line); border-radius:12px; padding:10px 14px 14px; margin:12px 0 0; min-width:0;}
fieldset.form-group-box legend{font-size:12.5px; font-weight:700; color:var(--navy); padding:0 6px;}
.dt-form{max-width:640px;}
.dt-address-grid{display:grid; grid-template-columns:minmax(0,2fr) minmax(0,.7fr) minmax(0,1fr) minmax(0,1.5fr); gap:10px;}
.dt-load-grid{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:10px;}
@media (max-width:560px){
  .dt-address-grid{grid-template-columns:minmax(0,1fr) minmax(0,.5fr);}
  .dt-address-grid .dt-city{grid-column:1 / -1;}
  .dt-load-grid{grid-template-columns:repeat(2, minmax(0,1fr));}
}
.modal-footer-actions{display:flex; justify-content:flex-end; gap:10px; flex-wrap:wrap; margin-top:16px; padding-top:12px; border-top:1px solid var(--line);}

/* =====================================================================
   UX Teil 3, Paket 2 (Update 361): CRM, Produkte, Angebot, Auswertungen,
   Eigene Berichte, Speditionen
   ===================================================================== */
.count-badge{margin-left:6px; background:#C53030; color:#fff; border-radius:999px; padding:0 7px; font-size:11px; font-weight:700; line-height:18px;}
.page-toolbar .tb-search input{width:100%;}
.page-toolbar select{width:auto; max-width:220px;}
/* Hinweis-Symbole: per Tastatur/Antippen öffnen */
.info-icon:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
.info-icon.open .info-tooltip, .info-icon:focus-visible .info-tooltip{display:block;}
/* Angebot: nummerierte Schritte */
.step-head{display:flex; align-items:center; gap:10px; margin:22px 0 12px;}
.step-head:first-child{margin-top:0;}
.step-num{display:inline-flex; align-items:center; justify-content:center; width:26px; height:26px; border-radius:50%; background:var(--navy); color:#fff; font-size:13px; font-weight:700; flex-shrink:0;}
/* Auswertungen: Geltungsbereich der Kennzahlen, Zusatzangaben in Balkenlisten */
.app-header-scope{align-self:center; font-size:11.5px; font-weight:600; color:var(--text-mute); text-transform:none; margin-left:2px;}
.app-header-scope:not(:first-child){margin-left:10px;}
.bar-list-sub{font-size:11.5px; color:var(--text-mute); font-weight:400;}
/* Eigene Berichte: Vorlagen */
.report-template-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(240px, 1fr)); gap:14px;}
.report-template{display:flex; flex-direction:column; gap:8px; margin:0 !important;}
.report-template h3{margin:0; font-size:15px;}
.report-template .hint{margin:0;}
.report-template-preview{margin:0; padding:8px 10px 8px 26px; background:var(--bg-alt); border-radius:10px; font-size:12.5px; color:var(--text); flex:1;}
.report-template-preview li{margin:2px 0;}
.report-template .btn{align-self:flex-start;}
/* Speditionen: Berechnen bleibt beim Scrollen erreichbar; aktive Speditionen links unter dem Titel */
.calc-split-left .actions-row{position:sticky; bottom:0; z-index:6; background:#fff; margin-left:-24px; margin-right:-24px; padding:12px 24px; border-top:1px solid var(--line); border-radius:0 0 16px 16px;}
@container page (max-width: 1000px){
  .app-header-compact .app-header-row{flex-wrap:wrap;}
  .app-header-compact .app-header-chips{max-width:none; flex-basis:100%; justify-content:flex-start;}
}
.bar-list-sub{display:block; margin:-2px 0 4px;}

/* =====================================================================
   UX Teil 3, Paket 3 (Update 362): Disposition (nur Darstellung), Anlieferungen,
   Wiki, Personal, Nutzer, Passwörter, Einstellungen, Hilfe
   ===================================================================== */
/* Disposition: Werkzeuge gruppiert */
.dispo-tools{display:flex; flex-wrap:wrap; gap:10px 24px; align-items:center; margin:-4px 0 14px; padding:10px 12px; background:#fff; border:1px solid var(--line); border-radius:12px;}
.dispo-group{display:inline-flex; flex-wrap:wrap; gap:8px; align-items:center;}
.dispo-group-label{font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--text-mute); margin-right:2px;}
.dispo-header-groups{display:inline-flex; flex-wrap:wrap; gap:8px 22px; align-items:center;}
.dispo-header-groups .semi-header-actions::before{content:'Aufträge'; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--text-mute);}
@container page (max-width: 820px){
  body .dispatch-kpi .status-tile{min-width:0; flex:1 1 30%; padding:8px 10px !important; gap:6px;}
  body .dispatch-kpi .status-tile .status-tile-number{font-size:20px !important;}
  body .dispatch-kpi .status-tile .status-tile-label{font-size:12px;}
  .dispo-mode{display:flex !important; width:100%;}
  .dispo-mode button{flex:1 1 0; padding:7px 8px !important; font-size:12.5px !important;}
}
/* Anlieferungen: Kartenansicht schon bei mittlerer Breite */
@container page (max-width: 900px){
  .cards-md table.cards-table{display:block; width:100% !important; min-width:0 !important; border:none; background:none;}
  .cards-md table.cards-table > tbody{display:block;}
  .cards-md table.cards-table tr{display:block; background:#fff; border:1px solid var(--line); border-radius:12px; padding:8px 12px; margin:0 0 10px;}
  .cards-md table.cards-table tr.kb-header{display:none;}
  .cards-md table.cards-table th, .cards-md table.cards-table td{display:flex; align-items:center; justify-content:space-between; gap:12px; border:none !important; padding:5px 0 !important; text-align:right; max-width:none !important; white-space:normal !important;}
  .cards-md table.cards-table td[data-label]::before{content:attr(data-label); flex:0 0 auto; max-width:45%; text-align:left; font-size:11px; font-weight:600; letter-spacing:.3px; text-transform:uppercase; color:var(--text-mute);}
  .cards-md table.cards-table td:empty{display:none;}
}
/* Personal: Bereichsauswahl auf schmalen Bildschirmen, Hinweis auf fehlende Angaben */
.hr-tab-select-wrap{display:none;}
@container page (max-width: 640px){
  .hr-tab-group{display:none !important;}
  .hr-tab-select-wrap{display:flex; flex-direction:column; gap:4px; margin:10px 0 0;}
  .hr-tab-select-wrap select{width:100%;}
}
.hr-missing{margin-left:10px; font-size:12px; font-weight:500; text-decoration:none;}
/* Wiki: Zusammenhang kurz erklärt */
.wiki-howto{display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:10px; margin:0 0 6px;}
.wiki-howto > div{background:#fff; border:1px solid var(--line); border-radius:12px; padding:10px 14px; display:flex; flex-direction:column; gap:3px; font-size:13px; color:var(--text-mute);}
.wiki-howto b{color:var(--navy); font-size:13.5px;}
/* Nutzer: kompakteres Verzeichnis, Rolle beim Namen, Zeilen per Tastatur bedienbar */
body .user-row{padding:8px 12px !important;}
body .user-row .user-avatar-lg{width:36px !important; height:36px !important; font-size:13px !important;}
body .user-row:focus-visible{outline:2px solid var(--accent); outline-offset:2px; border-radius:10px;}
.user-row-role{margin-left:8px; vertical-align:middle; font-size:10.5px !important;}
body .user-letter-heading{margin:10px 0 2px !important; padding:0 12px;}
/* Passwörter: Suche mit ausreichend Breite, Ansicht/Ordner mobil einklappbar */
.vault-search{flex:1 1 260px; min-width:0; max-width:480px;}
.vault-side-toggle{display:none;}
.vault-owner-note{margin:-4px 0 12px; font-size:12.5px;}
@container page (max-width: 760px){
  .vault-search{flex-basis:100%; max-width:none;}
  .vault-side-toggle{display:flex; justify-content:space-between; width:100%; padding:10px 14px; background:#fff; border:1px solid var(--line); border-radius:var(--r-control, 10px); font:inherit; font-weight:600; color:var(--navy); cursor:pointer;}
  .vault-side:not(.is-open){display:none;}
}
/* Einstellungen: Kategorieauswahl auf schmalen Bildschirmen */
.settings-cat-select-wrap{display:none;}
@container page (max-width: 760px){
  .settings-layout:not(.help-layout) > .settings-nav{display:none !important;}
  .settings-cat-select-wrap{display:flex; flex-direction:column; gap:4px; width:100%;}
  .settings-cat-select-wrap select{width:100%; font-weight:600;}
}
/* Hilfe: Themen mobil einklappbar, Artikel mit Lesebreite */
.help-topics-toggle{display:none;}
.help-article-body{max-width:75ch;}
.help-article-body p, .help-article-body li{line-height:1.6;}
@container page (max-width: 760px){
  .help-topics-toggle{display:flex; justify-content:space-between; width:100%; padding:10px 14px; background:#fff; border:1px solid var(--line); border-radius:var(--r-control, 10px); font:inherit; font-weight:600; color:var(--navy); cursor:pointer; text-align:left;}
  .help-layout > .settings-nav:not(.is-open){display:none !important;}
}
@container page (max-width: 640px){ body .hr-tab-select-wrap select{width:100% !important; max-width:none !important;} }
/* CRM: Kundenseite über die volle Breite; Markenliste dann in mehr Spalten */
.crm-detail-page{max-width:none;}
/* Ein Speichern-Knopf je Seite */
.page-savebar{position:sticky; bottom:12px; z-index:30; display:flex; justify-content:flex-end; align-items:center; gap:14px; margin:18px 0 0; padding:10px 14px;
  background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:0 6px 20px rgba(16,24,40,.12);}
.page-savebar-status{font-size:13px; color:var(--text-mute);}
.page-savebar.is-dirty{border-color:var(--accent);}
.page-savebar.is-dirty .page-savebar-status{color:var(--accent-dark); font-weight:600;}

/* =====================================================================
   Dokumentenmanagement (Update 363)
   ===================================================================== */
.dms-drop{margin:12px 0 0; padding:16px 18px; border:2px dashed var(--line-strong); border-radius:14px; background:#fff; text-align:center; cursor:pointer; color:var(--text);}
.dms-drop:hover, .dms-drop.is-over, .dms-drop:focus-visible{border-color:var(--accent); background:var(--accent-tint);}
.dms-upload-status{display:flex; flex-direction:column; gap:4px; margin:8px 0 0;}
.dms-upload-row{display:flex; gap:10px; align-items:baseline; font-size:12.5px; padding:6px 10px; border-radius:8px; background:var(--bg-alt);}
.dms-upload-row.is-ok{background:rgba(31,157,85,.08);}
.dms-upload-row.is-err{background:rgba(214,69,69,.1); color:#a32a1c;}
.dms-upload-name{font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:50%;}
.dms-banner{margin:12px 0 0; padding:10px 14px; border-radius:12px; background:#fff7e6; border:1px solid #f0d9a7; font-size:13px;}
.dms-banner-soft{background:var(--bg-alt); border-color:var(--line); color:var(--text-mute);}
.dms-cust-filter input{min-width:220px;}
.dms-row{cursor:pointer;}
.dms-row:hover td{background:var(--bg-alt);}
.dms-row:focus-visible{outline:2px solid var(--accent); outline-offset:-2px;}
.dms-hit{margin-top:4px; font-size:12px; color:var(--text-mute); max-width:70ch;}
.dms-suggest{font-size:12.5px;}
.tag.ok{background:rgba(31,157,85,.1); color:#1a7a43; border-color:rgba(31,157,85,.25);}
.dms-detail{display:grid; grid-template-columns:minmax(0,1.2fr) minmax(300px,1fr); gap:18px; align-items:start;}
.dms-detail-preview{position:sticky; top:0;}
.dms-preview-frame{width:100%; height:72vh; border:1px solid var(--line); border-radius:12px; background:#fff;}
.dms-preview-img{max-width:100%; max-height:72vh; border:1px solid var(--line); border-radius:12px; display:block; margin:0 auto;}
.dms-preview-none{padding:40px 20px; text-align:center; border:1px dashed var(--line-strong); border-radius:12px;}
.dms-detail-form .field{margin-bottom:10px;}
.dms-detail-form textarea, .dms-detail-form input{width:100%;}
.dms-meta{margin:12px 0 0; font-size:12px; line-height:1.6;}
.dms-versions{margin:10px 0 0; font-size:12.5px; display:flex; flex-direction:column; gap:3px;}
.dms-text{margin:12px 0 0;}
.dms-text summary{cursor:pointer; font-size:12.5px; font-weight:600;}
.dms-text pre{white-space:pre-wrap; max-height:260px; overflow:auto; font-size:11.5px; background:var(--bg-alt); padding:10px; border-radius:8px;}
.dms-danger{margin-top:14px; padding-top:10px; border-top:1px solid var(--line); font-size:12.5px;}
.dms-mini-row{display:flex; justify-content:space-between; gap:12px; padding:7px 10px; border-radius:8px; cursor:pointer;}
.dms-mini-row:hover, .dms-mini-row:focus-visible{background:var(--bg-alt);}
@container page (max-width: 900px){ .dms-detail{grid-template-columns:1fr;} .dms-preview-frame{height:50vh;} }
.page-savebar{width:fit-content; max-width:100%; margin-left:auto;}

/* DMS v2: Dashboard, Ablage, Detailansicht */
.dms-kpis{display:flex; flex-wrap:wrap; gap:12px; margin:14px 0 16px; align-items:stretch;}
.dms-kpi{flex:1 1 170px; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-start; gap:2px; padding:14px 16px; background:#fff; border:1px solid var(--line); border-radius:14px; text-align:left; cursor:pointer; font:inherit; color:var(--text); min-height:96px;}
.dms-kpi:hover, .dms-kpi:focus-visible{border-color:var(--accent);}
.dms-kpi b{font-size:26px; line-height:1.1; font-variant-numeric:tabular-nums;}
.dms-kpi span{font-weight:600; font-size:13px;}
.dms-kpi small{color:var(--text-mute); font-size:12px; margin-top:auto;}
.dms-kpi.is-warn{border-color:#f0b35a; background:#fffaf0;}
.dms-dash-grid{display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:16px; align-items:start;}
.dms-dash-grid > .panel{margin:0;}
/* DMS-Dashboard (seit Update 418): gleich breite Spalten, Kopf mit Link, Aktivität unten */
.dms-dash-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
.dms-kpi.is-static{cursor:default;}
.dms-kpi.is-static:hover{border-color:var(--line);}
.dms-dash-head{display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:8px;}
.dms-dash-head h2{margin:0; font-size:16px;}
.dms-dash-more{font-size:12.5px; font-weight:600; white-space:nowrap;}
.dms-dash-empty{color:var(--text-mute); font-size:13px; margin:4px 0;}
.dms-dash-sub{font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--text-mute); margin:14px 0 6px;}
.dms-dash-sub:first-of-type{margin-top:4px;}
.dms-dash-apps{display:flex; flex-direction:column; gap:6px;}
.dms-dash-app{display:grid; grid-template-columns:minmax(110px,1fr) 2fr auto; align-items:center; gap:10px; font-size:13px;}
.dms-dash-app i{display:block; height:8px; background:var(--bg-alt, #f1f3ef); border-radius:4px; overflow:hidden;}
.dms-dash-app i b{display:block; height:100%; background:#669C34; border-radius:4px;}
.dms-dash-app .num{font-variant-numeric:tabular-nums; color:var(--text-mute); min-width:3ch; text-align:right;}
.dms-dash-usage{font-size:13px; margin:0 0 8px;}
.dms-recent-top{display:flex; align-items:center; gap:8px; min-width:0;}
.dms-recent-top > a{overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0;}
.dms-recent-top > .dms-origin{margin-left:auto; flex:none;}
.dms-recent-row > .hint{margin:0; line-height:1.35;}
.dms-status-bg-app{background:#111B2D;} .dms-status-app{background:#e8eaef; color:#111B2D;}

.dms-side-col{display:flex; flex-direction:column; gap:16px;}
.dms-side-col > .panel{margin:0;}
.dms-act-row{display:grid; grid-template-columns:92px minmax(0,1fr); gap:10px; padding:6px 0; border-bottom:1px solid var(--line); font-size:13px;}
.dms-act-row:last-child{border-bottom:0;}
.dms-act-time{color:var(--text-mute); font-size:12px; white-space:nowrap;}
.dms-list-row{display:flex; flex-direction:column; gap:1px; padding:7px 0; border-bottom:1px solid var(--line); font-size:13px;}
.dms-list-row:last-child{border-bottom:0;}
.dms-list-row.is-mine a{font-weight:700;}
.dms-list-row.is-late .hint{color:var(--danger);}
.dms-statusbar{display:flex; height:14px; border-radius:7px; overflow:hidden; background:var(--bg-alt);}
.dms-sb{display:block; height:100%;}
.status-legend i{display:inline-block; width:10px; height:10px; border-radius:3px; margin-right:5px; vertical-align:-1px;}
.dms-status-bg-draft{background:#9aa5b1;} .dms-status-bg-review{background:#e0a030;} .dms-status-bg-approved{background:#2f9e5b;} .dms-status-bg-archived{background:#4f6fb8;}
.dms-status{display:inline-block; padding:2px 9px; border-radius:999px; font-size:10.5px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; white-space:nowrap;}
.dms-status-draft{background:#eef1f4; color:#4a5560;} .dms-status-review{background:#fff2d9; color:#8a5a00;} .dms-status-approved{background:#e3f5ea; color:#1d6b3d;} .dms-status-archived{background:#e6ecf8; color:#2f4a8a;}
.dms-usage{display:flex; flex-direction:column; gap:6px; font-size:13px;}
.dms-toolbar{display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin:14px 0 8px; padding:8px; background:#fff; border:1px solid var(--line); border-radius:12px;}
.dms-toolbar select{width:auto;}
.dms-toolbar-search{flex:1 1 220px; margin-left:auto; max-width:360px;}
.dms-toolbar-search input{width:100%;}
.dms-iconbtn{display:inline-flex; align-items:center; justify-content:center; min-width:32px; height:32px; padding:0 8px; border:1px solid var(--line); border-radius:8px; background:#fff; color:var(--text); cursor:pointer; font-size:15px; line-height:1;}
.dms-iconbtn:hover, .dms-iconbtn.active{border-color:var(--accent); background:var(--accent-tint);}
.dms-iconbtn input{margin:0;}
.dms-filters{display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin:0 0 8px;}
.dms-filters select{width:auto;}
.dms-crumbs{font-size:13px; margin:6px 0 0;}
.dms-drop-slim{padding:10px 14px; font-size:13px;}
.dms-bulk{gap:10px; align-items:center; flex-wrap:wrap; margin:10px 0 0; padding:8px 12px; border-radius:10px; background:var(--accent-tint); font-size:13px;}
.dms-bulk select{width:auto;}
.dms-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(170px, 1fr)); gap:14px; margin-top:12px;}
.dms-card{position:relative; display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); border-radius:12px; overflow:hidden; cursor:pointer;}
.dms-card:hover, .dms-card:focus-visible{border-color:var(--accent); box-shadow:0 2px 10px rgba(0,0,0,.06);}
.dms-thumb{position:relative; height:180px; background:var(--bg-alt); display:flex; align-items:center; justify-content:center; overflow:hidden; border-bottom:1px solid var(--line);}
.dms-thumb img{width:100%; height:100%; object-fit:cover; object-position:top;}
.dms-thumb-folder{color:var(--text-mute);}
.dms-ext{font-weight:800; font-size:20px; color:var(--text-mute); letter-spacing:.05em;}
.dms-card-check{position:absolute; top:8px; left:8px; width:18px; height:18px;}
.dms-card-body{padding:10px 12px; display:flex; flex-direction:column; gap:6px; min-width:0;}
.dms-card-title{font-weight:600; font-size:13px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.dms-card-meta{display:flex; gap:6px; align-items:center; flex-wrap:wrap; font-size:11.5px;}
.dms-folder-edit{font-size:11.5px; align-self:flex-start;}
.dms-detail-grid{display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:16px; align-items:start;}
.dms-viewer{background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; position:sticky; top:0;}
.dms-viewer-bar{display:flex; gap:10px; align-items:center; justify-content:space-between; padding:8px 12px; border-bottom:1px solid var(--line);}
.dms-viewer-title{font-weight:700; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0;}
.dms-viewer-tools{display:inline-flex; gap:4px; align-items:center; flex-shrink:0;}
.dms-pageinfo{font-size:12px; color:var(--text-mute); min-width:42px; text-align:center; font-variant-numeric:tabular-nums;}
.dms-stage{background:#e9ecef; padding:16px; height:78vh; overflow:auto; text-align:center;}
.dms-pagebox{position:relative; display:inline-block; max-width:none; background:#fff; box-shadow:0 2px 12px rgba(0,0,0,.15);}
.dms-pagebox img{display:block; width:100%; height:auto; user-select:none;}
.dms-fbox{position:absolute; border:2px solid; border-radius:3px; background:transparent; padding:0; cursor:pointer;}
.dms-fbox.dms-conf-hi{border-color:rgba(31,157,85,.85); background:rgba(31,157,85,.08);}
.dms-fbox.dms-conf-mid{border-color:rgba(224,140,20,.9); background:rgba(224,140,20,.08);}
.dms-fbox.dms-conf-lo{border-color:rgba(214,69,69,.9); background:rgba(214,69,69,.08);}
.dms-fbox.is-active{box-shadow:0 0 0 3px rgba(40,90,200,.45); background:rgba(40,90,200,.12);}
.dms-fbox-tag{position:absolute; top:-15px; left:-2px; font-size:9.5px; line-height:13px; padding:0 3px; border-radius:3px; background:inherit; color:#fff; display:none;}
.dms-fbox:hover .dms-fbox-tag, .dms-fbox.is-active .dms-fbox-tag{display:block; background:#333;}
.dms-textview{white-space:pre-wrap; text-align:left; font-size:12px; background:#fff; padding:14px; margin:0; border-radius:8px;}
.dms-textview-sm{max-height:260px; overflow:auto; background:var(--bg-alt); font-size:11.5px;}
.dms-side{display:flex; flex-direction:column; gap:12px; min-width:0;}
.dms-side .dms-sec{min-width:0;}
.dms-sec{background:#fff; border:1px solid var(--line); border-radius:14px; padding:4px 14px 12px;}
.dms-sec > summary{cursor:pointer; font-weight:700; padding:8px 0; list-style-position:inside;}
.dms-kv{display:grid; grid-template-columns:72px minmax(0,1fr); gap:8px; padding:6px 0; border-bottom:1px solid var(--line); align-items:center;}
.dms-kv-l{font-size:10.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--text-mute);}
.dms-kv-v{display:flex; gap:6px; align-items:center; min-width:0; font-size:13px; flex-wrap:wrap; overflow-wrap:anywhere;}
.dms-kv-v .dms-iconbtn{min-width:24px; height:24px; font-size:12px; padding:0 5px; margin-left:auto;}
.dms-sub{font-size:10.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--text-mute); margin:12px 0 6px;}
.dms-field{display:grid; grid-template-columns:10px minmax(80px,40%) minmax(0,1fr); gap:8px; align-items:baseline; width:100%; padding:5px 6px; border:0; border-radius:6px; background:transparent; text-align:left; font:inherit; font-size:12.5px; cursor:pointer; color:var(--text);}
.dms-field:hover, .dms-field.is-active{background:var(--accent-tint);}
.dms-field-l{color:var(--text-mute); overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.dms-field-v{font-weight:600; overflow-wrap:anywhere;}
.dms-table-wrap{overflow-x:auto; margin:4px 0 8px; border:1px solid var(--border, #e3e6ea); border-radius:8px;}
.dms-table{width:100%; border-collapse:collapse; font-size:12.5px;}
.dms-table th{background:var(--surface-2, #f5f6f8); text-align:left; font-weight:600; padding:5px 8px; white-space:nowrap; border-bottom:1px solid var(--border, #e3e6ea);}
.dms-table td{padding:5px 8px; border-bottom:1px solid var(--border, #eef0f2); cursor:pointer; vertical-align:top;}
.dms-table tr:last-child td{border-bottom:0;}
.dms-table td.num{text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums;}
.dms-table td:hover{background:var(--surface-2, #f5f6f8);}
.dms-table td.is-active{outline:2px solid #669C34; outline-offset:-2px;}
.dms-dot{width:9px; height:9px; border-radius:50%; display:inline-block;}
.dms-dot.dms-conf-hi{background:#15803d;} .dms-dot.dms-conf-mid{background:#e08c14;} .dms-dot.dms-conf-lo{background:#c53030;}
.dms-ver{display:flex; gap:8px; align-items:center; margin:6px 0 10px;}
.dms-ver select{flex:1; width:auto;}
.dms-badge{font-size:10px; font-weight:800; letter-spacing:.05em; padding:2px 7px; border-radius:6px; background:var(--bg-alt); color:var(--text-mute); white-space:nowrap;}
.dms-wide{display:flex; width:100%; justify-content:center; margin:0 0 8px; box-sizing:border-box;}
.dms-side-links{display:flex; flex-direction:column; align-items:flex-start; gap:6px; margin-top:6px; font-size:12.5px;}
.dms-edit{padding:10px 0;}
.dms-edit input, .dms-edit select, .dms-edit textarea{width:100%;}
.dms-2col{display:grid; grid-template-columns:1fr 1fr; gap:8px;}
.dms-appr{padding:8px 10px; border-radius:10px; background:var(--bg-alt); margin:0 0 8px; font-size:12.5px;}
.dms-appr-approved{background:#e9f7ef;} .dms-appr-rejected{background:#fdecec;}
.dms-appr-act{display:flex; gap:6px; flex-wrap:wrap; margin-top:6px;}
.dms-appr-act input{flex:1 1 140px;}
.dms-appr-new{display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-top:6px;}
.dms-appr-new select, .dms-appr-new input{width:100%;}
.dms-appr-new button{grid-column:1 / -1;}
@container page (max-width: 980px){ .dms-detail-grid, .dms-dash-grid{grid-template-columns:minmax(0,1fr);} .dms-viewer{position:static;} .dms-stage{height:60vh;} }
.dms-upload-status{max-height:220px; overflow:auto;}
@container page (max-width: 700px){ .dms-stage{height:auto; max-height:70vh; padding:10px;} .dms-viewer-title{max-width:30vw;} }
.dms-field{grid-template-columns:10px minmax(80px,38%) minmax(0,1fr) auto;}
.dms-field.is-custom .dms-field-l{font-style:italic;}
.dms-field-learn{font-size:11px; white-space:nowrap;}
.dms-fbox-tag{white-space:nowrap; font-size:10px; padding:0 4px;}
.dms-unknown{display:flex; flex-direction:column; gap:4px; padding-bottom:6px;}
.dms-unknown-row{display:flex; gap:10px; align-items:baseline; font-size:13px; flex-wrap:wrap;}
.dms-defs input, .dms-defs select{width:100%;}
.dms-defs td{vertical-align:middle;}
.dms-defs td:nth-child(1){width:22%;} .dms-defs td:nth-child(2){width:14%;}
.dms-defs td input, .dms-defs td select{width:100% !important; max-width:none !important; min-width:0; box-sizing:border-box;}

/* Kontrast (Update 393) */
.crm-status-badge.lead{color:#8A5108;}
.pickup-empty{color:var(--text-mute);}

/* DMS: Herkunft (App) einer Datei — seit Update 413 */
.dms-origin { display:inline-block; font-size:11px; font-weight:600; line-height:1.5; padding:1px 8px; border-radius:999px; background:#eef4e8; color:#3d5f1e; white-space:nowrap; }
.dms-app-folder .dms-thumb-folder { color:#669C34; }

/* ---- DMS-Ablage überarbeitet (Update 415): Ordner, Aktionsmenü, Pfadleiste, Papierkorb, Mehrfachauswahl ---- */
.dms-newfolder{display:inline-flex; align-items:center; gap:6px; height:36px; padding:0 12px;}
.dms-trashbtn{display:inline-flex; align-items:center; gap:6px; height:36px; padding:0 12px; border:1px solid var(--line); border-radius:8px; background:#fff; color:var(--text); cursor:pointer; font-size:13px; font-weight:600;}
.dms-trashbtn:hover{border-color:var(--accent);}
.dms-trashbtn.active{background:#111B2D; border-color:#111B2D; color:#fff;}
.dms-count:not(:empty){display:inline-block; min-width:20px; padding:0 6px; border-radius:999px; background:var(--bg-alt, #eef0f3); color:var(--text); font-size:11px; line-height:18px; text-align:center;}
.dms-trashbtn.active .dms-count:not(:empty){background:rgba(255,255,255,.18); color:#fff;}
.dms-crumbs{display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:10px 0 2px; font-size:14px;}
.dms-crumbs ol{display:flex; align-items:center; flex-wrap:wrap; list-style:none; margin:0; padding:0; gap:2px;}
.dms-crumbs li{display:inline-flex; align-items:center; gap:6px;}
.dms-crumbs li + li::before{content:'›'; color:var(--text-soft, #6b7280); margin:0 6px 0 4px; font-size:16px;}
.dms-crumbs a{color:var(--text); text-decoration:none; padding:2px 4px; border-radius:6px;}
.dms-crumbs a:hover{background:var(--bg-alt, #eef0f3); text-decoration:underline;}
.dms-crumbs [aria-current]{font-weight:700;}
.dms-back{width:32px; height:32px; border:1px solid var(--line); border-radius:8px; background:#fff; cursor:pointer; font-size:20px; line-height:1; color:var(--text);}
.dms-back:hover{border-color:var(--accent);}
.dms-section-h{margin:18px 0 8px; font-size:12px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--text-soft, #6b7280);}
.dms-fgrid{display:grid; grid-template-columns:repeat(auto-fill, minmax(250px, 1fr)); gap:10px;}
.dms-ftile{position:relative; display:flex; align-items:center; gap:12px; padding:12px 8px 12px 14px; background:#fff; border:1px solid var(--line); border-radius:12px; cursor:pointer; min-width:0;}
.dms-ftile:hover, .dms-ftile:focus-visible{border-color:var(--accent); box-shadow:0 2px 10px rgba(0,0,0,.06); outline:none;}
.dms-ficon{position:relative; flex:0 0 40px; width:40px; height:32px;}
.dms-ficon-tab{position:absolute; top:0; left:0; width:18px; height:9px; border-radius:4px 4px 0 0; background:#3d4b63;}
.dms-ficon-body{position:absolute; top:5px; left:0; right:0; bottom:0; border-radius:4px 4px 6px 6px; background:#55657f; box-shadow:inset 0 3px 0 rgba(255,255,255,.18);}
.dms-ftile.is-app .dms-ficon-tab{background:#4F7C25;}
.dms-ftile.is-app .dms-ficon-body{background:#669C34;}
.dms-ftext{display:flex; flex-direction:column; gap:4px; min-width:0; flex:1;}
.dms-fname{font-weight:700; font-size:14px; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow-wrap:break-word; hyphens:auto;}
.dms-fmeta{display:flex; align-items:center; gap:6px; flex-wrap:wrap; font-size:12px; color:var(--text-soft, #6b7280);}
.dms-fmore{flex:0 0 32px; width:32px; height:32px; display:inline-flex; align-items:center; justify-content:center; border:0; border-radius:8px; background:transparent; color:var(--text); cursor:pointer;}
.dms-fmore:hover, .dms-fmore:focus-visible{background:var(--bg-alt, #eef0f3);}
.dms-menu{position:absolute; z-index:2000; min-width:230px; max-width:320px; max-height:60vh; overflow:auto; padding:6px; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:0 10px 30px rgba(17,27,45,.16);}
.dms-menu-item{display:flex; align-items:center; gap:10px; width:100%; padding:8px 10px; border:0; border-radius:8px; background:none; color:var(--text); font-size:13.5px; text-align:left; cursor:pointer;}
.dms-menu-item:hover, .dms-menu-item:focus-visible{background:var(--bg-alt, #eef0f3); outline:none;}
.dms-menu-item.is-danger{color:#c53030;}
.dms-menu-item[disabled]{opacity:.5; cursor:default;}
.dms-menu-sep{height:1px; margin:4px 6px; background:var(--line);}
.dms-menu-note{padding:6px 10px; font-size:12px; color:var(--text-soft, #6b7280);}
.dms-card-check{opacity:0; transition:opacity .12s;}
.dms-card:hover .dms-card-check, .dms-card:focus-within .dms-card-check, .dms-selecting .dms-card-check, .dms-card.is-selected .dms-card-check{opacity:1;}
.dms-card.is-selected{border-color:#669C34; box-shadow:0 0 0 2px #669C34 inset;}
.dms-row.is-selected td{background:#f1f7ea;}
.dms-bulk{position:sticky; bottom:12px; z-index:30; display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin:14px 0 0; padding:10px 14px; border-radius:12px; background:#111B2D; color:#fff; box-shadow:0 8px 24px rgba(17,27,45,.25); font-size:13px;}
.dms-bulk .btn{height:32px; padding:0 12px; font-size:13px;}
.dms-bulk .btn.secondary{background:rgba(255,255,255,.1); color:#fff; border-color:rgba(255,255,255,.25);}
.dms-bulk .btn.secondary:hover{background:rgba(255,255,255,.2);}
.dms-bulk .btn.is-danger{border-color:#F82249;}
.dms-bulk .linklike, .dms-bulk .hint{color:#dfe5ee;}
.dms-trash-head{display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-top:12px; padding:12px 14px; background:#fff; border:1px solid var(--line); border-radius:12px;}
.dms-trash-head > div{flex:1; min-width:200px;}
.dms-trash-acts{display:flex; gap:12px; flex-wrap:wrap; font-size:12px; margin-top:2px;}
.dms-app-note{display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:12px; padding:10px 14px; background:#eef4e8; border:1px solid #d5e6c4; border-radius:10px; font-size:13px;}
.dms-app-note > span:nth-child(2){flex:1; min-width:220px;}
@media (max-width:640px){ .dms-trashbtn-l{display:none;} .dms-fgrid{grid-template-columns:1fr;} .dms-bulk{bottom:8px;} }

.dms-thumb .dms-card-check{position:absolute; top:8px; left:8px; right:auto; bottom:auto; width:20px; height:20px; margin:0; z-index:2; accent-color:#669C34; cursor:pointer;}
/* Ablage nach Kunden (Update 416) */
.dms-ftile.is-system .dms-ficon-tab{background:#1c2a44;}
.dms-ftile.is-system .dms-ficon-body{background:#111B2D;}
.dms-ftile.is-customer .dms-ficon-tab{background:#2f4a73;}
.dms-ftile.is-customer .dms-ficon-body{background:#3e5f8f;}
.dms-fsearch{max-width:320px; margin:0 0 10px;}
/* DMS Ordnerbaum + Suchordner (seit Update 419) */
.dms-explorer{display:grid; grid-template-columns:260px minmax(0,1fr); gap:18px; align-items:start; margin-top:14px;}
.dms-tree{position:sticky; top:12px; max-height:calc(100vh - 24px); overflow:auto; background:#fff; border:1px solid var(--line); border-radius:14px; padding:8px 6px 10px; font-size:13px;}
.dms-tgroup{font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--text-mute); padding:12px 10px 4px;}
.dms-trow{display:flex; align-items:center; gap:6px; min-height:32px; padding:3px 6px 3px calc(4px + var(--lvl, 0) * 16px); border-radius:8px; cursor:pointer; color:var(--text); position:relative;}
.dms-trow:hover{background:var(--bg-alt, #f1f3ef);}
.dms-trow:focus-visible{outline:2px solid #669C34; outline-offset:-2px;}
.dms-trow.is-active{background:#111B2D; color:#fff;}
.dms-trow.is-active .dms-tcount, .dms-trow.is-active .dms-tmore{color:#c9d0db;}
.dms-trow.is-active .dms-origin{background:#2a3550; color:#fff;}
.dms-trow.is-drop{background:#e8f3dd; box-shadow:inset 0 0 0 2px #669C34;}
.dms-trow.has-tasks .dms-tcount{background:#F82249; color:#fff; border-radius:9px; padding:0 6px;}
.dms-tw, .dms-tw-sp{flex:none; width:18px; height:18px; display:inline-flex; align-items:center; justify-content:center;}
.dms-tw{border:0; background:none; padding:0; color:inherit; cursor:pointer; border-radius:4px; transform:rotate(-90deg); transition:transform .12s;}
.dms-tw.is-open{transform:none;}
.dms-ticon{flex:none; display:inline-flex; opacity:.85;}
.dms-tname{flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.dms-tcount{flex:none; font-size:12px; color:var(--text-mute); font-variant-numeric:tabular-nums;}
.dms-tmore{flex:none; border:0; background:none; padding:2px; border-radius:6px; color:var(--text-mute); cursor:pointer; opacity:0;}
.dms-trow:hover .dms-tmore, .dms-trow:focus-within .dms-tmore, .dms-trow.is-active .dms-tmore{opacity:1;}
.dms-trow .dms-origin{flex:none; font-size:10.5px;}
.dms-origin.is-hr{background:#fde8ec; color:#a3122f;}
.dms-tadd{display:block; border:0; background:none; color:#4d7a25; font:inherit; font-weight:600; font-size:12.5px; padding:4px 10px 4px 34px; cursor:pointer;}
.dms-tadd:hover{text-decoration:underline;}
.dms-tfilter{width:calc(100% - 20px); margin:4px 10px 4px; padding:5px 8px; font-size:12.5px;}
.dms-tempty{font-size:12px; color:var(--text-mute); padding:2px 10px 4px 34px;}
.dms-tsep{border-top:1px solid var(--line); margin:10px 6px 6px;}
.dms-tree-toggle, .dms-tree-togglebar, .dms-filter-toggle{display:none;}
.dms-main{min-width:0;}
.dms-main-top{display:flex; align-items:center; gap:10px;}
.dms-main-head{flex:1; display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; min-height:40px;}
.dms-main-title{display:flex; align-items:center; gap:8px; min-width:0;}
.dms-main-title h2{margin:0; font-size:20px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.dms-main-acts{display:flex; gap:8px; align-items:center; flex-wrap:wrap;}
.dms-main-hint{margin:2px 0 10px; max-width:80ch;}
.dms-filterbar{display:flex; flex-wrap:wrap; gap:8px; align-items:center; padding:10px; margin:8px 0 10px; background:#fff; border:1px solid var(--line); border-radius:12px;}
.dms-filterbar .dms-toolbar-search{flex:1 1 240px; min-width:200px;}
.dms-filterbar .dms-toolbar-search input{width:100%;}
.dms-filterbar select{max-width:190px;}
.dms-filterbar .dms-cust-filter{flex:0 1 220px; min-width:170px;}
.dms-filterbar .dms-cust-filter input{min-width:0; width:100%; box-sizing:border-box;}
.dms-filterbar .dms-cust-filter > *{max-width:100%;}
.dms-listtools{display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:10px 0 8px;}
.dms-listtools .btn-sm{display:inline-flex; align-items:center; gap:6px;}
.dms-fgrid-sm{grid-template-columns:repeat(auto-fill, minmax(190px, 1fr)); margin-bottom:6px;}
.dms-ftile.is-drop{box-shadow:inset 0 0 0 2px #669C34; background:#f3f9ec;}
.dms-row-title{font-weight:600;}
.dms-empty{display:flex; flex-direction:column; gap:4px; padding:28px 16px; text-align:center; background:#fff; border:1px dashed var(--line); border-radius:12px;}
.dms-dragging .dms-tree{box-shadow:0 0 0 2px #e8f3dd;}
.dms-explorer .dms-table th{white-space:nowrap;}
.dms-explorer .dms-table td .hint{margin:0;}
.dms-explorer .dms-table td{vertical-align:top;}
.dms-explorer .dms-col-cust{min-width:120px;}
.dms-tree > [role=tree] > .dms-tsep:first-of-type{margin-top:8px;}
@container page (max-width: 900px){
  .dms-explorer{grid-template-columns:minmax(0,1fr);}
  .dms-tree{display:none; position:static; max-height:none;}
  .dms-tree-shown .dms-tree{display:block;}
  .dms-tree-togglebar{display:block;}
  .dms-tree-toggle, .dms-filter-toggle{display:inline-flex; align-items:center; gap:6px;}
  .dms-filterbar:not(.is-open) > :not(.dms-toolbar-search):not(.dms-filter-toggle){display:none;}
  .dms-filterbar .dms-toolbar-search{flex:1 1 0; min-width:0;}
  .dms-filterbar select, .dms-filterbar .dms-cust-filter{flex:1 1 140px; max-width:none;}
}
/* Greenie — KI-Assistent (seit Update 422) */
.greenie-topbtn{display:inline-flex; align-items:center; gap:6px; padding:3px 12px 3px 4px; margin-right:8px; border:1px solid var(--line); border-radius:999px; background:#fff; color:#111B2D; font:inherit; font-weight:600; font-size:13px; cursor:pointer;}
.greenie-topbtn img{width:26px; height:26px; border-radius:50%; background:#eef5e6;}
.greenie-topbtn:hover, .greenie-topbtn.is-open{border-color:#669C34; background:#f3f9ec;}
.greenie-panel{position:fixed; top:0; right:0; bottom:0; width:400px; max-width:100vw; z-index:1200; display:flex; flex-direction:column; background:#fff; border-left:1px solid var(--line); box-shadow:-12px 0 32px rgba(17,27,45,.12); font-size:14px;}
@media (min-width:1280px){ body.greenie-open{padding-right:400px;} }
.greenie-head{display:flex; align-items:center; gap:10px; padding:10px 12px; border-bottom:1px solid var(--line); background:#111B2D; color:#fff;}
.greenie-head-av{width:38px; height:38px; border-radius:50%; background:#eef5e6;}
.greenie-head-t{flex:1; display:flex; flex-direction:column; line-height:1.2;}
.greenie-head-t span{font-size:12px; color:#c9d0db;}
.greenie-iconbtn{border:0; background:transparent; color:#fff; width:32px; height:32px; border-radius:8px; font-size:20px; cursor:pointer; display:inline-flex; align-items:center; justify-content:center;}
.greenie-iconbtn:hover{background:rgba(255,255,255,.12);}
.greenie-iconbtn:disabled{opacity:.4; cursor:default;}
.greenie-log{flex:1; overflow-y:auto; padding:14px 14px 6px; display:flex; flex-direction:column; gap:10px; background:#f6f8f5;}
.greenie-msg{max-width:88%; padding:9px 12px; border-radius:14px; line-height:1.5; word-wrap:break-word; overflow-wrap:anywhere;}
.greenie-msg.is-user{align-self:flex-end; background:#111B2D; color:#fff; border-bottom-right-radius:4px; white-space:pre-wrap;}
.greenie-msg.is-bot{align-self:flex-start; background:#fff; border:1px solid var(--line); border-bottom-left-radius:4px;}
.greenie-msg.is-bot p{margin:0 0 6px;} .greenie-msg.is-bot p:last-child{margin-bottom:0;}
.greenie-msg.is-bot ul, .greenie-msg.is-bot ol{margin:4px 0 6px; padding-left:20px;}
.greenie-msg.is-bot code{background:#eef1f4; padding:0 4px; border-radius:4px; font-size:12.5px;}
.greenie-msg.is-bot a{color:#4d7a25; font-weight:600;}
.greenie-step{align-self:flex-start; display:flex; align-items:center; gap:7px; font-size:12px; color:var(--text-mute); padding:0 4px;}
.greenie-dot{width:7px; height:7px; border-radius:50%; background:#669C34; flex:none;}
.greenie-step.is-live .greenie-dot{animation:greeniePulse 1s ease-in-out infinite;}
.greenie-step.is-err .greenie-dot{background:#F82249;} .greenie-step.is-denied .greenie-dot{background:#9aa5b1;}
@keyframes greeniePulse{0%,100%{opacity:.3;}50%{opacity:1;}}
@media (prefers-reduced-motion: reduce){ .greenie-step.is-live .greenie-dot{animation:none;} }
.greenie-hello{display:flex; flex-direction:column; align-items:center; text-align:center; gap:6px; padding:18px 8px;}
.greenie-hello img{width:110px; height:110px;}
.greenie-hello p{margin:0; color:var(--text-mute); max-width:32ch; line-height:1.5;}
.greenie-ex{display:flex; flex-direction:column; gap:6px; width:100%; margin-top:10px;}
.greenie-ex button{border:1px solid var(--line); background:#fff; border-radius:10px; padding:8px 10px; text-align:left; font:inherit; font-size:13px; color:#111B2D; cursor:pointer;}
.greenie-ex button:hover{border-color:#669C34;}
.greenie-confirm{align-self:stretch; background:#fff; border:2px solid #669C34; border-radius:12px; padding:12px; display:flex; flex-direction:column; gap:6px;}
.greenie-confirm-a{font-family:monospace; font-size:13px; font-weight:600;}
.greenie-confirm pre{margin:0; max-height:180px; overflow:auto; background:#f4f6f8; border-radius:8px; padding:8px; font-size:12px; white-space:pre-wrap;}
.greenie-confirm-b{display:flex; gap:8px; justify-content:flex-end; margin-top:4px;}
.greenie-error{align-self:stretch; background:#fde8ec; color:#a3122f; border-radius:10px; padding:8px 10px; font-size:13px;}
.greenie-input{display:flex; gap:8px; align-items:flex-end; padding:10px 12px 4px; border-top:1px solid var(--line);}
.greenie-input textarea{flex:1; resize:none; min-height:40px; max-height:160px; padding:9px 11px; border-radius:12px; font:inherit; line-height:1.4;}
.greenie-send{flex:none;}
.greenie-foot{font-size:11px; color:var(--text-mute); text-align:center; padding:2px 12px 8px;}
@media (max-width:640px){ .greenie-panel{width:100vw;} .greenie-topbtn span{display:none;} .greenie-topbtn{padding:3px; margin-right:4px;} }
/* Suche: Ergebnisseite (seit Update 427, Aufbau neu in Update 430) */
.sr-page{max-width:none;}
.sr-bar{display:flex; align-items:center; gap:8px; background:#fff; border:1px solid var(--line); border-radius:14px; padding:6px 6px 6px 14px; max-width:760px;}
.sr-bar:focus-within{border-color:#669C34; box-shadow:0 0 0 3px rgba(102,156,52,.15);}
.sr-bar-icon{display:inline-flex; color:var(--text-mute);}
.sr-input{flex:1; border:0 !important; box-shadow:none !important; font-size:16px; padding:8px 4px; min-width:0; background:transparent;}
.sr-layout{display:grid; grid-template-columns:230px minmax(0,1fr); gap:24px; align-items:start; margin-top:18px;}
.sr-rail{position:sticky; top:12px; display:flex; flex-direction:column; gap:2px; background:#fff; border:1px solid var(--line); border-radius:14px; padding:8px;}
.sr-rail-i{display:flex; align-items:center; gap:8px; width:100%; border:0; background:none; padding:8px 10px; border-radius:9px; font:inherit; font-size:13.5px; color:#111B2D; cursor:pointer; text-align:left;}
.sr-rail-i:hover{background:var(--bg-alt, #f1f3ef);}
.sr-rail-i.is-on{background:#111B2D; color:#fff;}
.sr-rail-ic{display:inline-flex; width:16px; flex:none; color:#669C34;} .sr-rail-i.is-on .sr-rail-ic{color:#9fd16b;}
.sr-rail-l{flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:600;}
.sr-rail-n{font-size:12px; font-variant-numeric:tabular-nums; color:var(--text-mute);} .sr-rail-i.is-on .sr-rail-n{color:#c9d0db;}
.sr-greenie{display:flex; align-items:center; justify-content:center; gap:8px; margin-top:8px;}
.sr-main{min-width:0; display:flex; flex-direction:column; gap:22px;}
.sr-summary{font-size:14px; color:var(--text-mute);} .sr-summary b{color:#111B2D;}
.sr-best{display:flex; gap:24px; align-items:stretch; flex-wrap:wrap; background:#fff; border:2px solid #669C34; border-radius:16px; padding:18px 22px;}
.sr-best-main{flex:1 1 320px; display:flex; flex-direction:column; gap:4px; min-width:0;}
.sr-best-l{font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:#4d7a25;}
.sr-best-t{font-size:22px; font-weight:700; display:flex; align-items:center; gap:10px; flex-wrap:wrap; overflow-wrap:anywhere;}
.sr-best-m{color:var(--text-mute); font-size:13.5px;}
.sr-best-a{display:flex; gap:8px; flex-wrap:wrap; margin-top:10px;}
.sr-best-facts{display:flex; gap:10px; flex-wrap:wrap; align-items:stretch;}
.sr-fact{display:flex; flex-direction:column; justify-content:center; min-width:130px; padding:10px 14px; border-radius:12px; background:#f3f9ec;}
.sr-fact b{font-size:22px; line-height:1.1; font-variant-numeric:tabular-nums;} .sr-fact span{font-size:12.5px; color:var(--text-mute);}
.sr-sec-head{display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:10px;}
.sr-sec-h{display:flex; align-items:center; gap:8px; font-size:16px; margin:0;}
.sr-sec-i{display:inline-flex; color:#669C34;}
.sr-sec-n{font-size:12px; font-weight:600; color:var(--text-mute); background:#fff; border:1px solid var(--line); border-radius:999px; padding:1px 8px;}
.sr-sec-links{display:flex; gap:16px; flex-wrap:wrap; margin-left:auto; font-size:13px;}
.sr-tiles{display:grid; grid-template-columns:repeat(auto-fill, minmax(300px, 1fr)); gap:10px;}
.sr-tile{display:flex; flex-direction:column; gap:4px; min-width:0; text-align:left; background:#fff; border:1px solid var(--line); border-radius:12px; padding:11px 14px; font:inherit; color:inherit; cursor:pointer;}
.sr-tile:hover, .sr-tile:focus-visible{border-color:#669C34; box-shadow:0 2px 10px rgba(17,27,45,.06);}
.sr-tile-t{display:flex; align-items:center; gap:8px; min-width:0; font-weight:600;}
.sr-tile-tt{flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.sr-tile .sr-badge{flex:none;}
.sr-tile-m{font-size:12.5px; color:var(--text-mute); overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow-wrap:anywhere;}
.sr-badge{font-size:11px; font-weight:700; padding:1px 8px; border-radius:999px; background:#eef1f4; color:#4a5560; white-space:nowrap;}
mark.sr-mark{background:#e3f0d3; color:inherit; border-radius:3px; padding:0 1px;}
.sr-types{display:flex; gap:6px; flex-wrap:wrap; align-items:center; margin:0 0 10px;}
.sr-type{border:1px solid var(--line); background:#fff; border-radius:999px; padding:3px 10px; font:inherit; font-size:12.5px; color:#111B2D; cursor:pointer;}
.sr-type span{margin-left:5px; color:var(--text-mute); font-variant-numeric:tabular-nums;}
.sr-type:hover{border-color:#669C34;}
.sr-empty{background:#fff; border:1px dashed var(--line); border-radius:12px; padding:24px; max-width:640px;}
.global-search-all{display:flex; justify-content:space-between; align-items:center; border-top:1px solid var(--line);}
.gs-kbd{font-size:11px; border:1px solid var(--line); border-radius:5px; padding:0 5px; color:var(--text-mute); background:#fff;}
@container page (max-width: 900px){
  .sr-layout{grid-template-columns:minmax(0,1fr); gap:14px;}
  .sr-rail{position:static; flex-direction:row; overflow-x:auto; padding:6px; gap:6px;}
  .sr-rail-i{width:auto; flex:none; padding:6px 10px; border:1px solid var(--line);}
  .sr-rail-ic{display:none;}
  .sr-greenie{margin:0; flex:none;}
  .sr-tiles{grid-template-columns:minmax(0,1fr);}
}
.sr-best-facts .sr-fact{flex:1 1 140px;}
.sr-note{grid-column:1 / -1; font-size:13px; color:var(--text-mute); background:#fff; border:1px dashed var(--line); border-radius:10px; padding:8px 12px;}
/* DMS Einzelansicht (seit Update 432): alle Seiten untereinander, markierbare Textebene, Kopieren, Zugehörige, ZIP */
.dms-stage .dms-pagebox{display:block; margin:0 auto 16px;}
.dms-stage .dms-pagebox:last-child{margin-bottom:0;}
.dms-textlayer{position:absolute; inset:0; z-index:1; line-height:1; user-select:text; -webkit-user-select:text;}
.dms-tl-line{display:block;}
.dms-textlayer span{position:absolute; color:transparent; white-space:pre; font-family:Arial, sans-serif; font-size:calc(var(--pbh, 1000px) * var(--h, 0.012) * 0.9); line-height:1.1; transform-origin:0 0; cursor:text;}
.dms-textlayer span::selection{background:rgba(102,156,52,.35); color:transparent;}
.dms-pagebox .dms-fbox{z-index:2;}
.dms-copybtn{position:absolute; z-index:1500; border:0; background:#111B2D; color:#fff; font:inherit; font-size:13px; font-weight:600; padding:6px 12px; border-radius:8px; box-shadow:0 4px 14px rgba(17,27,45,.25); cursor:pointer;}
.dms-copybtn:hover{background:#669C34;}
.dms-rel{display:flex; flex-direction:column; gap:6px;}
.dms-rel-keys{display:flex; flex-wrap:wrap; gap:4px; align-items:center; margin-bottom:2px; font-size:12px;}
.dms-rel-key{font-family:monospace; font-size:11.5px; background:#f3f9ec; color:#3f6a1c; border-radius:6px; padding:1px 6px;}
.dms-rel-row{display:flex; align-items:center; gap:10px; text-align:left; width:100%; background:#fff; border:1px solid var(--line); border-radius:10px; padding:6px 8px; font:inherit; color:inherit; cursor:pointer;}
.dms-rel-row:hover{border-color:#669C34;}
.dms-rel-row img, .dms-rel-noimg{width:38px; height:48px; object-fit:cover; object-position:top; border-radius:4px; border:1px solid var(--line); flex:none; background:#f4f6f8;}
.dms-rel-noimg{display:flex; align-items:center; justify-content:center; font-size:10px; font-weight:700; color:var(--text-mute);}
.dms-rel-txt{flex:1; min-width:0; display:flex; flex-direction:column; gap:1px; font-size:12.5px;}
.dms-rel-txt b{font-size:13px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.dms-rel-via{display:flex; gap:4px; flex-wrap:wrap;}
.dms-zip-list{list-style:none; margin:0; padding:0; max-height:220px; overflow:auto; border:1px solid var(--line); border-radius:8px; font-size:12.5px;}
.dms-zip-list li{display:flex; justify-content:space-between; gap:8px; padding:4px 8px; border-top:1px solid var(--line);}
.dms-zip-list li:first-child{border-top:0;}
.dms-zip-list li span:first-child{overflow-wrap:anywhere;}

/* Dispo-Prioscore (Update 436) */
.prio-badge{display:inline-flex; flex-direction:column; gap:3px; min-width:44px;}
.prio-badge b{font-size:12.5px; font-variant-numeric:tabular-nums;}
.prio-bar{display:block; height:4px; border-radius:2px; background:var(--line, #e5e7eb); overflow:hidden; width:44px;}
.prio-bar > span{display:block; height:100%; border-radius:2px;}
.prio-strip{background:#111B2D; color:#fff; border-radius:14px; padding:12px 14px; margin:0 0 12px;}
.prio-strip-title{font-size:12px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:rgba(255,255,255,.75); margin-bottom:8px;}
.prio-strip-title .hint{color:rgba(255,255,255,.5) !important; text-transform:none; letter-spacing:0; font-weight:400;}
.prio-strip-row{display:grid; grid-template-columns:repeat(auto-fill, minmax(190px, 1fr)); gap:8px;}
.prio-card{display:flex; align-items:center; gap:10px; text-align:left; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); border-radius:10px; padding:8px 10px; color:#fff; font:inherit; cursor:pointer; min-width:0;}
.prio-card:hover{background:rgba(255,255,255,.14);}
.prio-card-rank{flex:none; width:22px; height:22px; border-radius:50%; background:#669C34; color:#fff; font-size:12px; font-weight:700; display:flex; align-items:center; justify-content:center;}
.prio-card-main{display:flex; flex-direction:column; min-width:0; flex:1;}
.prio-card-main b{font-size:13px;}
.prio-card-name, .prio-card-meta{font-size:11.5px; color:rgba(255,255,255,.72); overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.prio-card-score{flex:none; font-size:16px; font-weight:700; font-variant-numeric:tabular-nums; filter:brightness(1.35);}
.lh-prio{flex:none; color:#fff; font-weight:800; font-size:13px; border-radius:6px; padding:2px 7px; font-variant-numeric:tabular-nums;}

/* CRM-Kundenworkflow, Onboarding, Kundenseite mit Kopfband (Update 437) */
.crm-status-badge.inactive{background:#eef1f5; color:#5b6474;}
.crm-grade{display:inline-flex; align-items:baseline; gap:4px; font-weight:700; font-size:12px; padding:2px 8px; border-radius:999px; background:#eef1f5; color:#111B2D;}
.crm-grade small{font-weight:500; font-size:10.5px; opacity:.75;}
.crm-grade-A{background:#669C34; color:#fff;}
.crm-grade-B{background:#d9ead0; color:#2f5214;}
.crm-grade-C{background:#f3ead2; color:#7a5a0b;}
.crm-grade-D{background:#eef1f5; color:#5b6474;}
.crm-row-limited td{color:var(--text-mute);}
.crm-row-limited td b{font-weight:500;}
.crm-head .crm-back{color:var(--accent-dark, #4a7a1e); text-decoration:none; font-size:12.5px; margin-bottom:8px; display:inline-block;}
.crm-head h1{overflow-wrap:anywhere;}
.crm-head-legal{font-weight:400; opacity:.7; font-size:.7em;}
.crm-head-chips{display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin-top:6px;}
.crm-head-chips .crm-status-badge{border:1px solid var(--line, #e5e7eb);}
.crm-chip-warn{background:#fdecef !important; border-color:#f6b8c4 !important; color:#9b1230 !important;}
.crm-head-tabs{margin-top:16px !important; display:inline-flex; flex-wrap:wrap;}
.crm-tab-select{display:none; margin-top:12px; width:100%;}
@media (max-width: 760px){ .crm-head-tabs{display:none !important;} .crm-tab-select{display:block;} }
.crm-tab-content > .panel{margin-top:16px !important;}
.crm-ov-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(300px, 100%), 1fr)); gap:16px; margin-top:16px;}
.crm-ov-card{margin:0 !important;}
.crm-ov-card h3{margin:0 0 8px; display:flex; align-items:center; gap:8px;}
.crm-months{display:flex; gap:8px; align-items:flex-end;}
.crm-month{display:flex; flex-direction:column; align-items:center; gap:3px; flex:1; min-width:0;}
.crm-month-bar{width:100%; max-width:34px; height:64px; background:#eef1f5; border-radius:6px; display:flex; align-items:flex-end; overflow:hidden;}
.crm-month-bar > span{display:block; width:100%; background:#8a94a6; border-radius:6px;}
.crm-month.ok .crm-month-bar > span{background:#669C34;}
.crm-month.current .crm-month-bar{outline:2px dashed #c9d2de; outline-offset:1px;}
.crm-month-l{font-size:11px; color:var(--text-mute);}
.crm-month-v{font-size:11px; font-weight:600;}
.crm-score-rows{display:flex; flex-direction:column; gap:6px;}
.crm-score-row{display:grid; grid-template-columns:130px 1fr 36px; gap:8px; align-items:center; font-size:12.5px;}
.crm-score-row b{text-align:right; font-variant-numeric:tabular-nums;}
.crm-score-bar{height:6px; border-radius:3px; background:#eef1f5; overflow:hidden;}
.crm-score-bar > span{display:block; height:100%; background:#669C34; border-radius:3px;}
.crm-onb-kv{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(220px, 100%), 1fr)); gap:10px 18px;}
.crm-onb-kv > div{display:flex; flex-direction:column; gap:1px; min-width:0;}
.crm-onb-kv b{font-weight:600; overflow-wrap:anywhere;}
.crm-limited{display:flex; gap:14px; align-items:flex-start; margin-top:16px;}
.crm-rev-chart{position:relative; display:flex; gap:6px; align-items:flex-end; height:170px; padding:18px 0 22px; border-bottom:1px solid var(--line);}
.crm-rev-col{flex:1; min-width:0; height:100%; display:flex; flex-direction:column; justify-content:flex-end; align-items:center; position:relative;}
.crm-rev-bar{display:block; width:70%; max-width:38px; background:#8a94a6; border-radius:6px 6px 0 0; min-height:2px;}
.crm-rev-col.ok .crm-rev-bar{background:#669C34;}
.crm-rev-col.est .crm-rev-bar{background:repeating-linear-gradient(135deg, #b6c2d2, #b6c2d2 4px, #dde3eb 4px, #dde3eb 8px);}
.crm-rev-col.est.ok .crm-rev-bar{background:repeating-linear-gradient(135deg, #669C34, #669C34 4px, #a9cc87 4px, #a9cc87 8px);}
.crm-rev-v{font-size:10.5px; font-weight:600; margin-bottom:2px;}
.crm-rev-l{position:absolute; bottom:-20px; font-size:10.5px; color:var(--text-mute); white-space:nowrap;}
.crm-rev-thr{position:absolute; left:0; right:0; border-top:2px dashed #F82249; opacity:.55; pointer-events:none; margin-bottom:22px;}
.crm-combo-list{display:flex; flex-direction:column; gap:6px;}
.crm-combo-row{display:grid; grid-template-columns:1fr 1fr 1fr auto; gap:6px; align-items:center;}
@media (max-width: 640px){ .crm-combo-row{grid-template-columns:1fr; } }
.crm-notify-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(200px, 1fr)); gap:2px 12px;}
.crm-onb .app-header{margin-bottom:16px;}
.crm-onb-steps{display:flex; flex-wrap:wrap; gap:6px; margin-top:16px;}
.crm-onb-step{display:inline-flex; align-items:center; gap:8px; background:var(--surface, #fff); border:1px solid var(--line, #e5e7eb); color:var(--text-mute, #6b7280); border-radius:999px; padding:6px 12px 6px 6px; font:inherit; font-size:12.5px; cursor:default; opacity:1;}
.crm-onb-step.done{cursor:pointer; color:var(--text, #111B2D);}
.crm-onb-step.active{background:#111B2D; color:#fff; border-color:#111B2D; font-weight:600;}
.crm-onb-step-nr{width:22px; height:22px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:11.5px; font-weight:700; background:var(--surface-2, #eef1f5);}
.crm-onb-step.done .crm-onb-step-nr{background:#669C34; color:#fff;}
.crm-onb-step.active .crm-onb-step-nr{background:#669C34; color:#fff;}
.crm-onb-step:disabled{opacity:.75;}
.crm-onb-body h2{margin-top:0;}
.crm-req{color:#F82249;}
.crm-onb-drop{border:2px dashed var(--line, #d6dce4); border-radius:14px; padding:28px 16px; display:flex; flex-direction:column; align-items:center; gap:6px; text-align:center; cursor:pointer; background:var(--surface-2, #f6f7f5);}
.crm-onb-drop.over{border-color:#669C34; background:#eef6e6;}
.crm-onb-found{margin-top:14px; padding:12px 14px; border-radius:12px; background:#eef6e6; border:1px solid #cfe3bd;}
.crm-onb-red{margin-top:14px; padding:12px 14px; border-radius:12px; background:#fdecef; border:1px solid #f6b8c4; color:#7d1027;}
.crm-onb-red.soft{background:#fff4e5; border-color:#f3cf98; color:#7a4a05;}
.crm-onb-note{margin-top:10px; padding:10px 12px; border-radius:10px; background:var(--surface-2, #f6f7f5); border:1px solid var(--line, #e5e7eb); font-size:13px;}
.crm-onb-note.warn{background:#fff4e5; border-color:#f3cf98;}
.crm-onb-nav{display:flex; gap:12px; align-items:center; justify-content:space-between; margin-top:20px; padding-top:14px; border-top:1px solid var(--line, #e5e7eb); flex-wrap:wrap;}
.crm-onb-missing{flex:1; text-align:right; min-width:0;}

.crm-status-badge{white-space:nowrap;}

/* DMS: Dubletten, Benennung, Autoablage (Update 438) */
.dms-upnotes{flex-basis:100%; display:flex; flex-direction:column; gap:4px; margin-top:4px;}
.dms-upnote{font-size:12.5px; padding:6px 10px; border-radius:8px; background:var(--surface-2, #f6f7f5); border:1px solid var(--line, #e5e7eb);}
.dms-upnote.red{background:#fdecef; border-color:#f6b8c4; color:#7d1027;}
.dms-upnote.amber{background:#fff4e5; border-color:#f3cf98; color:#7a4a05;}
.dms-upload-row{flex-wrap:wrap;}
.dms-dupbox{margin:8px 0; padding:8px 10px; border-radius:10px; background:#fff4e5; border:1px solid #f3cf98; color:#7a4a05; font-size:12.5px; display:flex; flex-direction:column; gap:3px;}
.dms-factbox{margin:8px 0;}
.dms-factgrid{display:grid; grid-template-columns:1fr 1fr; gap:6px 8px;}
.dms-factgrid label{display:flex; flex-direction:column; font-size:11px; color:var(--text-mute); gap:2px;}
.dms-factgrid input{font-size:12.5px; padding:4px 6px;}

/* Lieferanten, Unterschriften-Tool, Vertriebsauswertungen, Karten (Update 438) */
.sup-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(min(280px, 100%), 1fr)); gap:12px;}
.sup-card{display:flex; flex-direction:column; gap:6px; text-align:left; background:var(--surface, #fff); border:1px solid var(--line, #e5e7eb); border-radius:14px; padding:14px 16px; font:inherit; color:inherit; cursor:pointer; min-width:0;}
.sup-card:hover{border-color:#669C34; box-shadow:0 4px 14px rgba(17,27,45,.06);}
.sup-card-head{display:flex; justify-content:space-between; gap:8px; align-items:baseline;}
.sup-card-head b{font-size:15px; overflow-wrap:anywhere;}
.sup-stars{color:#c99a06; font-size:12px; white-space:nowrap;}
.sup-chips{display:flex; flex-wrap:wrap; gap:4px;}
.sup-card-foot{display:flex; justify-content:space-between; gap:8px; font-size:12.5px; margin-top:auto; padding-top:6px; border-top:1px solid var(--line, #eef0f3);}
.sign-prof .sign-prev{height:54px; max-width:220px; object-fit:contain; background:#fff; border:1px solid var(--line, #e5e7eb); border-radius:8px; padding:4px 8px;}
.sign-prof .sign-prev.sm{height:44px; max-width:90px;}
.sign-pad{display:block; background:#fff; border:1px dashed #b6c2d2; border-radius:10px; cursor:crosshair; margin-bottom:4px;}
.sign-tools{position:sticky; top:62px; z-index:5; background:var(--surface, #fff); padding:8px 0;}
.sign-tools-row{display:flex; gap:8px; flex-wrap:wrap; align-items:center;}
.sign-tools-row .btn{padding:6px 12px; font-size:12.5px;}
.sign-pages{display:flex; flex-direction:column; align-items:center; gap:18px; margin-top:12px; background:var(--surface-2, #f1f3f6); padding:18px 10px; border-radius:12px;}
.sign-page{position:relative; width:100%; max-width:900px; background:#fff; box-shadow:0 2px 10px rgba(17,27,45,.12); user-select:none;}
.sign-page canvas{display:block; width:100%; height:100%;}
.sign-page-no{position:absolute; right:8px; bottom:-16px; font-size:10.5px; color:var(--text-mute);}
.sign-mark{position:absolute; border:2px dashed #669C34; background:rgba(102,156,52,.06); cursor:move; box-sizing:border-box; border-radius:4px;}
.sign-mark.active, .sign-mark:hover{border-style:solid; background:rgba(102,156,52,.1);}
.sign-mark img{width:100%; height:100%; object-fit:contain; pointer-events:none;}
.sign-mark-text{width:100%; height:100%; display:flex; align-items:center; padding:0 3px; color:#111B2D; font-family:Helvetica, Arial, sans-serif; white-space:nowrap; overflow:hidden; outline:none; cursor:text;}
.sign-mark-del{position:absolute; top:-12px; right:-12px; width:22px; height:22px; border-radius:50%; border:0; background:#F82249; color:#fff; font-size:14px; line-height:22px; padding:0; cursor:pointer; display:none;}
.sign-mark:hover .sign-mark-del, .sign-mark.active .sign-mark-del{display:block;}
.sign-mark-rs{position:absolute; right:-6px; bottom:-6px; width:14px; height:14px; border-radius:3px; background:#669C34; cursor:nwse-resize;}
.salesrep-bar{height:5px; border-radius:3px; background:#eef1f5; overflow:hidden; margin-bottom:2px; min-width:60px;}
.salesrep-bar > span{display:block; height:100%; background:#669C34;}
.salesrep-week-nums{display:grid; grid-template-columns:repeat(4, 1fr); gap:8px;}
.salesrep-week-nums > div{display:flex; flex-direction:column; background:var(--surface-2, #f6f7f5); border-radius:10px; padding:8px;}
.salesrep-week-nums b{font-size:20px;}
.salesrep-week-nums span{font-size:11px; color:var(--text-mute);}
.salesrep-chosen{display:flex; flex-wrap:wrap; gap:6px; margin-top:8px;}
.portal-map .leaflet-tile-pane{filter:grayscale(1) sepia(.18) hue-rotate(178deg) saturate(1.6) brightness(1.04) contrast(.86);}
.portal-map{background:#eef1f5;}
.portal-map .leaflet-control-zoom a{color:#111B2D;}
.portal-map .leaflet-popup-content-wrapper{border-radius:10px;}

/* Datenbank-Editor (Update 440) */
.dbe-json{width:100%; min-height:320px; font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size:12.5px; line-height:1.45; padding:10px 12px; border:1px solid var(--line, #e5e7eb); border-radius:10px; background:#0f1626; color:#e6edf6; tab-size:2; resize:vertical; box-sizing:border-box;}
.dbe-table td{font-size:12.5px; vertical-align:top;}
.dbe-sum{max-width:640px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.dbe-table code{font-size:11.5px; overflow-wrap:anywhere;}

/* Konfiguration wiederherstellen (seit Update 441) */
.cfg-restore-alert { background: rgba(248,34,73,.08); border-left: 3px solid #F82249; padding: 10px 14px; border-radius: 6px; margin: 0 0 12px; color: #111B2D; font-weight: 500; }
.cfg-restore-inc { margin: 0 0 12px; }
.cfg-restore-inc summary { cursor: pointer; font-weight: 600; margin-bottom: 6px; }
.cfg-restore-table td, .cfg-restore-table th { white-space: nowrap; }
.cfg-compare-val { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11.5px; max-width: 340px; word-break: break-all; white-space: normal; color: #111B2D; }

/* Abholer: Kunde mit CRM-Hinweis (seit Update 445) — Vorschläge direkt unter dem Feld, Hinweis im Feld-Raster */
.pickup-customer-wrap { position: relative; }
.pickup-customer-wrap .kn-suggest { top: calc(100% + 2px); margin-top: 0; }
.pickup-crm-info { font-size: 12.5px; margin-top: 6px; min-height: 16px; line-height: 1.35; }
.pickup-crm-info .chk.pickup-crm-new { display: flex; align-items: flex-start; gap: 8px; color: #8a5a12; font-size: 12.5px; font-weight: 500; cursor: pointer; }
.pickup-layout .grid.cols-4 .pickup-crm-info input[type=checkbox], .pickup-crm-info input[type=checkbox] { width: 15px !important; height: 15px !important; min-width: 15px; flex: 0 0 15px; margin: 1px 0 0; padding: 0; accent-color: #669C34; }

/* ---------- Nutzer & Gruppen (seit Update 448) ---------- */
.acc-head { margin-bottom: 12px; }
.acc-banner { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 16px; border-radius: 12px; background: #fff7ea; border: 1px solid #f1d9ad; margin-bottom: 14px; }
.acc-banner.is-on { background: rgba(102,156,52,.08); border-color: rgba(102,156,52,.35); }
.acc-banner b { color: #111B2D; }
.acc-tabs { display: inline-flex; gap: 4px; padding: 4px; background: #eef1f5; border-radius: 12px; margin-bottom: 14px; }
.acc-tabs button { border: 0; background: transparent; padding: 8px 16px; border-radius: 9px; font: inherit; font-weight: 600; color: #4b5870; cursor: pointer; display: inline-flex; gap: 8px; align-items: center; }
.acc-tabs button span { font-size: 11.5px; background: rgba(17,27,45,.08); border-radius: 999px; padding: 1px 8px; }
.acc-tabs button.is-on { background: #fff; color: #111B2D; box-shadow: 0 1px 3px rgba(17,27,45,.12); }
.acc-grid { display: grid; grid-template-columns: minmax(260px, 340px) minmax(0, 1fr); gap: 16px; align-items: start; }
@media (max-width: 980px) { .acc-grid { grid-template-columns: 1fr; } }
.acc-list { padding: 12px; position: sticky; top: 76px; max-height: calc(100vh - 100px); display: flex; flex-direction: column; }
.acc-list-head { display: flex; justify-content: flex-end; margin-bottom: 8px; }
.acc-filter { display: grid; grid-template-columns: 1fr; gap: 6px; margin-bottom: 8px; }
.acc-rows { overflow: auto; display: flex; flex-direction: column; gap: 2px; margin: 0 -4px; padding: 0 4px; }
.acc-row { display: flex; align-items: center; gap: 10px; width: 100%; text-align: left; border: 0; background: transparent; padding: 8px; border-radius: 10px; cursor: pointer; font: inherit; color: inherit; }
.acc-row:hover { background: #f4f6f9; }
.acc-row.is-on { background: rgba(102,156,52,.12); }
.acc-row-main { display: flex; flex-direction: column; min-width: 0; flex: 1; }
.acc-row-main b { font-weight: 600; font-size: 13.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: flex; gap: 6px; align-items: center; }
.acc-row-main small { color: var(--text-mute); font-size: 11.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.acc-row-chips { display: inline-flex; gap: 3px; flex-shrink: 0; }
.acc-dot { width: 8px; height: 8px; border-radius: 50%; display: inline-block; }
.acc-none { font-size: 11px; color: #b45309; font-style: normal; }
.acc-av { width: 32px; height: 32px; border-radius: 50%; background: #111B2D; color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 600; flex-shrink: 0; }
.acc-av.is-big { width: 46px; height: 46px; font-size: 16px; }
.acc-av.is-small { width: 24px; height: 24px; font-size: 10px; }
.acc-gdot { width: 14px; height: 14px; border-radius: 5px; flex-shrink: 0; }
.acc-gdot.is-big { width: 40px; height: 40px; border-radius: 12px; }
.acc-sys { font-style: normal; font-size: 10.5px; font-weight: 600; letter-spacing: .02em; text-transform: uppercase; color: #4b5870; background: #eef1f5; border-radius: 6px; padding: 1px 6px; margin-left: 6px; }
.acc-empty { color: var(--text-mute); min-height: 200px; display: flex; align-items: center; justify-content: center; }
.acc-card { padding: 18px 20px; }
.acc-card-head { display: flex; align-items: center; gap: 14px; margin-bottom: 6px; }
.acc-sec { margin: 22px 0 8px; font-size: 13px; text-transform: uppercase; letter-spacing: .04em; color: #4b5870; border-top: 1px solid var(--line); padding-top: 16px; }
.acc-pick { display: flex; flex-wrap: wrap; gap: 6px; }
.acc-pick-b { --c: #5b6b82; display: inline-flex; align-items: center; gap: 7px; border: 1px solid var(--line-strong, #d5dbe3); background: #fff; border-radius: 999px; padding: 6px 12px; font: inherit; font-size: 13px; cursor: pointer; color: #111B2D; }
.acc-pick-b i { width: 9px; height: 9px; border-radius: 50%; background: var(--c); }
.acc-pick-b em { font-style: normal; font-size: 10px; text-transform: uppercase; color: #6b778c; }
.acc-pick-b.is-on { background: color-mix(in srgb, var(--c) 14%, #fff); border-color: var(--c); font-weight: 600; }
.acc-pick-b:disabled { opacity: .8; cursor: default; }
.acc-chip { --c: #5b6b82; display: inline-flex; align-items: center; gap: 5px; font-size: 12px; padding: 2px 8px; border-radius: 999px; background: color-mix(in srgb, var(--c) 12%, #fff); }
.acc-chip i { width: 7px; height: 7px; border-radius: 50%; background: var(--c); }
.acc-specials { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 8px; margin-bottom: 12px; }
.acc-special { display: flex; gap: 10px; align-items: flex-start; border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px; cursor: pointer; position: relative; }
.acc-special input { width: 16px !important; height: 16px; flex: 0 0 16px; margin-top: 2px; accent-color: #669C34; }
.acc-special span { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.acc-special b { font-size: 13px; font-weight: 600; }
.acc-special small { font-size: 11.5px; color: var(--text-mute); line-height: 1.35; }
.acc-special.is-on { border-color: rgba(102,156,52,.55); background: rgba(102,156,52,.05); }
.acc-from { position: absolute; top: 8px; right: 10px; font-style: normal; font-size: 10.5px; color: #669C34; font-weight: 600; }
.acc-matrix { width: 100%; border-collapse: collapse; font-size: 13px; }
.acc-matrix th { text-align: left; font-size: 11.5px; color: var(--text-mute); font-weight: 600; padding: 6px 8px; border-bottom: 1px solid var(--line); }
.acc-matrix td { padding: 6px 8px; border-bottom: 1px solid #f0f2f5; vertical-align: middle; }
.acc-area td { background: #f6f8fa; font-weight: 700; font-size: 11.5px; text-transform: uppercase; letter-spacing: .04em; color: #4b5870; padding-top: 9px; }
.acc-area-all { float: right; text-transform: none; letter-spacing: 0; font-weight: 400; display: inline-flex; gap: 10px; }
.acc-area-all .linklike { font-size: 11.5px; }
.acc-seg { display: inline-flex; background: #eef1f5; border-radius: 9px; padding: 2px; gap: 2px; }
.acc-seg-b { border: 0; background: transparent; font: inherit; font-size: 12px; padding: 4px 10px; border-radius: 7px; cursor: pointer; color: #4b5870; white-space: nowrap; }
.acc-seg-b.is-on { background: #fff; color: #111B2D; font-weight: 600; box-shadow: 0 1px 2px rgba(17,27,45,.15); }
.acc-seg-b.is-on.lv-edit { background: #669C34; color: #fff; }
.acc-seg-b.is-on.lv-read { background: #111B2D; color: #fff; }
.acc-lv { font-size: 12px; color: var(--text-mute); white-space: nowrap; }
.acc-lv.lv-read { color: #111B2D; }
.acc-lv.lv-edit { color: #3f6d18; }
.acc-lv.is-strong { font-weight: 600; }
.acc-lv.is-strong.lv-none { color: #9aa3b2; font-weight: 400; }
.acc-savebar { display: flex; align-items: center; justify-content: flex-end; gap: 12px; position: sticky; bottom: 0; background: #fff; padding: 12px 0 2px; margin-top: 10px; border-top: 1px solid var(--line); }
.acc-account { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 4px 16px; margin-top: 8px; }
.acc-account .field { margin-bottom: 8px; }
.acc-inline { display: flex; gap: 6px; }
.acc-inline input { min-width: 0; flex: 1; }
.acc-members { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 4px; max-height: 280px; overflow: auto; margin-top: 8px; padding: 2px; }
.acc-mem { display: flex; align-items: center; gap: 8px; padding: 6px 8px; border-radius: 8px; cursor: pointer; font-size: 13px; }
.acc-mem:hover { background: #f4f6f9; }
.acc-mem.is-on { background: rgba(102,156,52,.1); }
.acc-mem input { width: 15px !important; height: 15px; accent-color: #669C34; }
.groups-hint { padding: 10px 12px; border-radius: 10px; background: #f6f8fa; font-size: 13px; color: #4b5870; margin-bottom: 14px; }
/* Deaktivierte Konten (seit Update 449) */
.acc-row.is-disabled { opacity: .55; }
.acc-off { font-style: normal; font-size: 10.5px; font-weight: 600; text-transform: uppercase; letter-spacing: .03em; color: #6b778c; background: #eef1f5; border-radius: 6px; padding: 2px 6px; flex-shrink: 0; }
.acc-off-note { margin-top: 6px; font-size: 12.5px; color: #8a1730; background: rgba(248,34,73,.07); border-radius: 8px; padding: 6px 10px; }
.acc-disable { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: 18px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; }
/* Rechtevorschau (seit Update 450) */
#access-preview-bar { position: fixed; left: 50%; bottom: 16px; transform: translateX(-50%); z-index: 100000; display: flex; align-items: center; gap: 12px; background: #111B2D; color: #fff; padding: 10px 12px 10px 16px; border-radius: 14px; box-shadow: 0 10px 30px rgba(17,27,45,.35); font-size: 13.5px; max-width: calc(100vw - 32px); }
#access-preview-bar b { font-weight: 600; }
#access-preview-bar .apb-dot { width: 10px; height: 10px; border-radius: 50%; background: #F82249; box-shadow: 0 0 0 4px rgba(248,34,73,.25); flex-shrink: 0; }
#access-preview-bar button { border: 0; background: #669C34; color: #fff; font: inherit; font-weight: 600; padding: 7px 14px; border-radius: 9px; cursor: pointer; white-space: nowrap; }
body.has-preview-bar { padding-bottom: 72px; }
body.has-preview-bar .topbar { box-shadow: inset 0 -3px 0 #F82249; }
.acc-card-head .acc-preview-btn { margin-left: auto; flex-shrink: 0; }
.acc-preview-box { margin-left: auto; display: flex; flex-direction: column; align-items: flex-end; gap: 4px; flex-shrink: 0; }
.acc-preview-box .acc-preview-btn { margin-left: 0; }
/* Rechte entziehen / Funktionszeilen (seit Update 451) */
.acc-seg-b.is-on.lv-deny { background: #F82249; color: #fff; }
.acc-seg-b.is-on.lv-inherit { background: #fff; color: #4b5870; }
.acc-seg-b.is-on.lv-allow { background: #669C34; color: #fff; }
.acc-lv.lv-deny { color: #c0163a; font-weight: 600; }
.acc-fn td { background: #fbfcfd; }
.acc-fn-l { font-weight: 600; font-size: 12.5px; }
.acc-fn-h { display: block; color: var(--text-mute); font-size: 11px; line-height: 1.3; max-width: 320px; }
/* Nutzer & Gruppen: bei schmalem Inhaltsbereich Liste oben, Details darunter in voller Breite (seit Update 451) */
.acc { container-type: inline-size; }
@container (max-width: 1080px) {
  .acc-grid { grid-template-columns: 1fr; }
  .acc-list { position: static; max-height: 340px; }
}
.acc-seg-b { padding: 4px 9px; }

/* ================= Nachrichten (seit Update 453) ================= */
main.main-messages { padding-bottom: 0 !important; }
.msg-app { display: grid; grid-template-columns: 330px minmax(0, 1fr); height: calc(100vh - 112px); min-height: 520px; background: #fff; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; box-shadow: 0 1px 3px rgba(17,27,45,.05); }
.msg-side { display: flex; flex-direction: column; border-right: 1px solid var(--line); background: #f8f9fb; min-height: 0; }
.msg-side-head { display: flex; align-items: center; justify-content: space-between; padding: 16px 16px 8px; }
.msg-side-head h1 { font-size: 20px; margin: 0; }
.msg-new { display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; }
.msg-search { display: flex; align-items: center; gap: 8px; margin: 4px 12px 10px; padding: 0 10px; background: #fff; border: 1px solid var(--line); border-radius: 10px; color: var(--text-mute); }
.msg-search input { border: 0 !important; box-shadow: none !important; padding: 9px 0 !important; background: transparent; flex: 1; min-width: 0; outline: none; }
.msg-list { overflow-y: auto; padding: 0 8px 12px; flex: 1; min-height: 0; }
.msg-list-sep { font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--text-mute); margin: 12px 8px 4px; font-weight: 600; }
.msg-item { display: flex; align-items: center; gap: 10px; width: 100%; padding: 9px 10px; border: 0; background: transparent; border-radius: 12px; cursor: pointer; text-align: left; font: inherit; color: #111B2D; }
.msg-item:hover { background: #eef1f5; }
.msg-item.is-on { background: #fff; box-shadow: 0 1px 3px rgba(17,27,45,.1); }
.msg-item input[type=checkbox] { width: 16px !important; height: 16px; accent-color: #669C34; flex: 0 0 16px; }
.msg-item-main { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.msg-item-top { display: flex; align-items: center; gap: 5px; }
.msg-item-top b { font-weight: 600; font-size: 13.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex: 1; min-width: 0; }
.msg-item-top small { color: var(--text-mute); font-size: 11px; flex-shrink: 0; }
.msg-item-top .msg-ic { color: var(--text-mute); }
.msg-item-prev { font-size: 12.5px; color: var(--text-mute); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.msg-item.is-unread .msg-item-top b, .msg-item.is-unread .msg-item-prev { color: #111B2D; font-weight: 600; }
.msg-badge { min-width: 20px; height: 20px; border-radius: 10px; background: #669C34; color: #fff; font-size: 11px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; padding: 0 6px; flex-shrink: 0; }
.msg-badge.is-mention { background: #F82249; }
.msg-badge.is-muted { background: #9aa3b2; }
.msg-empty-list { text-align: center; color: var(--text-mute); padding: 30px 10px; }
.msg-av { width: 38px; height: 38px; border-radius: 50%; color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 600; flex-shrink: 0; overflow: hidden; }
.msg-av img { width: 100%; height: 100%; object-fit: cover; }
.msg-av.is-group { border-radius: 12px; }
.msg-av.is-portal { background: #111B2D; border-radius: 12px; }
.msg-av.is-big { width: 64px; height: 64px; font-size: 20px; }
.msg-av-space { width: 38px; flex-shrink: 0; }
.msg-ic { display: inline-flex; align-items: center; }
.msg-main { display: flex; flex-direction: column; min-width: 0; min-height: 0; position: relative; background: #fff; }
.msg-main.is-drop::after { content: 'Dateien hier ablegen'; position: absolute; inset: 10px; border: 2px dashed #669C34; border-radius: 14px; background: rgba(102,156,52,.08); display: flex; align-items: center; justify-content: center; font-weight: 600; color: #3f6d18; z-index: 5; }
.msg-placeholder { margin: auto; text-align: center; color: var(--text-mute); display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 30px; }
.msg-placeholder h2 { color: #111B2D; margin: 6px 0 0; }
.msg-head { display: flex; align-items: center; gap: 12px; padding: 12px 18px; border-bottom: 1px solid var(--line); min-height: 64px; }
.msg-head-main { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.msg-head-main b { font-size: 15px; }
.msg-head-main small { color: var(--text-mute); font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.msg-head-act { display: flex; gap: 4px; align-items: center; }
.msg-back { display: none; border: 0; background: transparent; cursor: pointer; padding: 4px; color: #111B2D; }
.msg-icbtn { border: 0; background: transparent; width: 34px; height: 34px; border-radius: 9px; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; color: #4b5870; flex-shrink: 0; }
.msg-icbtn:hover { background: #eef1f5; color: #111B2D; }
.msg-icbtn.is-on { color: #669C34; }
.msg-stream { flex: 1; overflow-y: auto; padding: 16px 18px 8px; display: flex; flex-direction: column; gap: 2px; background: #fbfcfd; }
.msg-older { align-self: center; margin-bottom: 8px; }
.msg-hello { margin: auto; text-align: center; color: var(--text-mute); display: flex; flex-direction: column; align-items: center; gap: 6px; max-width: 420px; }
.msg-hello b { color: #111B2D; font-size: 16px; }
.msg-day { display: flex; justify-content: center; margin: 14px 0 8px; }
.msg-day span { font-size: 11.5px; color: #4b5870; background: #eef1f5; border-radius: 999px; padding: 3px 12px; font-weight: 500; }
.msg-sys { align-self: center; font-size: 12px; color: var(--text-mute); margin: 6px 0; text-align: center; }
.msg-row { display: flex; align-items: flex-start; gap: 8px; margin-top: 10px; position: relative; max-width: 100%; }
.msg-row.is-grouped { margin-top: 2px; }
.msg-row.is-mine { flex-direction: row-reverse; }
.msg-col { display: flex; flex-direction: column; max-width: min(640px, 76%); min-width: 0; }
.msg-row.is-mine .msg-col { align-items: flex-end; }
.msg-bubble { background: #fff; border: 1px solid #e6e9ee; border-radius: 14px; border-top-left-radius: 4px; padding: 7px 12px 8px; font-size: 13.5px; line-height: 1.45; color: #111B2D; min-width: 0; overflow-wrap: anywhere; }
.msg-row.is-mine .msg-bubble { background: #eef5e6; border-color: #d7e7c6; border-top-left-radius: 14px; border-top-right-radius: 4px; }
.msg-row.is-grouped .msg-bubble { border-radius: 14px; }
.msg-bubble.is-mention { box-shadow: inset 3px 0 0 #F82249; }
.msg-bubble.is-deleted { background: transparent !important; border-style: dashed; }
.msg-bubble.is-card { min-width: 260px; }
.msg-bubble.is-done { opacity: .6; }
.msg-meta { display: flex; gap: 8px; align-items: baseline; font-size: 11.5px; color: var(--text-mute); margin-bottom: 2px; }
.msg-meta b { color: #111B2D; font-size: 12.5px; }
.msg-text a { color: #2f6fd6; word-break: break-all; }
.msg-text.is-muted { color: var(--text-mute); font-style: italic; }
.msg-mention { color: #3f6d18; font-weight: 600; background: rgba(102,156,52,.12); border-radius: 4px; padding: 0 3px; }
.msg-mention.is-me { color: #fff; background: #669C34; }
.msg-edited { font-size: 10.5px; color: var(--text-mute); margin-left: 6px; }
.msg-quote { display: flex; flex-direction: column; text-align: left; width: 100%; border: 0; border-left: 3px solid #669C34; background: rgba(17,27,45,.04); border-radius: 6px; padding: 4px 8px; margin: 2px 0 6px; font: inherit; font-size: 12px; cursor: pointer; color: #4b5870; }
.msg-quote b { color: #111B2D; font-size: 12px; }
.msg-img { display: block; margin-top: 6px; }
.msg-img img { max-width: min(320px, 100%); max-height: 260px; border-radius: 10px; display: block; border: 1px solid #e6e9ee; }
.msg-file { display: flex; align-items: center; gap: 10px; margin-top: 6px; padding: 8px 10px; border: 1px solid #e0e4ea; border-radius: 10px; background: #fff; text-decoration: none; color: #111B2D; max-width: 320px; }
.msg-file span { display: flex; flex-direction: column; min-width: 0; }
.msg-file b { font-size: 12.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.msg-file small { font-size: 11px; color: var(--text-mute); }
.msg-reacts { display: flex; gap: 4px; flex-wrap: wrap; margin-top: 6px; }
.msg-react { display: inline-flex; align-items: center; gap: 4px; border: 1px solid #e0e4ea; background: #fff; border-radius: 999px; padding: 1px 8px 1px 6px; font: inherit; font-size: 11.5px; cursor: pointer; color: #4b5870; }
.msg-react.is-mine { border-color: #669C34; background: rgba(102,156,52,.1); color: #3f6d18; }
.msg-seen { font-size: 11px; color: var(--text-mute); margin-top: 3px; }
.msg-tools { position: absolute; top: -14px; right: 52px; display: none; gap: 2px; background: #fff; border: 1px solid #e0e4ea; border-radius: 10px; padding: 2px; box-shadow: 0 4px 12px rgba(17,27,45,.1); z-index: 3; }
.msg-row:not(.is-mine) .msg-tools { right: auto; left: 52px; }
.msg-row:hover .msg-tools, .msg-tools:focus-within { display: flex; }
.msg-tools button { border: 0; background: transparent; width: 28px; height: 26px; border-radius: 7px; cursor: pointer; color: #4b5870; display: inline-flex; align-items: center; justify-content: center; }
.msg-tools button:hover { background: #eef1f5; color: #111B2D; }
.msg-react-pop { position: absolute; top: 28px; display: flex; gap: 2px; background: #fff; border: 1px solid #e0e4ea; border-radius: 12px; padding: 4px; box-shadow: 0 8px 20px rgba(17,27,45,.15); z-index: 6; }
.msg-react-pop button { border: 0; background: transparent; width: 34px; height: 32px; border-radius: 8px; cursor: pointer; color: #111B2D; display: inline-flex; align-items: center; justify-content: center; }
.msg-react-pop button:hover { background: rgba(102,156,52,.12); color: #3f6d18; }
.msg-row.is-flash .msg-bubble { box-shadow: 0 0 0 3px rgba(102,156,52,.45); transition: box-shadow .3s; }
.msg-composer { border-top: 1px solid var(--line); padding: 10px 14px 12px; position: relative; background: #fff; }
.msg-ctx { display: none; align-items: center; justify-content: space-between; gap: 10px; border-left: 3px solid #669C34; background: #f6f8fa; border-radius: 8px; padding: 6px 6px 6px 10px; margin-bottom: 8px; font-size: 12.5px; }
.msg-ctx div { display: flex; flex-direction: column; min-width: 0; }
.msg-ctx span { color: var(--text-mute); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.msg-chips { display: flex; gap: 6px; flex-wrap: wrap; }
.msg-chips:not(:empty) { margin-bottom: 8px; }
.msg-chip { display: inline-flex; align-items: center; gap: 6px; border: 1px solid #e0e4ea; border-radius: 999px; padding: 3px 4px 3px 10px; font-size: 12px; background: #f8f9fb; }
.msg-chip small { color: var(--text-mute); }
.msg-chip button { border: 0; background: transparent; cursor: pointer; display: inline-flex; padding: 2px; color: #4b5870; }
.msg-input { display: flex; align-items: flex-end; gap: 6px; border: 1px solid #d5dbe3; border-radius: 14px; padding: 4px 4px 4px 6px; background: #fff; }
.msg-input:focus-within { border-color: #669C34; box-shadow: 0 0 0 3px rgba(102,156,52,.15); }
.msg-input textarea { flex: 1; border: 0 !important; box-shadow: none !important; resize: none; padding: 8px 4px !important; font: inherit; font-size: 14px; line-height: 1.4; max-height: 180px; outline: none; background: transparent; min-height: 22px; }
.msg-send { border: 0; width: 38px; height: 38px; border-radius: 11px; background: #669C34; color: #fff; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.msg-send:disabled { opacity: .5; }
.msg-mention-pop { position: absolute; bottom: calc(100% - 4px); left: 14px; background: #fff; border: 1px solid #e0e4ea; border-radius: 12px; box-shadow: 0 10px 24px rgba(17,27,45,.15); padding: 4px; min-width: 240px; z-index: 6; }
.msg-mention-pop button { display: flex; align-items: center; gap: 8px; width: 100%; border: 0; background: transparent; padding: 6px 8px; border-radius: 8px; cursor: pointer; font: inherit; font-size: 13px; text-align: left; }
.msg-mention-pop button .msg-av { width: 26px; height: 26px; font-size: 10px; }
.msg-mention-pop button.is-on, .msg-mention-pop button:hover { background: rgba(102,156,52,.12); }
.msg-portal-act { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 8px; align-items: center; }
.msg-portal-to { font-size: 11.5px; color: var(--text-mute); margin-top: 4px; }
.msg-new-modal input[type=text], .msg-new-modal input[type=search] { width: 100%; margin-bottom: 8px; }
.msg-pick { max-height: 380px; overflow-y: auto; display: flex; flex-direction: column; gap: 2px; }
.msg-toast { position: fixed; right: 20px; bottom: 20px; z-index: 99990; display: flex; align-items: center; gap: 12px; background: #111B2D; color: #fff; border: 0; border-radius: 14px; padding: 12px 16px; box-shadow: 0 12px 30px rgba(17,27,45,.35); cursor: pointer; text-align: left; font: inherit; max-width: 380px; }
.msg-toast span:last-child { display: flex; flex-direction: column; min-width: 0; }
.msg-toast small { color: #c9d1dc; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 12.5px; }
@media (max-width: 860px) {
  .msg-app { grid-template-columns: 1fr; height: calc(100vh - 96px); border-radius: 12px; }
  .msg-app .msg-main { display: none; }
  .msg-app.has-open .msg-side { display: none; }
  .msg-app.has-open .msg-main { display: flex; }
  .msg-back { display: inline-flex; }
  .msg-col { max-width: 86%; }
  .msg-tools { right: 8px !important; left: auto !important; }
}
.msg-portal-act .btn { padding: 6px 12px; font-size: 12.5px; }
/* Nutzer & Gruppen auf dem Handy (seit Update 454): Liste ODER Detail, Rechte-Tabelle als Karten */
.acc-list { min-height: 0; }
.acc-rows { flex: 1 1 auto; min-height: 0; }
.acc-back { display: none; margin: 0 0 10px; font-weight: 600; }
@container (max-width: 760px) {
  .acc-grid.has-sel .acc-list { display: none; }
  .acc-grid:not(.has-sel) .acc-detail { display: none; }
  .acc-back { display: inline-block; }
  .acc-list { max-height: none; position: static; }
  .acc-card { padding: 14px; }
  .acc-card-head { flex-wrap: wrap; }
  .acc-card-head .acc-preview-btn, .acc-preview-box { margin-left: 0; }
  .acc-matrix, .acc-matrix tbody { display: block; width: 100%; }
  .acc-matrix thead { display: none; }
  .acc-matrix tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: 'name eff' 'from from' 'set set'; gap: 4px 10px; padding: 10px 2px; border-bottom: 1px solid #eef1f5; }
  .acc-matrix tr.acc-area { display: block; padding: 0; border: 0; }
  .acc-matrix tr.acc-area td { display: block; padding: 8px; border-radius: 8px; }
  .acc-area-all { float: none; display: flex; margin-top: 4px; }
  .acc-matrix td { display: block; padding: 0; border: 0; background: transparent !important; }
  .acc-c-name { grid-area: name; font-weight: 600; }
  .acc-c-eff { grid-area: eff; text-align: right; }
  .acc-c-from { grid-area: from; font-size: 12px; }
  .acc-c-from::before { content: attr(data-l) ': '; color: var(--text-mute); }
  .acc-c-set { grid-area: set; }
  .acc-matrix tr:not(:has(.acc-c-eff)) { grid-template-areas: 'name name' 'set set'; }
  .acc-seg { display: flex; width: 100%; }
  .acc-seg-b { flex: 1; padding: 7px 4px; text-align: center; }
  .acc-fn-h { max-width: none; }
  .acc-account { grid-template-columns: 1fr; }
  .acc-members { grid-template-columns: 1fr; }
  .acc-banner { flex-direction: column; align-items: flex-start; }
  .acc-tabs { display: flex; }
  .acc-tabs button { flex: 1; justify-content: center; }
}
/* Vektorkarte (seit Update 456): kein CSS-Filter, Hintergrund wie die Karte */
.portal-map.portal-map-vector .leaflet-tile-pane { filter: none; }
.portal-map.portal-map-vector { background: #e9eaed; }

/* Änderungsprotokoll der Rechte (Update 458) */
.acc-log { margin-top:18px; border-top:1px solid var(--border, #e3e5e9); padding-top:10px; }
.acc-log > summary { cursor:pointer; font-weight:600; font-size:13.5px; color:var(--navy, #111B2D); list-style:none; }
.acc-log > summary::before { content:'▸'; display:inline-block; margin-right:6px; transition:transform .15s; }
.acc-log[open] > summary::before { transform:rotate(90deg); }
.acc-log-body { margin-top:8px; display:flex; flex-direction:column; gap:10px; max-height:420px; overflow:auto; }
.acc-log-e { font-size:13px; border-left:3px solid var(--green, #669C34); padding:2px 0 2px 10px; }
.acc-log-h { color:var(--muted, #5b6474); }
.acc-log-h b { color:var(--text, #111B2D); font-weight:600; }
.acc-log-via { margin-left:6px; font-size:11.5px; background:rgba(17,27,45,.06); border-radius:10px; padding:1px 8px; }
.acc-log-e ul { margin:4px 0 0; padding-left:18px; }
.acc-log-e li { margin:1px 0; }

/* Nur-Lesen (Update 458): Bearbeiten-Knöpfe ausgegraut */
.ro-banner { display:flex; align-items:center; gap:8px; background:rgba(17,27,45,.05); border:1px solid rgba(17,27,45,.12); color:var(--navy, #111B2D); border-radius:10px; padding:8px 12px; margin:0 0 12px; font-size:13.5px; }
.ro-banner b { font-weight:600; }
button.ro-off, .btn.ro-off { opacity:.38 !important; cursor:not-allowed !important; filter:grayscale(1); }
body.app-readonly main > .page-savebar { display:none !important; }

/* Nachrichten: Anheften, Suche, Einstellungen (Update 458) */
.msg-side-head h1 { margin-right: auto !important; }
.msg-side-head { gap: 6px; }
.msg-pins { border-bottom: 1px solid var(--line); background: #f7f9f4; }
.msg-pins-bar { display: flex; align-items: center; gap: 8px; padding: 7px 18px; font-size: 13px; color: #3d5a1f; }
.msg-pins-main { flex: 1; min-width: 0; display: flex; gap: 4px; border: 0; background: transparent; text-align: left; cursor: pointer; padding: 0; font: inherit; color: inherit; overflow: hidden; }
.msg-pins-main span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #111B2D; }
.msg-pins-list { padding: 0 18px 8px; display: flex; flex-direction: column; gap: 4px; max-height: 220px; overflow: auto; }
.msg-pins-item { display: flex; align-items: center; gap: 6px; background: #fff; border: 1px solid #e3e8dc; border-radius: 8px; padding: 6px 8px; font-size: 12.5px; }
.msg-pins-item .msg-pins-main { flex-direction: column; gap: 1px; }
.msg-pins-item .msg-pins-main b { font-size: 11.5px; color: #5b6474; font-weight: 600; }
.msg-pinned { display: inline-flex; align-items: center; gap: 3px; font-size: 10.5px; color: #669C34; margin-left: 6px; }
.msg-hit .msg-item-prev mark { background: rgba(102,156,52,.22); color: inherit; border-radius: 3px; padding: 0 1px; }
.msg-hit .msg-item-prev { white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.msg-set-row { display: flex !important; align-items: flex-start; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.msg-set-row:last-child { border-bottom: 0; }
.msg-set-row span { display: flex; flex-direction: column; gap: 3px; }
.msg-set-row small { color: var(--text-mute); font-size: 12.5px; line-height: 1.45; }
.msg-crm-chosen { display: flex; flex-direction: column; gap: 2px; margin-top: 6px; padding: 8px 10px; border: 1px solid #cfe0bd; background: #f5f9f0; border-radius: 8px; }
.msg-crm-chosen small { color: var(--text-mute); }
.msg-row.is-flash .msg-bubble { box-shadow: 0 0 0 3px rgba(102,156,52,.45); transition: box-shadow .3s; }
.ro-box { opacity: .72; }
.ro-box input.ro-off, .ro-box select.ro-off, .ro-box textarea.ro-off { filter: none; opacity: 1 !important; background: #f4f5f7 !important; }

/* Kommissionier-Statistik (Update 459) */
.pstat-range { margin-bottom: 14px; }
.pstat-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; }
.pstat-kpi { border: 1px solid var(--line); border-radius: 12px; padding: 12px 14px; display: flex; flex-direction: column; gap: 2px; background: #fff; }
.pstat-kpi b { font-size: 22px; color: #111B2D; }
.pstat-kpi span { font-size: 13px; font-weight: 600; color: #3a4558; }
.pstat-kpi small { font-size: 12px; color: var(--text-mute); }
.pstat-flow { display: flex; gap: 8px; flex-wrap: wrap; }
.pstat-flow > div { flex: 1 1 160px; display: flex; flex-direction: column; gap: 2px; background: #f5f9f0; border: 1px solid #dfe9d2; border-radius: 10px; padding: 8px 12px; position: relative; }
.pstat-flow span { font-size: 12.5px; color: #4b5870; }
.pstat-flow b { font-size: 16px; color: #3d5a1f; }
.pstat-bars { display: flex; align-items: flex-end; gap: 3px; height: 110px; padding: 6px 0; border-bottom: 1px solid var(--line); }
.pstat-bars.is-dense { gap: 1px; }
.pstat-bar { flex: 1; height: 100%; display: flex; align-items: flex-end; min-width: 2px; }
.pstat-bar i { display: block; width: 100%; background: #669C34; border-radius: 3px 3px 0 0; min-height: 1px; }
.pstat-bar.is-we i { background: #b9d39e; }
.pstat-cnt { display: flex; align-items: center; gap: 8px; min-width: 120px; }
.pstat-cnt span { font-weight: 700; min-width: 26px; }
.pstat-cnt i { display: block; height: 8px; background: #669C34; border-radius: 4px; }
.pstat-table td.num, .pstat-table th.num { text-align: right; white-space: nowrap; }

/* Wiedervorlagen im Kalender (Update 459) */
.crmcal-url { display: flex; gap: 8px; margin: 6px 0 10px; }
.crmcal-url input { flex: 1; min-width: 0; font-size: 12.5px; font-family: ui-monospace, Menlo, monospace; }
.crmcal-steps { margin: 0 0 10px; padding-left: 20px; font-size: 13.5px; line-height: 1.6; }
.crmcal-on { display: flex; flex-direction: column; gap: 3px; background: #f5f9f0; border: 1px solid #dfe9d2; border-radius: 10px; padding: 10px 12px; margin-bottom: 12px; font-size: 13.5px; }
.crmcal-on b { color: #3d5a1f; }
.crmcal-admin { margin-top: 14px; padding-top: 6px; border-top: 1px solid var(--line); }

/* Zwei-Faktor-Anmeldung (Update 459) */
.twofa-on { font-size: 12px; font-weight: 600; color: #3d5a1f; background: #eaf3df; border-radius: 10px; padding: 2px 9px; }
.twofa-steps { padding-left: 20px; margin: 0 0 10px; display: flex; flex-direction: column; gap: 12px; font-size: 14px; }
.twofa-qr { width: 190px; height: 190px; margin: 8px 0 6px; background: #fff; border: 1px solid var(--line); border-radius: 10px; padding: 6px; display: flex; align-items: center; justify-content: center; }
.twofa-qr svg { width: 100%; height: 100%; }
.twofa-secret { font-family: ui-monospace, Menlo, monospace; font-size: 13px; background: #f4f5f7; padding: 2px 6px; border-radius: 5px; user-select: all; }
.twofa-codes { border: 1px solid #f0d58a; background: #fffaf0; border-radius: 10px; padding: 12px 14px; margin-top: 12px; font-size: 13.5px; }
.twofa-code-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); gap: 6px; }
.twofa-code-grid code { font-family: ui-monospace, Menlo, monospace; font-size: 14px; background: #fff; border: 1px solid #eadfc4; border-radius: 6px; padding: 4px 8px; text-align: center; }
.twofa-done { background: #f5f9f0; border: 1px solid #dfe9d2; border-radius: 10px; padding: 10px 12px; font-size: 14px; }

/* ===================== Dunkelmodus (seit Update 460) =====================
   Die Farben rechnet js/dark.js im Browser um (alle Stylesheets + Farben an Elementen).
   Hier nur Ergänzungen, die sich nicht umrechnen lassen. */
html[data-theme="dark"]{ background:#15191f; }
html[data-theme="dark"] body{ background:#15191f; }
/* Eigenes Logo: dunkle Schrift hell, weißer Hintergrund verschwindet, Grün bleibt */
html[data-theme="dark"] :is(img.brand-logo, img.brand-logo-lg, img.kiosk-logo){ filter:invert(1) hue-rotate(180deg); mix-blend-mode:screen; }
/* Fremde Logos und Unterschriften (dunkel auf transparent): heller Untergrund */
html[data-theme="dark"] :is(img[class*="carrier-logo"], img.brand-logo-chip-img, img.brand-chip-logo, img.sign-prev, img.offer-sig-thumb){ background:#eef1f4 !important; border-radius:6px; }
/* Fotos nicht überstrahlen */
html[data-theme="dark"] :is(img:not(.brand-logo):not(.brand-logo-lg):not(.kiosk-logo), video){ filter:brightness(.92); }
/* Karte ohne Vektor-Darstellung (Rückfall auf OSM-Kacheln): dunkel einfärben */
html[data-theme="dark"] .leaflet-container:not(.portal-map-vector) .leaflet-tile-pane{ filter:invert(1) hue-rotate(180deg) brightness(.95) contrast(.9); }
html[data-theme="dark"] .leaflet-container img{ filter:none; }
html[data-theme="dark"] .leaflet-container{ background:#1b2028 !important; }
html[data-theme="dark"] ::selection{ background:rgba(102,156,52,.45); }
/* Darstellung im Nutzermenü */
.user-dropdown-theme{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 14px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin:4px 0; font-size:13px; color:var(--text-mute); }
.theme-seg{ display:inline-flex; background:var(--bg-alt, #f1f3ef); border-radius:8px; padding:2px; gap:2px; }
.theme-seg button{ border:0; background:transparent; font:inherit; font-size:12px; padding:4px 9px; border-radius:6px; cursor:pointer; color:var(--text); }
.theme-seg button.is-on{ background:#fff; box-shadow:0 1px 2px rgba(17,27,45,.12); font-weight:600; }

/* Handy & Tablet: Disposition und Abholer (Update 459) */
.semi-filter-toggle{ display:none; }
@media (max-width:760px){
  .semi-filter-toggle{ display:inline-flex; }
  body:not(.semi-show-filter) table.semi-tab tr.filter-row{ display:none !important; }
  table.semi-tab td.semi-actions .btn, table.semi-tab td .btn{ min-height:40px; padding:8px 14px !important; font-size:14px !important; }
  table.semi-tab td.semi-actions button.linklike{ min-width:40px; min-height:40px; }
  table.semi-tab input[type=checkbox]{ width:22px; height:22px; }
}
@media (min-width:761px) and (max-width:1180px){
  table.semi-tab td.semi-actions .btn{ min-height:36px; }
  table.semi-tab input[type=checkbox]{ width:20px; height:20px; }
}
.pickup-chip .pickup-chip-actions{ display:inline-flex; align-items:center; gap:2px; text-decoration:none !important; opacity:1 !important; }
@media (max-width:900px){
  .pickup-row{ flex-direction:column; }
  .pickup-row-time{ flex:none !important; display:flex; align-items:baseline; justify-content:space-between; border-right:0 !important; border-bottom:1px solid var(--line); padding:6px 12px !important; }
  .pickup-row-capacity{ margin-top:0 !important; }
  .pickup-row:has(.pickup-empty){ flex-direction:row; }
  .pickup-row:has(.pickup-empty) .pickup-row-time{ flex:1 1 auto !important; border-bottom:0; }
  .pickup-row:has(.pickup-empty) .pickup-row-entries{ flex:0 0 auto; padding:6px 12px; }
  .pickup-row-entries{ padding:8px 10px !important; }
  .pickup-chip{ padding:10px 12px !important; font-size:14px !important; border-radius:10px !important; }
  .pickup-chip-spacer{ display:none; }
  .pickup-chip-top{ row-gap:4px !important; }
  .pickup-chip-actions{ flex-basis:100%; justify-content:flex-end; gap:4px !important; border-top:1px dashed var(--line); padding-top:6px; margin-top:4px; }
  .pickup-chip-actions button{ min-width:42px; min-height:42px; display:inline-flex !important; align-items:center; justify-content:center; border-radius:10px; }
  .pickup-chip-actions button:active{ background:var(--bg-alt); }
  .pickup-chip input[type=checkbox]{ width:24px; height:24px; }
}
/* Tablet (641–1180 px): Kommissionierscheine als Karten in zwei Spalten statt breiter Tabelle */
@media (min-width:641px) and (max-width:1180px){
  .semi-scroll:has(table.semi-tab){ max-height:none !important; overflow:visible !important; border:0 !important; }
  .semi-scroll .table-scroll:has(> table.semi-tab){ overflow:visible !important; }
  table.semi-tab.cards-table{ display:block; width:100% !important; min-width:0 !important; border:none; background:none; }
  table.semi-tab.cards-table > thead{ display:block; }
  table.semi-tab.cards-table > tbody{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:10px; }
  table.semi-tab.cards-table tr{ display:block; background:#fff; border:1px solid var(--line); border-radius:12px; padding:10px 14px; box-shadow:var(--shadow-xs); }
  table.semi-tab.cards-table tr.kb-header{ display:none; }
  table.semi-tab.cards-table tr.kb-header:has(button){ display:flex; justify-content:flex-end; background:none; border:none; box-shadow:none; padding:0; margin:0 0 6px; }
  table.semi-tab.cards-table tr.kb-header > *{ display:none !important; }
  table.semi-tab.cards-table tr.kb-header > *:has(button){ display:flex !important; }
  table.semi-tab.cards-table th, table.semi-tab.cards-table td{ display:flex; align-items:center; justify-content:space-between; gap:12px; border:none !important; padding:5px 0 !important; text-align:right; position:static !important; width:auto !important; min-width:0 !important; max-width:none !important; box-shadow:none !important; background:none !important; white-space:normal !important; overflow-wrap:anywhere; font-size:14px !important; }
  table.semi-tab.cards-table td[data-label]::before{ content:attr(data-label); flex:0 0 auto; max-width:45%; text-align:left; font-size:11px; font-weight:600; letter-spacing:.3px; text-transform:uppercase; color:var(--text-mute); }
  table.semi-tab.cards-table td:not([data-label]){ justify-content:flex-start; text-align:left; flex-wrap:wrap; gap:8px; }
  table.semi-tab.cards-table td:empty{ display:none; }
  table.semi-tab.cards-table tr[style*="background"]{ border-color:#E8C48A; }
  table.semi-tab.cards-table tr.filter-row{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:8px 10px; background:var(--bg-alt); margin:0 0 10px; }
  table.semi-tab.cards-table tr.filter-row > *{ flex-direction:column; align-items:stretch; gap:2px; padding:0 !important; }
  table.semi-tab.cards-table tr.filter-row > *:not([data-label]), table.semi-tab.cards-table tr.filter-row > *:empty{ display:none !important; }
  table.semi-tab.cards-table td.semi-actions .btn{ min-height:38px; font-size:13.5px !important; padding:6px 12px !important; margin:0 !important; }
}
@media (min-width:641px) and (max-width:999px){
  table.semi-tab.cards-table > tbody{ grid-template-columns:minmax(0,1fr); }
}
@media (min-width:641px) and (max-width:1180px){
  table.semi-tab.cards-table td{ flex-wrap:wrap; }
  table.semi-tab.cards-table td > *{ min-width:0; }
}

/* Status & Ladezeiten, Abwanderung (Update 461) */
.ops-sum { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:0 0 8px; }
.ops-pill { font-size:12.5px; font-weight:600; padding:3px 10px; border-radius:12px; }
.ops-pill.is-ok { background:#eaf3df; color:#3d5a1f; } .ops-pill.is-warn { background:#fff3dc; color:#8a5a00; } .ops-pill.is-error { background:#fde4e8; color:#b0122f; }
.ops-area { margin-top:6px; }
.ops-row { display:flex; align-items:center; gap:12px; padding:9px 12px; border:1px solid var(--line); border-radius:10px; margin:0 0 6px; background:#fff; }
.ops-row-main { flex:1; min-width:0; display:flex; flex-direction:column; gap:1px; }
.ops-row-main span { font-size:12.5px; color:var(--text-mute); overflow-wrap:anywhere; }
.ops-dot { width:11px; height:11px; border-radius:50%; flex:0 0 auto; background:#669C34; }
.ops-row.is-warn .ops-dot { background:#e0a01e; } .ops-row.is-error .ops-dot { background:#F82249; } .ops-row.is-off .ops-dot { background:#c4c8cf; }
.ops-row.is-error { border-color:#f5b5c1; background:#fff7f8; }
.ops-state { font-size:12px; font-weight:600; color:var(--text-mute); white-space:nowrap; }
.ops-row.is-error .ops-state { color:#b0122f; } .ops-row.is-warn .ops-state { color:#8a5a00; }
.ops-perf td.num, .ops-perf th.num { text-align:right; white-space:nowrap; }
.ops-ms.is-slow { color:#b0122f; font-weight:700; }
.churn-lv { font-size:11.5px; font-weight:700; padding:2px 8px; border-radius:10px; }
.churn-lv.is-high { background:#fde4e8; color:#b0122f; } .churn-lv.is-mid { background:#fff3dc; color:#8a5a00; }
.digest-prev { background:#fff; border:1px solid var(--line); border-radius:10px; padding:14px 18px; }

/* Freigaben (Update 462) */
.appr-card { background:#fff; border:1px solid var(--line); border-radius:12px; padding:14px 16px; margin:0 0 10px; }
.appr-card.is-open { border-left:4px solid #e0a01e; }
.appr-card-head { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.appr-vals { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.appr-val { font-weight:700; font-size:15px; }
.appr-chip { font-size:11.5px; font-weight:700; padding:2px 9px; border-radius:10px; }
.appr-chip.is-open { background:#fff3dc; color:#8a5a00; } .appr-chip.is-ok { background:#eaf3df; color:#3d5a1f; } .appr-chip.is-no { background:#fde4e8; color:#b0122f; } .appr-chip.is-off { background:#eef0f3; color:#5b6474; }
.appr-reason { margin:8px 0 0; font-size:13.5px; white-space:pre-wrap; }
.appr-meta { font-size:12px; color:var(--text-mute); margin-top:6px; }
.appr-act { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:10px; }
.appr-act input[type=text] { flex:1 1 220px; max-width:360px; }
.appr-log summary { cursor:pointer; font-size:12.5px; color:var(--text-mute); }
.appr-log ul { margin:6px 0 0; padding-left:18px; font-size:12.5px; }

/* Reklamationen (Update 462) */
.claims-filter { display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin:0 0 12px; }
.claims-filter input[type=search] { flex:1 1 260px; max-width:420px; }
.claims-grid { display:grid; grid-template-columns:minmax(260px, 360px) 1fr; gap:14px; align-items:start; }
.claims-list { display:flex; flex-direction:column; gap:6px; }
.claims-item { text-align:left; background:#fff; border:1px solid var(--line); border-radius:10px; padding:10px 12px; cursor:pointer; font:inherit; color:inherit; display:flex; flex-direction:column; gap:2px; }
.claims-item.is-on { border-color:#669C34; box-shadow:0 0 0 2px rgba(102,156,52,.2); }
.claims-item small { color:var(--text-mute); }
.claims-item-top { display:flex; justify-content:space-between; gap:8px; }
.claim-st { font-size:11px; font-weight:700; padding:2px 8px; border-radius:10px; background:#eef0f3; color:#3a4558; white-space:nowrap; }
.claim-st.is-open { background:#fde4e8; color:#b0122f; } .claim-st.is-in_progress, .claim-st.is-waiting { background:#fff3dc; color:#8a5a00; } .claim-st.is-resolved { background:#eaf3df; color:#3d5a1f; }
.claim-head { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; margin-bottom:12px; }
.claim-facts { display:grid; grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); gap:8px 14px; background:var(--bg-alt); border-radius:10px; padding:10px 12px; margin-bottom:12px; }
.claim-facts small { display:block; font-size:11px; color:var(--text-mute); text-transform:uppercase; letter-spacing:.3px; }
.claim-row3 { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:10px; }
.claim-desc { white-space:pre-wrap; background:var(--bg-alt); border-radius:8px; padding:8px 10px; font-size:14px; }
.claim-photos { display:flex; flex-wrap:wrap; gap:8px; }
.claim-ph { width:110px; height:90px; border-radius:10px; overflow:hidden; border:1px solid var(--line); display:flex; align-items:center; justify-content:center; background:#fff; font-size:12px; text-align:center; padding:0; color:inherit; }
.claim-ph img { width:100%; height:100%; object-fit:cover; }
.claim-ph.is-add { border-style:dashed; cursor:pointer; color:#4F7C25; font-weight:600; }
.claim-credit { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.claim-cr { font-weight:600; font-size:13px; padding:4px 10px; border-radius:8px; background:#eef0f3; }
.claim-cr.is-requested { background:#fff3dc; color:#8a5a00; } .claim-cr.is-approved { background:#eaf3df; color:#3d5a1f; } .claim-cr.is-booked { background:#dbeafe; color:#1e40af; } .claim-cr.is-rejected { background:#fde4e8; color:#b0122f; }
.claim-log { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; font-size:13px; }
.claim-log li { display:flex; flex-direction:column; border-left:3px solid var(--line); padding-left:10px; }
.claim-log small { color:var(--text-mute); }
.claims-detail .acc-back { display:none; }
@media (max-width:900px) {
  .claims-grid { grid-template-columns:1fr; }
  .claims-grid.has-sel .claims-list { display:none; }
  .claims-grid:not(.has-sel) .claims-detail { display:none; }
  .claims-detail .acc-back { display:inline-block; margin-bottom:8px; }
  .claim-row3 { grid-template-columns:1fr; }
}

/* Speditions-Bewertung (Update 462) */
.crate-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(290px, 1fr)); gap:12px; }
.crate-card { border:1px solid var(--line); border-radius:12px; padding:12px 14px; background:#fff; }
.crate-head { display:flex; justify-content:space-between; align-items:center; }
.crate-head b { font-size:16px; }
.crate-score { font-size:20px; font-weight:800; min-width:48px; text-align:center; border-radius:10px; padding:2px 8px; }
.crate-score.is-good { background:#eaf3df; color:#3d5a1f; } .crate-score.is-mid { background:#fff3dc; color:#8a5a00; } .crate-score.is-bad { background:#fde4e8; color:#b0122f; } .crate-score.is-na { background:#eef0f3; color:#5b6474; }
.crate-kv { display:grid; grid-template-columns:auto 1fr; gap:4px 12px; margin:10px 0 0; font-size:13px; }
.crate-kv dt { color:var(--text-mute); } .crate-kv dd { margin:0; text-align:right; font-weight:600; } .crate-kv dd.is-bad { color:#b0122f; }

/* Kundenportal (öffentlich, Update 462) */
.cp-page { min-height:100vh; background:#F4F6F9; font-family:Poppins, Arial, sans-serif; color:#111B2D; }
.cp-top { background:#fff; border-bottom:1px solid #E5E8EE; padding:14px 20px; }
.cp-logo { height:32px; }
.cp-main { max-width:820px; margin:0 auto; padding:20px 16px 40px; }
.cp-hello h1 { margin:0 0 4px; font-size:24px; } .cp-hello p { margin:0 0 4px; color:#5E6878; }
.cp-main h2 { font-size:17px; margin:22px 0 10px; }
.cp-card { background:#fff; border:1px solid #E5E8EE; border-radius:14px; padding:14px 16px; margin:0 0 12px; }
.cp-card-head { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
.cp-card-head small { display:block; color:#5E6878; }
.cp-status { font-size:12px; font-weight:700; padding:3px 10px; border-radius:12px; background:#eef0f3; white-space:nowrap; }
.cp-card.is-shipped .cp-status { background:#dbeafe; color:#1e40af; } .cp-card.is-delivered .cp-status { background:#eaf3df; color:#3d5a1f; } .cp-card.is-ready .cp-status { background:#fff3dc; color:#8a5a00; }
.cp-steps { display:flex; list-style:none; padding:0; margin:12px 0; gap:4px; }
.cp-steps li { flex:1; display:flex; flex-direction:column; gap:4px; font-size:11px; color:#8a93a3; }
.cp-steps li i { height:5px; border-radius:3px; background:#E5E8EE; }
.cp-steps li.is-done { color:#3d5a1f; } .cp-steps li.is-done i { background:#669C34; }
.cp-kv { display:grid; grid-template-columns:auto 1fr; gap:4px 14px; margin:0; font-size:14px; }
.cp-kv dt { color:#5E6878; } .cp-kv dd { margin:0; font-weight:600; overflow-wrap:anywhere; }
.cp-kv a, .cp-contact a { color:#4F7C25; }
.cp-items { margin-top:8px; font-size:13px; } .cp-items summary { cursor:pointer; color:#5E6878; }
.cp-note { display:inline-block; margin-top:10px; padding:8px 14px; border-radius:10px; background:#4F7C25; color:#fff !important; text-decoration:none; font-weight:600; font-size:13.5px; }
.cp-empty, .cp-foot { color:#5E6878; font-size:13px; }
.cp-box { background:#fff; border-radius:14px; padding:24px; }
@media (max-width:520px) { .cp-steps span { display:none; } }

/* Lager & Bestand, Scan-Kommissionierung (Update 463) */
.stock-off { background:#fff7e6; border:1px solid #f0d58a; border-radius:10px; padding:10px 14px; margin:0 0 12px; font-size:13.5px; display:flex; align-items:center; flex-wrap:wrap; gap:4px; }
.stock-bar { display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin:0 0 10px; }
.stock-bar input[type=search] { flex:1 1 260px; max-width:440px; }
.stock-table td.num, .stock-table th.num { text-align:right; white-space:nowrap; }
.stock-table tr.is-low td { background:#fff7f8; }
.stock-loc { display:inline-block; font-size:12px; background:var(--bg-alt); border-radius:6px; padding:1px 7px; margin:1px 4px 1px 0; white-space:nowrap; }
.stock-loc.is-neg, .stock-neg { color:#b0122f; } .stock-pos { color:#3d5a1f; }
.stock-lowtag { display:inline-block; margin-left:6px; font-size:11px; font-weight:700; color:#b0122f; background:#fde4e8; border-radius:8px; padding:0 6px; }
.stock-act { white-space:nowrap; text-align:right; } .stock-act .btn { margin-right:6px; }
.app-header-number.is-warn b { color:#b0122f; }
.stock-locform { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:6px; } .stock-locform input { flex:1 1 160px; }
.stock-locs { display:grid; grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); gap:8px; }
.stock-locc { border:1px solid var(--line); border-radius:10px; padding:8px 10px; display:flex; flex-direction:column; gap:2px; background:#fff; }
.stock-locc small { color:var(--text-mute); font-size:12px; }
.scan-cam { position:relative; width:100%; max-width:560px; aspect-ratio:4/3; background:#111; border-radius:12px; overflow:hidden; margin:0 auto 8px; }
.scan-video { width:100%; height:100%; object-fit:cover; display:block; }
.scan-aim { position:absolute; left:12%; right:12%; top:38%; bottom:38%; border:2px solid rgba(102,156,52,.9); border-radius:8px; box-shadow:0 0 0 999px rgba(0,0,0,.25); pointer-events:none; }
.scan-cam-msg { position:absolute; left:0; right:0; bottom:8px; text-align:center; color:#fff; font-size:13px; padding:0 10px; }
.scanp-list { display:flex; flex-direction:column; gap:8px; }
.scanp-item { text-align:left; background:#fff; border:1px solid var(--line); border-radius:12px; padding:12px 14px; font:inherit; color:inherit; cursor:pointer; display:flex; flex-direction:column; gap:4px; }
.scanp-item small { color:var(--text-mute); }
.scanp-bar { height:6px; background:var(--bg-alt); border-radius:3px; overflow:hidden; } .scanp-bar i { display:block; height:100%; background:#669C34; }
.scanp-bar.is-big { height:10px; border-radius:5px; flex:1; }
.scanp-top { display:flex; align-items:center; gap:10px; margin-bottom:8px; } .scanp-title { flex:1; font-size:16px; }
.scanp-input { width:100%; font-size:18px !important; padding:12px 14px !important; margin:0 0 8px; }
.scanp-flash { min-height:0; border-radius:10px; font-weight:700; font-size:16px; transition:all .15s; }
.scanp-flash.is-ok { background:#eaf3df; color:#3d5a1f; padding:12px 14px; margin-bottom:8px; }
.scanp-flash.is-bad { background:#F82249; color:#fff; padding:16px 14px; margin-bottom:8px; font-size:18px; }
.scanp-pos { display:flex; flex-direction:column; gap:6px; }
.scanp-row { display:flex; align-items:center; gap:12px; background:#fff; border:1px solid var(--line); border-radius:12px; padding:10px 12px; }
.scanp-row.is-full { background:#f3f9ec; border-color:#cfe0bd; } .scanp-row.is-over { background:#fff7e6; border-color:#f0d58a; }
.scanp-cnt { min-width:64px; text-align:center; } .scanp-cnt b { font-size:22px; } .scanp-cnt small { display:block; color:var(--text-mute); }
.scanp-main { flex:1; min-width:0; display:flex; flex-direction:column; } .scanp-main span { font-size:13px; } .scanp-main small { color:var(--text-mute); }
.scanp-btns { display:flex; gap:6px; } .scanp-btns button { width:44px; height:44px; border-radius:10px; border:1px solid var(--line); background:#fff; font-size:20px; cursor:pointer; }
.scanp-sum { display:flex; align-items:center; gap:10px; margin:10px 0; }

/* Tourenplanung (Update 463) */
.tour-head { display:flex; gap:10px; flex-wrap:wrap; align-items:flex-end; } .tour-head .field { flex:1 1 140px; }
.tour-cands { margin-top:6px; }
.tour-cand { display:flex !important; gap:10px; align-items:flex-start; padding:8px 10px; border:1px solid var(--line); border-radius:10px; margin:0 0 6px; background:#fff; cursor:pointer; }
.tour-cand-main { display:flex; flex-direction:column; gap:1px; } .tour-cand-main small { font-size:12.5px; color:var(--text-mute); }
.tour-sum { display:grid; grid-template-columns:repeat(auto-fit, minmax(140px, 1fr)); gap:8px; margin:14px 0 10px; }
.tour-sum > div { border:1px solid var(--line); border-radius:10px; padding:8px 12px; display:flex; flex-direction:column; } .tour-sum b { font-size:18px; } .tour-sum span { font-size:12px; color:var(--text-mute); }
.tour-map { height:360px; border-radius:12px; overflow:hidden; border:1px solid var(--line); margin-bottom:10px; }
.tour-stops { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; }
.tour-stops li { display:flex; gap:10px; align-items:flex-start; border:1px solid var(--line); border-radius:10px; padding:8px 10px; background:#fff; }
.tour-stops li div { display:flex; flex-direction:column; } .tour-stops small { font-size:12.5px; color:var(--text-mute); }
.tour-n { width:26px; height:26px; border-radius:50%; background:#4F7C25; color:#fff; font-weight:700; display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; font-size:13px; }
.tour-stops li.is-depot .tour-n { background:#111B2D; }
.tour-pin span { width:26px; height:26px; border-radius:50%; background:#4F7C25; color:#fff; font-weight:700; font-size:12px; display:flex; align-items:center; justify-content:center; border:2px solid #fff; box-shadow:0 1px 4px rgba(0,0,0,.35); }
.tour-pin.is-depot span { background:#111B2D; }
.tour-actions { display:flex; gap:8px; flex-wrap:wrap; margin-top:12px; align-items:center; } .tour-actions input { flex:1 1 140px; }

/* Besuchsberichte (Update 464) */
.visit-page { max-width:640px; margin:0 auto; }
.visit-pick { display:flex; flex-direction:column; gap:8px; }
.visit-search { width:100%; font-size:16px !important; padding:12px 14px !important; }
.visit-here { min-height:16px; }
.visit-h { margin:12px 0 4px; font-size:13px; text-transform:uppercase; letter-spacing:.04em; color:var(--text-mute); }
.visit-list { display:flex; flex-direction:column; gap:6px; }
.visit-row { display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; text-align:left; padding:12px 14px; border:1px solid var(--line); border-radius:12px; background:#fff; cursor:pointer; font:inherit; color:inherit; min-height:56px; }
.visit-row:hover { border-color:#669C34; }
.visit-row > div:first-child { display:flex; flex-direction:column; min-width:0; } .visit-row small { color:var(--text-mute); font-size:12.5px; }
.visit-row-meta { display:flex; flex-direction:column; align-items:flex-end; flex-shrink:0; }
.visit-km { font-weight:700; color:#4F7C25; }
.visit-back { margin-bottom:8px; display:inline-block; }
.visit-form { display:flex; flex-direction:column; gap:4px; }
.visit-cust { display:flex; flex-direction:column; margin-bottom:6px; } .visit-cust b { font-size:17px; } .visit-cust small { color:var(--text-mute); }
.visit-text { width:100%; font-size:15px; line-height:1.45; }
.visit-tools { display:flex; gap:8px; margin-top:8px; flex-wrap:wrap; }
.visit-tools .btn { display:inline-flex; align-items:center; gap:6px; min-height:44px; padding:8px 16px; }
.visit-mic.is-on { background:#F82249 !important; border-color:#F82249 !important; color:#fff !important; }
.visit-mic-hint { min-height:16px; margin-top:4px; }
.visit-thumbs { display:flex; flex-wrap:wrap; gap:8px; }
.visit-thumb { position:relative; width:84px; height:84px; border-radius:10px; overflow:hidden; border:1px solid var(--line); }
.visit-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.visit-thumb-x { position:absolute; top:3px; right:3px; width:26px; height:26px; border-radius:50%; border:none; background:rgba(17,27,45,.75); color:#fff; font-size:16px; line-height:1; cursor:pointer; }
.visit-check { display:flex !important; align-items:center; gap:8px; }
.visit-loc { font-size:13px; display:flex; align-items:center; gap:4px; min-height:18px; }
.visit-follow { display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.visit-save { width:100%; min-height:50px; font-size:16px; margin-top:10px; }
.visit-draft { background:#f3f9ec; border-radius:8px; padding:6px 10px; }
.visit-done { text-align:center; } .visit-done .actions-row { justify-content:center; gap:10px; }
.visit-act-photos { display:flex; gap:6px; flex-wrap:wrap; margin-top:6px; }
.visit-act-photos img { width:72px; height:72px; object-fit:cover; border-radius:8px; border:1px solid var(--line); display:block; }
.visit-act-loc { margin-top:4px; }

/* Team-Kalender: Feiertage und Engpässe (Update 464) */
.team-cal-nav { display:flex; align-items:center; gap:12px; margin-bottom:10px; flex-wrap:wrap; }
.team-cal-dept { max-width:220px; }
.team-cal-cell-weekend { background:#f7f8fa; }
.team-cal-cell-holiday { background:#eef4e6; border-color:#cfe0bd; }
.team-cal-hol { font-size:10.5px; font-weight:600; color:#4F7C25; line-height:1.2; }
.team-cal-cell-conflict { border-color:#F82249; box-shadow:0 0 0 1px #F82249 inset; }
.team-cal-daynum { display:flex; align-items:center; justify-content:space-between; }
.team-cal-warn { display:inline-flex; align-items:center; justify-content:center; width:16px; height:16px; border-radius:50%; background:#F82249; color:#fff; font-size:11px; font-weight:800; }
.team-cal-legend { display:flex; gap:16px; flex-wrap:wrap; margin-top:8px; }
.team-cal-legend span { display:inline-flex; align-items:center; gap:6px; }
.team-cal-legend span::before { content:''; width:12px; height:12px; border-radius:3px; }
.team-cal-legend .lg-hol::before { background:#eef4e6; border:1px solid #cfe0bd; }
.team-cal-legend .lg-conf::before { border:2px solid #F82249; }
.team-cal-conf { margin-top:12px; border:1px solid #f5c2cc; background:#fff6f8; border-radius:12px; padding:10px 14px; }
.team-cal-conf h4 { margin:0 0 6px; }
.team-cal-conf-row { padding:6px 0; border-top:1px solid #f5d9df; font-size:13.5px; } .team-cal-conf-row:first-of-type { border-top:none; }
.vac-conflict { margin-top:4px; font-size:12px; color:#b0102f; font-weight:600; }

/* Unterweisungen (Update 464) */
.tr-card { border:1px solid var(--line); border-radius:12px; padding:0; margin:0 0 10px; background:#fff; }
.tr-card > summary { display:flex; align-items:center; gap:10px; flex-wrap:wrap; padding:12px 14px; cursor:pointer; list-style:none; }
.tr-card > summary::-webkit-details-marker { display:none; }
.tr-card > summary b { flex:1 1 200px; font-size:15px; }
.tr-card[open] > summary { border-bottom:1px solid var(--line); }
.tr-card > :not(summary) { margin-left:14px; margin-right:14px; }
.tr-card.is-expired, .tr-card.is-missing { border-color:#f5c2cc; }
.tr-content { white-space:pre-wrap; font-size:14px; line-height:1.55; margin-top:12px; margin-bottom:10px; }
.tr-links { display:flex; gap:14px; margin-bottom:8px; }
.tr-note { background:#f3f6fa; border-radius:8px; padding:8px 12px; font-size:13px; margin-bottom:12px; }
.tr-confirm { display:flex; gap:12px; align-items:center; flex-wrap:wrap; padding:10px 0 14px; }
.tr-confirm label { flex:1 1 260px; display:flex; gap:8px; align-items:flex-start; font-size:13.5px; }
.tr-card .hint { margin-bottom:10px; }
.tr-pill { display:inline-block; font-size:12px; font-weight:600; padding:2px 9px; border-radius:999px; white-space:nowrap; }
.tr-pill.is-ok { background:#eaf3df; color:#3d5a1f; }
.tr-pill.is-due { background:#fff3d6; color:#8a5a12; }
.tr-pill.is-expired { background:#F82249; color:#fff; }
.tr-pill.is-missing { background:#fde4e9; color:#b0102f; }
.tr-admin-head { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.tr-admin-head h2 { margin:0; }
.tr-remind { display:flex; gap:10px; align-items:flex-start; margin:12px 0; padding:10px 12px; border-radius:10px; background:#f3f9ec; }
.tr-remind.is-off { background:#fff7e6; }
.tr-remind span { display:block; font-size:13.5px; } .tr-remind small { color:var(--text-mute); }
.tr-types tr.is-off td { color:var(--text-mute); }
.tr-filter { display:flex; align-items:center; gap:6px; margin:6px 0; }
.tr-matrix td, .tr-matrix th { white-space:nowrap; }
.tr-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(200px, 1fr)); gap:10px; }
.tr-chk { display:flex !important; align-items:center; gap:6px; font-weight:400 !important; font-size:13.5px; }
.tr-chks { display:grid; grid-template-columns:repeat(auto-fill, minmax(200px, 1fr)); gap:4px 12px; max-height:220px; overflow:auto; padding:6px 0; }
.tr-chk.is-other { opacity:.7; }
.tr-assign { display:flex; flex-direction:column; gap:8px; margin-top:6px; }
.visit-check input, .tr-chk input, .tr-confirm input, .tr-remind input { width:17px !important; height:17px !important; flex:0 0 17px; margin:2px 0 0; min-height:0; padding:0 !important; }
.tr-head-btns { display:flex; gap:8px; flex-wrap:wrap; }
.visit-check { font-weight:600; }

/* Push (Update 465) */
.push-row { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.push-on { font-weight:700; color:#4F7C25; }
.push-msg { min-height:16px; margin-top:6px; }
.push-prefs { display:flex; flex-direction:column; gap:6px; margin-top:10px; }
.push-chk { display:flex !important; align-items:center; gap:8px; font-size:13.5px; }
.push-chk input { width:17px !important; height:17px !important; flex:0 0 17px; padding:0 !important; }
.push-devices { list-style:none; margin:0; padding:0; } .push-devices li { display:flex; justify-content:space-between; gap:10px; padding:6px 0; border-top:1px solid var(--line); font-size:13.5px; }

/* Frachtrechnungen (Update 465) */
.fr-save { margin-bottom:12px; }
.fr-tiles { display:grid; grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); gap:10px; }
.fr-tile { border:1px solid var(--line); border-radius:12px; padding:10px 14px; background:#fff; display:flex; flex-direction:column; }
.fr-tile b { font-size:19px; } .fr-tile small { color:var(--text-mute); font-size:12px; }
.fr-tile.is-red b { color:#c0392b; } .fr-tile.is-green b { color:#4F7C25; } .fr-tile.is-amber b { color:#8a5a12; }
.fr-by { margin-top:6px; }
.fr-dms { margin-top:10px; } .fr-dms h4 { margin:0 0 6px; }
.fr-dms-row { display:flex; justify-content:space-between; gap:10px; align-items:center; flex-wrap:wrap; padding:6px 10px; border:1px solid var(--line); border-radius:10px; margin-bottom:6px; background:#fff; font-size:13.5px; }

/* Betriebsmittel (Update 465) */
.eq-top { display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:10px; }
.eq-top .tabs { margin:0; }
.eq-warn { background:#fff6f8; border:1px solid #f5c2cc; border-radius:10px; padding:8px 12px; margin-bottom:10px; font-size:13.5px; }
.eq-filter { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:10px; } .eq-filter input { flex:1 1 260px; } .eq-filter select { flex:0 0 auto; width:auto; }
.eq-table { width:100%; min-width:720px; } .eq-table tr.is-off td { color:var(--text-mute); }
.eq-small { padding:4px 10px !important; font-size:12px !important; }
.eq-leave { color:#b0102f; font-weight:600; }
.eq-check-row { display:grid; grid-template-columns:2fr 1fr 1fr 1fr auto; gap:8px; align-items:end; padding:8px 0; border-bottom:1px solid var(--line); }
.eq-check-row .field { margin:0; }
@media (max-width:700px) { .eq-check-row { grid-template-columns:1fr 1fr; } }
.eq-checks { display:flex; flex-direction:column; gap:6px; margin-bottom:10px; } .eq-checks > .btn { align-self:flex-start; margin-top:6px; }
.eq-kv { display:grid; grid-template-columns:140px 1fr; gap:4px 12px; margin:0 0 10px; font-size:14px; } .eq-kv dt { color:var(--text-mute); } .eq-kv dd { margin:0; }
.eq-notes { white-space:pre-wrap; background:#f7f8fa; border-radius:8px; padding:8px 12px; font-size:13.5px; }
.eq-check { display:flex; align-items:center; gap:10px; flex-wrap:wrap; padding:8px 0; border-top:1px solid var(--line); } .eq-check > div { flex:1 1 220px; }
.eq-hist { list-style:none; margin:0; padding:0; max-height:220px; overflow:auto; font-size:13px; } .eq-hist li { padding:3px 0; }
.eq-mine { display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; padding:10px 0; border-top:1px solid var(--line); }

/* Vertrieb (Update 466) */
.of-fu { display:flex; flex-direction:column; gap:2px; align-items:flex-start; } .of-fu-late { color:#b0102f; font-weight:600; }
.of-price-lbl { flex-basis:100%; margin-top:-4px; color:#4F7C25; font-weight:600; }
.cp-new { display:grid; grid-template-columns:2fr 1fr 1fr 1.5fr auto; gap:8px; align-items:end; } .cp-new .field { margin:0; }
@media (max-width:760px) { .cp-new { grid-template-columns:1fr 1fr; } }
.tier-row { display:flex; align-items:center; gap:4px; margin:2px 0; font-size:13px; }
.goal-widget { margin-bottom:16px; }
.goal-head { display:flex; justify-content:space-between; align-items:center; } .goal-head h2 { margin:0 0 8px; }
.goal-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(240px, 1fr)); gap:16px; }
.goal-lbl { display:flex; justify-content:space-between; font-size:13px; font-weight:600; margin-bottom:4px; } .goal-lbl b { font-size:16px; }
.goal-bar { position:relative; height:10px; border-radius:5px; background:#eef1f5; overflow:visible; margin-bottom:4px; }
.goal-bar i { position:absolute; left:0; top:0; bottom:0; border-radius:5px; background:#669C34; } .goal-bar i.is-behind { background:#e0a21b; }
.goal-bar b { position:absolute; top:-3px; bottom:-3px; width:2px; background:#111B2D; }
.goal-edit { display:grid; grid-template-columns:repeat(auto-fill, minmax(200px, 1fr)); gap:8px; } .goal-edit .field { margin:0; display:flex; flex-direction:column; gap:4px; } .goal-edit span { font-size:13px; font-weight:600; }
.bc-top { margin-bottom:10px; } .bc-top .btn { display:inline-flex; align-items:center; gap:6px; min-height:44px; }
.bc-img { max-width:100%; max-height:220px; border-radius:10px; border:1px solid var(--line); display:block; margin-bottom:10px; }
.bc-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:8px; } .bc-grid .field { margin:0; }
.bc-companyName, .bc-contactPerson, .bc-email, .bc-website { grid-column:span 2; } .bc-streetName { grid-column:span 2; }
@media (max-width:600px) { .bc-grid { grid-template-columns:1fr 1fr; } }
.visit-card-btn { align-self:flex-start; display:inline-flex; align-items:center; gap:6px; }

/* Einkauf / Wareneingang (Update 467) */
.po-urgent td { background:#fff6f8; }
.po-rows { margin-bottom:10px; } .po-rows .btn { margin-top:6px; }
.po-log { margin-top:10px; font-size:13px; } .po-log ul { margin:6px 0; padding-left:18px; }
.gr-scan { display:flex; gap:8px; align-items:flex-start; } .gr-scan .scanp-input { flex:1; }
.gr-list { display:flex; flex-direction:column; gap:6px; margin-top:8px; }
.gr-list .scanp-row input { width:80px; }

/* Fahreransicht (Update 467) */
.drv-page { max-width:760px; margin:0 auto; }
.drv-day { margin-bottom:10px; } .drv-day input { max-width:200px; }
.drv-head { display:flex; flex-wrap:wrap; gap:6px 14px; align-items:baseline; margin:10px 0; font-size:14px; } .drv-head b { font-size:17px; }
.drv-stop { border:1px solid var(--line); border-radius:14px; padding:12px 14px; margin-bottom:10px; background:#fff; }
.drv-stop.is-next { border-color:#669C34; box-shadow:0 0 0 2px #669C34 inset; }
.drv-stop.is-done { opacity:.7; background:#f3f9ec; } .drv-stop.is-problem { background:#fff6f8; border-color:#f5c2cc; }
.drv-stop-head { display:flex; gap:10px; align-items:flex-start; } .drv-stop-head > div { flex:1; display:flex; flex-direction:column; } .drv-stop-head small { color:var(--text-mute); }
.drv-eta { font-weight:800; font-size:16px; }
.drv-note { background:#f7f8fa; border-radius:8px; padding:6px 10px; margin:6px 0; font-size:13px; }
.drv-acts { display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; align-items:center; } .drv-acts .btn { min-height:44px; display:inline-flex; align-items:center; }
.drv-problem { color:#b0102f !important; }
.drv-pod { font-size:13px; font-weight:600; color:#3d5a1f; }
.drv-sig { width:100%; height:180px; border:1px dashed #9aa3b2; border-radius:10px; background:#fff; touch-action:none; display:block; }
.drv-sig-acts { display:flex; justify-content:space-between; align-items:center; margin-top:4px; flex-wrap:wrap; gap:6px; }
.drv-photo { display:flex; gap:10px; align-items:center; margin:8px 0; } .drv-prev { max-height:90px; border-radius:8px; border:1px solid var(--line); }
.drv-save { width:100%; min-height:50px; font-size:16px; margin-top:8px; }
.drv-acts a.btn { text-decoration:none; }

/* Tagesbriefing, Neu im Portal, Nutzung, Rücksicherungstest, Anfrage→Angebot (Update 468) */
.brief { margin-bottom:16px; }
.brief-head { display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; margin-bottom:10px; } .brief-head h2 { margin:0; }
.brief-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:10px; }
.brief-item { text-align:left; border:1px solid var(--line); border-radius:12px; padding:10px 12px; background:#fff; cursor:pointer; font:inherit; color:inherit; }
.brief-item:hover { border-color:#669C34; }
.brief-item.is-warn { border-left:4px solid #e0a21b; }
.brief-top { display:flex; align-items:baseline; gap:8px; } .brief-top b { font-size:22px; } .brief-top span { font-weight:600; font-size:13.5px; }
.brief-item ul { margin:6px 0 0; padding-left:16px; font-size:12.5px; color:var(--text-mute); } .brief-item li { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.wn-block h3 { font-size:15px; margin:12px 0 4px; } .wn-block ul { margin:0; padding-left:18px; font-size:14px; } .wn-block li { margin:3px 0; }
.usage-bar { height:8px; background:#eef1f5; border-radius:4px; overflow:hidden; } .usage-bar i { display:block; height:100%; background:#669C34; }
.usage-acts { display:flex; flex-wrap:wrap; gap:6px 14px; font-size:12.5px; margin-top:6px; }
.rt-panel { margin-top:14px; } .rt-last { padding:8px 12px; border-radius:10px; margin-bottom:10px; } .rt-last.is-ok { background:#f3f9ec; } .rt-last.is-bad { background:#fff6f8; color:#b0102f; }
.oft-entry { display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin:-4px 0 12px; }
.oft-cust { display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin:8px 0; }
.oft-unknown { background:#fff7e6; border-radius:8px; padding:8px 12px; margin-top:8px; font-size:13px; }

/* Finanzen (Update 469) */
.fin-late { color:#b0102f; font-weight:600; } .fin-soon { color:#8a5a12; font-weight:700; }
.fin-assign { display:inline-flex; gap:8px; align-items:center; flex-wrap:wrap; } .fin-assign select, .fin-assign input[type=date], .fin-assign input[type=number] { width:auto; }
.fin-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:8px; } .fin-grid .field { margin:0; display:flex; flex-direction:column; gap:4px; } .fin-grid span { font-size:12.5px; font-weight:600; }
.fin-ar-sum { display:grid; grid-template-columns:repeat(3, 1fr); gap:10px; margin-bottom:12px; } .fin-ar-sum > div { border:1px solid var(--line); border-radius:10px; padding:8px 12px; display:flex; flex-direction:column; } .fin-ar-sum b { font-size:18px; } .fin-ar-sum small { color:var(--text-mute); }
.fin-ar-sum.is-warn > div { border-color:#f5c2cc; background:#fff6f8; }
.fin-badge { display:inline-block; font-size:12px; font-weight:600; padding:3px 10px; border-radius:999px; background:#fff3d6; color:#8a5a12; cursor:pointer; }
.fin-badge.is-warn { background:#F82249; color:#fff; }
.of-credit { margin:-4px 0 10px; }
.credit-warn { font-size:10.5px; font-weight:700; color:#b0102f; }
.fin-com { border-top:1px solid var(--line); padding-top:10px; margin-top:10px; }

/* Vertrieb: Nachbestellen, Postfach-Anfragen, Zufriedenheit, Preisliste (Update 470) */
.cp-actions { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.cp-reorder-btn { margin-top:10px; padding:8px 14px; border-radius:10px; background:#fff; border:1.5px solid #4F7C25; color:#3d5a1f; font:inherit; font-weight:600; font-size:13.5px; cursor:pointer; }
.cp-reorder-btn:focus-visible, .cp-reorder-send:focus-visible { outline:3px solid #111B2D; outline-offset:2px; }
.cp-reorder { margin-top:12px; padding:12px; border-radius:12px; background:#F4F7F0; display:flex; flex-direction:column; gap:8px; font-size:14px; }
.cp-reorder p { margin:0; }
.cp-reorder table { width:100%; border-collapse:collapse; }
.cp-reorder td { padding:4px 0; border-bottom:1px solid #E1E7D8; vertical-align:middle; }
.cp-reorder td small { color:#5E6878; }
.cp-reorder td:last-child { width:92px; text-align:right; }
.cp-reorder input[type=number] { width:80px; padding:6px 8px; border:1px solid #C9D2BE; border-radius:8px; font:inherit; text-align:right; }
.cp-reorder textarea, .cp-reorder input[type=email] { width:100%; box-sizing:border-box; padding:8px 10px; border:1px solid #C9D2BE; border-radius:8px; font:inherit; }
.cp-reorder-send { align-self:flex-start; padding:9px 18px; border:0; border-radius:10px; background:#4F7C25; color:#fff; font:inherit; font-weight:600; cursor:pointer; }
.cp-reorder-send:disabled { opacity:.6; }
.cp-ok { color:#3d5a1f; font-weight:600; } .cp-err { color:#B0102E; font-size:13px; }
.minq-item { border:1px solid var(--border, #E5E8EE); border-radius:12px; padding:12px 14px; margin:0 0 10px; }
.minq-item.is-done { opacity:.7; }
.minq-head { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.minq-subj { font-weight:600; margin:4px 0 2px; }
.minq-prev { white-space:pre-line; max-height:4.6em; overflow:hidden; }
.minq-meta { font-size:12.5px; margin:6px 0; color:#4F7C25; }
.minq-settings { margin-top:14px; border-top:1px solid var(--border, #E5E8EE); padding-top:10px; }
.minq-settings summary { cursor:pointer; font-weight:600; }
.minq-settings label { display:block; margin:6px 0; }
.sm-stars { color:#669C34; letter-spacing:1px; white-space:nowrap; }
.sm-kpis { display:flex; gap:12px; flex-wrap:wrap; margin:0 0 14px; }
.sm-kpi { flex:1 1 160px; border:1px solid var(--border, #E5E8EE); border-radius:12px; padding:12px 14px; display:flex; flex-direction:column; gap:2px; }
.sm-kpi b { font-size:24px; } .sm-kpi > span:last-child { color:var(--muted, #5E6878); font-size:13px; }
.sm-dist { max-width:520px; margin:0 0 16px; }
.sm-dist-row { display:grid; grid-template-columns:42px 1fr 40px; gap:8px; align-items:center; font-size:13px; margin:3px 0; }
.sm-dist-row i { display:block; height:10px; background:var(--soft, #EEF1F4); border-radius:5px; overflow:hidden; }
.sm-dist-row em { display:block; height:100%; background:#669C34; border-radius:5px; }
.sm-table h3 { margin:6px 0; font-size:15px; }
.sm-recent { display:flex; flex-direction:column; gap:6px; }
.sm-rec { padding:8px 12px; border-radius:10px; background:var(--soft, #F4F6F8); font-size:13.5px; }
.sm-rec.is-low { border-left:3px solid #F82249; }

/* Logistik: Speditions-Empfehlung, Lieferzeit, CO2, Offline (Update 471) */
.creco { border:1px solid var(--border, #E5E8EE); border-radius:12px; padding:10px 12px; margin:0 0 14px; background:var(--soft, #F7F9F5); }
.creco-head { display:flex; gap:10px; align-items:baseline; flex-wrap:wrap; margin-bottom:6px; }
.creco-table { width:100%; font-size:13px; }
.creco-table tr.is-best td { background:rgba(102,156,52,.10); }
.creco-table td.num { text-align:right; white-space:nowrap; }
.btn.btn-sm { padding:4px 10px; font-size:12.5px; min-height:0; }
.offer-promise-box { display:flex; flex-direction:column; gap:6px; margin:10px 0 0; padding:10px 12px; border:1px solid var(--border, #E5E8EE); border-radius:12px; }
.offer-promise-box .linklike { align-self:flex-start; }
.offer-promise { text-align:center; margin-top:8px; font-weight:600; color:#3d5a1f; font-size:13.5px; }
.co2-bars { display:grid; grid-template-columns:repeat(12, 1fr); gap:6px; align-items:end; height:150px; margin:0 0 16px; max-width:760px; }
.co2-bar { display:flex; flex-direction:column; align-items:center; justify-content:flex-end; height:100%; gap:4px; font-size:11px; color:var(--muted, #5E6878); }
.co2-bar i { display:block; width:100%; background:#669C34; border-radius:4px 4px 0 0; }
#offline-bar { position:fixed; left:50%; bottom:14px; transform:translateX(-50%); z-index:9000; background:#111B2D; color:#fff; border-radius:12px; padding:9px 14px; font-size:13.5px; display:flex; gap:10px; align-items:center; box-shadow:0 4px 16px rgba(17,27,45,.25); max-width:calc(100% - 32px); flex-wrap:wrap; }
#offline-bar.is-off { background:#5E3A00; }
#offline-bar button { background:#fff; color:#111B2D; border:0; border-radius:8px; padding:4px 10px; font:inherit; font-weight:600; cursor:pointer; }
#offline-bar button:focus-visible { outline:3px solid #669C34; outline-offset:2px; }
.offline-note { background:#fff7e6; border:1px solid #f0d58a; border-radius:10px; padding:8px 12px; margin:0 0 10px; font-size:13.5px; color:#5E3A00; }
.offline-toggle { margin:0 0 10px; font-size:13.5px; }
.drv-day { display:flex; gap:14px; align-items:center; flex-wrap:wrap; }
.drv-day .offline-toggle { margin:0; }

/* Barrierefreiheit: Kontraste nach WCAG 2.1 AA (Update 472) */
.sidebar-group-label{color:#A3AAB5 !important;}
.sidebar-version, .sidebar .hint{color:#8C94A1 !important; opacity:1 !important;}
.sidebar-item.active{background:#4F7C25 !important;}
body .app-header-number.is-zero{opacity:1;}
body .app-header-number.is-zero > b, body .app-header-number.is-zero > span{color:#5E6878 !important;}
.prio-badge b{color:#3D4654 !important;}
.pickup-row-capacity, .home-tile-sub{color:#5E6878 !important; opacity:1 !important;}
.app-header-number.highlight > span{color:#3D4654 !important;}
span[title^="Kundenscore"] small{color:#4A5361 !important; opacity:1 !important;}
/* Fokus immer sichtbar */
:focus-visible{outline:3px solid #669C34; outline-offset:2px;}
.sidebar :focus-visible{outline-color:#C9EFA2;}
/* Einstellungen Barrierefreiheit (Profil) */
html.a11y-font-112 body{zoom:1.12;} html.a11y-font-125 body{zoom:1.25;}
html.a11y-contrast{--text-mute:#3D4654;}
html.a11y-contrast .hint, html.a11y-contrast .subtitle, html.a11y-contrast small{color:#3D4654 !important;}
html.a11y-contrast .btn.secondary, html.a11y-contrast input, html.a11y-contrast select, html.a11y-contrast textarea{border-color:#5E6878 !important;}
html.a11y-contrast a{text-decoration:underline;}
html.a11y-motion *, html.a11y-motion *::before, html.a11y-motion *::after{animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important;}
html.a11y-links .app-main a{text-decoration:underline;}
.sr-only{position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;}

/* Spesen, Datenschutz, Rechte-Prüfung, Greenie-Auswertungen und Sprache (Update 472) */
.exp-table td.num{text-align:right; white-space:nowrap;}
.exp-table tr.is-rejected td{background:rgba(248,34,73,.05);}
.exp-reject{color:#B0102E; font-size:12.5px; margin-top:2px;}
.exp-missing{color:#B0102E; font-weight:600; font-size:12.5px;}
.exp-rc{margin-right:6px; font-size:12.5px; color:#3D5A1F; font-weight:600;}
.exp-st{display:inline-block; padding:2px 8px; border-radius:999px; font-size:12px; font-weight:600; background:#EEF1F4; color:#3D4654;}
.exp-st.is-submitted{background:#FFF4D6; color:#6B5000;} .exp-st.is-approved{background:#E6F0DC; color:#3D5A1F;} .exp-st.is-paid{background:#111B2D; color:#fff;} .exp-st.is-rejected{background:#FDE3E8; color:#9B0C27;}
.exp-form label:not(.checkbox-row){display:block; margin:0 0 10px;}
.exp-form label:not(.checkbox-row) > input, .exp-form label:not(.checkbox-row) > select, .exp-form label:not(.checkbox-row) > textarea{display:block; width:100%; margin-top:4px;}
.exp-cut .checkbox-row{display:flex; align-items:center; gap:6px; margin:4px 0;}
.exp-recbox{border:1px dashed #C9D2BE; border-radius:12px; padding:10px 12px; margin:0 0 12px;}
.exp-receipts{display:flex; gap:8px; flex-wrap:wrap; margin-top:8px;}
.exp-rc-chip{display:inline-flex; align-items:center; gap:6px; background:#F4F7F0; border-radius:10px; padding:4px 6px; font-size:12.5px;}
.exp-rc-chip img{width:56px; height:56px; object-fit:cover; border-radius:6px;}
.exp-rc-chip button{border:0; background:transparent; font-size:16px; cursor:pointer; color:#5E6878;}
.exp-cut{border:1px solid var(--border, #E5E8EE); border-radius:10px; padding:6px 12px 8px; margin:0 0 10px;}
.exp-cut legend{font-size:13px; color:#5E6878; padding:0 4px;}
.exp-calc{font-weight:600; color:#3D5A1F; margin:0 0 10px;}
.cmp-list{margin:6px 0; padding-left:18px;} .cmp-list li{margin:3px 0;} .cmp-list li .linklike{margin-left:8px;}
.acc-flag{display:inline-block; font-size:11.5px; padding:1px 7px; border-radius:999px; background:#EEF1F4; color:#3D4654; margin:3px 4px 0 0;}
.acc-flag.is-warn{background:#FFF4D6; color:#6B5000;}
.acc-rv-table td{vertical-align:top;} .acc-rv-table tr.is-disabled td{opacity:.6;}
.acc-rv-dec .btn[aria-pressed="true"]{box-shadow:0 0 0 2px #111B2D inset;}
.greenie-widget{background:#fff; border:1px solid var(--border, #E5E8EE); border-radius:12px; padding:10px 12px; margin:6px 0; font-size:13px; color:#111B2D;}
.greenie-widget > b{display:block; margin-bottom:6px;}
.gw-chart{width:100%; height:auto; color:#5E6878; margin:2px 0 6px;}
.gw-table{max-height:260px; overflow:auto;}
.gw-table table{width:100%; font-size:12.5px;} .gw-table td.num, .gw-table th.num{text-align:right; white-space:nowrap;}
.gw-table tr.gw-sum td{font-weight:700; border-top:2px solid #111B2D;}
.greenie-mic{flex:0 0 auto; width:40px; height:40px; border-radius:10px; border:1px solid var(--border, #D5DAE1); background:#fff; color:#111B2D; display:inline-flex; align-items:center; justify-content:center; cursor:pointer;}
.greenie-mic.is-rec{background:#F82249; border-color:#F82249; color:#fff; animation:greeniePulse 1.2s infinite;}
@keyframes greeniePulse{0%,100%{box-shadow:0 0 0 0 rgba(248,34,73,.5);} 50%{box-shadow:0 0 0 6px rgba(248,34,73,0);}}
.greenie-speak{display:inline-flex; align-items:center; gap:4px; margin-left:8px; font-size:11.5px; cursor:pointer;}
.a11y-box .checkbox-row{margin:6px 0;}

/* E-Rechnung (Update 473) */
.ei-actions{display:flex; gap:8px; flex-wrap:wrap; margin:0 0 6px;}
.ei-table td.num, .ei-ltable td.num{text-align:right; white-space:nowrap;}
.ei-st{display:inline-block; padding:2px 8px; border-radius:999px; font-size:12px; font-weight:600; background:#EEF1F4; color:#3D4654;}
.ei-st.is-final{background:#E8EEF8; color:#1E3A66;} .ei-st.is-sent{background:#FFF4D6; color:#6B5000;} .ei-st.is-paid{background:#E6F0DC; color:#3D5A1F;} .ei-st.is-new{background:#111B2D; color:#fff;}
.ei-chip{display:inline-block; padding:1px 7px; border-radius:999px; font-size:11.5px; font-weight:600; margin:0 4px 2px 0;}
.ei-chip.is-ok{background:#E6F0DC; color:#3D5A1F;} .ei-chip.is-err{background:#FDE3E8; color:#9B0C27;} .ei-chip.is-warn{background:#FFF4D6; color:#6B5000;}
.ei-val{margin:10px 0;} .ei-val ul{margin:4px 0 0; padding-left:18px;} .ei-val code{font-size:11px; background:rgba(17,27,45,.07); padding:0 4px; border-radius:4px;}
.ei-val-ok{background:#E6F0DC; color:#3D5A1F; border-radius:10px; padding:8px 12px; font-weight:600;}
.ei-val-err{background:#FDE9EC; color:#7A0A1F; border-radius:10px; padding:8px 12px; margin:6px 0;}
.ei-val-warn{background:#FFF7E3; color:#5E4500; border-radius:10px; padding:8px 12px; margin:6px 0;}
.ei-err-inline{color:#9B0C27;}
.ei-editor, .ei-view{display:flex; flex-direction:column; gap:12px;}
.ei-head{display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap;}
.ei-box{border:1px solid var(--border, #E5E8EE); border-radius:12px; padding:8px 14px 12px; margin:0;}
.ei-box legend{font-weight:600; padding:0 6px;}
.ei-grid{display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:8px 12px;}
.ei-f{display:flex; flex-direction:column; gap:3px; font-size:12.5px; color:#3D4654; min-width:0;}
.ei-f.w2{grid-column:span 2;} .ei-f.w4{grid-column:1 / -1; margin-top:8px;}
.ei-f input, .ei-f select, .ei-f textarea{width:100%;}
@media (max-width:760px){ .ei-grid{grid-template-columns:repeat(2, minmax(0, 1fr));} }
.ei-ltable{width:100%; font-size:13px;} .ei-ltable input, .ei-ltable select{width:100%; min-width:60px;} .ei-ltable input.ei-desc{margin-top:4px; font-size:12px;}
.ei-totals{margin-left:auto; min-width:280px; max-width:440px; display:flex; flex-direction:column; gap:3px; margin-top:8px;}
.ei-tot-row{display:flex; justify-content:space-between; gap:12px; font-size:13px;} .ei-tot-row.is-sum{border-top:2px solid #111B2D; padding-top:4px; font-size:15px;}
.ei-acts{flex-wrap:wrap; gap:8px; align-items:center;} .ei-acts input[type=email]{min-width:220px;}
.ei-log ul{font-size:12.5px; padding-left:18px;}
.ei-drop{border:2px dashed #9DB98A; border-radius:14px; padding:22px; text-align:center; display:flex; flex-direction:column; gap:6px; cursor:pointer; background:#F7FAF4; margin-bottom:10px;}
.ei-drop.is-over, .ei-drop:focus-visible{background:#EAF2E1; border-color:#4F7C25;}
.ei-parties{display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:12px;}
@media (max-width:760px){ .ei-parties{grid-template-columns:1fr;} }
.ei-party{border:1px solid var(--border, #E5E8EE); border-radius:12px; padding:10px 12px; font-size:13px; display:flex; flex-direction:column; gap:2px;}
.ei-pay{font-size:13px;} .ei-note{font-size:13px; margin:0;} .ei-att{margin-right:10px; color:#3D5A1F; font-weight:600;}
.ei-ltable td:nth-child(2){min-width:260px;} .ei-ltable td input{display:block;}

/* Forderungen (Update 475) */
.rcv-kpis{display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:10px; margin:0 0 12px;}
.rcv-kpi{background:#fff; border:1px solid #E3E7EC; border-left:4px solid #669C34; border-radius:10px; padding:10px 14px;}
.rcv-kpi-l{font-size:12px; color:#5E6878;} .rcv-kpi-v{font-size:20px; font-weight:600; color:#111B2D;}
.rcv-table td{vertical-align:top;} .rcv-due td{background:#FBFCF8;}
.rcv-late{font-size:12px; font-weight:600; color:#B3132F;}
.rcv-hist{display:flex; flex-direction:column; gap:2px; font-size:12px;}
.rcv-acts{white-space:nowrap;} .rcv-acts .btn{margin:0 4px 4px 0;}
.rcv-purp{max-width:360px; word-break:break-word;}
.rcv-cands{max-height:300px; overflow:auto; margin:8px 0; border:1px solid #E3E7EC; border-radius:8px; padding:6px 10px;}
.rcv-level{border-top:1px solid #E3E7EC; padding-top:10px; margin-top:10px;}
@media (max-width:760px){ .rcv-kpis{grid-template-columns:1fr;} }
.rcv-table td:nth-child(2) b{white-space:nowrap;} .rcv-table .rcv-acts{white-space:normal; min-width:200px;}
