/* EMAY Fahrzeug-Board – Gestaltung
   Layout: Seitenleiste links (Desktop) bzw. Leiste unten (Handy), Inhalt rechts mit Kopf je Bereich,
   Details als Schublade rechts. Farben: EMAY-Blau mit Gold-Akzent, ruhige Grautöne. */
:root{
  --bg:#f2f4f7; --surface:#ffffff; --surface-2:#f7f8fa; --surface-3:#eef1f5;
  --line:#e3e7ed; --line-2:#cfd6df;
  --fg:#111a24; --fg-2:#334152; --muted:#64717f;
  --accent:#1d5b86; --accent-2:#164a6e; --accent-fg:#ffffff; --accent-weak:#e5eef6;
  --gold:#d39a3a;
  --ok:#1f7a4a; --ok-weak:#e3f3ea; --warn:#a6620d; --warn-weak:#fbf0df; --bad:#b4342f; --bad-weak:#fbe7e6;
  --side:#0f2436; --side-fg:#c9d6e3; --side-act:#ffffff; --side-hover:rgb(255 255 255 / .06);
  --plate-blue:#1f3f99;
  --sh-1:0 1px 2px rgb(16 24 40 / .05),0 1px 3px rgb(16 24 40 / .07);
  --sh-2:0 8px 24px rgb(16 24 40 / .12),0 2px 6px rgb(16 24 40 / .06);
  --r:10px; --r-sm:7px;
  --display:"Barlow Semi Condensed","Barlow","Arial Narrow",Arial,sans-serif;
  --body:"Barlow",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --side-w:232px; --bottom-h:64px;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#0c1117; --surface:#141b23; --surface-2:#18212b; --surface-3:#1d2733;
  --line:#243041; --line-2:#2f3d50;
  --fg:#e8edf3; --fg-2:#c3cdd8; --muted:#8e9cad;
  --accent:#6aa8d8; --accent-2:#8bbde3; --accent-fg:#08131d; --accent-weak:rgb(106 168 216 / .14);
  --ok:#5cc08a; --ok-weak:rgb(92 192 138 / .13); --warn:#e6ad55; --warn-weak:rgb(230 173 85 / .13); --bad:#ef7c75; --bad-weak:rgb(239 124 117 / .13);
  --side:#0a0f15; --side-fg:#9fb0c2; --side-hover:rgb(255 255 255 / .05);
  --plate-blue:#3a5fd0;
  --sh-1:0 1px 2px rgb(0 0 0 / .4); --sh-2:0 10px 30px rgb(0 0 0 / .5);
  color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0c1117; --surface:#141b23; --surface-2:#18212b; --surface-3:#1d2733;
  --line:#243041; --line-2:#2f3d50;
  --fg:#e8edf3; --fg-2:#c3cdd8; --muted:#8e9cad;
  --accent:#6aa8d8; --accent-2:#8bbde3; --accent-fg:#08131d; --accent-weak:rgb(106 168 216 / .14);
  --ok:#5cc08a; --ok-weak:rgb(92 192 138 / .13); --warn:#e6ad55; --warn-weak:rgb(230 173 85 / .13); --bad:#ef7c75; --bad-weak:rgb(239 124 117 / .13);
  --side:#0a0f15; --side-fg:#9fb0c2; --side-hover:rgb(255 255 255 / .05);
  --plate-blue:#3a5fd0;
  --sh-1:0 1px 2px rgb(0 0 0 / .4); --sh-2:0 10px 30px rgb(0 0 0 / .5);
  color-scheme:dark}

*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--bg);color:var(--fg);font-family:var(--body);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
[hidden]{display:none!important}
button{font:inherit;cursor:pointer;color:inherit}
a{color:var(--accent)}
svg.i{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* ---------- App-Gerüst ---------- */
.app{min-height:100vh;display:grid;grid-template-columns:var(--side-w) minmax(0,1fr)}
.side{position:sticky;top:0;height:100vh;background:var(--side);color:var(--side-fg);display:flex;flex-direction:column;padding:18px 12px calc(14px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));gap:18px;z-index:15}
.brand{display:flex;align-items:center;gap:10px;padding:2px 8px 6px;color:#fff;text-decoration:none}
.brand .logo{font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:.04em;line-height:1;padding-bottom:3px;border-bottom:3px solid var(--gold)}
.brand small{display:block;font-size:11.5px;color:var(--side-fg);letter-spacing:.02em;line-height:1.2;white-space:nowrap}
.brand .bt{font-weight:600;font-size:14.5px;white-space:nowrap}
.nav{display:flex;flex-direction:column;gap:2px}
.nav button{display:flex;align-items:center;gap:12px;border:0;background:none;color:var(--side-fg);padding:10px 12px;border-radius:8px;font-weight:600;font-size:15px;text-align:left;position:relative}
.nav button:hover{background:var(--side-hover);color:#fff}
.nav button[aria-selected="true"]{background:rgb(255 255 255 / .09);color:var(--side-act)}
.nav button[aria-selected="true"]::before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--gold)}
.nav .badge{margin-left:auto;background:var(--bad);color:#fff;font-size:11px;font-weight:700;border-radius:999px;padding:1px 7px;min-width:20px;text-align:center}
.side-foot{margin-top:auto;display:flex;flex-direction:column;gap:2px;border-top:1px solid rgb(255 255 255 / .08);padding-top:12px}
.side-foot .who{display:flex;align-items:center;gap:10px;padding:6px 10px 10px;color:#fff;font-weight:600}
.avatar{width:32px;height:32px;border-radius:50%;background:var(--gold);color:#1b1205;display:grid;place-items:center;font-weight:700;font-size:13px;flex:none}
.who small{display:block;color:var(--side-fg);font-weight:500;font-size:12px}
.side-foot button{display:flex;align-items:center;gap:12px;border:0;background:none;color:var(--side-fg);padding:9px 12px;border-radius:8px;font-weight:500;text-align:left}
.side-foot button:hover{background:var(--side-hover);color:#fff}
.side-foot button[data-state="on"]{color:#fff}
.side-foot button[data-state="on"] .dot{background:var(--ok)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--side-fg);opacity:.6;margin-left:auto}

.main{min-width:0;padding:22px max(24px,env(safe-area-inset-right,0px)) 48px 28px;display:flex;flex-direction:column;gap:18px}
.topbar{display:none}

/* Kopf je Bereich */
.view{display:flex;flex-direction:column;gap:16px;min-width:0}
.view-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px 16px;flex-wrap:wrap}
.view-head h1{margin:0;font-family:var(--display);font-weight:700;font-size:28px;letter-spacing:.005em;line-height:1.1;text-wrap:balance}
.view-head .sub{margin:3px 0 0;color:var(--muted);font-size:14px}
.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.actions select{width:auto}
.toolbar,.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.search{position:relative;flex:1 1 260px;min-width:0;max-width:520px}
.search svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--muted);width:18px;height:18px}
.search input{padding-left:36px}

/* ---------- Bedienelemente ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line-2);background:var(--surface);color:var(--fg);padding:9px 15px;border-radius:var(--r-sm);font-weight:600;font-size:14.5px;line-height:1.2;min-height:40px;box-shadow:var(--sh-1);transition:background .12s,border-color .12s,transform .06s}
.btn:hover{border-color:var(--accent);background:var(--surface-2)}
.btn:active{transform:translateY(1px)}
.btn.primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}
.btn.primary:hover{background:var(--accent-2);border-color:var(--accent-2)}
.btn.small{padding:5px 11px;font-size:13px;min-height:32px}
.btn.danger{color:var(--bad)}
.btn.danger:hover{border-color:var(--bad);background:var(--bad-weak)}
.btn.ghost{border-color:transparent;box-shadow:none;background:none}
.btn:disabled{opacity:.55;cursor:default}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
input,select,textarea{font:inherit;font-size:15px;color:var(--fg);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-sm);padding:9px 11px;width:100%;min-height:40px;transition:border-color .12s,box-shadow .12s}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak)}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}
textarea{min-height:76px;resize:vertical}
.filters select,.toolbar select{width:auto}
input[type=checkbox]{width:20px;height:20px;min-height:0;accent-color:var(--accent);flex:none}
label{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--muted);font-weight:600;min-width:0}
.tabs{display:inline-flex;max-width:100%;overflow-x:auto;gap:2px;background:var(--surface-3);border-radius:9px;padding:3px;scrollbar-width:none}
.tabs button{white-space:nowrap;border:0;background:none;color:var(--muted);padding:7px 14px;border-radius:7px;font-weight:600;font-size:14px}
.tabs button[aria-selected="true"]{background:var(--surface);color:var(--fg);box-shadow:var(--sh-1)}
.hint{font-size:13px;color:var(--muted);margin:0}
.notice{padding:12px 14px;border:1px solid var(--line);border-radius:var(--r);color:var(--fg-2);background:var(--surface);font-size:14px}

/* Plaketten */
.chip{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.5;background:var(--surface-3);color:var(--fg-2);border:0;white-space:nowrap}
.chip.warn{background:var(--warn-weak);color:var(--warn)}
.chip.bad{background:var(--bad-weak);color:var(--bad)}
.chip.ok{background:var(--ok-weak);color:var(--ok)}
.plate{display:inline-flex;align-items:stretch;border:1.5px solid #111;border-radius:4px;font-family:var(--mono);font-weight:600;font-size:11.5px;background:#fff;color:#111;overflow:hidden;line-height:1}
.plate::before{content:"D";background:var(--plate-blue);color:#fff;font-size:8px;padding:4px 3px 2px;display:flex;align-items:flex-end}
.plate span{padding:3px 6px}

/* ---------- Kennzahlen ---------- */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:13px 15px;display:flex;flex-direction:column;gap:3px;box-shadow:var(--sh-1);min-width:0}
.kpi span{font-size:12.5px;color:var(--muted);font-weight:600}
.kpi b{font-family:var(--display);font-size:27px;font-weight:700;line-height:1.1;letter-spacing:.005em}
.kpi b.bad{color:var(--bad)} .kpi b.warn{color:var(--warn)} .kpi b.ok{color:var(--ok)}
.kpi small{font-size:12.5px;color:var(--muted)}

/* ---------- Board ---------- */
.board-scroll{overflow-x:auto;padding-bottom:10px;margin-inline:-4px;padding-inline:4px;scroll-snap-type:x proximity}
.board{display:grid;grid-template-columns:repeat(7,minmax(292px,1fr));gap:12px;min-width:2130px;align-items:start}
.col{background:var(--surface-3);border-radius:12px;display:flex;flex-direction:column;min-height:240px;scroll-snap-align:start}
.col h2{position:sticky;top:0;z-index:2;background:var(--surface-3);border-radius:12px 12px 0 0;font-family:var(--body);font-weight:700;font-size:14px;letter-spacing:.01em;margin:0;padding:12px 14px 10px;display:flex;align-items:center;gap:8px}
.col h2::before{content:"";width:10px;height:10px;border-radius:3px;background:var(--stage);flex:none}
.col h2 em{font-style:normal;margin-left:auto;font-size:12.5px;color:var(--muted);background:var(--surface);border-radius:999px;padding:1px 9px;font-weight:600}
.col .list{display:flex;flex-direction:column;gap:9px;padding:2px 10px 12px}
.col .empty{color:var(--muted);font-size:13px;padding:10px 6px;border:1.5px dashed var(--line-2);border-radius:var(--r-sm);text-align:center}
.card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:11px 12px 11px 15px;display:flex;flex-direction:column;gap:6px;cursor:pointer;text-align:left;color:var(--fg);width:100%;box-shadow:var(--sh-1);transition:box-shadow .15s,border-color .15s,transform .1s}
.card::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:var(--stage,var(--line-2))}
.card:hover{box-shadow:var(--sh-2);border-color:var(--line-2);transform:translateY(-1px)}
.card .c-top{display:flex;align-items:center;gap:8px;justify-content:space-between;font-size:12px;color:var(--muted);min-height:20px}
.card .c-top .ids{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.card .model{font-weight:700;font-size:15px;line-height:1.25}
.card .c-mid{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:0 10px}
.card .price{font-family:var(--display);font-weight:700;font-size:18px}
.card .price small{font-family:var(--body);font-weight:500;font-size:12px;color:var(--muted);margin-left:2px}
.card .sk{font-size:12px;color:var(--muted);white-space:nowrap}
.card .flags{display:flex;flex-wrap:wrap;gap:5px}
.card .c-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--muted)}
.age{font-weight:700;font-size:12px;padding:1px 8px;border-radius:999px;background:var(--surface-3);color:var(--fg-2);white-space:nowrap}
.age.warn{background:var(--warn-weak);color:var(--warn)} .age.bad{background:var(--bad-weak);color:var(--bad)}
.prog{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
.prog i{display:block;width:44px;height:5px;border-radius:3px;background:var(--line);overflow:hidden;position:relative}
.prog i::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--p,0%);background:var(--accent);border-radius:3px}
.meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12.5px;color:var(--muted)}

/* ---------- Listen (Tickets, Leads, Bestellungen) ---------- */
.tickets{display:flex;flex-direction:column;gap:8px}
.trow{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;box-shadow:var(--sh-1);transition:box-shadow .15s,border-color .15s}
.trow[data-lead]:hover,.trow[data-byd]:hover{box-shadow:var(--sh-2);border-color:var(--line-2)}
.trow.done{opacity:.6}
.trow .t-title{font-weight:700}
.trow .t-sub{font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:4px}
.trow input[type=checkbox]{margin-top:1px}

/* ---------- Tabellen ---------- */
.tbl-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-1)}
table.tbl{border-collapse:collapse;width:100%;font-size:14px;min-width:760px}
.tbl th{font-size:12px;color:var(--muted);text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface-2);white-space:nowrap;font-weight:600;position:sticky;top:0}
.tbl td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.tbl tr:last-child td{border-bottom:0}
.tbl td.n,.tbl th.n{text-align:right;white-space:nowrap}
.tbl tr.click{cursor:pointer}.tbl tr.click:hover td{background:var(--surface-2)}
.bar{height:6px;border-radius:3px;background:var(--line);overflow:hidden;min-width:60px}.bar i{display:block;height:100%;background:var(--bad);border-radius:3px}
.grid-rep{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,560px),1fr));gap:20px}
.card-sec{display:flex;flex-direction:column;gap:10px;min-width:0}
.card-sec h3{margin:0;font-family:var(--display);font-size:20px;font-weight:700}
.money{display:grid;grid-template-columns:1fr auto;gap:5px 14px;font-size:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px}
.money .sum{border-top:1px solid var(--line);padding-top:5px;font-weight:700}
.history{font-size:13px;color:var(--muted);display:flex;flex-direction:column;gap:4px}

/* ---------- Schublade (Details) ---------- */
.scrim{position:fixed;inset:0;background:rgb(8 14 20 / .5);z-index:30;backdrop-filter:blur(2px)}
.drawer{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(760px,calc(100vw - 48px));max-height:calc(100dvh - 48px);height:auto;background:var(--bg);z-index:31;display:flex;flex-direction:column;box-shadow:0 24px 70px rgb(8 14 20 / .35),0 4px 14px rgb(8 14 20 / .18);border-radius:16px;overflow:hidden}
.drawer.wide{width:min(1180px,calc(100vw - 48px));height:calc(100dvh - 48px)}
.drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:16px 18px 12px;background:var(--surface);border-bottom:1px solid var(--line)}
.drawer-head h3{margin:0;font-family:var(--display);font-size:23px;font-weight:700;line-height:1.15}
.drawer-head .sub{margin:3px 0 0;font-size:13px;color:var(--muted)}
.drawer-tabs{display:flex;gap:2px;padding:0 12px;background:var(--surface);border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.drawer-tabs button{border:0;background:none;padding:11px 12px 10px;font-weight:600;font-size:14px;color:var(--muted);border-bottom:2.5px solid transparent;white-space:nowrap}
.drawer-tabs button[aria-selected="true"]{color:var(--fg);border-bottom-color:var(--accent)}
.drawer-tabs .n{font-size:11.5px;background:var(--surface-3);border-radius:999px;padding:0 7px;margin-left:4px;color:var(--fg-2)}
.drawer-body{overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:20px;flex:1}
.pane{display:flex;flex-direction:column;gap:20px}
.section{display:flex;flex-direction:column;gap:10px}
.section h4{margin:0;font-size:13px;font-weight:700;color:var(--fg-2)}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.drawer-foot{padding:12px 18px;border-top:1px solid var(--line);background:var(--surface);display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.confirm{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px}
.ro .editable{pointer-events:none;opacity:.7}
.stages{display:flex;flex-wrap:wrap;gap:6px}
.stages button{border:1px solid var(--line-2);background:var(--surface);color:var(--fg);border-radius:999px;padding:6px 12px;font-size:13.5px;font-weight:600;min-height:34px}
.stages button[aria-pressed="true"]{background:var(--stage);border-color:var(--stage);color:#fff}
/* Stationsleiste */
.stepper{display:grid;grid-template-columns:repeat(7,minmax(76px,1fr));gap:0;padding:12px 6px 6px;overflow-x:auto;scrollbar-width:none}
.stepper button{border:0;background:none;padding:0 3px;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--muted);position:relative;min-width:64px;text-align:center;line-height:1.2}
.stepper button::before{content:"";position:absolute;top:9px;left:-50%;right:50%;height:2px;background:var(--line-2)}
.stepper button:first-child::before{display:none}
.stepper button.done::before,.stepper button.cur::before{background:var(--accent)}
.stepper .sd{width:20px;height:20px;border-radius:50%;border:2px solid var(--line-2);background:var(--surface);position:relative;z-index:1;display:grid;place-items:center}
.stepper button.done .sd{background:var(--accent);border-color:var(--accent)}
.stepper button.done .sd::after{content:"";width:6px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}
.stepper button.cur .sd{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-weak)}
.stepper button.cur .sd::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent)}
.stepper button.cur{color:var(--fg)}
.stepper button:hover .sd{border-color:var(--accent)}

/* Meldung unten */
.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--fg);color:var(--bg);padding:10px 16px;border-radius:999px;font-weight:600;font-size:14px;box-shadow:var(--sh-2);z-index:60;pointer-events:none}

@media (prefers-reduced-motion:no-preference){
  .drawer{animation:dlg .18s cubic-bezier(.2,.8,.2,1)}@keyframes dlg{from{transform:translate(-50%,-48%) scale(.98);opacity:0}}
  .scrim{animation:fade .18s ease-out}@keyframes fade{from{opacity:0}}
  .toast{animation:pop .2s ease-out}@keyframes pop{from{transform:translate(-50%,8px);opacity:0}}
}

/* ---------- Tablet & Handy ---------- */
@media (max-width:1023px){
  .app{grid-template-columns:minmax(0,1fr)}
  .side{position:fixed;top:auto;left:0;right:0;bottom:0;height:auto;flex-direction:row;padding:6px max(6px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(6px,env(safe-area-inset-left,0px));gap:0;box-shadow:0 -1px 0 rgb(255 255 255 / .06),0 -6px 20px rgb(0 0 0 / .15)}
  .side .brand{display:none}
  .nav{flex-direction:row;flex:1;justify-content:space-around;gap:0}
  .nav button{flex:1;flex-direction:column;gap:3px;padding:7px 2px 5px;font-size:11px;font-weight:600;text-align:center;min-width:0;border-radius:10px}
  .nav button .lbl{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .nav .lbl-l{display:none}
  .nav button[aria-selected="true"]::before{left:30%;right:30%;top:-6px;bottom:auto;height:3px;width:auto;border-radius:0 0 3px 3px}
  .nav .badge{position:absolute;top:2px;left:calc(50% + 6px);margin:0;font-size:10px;padding:0 5px;min-width:16px}
  .side-foot{display:none;position:fixed;top:calc(56px + env(safe-area-inset-top,0px));right:max(10px,env(safe-area-inset-right,0px));width:min(300px,calc(100vw - 20px));background:var(--side);border-radius:12px;padding:10px;box-shadow:var(--sh-2);border-top:0;z-index:40}
  body.menu-open .side-foot{display:flex}
  .main{padding:calc(68px + env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) calc(var(--bottom-h) + 28px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));gap:14px}
  .topbar{display:flex;position:fixed;top:0;left:0;right:0;z-index:14;align-items:center;justify-content:space-between;gap:10px;background:var(--side);color:#fff;padding:calc(8px + env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) 8px max(14px,env(safe-area-inset-left,0px));min-height:52px}
  .topbar .logo{font-family:var(--display);font-weight:700;font-size:19px;letter-spacing:.04em;border-bottom:2.5px solid var(--gold);line-height:1;padding-bottom:2px}
  .topbar .t{font-weight:600;font-size:15px;color:var(--side-fg);margin-right:auto;margin-left:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .topbar .menu-btn{border:0;background:rgb(255 255 255 / .08);color:#fff;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;padding:0}
  .view-head h1{font-size:24px}
  .kpis{display:flex;overflow-x:auto;gap:8px;margin-inline:calc(-1 * max(14px,env(safe-area-inset-left,0px)));padding:2px max(14px,env(safe-area-inset-left,0px)) 6px;scroll-snap-type:x proximity;scrollbar-width:none}
  .kpi{padding:10px 12px;flex:0 0 auto;min-width:150px;scroll-snap-align:start}
  .kpi b{font-size:21px}
  .board{min-width:0;grid-template-columns:repeat(7,82vw);}
  .board-scroll{scroll-snap-type:x mandatory}
  .search{max-width:none}
  .toast{bottom:calc(var(--bottom-h) + 20px + env(safe-area-inset-bottom,0px))}
}
@media (min-width:600px) and (max-width:1023px){.board{grid-template-columns:repeat(7,300px)}}
@media (max-width:599px){
  .btn{min-height:44px}
  .view-head .actions{width:100%}
  .view-head .actions .btn.primary{flex:1}
  .drawer-body{padding:14px}
}

@media (min-width:1024px){.nav .lbl-s{display:none}}

/* ---------- Verwaltung ---------- */
.admin{display:grid;grid-template-columns:264px minmax(0,1fr);gap:24px;align-items:start}
.admin-nav{position:sticky;top:20px;display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:6px;box-shadow:var(--sh-1)}
.admin-nav button{display:flex;gap:11px;align-items:flex-start;border:0;background:none;text-align:left;padding:10px 11px;border-radius:9px;color:var(--fg-2)}
.admin-nav button svg{margin-top:1px;color:var(--muted)}
.admin-nav button b{display:block;font-size:14.5px;font-weight:600;color:var(--fg)}
.admin-nav button small{display:block;font-size:12px;color:var(--muted);line-height:1.3;margin-top:1px}
.admin-nav button:hover{background:var(--surface-2)}
.admin-nav button[aria-current="page"]{background:var(--accent-weak)}
.admin-nav button[aria-current="page"] svg,.admin-nav button[aria-current="page"] b{color:var(--accent)}
.admin-main{display:flex;flex-direction:column;gap:18px;min-width:0}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh-1);overflow:hidden}
.panel-head{padding:18px 22px 4px}
.panel-head h2{margin:0;font-family:var(--display);font-size:21px;font-weight:700}
.panel-head p{margin:4px 0 0;color:var(--muted);font-size:14px;max-width:72ch}
.panel-body{padding:16px 22px 22px;display:flex;flex-direction:column;gap:16px}
.panel-foot{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;padding:12px 22px;border-top:1px solid var(--line);background:var(--surface-2)}
.save-state{font-size:13px;color:var(--muted)}
.save-state.dirty{color:var(--warn)} .save-state.ok{color:var(--ok)} .save-state.bad{color:var(--bad)}
.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.fgrid.four{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.fld{gap:6px}
.fld>span{font-size:13.5px;font-weight:600;color:var(--fg-2)}
.fld small{font-weight:400;font-size:12.5px;color:var(--muted)}
.unit{display:flex;align-items:stretch}
.unit input{border-radius:var(--r-sm) 0 0 var(--r-sm);min-width:0}
.unit em{font-style:normal;display:flex;align-items:center;padding:0 12px;border:1px solid var(--line-2);border-left:0;border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--surface-2);color:var(--muted);font-size:13.5px;white-space:nowrap}
.example{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}
.example>div{background:var(--accent-weak);border-radius:10px;padding:11px 14px;display:flex;flex-direction:column;gap:2px}
.example span{font-size:12.5px;color:var(--muted)} .example b{font-size:15px}
.ampel{padding:6px 2px 0}
.amp-bar{position:relative;height:12px;border-radius:6px;overflow:hidden;background:var(--line)}
.amp-bar i{position:absolute;top:0;bottom:0}
.amp-lbl{position:relative;height:22px;font-size:12px;color:var(--muted)}
.amp-lbl span{position:absolute;top:4px;transform:translateX(-50%);white-space:nowrap}
.amp-lbl span:first-child{transform:none}
.amp-leg{display:flex;gap:6px 16px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}
.amp-leg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.cl-list{display:flex;flex-direction:column;gap:8px}
.cl-row{display:flex;align-items:center;gap:6px}
.cl-row input{flex:1}
.cl-n{width:24px;height:24px;border-radius:50%;background:var(--surface-3);color:var(--muted);font-size:12px;font-weight:700;display:grid;place-items:center;flex:none}
.tabs .n{font-size:11px;background:var(--surface-3);border-radius:999px;padding:0 6px;margin-left:3px;color:var(--muted)}
.tabs button[aria-selected="true"] .n{background:var(--accent-weak);color:var(--accent)}
.years{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.fld.year{position:relative}
.fld.year .btn{position:absolute;top:-6px;right:-6px;min-height:0;padding:0 7px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.stat{display:flex;flex-direction:column;gap:2px;text-align:left;border:1px solid var(--line);background:var(--surface-2);border-radius:10px;padding:13px 15px;color:var(--fg);position:relative}
.stat[data-go]{cursor:pointer}.stat[data-go]:hover{border-color:var(--accent)}
.stat:disabled{cursor:default;opacity:1}
.stat span{font-size:12.5px;color:var(--muted);font-weight:600}
.stat b{font-family:var(--display);font-size:22px}
.stat small{font-size:12.5px;color:var(--muted)}
.stat.ok::after,.stat.warn::after,.stat.bad::after{content:"";position:absolute;top:14px;right:14px;width:9px;height:9px;border-radius:50%}
.stat.ok::after{background:var(--ok)} .stat.warn::after{background:var(--warn)} .stat.bad::after{background:var(--bad)}
.drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:26px 16px;border:2px dashed var(--line-2);border-radius:12px;background:var(--surface-2);text-align:center;cursor:pointer;color:var(--fg)}
.drop:hover{border-color:var(--accent);background:var(--accent-weak)}
.drop input{position:absolute;inset:0;opacity:0;cursor:pointer;min-height:0}
.drop svg{width:28px;height:28px;color:var(--accent)}
.drop b{font-size:15px} .drop small{font-weight:400;color:var(--muted);font-size:12.5px}
.roles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.roles>div{border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:var(--surface-2)}
.roles p{margin:8px 0 0;font-size:13.5px;color:var(--fg-2)}
.log{font-family:var(--mono);font-size:12px;white-space:pre-wrap;background:var(--surface-2);border:1px solid var(--line);border-radius:8px;padding:10px;max-height:280px;overflow:auto;margin:8px 0 0}
.side-foot button[aria-current="page"]{background:rgb(255 255 255 / .09);color:#fff}
code{font-family:var(--mono);font-size:.9em;background:var(--surface-3);padding:1px 5px;border-radius:4px}
@media (max-width:1023px){
  .admin{grid-template-columns:minmax(0,1fr);gap:14px}
  .admin-nav{position:static;flex-direction:row;overflow-x:auto;padding:4px;scrollbar-width:none;margin-inline:calc(-1 * max(14px,env(safe-area-inset-left,0px)));border-radius:0;border-inline:0}
  .admin-nav button{flex:none;align-items:center;padding:8px 12px}
  .admin-nav button small{display:none}
  .admin-nav button b{font-size:14px;white-space:nowrap}
  .panel-head{padding:16px 16px 2px}.panel-body{padding:14px 16px 18px}.panel-foot{padding:12px 16px}
}

/* ---------- Auswertung als Dashboard ---------- */
.dash{display:flex;flex-direction:column;gap:16px}
.d-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.d-tile{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 18px 15px;box-shadow:var(--sh-1);display:flex;flex-direction:column;gap:4px;min-width:0;overflow:hidden}
.d-tile::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent)}
.d-tile:has(.d-v.bad)::before{background:var(--bad)}.d-tile:has(.d-v.warn)::before{background:var(--gold)}.d-tile:has(.d-v.ok)::before{background:var(--ok)}
.d-l{font-size:12.5px;font-weight:700;color:var(--muted);letter-spacing:.02em;text-transform:uppercase}
.d-v{font-family:var(--display);font-size:34px;font-weight:700;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.d-v.bad,.bad.n,.d-num.bad,.d-row3 b.bad{color:var(--bad)}.d-v.warn{color:var(--warn)}.d-v.ok{color:var(--ok)}
.d-s{font-size:13px;color:var(--muted)}
.d-meter{height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden;margin-top:6px}.d-meter i{display:block;height:100%;background:var(--bad);border-radius:3px}
.d-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}
.d-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh-1);padding:16px 18px 18px;display:flex;flex-direction:column;gap:14px;min-width:0}
.span-4{grid-column:span 4}.span-6{grid-column:span 6}.span-8{grid-column:span 8}.span-12{grid-column:span 12}
.d-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.d-card h3{margin:0;font-family:var(--display);font-size:19px;font-weight:700}
.d-card header p{margin:2px 0 0;font-size:13px;color:var(--muted)}
.d-stack{display:flex;height:34px;border-radius:8px;overflow:hidden;gap:2px}
.d-stack i{display:flex;align-items:center;justify-content:center;color:#fff;font-style:normal;font-weight:700;font-size:13px;min-width:4px}
.d-legend{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.d-legend div{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:7px;align-items:center;background:var(--surface-2);border-radius:8px;padding:9px 11px}
.d-legend .dot{width:10px;height:10px;border-radius:3px;grid-row:1}
.d-legend span:not(.dot){font-size:12.5px;color:var(--muted)}
.d-legend b{grid-column:1/3;font-family:var(--display);font-size:24px;line-height:1.1}
.d-legend em{grid-column:1/3;font-style:normal;font-size:12px;color:var(--muted);margin-top:-2px}
.d-legend .mon{color:var(--fg-2);font-weight:600;margin-top:4px}
.d-mini{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.d-mini div{background:var(--surface-2);border-radius:8px;padding:9px 11px;display:flex;flex-direction:column;gap:2px;min-width:0}
.d-mini span{font-size:12.5px;color:var(--muted)}
.d-mini b{font-family:var(--display);font-size:22px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.d-mini b.bad{color:var(--bad)}.d-mini b.warn{color:var(--warn)}.d-mini b.ok{color:var(--ok)}
.d-cols{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;height:200px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:0}
.d-col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:4px;position:relative}
.d-col i{display:block;width:min(46px,70%);background:var(--accent-weak);border-radius:6px 6px 0 0;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-bottom:0}
.d-col.cur i{background:var(--accent);border-color:var(--accent)}
.d-cv{font-weight:700;font-size:14px;font-family:var(--display)}
.d-cn{position:absolute;bottom:-22px;font-size:12.5px;color:var(--muted)}
.d-col.cur .d-cn{color:var(--fg);font-weight:700}
.d-row3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:22px}
.d-row3 div{display:flex;flex-direction:column;gap:1px;min-width:0}.d-row3 span{font-size:12.5px;color:var(--muted)}
.d-row3 b{font-family:var(--display);font-size:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.d-list{display:flex;flex-direction:column}
.d-item{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:9px 8px;margin:0 -8px;border-radius:8px;border-top:1px solid var(--line)}
.d-item:first-child{border-top:0}.d-item:hover{background:var(--surface-2)}.d-item:focus-visible{outline:2px solid var(--accent)}
.d-it{display:flex;justify-content:space-between;align-items:center;gap:10px;min-width:0}
.d-it b{font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.d-it.sub{font-size:12.5px;color:var(--muted)}
.d-num{font-family:var(--display);font-weight:700;font-size:16px;white-space:nowrap}
.d-ctl{display:flex;gap:10px;align-items:center;flex-wrap:wrap;max-width:100%}
.d-sel{display:flex;flex-direction:row!important;align-items:center;gap:8px;font-size:13px;color:var(--muted);white-space:nowrap;margin:0}
.d-sel select{width:auto;min-width:0;padding-top:6px;padding-bottom:6px}
.bar.acc i{background:var(--accent)}
.d-bd{display:flex;flex-direction:column}
.d-bd-h,.d-bd-r{display:grid;grid-template-columns:minmax(0,2.4fr) 110px 70px 80px 70px 100px;gap:12px;align-items:center;padding:9px 4px}
.d-bd-h{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--line);padding-top:0}
.d-bd-r{border-bottom:1px solid var(--line)}.d-bd-r:last-child{border-bottom:0}
.d-bd-k{display:flex;flex-direction:column;gap:5px;min-width:0}
.d-bd-k b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.d-bd .n{text-align:right;font-variant-numeric:tabular-nums;font-size:14px}
.d-bd .strong{font-weight:700}
.d-foot{margin:0}
@media (max-width:1180px){.d-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.span-4,.span-8,.span-6{grid-column:span 12}}
@media (max-width:640px){
  .d-tiles{gap:10px}.d-tile{padding:13px 14px}.d-v{font-size:26px}
  .d-legend{grid-template-columns:repeat(2,minmax(0,1fr))}
  .d-card{padding:14px}
  .d-bd-h,.d-bd-r{grid-template-columns:minmax(0,1fr) 96px}
  .d-bd .hide-s{display:none}
}

/* ---------- Fenster: auf dem Handy ganzer Bildschirm ---------- */
@media (max-width:760px){
  .drawer,.drawer.wide{top:0;left:0;transform:none;width:100%!important;height:100dvh;max-height:none;border-radius:0;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
  @media (prefers-reduced-motion:no-preference){.drawer{animation:dlgm .2s cubic-bezier(.2,.8,.2,1)}@keyframes dlgm{from{transform:translateY(24px);opacity:0}}}
}
.icon-btn{border:1px solid var(--line);background:var(--surface);color:var(--fg-2);border-radius:10px;width:40px;height:40px;display:grid;place-items:center;padding:0;flex:none;cursor:pointer}
.icon-btn:hover{background:var(--surface-3);color:var(--fg)}
.warnbox{border-color:color-mix(in srgb,var(--warn) 40%,transparent);background:var(--warn-weak);color:var(--fg)}
.empty-box{color:var(--muted);font-size:13.5px;border:1.5px dashed var(--line-2);border-radius:10px;padding:14px;text-align:center}
.fgroup{display:flex;flex-direction:column;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 18px 18px}
.fgroup h4{margin:0;font-family:var(--display);font-size:17px;font-weight:700;color:var(--fg);display:flex;align-items:center;gap:9px}
.fgroup .grid2{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.span2{grid-column:span 2}@media (max-width:560px){.span2{grid-column:auto}}
.late{color:var(--bad)!important;font-weight:700}

/* Fahrzeugakte */
.akte-head{align-items:center;padding:14px 18px 12px}
.akte-head h3{font-size:25px;margin-top:4px}
.akte-ids{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}
.akte-hr{display:flex;align-items:center;gap:12px}
.savestate{font-size:12.5px;color:var(--muted);white-space:nowrap}
.stepbar{background:var(--surface);border-bottom:1px solid var(--line);padding:2px 10px 4px}
.stepbar .stepper{padding:12px 0 8px}
.stepbar .stepper button{font-size:12.5px}
.akte-body{padding:0;overflow:hidden;display:block}
.akte-grid{display:grid;grid-template-columns:340px minmax(0,1fr);height:100%}
.akte-side{border-right:1px solid var(--line);background:var(--surface-2);overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:14px}
.akte-main{overflow-y:auto;padding:0 20px 24px;display:flex;flex-direction:column;gap:16px}
.akte-main .drawer-tabs{position:sticky;top:0;z-index:3;margin:0 -20px;padding:0 14px;background:var(--bg)}
.akte-main .pane{gap:16px}
.nx{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px 16px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--sh-1);overflow:hidden}
.nx::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--stage)}
.nx-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}
.nx-st{font-family:var(--display);font-size:22px;font-weight:700;display:flex;align-items:center;gap:8px}
.nx-st::before{content:"";width:12px;height:12px;border-radius:4px;background:var(--stage)}
.nx-ziel{margin:0;font-size:14px;color:var(--fg-2);line-height:1.45}
.nx-wer{margin:0;font-size:13px;color:var(--muted)}
.nx-wer b{color:var(--fg-2)}
.nx-cl{display:flex;flex-direction:column;gap:6px;margin-top:4px}
.nx-clh{display:flex;justify-content:space-between;align-items:baseline}
.nx-clh h4{margin:0;font-size:13px;font-weight:700;color:var(--fg)}
.nx-clh span{font-size:12.5px;color:var(--muted);font-weight:600}
.nx-cl .bar{height:7px}
.checklist{display:flex;flex-direction:column;gap:2px}
.ck{flex-direction:row;align-items:flex-start;gap:10px;padding:8px 8px;margin:0 -8px;border-radius:8px;cursor:pointer;color:var(--fg);font-weight:500;font-size:14px}
.ck:hover{background:var(--surface-2)}
.ck input{margin-top:1px}
.ck>span{display:flex;flex-direction:column;gap:1px;min-width:0}
.ck small{font-size:12px;color:var(--muted);font-weight:400}
.ck.done .ck-t{color:var(--muted);text-decoration:line-through;text-decoration-color:var(--line-2)}
.nx-actions{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--line);padding-top:12px;margin-top:2px}
.nx-actions .nx-go{width:100%;justify-content:center;min-height:44px;font-size:15px}
.nx-actions .ghost{color:var(--accent);justify-content:center}
.nx-done{font-size:14px;color:var(--ok);font-weight:600}
.kv{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 16px 14px;display:flex;flex-direction:column;gap:2px}
.kv-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.kv-row span:first-child{color:var(--muted)}
.kv-row b{font-family:var(--display);font-size:17px}.kv-row b.bad{color:var(--bad)}.kv-row b.ok{color:var(--ok)}
.kv .btn{margin-top:10px}
.timeline{list-style:none;margin:0;padding:0 0 0 4px;display:flex;flex-direction:column}
.timeline li{position:relative;padding:0 0 12px 22px;display:flex;flex-direction:column;font-size:13.5px}
.timeline li::before{content:"";position:absolute;left:0;top:4px;width:10px;height:10px;border-radius:50%;background:var(--stage)}
.timeline li::after{content:"";position:absolute;left:4.5px;top:16px;bottom:0;width:1px;background:var(--line-2)}
.timeline li:last-child::after{display:none}
.timeline li span{color:var(--muted);font-size:12.5px}
.newticket{border-top:1px solid var(--line);padding-top:14px}
@media (max-width:900px){
  .akte-body{overflow-y:auto}
  .akte-grid{grid-template-columns:minmax(0,1fr);height:auto}
  .akte-side,.akte-main{overflow:visible}
  .akte-side{border-right:0;border-bottom:1px solid var(--line)}
  .akte-main{padding:0 14px 20px}
  .akte-main .drawer-tabs{margin:0 -14px}
  .akte-head h3{font-size:21px}
}

/* Fahrzeug anlegen */
.nv{width:min(860px,calc(100vw - 48px))}
.nv-body{background:var(--bg);gap:14px}
.nv-n{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--accent);color:#fff;font-family:var(--body);font-size:13px;font-weight:700}
.req{font-style:normal;font-size:11px;color:var(--accent);background:var(--accent-weak);border-radius:999px;padding:0 7px;margin-left:6px;font-weight:700}
.choice{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
.choice-i{position:relative;flex-direction:row;align-items:flex-start;gap:10px;border:1.5px solid var(--line-2);border-radius:10px;padding:12px;cursor:pointer;background:var(--surface);color:var(--fg)}
.choice-i input{width:18px;height:18px;min-height:0;margin:2px 0 0;accent-color:var(--accent);flex:none}
.choice-i span{display:flex;flex-direction:column;gap:2px}
.choice-i b{font-size:14.5px}.choice-i small{font-size:12.5px;color:var(--muted);font-weight:400;line-height:1.35}
.choice-i:has(input:checked){border-color:var(--stage);box-shadow:0 0 0 3px color-mix(in srgb,var(--stage) 18%,transparent);background:color-mix(in srgb,var(--stage) 6%,var(--surface))}

/* Board: Spaltenköpfe und Ablauf-Erklärung */
.col h2{align-items:flex-start}
.col h2::before{margin-top:4px}
.col h2 .h-t{display:flex;flex-direction:column;gap:1px;min-width:0}
.col h2 .h-t small{font-size:11.5px;font-weight:500;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.col h2 em.late{margin-left:auto;background:var(--bad-weak);color:var(--bad)!important;font-size:11.5px}
.col h2 em.late+em{margin-left:6px}
.flow{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh-1);padding:18px 20px;display:flex;flex-direction:column;gap:16px}
.flow-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.flow-head h3{margin:0;font-family:var(--display);font-size:20px}
.flow-head p{margin:3px 0 0;color:var(--muted);font-size:14px;max-width:80ch}
.flow-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;counter-reset:x}
.flow-steps li{position:relative;background:var(--surface-2);border-radius:10px;padding:12px 12px 12px;border-top:4px solid var(--stage);display:flex;flex-direction:column;gap:2px;min-width:0}
.flow-steps li:not(:last-child)::after{content:"→";position:absolute;right:-9px;top:50%;transform:translateY(-50%);z-index:1;color:var(--muted);font-weight:700;background:var(--surface);border-radius:50%;width:14px;text-align:center;font-size:12px}
.fs-n{font-size:11.5px;font-weight:700;color:var(--muted)}
.flow-steps b{font-size:14.5px}
.fs-w{font-size:12.5px;font-weight:700;color:var(--stage)}
.fs-k{font-size:12.5px;color:var(--fg-2)}
.fs-m{font-size:11.5px;color:var(--muted);margin-top:3px}
.flow-rules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.flow-rules div{display:flex;flex-direction:column;gap:3px;font-size:13px;color:var(--fg-2);line-height:1.4}
.flow-rules b{font-size:13.5px;color:var(--fg)}
@media (max-width:1180px){.flow-steps{grid-template-columns:repeat(4,minmax(0,1fr))}.flow-steps li::after{display:none}.flow-rules{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.flow{padding:14px}.flow-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.flow-rules{grid-template-columns:1fr}.flow-head{flex-direction:column}}
.drawer-body{min-height:0}
.akte-side>*,.akte-main>*,.nv-body>*{flex:none}
.col h2 em{white-space:nowrap}
.lbl-row{display:flex;align-items:center;gap:4px;flex-wrap:wrap}

/* ---------- Hereinnahmeprotokoll (Tablet) ---------- */
.btn.big{min-height:52px;padding:0 22px;font-size:16px;border-radius:12px}
.linkbtn{border:0;background:none;padding:0;color:var(--accent);font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}
.nx-intake{width:100%;justify-content:center;min-height:48px;font-size:15px}
.nx-proto{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--ok-weak);color:var(--ok);border-radius:9px;padding:8px 10px;font-size:13.5px;font-weight:600}
.hn .drawer-head{padding:12px 18px}
.hn-steps{display:flex;gap:4px;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.hn-steps button{flex:1 0 auto;display:flex;align-items:center;gap:8px;border:0;background:none;padding:8px 12px;border-radius:10px;font-weight:600;font-size:14.5px;color:var(--muted);min-height:48px;white-space:nowrap}
.hn-steps .hs-n{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--surface-3);color:var(--fg-2);font-size:13.5px;font-weight:700;flex:none}
.hn-steps button.done .hs-n{background:var(--ok);color:#fff}
.hn-steps button.cur{background:var(--accent-weak);color:var(--fg)}
.hn-steps button.cur .hs-n{background:var(--accent);color:#fff}
.hn-body{gap:14px;padding:16px 18px 24px}
.hn-body>*{flex:none}
.hn-foot{padding:10px 16px}
.hn-pos{font-size:13px;color:var(--muted)}
.hn-l{font-size:13px;color:var(--muted);font-weight:600;margin-top:2px}
.big-in{font-size:22px;font-weight:700;font-family:var(--display);min-height:52px}
.seg{display:flex;flex-wrap:wrap;gap:8px}
.seg button{min-height:48px;padding:0 16px;border:1.5px solid var(--line-2);background:var(--surface);color:var(--fg);border-radius:10px;font-weight:600;font-size:15px;cursor:pointer}
.seg button[aria-checked="true"]{border-color:var(--accent);background:var(--accent);color:var(--accent-fg)}
.seg.wide3{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.chips-t{display:flex;flex-wrap:wrap;gap:8px}
.tgl{min-height:48px;padding:0 16px;border:1.5px solid var(--line-2);background:var(--surface);color:var(--fg-2);border-radius:999px;font-weight:600;font-size:14.5px;cursor:pointer}
.tgl[aria-pressed="true"]{border-color:var(--ok);background:var(--ok-weak);color:var(--ok)}
.tgl[aria-pressed="true"]::before{content:"✓ "}
.stepn{display:inline-flex;align-items:center;gap:6px;align-self:flex-start}
.stepn button{width:52px;height:52px;border-radius:12px;border:1.5px solid var(--line-2);background:var(--surface);font-size:24px;font-weight:600;color:var(--fg);cursor:pointer;display:grid;place-items:center}
.stepn button:active{background:var(--surface-3)}
.stepn b{min-width:64px;text-align:center;font-family:var(--display);font-size:28px}
.stepn b small{font-size:14px;color:var(--muted);font-family:var(--body);font-weight:500}
.hn-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.slot{position:relative;aspect-ratio:4/3;border:2px dashed var(--line-2);border-radius:12px;background:var(--surface-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;overflow:hidden;color:var(--fg-2);font-size:14px;font-weight:600}
.slot.has{border-style:solid;border-color:var(--ok)}
.slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.slot .slot-t{position:relative;z-index:1}
.slot.has .slot-t{position:absolute;left:0;right:0;bottom:0;background:rgb(0 0 0 / .55);color:#fff;padding:5px 8px;font-size:13px}
.slot-ic .i{width:30px;height:30px;color:var(--accent)}
.slot-busy{position:absolute;inset:0;background:rgb(255 255 255 / .75);display:grid;place-items:center;z-index:2;color:var(--fg);font-weight:700}
.slot-busy[hidden]{display:none}
.slot.small{width:96px;aspect-ratio:1;font-size:12.5px}
.hn-sum{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:15px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 16px}
.pk-list{display:flex;flex-direction:column}
.pk{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:8px 0;border-top:1px solid var(--line)}
.pk:first-child{border-top:0}
.pk-t{font-size:15.5px;font-weight:500;color:var(--fg)}
.pk-b{display:flex;gap:6px}
.pk-b button{width:56px;height:48px;border-radius:10px;border:1.5px solid var(--line-2);background:var(--surface);font-size:20px;font-weight:800;color:var(--muted);cursor:pointer}
.pk-b .ok[aria-checked="true"]{background:var(--ok);border-color:var(--ok);color:#fff}
.pk-b .mg[aria-checked="true"]{background:var(--bad);border-color:var(--bad);color:#fff}
.pk-b .na[aria-checked="true"]{background:var(--muted);border-color:var(--muted);color:#fff}
.pk.mangel .pk-t{color:var(--bad)}
.pk-n{grid-column:1/-1}
.hn-dmg{display:grid;grid-template-columns:minmax(260px,380px) minmax(0,1fr);gap:16px;align-items:start}
.hn-carbox{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px;position:sticky;top:0}
.hn-car{width:100%;max-height:calc(100dvh - 390px);min-height:320px;display:block;touch-action:manipulation;cursor:crosshair;user-select:none}
.hn-dside{display:flex;flex-direction:column;gap:12px;min-width:0}
.dm-n{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;color:#fff;font-size:13.5px;font-weight:700;flex:none;font-family:var(--body)}
.dm-list{display:flex;flex-direction:column;gap:6px}
.dm-row{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:var(--surface-2);border-radius:10px;padding:10px 12px;text-align:left;color:var(--fg);font-size:15px;min-height:56px;cursor:pointer}
.dm-row>span:nth-child(2){flex:1;display:flex;flex-direction:column}
.dm-row small{color:var(--muted);font-size:13px}
.dm-ph{display:flex;gap:8px;flex-wrap:wrap}
.dm-ph img{width:96px;height:96px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}
.tires{display:grid;grid-template-columns:1fr 120px 1fr;grid-template-rows:auto auto;gap:12px;align-items:center}
.tires-car{grid-column:2;grid-row:1/3;opacity:.6;pointer-events:none}
.tires-car .hn-car{min-height:0;max-height:240px}
.tire{display:flex;flex-direction:column;gap:6px;align-items:center;background:var(--surface-2);border-radius:12px;padding:12px;border:2px solid transparent}
.tire.ok{border-color:color-mix(in srgb,var(--ok) 50%,transparent)}.tire.warn{border-color:var(--gold);background:var(--warn-weak)}.tire.bad{border-color:var(--bad);background:var(--bad-weak)}
.tire-t{font-weight:700;font-size:14px}
.tire .stepn{align-self:center}
.hn-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.hn-tiles div{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column}
.hn-tiles span{font-size:12.5px;color:var(--muted);font-weight:600}
.hn-tiles b{font-family:var(--display);font-size:28px}.hn-tiles b.bad{color:var(--bad)}.hn-tiles b.warn{color:var(--warn)}.hn-tiles b.ok{color:var(--ok)}
.tx-list{display:flex;flex-direction:column;gap:6px}
.tx{display:flex;align-items:center;gap:12px;padding:6px 8px;border-radius:10px;background:var(--surface-2)}
.tx.off .tx-t{color:var(--muted);text-decoration:line-through}
.tx-c{width:40px;height:40px;border-radius:9px;border:1.5px solid var(--line-2);background:var(--surface);font-size:18px;font-weight:800;color:#fff;flex:none;cursor:pointer}
.tx-c[aria-pressed="true"]{background:var(--accent);border-color:var(--accent)}
.tx-t{flex:1;font-size:14.5px;min-width:0}
.tx-team{min-height:36px;padding:0 12px;cursor:pointer;font-size:13px}
.sigc{width:100%;height:170px;border:1.5px solid var(--line-2);border-radius:10px;background:#fff;display:block;margin:4px 0 6px}
.hn-done{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:40px 16px}
.hn-done h3{margin:0;font-family:var(--display);font-size:24px}
.hn-done p{margin:0;color:var(--muted)}
.hn-ok{width:72px;height:72px;border-radius:50%;background:var(--ok);color:#fff;display:grid;place-items:center;font-size:38px;font-weight:800}
@media (max-width:760px){
  .hn-steps .hs-t{display:none}.hn-steps button.cur .hs-t{display:inline}
  .hn-dmg{grid-template-columns:1fr}.hn-carbox{position:static}.hn-car{max-height:52vh;min-height:0}
  .hn-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tires{grid-template-columns:1fr 1fr}.tires-car{display:none}
  .pk{grid-template-columns:1fr}.pk-b button{flex:1}
  .hn-foot .hn-pos,.nv-fh{display:none}
  .btn.big{padding:0 14px}
}
.fgroup .grid2.sigs2{grid-template-columns:1fr 1fr}
@media (max-width:760px){.fgroup .grid2.sigs2{grid-template-columns:1fr}}

/* ---------- Lackmessung ---------- */
.lk-grid{display:grid;grid-template-columns:1fr minmax(120px,170px) 1fr;grid-template-areas:"kvl mh kvr" "tvl dach tvr" "thl car thr" "swl hk swr" "sl . sr";gap:10px;align-items:stretch}
.lk-car{grid-area:car;display:flex;align-items:center;justify-content:center;opacity:.55;pointer-events:none}
.lk-car .hn-car{min-height:0;max-height:150px}
.lk{display:flex;flex-direction:column;gap:4px;background:var(--surface-2);border:2px solid var(--line);border-radius:12px;padding:10px 12px;color:var(--fg);font-weight:600}
.lk-t{font-size:13px;color:var(--fg-2)}
.lk-in{display:flex;align-items:baseline;gap:6px}
.lk-in input{font-family:var(--display);font-size:24px;font-weight:700;min-height:48px;padding:4px 10px;text-align:right}
.lk-in small{color:var(--muted);font-weight:600}
.lk-s{font-style:normal;font-size:12px;min-height:15px}
.lk.ok{border-color:color-mix(in srgb,var(--ok) 55%,transparent)}.lk.ok .lk-s{color:var(--ok)}
.lk.warn{border-color:var(--gold);background:var(--warn-weak)}.lk.warn .lk-s{color:var(--warn)}
.lk.bad{border-color:var(--bad);background:var(--bad-weak)}.lk.bad .lk-s{color:var(--bad)}
.lk.low{border-color:var(--muted)}.lk.low .lk-s{color:var(--muted)}
@media (max-width:760px){.lk-grid{grid-template-columns:1fr 1fr;grid-template-areas:"mh mh" "kvl kvr" "dach dach" "tvl tvr" "thl thr" "swl swr" "hk hk" "sl sr"}.lk-car{display:none}}

/* ---------- Befunde & Freigaben ---------- */
.bf-list{display:flex;flex-direction:column;gap:10px}
.bf{border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:12px;background:var(--surface);padding:12px 14px;display:flex;flex-direction:column;gap:8px}
.bf.reparieren{border-left-color:var(--accent)}.bf.lassen{border-left-color:var(--line-2)}.bf.fixed{border-left-color:var(--ok)}.bf.klaeren{border-left-color:var(--warn)}
.bf-top{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}
.bf-t{flex:1;min-width:180px;font-size:15px}
.bf-d{display:flex;flex-direction:column;gap:6px;font-size:13.5px;color:var(--fg-2)}
.bf-ph{display:flex;gap:6px;flex-wrap:wrap}.bf-ph img{width:72px;height:72px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
.bf-m{font-size:12.5px;color:var(--muted)}
.bf-e{font-size:13.5px;background:var(--surface-2);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:2px}
.bf-e small{color:var(--muted);font-size:12px}
.bf-act{display:flex;gap:8px;flex-wrap:wrap}
.bf-act .btn{min-height:44px}
.bf-form{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line);padding-top:10px}
.bf-log summary{cursor:pointer;font-size:12.5px;color:var(--muted);font-weight:600}
.bf-log div{font-size:12.5px;color:var(--fg-2);padding:3px 0}
.bf-add{display:flex;gap:8px;flex-wrap:wrap}
.bf-veh h4{align-items:flex-start}
.freigaben{display:flex;flex-direction:column;gap:14px}
.nx-bef{display:flex;align-items:center;gap:8px;width:100%;border:1.5px solid var(--gold);background:var(--warn-weak);color:var(--fg);border-radius:10px;padding:10px 12px;font-weight:600;font-size:14px;cursor:pointer;text-align:left;margin-top:8px}
.nx-bef b{font-family:var(--display);font-size:20px;color:var(--warn)}
.nx-bef span{margin-left:auto}
.drawer-tabs .n.warn{background:var(--warn-weak);color:var(--warn)}

/* ---------- Fehlerspeicher ---------- */
.dg-ed{display:flex;flex-direction:column;gap:12px}
.dg-files{display:flex;gap:10px;flex-wrap:wrap}
.dg-f{position:relative;width:96px;height:96px}
.dg-f img,.dg-pdf{width:96px;height:96px;object-fit:cover;border-radius:10px;border:1px solid var(--line);display:grid;place-items:center;background:var(--surface-2);font-family:var(--mono);font-weight:700;color:var(--fg)}
.dg-x{position:absolute;top:4px;right:4px;width:28px;height:28px;border-radius:50%;border:0;background:rgb(0 0 0 / .6);color:#fff;font-size:13px;cursor:pointer}
.dg-list{display:flex;flex-direction:column;gap:8px}
.dg-row{display:grid;grid-template-columns:auto minmax(110px,1fr) 110px minmax(160px,2fr) 150px auto;gap:8px;align-items:end;background:var(--surface-2);border-radius:10px;padding:10px}
.dg-row .dm-n{align-self:center}
.dg-row .btn{min-height:40px}
@media (max-width:900px){.dg-row{grid-template-columns:auto 1fr 1fr auto}.dg-row .dg-txt{grid-column:2/4}}

/* ---------- Hereinnahme 1.16: Ausrichtung, Wartung, Auswahl, Reifen ---------- */
.lbl-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-height:20px}
.req.soft{color:var(--muted);background:var(--surface-3)}
.grid2.al>label,.grid2.al>.fake-l{display:flex;flex-direction:column;gap:5px;justify-content:flex-start}
.fake-l{font-size:13px;color:var(--muted);font-weight:600;min-width:0}
.my{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.my select,.grid2.al input{min-height:52px;font-size:17px}
.grid2.al .big-in{font-size:22px}
.pk-m{grid-column:1/-1;display:flex;flex-direction:column;gap:8px;background:var(--bad-weak);border-radius:10px;padding:10px}
.pk-tags{display:flex;flex-wrap:wrap;gap:6px}
.tag{min-height:42px;padding:0 14px;border:1.5px solid color-mix(in srgb,var(--bad) 35%,var(--line-2));background:var(--surface);color:var(--fg);border-radius:999px;font-weight:600;font-size:14px;cursor:pointer}
.tag[aria-pressed="true"]{background:var(--bad);border-color:var(--bad);color:#fff}
.tag[aria-pressed="true"]::before{content:"✓ "}
.pk-m .pk-n{background:var(--surface)}
.seg.ber{margin-bottom:2px}
.tires{display:grid;grid-template-columns:1fr 120px 1fr;grid-template-areas:"vl car vr" "hl car hr";gap:12px;align-items:stretch}
.tires-car{grid-area:car}
.tire{gap:8px}
.tire-ph{display:flex;align-items:center;gap:8px;justify-content:center;min-height:44px;width:100%;border:1.5px dashed var(--line-2);border-radius:10px;cursor:pointer;color:var(--accent);font-weight:600;font-size:14px;position:relative;overflow:hidden;background:var(--surface)}
.tire-ph .i{width:22px;height:22px}
.tire-ph.has{border-style:solid;border-color:var(--ok);color:var(--ok);justify-content:flex-start;padding-right:10px}
.tire-ph img{width:56px;height:44px;object-fit:cover}
.dg-row .dg-hint{grid-column:2/-1;color:var(--fg-2)}
.dg-hint textarea{min-height:52px;font-size:14px;background:var(--surface)}
@media (max-width:900px){.dg-row .dg-hint{grid-column:1/-1}}
@media (max-width:760px){.tires{grid-template-columns:1fr;grid-template-areas:"vl" "vr" "hl" "hr"}.tire{flex-direction:row;flex-wrap:wrap;justify-content:space-between}.tire .tire-ph{flex:1 1 100%}}
.kmw{display:flex;flex-direction:column;gap:2px;border-radius:12px;padding:12px 14px;border:1.5px solid;margin-bottom:10px;font-size:14.5px}
.kmw.bad{background:var(--bad-weak);border-color:var(--bad);color:var(--fg)}.kmw.bad b{color:var(--bad)}
.kmw.warn{background:var(--warn-weak);border-color:var(--gold);color:var(--fg)}.kmw.warn b{color:var(--warn)}
.kmw-now{font-size:13.5px;color:var(--muted);margin:-2px 0 12px}
input.inp-bad{border-color:var(--bad);box-shadow:0 0 0 3px var(--bad-weak)}

/* ---------- FIN, Fahrzeugschein, Ausstattung ---------- */
.fin-line{display:flex;flex-direction:column;gap:1px;font-size:12.5px;font-weight:600;min-height:16px}
.fin-ok{color:var(--ok)}.fin-bad{color:var(--bad)}.fin-hint{color:var(--muted);font-weight:500}
.scan-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}
.scan-btn{display:flex;align-items:center;gap:12px;text-align:left;border:1.5px dashed var(--accent);background:var(--accent-weak);color:var(--fg);border-radius:12px;padding:12px 14px;min-height:64px;cursor:pointer}
.scan-btn .i{width:28px;height:28px;color:var(--accent);flex:none}
.scan-btn span{display:flex;flex-direction:column;gap:2px}.scan-btn b{font-size:15px}.scan-btn small{font-size:12.5px;color:var(--muted)}
.okbox{border-color:color-mix(in srgb,var(--ok) 45%,transparent);background:var(--ok-weak);color:var(--fg)}
.tech{display:flex;flex-wrap:wrap;gap:6px}
.tech span{background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:3px 10px;font-size:13px;font-weight:600;color:var(--fg-2)}
.aus-box{display:flex;flex-direction:column;gap:12px}
.aus-g summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--muted)}
.aus-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.aus-c{background:var(--accent-weak);color:var(--fg);border-radius:8px;padding:5px 10px;font-size:13px;line-height:1.3}
.aus-c.light{background:var(--surface-2);color:var(--fg-2)}
.aus-c.hit{background:var(--gold);color:#1b1205;font-weight:600}

/* ---------- Galerie, Fahrzeug-Kopf, Werkstattauftrag ---------- */
.gal{position:fixed;inset:0;z-index:80;background:rgb(6 10 14 / .94);display:flex;flex-direction:column;color:#fff;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0)}
.gal-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-size:14px}
.gal-tb{display:flex;gap:8px;align-items:center}.gal .icon-btn{background:rgb(255 255 255 / .1);border-color:transparent;color:#fff}
.gal-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;position:relative;overflow:auto;touch-action:pinch-zoom}
.gal-stage img{max-width:100%;max-height:100%;object-fit:contain}
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:56px;height:56px;border-radius:50%;border:0;background:rgb(255 255 255 / .14);color:#fff;font-size:34px;cursor:pointer}
.gal-nav.l{left:12px}.gal-nav.r{right:12px}
.gal-strip{display:flex;gap:6px;padding:10px 14px;overflow-x:auto}.gal-strip img{width:72px;height:54px;object-fit:cover;border-radius:6px;opacity:.55;cursor:pointer;border:2px solid transparent}.gal-strip img.cur{opacity:1;border-color:var(--gold)}
.bf-body{display:flex;gap:14px;align-items:flex-start}
.bf-sk{width:84px;flex:none;background:var(--surface-2);border-radius:10px;padding:4px}.bf-sk .hn-car{min-height:0;max-height:150px;cursor:default}
.bf-ph{gap:8px}.bf-img{border:0;padding:0;background:none;cursor:zoom-in;border-radius:10px;overflow:hidden}
.bf-img img,.bf-ph img{width:112px;height:84px;object-fit:cover;border-radius:10px;border:1px solid var(--line);display:block}
.bf-pdf{display:grid;place-items:center;width:84px;height:84px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);font-family:var(--mono);font-weight:700;color:var(--fg);text-decoration:none}
.vh{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center}
.vh-t{display:flex;flex-direction:column;gap:3px;min-width:0}.vh-t b{font-family:var(--display);font-size:18px}
.vh-ids{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}
.vh-c{grid-column:1;display:flex;gap:6px;flex-wrap:wrap}.vh-c:empty{display:none}
.vh-a{grid-column:2;grid-row:1/3;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.tx.wa{cursor:pointer}.tx.wa input{width:22px;height:22px}.tx.wa .tx-t{display:flex;flex-direction:column}.tx.wa small{color:var(--muted);font-size:12.5px}
.wa-row{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:10px 0;border-top:1px solid var(--line)}.wa-row:first-of-type{border-top:0}
.wa-act{display:flex;gap:6px;align-items:center}.wa-act input{width:170px;min-height:36px}
@media (max-width:760px){.vh{grid-template-columns:1fr}.vh-a{grid-column:1;grid-row:auto;justify-content:flex-start}.bf-sk{width:64px}.bf-img img{width:88px;height:66px}}
label.tx.wa{flex-direction:row;align-items:center;gap:12px;font-weight:500;color:var(--fg)}
/* Ausstattung übersichtlich */
.aus-top{display:flex;flex-wrap:wrap;gap:8px}
.aus-t{background:var(--ok-weak);color:var(--ok);border-radius:999px;padding:6px 12px;font-weight:700;font-size:13.5px}
.aus-blk{display:flex;flex-direction:column;gap:10px}
.aus-h{font-family:var(--display);font-size:16px;font-weight:700;color:var(--fg);display:flex;align-items:center;gap:8px;cursor:default}
.aus-h span{font-family:var(--body);font-size:12px;background:var(--surface-3);color:var(--fg-2);border-radius:999px;padding:1px 9px}
details.aus-blk summary{cursor:pointer;list-style:none}details.aus-blk summary::before{content:"▸";color:var(--muted);margin-right:2px}details.aus-blk[open] summary::before{content:"▾"}
.aus-cats{columns:2 300px;column-gap:14px}
.aus-cat{break-inside:avoid;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:10px 14px 12px;margin:0 0 12px}
.aus-cat h5{margin:0 0 6px;font-size:13.5px;font-weight:700;display:flex;align-items:center;gap:8px;color:var(--fg)}
.aus-cat h5 .i{width:18px;height:18px;color:var(--accent)}
.aus-cat h5 em{font-style:normal;margin-left:auto;font-size:12px;color:var(--muted);font-weight:600}
.aus-cat ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column}
.aus-cat li{font-size:13.5px;line-height:1.35;padding:4px 0 4px 16px;position:relative;border-top:1px solid var(--line);color:var(--fg-2)}
.aus-cat li:first-child{border-top:0}
.aus-cat li::before{content:"";position:absolute;left:2px;top:11px;width:6px;height:6px;border-radius:50%;background:var(--accent);opacity:.6}
.aus-cat li.hit{color:var(--fg);font-weight:700;background:var(--warn-weak);border-radius:6px}
.bf-e{display:block}.bf-e small{display:block;margin-top:2px}
.bf-act.small{align-items:center}.bf-act.small .btn{min-height:34px;padding:0 12px;font-size:13px}
/* Aufträge-Übersicht */
.auf-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,520px),1fr));gap:14px}
.auf{background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:12px;box-shadow:var(--sh-1);padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.auf.done{border-top-color:var(--ok)}
.auf-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.auf-nr{font-family:var(--display);font-size:21px;font-weight:700;color:var(--fg)}
.auf-d{font-size:12.5px;color:var(--muted)}
.auf-v{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:15px}
.auf-p{margin:0;padding:0 0 0 20px;display:flex;flex-direction:column;gap:4px;font-size:14px}
.auf-p li{padding:2px 0}.auf-p li span{display:block;color:var(--fg)}.auf-p em{font-style:normal;font-size:12px;color:var(--muted)}
.auf-f{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:10px}
.auf-s{font-size:13.5px;color:var(--fg-2)}
.auf-f .wa-act{flex-wrap:wrap}
/* Ausstattung prüfen */
.aus-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.aus-st{flex:1;min-width:240px;display:flex;flex-direction:column;gap:2px;border-radius:10px;padding:9px 12px;font-size:13px;border:1px solid var(--line)}
.aus-st b{font-size:13.5px}.aus-st span{color:var(--fg-2)}
.aus-st.ok{background:var(--ok-weak);border-color:transparent}.aus-st.ok b{color:var(--ok)}
.aus-st.open{background:var(--surface-2)}.aus-st.open b{color:var(--fg)}
.aus-st.old{background:var(--warn-weak);border-color:transparent}.aus-st.old b{color:var(--warn,#a6620d)}
.aus-edit{background:var(--surface-2);border:1.5px dashed var(--acc,var(--accent));border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.aus-edit p{margin:0;font-size:13px;color:var(--fg-2)}
.aus-addf{display:flex;gap:8px}.aus-addf input{flex:1;min-width:0}
.aus-cat li{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}
.aus-x{flex:1;min-width:0}
.aus-b{font-style:normal;font-size:11px;font-weight:700;border-radius:999px;padding:1px 7px;background:var(--accent-weak);color:var(--accent);white-space:nowrap}
.aus-b.w{background:var(--warn-weak);color:var(--warn,#a6620d)}
.aus-cat li.wrn{background:var(--warn-weak)}
.aus-del{flex:none;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--bad,#b4342f);font-weight:700;cursor:pointer;line-height:1}
.aus-del:hover{background:var(--bad,#b4342f);color:#fff}
.aus-rml,.aus-log{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13px}
.aus-rml li{display:flex;justify-content:space-between;align-items:center;gap:8px}.aus-rml s{color:var(--muted)}
.aus-log time{color:var(--muted);margin-right:6px;font-variant-numeric:tabular-nums}
.chip-aus{font-size:11px}
/* Auftrags-Eskalation */
.esk{display:flex;flex-direction:column;gap:6px;font-size:12.5px;color:var(--fg-2)}
.esk.ok{color:var(--ok);font-weight:600}
.esk ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:4px}
.esk li{font-size:11px;font-weight:700;text-align:center;padding:4px 2px;border-radius:6px;background:var(--surface-2);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.esk li.on{background:var(--accent-weak);color:var(--accent)}
.esk.s2 li.on,.esk.s3 li.on{background:var(--warn-weak);color:var(--warn)}
.esk.s4 li.on{background:var(--bad);color:#fff}
.auf-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:var(--accent-weak);border:1px solid var(--line-2);border-left:5px solid var(--accent);border-radius:12px;padding:12px 16px;margin-bottom:12px}
.auf-banner div{display:flex;flex-direction:column;gap:2px;font-size:13.5px;min-width:0;flex:1}
.auf-banner b{font-size:15px}
.auf-banner.s2,.auf-banner.s3{background:var(--warn-weak);border-color:transparent;border-left-color:var(--warn)}
.auf-banner.s4{background:var(--bad-weak,#fbe8e7);border-color:transparent;border-left-color:var(--bad)}
@media (max-width:600px){.esk ol{grid-template-columns:repeat(3,1fr)}}
/* Aufträge zusammenführen */
.wa-zu{border:1.5px solid var(--line-2);background:var(--surface-2);border-radius:12px;padding:12px 14px}
.wa-zu-opt{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin-top:8px}
.radio-card,.wa-zu-opt label.radio-card{display:flex;flex-direction:row;align-items:flex-start;gap:10px;background:var(--surface);border:1.5px solid var(--line);border-radius:10px;padding:10px 12px;cursor:pointer}
.radio-card:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak)}
.radio-card input{margin-top:3px;width:18px;height:18px;flex:none}
.radio-card span{display:flex;flex-direction:column;gap:2px}.radio-card small{color:var(--muted);font-size:12px}
.auf-merge{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:var(--warn-weak);border-radius:10px;padding:8px 12px;font-size:13px}
.auf-merge span{flex:1;min-width:200px}
.auf.merged{opacity:.7;border-top-color:var(--line)}.auf.merged .wa-act input,.auf.merged [data-wasave]{display:none}
.wa-row.merged{opacity:.65}.wa-row.merged .wa-act input,.wa-row.merged [data-wasave]{display:none}
.ok-t{color:var(--ok)}
/* Ausstattung bei Hereinnahme */
.aus-cg{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.aus-cg h5{margin:0;font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}
.aus-quick summary{cursor:pointer;font-weight:600;font-size:13.5px}
.ha-erk{border:1.5px dashed var(--accent);background:var(--surface-2);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:8px;margin-top:10px}
.tgl.unsicher{border-style:dashed}
.tgl small{color:var(--muted);font-weight:500;margin-left:4px}
.hn-chk{display:flex;align-items:center;gap:10px;margin-top:14px;font-size:14px}.hn-chk input{width:20px;height:20px}

/* ===== Tickets & Aufträge – neue Gestaltung (1.21) ===== */
.tbig{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:4px 0 14px}
.tbig button{display:flex;align-items:center;gap:12px;text-align:left;background:var(--surface);border:1.5px solid var(--line);border-radius:14px;padding:14px 16px;cursor:pointer;box-shadow:var(--sh-1);position:relative;min-height:72px;transition:border-color .12s,box-shadow .12s}
.tbig button:hover{border-color:var(--line-2);box-shadow:var(--sh-2)}
.tbig button[aria-selected="true"]{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak),var(--sh-1)}
.tbig .tb-ic{flex:none;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--surface-3);color:var(--fg-2)}
.tbig button[aria-selected="true"] .tb-ic{background:var(--accent);color:var(--accent-fg)}
.tbig .tb-ic .i{width:22px;height:22px}
.tbig .tb-t{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
.tbig .tb-t b{font-size:17px;color:var(--fg)}.tbig .tb-t small{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tbig .n{flex:none;min-width:30px;height:30px;padding:0 8px;border-radius:999px;background:var(--surface-3);color:var(--fg);font-weight:800;font-size:14px;display:grid;place-items:center}
.tbig button[aria-selected="true"] .n{background:var(--accent);color:var(--accent-fg)}
.tbig .n.warn{background:var(--warn-weak);color:var(--warn)}
.tbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:10px 12px;margin-bottom:14px;box-shadow:var(--sh-1)}
.tbar select{min-height:42px}.tbar .search{flex:1 1 240px}
.tbar-sum{margin-left:auto;color:var(--muted);font-size:13px;font-weight:600}
.seg-lg button{min-height:42px;font-size:14px}.seg .sn{display:inline-block;margin-left:4px;font-size:12px;opacity:.75}
.tickets,.freigaben{display:flex;flex-direction:column;gap:14px}
/* Fahrzeugkarte */
.vcard{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--sh-1);overflow:hidden}
.vcard.over{border-left:5px solid var(--bad)}
.vcard>.tlist,.vcard>.bf-list,.vcard>.auf-list{padding:12px 14px 14px}
.vh2{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 14px;background:var(--surface-2);border-bottom:1px solid var(--line)}
.vh-ph{width:64px;height:48px;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:var(--surface-3);display:grid;place-items:center;padding:0;cursor:pointer;color:var(--muted)}
.vh-ph img{width:100%;height:100%;object-fit:cover;display:block}.vh-ph .i{width:26px;height:26px}
.vh-main{min-width:0;display:flex;flex-direction:column;gap:3px}
.vh-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.vh-title b{font-size:16.5px;color:var(--fg)}
.vh-meta{display:flex;gap:6px 12px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);align-items:center}
.stg{display:inline-flex;align-items:center;gap:5px;font-weight:700;color:var(--fg-2)}.stg::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c)}
.vh2 .vh-c{display:flex;gap:6px;flex-wrap:wrap}
.vh2 .vh-a{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.btn .cnt{background:rgba(255,255,255,.25);border-radius:999px;padding:0 7px;font-size:12px}
.btn.abbtn{background:#efe6f7;border-color:#d9c6ec;color:#5b3784}.btn.abbtn .cnt{background:#d9c6ec}
.btn.abbtn:hover{background:#e5d7f2}
.chip.ab{background:#efe6f7;color:#5b3784}
/* Ticketzeilen */
.tlist{display:flex;flex-direction:column;gap:8px}
.trow2{display:flex;align-items:flex-start;gap:12px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--line-2);border-radius:12px;padding:10px 12px}
.trow2.tm-werkstatt{border-left-color:var(--accent)}.trow2.tm-aufbereitung{border-left-color:#8a5bb5}.trow2.tm-verkauf{border-left-color:var(--gold)}
.trow2.done{opacity:.6}.trow2.done .t-title{text-decoration:line-through}
.tbody{min-width:0;flex:1}.tbody .t-title{font-weight:600;font-size:15px}.tbody .t-sub{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.tchk{flex:none;position:relative;width:30px;height:30px;cursor:pointer}
.tchk input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer;width:100%;height:100%}
.tchk span{position:absolute;inset:0;border:2px solid var(--line-2);border-radius:9px;background:var(--surface);transition:background .1s,border-color .1s}
.tchk input:checked+span{background:var(--ok);border-color:var(--ok)}
.tchk input:checked+span::after{content:"";position:absolute;left:9px;top:4px;width:7px;height:14px;border:solid #fff;border-width:0 3px 3px 0;transform:rotate(45deg)}
.tchk input:focus-visible+span{box-shadow:0 0 0 3px var(--accent-weak)}
.tchk input:disabled+span{opacity:.5}
/* Auftragskarten */
.auf-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,460px),1fr));gap:12px}
.auf-list.one{grid-template-columns:1fr}
.auf{box-shadow:none}
.auf.ab{border-top-color:#8a5bb5}
.auf-k{font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--muted)}
.auf.ab .auf-k{color:#8a5bb5}
.auf-p li.pdone span{color:var(--ok)}
.pbar{display:block;height:8px;border-radius:999px;background:var(--surface-3);overflow:hidden}.pbar span{display:block;height:100%;background:var(--ok);border-radius:999px;transition:width .25s}
.auf-msg{background:var(--surface-2);border-radius:10px;padding:8px 12px;font-size:13px;display:flex;gap:6px;flex-wrap:wrap}.auf-msg time{margin-left:auto;color:var(--muted);font-size:12px}
.pos-l{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.pos-l li{display:flex;align-items:flex-start;gap:12px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.pos-l li.done{background:var(--ok-weak);border-color:transparent}.pos-l li.done .pos-b>b{text-decoration:line-through;color:var(--fg-2)}
.pos-b{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.pos-b b{font-size:14.5px}.pos-b small{font-size:12.5px;color:var(--muted)}
.pos-ph{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.pos-ph button{padding:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;width:76px;height:57px;cursor:zoom-in;background:var(--surface-3)}
.pos-ph img{width:100%;height:100%;object-fit:cover;display:block}
.pos-l.big li{padding:12px 14px;gap:14px}.pos-l.big .tchk{width:40px;height:40px}.pos-l.big .tchk span{border-radius:11px}
.pos-l.big .tchk input:checked+span::after{left:13px;top:5px;width:9px;height:19px}
.pos-l.big .pos-b b{font-size:16.5px}.pos-l.big .pos-ph button{width:110px;height:82px}
/* Auftragsdialog: Art */
.wa-typ{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.wa-typ button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:12px 14px;border:1.5px solid var(--line-2);border-radius:12px;background:var(--surface);cursor:pointer}
.wa-typ button b{font-size:16px}.wa-typ button small{color:var(--muted);font-size:12.5px}
.wa-typ button[aria-checked="true"]{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak)}
.wa-typ button.ab[aria-checked="true"]{border-color:#8a5bb5;box-shadow:0 0 0 3px #efe6f7}
/* Meine Arbeit */
.mine-head{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.mine-head h1{margin:0;font-size:28px}.mine-f{display:flex;gap:10px;flex-wrap:wrap}
.jobs{display:flex;flex-direction:column;gap:18px}
.job{display:grid;grid-template-columns:minmax(200px,300px) minmax(0,1fr);background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--sh-1);overflow:hidden}
.job-ph{position:relative;border:0;padding:0;background:var(--surface-3);cursor:zoom-in;min-height:200px}
.job-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.job-noph{color:var(--muted);font-weight:600}
.job-n{position:absolute;left:10px;bottom:10px;background:rgba(15,36,54,.8);color:#fff;font-size:13px;font-weight:700;border-radius:999px;padding:4px 10px}
.job-b{padding:16px 18px;display:flex;flex-direction:column;gap:12px;min-width:0}
.job-h .vh-title b{font-size:20px}.job-h .vh-meta{font-size:14px;margin-top:2px}.job-h .sp{font-weight:800;color:var(--fg)}
.job-o{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--surface-2)}
.job-oh{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.job-oh b{font-size:15px}.job-pg{margin-left:auto;font-weight:800;color:var(--fg-2)}
.job-note{font-size:14px;background:var(--warn-weak);border-radius:10px;padding:8px 12px}
.job-a{display:flex;gap:10px;flex-wrap:wrap}.job-btn{min-height:48px;font-size:15px;padding:0 18px;cursor:pointer}
.job-btn.busy{opacity:.6;pointer-events:none}
.job-msg{display:flex;gap:8px;align-items:flex-end}.job-msg textarea{flex:1}
.mine-done{margin-top:16px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 16px}
.mine-done summary{cursor:pointer;font-weight:700}.mine-done ul{margin:10px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:6px}
.empty-box.big{padding:40px 20px;font-size:15px}
@media (max-width:900px){.tbig{grid-template-columns:1fr}.tbig button{min-height:60px}.vh2{grid-template-columns:52px minmax(0,1fr)}.vh2 .vh-a{grid-column:1/-1;justify-content:flex-start}.vh-ph{width:52px;height:40px}}
@media (max-width:760px){.job{grid-template-columns:1fr}.job-ph{min-height:180px}.wa-typ{grid-template-columns:1fr}.tbar-sum{margin-left:0}}
/* Korrekturen 1.21 */
.tbar select{width:auto;flex:0 0 auto}
.vh2 .vh-c{grid-column:auto}.vh2 .vh-a{grid-column:3;grid-row:1}
.vh2 .vh-c:empty{display:none}
.job{align-items:start}
.job-ph{aspect-ratio:4/3;min-height:0;height:auto;align-self:start;margin:14px 0 14px 14px;border-radius:14px;overflow:hidden}
@media (max-width:900px){.vh2 .vh-a{grid-column:1/-1;grid-row:2}}
@media (max-width:760px){.job-ph{margin:0;border-radius:0}}
@media (max-width:760px){.job-ph{aspect-ratio:16/9}}
.grid3{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
/* Meine Arbeit im Ticket-Stil (1.22) */
.tbig.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.tbig .tb-ic.ab{color:#8a5bb5}.tbig button[aria-selected="true"] .tb-ic.ab{background:#8a5bb5;color:#fff}
.vh-ph.big{width:84px;height:63px;position:relative}
.vh-ph .ph-n{position:absolute;right:3px;bottom:3px;background:rgba(15,36,54,.85);color:#fff;font-size:11px;font-weight:700;border-radius:999px;padding:0 6px;line-height:16px}
.vh2:has(.vh-ph.big){grid-template-columns:84px minmax(0,1fr) auto}
.vh2 .sp{font-weight:800;color:var(--fg)}
.ord-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 2px 2px;margin-top:4px;border-bottom:2px solid var(--accent)}
.ord-h.ab{border-bottom-color:#8a5bb5}.ord-h:first-child{margin-top:0}
.ord-h b{font-size:14.5px}.ord-note{font-size:13px;background:var(--warn-weak);border-radius:8px;padding:2px 8px}
.ord-pg{margin-left:auto;display:flex;align-items:center;gap:8px;font-weight:800;color:var(--fg-2);font-size:13px}.ord-pg .pbar{width:90px}
.mine .trow2{padding:12px 14px}.mine .tchk{width:36px;height:36px}.mine .tchk input:checked+span::after{left:11px;top:5px;width:8px;height:16px}
.mine .t-title{font-size:16px}
.job-msg{padding:10px 14px;border-bottom:1px solid var(--line);background:var(--surface-2)}
@media (max-width:900px){.vh2:has(.vh-ph.big){grid-template-columns:64px minmax(0,1fr)}.vh-ph.big{width:64px;height:48px}}
.tbig .n[hidden]{display:none}
.vh-a label.btn{flex-direction:row;display:inline-flex;cursor:pointer}
/* 1.23: Dateien, Hereinnahme groß, Klappkarten */
.mf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}
.mf-grid.docs{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.mf-img{position:relative;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface-3);aspect-ratio:4/3}
.mf-img img{width:100%;height:100%;object-fit:cover;display:block}
.mf-doc{position:relative;display:flex;align-items:center;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--sh-1)}
.mf-doc a{display:flex;align-items:center;gap:12px;padding:10px 44px 10px 12px;color:var(--fg);text-decoration:none;min-width:0;flex:1}
.mf-doc a:hover b{text-decoration:underline}
.mf-ic{flex:none;width:40px;height:48px;border-radius:6px;background:#fbe8e7;color:#b4342f;font-weight:800;font-size:12px;display:grid;place-items:center;border:1px solid #f1c9c6;position:relative}
.mf-t{display:flex;flex-direction:column;gap:2px;min-width:0}.mf-t b{font-size:14px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.mf-t small{font-size:12px;color:var(--muted)}
.mf-del{position:absolute;top:6px;right:6px;min-width:30px;height:30px;padding:0 8px;border-radius:8px;border:1px solid var(--line);background:rgb(255 255 255 / .92);color:var(--bad);font-weight:700;cursor:pointer;font-size:13px}
.mf-del:hover{background:var(--bad);color:#fff;border-color:var(--bad)}
.drawer.wide.hn{width:min(1500px,calc(100vw - 24px));height:calc(100dvh - 24px)}
.hn-steps button{flex:1 1 auto;padding:8px 10px;font-size:14px}
@media (min-width:1300px){.hn-steps{justify-content:space-between}}
.vcard[data-vc] .vh2{cursor:pointer;user-select:none}
.vcard[data-vc] .vh2:hover{background:var(--surface-3)}
.vcard.closed>:not(.vh2){display:none!important}
.vcard.closed .vh2{border-bottom:0}
.vc-tg{flex:none;width:38px;height:38px;border-radius:10px;border:1px solid var(--line-2);background:var(--surface);display:grid;place-items:center;cursor:pointer;color:var(--fg-2)}
.vc-tg .i{width:20px;height:20px;transition:transform .15s}
.vc-tg[aria-expanded="false"] .i{transform:rotate(-90deg)}
.vc-all{display:inline-flex;gap:2px}
.tbar-sum+span,.tbar-sum+.vc-all{margin-left:0}
/* ===== Board als Liste (1.24) ===== */
.stbar{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin-bottom:10px}
.stbar button{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:10px 12px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer;text-align:left;overflow:hidden;box-shadow:var(--sh-1);min-width:0}
.stbar button::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--c)}
.stbar .nm{font-size:12.5px;font-weight:700;color:var(--fg-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.stbar b{font-size:24px;line-height:1.15;color:var(--fg);font-family:var(--display)}
.stbar em{font-style:normal;font-size:11px;font-weight:700;color:var(--bad)}
.stbar i{position:absolute;left:0;bottom:0;height:3px;background:var(--c);opacity:.55}
.stbar button.on{border-color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 22%,transparent)}
.stbar button.on .nm{color:var(--fg)}
.bquick{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
.qchip{border:1.5px solid var(--line-2);background:var(--surface);border-radius:999px;padding:6px 12px;font-weight:600;font-size:13px;cursor:pointer;color:var(--fg-2)}
.qchip b{margin-left:3px;color:var(--fg)}.qchip:disabled{opacity:.45;cursor:default}
.qchip.need{border-color:var(--warn);color:var(--warn)}
.qchip.on{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.qchip.on b{color:var(--accent-fg)}
.bq-sum{margin-left:auto;color:var(--muted);font-size:13px;font-weight:600}
.blist{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh-1);overflow:hidden}
.bhead,.brow{display:grid;grid-template-columns:minmax(220px,2.2fr) minmax(130px,1fr) 80px minmax(100px,.9fr) minmax(160px,1.6fr) minmax(200px,1.7fr);gap:12px;align-items:center;padding:0 14px}
.bhead{position:sticky;top:0;z-index:2;background:var(--surface-2);border-bottom:1px solid var(--line);min-height:40px;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}
.bhead button{border:0;background:none;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;padding:0}.bhead button.on{color:var(--fg)}
.brow{min-height:58px;border-bottom:1px solid var(--line);cursor:pointer;position:relative;padding-top:8px;padding-bottom:8px}
.brow::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--c)}
.brow:hover{background:var(--surface-2)}.brow:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.brow.late::before{background:var(--bad);width:4px}
.b-veh{min-width:0}.b-t{display:flex;align-items:center;gap:8px;min-width:0}.b-t b{font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.b-s{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.b-st{display:flex;flex-direction:column;gap:2px;font-size:13px}.b-d{font-size:12px;color:var(--muted);font-weight:600}.b-d.bad{color:var(--bad)}
.b-pr{display:flex;flex-direction:column;font-size:14px}.b-pr small{font-size:11.5px;color:var(--muted)}
.b-open{display:flex;gap:4px;flex-wrap:wrap}.b-open .chip{font-size:11.5px}
.b-next{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;min-width:0}
.b-next>span{min-width:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.b-next em{font-style:normal;color:var(--muted);font-size:12px}.b-next .t-warn{color:var(--warn);font-weight:700}.b-next .t-bad{color:var(--bad);font-weight:700}
.b-go{flex:none;min-height:32px;padding:4px 10px;font-size:13px}
.muted{color:var(--muted)}
.bgrp{border-bottom:1px solid var(--line)}
.bg-h{display:flex;align-items:center;gap:10px;width:100%;border:0;background:color-mix(in srgb,var(--c) 7%,var(--surface));padding:9px 14px;cursor:pointer;text-align:left;border-bottom:1px solid var(--line)}
.bg-h b{font-size:15px}.bg-h small{color:var(--muted);font-size:12.5px}.bg-h em{font-style:normal;font-size:12px;font-weight:700;color:var(--bad)}
.bg-h .i{margin-left:auto;width:18px;height:18px;transition:transform .15s;color:var(--muted)}
.bgrp.closed .bg-h .i{transform:rotate(-90deg)}.bgrp.closed .bg-b{display:none}
.b-more{display:block;width:100%;border:0;background:var(--surface-2);padding:10px;font-weight:700;color:var(--accent);cursor:pointer}
.bmode{flex:none}
@media (max-width:1280px){.bhead,.brow{grid-template-columns:minmax(200px,2fr) 120px 70px 100px minmax(150px,1.4fr) minmax(180px,1.5fr);gap:10px}}
@media (max-width:1100px){.stbar{grid-template-columns:repeat(4,minmax(0,1fr))}.bhead{display:none}
  .brow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"veh st" "open pr" "next next";row-gap:6px}
  .b-veh{grid-area:veh}.b-st{grid-area:st;align-items:flex-end}.b-sz{display:none}.b-pr{grid-area:pr;align-items:flex-end}.b-open{grid-area:open}.b-next{grid-area:next}}
@media (max-width:600px){.stbar{display:flex;overflow-x:auto;scrollbar-width:none}.stbar button{flex:0 0 112px}.bq-sum{width:100%;margin:0}}
.b-t .plate{flex:none;white-space:nowrap}.plate{white-space:nowrap}
@media (max-width:1100px){
  .brow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"veh st" "open pr" "next next";row-gap:4px;min-height:0;padding-top:10px;padding-bottom:10px}
  .b-st{flex-direction:row;align-items:center;gap:8px}
  .b-pr{flex-direction:row;gap:8px;align-items:baseline}
  .b-open.none,.b-pr.none,.b-next.none{display:none}
  .b-next{justify-content:space-between}
}
/* 1.25 Ist-Kosten & Zeit */
.auf-ist{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;border-top:1px dashed var(--line);padding-top:8px}
.auf-ist label{display:flex;flex-direction:column;gap:2px;font-size:12px;font-weight:600;color:var(--muted)}
.auf-ist input{width:120px;min-height:36px}
.tz{min-height:34px}
.tz.run{background:var(--bad-weak);color:var(--bad);border-color:transparent}
/* Preise */
.prh,.prr{display:grid;grid-template-columns:minmax(220px,2fr) 110px minmax(170px,1.5fr) minmax(120px,1fr) minmax(120px,1fr) minmax(250px,1.6fr);gap:12px;align-items:center;padding:10px 14px}
.prh{background:var(--surface-2);border-bottom:1px solid var(--line);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}
.prr{border-bottom:1px solid var(--line);position:relative}.prr::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;background:var(--c)}
.prr.unter{background:color-mix(in srgb,var(--bad) 5%,var(--surface))}
.prr>div{display:flex;flex-direction:column;gap:2px;min-width:0}.prr small{font-size:11.5px;color:var(--muted)}
.prr .b-veh{cursor:pointer}.pr-k b{font-size:14.5px}
.pr-a{flex-direction:row!important;flex-wrap:wrap;align-items:center;gap:6px!important}.pr-a input{width:110px;min-height:36px}.pr-a small{width:100%}
.t-warn{color:var(--warn)!important;font-weight:700}.t-bad{color:var(--bad)!important;font-weight:700}
@media (max-width:1100px){.prh{display:none}.prr{grid-template-columns:1fr 1fr;row-gap:8px}.prr .b-veh{grid-column:1/-1}.pr-a{grid-column:1/-1}}
/* Durchlaufzeiten */
.dl{display:flex;flex-direction:column}
.dl-h,.dl-r{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(150px,1.1fr) 60px minmax(170px,1.4fr) minmax(160px,2fr);gap:12px;align-items:center;padding:8px 4px;border-bottom:1px solid var(--line);font-size:13.5px}
.dl-h{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}
.dl-r small{color:var(--muted)}.dl-r.eng{background:var(--bad-weak);border-radius:8px}.dl-r em{font-style:normal;font-size:11px;font-weight:800;color:#fff;background:var(--bad);border-radius:999px;padding:1px 7px;margin-left:4px}
.dl-bar{position:relative;height:16px;background:var(--surface-3);border-radius:4px;overflow:hidden}
.dl-bar b{position:absolute;left:0;top:0;bottom:6px;border-radius:4px 4px 0 0}
.dl-bar u{position:absolute;left:0;bottom:1px;height:4px;background:var(--fg-2);border-radius:2px;text-decoration:none}
.dl-bar i.g{position:absolute;top:0;bottom:0;width:2px;background:var(--fg)}
@media (max-width:900px){.dl-h{display:none}.dl-r{grid-template-columns:1fr 1fr;row-gap:4px}.dl-bar{grid-column:1/-1}}
/* Nach Verkauf */
.tbig:not(.two){grid-template-columns:repeat(4,minmax(0,1fr))}
.trow2.rek{align-items:center}.trow2.rek select{flex:none;min-height:38px;width:auto}
.rek-n{margin-top:6px;min-height:34px;font-size:13px}
.rek-add{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding-top:6px;border-top:1px dashed var(--line)}.rek-add input[name=text]{flex:1 1 260px}
.gw-ed{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end;font-size:13px}.gw-ed label{display:flex;flex-direction:column;gap:2px;font-weight:600;color:var(--muted)}.gw-ed input[type=date]{min-height:36px}
@media (max-width:1100px){.tbig:not(.two){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.tbig:not(.two){grid-template-columns:1fr}}
label.hn-chk,.panel label.hn-chk,.rek-add label.hn-chk{flex-direction:row!important;align-items:center;gap:10px;display:flex}
.ord-note{max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* ===== Fotorundgang & KI-Schadenerkennung ===== */
.rg-head{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.rg-hl{display:flex;gap:14px;align-items:center;flex:1 1 380px;min-width:0}.rg-hl h4{margin:0 0 4px}
.rg-mini{width:92px;height:108px;flex:none}
.rg-prog{height:8px;border-radius:999px;background:var(--surface-3);overflow:hidden;margin-top:8px}.rg-prog span{display:block;height:100%;background:var(--ok);transition:width .3s}
.rg-go{display:flex;flex-direction:column;gap:6px;align-items:stretch;flex:0 1 300px}.rg-go small{color:var(--muted);font-size:12px;text-align:center}
.rg-go .btn.big{min-height:60px;font-size:17px}
.rg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.rg-t{position:relative;aspect-ratio:4/3;border:2px dashed var(--line-2);border-radius:12px;background:var(--surface-2);overflow:hidden;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}
.rg-t.has{border-style:solid;border-color:var(--line)}
.rg-t img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rg-t .slot-ic{color:var(--muted)}.rg-t .slot-ic .i{width:28px;height:28px}
.rg-n{position:absolute;left:0;right:0;bottom:0;padding:16px 8px 6px;background:linear-gradient(transparent,rgb(0 0 0 / .65));color:#fff;font-size:12.5px;font-weight:700;text-align:left}
.rg-t:not(.has) .rg-n{background:none;color:var(--fg-2);padding:6px 8px}
.rg-st{position:absolute;top:6px;left:6px;right:6px;display:flex;gap:4px;flex-wrap:wrap}
.rg-b{font-size:11px;font-weight:800;border-radius:999px;padding:2px 8px;background:#fff;color:var(--fg);box-shadow:0 1px 3px rgb(0 0 0 / .25);white-space:nowrap}
.rg-b.ok{background:var(--ok);color:#fff}.rg-b.dmg{background:var(--bad);color:#fff}.rg-b.warn{background:var(--warn);color:#fff}.rg-b.bad{background:#333;color:#fff}
.rg-b.wait{background:#fff;color:var(--accent);animation:rgpulse 1.2s infinite}
@keyframes rgpulse{50%{opacity:.55}}
/* Live-Kamera */
.rg-cam{position:fixed;inset:0;z-index:90;background:#000;color:#fff;display:flex;flex-direction:column}
.rg-cam video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rg-flash{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none}.rg-flash.on{animation:rgflash .35s}
@keyframes rgflash{0%{opacity:.85}100%{opacity:0}}
.rg-top{position:relative;display:flex;align-items:flex-start;gap:12px;padding:calc(12px + env(safe-area-inset-top,0)) 14px 14px;background:linear-gradient(rgb(0 0 0 / .75),transparent)}
.rg-tt{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.rg-tt b{font-size:22px}.rg-tt small{font-size:14px;opacity:.9}
.rg-top .rg-mini{width:74px;height:86px;background:rgb(255 255 255 / .9);border-radius:10px;padding:2px}
.rg-x{width:46px;height:46px;border-radius:50%;border:0;background:rgb(255 255 255 / .18);color:#fff;display:grid;place-items:center;cursor:pointer}
.rg-frame{position:relative;flex:1;margin:4% 6%;border:2px solid rgb(255 255 255 / .55);border-radius:18px;pointer-events:none;box-shadow:0 0 0 2000px rgb(0 0 0 / .12)}
.rg-cam.rad .rg-frame{margin:6% auto;aspect-ratio:1;width:min(70vw,60vh);flex:none;border-radius:50%}
.rg-bot{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px calc(18px + env(safe-area-inset-bottom,0));background:linear-gradient(transparent,rgb(0 0 0 / .8))}
.rg-sm{min-width:96px;min-height:48px;border-radius:999px;border:0;background:rgb(255 255 255 / .18);color:#fff;font-weight:700;font-size:15px;cursor:pointer}
.rg-shot{display:flex;flex-direction:column;align-items:center;gap:6px}.rg-shot small{font-size:13px;opacity:.9}
#rg-snap{width:84px;height:84px;border-radius:50%;border:5px solid #fff;background:rgb(255 255 255 / .25);padding:6px;cursor:pointer}
#rg-snap span{display:block;width:100%;height:100%;border-radius:50%;background:#fff}#rg-snap:active span{transform:scale(.9)}
.rg-last{position:absolute;left:14px;bottom:calc(130px + env(safe-area-inset-bottom,0));display:flex;align-items:center;gap:10px;background:rgb(0 0 0 / .6);border-radius:14px;padding:6px 12px 6px 6px;max-width:80vw}
.rg-last img{width:72px;height:54px;object-fit:cover;border-radius:8px}.rg-last span{display:flex;flex-direction:column;gap:4px;font-size:13px}.rg-last .rg-b{align-self:flex-start}
/* Vorschläge */
.kv h4{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.kv-list{display:flex;flex-direction:column;gap:10px}
.kv-c{display:flex;gap:12px;border:1px solid var(--line);border-left:4px solid var(--bad);border-radius:12px;padding:10px;background:var(--surface)}
.kv-img{position:relative;flex:none;width:150px;height:112px;border-radius:10px;border:1px solid var(--line);background-color:var(--surface-3);background-repeat:no-repeat;cursor:zoom-in;padding:0}
.kv-pct{position:absolute;left:6px;top:6px;font-size:11.5px;font-weight:800;border-radius:999px;padding:2px 7px;color:#fff;background:#666}.kv-pct.hi{background:var(--bad)}.kv-pct.mid{background:var(--warn)}.kv-pct.lo{background:#7a8693}
.kv-b{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.kv-b b{font-size:15px}.kv-b small{color:var(--muted);font-size:12.5px}.kv-b p{margin:2px 0 0;font-size:13px;color:var(--fg-2)}
.kv-a{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.kv-a .btn{min-height:40px}
.kv-zoom{position:relative;display:inline-block;max-width:100%;max-height:100%}.kv-zoom img{display:block;max-width:100%;max-height:calc(100dvh - 150px)}
.kv-zoom i{position:absolute;border:3px solid #ff3b30;border-radius:6px;box-shadow:0 0 0 2000px rgb(0 0 0 / .35)}
.kv-za{display:flex;gap:10px;justify-content:center;padding:12px 14px calc(14px + env(safe-area-inset-bottom,0))}.kv-za .btn{min-height:48px}
@media (max-width:600px){.kv-img{width:110px;height:84px}.rg-grid{grid-template-columns:repeat(2,1fr)}}
.kv-img{overflow:hidden}.kv-box{display:none}
.rg-head{flex-direction:row!important;align-items:center}.rg-go{flex:0 1 300px;align-self:center}
.ki-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:10px}.ki-t{width:100%;border-collapse:collapse;font-size:13.5px}.ki-t th,.ki-t td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line)}.ki-t th{font-size:12px;color:var(--muted)}
.kv-c{flex-wrap:wrap}.kv-b{min-width:190px}
/* partslink24 */
.pl24-steps{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:10px;font-size:14.5px}.pl24-steps li div{margin-top:6px}
.pl24-bm{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:var(--surface-2);border:1px dashed var(--line-2);border-radius:12px;padding:10px 12px}
.pl24-bm a.btn{cursor:grab;flex:none}

/* Verwaltung: Freigaben & Aufträge */
.fg-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:14px}
.fg-tabs button{display:flex;gap:10px;align-items:flex-start;text-align:left;padding:12px 14px;border:1.5px solid var(--line);background:var(--surface);border-radius:12px;cursor:pointer;color:var(--fg);box-shadow:var(--sh-1);min-height:64px}
.fg-tabs button .i{flex:none;width:22px;height:22px;margin-top:1px;color:var(--muted)}
.fg-tabs button b{display:block;font-size:14.5px}.fg-tabs button small{display:block;color:var(--muted);font-size:12px;line-height:1.3;margin-top:2px}
.fg-tabs button[aria-selected="true"]{border-color:var(--accent);background:var(--accent-weak);box-shadow:0 0 0 3px var(--accent-weak)}
.fg-tabs button[aria-selected="true"] .i,.fg-tabs button[aria-selected="true"] b{color:var(--accent)}
#fg-body{display:flex;flex-direction:column;gap:14px}
.fg-mx-wrap{overflow-x:auto;margin:0 -4px}
.fg-mx{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}
.fg-mx th{text-align:center;vertical-align:bottom;padding:8px 8px 10px;border-bottom:2px solid var(--line);font-weight:600;min-width:120px}
.fg-mx th b{display:block;font-size:13.5px}.fg-mx th small{display:block;font-weight:500;color:var(--muted);font-size:11.5px;line-height:1.3;margin:3px auto 6px;max-width:170px}
.fg-n{display:inline-block;background:var(--surface-3);border-radius:999px;padding:1px 9px;font-size:11.5px;color:var(--fg-2)}
.fg-mx th.fg-p,.fg-mx td.fg-p{text-align:left;min-width:190px}
.fg-mx td{text-align:center;padding:8px;border-bottom:1px solid var(--line)}
.fg-mx tbody tr:hover td{background:var(--surface-2,rgba(0,0,0,.02))}
.fg-mx td.fg-p{display:flex;gap:10px;align-items:center}
.fg-mx td.fg-p .av{width:34px;height:34px;border-radius:50%;background:var(--surface-3);display:grid;place-items:center;font-weight:700;font-size:12.5px;flex:none}
.fg-mx td.fg-p b{display:block}.fg-mx td.fg-p small{color:var(--muted);font-size:12px}
.fg-ck{width:40px;height:40px;border-radius:10px;border:1.5px solid var(--line-2);background:var(--surface);cursor:pointer;display:inline-grid;place-items:center;padding:0}
.fg-ck svg{width:22px;height:22px;fill:none;stroke:transparent;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.fg-ck[aria-pressed="true"]{background:var(--ok);border-color:var(--ok)}.fg-ck[aria-pressed="true"] svg{stroke:#fff}
.fg-ck:disabled{cursor:default;opacity:.45}.fg-ck[aria-pressed="true"]:disabled{opacity:.6}
.fg-ck:not(:disabled):hover{border-color:var(--accent)}
.fg-tl{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;position:relative}
.fg-tl li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:0 6px}
.fg-tl li:before{content:"";position:absolute;top:20px;left:-50%;right:50%;height:3px;background:var(--line-2);z-index:0}
.fg-tl li:first-child:before{display:none}
.fg-tl li>i{position:relative;z-index:1;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:800;background:var(--warn-weak,#fff4e0);color:var(--warn);border:2px solid var(--warn)}
.fg-tl li.start>i{background:var(--ok-weak);color:var(--ok);border-color:var(--ok)}
.fg-tl li.chef>i{background:var(--bad-weak,#fde8e8);color:var(--bad);border-color:var(--bad)}
.fg-tl li b{font-size:14px}.fg-tl small{color:var(--muted);font-size:12px;line-height:1.35}.fg-tl small em{font-style:normal;color:var(--fg-2);font-weight:600}
.fg-day{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted)}
.fg-day input{width:58px;text-align:center;font-weight:700;font-size:16px;padding:6px 4px;min-height:40px}
.fg-scale .bar{position:relative;height:16px;border-radius:999px;overflow:hidden;background:var(--surface-3)}
.fg-scale .bar i{position:absolute;top:0;bottom:0}
.fg-scale .lbl{position:relative;height:20px;margin-top:4px;font-size:12px;color:var(--muted)}
.fg-scale .lbl span{position:absolute;transform:translateX(-50%);white-space:nowrap}.fg-scale .lbl span:first-child{transform:none}
.fg-status{display:inline-block;margin-bottom:12px;padding:6px 12px;border-radius:999px;font-weight:600;font-size:13.5px}
.fg-status.ok{background:var(--ok-weak);color:var(--ok)}.fg-status.warn{background:var(--warn-weak,#fff4e0);color:var(--warn)}
.fg-opt{font-size:12px;font-weight:600;color:var(--muted);background:var(--surface-3);border-radius:999px;padding:2px 9px;vertical-align:middle;margin-left:6px}
@media (max-width:900px){.fg-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){
  .fg-tl{grid-template-columns:1fr;gap:14px}.fg-tl li{flex-direction:row;flex-wrap:wrap;text-align:left;align-items:center;gap:10px}
  .fg-tl li:before{left:20px;right:auto;width:3px;top:-14px;height:14px}.fg-tl li small{flex-basis:100%;padding-left:52px}
  .fg-mx thead{display:none}.fg-mx,.fg-mx tbody,.fg-mx tr{display:block}.fg-mx tr{border:1px solid var(--line);border-radius:12px;padding:6px 10px;margin-bottom:10px}
  .fg-mx td{display:flex;justify-content:space-between;align-items:center;border:0;padding:5px 0;text-align:left}.fg-mx td:not(.fg-p):before{content:attr(data-l);font-size:13.5px;color:var(--fg-2)}
}
.fg-day{flex-direction:row!important}.fg-day span{margin:0!important;font-weight:500}
@media (max-width:700px){.fg-mx td.fg-p{justify-content:flex-start;gap:10px;padding-bottom:8px;border-bottom:1px solid var(--line)}}
/* Dokument-Ansicht in der App */
html.dv-lock,html.dv-lock body{overflow:hidden}
#docview{position:fixed;inset:0;z-index:1000;display:none;flex-direction:column;background:var(--bg)}
#docview.on{display:flex}
.dv-bar{display:flex;align-items:center;gap:8px;padding:calc(env(safe-area-inset-top,0px) + 8px) 10px 8px;background:#0f2436;color:#fff;min-height:56px;flex:none}
.dv-t{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:15.5px}
.dv-act{display:flex;gap:6px;flex:none}
.dv-b{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:10px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff;font:600 14px/1 var(--body);cursor:pointer;text-decoration:none}
.dv-b svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.dv-back{background:var(--gold,#c9a227);border-color:transparent;color:#1b1205}
.dv-body{flex:1;min-height:0;position:relative;background:#e9edf2}
.dv-frame{position:absolute;inset:0;width:100%;height:100%;border:0;background:#fff}
.dv-wait{padding:40px;text-align:center;color:var(--muted)}
.dv-img{position:absolute;inset:0;display:grid;place-items:center;overflow:auto;background:#111}.dv-img img{max-width:100%;max-height:100%;object-fit:contain}
.dv-pdf{max-width:420px;margin:48px auto;padding:0 20px;text-align:center;display:flex;flex-direction:column;gap:12px;align-items:center}
.dv-pdf-ic{width:72px;height:88px;border-radius:10px;background:var(--bad);color:#fff;display:grid;place-items:center;font-weight:800}
.dv-pdf p{color:var(--muted);margin:0}.dv-pdf .btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2}
@media (max-width:560px){.dv-b span{display:none}.dv-b{padding:0 12px}.dv-back span{display:inline}}
/* Smartphone/Tablet: nichts über den Rand */
.prh,.prr{grid-template-columns:minmax(200px,2fr) 90px minmax(150px,1.5fr) minmax(110px,1fr) minmax(110px,1fr) minmax(230px,1.6fr)}
@media (max-width:1366px){.prh{display:none}.prr{grid-template-columns:1fr 1fr 1fr;row-gap:8px}.prr .b-veh{grid-column:1/-1}.pr-a{grid-column:1/-1}}
@media (max-width:620px){.prr{grid-template-columns:1fr 1fr}}
.drawer-foot>span{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.chip{max-width:100%}
.drawer{max-width:100vw}
img,video,canvas{max-width:100%}
@media (max-width:700px){
  .chip{white-space:normal;height:auto;min-height:24px;line-height:1.25;padding-top:3px;padding-bottom:3px}
  .drawer-foot{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}
  .drawer-foot .btn{flex:1 1 auto}
  input,select,textarea{max-width:100%}
  pre,code{white-space:pre-wrap;word-break:break-word}
}
@media (max-width:480px){.rg-hl{flex-direction:column;align-items:stretch}.rg-hl .rg-mini{width:110px;height:auto;align-self:center}}
@media (max-width:760px){
  .drawer,.drawer.wide{height:var(--app-h,100vh)}
  @supports (height:100dvh){.drawer,.drawer.wide{height:100dvh}}
  .toast{max-width:calc(100vw - 32px);border-radius:14px;text-align:center;line-height:1.35}
}

.fg-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1100px){.fg-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.fg-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
.fg-rep{width:100%;border-collapse:collapse;font-size:14px}.fg-rep th{text-align:left;padding:8px;border-bottom:2px solid var(--line);font-size:13px}.fg-rep th small{display:block;font-weight:500;color:var(--muted);font-size:11.5px}
.fg-rep td{padding:6px 8px;border-bottom:1px solid var(--line)}.fg-rep .unit{max-width:150px}.fg-rep input{text-align:right}
@media (max-width:640px){.fg-rep thead{display:none}.fg-rep,.fg-rep tbody,.fg-rep tr{display:block}.fg-rep tr{border:1px solid var(--line);border-radius:12px;padding:8px 10px;margin-bottom:8px}.fg-rep td{display:flex;justify-content:space-between;align-items:center;border:0;padding:4px 0}.fg-rep td[data-l]:before{content:attr(data-l);color:var(--fg-2)}}
/* Nahaufnahme */
.kv-nah{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-color:var(--accent);background:var(--accent-weak)}
.kv-nah>div{flex:1;min-width:200px}.kv-nah b{display:block}.kv-nah small{color:var(--fg-2);font-size:13px}
.kv-rep{display:block;color:var(--accent)!important;font-weight:600}
.nah-pick{display:grid;place-items:center;padding:16px}
.np-card{background:var(--bg);border-radius:16px;width:min(760px,100%);max-height:calc(var(--app-h,100vh) - 32px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 60px rgb(0 0 0 / .35)}
.np-h{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--surface)}.np-h>div{flex:1}.np-h b{display:block;font-size:17px}.np-h small{color:var(--muted)}
.np-tip{display:flex;gap:10px;padding:12px 16px;background:var(--warn-weak);font-size:13.5px;line-height:1.4}.np-tip .i{flex:none;width:20px;height:20px;color:var(--warn)}
.np-body{overflow:auto;padding:8px 16px 16px;display:flex;flex-direction:column;gap:6px}
.np-t{display:flex;flex-wrap:wrap;gap:8px}.np-t button{min-height:46px;padding:0 14px;border-radius:10px;border:1.5px solid var(--line-2);background:var(--surface);font:600 14px/1.2 var(--body);color:var(--fg);cursor:pointer}
.np-t button:active,.np-t button:hover{border-color:var(--accent);background:var(--accent-weak)}
.kmw.nah{border-color:var(--accent);background:var(--accent-weak)}.kmw.nah.ok{border-color:var(--ok);background:var(--ok-weak)}.kmw.nah.wait{opacity:.85}
@media (max-width:560px){.nah-pick{padding:0}.np-card{border-radius:0;max-height:var(--app-h,100vh);height:var(--app-h,100vh)}}
.np-card{color:var(--fg)}
.fg-tabs,.fg-tabs[role]{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))!important}
/* Gewährleistungsfälle */
.gw-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer;color:var(--fg);margin-bottom:8px;font:inherit}
.gw-row:hover{border-color:var(--accent)}.gw-row.done{opacity:.7}
.gw-nr{font-family:var(--mono);font-size:12.5px;font-weight:700;background:var(--surface-3);border-radius:8px;padding:4px 8px;flex:none}
.gw-b{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.gw-b b{font-size:14.5px}.gw-b small{color:var(--muted);font-size:12.5px}
.gw-c{display:flex;flex-wrap:wrap;gap:5px;margin-top:3px}.gw-go{font-size:22px;color:var(--muted);flex:none}
.gw-steps{list-style:none;margin:0 0 14px;padding:0;display:flex;gap:4px;overflow-x:auto}
.gw-steps li{flex:1;min-width:92px;display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:10px;background:var(--surface);border:1px solid var(--line);font-size:13px;color:var(--muted);font-weight:600}
.gw-steps li i{font-style:normal;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--surface-3);flex:none;font-size:12px}
.gw-steps li.done{color:var(--ok)}.gw-steps li.done i{background:var(--ok);color:#fff}
.gw-steps li.cur{color:var(--accent);border-color:var(--accent);background:var(--accent-weak)}.gw-steps li.cur i{background:var(--accent);color:#fff}
.gw-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:14px;align-items:start}
.gw-main,.gw-side{display:flex;flex-direction:column;gap:12px;min-width:0}
.gw-step{border-color:var(--accent)}.gw-step h4{margin-top:0}
.gw-facts{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:14px}.gw-facts span{color:var(--muted)}
.gw-btns{display:flex;flex-wrap:wrap;gap:6px}
.gw-akte{display:flex;flex-direction:column;gap:4px;margin-top:10px;font-size:13.5px}.gw-akte a{color:var(--accent)}
.gw-log{display:flex;flex-direction:column;gap:8px;max-height:360px;overflow:auto;font-size:13.5px}
.gw-log>div{display:grid;grid-template-columns:110px 110px 1fr;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--line)}.gw-log time{color:var(--muted);font-size:12.5px}
.gw-note{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}.gw-note input{flex:1;min-width:180px}
.gw-x{display:flex;flex-direction:column;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.gw-up{cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.drawer.gw-dr{width:min(1200px,calc(100vw - 32px))!important}
@media (max-width:900px){.gw-grid{grid-template-columns:1fr}.gw-log>div{grid-template-columns:1fr;gap:2px}}
/* Leihwagen */
.lw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin-bottom:14px}
.lw-c.aus{border-color:var(--warn)}.lw-c.over{border-color:var(--bad);background:var(--bad-weak)}
.lw-h{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}.lw-h b{margin-right:8px}
.lw-hist{display:flex;flex-direction:column;gap:3px;margin-top:10px;font-size:12.5px}.lw-hist a{color:var(--fg-2)}
.lw-tools{display:grid;grid-template-columns:1fr 1fr;gap:20px}.lw-q{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.lw-q select,.lw-q input{flex:1;min-width:150px}
@media (max-width:760px){.lw-tools{grid-template-columns:1fr}}
/* Kaufvertrag */
.vk .vk-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.vk label.hn-chk{align-items:flex-start}
.vk-k{font-size:13px;color:var(--fg-2);margin:-4px 0 6px}.vk-k summary{cursor:pointer;color:var(--accent)}

/* Leihwagen-Bereich */
.lw-c.off{opacity:.6}
.lw-t{display:flex;align-items:center;gap:8px;background:none;border:0;padding:0;cursor:pointer;color:var(--fg);font:inherit;text-align:left;flex-wrap:wrap}.lw-t b{font-size:15.5px}
.lw-who{display:flex;flex-direction:column;gap:2px;margin:4px 0 6px}.lw-who small{color:var(--muted);font-size:12.5px;line-height:1.45}
.lw-cal{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:8px}
.lw-cr{display:grid;grid-template-columns:150px minmax(700px,1fr);align-items:center;border-bottom:1px solid var(--line);min-height:46px}.lw-cr:last-child{border-bottom:0}
.lw-cn{display:flex;flex-direction:column;padding:4px 8px}.lw-cn small{color:var(--muted);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lw-ct{display:grid;grid-template-columns:repeat(14,1fr);position:relative;height:100%}
.lw-chd .lw-ct span{font-size:11.5px;color:var(--muted);text-align:center;padding:4px 0;font-weight:600}.lw-chd .lw-ct span.we{color:var(--bad)}
.lw-lane{min-height:44px}.lw-lane i{border-left:1px solid var(--line)}.lw-lane i.we{background:var(--surface-2)}
.lw-now{position:absolute;top:0;bottom:0;width:2px;background:var(--bad);z-index:2}
.lw-bar{position:absolute;top:9px;height:26px;border-radius:7px;font-size:11.5px;font-weight:600;padding:0 7px;line-height:26px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:1;color:#fff;background:var(--accent)}
.lw-bar.over{background:var(--bad)}.lw-bar.done{background:var(--surface-3);color:var(--fg-2)}.lw-bar.res{background:transparent;color:var(--accent);border:2px dashed var(--accent);line-height:22px}
.lw-addres{position:absolute;right:4px;top:10px;width:24px;height:24px;border-radius:50%;border:1px solid var(--line-2);background:var(--surface);cursor:pointer;z-index:3;font-weight:700;color:var(--accent)}
.lw-tbl td{vertical-align:top}.lw-tbl small{color:var(--muted)}
.lw-wf{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.lw-wf input,.lw-wf select{flex:1;min-width:110px}.lw-wx{display:contents}
.lw-list{display:flex;flex-direction:column;gap:6px;margin-top:8px;font-size:13.5px}.lw-list .done{opacity:.6}
.lw-docs{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:6px;margin-bottom:8px}.lw-docs img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
.lw-pdf{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;border-radius:8px;background:var(--bad-weak);color:var(--bad);font-weight:800;font-size:13px;text-decoration:none;padding:4px;text-align:center}.lw-pdf small{font-weight:500;font-size:10px;color:var(--fg-2);overflow:hidden;text-overflow:ellipsis;max-width:100%;white-space:nowrap}
.lw-bord{display:flex;flex-direction:column;gap:4px}.lw-zus{display:grid;grid-template-columns:2fr 1fr 2fr 1fr;gap:6px}
@media (max-width:600px){.lw-zus{grid-template-columns:2fr 1fr}.lw-cr{grid-template-columns:96px minmax(600px,1fr)}}
#leih{display:flex;flex-direction:column;gap:14px}#leih .view-head{margin-bottom:0;gap:12px;flex-wrap:wrap}
.fgroup label.gw-up,label.gw-up{flex-direction:row!important;align-self:flex-start;width:auto;display:inline-flex}
/* Handy: Menüleiste unten wischbar, wenn mehr Bereiche als Platz */
@media (max-width:560px){.nav{overflow-x:auto;justify-content:flex-start;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.nav::-webkit-scrollbar{display:none}.nav button{flex:0 0 auto;min-width:60px;padding-left:4px;padding-right:4px}}
/* ---------- Seiten statt Pop-ups ---------- */
:root{--page-left:var(--side-w);--page-bottom:0px;--page-max:1160px}
@media (max-width:1023px){:root{--page-left:0px;--page-bottom:calc(var(--bottom-h) + env(safe-area-inset-bottom,0px))}}
.pg-back{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px 0 10px;border-radius:10px;border:1px solid var(--line-2);background:var(--surface);color:var(--fg);font:600 14px/1 var(--body);cursor:pointer;flex:none;align-self:center}
.pg-back svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.pg-back:hover{background:var(--surface-3)}
.drawer.pg .drawer-head{align-items:center;gap:14px}
.drawer.pg .drawer-head>.icon-btn:last-child,.drawer.pg .drawer-head>#pclose{display:none}
@media (min-width:761px){
  .scrim{display:none}
  .drawer,.drawer.wide,.drawer.gw-dr{top:0;left:var(--page-left);right:0;bottom:var(--page-bottom);transform:none!important;width:auto!important;max-width:none;height:auto!important;max-height:none;border-radius:0;box-shadow:-10px 0 30px rgb(8 14 20 / .07);border:0;border-left:1px solid var(--line)}
  @media (prefers-reduced-motion:no-preference){.drawer{animation:pgIn .16s ease-out}@keyframes pgIn{from{opacity:0;transform:translateX(18px)!important}}}
  .drawer .drawer-head,.drawer .drawer-tabs,.drawer .drawer-foot{padding-left:max(24px,calc((100% - var(--page-max)) / 2));padding-right:max(24px,calc((100% - var(--page-max)) / 2))}
  .drawer .drawer-body{padding:22px max(24px,calc((100% - var(--page-max)) / 2)) 32px}
  .drawer-head h3{font-size:26px}
  #import-root .drawer{z-index:34}
}
html.pg-open body{overflow:hidden}
/* ---------- Einheitliche Kennzahl-Kacheln (wie Auswertung) ---------- */
.kpi{position:relative;overflow:hidden;border-radius:12px;padding:14px 16px 13px 19px;gap:4px}
.kpi::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent)}
.kpi:has(b.bad)::before{background:var(--bad)}.kpi:has(b.warn)::before{background:var(--gold)}.kpi:has(b.ok,b.ok-t)::before{background:var(--ok)}
.kpi span{font-size:11.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}
.kpi b{font-size:30px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi b.ok-t{color:var(--ok)}
@media (max-width:760px){.kpi b{font-size:23px}.kpi{padding:12px 13px 11px 16px}}
.drawer.pg .pg-x{display:none!important}
#steher{width:100%}#steher td:first-child,#steher th:first-child{min-width:280px}#steher td:first-child b{display:block}

/* Preise: Karte je Fahrzeug, Kennzahlen mit Beschriftung, Aktion rechts */
@media (max-width:1366px){
  .prl{display:flex;flex-direction:column;gap:10px;background:none;border:0;box-shadow:none}
  .prr{grid-template-columns:repeat(4,minmax(0,1fr)) minmax(250px,1.25fr)!important;gap:8px 16px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh-1);padding:14px 16px 14px 20px}
  .prr .b-veh{grid-column:1/5!important}.prr .pr-a{grid-column:5!important;grid-row:1/3;align-self:center;border-left:1px solid var(--line);padding-left:16px}
  .prr>div[data-l]::before{content:attr(data-l);display:block;font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}
  .prr::before{top:12px;bottom:12px}
}
@media (max-width:760px){.prr{grid-template-columns:1fr 1fr!important}.prr .b-veh,.prr .pr-a{grid-column:1/-1!important}.prr .pr-a{grid-row:auto;border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:10px}}
.prr .age{align-self:flex-start}.prr>div[data-l]{min-width:0}
/* „Pflicht“-Hinweis in der Beschriftungszeile, damit alle Felder bündig stehen */
label:has(> .req){position:relative;padding-right:0}
label > .req{position:absolute;top:0;right:0;margin:0;line-height:17px;width:auto;align-self:auto}
/* Felder einer Zeile immer bündig: Eingabefeld unten ausrichten, auch bei zweizeiliger Beschriftung */
.grid2>label,.fgrid>label.fld,.fgrid>label{justify-content:flex-end}
.drawer.pg .drawer-head{justify-content:flex-start}
.drawer.pg .drawer-head>div:not(.pg-back){flex:1;min-width:0}
.fgroup input:not([type=checkbox]):not([type=radio]):not([type=file]),.fgroup select,.panel input:not([type=checkbox]):not([type=radio]):not([type=file]),.panel select{height:44px;box-sizing:border-box}
/* Seiten breiter nutzen (ca. 90 % der Fläche) */
@media (min-width:761px){
  .drawer .drawer-head,.drawer .drawer-tabs,.drawer .drawer-foot{padding-left:max(24px,3.5%,calc((100% - 1720px) / 2));padding-right:max(24px,3.5%,calc((100% - 1720px) / 2))}
  .drawer .drawer-body{padding:22px max(24px,3.5%,calc((100% - 1720px) / 2)) 32px}
}
/* Fahrzeugakte – Übersicht */
.ov{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.ov-ph,.ov-col{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh-1);padding:14px}
.ov-main{position:relative;display:block;width:100%;aspect-ratio:16/10;max-height:320px;border:0;padding:0;border-radius:10px;overflow:hidden;background:var(--surface-3);cursor:zoom-in}
.ov-main img{width:100%;height:100%;object-fit:cover;display:block}
.ov-main.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--muted);font-size:13px;text-align:center;padding:16px;cursor:default}.ov-main.empty .i{width:34px;height:34px}
.ov-n{position:absolute;right:10px;bottom:10px;background:rgb(0 0 0 / .62);color:#fff;font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px}
.ov-th{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:6px;margin-top:8px}
.ov-th button{border:0;padding:0;border-radius:8px;overflow:hidden;aspect-ratio:4/3;background:var(--surface-3);cursor:pointer}.ov-th img{width:100%;height:100%;object-fit:cover;display:block}
.ov-th .more{font-weight:700;color:var(--fg-2)}
.ov-st{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.ov-st button.chip{cursor:pointer;border:0;font:inherit}
.ov-h{display:flex;justify-content:space-between;align-items:center;font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:4px 0 6px;border-bottom:1px solid var(--line);margin-bottom:2px}
.ov-h:not(:first-child){margin-top:16px}.ov-h .linkbtn{text-transform:none;letter-spacing:0;font-size:12.5px;font-weight:600}
.ov-r{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);font-size:14px}.ov-r:last-child{border-bottom:0}
.ov-r span{color:var(--fg-2)}.ov-r b{font-weight:600;text-align:right;min-width:0;overflow-wrap:anywhere}.ov-r b small{color:var(--muted);font-weight:500}
.ov-docs{display:flex;flex-direction:column}.ov-docs a{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--line);color:var(--fg);text-decoration:none;font-size:14px}
.ov-docs a:hover span{color:var(--accent)}.ov-docs .i{width:18px;height:18px;color:var(--muted);flex:none}.ov-docs span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ov-docs small{color:var(--muted);font-size:12px}
@media (max-width:1250px){.ov{grid-template-columns:1fr 1fr}.ov-ph{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:12px;align-items:start}.ov-ph .ov-th{margin-top:0}}
@media (max-width:760px){.ov{grid-template-columns:1fr}.ov-ph{display:block}.ov-ph .ov-th{margin-top:8px}}
/* Ausstattung im eigenen Reiter: mehr Spalten */
[data-pane="aus"] .aus-cats{columns:4 260px}
.akte-main{container-type:inline-size}
.ov-r span{white-space:nowrap}.ov-r b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ov-r .mono{font-size:12.5px}
@container (max-width:1050px){.ov{grid-template-columns:1fr 1fr}.ov-ph{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px;align-items:start}.ov-ph .ov-th{margin-top:0}}
@container (max-width:620px){.ov{grid-template-columns:1fr}.ov-ph{display:block}.ov-ph .ov-th{margin-top:8px}}
/* Leihwagen: Ausgabe/Rücknahme zweispaltig, Abrechnung rechts mitlaufend */
.lw-out{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,1fr);gap:16px;align-items:start}
.lw-out-main,.lw-out-side{display:flex;flex-direction:column;gap:14px;min-width:0}
.lw-sticky{position:sticky;top:0}
@media (max-width:980px){.lw-out{grid-template-columns:1fr}.lw-sticky{position:static}}
.lw-abr{width:100%;border-collapse:collapse;font-size:13.5px}.lw-abr td{padding:6px 0;border-bottom:1px solid var(--line);vertical-align:top}.lw-abr td:last-child{text-align:right;white-space:nowrap;padding-left:12px;font-variant-numeric:tabular-nums}
.lw-abr tr.s td{font-weight:700;border-top:1.5px solid var(--fg-2)}.lw-abr tr.e td{font-weight:800;font-size:16px;color:var(--accent);border-bottom:0;padding-top:9px}
.lw-art{margin-bottom:4px}
.lw-nk{display:flex;flex-direction:column;gap:6px}
.lw-nkr{display:grid;grid-template-columns:minmax(0,1fr) 90px 44px 90px 18px;gap:6px;align-items:center;font-size:14px}.lw-nkr em{font-style:normal;color:var(--muted);font-size:12.5px}
.lw-nkr input{height:38px!important;min-height:38px;text-align:right}
@media (max-width:560px){.lw-nkr{grid-template-columns:1fr 70px 34px 74px 14px}}
.lw-pt input,.lw-pt select{min-width:70px;height:38px!important;min-height:38px}.lw-pt td:first-child input{min-width:220px}.lw-pt td{padding:6px 8px}
.lw-zus{grid-template-columns:2fr 1fr!important}
.lw-sticky{position:static!important}
.lw-tf{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px}.lw-bord label.hn-chk{justify-content:flex-start;gap:8px}.lw-bord label.hn-chk small{margin-left:auto;white-space:nowrap}
.lw-pt td:first-child input{min-width:280px}.lw-pt select{min-width:200px}.lw-pt input[inputmode]{width:90px;min-width:80px}#lp-ta,#lp-pa{align-self:flex-start}

/* ---------- 1.33: FIN-Hinweis verschiebt das Feld nicht mehr (Beschriftung | Feld | Hinweis als gemeinsame Zeilen) ---------- */
@supports (grid-template-rows: subgrid) {
  .grid2:has(.fin-line), .grid3:has(.fin-line) { grid-auto-rows: auto; row-gap: 0 }
  .grid2:has(.fin-line) > label, .grid2:has(.fin-line) > .kz-f, .grid3:has(.fin-line) > label { display: grid; grid-row: span 3; grid-template-rows: subgrid; grid-template-columns: minmax(0, 1fr); justify-content: normal; row-gap: 5px; align-content: start; margin-bottom: 12px }
  .grid2:has(.fin-line) > label > input, .grid2:has(.fin-line) > label > select, .grid2:has(.fin-line) > .kz-f > .kz-in { align-self: end }
}
/* Kennzeichen zweiteilig im Schild-Look */
.kz-f { display: flex; flex-direction: column; gap: 5px; font-size: 13px; color: var(--muted); font-weight: 600; min-width: 0; justify-content: flex-end; position: relative }
.kz-f > .kz-l { position: relative } .kz-f .req { position: absolute; top: 0; right: 0 }
.kz-in { display: flex; align-items: stretch; height: 44px; box-sizing: border-box; border: 1px solid var(--line-2); border-radius: var(--r-sm); overflow: hidden; background: var(--surface); transition: border-color .12s, box-shadow .12s }
.kz-in:focus-within { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-weak) }
.kz-eu { flex: none; width: 22px; background: #1f4fa8; color: #fff; font-size: 11px; font-weight: 700; display: flex; align-items: flex-end; justify-content: center; padding-bottom: 6px }
.kz-in input, .fgroup .kz-in input { border: 0; border-radius: 0; box-shadow: none !important; height: 100% !important; min-height: 0; text-transform: uppercase; font-weight: 700; letter-spacing: .06em; padding: 0 8px; background: transparent }
.kz-in input:first-of-type { flex: 0 0 4.4em; width: 4.4em; text-align: center }
.kz-in input:last-of-type { flex: 1; min-width: 0 }
.kz-in i { display: flex; align-items: center; color: var(--muted); font-style: normal; font-weight: 700 }
.grid2 > .kz-f { justify-content: flex-end }
/* Löschen von Fotos & Dokumenten */
.mf-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 0 6px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2)}
.mf-bar>b,.mf-bar>.hint{margin-right:auto!important}
.mf-lock{position:absolute;top:6px;right:6px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:rgb(255 255 255 / .92);border:1px solid var(--line);font-size:13px;cursor:help}
.mf-pick{position:absolute;top:6px;right:6px;width:30px;height:30px;display:flex!important;align-items:center;justify-content:center;border-radius:8px;background:rgb(255 255 255 / .95);border:1px solid var(--line-2);cursor:pointer;padding:0}
.mf-pick input{margin:0}
.mf-img.sel,.mf-doc.sel{outline:3px solid var(--bad);outline-offset:-3px;border-radius:10px}
.mf-img.sel img{opacity:.7}
.lw-doc{position:relative}.lw-doc .mf-del{top:4px;right:4px;min-width:26px;height:26px;padding:0 6px;font-size:12px}.lw-doc .mf-lock{top:4px;right:4px;width:24px;height:24px}
.gal-tb .btn.danger{background:var(--bad);color:#fff;border-color:var(--bad)}
.ov-docs .ov-dw{display:flex;align-items:center;gap:4px}.ov-docs .ov-dw>a{flex:1;min-width:0}
.ov-docs .ov-dx{border:0;background:none;color:var(--muted);font-weight:700;cursor:pointer;padding:4px 8px;border-radius:6px}.ov-docs .ov-dx:hover{background:var(--bad-weak);color:var(--bad)}
.ha-werk{margin:2px 0 4px}

/* ---------- 1.34: Meldungen (Glocke, Posteingang, Hinweisfenster) ---------- */
.meld-btn{position:relative;display:flex;align-items:center;gap:12px;border:0;background:none;color:var(--side-fg);padding:9px 12px;border-radius:8px;font-weight:600;cursor:pointer;text-align:left;font:inherit;font-size:15px}
.meld-btn .i{width:20px;height:20px}
.side-mb{margin:-6px 0 -4px;background:rgb(255 255 255 / .06)}.side-mb:hover{background:var(--side-hover);color:#fff}
.side-mb.has{color:#fff;background:rgb(214 72 60 / .22)}
.meld-n{margin-left:auto;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:var(--bad);color:#fff;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.meld-btn.has .i{animation:meld-sw 2.4s ease-in-out infinite;transform-origin:50% 10%}
@keyframes meld-sw{0%,86%,100%{transform:rotate(0)}89%{transform:rotate(14deg)}93%{transform:rotate(-12deg)}96%{transform:rotate(6deg)}}
@media (prefers-reduced-motion:reduce){.meld-btn.has .i{animation:none}}
.top-mb{display:none}
@media (max-width:1023px){
  .side-mb{display:none}
  .top-mb{display:flex;margin-left:auto;padding:8px;color:#fff;background:rgb(255 255 255 / .08);border-radius:50%;width:38px;height:38px;justify-content:center}
  .top-mb .lbl{display:none}.top-mb .meld-n{position:absolute;top:-4px;right:-4px;margin:0;min-width:18px;height:18px;font-size:11px;padding:0 5px}
  .topbar .top-mb + .menu-btn{margin-left:8px}
}
#meld-scrim{position:fixed;inset:0;background:rgb(10 20 30 / .25);z-index:80}
#meld-panel{position:fixed;top:0;right:0;bottom:0;width:min(440px,100vw);background:var(--bg);box-shadow:var(--sh-2);z-index:81;display:flex;flex-direction:column;padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px));gap:10px}
.mpn-h{display:flex;align-items:center;gap:10px}.mpn-h h3{margin:0;font-size:20px}.mpn-h .icon-btn{margin-left:auto}
.mpn-t{display:flex;align-items:center;gap:10px;justify-content:space-between}
.mpn-l{flex:1;overflow:auto;display:flex;flex-direction:column;gap:8px}
.mpn-i{display:flex;align-items:stretch;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:10px;overflow:hidden}
.mpn-i.fg{border-left-color:var(--bad)}.mpn-i.w{border-left-color:var(--warn)}
.mpn-i.read{border-left-color:var(--line-2);opacity:.75}
.mpn-b{flex:1;display:flex;flex-direction:column;gap:3px;text-align:left;border:0;background:none;padding:10px 12px;cursor:pointer;font:inherit;color:var(--fg);min-width:0}
.mpn-b b{font-size:14.5px}.mpn-b span{font-size:13.5px;color:var(--fg-2);overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.mpn-b small{font-size:12px;color:var(--muted)}.mpn-b em,.mp-h em{font-style:normal;font-weight:700;color:var(--bad)}
.mpn-b:hover{background:var(--surface-2)}
.mpn-ok{border:0;border-left:1px solid var(--line);background:none;width:46px;font-size:18px;color:var(--ok);cursor:pointer}.mpn-ok:hover{background:var(--ok-weak,#e3f3ea)}
.mpn-f{margin:0}
#meld-pops{position:fixed;top:max(14px,env(safe-area-inset-top,0px));right:14px;z-index:90;display:flex;flex-direction:column;gap:10px;width:min(400px,calc(100vw - 28px));pointer-events:none}
.meld-pop{pointer-events:auto;background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--accent);border-radius:12px;box-shadow:0 12px 34px rgb(10 20 30 / .22);padding:12px 14px;display:flex;flex-direction:column;gap:8px;animation:mp-in .25s ease-out}
.meld-pop.fg{border-left-color:var(--bad);box-shadow:0 0 0 3px rgb(214 72 60 / .18),0 12px 34px rgb(10 20 30 / .25)}.meld-pop.w{border-left-color:var(--warn)}
@keyframes mp-in{from{transform:translateY(-10px);opacity:0}to{transform:none;opacity:1}}
.mp-h{display:flex;align-items:flex-start;gap:10px}.mp-h>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.mp-h b{font-size:15px}.mp-h small{font-size:12px;color:var(--muted)}
.mp-ic{width:32px;height:32px;border-radius:50%;background:var(--accent-weak);color:var(--accent);display:grid;place-items:center;flex:none}.meld-pop.fg .mp-ic{background:var(--bad-weak);color:var(--bad)}
.mp-x{border:0;background:none;color:var(--muted);cursor:pointer;padding:2px}.mp-x svg{width:18px;height:18px}
.meld-pop p{margin:0;font-size:14px;color:var(--fg-2);white-space:pre-line}
.mp-a{display:flex;gap:8px;flex-wrap:wrap}
@media (max-width:1023px){#meld-pops{top:calc(62px + env(safe-area-inset-top,0px));right:10px;width:calc(100vw - 20px)}}

/* Reklamation – vereinfacht */
.gw-hc{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto;align-items:center}
.gw-do{display:flex;flex-direction:column;gap:10px}.gw-do h4{margin:0;font-size:17px;color:var(--accent)}
.gw-frei{}.gw-frei h4{color:var(--bad)}
.gw-row2{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end}.gw-row2>input,.gw-row2>select{flex:1;min-width:150px}.gw-row2>label:not(.hn-chk){flex:1;min-width:170px}
.gw-ent{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.gw-ent .radio-card.emp{border-color:var(--ok)}
.gw-bef{margin:0;font-size:14px;color:var(--fg-2)}
.gw-vor{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface-2);display:flex;flex-direction:column;gap:6px}.gw-vor p{margin:0}
.gw-wait{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border:1px dashed var(--line-2);border-radius:10px}.gw-wait span{color:var(--muted);font-size:13.5px}
.gw-det>summary{cursor:pointer;font-weight:600;font-size:14px;padding:4px 0;display:flex;align-items:center;gap:8px}
.gw-gar.on{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 5%,var(--surface))}
.gw-garhint{border-color:var(--ok)!important;background:color-mix(in srgb,var(--ok) 8%,var(--surface))!important}
.gw-gs{display:flex;flex-direction:column;gap:5px;font-size:13px;margin:8px 0}.gw-gs time{color:var(--muted);font-size:12px}.gw-gs small{color:var(--muted)}
.gw-kd{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.gw-mails{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.gw-mail{border:1px solid var(--line);border-radius:10px;background:var(--surface)}.gw-mail.ein{border-left:4px solid var(--accent)}.gw-mail.aus{border-left:4px solid var(--line-2)}
.gw-mail summary{cursor:pointer;padding:8px 12px;display:grid;grid-template-columns:1fr;gap:2px;list-style:none}.gw-mail summary::-webkit-details-marker{display:none}
.gw-md{font-size:12px;color:var(--muted)}.gw-mail summary small{font-size:12px;color:var(--muted)}
.gw-mail pre{white-space:pre-wrap;font:inherit;font-size:13.5px;margin:0;padding:8px 12px 12px;border-top:1px solid var(--line);max-height:320px;overflow:auto}
.gw-comp textarea{font-size:14px}
.gw-log>div.rd{opacity:.8}.gw-log>div.rd span{color:var(--muted)}
.gw-del{border-color:var(--bad-weak)}
/* Auslieferungsplan */
.au-nav{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.au-week{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:12px 0 14px}
.au-day{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:8px;min-height:160px}
.au-day h4{margin:0;display:flex;justify-content:space-between;align-items:baseline;font-size:14px}.au-day h4 small{color:var(--muted);font-weight:500}
.au-day.today{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-weak)}.au-day.past{opacity:.7}
.au-e{text-align:center;margin:auto 0}
.au-c{display:flex;flex-direction:column;gap:4px;text-align:left;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:10px;background:var(--surface);padding:8px 10px;cursor:pointer;font:inherit;color:var(--fg);min-width:0}
.au-c:hover{box-shadow:var(--sh-1)}.au-c b{font-size:14px;line-height:1.25}.au-c small{font-size:12px;color:var(--muted)}
.au-c.ok{border-left-color:var(--ok)}.au-c.warn{border-left-color:var(--warn)}.au-c.bad{border-left-color:var(--bad);background:var(--bad-weak)}.au-c.done{border-left-color:var(--line-2);opacity:.7}
.au-t{font-weight:700;font-size:13px;color:var(--accent)}
.au-bar{height:5px;border-radius:3px;background:var(--surface-3);overflow:hidden}.au-bar i{display:block;height:100%;background:var(--ok)}
.au-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}
.au-list .au-pl{align-self:flex-start;margin-top:4px}
.au-ohne.bad{border-color:var(--bad)}
.au-x{display:flex;flex-direction:column;gap:3px;font-size:13.5px;margin-bottom:8px}.au-x small{color:var(--muted)}
@media (max-width:1100px){.au-week{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.au-week{grid-template-columns:1fr}.au-day{min-height:0}.au-day.past{display:none}}
/* Zahlungen */
.zahl-sum{display:grid;grid-template-columns:minmax(200px,1.3fr) 1fr 1fr;gap:12px;align-items:end}
.zahl-sum>div{display:flex;flex-direction:column;gap:2px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);min-height:44px;justify-content:center}.zahl-sum>div span{font-size:12px;color:var(--muted);font-weight:600}.zahl-sum>div b{font-size:16px}
.zahl-l{display:flex;flex-direction:column;margin-top:4px}
.zahl-r{display:grid;grid-template-columns:86px 110px auto 1fr auto auto;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid var(--line);font-size:14px}.zahl-r small{color:var(--muted)}
.zahl-r.st{opacity:.55}.zahl-r.st b{text-decoration:line-through}.zahl-n{color:var(--fg-2);min-width:0;overflow:hidden;text-overflow:ellipsis}
.zahl-f{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.zahl-f>*{flex:1;min-width:120px}.zahl-f>input[type=date]{flex:0 0 150px}.zahl-f .btn{flex:0 0 auto}
.gw-side .zahl-sum{grid-template-columns:1fr 1fr}.gw-side .zahl-sum>label{grid-column:1/-1}.gw-side .zahl-r{grid-template-columns:auto auto 1fr;row-gap:2px}.gw-side .zahl-r .zahl-n,.gw-side .zahl-r small{grid-column:1/-1}
@media (max-width:700px){.zahl-sum{grid-template-columns:1fr 1fr}.zahl-sum>label{grid-column:1/-1}.zahl-r{grid-template-columns:auto auto 1fr}.zahl-r .zahl-n,.zahl-r small{grid-column:1/-1}}
.gw-side .zahl-r .chip{justify-self:start}

/* ---------- 1.35: Menü in Bereichen ---------- */
.nav-old{display:none!important}
.nav2{display:flex;flex-direction:column;gap:2px;overflow-y:auto;flex:1;min-height:0;margin:0 -4px;padding:0 4px;scrollbar-width:thin}
.nav2 button{display:flex;align-items:center;gap:12px;border:0;background:none;color:var(--side-fg);padding:9px 12px;border-radius:8px;font:inherit;font-weight:600;font-size:15px;text-align:left;position:relative;cursor:pointer;width:100%}
.nav2 button:hover{background:var(--side-hover);color:#fff}
.nav2 .badge{margin-left:auto;background:var(--bad);color:#fff;font-size:11px;font-weight:700;border-radius:999px;padding:1px 7px;min-width:20px;text-align:center}
.nav2 .n2-top[aria-current="page"],.nav2 .n2-items button[aria-current="page"]{background:rgb(255 255 255 / .09);color:var(--side-act)}
.nav2 .n2-top[aria-current="page"]::before,.nav2 .n2-items button[aria-current="page"]::before{content:"";position:absolute;left:-4px;top:7px;bottom:7px;width:3px;border-radius:0 3px 3px 0;background:var(--gold)}
.n2-g{display:flex;flex-direction:column;margin-top:8px}
.n2-h{color:#fff!important;font-size:13px!important;text-transform:uppercase;letter-spacing:.06em;padding:8px 12px!important}
.n2-h .i{width:18px;height:18px;opacity:.85}
.n2-h .lbl{min-width:0}.n2-s{font-weight:500;opacity:.75;text-transform:none;letter-spacing:0}
.n2-car{margin-left:6px;font-size:11px;opacity:.6;transition:transform .15s}
.n2-h .badge+.n2-car{margin-left:6px}.n2-h .badge{margin-left:auto}.n2-h:not(:has(.badge:not([hidden]))) .n2-car{margin-left:auto}
.n2-g.closed .n2-car{transform:rotate(-90deg)}
.n2-g.act:not(.closed) .n2-h .badge{display:none}
.n2-items{display:flex;flex-direction:column;gap:1px;padding-left:30px}
.n2-items button{font-size:14.5px;padding:8px 12px;font-weight:500}
.n2-g.closed .n2-items{display:none}
.grp-tabs{display:none}
@media (max-width:1023px){
  .nav2{flex-direction:row;flex:1;overflow:visible;margin:0;padding:0;gap:0;justify-content:space-around}
  .nav2 .n2-items,.nav2 .n2-car,.nav2 .n2-s{display:none!important}
  .n2-g{margin:0;flex:1;min-width:0}
  .nav2 .n2-top,.nav2 .n2-h{flex:1;flex-direction:column;gap:3px;padding:7px 2px 5px!important;font-size:11px!important;text-transform:none;letter-spacing:0;text-align:center;min-width:0;border-radius:10px;color:var(--side-fg)!important;font-weight:600}
  .nav2 .n2-h .i,.nav2 .n2-top .i{width:22px;height:22px;opacity:1}
  .nav2 .lbl{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .nav2 .n2-top[aria-current="page"],.n2-g.act .n2-h{background:rgb(255 255 255 / .09);color:var(--side-act)!important}
  .nav2 .n2-top[aria-current="page"]::before,.n2-g.act .n2-h::before{content:"";position:absolute;left:30%;right:30%;top:-6px;height:3px;border-radius:0 0 3px 3px;background:var(--gold)}
  .nav2 .badge,.n2-g.act:not(.closed) .n2-h .badge{display:inline-block;position:absolute;top:2px;left:calc(50% + 6px);margin:0;font-size:10px;padding:0 5px;min-width:16px}
  .nav2 .badge[hidden]{display:none!important}
  .grp-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:-4px 0 2px}
  .grp-tabs[hidden]{display:none}
  .grp-tabs button{flex:none;border:1px solid var(--line);background:var(--surface);color:var(--fg-2);border-radius:999px;padding:7px 14px;font:inherit;font-size:14px;font-weight:600;white-space:nowrap;display:flex;align-items:center;gap:6px}
  .grp-tabs button[aria-selected="true"]{background:var(--accent);border-color:var(--accent);color:#fff}
  .grp-tabs .badge{background:var(--bad);color:#fff;border-radius:999px;font-size:11px;padding:0 6px}
}
.fin-tabs{margin:4px 0 12px}
.fin-arten{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin-bottom:12px}.fin-arten>div{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}.fin-arten span{font-size:12px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.fin-arten b{font-size:18px}
.fin-tbl td.r,.fin-tbl th.r{text-align:right;white-space:nowrap}.fin-tbl tr[data-open]{cursor:pointer}.fin-tbl tr[data-open]:hover td{background:var(--surface-2)}.fin-tbl tr.bad td{background:var(--bad-weak)}.fin-tbl small{color:var(--muted)}
.n2-g.single .n2-items{display:none}.n2-g.single .n2-car{visibility:hidden}
.n2-g.single.act .n2-h{background:rgb(255 255 255 / .09);color:var(--side-act)!important}
.n2-g.act .n2-h{color:var(--gold)!important}
#tix-sub{display:none!important}
.n2-m{display:none}
@media (max-width:1023px){.nav2 .n2-g:has(.n2-m) .n2-n,.nav2 .n2-top .n2-n{display:none}.nav2 .n2-m{display:inline}}
@media (min-width:600px) and (max-width:1023px){.nav2 .n2-g:has(.n2-m) .n2-n,.nav2 .n2-top .n2-n{display:inline}.nav2 .n2-m{display:none}}
@media (max-width:400px){.nav2 .n2-h,.nav2 .n2-top{font-size:10px!important;letter-spacing:-.15px;padding-left:0!important;padding-right:0!important}}
/* E-Mail: Nachweise, Schreibfeld, Vorlagen */
.mstats{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}
.mstat{font-size:11.5px;font-weight:600;padding:1px 7px;border-radius:999px;background:var(--surface-3);color:var(--fg-2)}
.mstat.ok{background:var(--ok-weak);color:var(--ok)}.mstat.okk{background:var(--ok);color:#fff}.mstat.bad{background:var(--bad-weak);color:var(--bad)}.mstat.new{background:var(--warn-weak);color:var(--warn)}
.mev{display:flex;flex-direction:column;gap:2px;padding:6px 12px 10px;font-size:12px;color:var(--muted);border-top:1px dashed var(--line)}
.mc-pv{border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-top:6px}
.mc-pvh{display:flex;gap:10px;align-items:center;padding:8px 12px;background:var(--surface-2);border-bottom:1px solid var(--line)}.mc-pvh .linkbtn{margin-left:auto}
.mc-pv iframe,.mv-frame{width:100%;height:560px;border:0;background:#f1f3f6;display:block}
.mv-frame{border:1px solid var(--line);border-radius:10px;margin-top:8px}
.mv-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:16px;align-items:start}
.mv-list{display:flex;flex-direction:column;gap:2px;border-right:1px solid var(--line);padding-right:12px}
.mv-list button{border:0;background:none;text-align:left;padding:7px 10px;border-radius:8px;font:inherit;font-size:14px;color:var(--fg-2);cursor:pointer}
.mv-list button:hover{background:var(--surface-2)}.mv-list button[aria-current="true"]{background:var(--accent-weak);color:var(--accent);font-weight:600}
.mv-k{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:10px 0 2px 10px}.mv-k:first-child{margin-top:0}
.mv-list .mv-new{color:var(--accent);font-weight:600;margin-top:8px}
.mv-ed{display:flex;flex-direction:column;gap:10px}
@media (max-width:800px){.mv-grid{grid-template-columns:1fr}.mv-list{border-right:0;padding-right:0;border-bottom:1px solid var(--line);padding-bottom:8px}}
.gw-comp textarea{font-weight:400;line-height:1.5}
.mv-ed textarea{font-weight:400;line-height:1.5}
/* 1.37: Zwischenstand & Standort */
.zwi{display:inline-flex;align-items:center;font-size:12.5px;font-weight:600;padding:2px 9px;border-radius:999px;background:var(--surface-3);color:var(--fg-2);line-height:1.5;max-width:100%;white-space:normal}
.zwi.warn{background:var(--warn-weak);color:var(--warn)}.zwi.bad{background:var(--bad-weak);color:var(--bad)}.zwi.ok{background:var(--ok-weak);color:var(--ok)}
.c-zwi{margin:2px 0 6px}
.b-zw{align-items:flex-start!important}
.nx-zwi{display:flex;flex-direction:column;gap:6px;margin:6px 0 10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}
.zw-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-direction:row!important;font-size:13px;color:var(--muted);font-weight:600}
.zw-row select{width:auto;max-width:60%;min-height:34px;height:34px!important;padding:4px 8px;font-size:13.5px}
.zw-auto{color:var(--accent)!important}
.stbar .arch{opacity:.8}
.bhead,.brow{grid-template-columns:minmax(210px,2fr) minmax(120px,.9fr) 70px minmax(170px,1.5fr) minmax(150px,1.4fr) minmax(190px,1.6fr)}
@media (max-width:1280px){.bhead,.brow{grid-template-columns:minmax(190px,2fr) 115px 64px minmax(150px,1.4fr) minmax(130px,1.2fr) minmax(170px,1.4fr)}}
@media (max-width:1100px){.brow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"veh st" "pr pr" "open open" "next next"}.b-zw{align-items:flex-start!important}}
.stbar{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))!important}
@media (max-width:600px){.stbar{display:flex!important}}
.stepper{grid-template-columns:repeat(var(--n,8),minmax(70px,1fr))}
.hu-my{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--muted);font-weight:600;justify-content:flex-end;min-width:0}
.hu-my-in{display:grid;grid-template-columns:1.3fr 1fr;gap:6px}
.lw-wx .hu-my{flex-direction:row;align-items:center}.lw-wx .hu-my .kz-l{white-space:nowrap}
/* Ticket-Vorlagen */
.tv-wrap{border:1px solid var(--line);border-radius:10px;background:var(--surface);margin:0 0 10px}
.tv-wrap>summary{cursor:pointer;padding:10px 14px;font-weight:700;font-size:14px;color:var(--accent)}
.tv{display:flex;flex-direction:column;gap:10px;padding:0 14px 14px}
.tv-k{display:flex;gap:6px;overflow-x:auto;scrollbar-width:thin;padding-bottom:2px}
.tv-k button{flex:none;border:1px solid var(--line);background:var(--surface-2);color:var(--fg-2);border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}
.tv-k button[aria-selected="true"]{background:var(--accent);border-color:var(--accent);color:#fff}
.tv-k button b{background:var(--bad);color:#fff;border-radius:999px;padding:0 6px;font-size:11px;margin-left:4px}
.tv-i{display:flex;flex-wrap:wrap;gap:6px}
.tv-i .tgl small{font-size:11px;opacity:.75;margin-left:4px}
.tv-a{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:10px}
.tv-a .tv-n{flex:1;min-width:200px}
.tv-edk{border:1px solid var(--line);border-radius:10px;padding:10px;margin-bottom:10px;display:flex;flex-direction:column;gap:8px}
.tv-edh{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tv-edh input{flex:1;min-width:180px;font-weight:700}.tv-edh select{width:auto}
.tv-edk textarea{font-weight:400;line-height:1.5}
.tv-k{flex-wrap:wrap;overflow:visible}
/* Ticket-Vorlagen in der Verwaltung: Bereiche links, Vorlagen als Raster rechts */
.tve{display:grid;grid-template-columns:230px minmax(0,1fr);gap:16px;align-items:start}
.tve-l{display:flex;flex-direction:column;gap:2px;border-right:1px solid var(--line);padding-right:12px}
.tve-l button{border:0;background:none;text-align:left;padding:8px 10px;border-radius:8px;font:inherit;cursor:pointer;display:flex;flex-direction:column;gap:1px;color:var(--fg-2)}
.tve-l button b{font-size:14px}.tve-l button small{font-size:12px;color:var(--muted)}
.tve-l button:hover{background:var(--surface-2)}.tve-l button[aria-current="true"]{background:var(--accent-weak)}.tve-l button[aria-current="true"] b{color:var(--accent)}
.tve-l .tve-add{color:var(--accent);font-weight:700;margin-top:6px}
.tve-r{display:flex;flex-direction:column;gap:12px;min-width:0}
.tve-h{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.tve-h .fld:first-child{flex:1;min-width:200px}.tve-h .fld{margin:0}
.tve-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px}
.tve-it{display:flex;align-items:center;border:1px solid var(--line);border-radius:8px;background:var(--surface);overflow:hidden}
.tve-it:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak)}
.tve-it input,.panel .tve-it input{border:0!important;box-shadow:none!important;height:38px!important;min-height:0;font-size:14px;font-weight:500;padding:0 10px;background:transparent}
.tve-it button{border:0;background:none;color:var(--muted);width:34px;height:38px;cursor:pointer;flex:none}.tve-it button:hover{color:var(--bad);background:var(--bad-weak)}
.tve-new{display:flex;gap:8px}.tve-new input{flex:1}
@media (max-width:800px){.tve{grid-template-columns:1fr}.tve-l{border-right:0;padding:0 0 8px;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;border-bottom:1px solid var(--line);scrollbar-width:none}.tve-l button{flex:none;border:1px solid var(--line);padding:6px 10px}.tve-l button small{white-space:nowrap}}
/* Benutzer & Rollen */
.ppl-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.ppl-bar input{flex:1;min-width:200px}
.ppl-tbl select{width:auto;min-height:34px;height:34px!important;padding:4px 8px;font-size:13.5px;margin-right:6px}
.ppl-tbl td{vertical-align:middle}
.tr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}
.tr-i{display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--surface)}
.tr-i span{display:flex;flex-direction:column}.tr-i span b{color:var(--fg);font-size:14px}.tr-i small{font-size:12px;color:var(--muted);font-weight:500}
.tr-i select{width:auto;min-height:34px;height:34px!important;font-size:13.5px}
/* Bestand als Stationen-Übersicht (Aufbau wie der Auslieferungsplan) */
.st-nav{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.st-nav .tbar-sum{flex:1}
.st-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin:12px 0 14px}
.st-day{background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--c);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:8px;min-height:180px;min-width:0}
.st-day.on{border-color:var(--c);box-shadow:0 0 0 2px color-mix(in srgb,var(--c) 30%,transparent)}
.st-h{border:0;background:none;padding:0;font:inherit;text-align:left;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:6px;align-items:baseline;color:var(--fg)}
.st-hn{font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st-h b{font-size:22px;font-family:var(--display);line-height:1.1;color:var(--c)}
.st-h small{grid-column:1/-1;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st-h em{grid-column:1/-1;font-style:normal;font-size:12px;font-weight:700;color:var(--bad)}
.st-ms{display:flex;flex-direction:column;gap:6px;flex:1}
.st-m{display:flex;flex-direction:column;gap:1px;text-align:left;border:1px solid var(--line);border-left:3px solid var(--line-2);border-radius:8px;background:var(--surface);padding:6px 8px;cursor:pointer;font:inherit;color:var(--fg);min-width:0}
.st-m:hover{box-shadow:var(--sh-1)}
.st-m b{font-size:13px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st-m small{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st-m.ok{border-left-color:var(--ok)}.st-m.warn{border-left-color:var(--warn)}.st-m.bad{border-left-color:var(--bad);background:var(--bad-weak)}
.st-more{border:0;background:none;color:var(--accent);font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;text-align:left;padding:2px 0}
.st-sel{border-top:4px solid var(--c)}
.st-selh{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin-bottom:10px}.st-selh h4{margin:0}.st-selh .bquick{margin:0}
.st-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.st-c{gap:5px}.st-c.ok{border-left-color:var(--ok)}
.st-ct{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:22px}
.st-d{font-size:12px;font-weight:700;color:var(--muted)}.st-d.bad{color:var(--bad)}
.st-z{display:flex;flex-wrap:wrap;gap:4px}
.st-n{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:6px;margin-top:2px;font-size:13px}
.st-n span{min-width:0}.st-n .btn{flex:none}
.stg small{font-weight:500;opacity:.8}
@media (max-width:1300px){.st-week{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:760px){.st-week{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.st-day{min-height:0;padding:8px 10px}.st-ms{display:none}}
.st-wsx{border:1px dashed var(--c);background:color-mix(in srgb,var(--c) 8%,transparent);color:var(--fg-2);border-radius:8px;padding:5px 8px;font:inherit;font-size:12px;font-weight:600;text-align:left;cursor:pointer}
.st-wsx:hover{background:color-mix(in srgb,var(--c) 16%,transparent)}
@media (max-width:760px){.st-wsx{display:none}}
/* Rechte-Tabelle in der Verwaltung */
.rr-tbl th{text-align:center;white-space:nowrap}.rr-tbl th:first-child{text-align:left}
.rr-tbl td:first-child{min-width:240px}
.rr-c{text-align:center;vertical-align:middle}.rr-c.ch{background:var(--accent-weak)}
.rr-t{display:inline-flex!important;align-items:center;justify-content:center;cursor:pointer;margin:0}
.rr-t input{position:absolute;opacity:0;width:1px;height:1px}
.rr-t span{width:22px;height:22px;border-radius:6px;border:1.5px solid var(--line-2);background:var(--surface);display:grid;place-items:center}
.rr-t input:checked+span{background:var(--ok);border-color:var(--ok)}
.rr-t input:checked+span::after{content:"";width:6px;height:11px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg) translate(-1px,-1px)}
.rr-t input:disabled+span{opacity:.55}
.rr-t input:focus-visible+span{box-shadow:0 0 0 3px var(--accent-weak)}
.rr-foot{display:flex;gap:10px;align-items:center;justify-content:flex-end;margin-top:10px;flex-wrap:wrap}.rr-foot .hint{margin:0}
.chip.ab{background:#efe7f7;color:#6b3fa0}
.rr-wrap{overflow-x:auto;max-width:100%}#admin-main{min-width:0}
#admin-main>*{min-width:0;max-width:100%}
.rr-tbl th{white-space:normal;font-size:12px;line-height:1.2}.rr-tbl td:first-child{min-width:180px}
.tbl.rr-tbl{min-width:0}.rr-tbl td,.rr-tbl th{padding-left:8px;padding-right:8px}
