:root{
  --bg:#eef3f7;--surface:#ffffff;--surface-2:#f8fbfd;--line:#d5e1ea;--text:#183244;--muted:#607889;--primary:#0f5e8c;--primary-2:#1f7bb0;--accent:#dcecf7;--success:#157347;--danger:#b42318;--shadow:0 10px 30px rgba(20,52,74,.08);--radius:22px;
}
*{box-sizing:border-box} body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:linear-gradient(180deg,#f2f6fa,#e9f0f5)}
button,input,select,textarea{font:inherit} a{text-decoration:none;color:inherit}
.topbar{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 24px 10px}.topbar h1{margin:0 0 4px;font-size:2rem}.topbar p{margin:0;color:var(--muted)}
.user-badge{background:var(--surface);border:1px solid var(--line);padding:10px 14px;border-radius:999px;box-shadow:var(--shadow);min-width:120px;text-align:right}
.dashboard-grid{display:grid;grid-template-columns:1.6fr .8fr;gap:18px;padding:0 24px 18px;min-height:calc(100vh - 190px)}
.card{background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.fleet-panel,.open-panel,.wizard-card,.side-facilities,.debug-bar,.login-card,.split-layout>.card{padding:18px}
.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.section-head h2{margin:0;font-size:1.1rem}
.vehicles-grid{display:grid;gap:14px}.vehicle-card{padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2)}.vehicle-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.vehicle-name{font-weight:700}.ride-chip{display:block;padding:10px 12px;border-radius:14px;background:#fff;border:1px solid var(--line);margin-top:8px;font-size:.94rem}
.open-orders{display:flex;flex-direction:column;gap:12px}.order-card{padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff;cursor:grab}.order-card strong{display:block;margin-bottom:4px}.order-meta{font-size:.9rem;color:var(--muted)}
.debug-bar{margin:0 24px 90px}.debug-text{margin-top:8px;color:var(--muted)}
.bottom-nav{position:fixed;left:0;right:0;bottom:0;background:#10364d;color:#dce9f3;padding:10px 12px;display:flex;justify-content:space-around;gap:8px;z-index:30}.bottom-nav a{padding:10px 14px;border-radius:999px;color:#dce9f3;font-size:.95rem}.bottom-nav a.active{background:#1a587c;color:#fff}
.wizard-layout{display:grid;grid-template-columns:1.35fr .85fr;gap:18px;padding:0 24px 90px}.wizard-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}.step{border:1px solid var(--line);background:var(--surface-2);padding:12px;border-radius:14px;color:var(--muted)}.step.active{background:var(--primary);border-color:var(--primary);color:#fff}
.wizard-pane{display:none}.wizard-pane.active{display:block} label{display:flex;flex-direction:column;gap:8px;margin-bottom:14px;font-weight:600} input,select,textarea{width:100%;padding:13px 14px;border-radius:16px;border:1px solid var(--line);background:#fff;color:var(--text)} textarea{min-height:84px;resize:vertical}
.grid.two{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.grid.three{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.toggle-row{display:flex;gap:18px;flex-wrap:wrap;margin-top:6px}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:10px}.primary,.ghost{border:none;padding:12px 18px;border-radius:16px;cursor:pointer}.primary{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;box-shadow:0 10px 20px rgba(15,94,140,.25)}.ghost{background:#e7f0f7;color:var(--text)}.big{width:100%;padding:15px 18px;font-size:1.05rem}
.match-list,.facility-library,.simple-list{display:flex;flex-direction:column;gap:10px}.match-item,.list-item{padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:#fff;cursor:pointer}.match-item:hover,.list-item:hover,.order-card:hover,.ride-chip:hover{border-color:#aac8da}
.feedback{padding:12px 14px;border-radius:14px;margin-bottom:14px}.feedback.success{background:#e9f8ef;color:var(--success)} .feedback.error{background:#fff0ef;color:var(--danger)} .hidden{display:none}
.review-box{padding:14px;border:1px dashed #afc7d7;border-radius:18px;background:#f6fbff;margin-bottom:16px}.muted-pill{background:#edf4f8;color:var(--muted);padding:8px 10px;border-radius:999px;font-size:.85rem}.side-facilities input,.section-head input{max-width:260px}.split-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:18px;padding:0 24px 90px}.form-stack{display:block}.small-feedback{margin-top:10px;color:var(--muted)}
.login-body{display:grid;place-items:center;min-height:100vh;background:radial-gradient(circle at top,#dbeaf4,#eaf1f6)}.login-card{width:min(460px,92vw);padding:28px}.login-card h1{margin:0 0 6px}.hint{color:var(--muted);font-size:.9rem}
.mobile-head{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#10364d;color:#fff;position:sticky;top:0}.back-link{color:#d8edf9}.driver-home{padding:16px 16px 90px;display:grid;gap:12px}.suite-card{padding:18px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
@media (max-width: 980px){.dashboard-grid,.wizard-layout,.split-layout{grid-template-columns:1fr}.topbar{padding:16px}.debug-bar{margin:0 16px 90px}.dashboard-grid,.wizard-layout,.split-layout{padding:0 16px 90px}}
@media (max-width: 640px){.grid.two,.grid.three,.wizard-steps{grid-template-columns:1fr}.topbar h1{font-size:1.55rem}.bottom-nav{font-size:.86rem;padding:8px}.bottom-nav a{padding:9px 8px}}

.head-actions{display:flex;gap:10px;align-items:center}.compact-field{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--muted)}.compact-field select{padding:8px 10px;border-radius:10px;border:1px solid var(--line);background:#fff}.inline-search{margin:10px 0 12px}.inline-search input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:#fff}.nav-action{border:none;background:#ffffff20;color:inherit;padding:10px 12px;border-radius:999px}.bottom-nav{display:flex;align-items:center;gap:10px;overflow:auto;white-space:nowrap}.bottom-nav a,.bottom-nav button{flex:0 0 auto}@media (max-width: 900px){.head-actions{width:100%;justify-content:flex-start}.section-head{flex-direction:column;align-items:flex-start}}


:root{
  --bg:#eef3f8;
  --surface:#ffffff;
  --surface-2:#f7fafc;
  --line:#d9e3ef;
  --text:#17324a;
  --muted:#678099;
  --primary:#2f6fed;
  --primary-soft:#eaf1ff;
  --shadow:0 12px 30px rgba(19,50,74,.08);
}
body.app-theme{background:linear-gradient(180deg,#eef4f9 0%,#e8eef5 100%);color:var(--text)}
.topbar-compact{padding:18px 24px 10px}
.topbar-actions{display:flex;align-items:center;gap:12px}
.card-elevated{background:var(--surface);box-shadow:var(--shadow);border:1px solid var(--line)}
.dashboard-grid-wide{grid-template-columns:minmax(0,1fr) 360px;gap:18px;padding:0 24px 12px}
.vehicles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.vehicle-card,.order-card,.ride-chip{background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);border:1px solid var(--line);border-radius:18px;box-shadow:0 6px 18px rgba(20,44,70,.05)}
.vehicle-card{padding:16px;min-height:140px}
.ride-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.ride-chip{padding:12px}
.order-card{padding:14px;margin-bottom:12px;cursor:grab}
.order-card:active{cursor:grabbing}
.order-meta{color:var(--muted);font-size:.92rem;line-height:1.4}
.card-topline{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.time-pill{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-weight:700;font-size:.82rem}
.subtle-tag{display:inline-flex;padding:4px 8px;border-radius:999px;background:#f1f5f9;color:#5d7287;font-size:.78rem}
.empty-state{padding:18px;border:1px dashed var(--line);border-radius:16px;background:var(--surface-2);color:var(--muted);text-align:center}
.empty-state.small{padding:12px}
.inline-search input,.compact-field select,.ghost{border-radius:12px;border:1px solid var(--line)}
.inline-search input{width:100%;padding:12px 14px;background:#fff}
.ghost{background:#fff;padding:10px 14px;color:var(--text)}
.debug-bar{margin:0 24px 88px;padding:14px 16px;background:#fff;border:1px solid var(--line)}
.debug-sub{color:var(--muted);font-size:.9rem;margin-top:4px}
.bottom-nav.full-nav{gap:8px;overflow:visible;padding:10px 14px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-top:1px solid var(--line)}
.bottom-nav.full-nav a,.bottom-nav.full-nav button{white-space:nowrap;min-width:max-content}
@media (max-width: 980px){.dashboard-grid-wide{grid-template-columns:1fr;padding:0 14px 12px}.open-panel{order:-1}.topbar-compact{padding:14px 14px 8px}.debug-bar{margin:0 14px 88px}}

.intake-layout{grid-template-columns:minmax(0,1.2fr) 360px}
.compact-list{max-height:180px;overflow:auto}
.subsection{margin:16px 0 8px;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2)}
.subsection h3{margin:0;font-size:1rem}
.small{padding:8px 12px;font-size:.9rem;border-radius:10px}
.address-option-list{display:flex;flex-direction:column;gap:10px}
.address-row{display:grid;grid-template-columns:140px 180px 1fr auto;gap:10px;align-items:start;padding:12px;border-radius:16px;background:#fff;border:1px solid var(--line)}
.address-row textarea{min-height:72px}
.address-pick{font-weight:600;margin:0;padding-top:10px}
.inline-dual{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.display-block{padding:14px;border-radius:18px;background:var(--surface-2);border:1px solid var(--line);margin-bottom:16px}
.display-label{font-size:.85rem;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}
.display-value{font-size:1rem;line-height:1.5;margin-bottom:10px}
.quick-time-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.time-chip{border:1px solid var(--line);background:#fff;border-radius:12px;padding:11px 8px;font-weight:700;color:var(--text);cursor:pointer}
.time-chip:hover{border-color:#9fc0df;background:#f8fbff}
.review-line{margin-bottom:8px}
@media (max-width:980px){.intake-layout{grid-template-columns:1fr}.address-row{grid-template-columns:1fr}.inline-dual,.quick-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.quick-time-grid,.inline-dual{grid-template-columns:1fr}.subsection{padding:12px}}

.eta-line{font-weight:700;color:#0f4c81}.strong-line{font-weight:700;color:#26415e}


.import-stack{max-width:1100px;margin:0 auto 6rem;}.import-form{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.import-form input[type=file]{flex:1;min-width:240px;padding:.8rem;border:1px dashed rgba(65,93,160,.35);border-radius:14px;background:#f8fbff}.small-link{font-size:.9rem}.full-nav{display:flex;gap:.4rem;overflow:auto;padding-inline:.6rem}.full-nav a,.full-nav button{white-space:nowrap}.muted{color:#617296;line-height:1.45}.cards-stack{display:grid;gap:1rem;padding:1rem}.eta-line{color:#214a9a;font-weight:600}

.order-time-block{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin:.45rem 0;padding:.55rem .65rem;background:rgba(255,255,255,.72);border:1px solid rgba(20,34,64,.08);border-radius:12px}.muted-label{display:block;font-size:.72rem;color:#6b7280;margin-bottom:2px}.facility-group{border:1px solid rgba(20,34,64,.08);border-radius:14px;background:rgba(255,255,255,.7);margin-bottom:10px;overflow:hidden}.facility-group summary{cursor:pointer;list-style:none;padding:12px 14px;font-weight:700;display:flex;justify-content:space-between;align-items:center}.facility-group summary::-webkit-details-marker{display:none}.facility-group-list{padding:0 10px 10px}.compact-field input[type=date]{border:none;background:transparent;font:inherit;color:inherit;min-width:145px}.compact-field input[type=date]::-webkit-calendar-picker-indicator{opacity:.7}.debug-sub{font-size:.9rem;color:#5b6475;margin-top:4px}


.legacy-card{border-radius:20px;border:1px solid var(--line);background:linear-gradient(180deg,#ffffff 0%,#f9fbfd 100%);box-shadow:0 8px 24px rgba(18,39,61,.06)}
.legacy-block{display:grid;gap:8px}
.legacy-line{font-size:.93rem;color:#2c4258;line-height:1.45}
.order-meta-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 9px;border-radius:999px;background:#edf4f8;color:#34536f;font-size:.78rem;font-weight:700}
.status-badge--liegend{background:#fcebea;color:#9b2226}.status-badge--tragestuhl{background:#fff4da;color:#8a5b00}.status-badge--rollstuhl{background:#e9f7f4;color:#146c60}.status-badge--sitzend{background:#edf4f8;color:#34536f}
.card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.mini-btn{border:none;border-radius:999px;padding:8px 12px;font-size:.84rem;font-weight:700;cursor:pointer}
.mini-btn--ghost{background:#eef4f8;color:#23405d}.mini-btn--danger{background:#fff0ef;color:#a33d34}
.open-orders{display:flex;flex-direction:column;gap:12px}
.vehicle-card .ride-list{margin-top:14px}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.debug-bar strong{display:block;margin-bottom:4px}


.vehicle-timing-panel{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px 12px;margin:10px 0 12px;border:1px solid rgba(0,0,0,.08);border-radius:14px;background:rgba(255,255,255,.7)}
.vehicle-timing-panel .muted-label{display:block;font-size:.75rem;color:#6b7280}
.vehicle-timing-panel strong{display:block;font-size:.98rem;line-height:1.25}
.segment-card{margin:8px 0;padding:10px 12px;border-radius:12px;background:linear-gradient(180deg,rgba(15,76,129,.07),rgba(15,76,129,.03));border:1px dashed rgba(15,76,129,.24)}
.segment-title{font-size:.76rem;font-weight:700;color:#0f4c81;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}
.segment-line{display:flex;justify-content:space-between;gap:10px;font-size:.9rem;margin:2px 0}
.segment-line span{color:#6b7280}
.segment-meta{font-size:.8rem;color:#374151;margin-top:4px}


.admin-settings-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:18px;
}
.admin-setting-card{
  background:rgba(255,255,255,0.88);
  border:1px solid rgba(39,76,119,0.12);
  border-radius:22px;
  padding:20px;
  box-shadow:0 12px 28px rgba(31,41,55,0.08);
}
.admin-setting-card--wide{ grid-column:1 / -1; }
.admin-setting-card h3{
  margin:0 0 8px;
  font-size:1.05rem;
}
.admin-setting-card p{
  margin:0 0 14px;
  color:#52627a;
  line-height:1.45;
}
.big-field{
  display:grid;
  gap:8px;
}
.big-field span{
  color:#274c77;
  font-weight:700;
}
.big-field input{
  border:1px solid rgba(39,76,119,0.18);
  background:#fff;
  border-radius:16px;
  padding:14px 16px;
  font-size:1.05rem;
}
.calc-preview{
  background:linear-gradient(180deg,#f7fbff,#eef5fc);
  border:1px solid rgba(39,76,119,0.14);
  border-radius:16px;
  padding:16px 18px;
  font-weight:700;
  color:#1f2d3d;
}
.inline-status{
  margin-top:12px;
  min-height:24px;
  font-weight:600;
}
.inline-status.ok{ color:#245c36; }
.inline-status.error{ color:#9b2226; }

.module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
.module-card{display:grid;gap:8px;text-decoration:none;color:#1f2d3d;background:rgba(255,255,255,.9);border:1px solid rgba(39,76,119,.12);border-radius:22px;padding:20px;box-shadow:0 12px 28px rgba(31,41,55,.08);transition:transform .15s ease,box-shadow .15s ease}
.module-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(31,41,55,.12)}
.module-card strong{font-size:1.05rem;color:#274c77}.module-card span{color:#52627a;line-height:1.45}

.warn-badge{display:inline-flex;align-items:center;background:#9b2226;color:#fff;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:700}
.warn-badge--tight{background:#d97706}
.card-late{border-color:rgba(155,34,38,.35)!important;box-shadow:0 12px 28px rgba(155,34,38,.12)!important}
.card-tight{border-color:rgba(217,119,6,.35)!important;box-shadow:0 12px 28px rgba(217,119,6,.10)!important}
.vehicle-tolerance{display:flex;align-items:center;gap:8px;margin:10px 0 4px}
.mini-number{width:72px;border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:#fff}

.core-ride-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}
.patient-strong{font-size:1rem;line-height:1.3;color:#102a43}
.core-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.core-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#e9f4fb;color:#0f5e8c;font-weight:700;font-size:.8rem}
.core-pill--transport{background:#eef6ea;color:#245c36}
.address-block{display:grid;gap:4px;margin:10px 0}
.address-strong{font-weight:700;color:#183244;line-height:1.4}
.mini-inline-btn{padding:7px 10px;border-radius:10px;border:1px solid var(--line);background:#fff;cursor:pointer}


.board-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:0 0 14px}
.summary-block{display:grid;gap:4px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.78);border:1px solid rgba(39,76,119,.12)}
.summary-block strong{font-size:1.2rem;color:#102a43;line-height:1}
.summary-block span{font-size:.82rem;color:#52627a}
.summary-block--late{background:rgba(155,34,38,.08);border-color:rgba(155,34,38,.18)}
.summary-block--tight{background:rgba(217,119,6,.08);border-color:rgba(217,119,6,.18)}
.summary-block--ok{background:rgba(36,92,54,.08);border-color:rgba(36,92,54,.18)}
.vehicle-card--late{border-top:4px solid rgba(155,34,38,.7)}
.vehicle-card--tight{border-top:4px solid rgba(217,119,6,.7)}
.vehicle-card--ok{border-top:4px solid rgba(36,92,54,.7)}
.vehicle-summary{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 12px}
.summary-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:.78rem;font-weight:700;border:1px solid transparent}
.summary-pill--late{background:rgba(155,34,38,.10);color:#8b1e22;border-color:rgba(155,34,38,.18)}
.summary-pill--tight{background:rgba(217,119,6,.10);color:#a35b00;border-color:rgba(217,119,6,.18)}
.summary-pill--ok{background:rgba(36,92,54,.10);color:#245c36;border-color:rgba(36,92,54,.18)}
.summary-note{display:inline-flex;align-items:center;color:#52627a;font-size:.82rem;padding:6px 2px}
.ride-detail{margin:10px 0 4px;border-radius:14px;border:1px solid rgba(39,76,119,.12);background:rgba(255,255,255,.66)}
.ride-detail summary{cursor:pointer;list-style:none;padding:10px 12px;font-weight:700;color:#274c77}
.ride-detail summary::-webkit-details-marker{display:none}
.ride-detail ul{margin:0;padding:0 16px 14px 30px;color:#34495e}
.ride-detail li{margin:6px 0;line-height:1.4}
.ride-detail--late{border-color:rgba(155,34,38,.22);background:rgba(155,34,38,.05)}
.ride-detail--tight{border-color:rgba(217,119,6,.22);background:rgba(217,119,6,.05)}
.ride-detail--ok{border-color:rgba(36,92,54,.18);background:rgba(36,92,54,.04)}


.board-priority-strip{grid-column:1/-1;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:16px;background:rgba(16,42,67,.92);color:#fff;border:1px solid rgba(16,42,67,.95)}
.board-priority-strip strong{white-space:nowrap;padding-top:3px}
.board-priority-strip__items{display:flex;flex-wrap:wrap;gap:8px}

.board-top-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:4px 0 8px}.board-top-actions .ghost{min-height:42px;padding:10px 16px;border-radius:14px;box-shadow:0 10px 24px rgba(16,42,67,.08)}
@media (max-width: 820px){.board-top-actions{flex-direction:column;align-items:stretch}.board-top-actions .ghost{width:100%}}
.priority-alert{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;font-size:.8rem;font-weight:700}
.priority-alert--late{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.18)}
.priority-alert--tight{background:rgba(245,158,11,.18);color:#fff;border:1px solid rgba(245,158,11,.35)}
.priority-panel{margin:10px 0 12px;padding:12px;border:1px solid rgba(39,76,119,.12);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(247,250,252,.86))}
.priority-panel__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.priority-panel__head strong{font-size:.95rem;color:#102a43}
.priority-panel__head span{font-size:.8rem;color:#52627a}
.priority-panel__list{display:flex;flex-direction:column;gap:8px}
.priority-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;border:1px solid rgba(39,76,119,.12);background:#fff;cursor:pointer;text-align:left}
.priority-item strong{color:#102a43;font-size:.94rem}
.priority-item span{font-size:.8rem;color:#52627a}
.priority-item__state{text-transform:uppercase;letter-spacing:.03em;font-weight:800}
.priority-item--late{border-color:rgba(155,34,38,.24);background:rgba(155,34,38,.05)}
.priority-item--late .priority-item__state{color:#8b1e22}
.priority-item--tight{border-color:rgba(217,119,6,.24);background:rgba(217,119,6,.05)}
.priority-item--tight .priority-item__state{color:#a35b00}
.ride-chip--flash{outline:3px solid rgba(15,94,140,.36);transform:translateY(-2px);transition:all .2s ease}
@media (max-width: 820px){.board-priority-strip{flex-direction:column}.priority-item{grid-template-columns:1fr}}

.view-switch{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.view-switch__label{font-size:.9rem;color:var(--muted);font-weight:700}
.view-switch__buttons{display:inline-flex;align-items:center;gap:4px;padding:4px;border-radius:999px;background:rgba(39,76,119,.08);border:1px solid rgba(39,76,119,.12)}
.view-switch__btn{border:none;background:transparent;color:#274c77;padding:8px 12px;border-radius:999px;cursor:pointer;font-weight:700}
.view-switch__btn.is-active{background:#fff;box-shadow:0 1px 3px rgba(16,42,67,.12);color:#102a43}
@media (max-width: 900px){.view-switch{width:100%}}

.drop-slot,
.drop-bucket {
  border: 2px dashed rgba(80,100,140,.35);
  border-radius: 14px;
  padding: 10px 12px;
  margin: 8px 0;
  text-align: center;
  color: #5c6b82;
  background: rgba(255,255,255,.55);
}
.drop-slot.is-over,
.drop-bucket.is-over {
  border-color: #4c8bf5;
  background: rgba(76,139,245,.08);
}
.drop-slot.drop-denied,
.drop-bucket.drop-denied {
  border-color: #d33b3b;
  background: rgba(211,59,59,.08);
}
.ride-chip--locked {
  box-shadow: inset 0 0 0 2px rgba(211,59,59,.22);
}
.dayview-grid { align-items: start; }
.day-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(220px,1fr));
  gap: 12px;
}
.day-card {
  border: 1px solid rgba(80,100,140,.18);
  border-radius: 16px;
  background: #fff;
  padding: 16px;
  text-align: left;
  display: grid;
  gap: 6px;
}
.day-card.is-active {
  border-color: #4c8bf5;
  box-shadow: 0 0 0 2px rgba(76,139,245,.15);
}
.day-ride-list { display: grid; gap: 12px; }
.day-ride-card {
  border: 1px solid rgba(80,100,140,.16);
  border-radius: 16px;
  background: #fff;
  padding: 14px;
  display: grid;
  gap: 8px;
}
.day-ride-card--open {
  border-left: 5px solid #f3a22d;
}

/* Compact dashboard + reliable drag and drop */
.dashboard-grid-wide{grid-template-columns:minmax(0,1fr) 360px;gap:12px}
.vehicles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px;align-items:start}
.vehicle-card{padding:10px 10px 8px;border-radius:16px;overflow:visible}
.vehicle-head-wrap{position:sticky;top:64px;z-index:6;background:linear-gradient(180deg,#f7fbff 0%,rgba(247,251,255,.96) 100%);margin:-10px -10px 8px;padding:8px 10px 6px;border-radius:16px 16px 12px 12px;border-bottom:1px solid rgba(39,76,119,.08)}
.vehicle-head{padding:0;min-height:auto}
.vehicle-head-drop{margin-top:6px;padding:6px 10px;border:2px dashed rgba(76,139,245,.35);border-radius:10px;background:#fff;color:#355070;font-size:.78rem;font-weight:700;text-align:center}
.ride-list{display:grid;gap:6px}
.drop-slot,.drop-bucket,.vehicle-head-drop,.vehicle-dock-target{transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}
.drop-slot{padding:5px 8px;margin:0;border-radius:10px;font-size:.75rem;background:rgba(255,255,255,.86)}
.drop-bucket{min-height:110px}
.is-drop-ready{border-color:#4c8bf5;background:rgba(76,139,245,.06)}
.ride-chip{background:#fff;border:1px solid rgba(80,100,140,.18);border-radius:12px;padding:8px 9px;box-shadow:0 2px 10px rgba(16,42,67,.06)}
.ride-chip--compact .ride-detail{margin-top:6px}
.ride-chip--late{border:2px solid #c83b3b!important;box-shadow:0 4px 14px rgba(200,59,59,.12)}
.ride-chip--tight{border:2px solid #d8ad18!important;box-shadow:0 4px 14px rgba(216,173,24,.12)}
.ride-chip--ok{border:2px solid #2f9e44!important;box-shadow:0 4px 14px rgba(47,158,68,.10)}
.ride-chip--locked{box-shadow:inset 0 0 0 2px rgba(53,80,112,.12)}
.ride-compact-head{min-width:0;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;gap:8px;align-items:center;margin-bottom:6px}
.time-pill{padding:3px 7px;border-radius:999px;font-size:.78rem;font-weight:800;line-height:1;background:#edf4ff;color:#143a5e}
.patient-strong{min-width:0;font-size:.92rem;line-height:1.15;white-space:normal;overflow:visible;text-overflow:clip;word-break:normal;overflow-wrap:anywhere}
.transport-chip{padding:3px 7px;border-radius:999px;background:#eef6ea;color:#245c36;font-size:.72rem;font-weight:700;white-space:nowrap}
.lock-flag{font-size:.85rem}
.ride-compact-body{display:grid;gap:3px}
.ride-address{display:grid;grid-template-columns:58px 1fr;gap:6px;align-items:start}
.ride-address__label{font-size:.71rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.03em}
.ride-address__text{font-size:.8rem;line-height:1.22;color:#17324a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card-actions--compact{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.card-actions--compact .mini-btn{padding:5px 8px;font-size:.75rem}
.ride-detail summary{padding:7px 9px;font-size:.8rem}
.ride-detail ul{padding:0 14px 10px 24px;font-size:.82rem}
.warn-badge,.core-pill,.core-pill--transport,.summary-note,.vehicle-summary,.vehicle-timing-panel,.segment-card{display:none!important}
.open-panel{position:sticky;top:10px;align-self:start;max-height:calc(100vh - 20px);overflow:auto}
.vehicle-dock{position:sticky;bottom:6px;display:grid;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(39,76,119,.12);background:linear-gradient(180deg,rgba(248,250,252,0),rgba(248,250,252,.96) 18%,rgba(248,250,252,1) 100%)}
.vehicle-dock__title{font-size:.78rem;font-weight:800;color:#355070;text-transform:uppercase;letter-spacing:.04em}
.vehicle-dock-target{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:8px 10px;border:2px dashed rgba(76,139,245,.32);border-radius:12px;background:#fff;color:#17324a}
.vehicle-dock-target strong{font-size:.82rem}
.vehicle-dock-target span{font-size:.74rem;color:#64748b}
.vehicle-dock-target--unplanned{border-color:rgba(217,119,6,.34)}
body.is-dragging-ride .vehicle-dock{box-shadow:0 0 0 2px rgba(76,139,245,.12);border-radius:14px}
@media (max-width: 1200px){.dashboard-grid-wide{grid-template-columns:1fr}.open-panel{position:relative;top:auto;max-height:none}.vehicle-dock{position:relative;bottom:auto}}

.vehicle-card.is-drop-ready{border-color:rgba(76,139,245,.25)}
.vehicle-card.is-over,.vehicle-head-drop.is-over,.vehicle-dock-target.is-over,.drop-slot.is-over,.drop-bucket.is-over{background:rgba(76,139,245,.08)!important;border-color:rgba(76,139,245,.75)!important;box-shadow:0 0 0 3px rgba(76,139,245,.14)}
.drag-handle{display:inline-flex;align-items:center;justify-content:center;min-width:18px;color:#64748b;font-weight:900;letter-spacing:-1px;cursor:grab;user-select:none}
.ride-chip[draggable="true"] .drag-handle{cursor:grab}
.ride-chip[draggable="true"]:active .drag-handle{cursor:grabbing}


/* robust compact board */
.vehicle-dock{display:none!important}
.vehicles-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}
.vehicle-card{padding:8px 8px 6px;border-radius:14px;background:linear-gradient(135deg,#e7edf5 0%, #d6e0eb 38%, #bcc8d6 100%);border:1px solid rgba(113,130,152,.28);box-shadow:0 10px 26px rgba(29,46,68,.14), inset 0 1px 0 rgba(255,255,255,.72)}
.vehicle-head-wrap{top:0;margin:-8px -8px 6px;padding:6px 8px 5px;border-radius:14px 14px 10px 10px}
.vehicle-name{font-size:.95rem;line-height:1.1}
.vehicle-tools{display:grid;gap:4px;margin-bottom:4px}
.vehicle-shift,.vehicle-tolerance{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0}
.mini-time{height:28px;padding:4px 6px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit}
.ride-list{display:grid;gap:4px}
.ride-chip{padding:7px 8px;border-radius:12px;margin-top:0;border-width:2px;background:#fff}
.ride-compact-head{min-width:0;gap:6px;margin-bottom:4px}
.time-pill{min-width:48px;padding:2px 6px;font-size:.76rem}
.patient-strong{font-size:.86rem;line-height:1.15}
.transport-chip{font-size:.68rem;padding:2px 6px}
.ride-compact-body{gap:3px}
.ride-address{display:grid;grid-template-columns:58px 1fr;gap:4px;align-items:start}
.ride-address__label{font-size:.66rem;font-weight:700;text-transform:uppercase;color:#64748b}
.ride-address__text{font-size:.75rem;line-height:1.15}
.card-actions--compact{margin-top:4px;gap:4px}
.mini-btn{padding:4px 6px;font-size:.72rem;border-radius:8px}
.ride-detail{margin-top:4px}
.ride-detail summary{font-size:.74rem;padding:2px 0}
.ride-detail ul{margin:4px 0 0 16px;padding:0;font-size:.72rem;line-height:1.25}
.drop-slot{padding:4px 6px;min-height:24px}
.vehicle-head-drop{padding:5px 8px}
.ride-chip--late{border-color:#dc2626!important;box-shadow:none}
.ride-chip--tight{border-color:#eab308!important;box-shadow:none}
.ride-chip--ok{border-color:#16a34a!important;box-shadow:none}
.open-panel.is-drop-ready,.open-panel.is-over{outline:2px dashed rgba(217,119,6,.5);outline-offset:-6px}
.ride-ghost{position:fixed;z-index:9999;pointer-events:none;opacity:.92;box-shadow:0 12px 30px rgba(15,23,42,.22);transform:rotate(1deg)}
.drag-handle{padding:0 4px;border-radius:6px;background:rgba(148,163,184,.14)}


.vehicle-tools__hint{font-size:.78rem;color:#526277;background:rgba(255,255,255,.7);border:1px dashed rgba(82,98,119,.28);padding:6px 8px;border-radius:10px}
.admin-settings-grid--vehicles{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.drop-slot{font-weight:700;color:#26415f}
.ride-chip[draggable="true"], .order-card[draggable="true"]{cursor:grab}
.ride-chip[draggable="true"]:active, .order-card[draggable="true"]:active{cursor:grabbing}

.topbar-actions .ghost{display:inline-flex;align-items:center;justify-content:center;padding:10px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;color:#214a6b;text-decoration:none}
.ride-compact-head{min-width:0;cursor:grab;user-select:none}
.ride-chip.is-dragging,.ride-chip--compact.is-dragging{opacity:.7}
.vehicle-head-drop{font-weight:800}
.drop-slot{font-size:.72rem;letter-spacing:.01em}

body.drag-pointer-active{user-select:none;-webkit-user-select:none;cursor:grabbing}
body.drag-pointer-active *{cursor:grabbing!important}

.admin-dual-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}
.preset-list{display:grid;gap:10px}
.preset-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center}
.tiny-check{display:flex;align-items:center;gap:6px;font-size:13px}
.profile-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}
.muted-inline{font-size:13px;font-weight:400;color:#667085}
.vehicle-name-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.vehicle-group-inline{font-size:14px;color:#475467;font-weight:600}
.vehicle-roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:6px 0 4px}
.roster-field{display:grid;gap:4px;font-size:12px;color:#475467}
.roster-field select{width:100%;min-width:0;padding:6px 8px;border:1px solid #d0d5dd;border-radius:8px;background:#fff}
@media (max-width: 1100px){.vehicle-roster{grid-template-columns:1fr}}


/* compact vehicle header and readable ride cards */
.vehicle-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px}
.vehicle-title-stack{display:grid;gap:4px}
.vehicle-name-line{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.vehicle-name{font-weight:800}
.vehicle-group-inline{font-size:.9rem;color:#475467;font-weight:700}
.vehicle-plate-line{display:flex;gap:8px;align-items:center;font-size:.8rem;color:#475467}
.vehicle-plate-line strong{font-size:.88rem;color:#102a43}
.vehicle-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:4px 0 2px}
.vehicle-tools{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:2px}
.vehicle-roster-state{font-size:.75rem;color:#667085;text-align:right}
@media (max-width:1100px){.vehicle-roster{grid-template-columns:1fr}.vehicle-tools{display:grid}}

.ride-compact-head{min-width:0;display:grid;grid-template-columns:auto auto 1fr auto;grid-template-areas:"drag time patient lock" ". . transport transport";gap:4px 8px;align-items:start;margin-bottom:5px}
.ride-compact-head .drag-handle{grid-area:drag}
.ride-compact-head .time-pill{grid-area:time}
.ride-compact-head .patient-strong{grid-area:patient;min-width:0;display:block;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.15;word-break:break-word}
.ride-compact-head .lock-flag{grid-area:lock;align-self:center}
.ride-compact-head .transport-chip{grid-area:transport;justify-self:end}
.ride-address__text{white-space:normal;word-break:break-word}
.vehicle-tolerance,.mini-number,[data-reset-tolerance],[data-roster-plate]{display:none!important}

.driver-shift-panel{margin-bottom:14px}
.driver-shift-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end}
.driver-shift-grid label{display:grid;gap:6px}
.driver-active-sessions{display:grid;gap:8px;margin-top:10px}
.driver-session-card{padding:10px 12px;border:1px solid rgba(39,76,119,.12);border-radius:14px;background:#fff}
@media (max-width:900px){.driver-shift-grid{grid-template-columns:1fr}}


.vehicle-chooser{margin:0 0 10px;padding:10px 12px;border:1px solid rgba(0,0,0,.08);border-radius:12px;background:#fff}
.vehicle-chooser__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:8px}
.vehicle-chooser__hint{font-size:12px;color:#555;max-width:620px}
.vehicle-chooser__list{display:flex;flex-wrap:wrap;gap:10px 14px;margin-bottom:8px}
.vehicle-toggle{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;background:#f4f6f8}
.vehicle-chooser__actions{display:flex;gap:8px;flex-wrap:wrap}
.vehicle-card-toolbar{margin:0 0 6px;display:flex;justify-content:flex-end}
.ride-compact-head{min-width:0;display:grid;grid-template-columns:auto auto 1fr auto;gap:8px;align-items:center}
.patient-strong{display:block;min-width:0;white-space:normal;word-break:normal;overflow-wrap:anywhere;line-height:1.15}
.ride-title-line{display:flex;justify-content:flex-end;margin-top:2px}
.transport-chip{justify-self:end}
.driver-notification-list{display:grid;gap:8px}.driver-notification{padding:10px 12px;border:1px solid rgba(0,0,0,.08);border-radius:10px;background:#fff}



.ride-chip--done { opacity:.55; background:#f5f5f5; border:2px solid #c9ced6; }
.ride-chip--driverheld { box-shadow: inset 0 0 0 2px rgba(48,93,199,.18); }
.ride-chip--ok { background:#eef9ee; border:2px solid #b9e2b9; }
.ride-chip--tight { background:#fff4df; border:2px solid #f2d08a; }
.ride-chip--late { background:#fde9e8; border:2px solid #e5a6a3; }
.driver-state-badge{margin-left:.4rem; font-size:.72rem; border-radius:999px; padding:.12rem .45rem; background:#eef2ff; color:#314c9f; white-space:nowrap;}
.driver-state-badge--completed{background:#eceff3;color:#5c6673;}
.driver-state-badge--en_route,.driver-state-badge--in_progress{background:#e9f7e9;color:#236b32;}

/* Driver app flow - restored polished layout */
.driver-app-shell{background:#0d2230;min-height:100vh;overflow:hidden}
.driver-app-shell .mobile-head{display:none!important}
.driver-app{min-height:100vh;display:flex;align-items:stretch;justify-content:center;padding:0}
.driver-screen{display:block;width:100%}
.driver-phone{min-height:100vh;background:linear-gradient(180deg,#f8fbfd,#edf4f8);display:flex;flex-direction:column;max-width:560px;margin:0 auto;width:100%}
.driver-phone--dark{background:linear-gradient(180deg,#102b3a,#0c2230);color:#eef7fb}
.driver-phone-head{padding:20px 18px 14px;display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.driver-brand{font-weight:800;font-size:1.15rem}
.driver-subline{font-size:.9rem;color:rgba(255,255,255,.72)}
.driver-phone:not(.driver-phone--dark) .driver-subline{color:var(--muted)}
.driver-phone-body{flex:1;padding:0 18px 18px;display:flex;flex-direction:column;gap:14px;overflow:hidden}
.driver-phone-actions{padding:14px 18px calc(18px + env(safe-area-inset-bottom));display:flex;gap:10px;justify-content:center;background:transparent}
.driver-phone-actions--dual>*{flex:1}
.primary-link-button{display:flex;align-items:center;justify-content:center}
.driver-step-card{background:#fff;border:1px solid #d7e4ec;border-radius:24px;padding:18px;box-shadow:0 14px 34px rgba(9,33,51,.10)}
.driver-step-card h1,.driver-step-card h2,.driver-step-card p{margin:0}
.driver-step-card h1,.driver-step-card h2{margin-bottom:10px}
.driver-step-card--dark{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);box-shadow:none;color:#eef7fb}
.driver-step-card--dark .driver-summary-line span{color:rgba(238,247,251,.68)}
.driver-step-card--alert{background:#fff0ee;border-color:#f0bbb5;color:#7b2e27}
.driver-field{display:flex;flex-direction:column;gap:8px;margin-bottom:14px;font-weight:700}
.driver-field:last-child{margin-bottom:0}
.driver-field span{font-size:.94rem}
.driver-field select{border-radius:18px;padding:16px 14px;border:1px solid #c9d8e2;background:#fff}
.driver-tip{font-size:.92rem;line-height:1.4;color:#5f7788;padding:0 2px}
.driver-tip--center{text-align:center;color:rgba(255,255,255,.76)}
.driver-summary-line{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid rgba(12,34,48,.08)}
.driver-step-card--dark .driver-summary-line{border-bottom-color:rgba(255,255,255,.08)}

.driver-step-card--notice-blue{
  background:linear-gradient(180deg, rgba(54,106,163,.26) 0%, rgba(27,64,110,.34) 100%);
  border-color:rgba(188,220,255,.28);
  box-shadow:none;
  color:#eef7fb;
}
.driver-step-card--notice-blue .driver-alert__title{
  color:#eef7fb;
}
.driver-step-card--notice-blue .driver-alert__text,
.driver-step-card--notice-blue .driver-removed-card__meta{
  color:rgba(238,247,251,.9);
}
.driver-summary-line:last-child{border-bottom:0;padding-bottom:0}
.driver-summary-line span{color:#607889}
.driver-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.driver-menu-button{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.08);color:#eef7fb;border-radius:22px;padding:18px 16px;text-align:center;font-weight:700}
.driver-menu-button--secondary{background:rgba(255,255,255,.03)}
.driver-ride-panel{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:26px;padding:18px;display:flex;flex-direction:column;gap:16px}
.driver-ride-panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.driver-kicker{font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:rgba(238,247,251,.76)}
.driver-time-large{font-size:2rem;font-weight:800;margin-bottom:.75rem}
.driver-ride-name{font-size:1.28rem;font-weight:800;line-height:1.25}
.driver-ride-main h1{font-size:1.36rem;line-height:1.22;margin:0 0 .5rem}
.driver-facts{display:grid;gap:12px}
.driver-facts span{display:block;color:rgba(238,247,251,.72);font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}
.driver-facts strong{line-height:1.35}
.driver-ride-addresses{display:flex;flex-direction:column;gap:12px}
.driver-address-block{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:18px;background:rgba(255,255,255,.05)}
.driver-address-block span,.driver-address-block small{color:rgba(238,247,251,.7)}
.driver-address-block strong{line-height:1.35}
.driver-ride-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.driver-ride-grid .driver-summary-line{padding:12px 14px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.03);margin:0}
.driver-ride-grid .driver-summary-line span{color:rgba(238,247,251,.7)}
.driver-alert__title { font-size:1.65rem; font-weight:800; color:#a1362f; }
.driver-alert__text { font-size:1.08rem; line-height:1.45; }
.driver-alert__meta { color:#7b4340; }
.driver-alert--soft{background:rgba(255,191,0,.10);border-color:rgba(255,191,0,.22);color:#f2db84}
.driver-mini-ride{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);margin-bottom:12px;color:#eef7fb}
.driver-mini-ride-top{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}
.driver-mini-ride-line{color:rgba(238,247,251,.74);line-height:1.35}
.driver-choice-list { display:grid; gap:.75rem; margin-top:12px; }
.driver-choice { text-align:left; padding:1rem; border-radius:14px; border:1px solid #d9e0e8; background:#fff; display:grid; gap:.25rem; }
.driver-choice--dark{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:#eef7fb}
.driver-choice span { color:#607086; }
.driver-choice--dark span{color:rgba(238,247,251,.72)}
.back-link--button{border:0;background:transparent;padding:0;color:inherit}
.primary-button--xl,.secondary-button{min-height:56px;border-radius:20px}

.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:16px 18px;border-radius:20px;border:0;font-weight:700;cursor:pointer;min-height:56px;text-align:center}
.primary-button{background:linear-gradient(135deg,#2cb67d,#1f9d68);color:#08161f;box-shadow:0 10px 24px rgba(44,182,125,.28)}
.primary-button:hover{filter:brightness(1.03)}
.primary-button:disabled,.secondary-button:disabled{opacity:.6;cursor:not-allowed}
.secondary-button{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);color:#eef7fb}
.driver-phone-actions{position:sticky;bottom:0;z-index:12;background:linear-gradient(180deg,rgba(12,34,48,0),rgba(12,34,48,.96) 28%,rgba(12,34,48,1));backdrop-filter:blur(8px)}
.driver-phone-actions .primary-button,.driver-phone-actions .secondary-button{font-size:1rem}
.driver-ride-panel{padding:18px;border-radius:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#eef7fb}

@media (max-width: 680px){
  .driver-app{padding:0}
  .driver-phone{max-width:none;width:100%}
  .driver-phone-head{padding-top:calc(16px + env(safe-area-inset-top))}
  .driver-phone-body{padding:0 14px 14px}
  .driver-phone-actions{padding:12px 14px calc(16px + env(safe-area-inset-bottom))}
  .driver-menu-grid,.driver-ride-grid{grid-template-columns:1fr}
}


.driver-body{overflow:hidden;}
.driver-app-shell,.driver-app{min-height:100dvh;}
.driver-phone{height:100dvh;min-height:100dvh;overflow:hidden;}
.driver-phone-body--center{justify-content:center;}
.driver-step-card--compact{padding:16px 18px;}
.driver-field--dark span{color:rgba(238,247,251,.8)}
.driver-field--dark select{background:rgba(255,255,255,.08);color:#eef7fb;border:1px solid rgba(255,255,255,.16)}
.driver-field--dark select option{color:#102b3a;}
.inline-status--driver{min-height:1.25rem;color:#f3d98a;font-size:.92rem;}
.driver-menu-grid--single{grid-template-columns:1fr;}
.driver-menu-launch{margin-bottom:2px;min-height:52px;}
.ride-compact-head{min-width:0;grid-template-columns:auto auto minmax(0,1fr)!important;align-items:start!important;}
.ride-head-main{min-width:0;display:flex;flex-direction:column;gap:4px;}
.ride-head-meta{display:flex;justify-content:flex-end;gap:6px;align-items:center;min-height:1.1rem;}
.ride-compact-head .patient-strong{white-space:normal;word-break:normal;overflow-wrap:anywhere;}
.ride-compact-head .driver-state-badge{margin-left:0;justify-self:flex-end;}
.ride-compact-head .lock-flag{align-self:flex-start;}


.driver-admin-layout{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:20px;align-items:start}
.driver-admin-list,.driver-admin-formwrap{padding:18px;border-radius:20px}
.driver-admin-list__head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.driver-admin-list__items{display:flex;flex-direction:column;gap:10px}
.driver-admin-item{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:14px 16px;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);color:inherit;text-align:left;cursor:pointer}
.driver-admin-item strong{font-size:16px;line-height:1.25}
.driver-admin-item span,.driver-admin-item small{opacity:.8}
.driver-admin-item.is-active{border-color:rgba(125,211,252,.65);background:rgba(125,211,252,.12)}
.driver-admin-empty{padding:18px;border-radius:16px;background:rgba(255,255,255,.04);opacity:.78}
.check-line{display:flex;align-items:center;gap:10px;margin-top:10px;font-weight:600}
.check-line input{width:18px;height:18px}
@media (max-width: 980px){
  .driver-admin-layout{grid-template-columns:1fr}
}


.ride-status-head{display:flex;align-items:center;justify-content:flex-start;padding:8px 12px;border-radius:16px 16px 0 0;font-weight:700;font-size:13px;letter-spacing:.01em}
.ride-status-head--ok{background:linear-gradient(180deg, rgb(6,95,70), rgb(5,150,105));color:#ecfdf5}
.ride-status-head--tight{background:rgba(251,191,36,.18);color:#fef3c7}
.ride-status-head--late{background:rgba(248,113,113,.18);color:#fee2e2}
.ride-status-head--done{background:rgba(148,163,184,.16);color:#e2e8f0}
.ride-status-head__label{display:flex;align-items:center;gap:8px}
.ride-compact-head--clean{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px 6px}
.ride-transport-line{padding:0 12px 8px}
.ride-compact-body--labels{padding:0 12px 10px}
.ride-address{display:grid;grid-template-columns:44px 1fr;gap:8px;align-items:start;margin:4px 0}
.ride-address__label{text-transform:lowercase;font-weight:700;opacity:.76}
.ride-address__text{min-width:0;line-height:1.35;word-break:break-word}
.patient-strong{display:block;min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.2}
.ride-plan-box{margin:0 12px 10px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.04)}
.ride-plan-box__title{font-weight:700;margin-bottom:8px}
.ride-plan-line{display:flex;justify-content:space-between;gap:10px;margin:4px 0}
.ride-plan-line span{opacity:.78}
.ride-plan-line strong{text-align:right}
.ride-plan-meta{margin-top:8px;opacity:.7;font-size:12px}
.driver-plan-box{margin-top:14px;padding:14px;border-radius:16px;background:rgba(255,255,255,.04)}
.driver-transport-line{margin:8px 0 10px;font-size:14px;opacity:.92}
.order-detail-card{padding:20px}
.order-detail-grid{display:grid;gap:12px}
.detail-row{display:grid;grid-template-columns:180px 1fr;gap:12px;align-items:start}
.detail-row span{opacity:.75}
.driver-state-badge--in_progress{background:rgba(34,197,94,.18);color:#dcfce7}
.driver-state-badge--planned{background:rgba(148,163,184,.16);color:#e2e8f0}
.ride-chip--done{opacity:.66}


.ride-chip--compact{padding:0;overflow:hidden}
.ride-status-head{padding:6px 10px;border-radius:12px 12px 0 0;font-size:12px;line-height:1.25}
.ride-compact-head--clean{padding:8px 10px 4px;gap:8px}
.ride-transport-line{padding:0 10px 4px;font-size:12px}
.ride-compact-body--labels{padding:0 10px 6px}
.ride-address{grid-template-columns:34px 1fr;margin:2px 0}
.ride-address__label{font-size:12px}
.ride-address__text{font-size:13px}
.ride-detail{margin:0 10px 8px}
.ride-detail > summary{cursor:pointer;list-style:none;font-weight:700;font-size:12px;opacity:.84}
.ride-detail > summary::-webkit-details-marker{display:none}
.ride-plan-box--compact{margin:8px 0 0;padding:8px 10px}
.ride-plan-line{font-size:12px;margin:3px 0}
.ride-plan-line strong{font-weight:700}
.card-actions--compact{padding:0 10px 10px}
.ride-chip--done{opacity:.58}
.driver-phone-actions--dual{display:grid;grid-template-columns:1fr 1fr;gap:10px}


.driver-phone-body--compact{padding:12px 12px 8px !important;gap:10px}
.driver-ride-panel--compact{padding:10px 12px;border-radius:16px}
.driver-ride-main--compact h1{font-size:1.05rem;line-height:1.15;margin:0}
.driver-hero-line{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center}
.driver-time-large{font-size:1.15rem}
.driver-facts--compact{gap:8px}
.driver-plan-box--compact{margin-top:10px;padding:10px 12px}
.driver-summary-line{margin:2px 0}
.driver-step-card--compact{padding:10px 12px}
.driver-early-hint{border:1px solid rgba(251,191,36,.35);background:rgba(251,191,36,.08)}
.driver-phone-actions--dual{display:grid;grid-template-columns:1fr;gap:10px}
.driver-phone-actions--dual .secondary-button{order:2}
.driver-phone-actions--dual .primary-button{order:1}


/* Fahreransicht: feste Vollbreiten-Buttons unten, mehr lesbare Höhe für Inhalte */
.driver-phone{display:flex;flex-direction:column;min-height:100vh}
.driver-phone-body{flex:1 1 auto;min-height:0;overflow:auto;padding-bottom:88px !important}
.driver-phone-body--compact{padding-bottom:96px !important}
.driver-phone-actions{
  position:sticky;
  bottom:0;
  left:0;
  right:0;
  margin-top:auto;
  padding:12px;
  background:linear-gradient(180deg, rgba(9,14,24,0) 0%, rgba(9,14,24,.86) 20%, rgba(9,14,24,.96) 100%);
  backdrop-filter:blur(8px);
  z-index:10;
}
.driver-phone-actions--dual{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px;
}
.driver-phone-actions .primary-button,
.driver-phone-actions .secondary-button,
.driver-phone-actions .primary-link-button,
.driver-phone-actions a.secondary-button,
.driver-phone-actions a.primary-button{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:52px;
  text-align:center;
  white-space:normal;
  line-height:1.25;
}
.driver-ride-main--compact h1{
  overflow-wrap:anywhere;
}
.driver-facts--compact strong,
.driver-plan-box strong{
  overflow-wrap:anywhere;
}


.driver-summary-line strong{
  text-align:right;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.driver-summary-line{
  align-items:flex-start;
}

.driver-late-banner{
  margin:0 0 10px;
  padding:8px 10px;
  border-radius:12px;
  background:rgba(239,68,68,.16);
  color:#fecaca;
  font-weight:800;
  letter-spacing:.02em;
}


/* ===== Dark desktop/app shell aligned with driver layout ===== */
:root{
  --dark-bg:#0b1420;
  --dark-bg-2:#101b2a;
  --dark-surface:#121f31;
  --dark-surface-2:#162538;
  --dark-surface-3:#1b2d44;
  --dark-line:rgba(148,163,184,.18);
  --dark-line-strong:rgba(148,163,184,.28);
  --dark-text:#e6eef8;
  --dark-muted:#97a9bf;
  --dark-primary:#7cc4ff;
  --dark-primary-soft:rgba(124,196,255,.14);
  --dark-ok:#4ade80;
  --dark-warn:#fbbf24;
  --dark-danger:#f87171;
  --dark-shadow:0 14px 34px rgba(0,0,0,.28);
}

body.app-shell,
body.subpage-shell,
body.login-body,
body.app-theme{
  background:
    radial-gradient(circle at top left, rgba(41,85,145,.22), transparent 34%),
    radial-gradient(circle at top right, rgba(20,184,166,.10), transparent 22%),
    linear-gradient(180deg, var(--dark-bg) 0%, var(--dark-bg-2) 100%);
  color:var(--dark-text);
  min-height:100vh;
}

body.app-shell,
body.subpage-shell,
body.app-theme,
body.login-body,
body.app-theme input,
body.app-theme select,
body.app-theme textarea,
body.subpage-shell input,
body.subpage-shell select,
body.subpage-shell textarea{
  font-family:Inter, Arial, sans-serif;
}

body.app-shell .topbar,
body.subpage-shell .topbar,
body.app-theme .topbar{
  position:sticky;
  top:0;
  z-index:25;
  backdrop-filter:blur(14px);
  background:rgba(11,20,32,.82);
  border-bottom:1px solid var(--dark-line);
  padding:16px 20px 12px;
}
body.app-shell .topbar h1,
body.subpage-shell .topbar h1,
body.app-theme .topbar h1{
  font-size:1.45rem;
  line-height:1.15;
  letter-spacing:.01em;
  font-weight:750;
  color:#f4f8fd;
}
body.app-shell .topbar p,
body.subpage-shell .topbar p,
body.app-theme .topbar p,
body.app-shell .muted,
body.subpage-shell .muted,
body.app-theme .muted,
body.app-shell .order-meta,
body.subpage-shell .order-meta,
body.app-theme .order-meta,
body.app-shell .debug-text,
body.subpage-shell .debug-text,
body.app-theme .debug-text,
body.app-shell .debug-sub,
body.subpage-shell .debug-sub,
body.app-theme .debug-sub,
body.app-shell .small-feedback,
body.subpage-shell .small-feedback,
body.app-theme .small-feedback,
body.app-shell .hint,
body.subpage-shell .hint,
body.app-theme .hint{
  color:var(--dark-muted);
}

body.app-shell .card,
body.subpage-shell .card,
body.app-theme .card,
body.app-shell .vehicle-card,
body.app-shell .order-card,
body.app-shell .ride-chip,
body.app-shell .priority-panel,
body.app-shell .day-card,
body.app-shell .day-ride-card,
body.app-shell .module-card,
body.subpage-shell .list-item,
body.subpage-shell .match-item,
body.subpage-shell .facility-group,
body.app-theme .list-item,
body.app-theme .match-item,
body.app-theme .facility-group,
body.app-theme .admin-setting-card,
body.app-theme .module-card,
body.app-theme .subsection,
body.app-theme .display-block,
body.app-theme .review-box,
body.app-theme .calc-preview,
body.login-body .login-card{
  background:linear-gradient(180deg, rgba(18,31,49,.95), rgba(15,25,40,.96));
  color:var(--dark-text);
  border:1px solid var(--dark-line);
  box-shadow:var(--dark-shadow);
}

body.app-shell .fleet-panel,
body.app-shell .open-panel,
body.app-shell .debug-bar,
body.app-shell .wizard-card,
body.app-shell .side-facilities,
body.subpage-shell .split-layout>.card,
body.app-theme .split-layout>.card,
body.app-theme .wizard-card,
body.app-theme .side-facilities,
body.app-theme .debug-bar{
  background:linear-gradient(180deg, rgba(18,31,49,.92), rgba(14,24,37,.96));
}

body.app-shell .section-head h2,
body.subpage-shell .section-head h2,
body.app-theme .section-head h2,
body.app-shell h2,
body.subpage-shell h2,
body.app-theme h2,
body.app-shell h3,
body.subpage-shell h3,
body.app-theme h3,
body.app-shell strong,
body.subpage-shell strong,
body.app-theme strong,
body.login-body h1{
  color:#f5f9ff;
}

body.app-shell .user-badge,
body.subpage-shell .user-badge,
body.app-theme .user-badge,
body.app-shell .summary-block,
body.app-shell .empty-state,
body.app-theme .summary-block,
body.app-theme .empty-state,
body.app-shell .vehicle-head-wrap,
body.app-shell .vehicle-dock,
body.app-shell .board-priority-strip,
body.app-shell .priority-item,
body.app-shell .ride-detail,
body.app-shell .drop-slot,
body.app-shell .drop-bucket,
body.app-shell .vehicle-head-drop,
body.app-shell .vehicle-dock-target,
body.app-theme .drop-slot,
body.app-theme .drop-bucket,
body.app-theme .step,
body.app-theme .time-chip,
body.app-theme .display-block,
body.app-theme .address-row,
body.app-theme .facility-group-list,
body.subpage-shell .facility-group-list,
body.login-body .login-card{
  background:rgba(255,255,255,.03);
  border-color:var(--dark-line);
  color:var(--dark-text);
}

body.app-shell .vehicle-head-wrap{
  background:linear-gradient(180deg, rgba(18,31,49,.98), rgba(18,31,49,.92));
}
body.app-shell .vehicle-dock{
  background:linear-gradient(180deg, rgba(18,31,49,0), rgba(18,31,49,.92) 16%, rgba(18,31,49,.98) 100%);
}

body.app-shell .summary-block span,
body.app-theme .summary-block span,
body.app-shell .ride-detail ul,
body.app-shell .ride-detail summary,
body.app-shell .priority-item span,
body.app-shell .summary-note,
body.app-shell .vehicle-dock__title,
body.app-shell .ride-address__label,
body.app-shell .display-label,
body.app-theme .display-label,
body.app-theme .module-card span,
body.app-theme .admin-setting-card p,
body.app-theme .step,
body.app-theme label,
body.subpage-shell label,
body.login-body label,
body.login-body p{
  color:var(--dark-muted);
}

body.app-shell .module-card strong,
body.app-theme .module-card strong,
body.app-shell .priority-panel__head strong,
body.app-shell .priority-item strong,
body.app-shell .patient-strong,
body.app-shell .address-strong,
body.app-shell .ride-address__text,
body.app-shell .vehicle-name,
body.app-shell .display-value,
body.app-theme .display-value,
body.subpage-shell .list-item,
body.app-theme .list-item{
  color:var(--dark-text);
}

body.app-shell input,
body.app-shell select,
body.app-shell textarea,
body.subpage-shell input,
body.subpage-shell select,
body.subpage-shell textarea,
body.app-theme input,
body.app-theme select,
body.app-theme textarea,
body.login-body input,
body.login-body select,
body.login-body textarea{
  background:rgba(255,255,255,.05);
  border:1px solid var(--dark-line);
  color:var(--dark-text);
  border-radius:12px;
  padding:10px 12px;
  min-height:42px;
}
body.app-shell textarea,
body.subpage-shell textarea,
body.app-theme textarea,
body.login-body textarea{min-height:76px}
body.app-shell input::placeholder,
body.subpage-shell input::placeholder,
body.app-theme input::placeholder,
body.login-body input::placeholder,
body.app-shell textarea::placeholder,
body.subpage-shell textarea::placeholder,
body.app-theme textarea::placeholder,
body.login-body textarea::placeholder{color:#7f93aa}

body.app-shell .compact-field,
body.subpage-shell .compact-field,
body.app-theme .compact-field{
  color:var(--dark-muted);
}
body.app-shell .compact-field input[type=date],
body.app-shell .compact-field input[type=number],
body.app-shell .compact-field select,
body.subpage-shell .compact-field input,
body.subpage-shell .compact-field select,
body.app-theme .compact-field input,
body.app-theme .compact-field select{
  background:rgba(255,255,255,.06);
}

body.app-shell .ghost,
body.subpage-shell .ghost,
body.app-theme .ghost,
body.app-shell .mini-btn--ghost,
body.app-theme .mini-btn--ghost,
body.app-shell .nav-action,
body.app-theme .nav-action,
body.app-theme .ghost-button{
  background:rgba(255,255,255,.05);
  border:1px solid var(--dark-line);
  color:var(--dark-text);
}
body.app-shell .primary,
body.subpage-shell .primary,
body.app-theme .primary,
body.login-body .primary,
body.app-shell .primary-button,
body.app-theme .primary-button{
  background:linear-gradient(135deg, #2a84ff, #5bc0ff);
  color:#081521;
  box-shadow:0 12px 26px rgba(42,132,255,.25);
}
body.app-shell .primary:hover,
body.subpage-shell .primary:hover,
body.app-theme .primary:hover,
body.login-body .primary:hover{filter:brightness(1.05)}

body.app-shell .bottom-nav,
body.subpage-shell .bottom-nav,
body.app-theme .bottom-nav{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:80;
  background:rgba(8,16,26,.94);
  border-top:1px solid var(--dark-line);
  backdrop-filter:blur(14px);
  justify-content:flex-start;
  padding:10px 12px calc(10px + env(safe-area-inset-bottom));
}
body.app-shell .bottom-nav a,
body.app-shell .bottom-nav button,
body.subpage-shell .bottom-nav a,
body.subpage-shell .bottom-nav button,
body.app-theme .bottom-nav a,
body.app-theme .bottom-nav button{
  color:#c5d3e3;
  background:transparent;
  border-radius:12px;
  min-height:40px;
  padding:9px 12px;
  font-size:.92rem;
}
body.app-shell .bottom-nav a.active,
body.subpage-shell .bottom-nav a.active,
body.app-theme .bottom-nav a.active{
  background:rgba(124,196,255,.14);
  color:#eef7ff;
  border:1px solid rgba(124,196,255,.22);
}

body.app-shell .dashboard-grid-wide{
  grid-template-columns:minmax(0,1fr) 340px;
  gap:14px;
  padding:12px 16px 14px;
  min-height:auto;
}
body.app-shell .vehicles-grid{
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:12px;
}
body.app-shell .vehicle-card{padding:10px}
body.app-shell .ride-chip{padding:8px 9px;background:rgba(255,255,255,.03)}
body.app-shell .open-panel{top:88px;max-height:calc(100vh - 148px)}
body.app-shell .debug-bar{margin:0 16px 16px}
body.app-shell .ride-address__text{font-size:.81rem;line-height:1.25}
body.app-shell .patient-strong{font-size:.92rem}
body.app-shell .time-pill,
body.app-shell .muted-pill,
body.app-theme .muted-pill{
  background:rgba(124,196,255,.14);
  color:#dff1ff;
  border:1px solid rgba(124,196,255,.18);
}

body.app-shell .status-badge,
body.app-theme .status-badge{
  background:rgba(255,255,255,.06);
  color:#dbe8f4;
}
body.app-shell .summary-pill--ok,
body.app-shell .ride-chip--ok,
body.app-shell .summary-block--ok,
body.app-shell .ride-detail--ok,
body.app-shell .ride-status-head--ok,
body.app-theme .inline-status.ok{
  border-color:rgba(74,222,128,.32)!important;
}
body.app-shell .summary-pill--tight,
body.app-shell .ride-chip--tight,
body.app-shell .summary-block--tight,
body.app-shell .ride-detail--tight,
body.app-shell .ride-status-head--tight{
  border-color:rgba(251,191,36,.34)!important;
}
body.app-shell .summary-pill--late,
body.app-shell .ride-chip--late,
body.app-shell .summary-block--late,
body.app-shell .ride-detail--late,
body.app-shell .ride-status-head--late,
body.app-theme .inline-status.error{
  border-color:rgba(248,113,113,.34)!important;
}
body.app-shell .ride-chip--ok{box-shadow:0 0 0 1px rgba(74,222,128,.18), 0 8px 18px rgba(0,0,0,.18)}
body.app-shell .ride-chip--tight{box-shadow:0 0 0 1px rgba(251,191,36,.2), 0 8px 18px rgba(0,0,0,.18)}
body.app-shell .ride-chip--late{box-shadow:0 0 0 1px rgba(248,113,113,.22), 0 8px 18px rgba(0,0,0,.2)}
body.app-shell .vehicle-card--ok{border-top:1px solid rgba(74,222,128,.18)}
body.app-shell .vehicle-card--tight{border-top:1px solid rgba(251,191,36,.18)}
body.app-shell .vehicle-card--late{border-top:1px solid rgba(248,113,113,.18)}

body.app-shell .drop-slot,
body.app-shell .drop-bucket,
body.app-shell .vehicle-head-drop,
body.app-shell .vehicle-dock-target{
  color:var(--dark-muted);
  border-style:dashed;
}
body.app-shell .drop-slot.is-over,
body.app-shell .drop-bucket.is-over,
body.app-shell .vehicle-head-drop.is-over,
body.app-shell .vehicle-dock-target.is-over,
body.app-theme .time-chip:hover{
  border-color:rgba(124,196,255,.55);
  background:rgba(124,196,255,.10);
}

body.app-theme .wizard-layout,
body.app-theme .split-layout,
body.app-theme .cards-stack,
body.app-theme .overview-main{
  padding:12px 16px 96px;
}
body.app-theme .split-layout{grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr)}
body.app-theme .grid.two,
body.app-theme .grid.three{gap:12px}
body.app-theme .module-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
body.app-theme .module-card,
body.app-theme .admin-setting-card,
body.app-theme .day-card,
body.app-theme .day-ride-card{
  border-radius:18px;
}
body.app-theme .day-card.is-active{border-color:rgba(124,196,255,.55);box-shadow:0 0 0 2px rgba(124,196,255,.16)}
body.app-theme .display-block,
body.app-theme .subsection,
body.app-theme .review-box,
body.app-theme .address-row{
  background:rgba(255,255,255,.03);
}
body.app-theme .step.active{
  background:rgba(124,196,255,.15);
  color:#eef7ff;
  border-color:rgba(124,196,255,.22);
}
body.app-theme .time-chip,
body.app-theme .match-item,
body.app-theme .list-item,
body.subpage-shell .list-item,
body.subpage-shell .match-item{
  background:rgba(255,255,255,.03);
}
body.app-theme .match-item:hover,
body.app-theme .list-item:hover,
body.subpage-shell .list-item:hover,
body.subpage-shell .match-item:hover,
body.app-theme .module-card:hover{
  border-color:rgba(124,196,255,.34);
  transform:translateY(-1px);
}
body.app-theme .import-form input[type=file]{
  background:rgba(255,255,255,.03);
  border-color:var(--dark-line-strong);
  color:var(--dark-muted);
}

body.login-body{display:grid;place-items:center;padding:20px}
body.login-body .login-card{width:min(420px,92vw);padding:24px;border-radius:22px}
body.login-body .login-card p{color:var(--dark-muted)}

@media (max-width: 980px){
  body.app-shell .dashboard-grid-wide,
  body.app-theme .dashboard-grid-wide,
  body.app-theme .split-layout,
  body.app-theme .wizard-layout{grid-template-columns:1fr}
  body.app-shell .open-panel{top:0;max-height:none}
}
@media (max-width: 720px){
  body.app-shell .topbar,
  body.subpage-shell .topbar,
  body.app-theme .topbar{padding:14px 14px 10px}
  body.app-shell .dashboard-grid-wide,
  body.app-theme .cards-stack,
  body.app-theme .split-layout,
  body.app-theme .wizard-layout,
  body.app-theme .overview-main{padding:10px 12px 92px}
  body.app-shell .vehicles-grid{grid-template-columns:1fr}
}


/* dashboard refinement pass */
input[type="checkbox"],
input[type="radio"]{
  width:16px !important;
  height:16px !important;
  min-height:16px !important;
  padding:0 !important;
  margin:0;
  accent-color:#69b7ff;
  border-radius:4px;
}
label:has(> input[type="checkbox"]),
label:has(> input[type="radio"]){
  flex-direction:row;
  align-items:center;
}

body.app-shell .vehicle-chooser{
  margin:0 0 12px;
  padding:10px 12px;
  border:1px solid rgba(126,163,203,.16);
  border-radius:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.02));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02);
}
body.app-shell .vehicle-chooser__head{margin-bottom:10px}
body.app-shell .vehicle-chooser__hint{font-size:.76rem;color:var(--dark-muted);max-width:760px;line-height:1.35}
body.app-shell .vehicle-chooser__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,max-content));gap:8px 10px;margin-bottom:10px}
body.app-shell .vehicle-toggle{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(126,163,203,.14);
  color:var(--dark-text);
  font-size:.82rem;
  font-weight:600;
}
body.app-shell .vehicle-toggle span{white-space:nowrap}
body.app-shell .vehicle-chooser__actions{gap:8px}
body.app-shell .vehicle-chooser__actions .ghost{min-height:36px;padding:7px 12px;font-size:.8rem}

body.app-shell .vehicles-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
body.app-shell .vehicle-card{
  padding:8px;
  border-radius:16px;
  background:
    linear-gradient(135deg, #506172 0%, #445363 42%, #3a4654 100%);
  border:1px solid rgba(218,230,244,.16);
  box-shadow:
    0 16px 30px rgba(7,12,18,.18),
    inset 0 1px 0 rgba(255,255,255,.08);
}
body.app-shell .vehicle-head-wrap{
  top:8px;
  z-index:14;
  margin:-8px -8px 8px;
  padding:8px 8px 10px;
  border-radius:16px 16px 14px 14px;
  background:
    linear-gradient(135deg, rgba(31,48,72,.98) 0%, rgba(20,34,54,.985) 46%, rgba(15,27,42,.99) 100%),
    radial-gradient(circle at top left, rgba(108,149,208,.18), transparent 42%);
  border:1px solid rgba(143,176,218,.18);
  border-bottom-color:rgba(126,163,203,.22);
  box-shadow:
    0 12px 24px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.06);
}
body.app-shell .vehicle-head--sticky-core,
body.app-shell .vehicle-roster--sticky-core,
body.app-shell .vehicle-card-toolbar--sticky{position:relative;z-index:2}
body.app-shell .vehicle-title-stack{gap:3px}
body.app-shell .vehicle-head-wrap{top:132px;}
body.app-shell .vehicle-head-core--compact{gap:0}
body.app-shell .vehicle-head-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.95fr);gap:12px;align-items:start}
body.app-shell .vehicle-head-left{min-width:0;display:grid;gap:2px}
body.app-shell .vehicle-head-right{min-width:0;display:grid;gap:4px;justify-items:start;text-align:left}
body.app-shell .vehicle-shift-line{font-size:.74rem;line-height:1.15;color:#8ea2b8;font-weight:700}
body.app-shell .vehicle-plate-line{margin-top:2px}
body.app-shell .vehicle-crew-summary{margin-top:0}
body.app-shell .vehicle-crew-line{display:grid;gap:0;min-width:0;line-height:1.0}
body.app-shell .vehicle-crew-label{display:block;font-size:.68rem;line-height:1.0;text-transform:none;letter-spacing:.01em;color:#8ea2b8;font-weight:700;margin:0;padding:0}
body.app-shell .vehicle-crew-value{display:block;font-size:.78rem;line-height:1.0;color:#e7f0fb;font-weight:800;white-space:normal;overflow:visible;text-overflow:clip;max-width:none;word-break:normal;overflow-wrap:normal}
body.app-shell .vehicle-name-line{display:flex;align-items:baseline;gap:8px;flex-wrap:nowrap}
body.app-shell .vehicle-name{font-size:.98rem;font-weight:700;letter-spacing:.01em}
body.app-shell .vehicle-group-inline{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:0 8px;
  border-radius:999px;
  background:rgba(103,167,255,.12);
  color:#dcecff;
  font-size:.72rem;
  font-weight:700;
}
body.app-shell .vehicle-plate-line{font-size:.72rem;color:#91a4b7}
body.app-shell .vehicle-plate-line strong{font-size:.8rem;color:#dce6f3}
body.app-shell .vehicle-roster{gap:8px;margin-top:8px}
body.app-shell .roster-field{gap:5px;margin:0}
body.app-shell .roster-field span{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#7f93aa}
body.app-shell .roster-field select{min-height:36px;padding:7px 10px;border-radius:12px;font-size:.82rem}
body.app-shell .vehicle-support-meta{display:grid;gap:5px;margin-top:8px;color:#6f849a}
body.app-shell .vehicle-meta-line,
body.app-shell .vehicle-tools__hint,
body.app-shell .vehicle-roster-state,
body.app-shell .vehicle-tail-meta{font-size:.72rem;line-height:1.25;color:#6f849a}
body.app-shell .vehicle-head-drop{min-height:32px;padding:6px 8px;border-radius:10px;font-size:.75rem;background:rgba(255,255,255,.03)}
body.app-shell .vehicle-card-toolbar--sticky{
  margin-top:8px;
  padding-top:8px;
  border-top:1px solid rgba(126,163,203,.14);
}
body.app-shell .vehicle-card-toolbar--sticky .mini-lock-all{
  width:100%;
  min-height:36px;
  justify-content:center;
  font-size:.8rem;
}

body.app-shell .ride-list{gap:8px}
body.app-shell .ride-chip{
  position:relative;
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.028));
  border:1px solid rgba(126,163,203,.16);
}
body.app-shell .ride-chip::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  border-radius:14px 0 0 14px;
  background:rgba(124,196,255,.4);
}
body.app-shell .ride-chip--ok::before{background:#3ddc97}
body.app-shell .ride-chip--tight::before{background:#fbbf24}
body.app-shell .ride-chip--late::before{background:#f87171}
body.app-shell .ride-chip--done::before{background:#7b8794}
body.app-shell .ride-chip--active{box-shadow:0 0 0 1px rgba(124,196,255,.22), 0 10px 22px rgba(0,0,0,.22)}
body.app-shell .ride-chip--state-confirmed{border-color:rgba(96,165,250,.28)!important}
body.app-shell .ride-chip--state-en_route{border-color:rgba(45,212,191,.28)!important}
body.app-shell .ride-chip--state-in_progress{border-color:rgba(52,211,153,.30)!important}
body.app-shell .ride-chip--state-confirmed .driver-state-badge{background:rgba(96,165,250,.16);color:#dbeafe}
body.app-shell .ride-chip--state-en_route .driver-state-badge{background:rgba(45,212,191,.16);color:#ccfbf1}
body.app-shell .ride-chip--state-in_progress .driver-state-badge{background:rgba(52,211,153,.16);color:#dcfce7}
body.app-shell .time-pill{min-width:50px;padding:3px 7px;font-size:.74rem}
body.app-shell .patient-strong{font-size:.87rem;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
body.app-shell .transport-chip{max-width:58%;overflow:hidden;text-overflow:ellipsis}
body.app-shell .driver-state-badge{margin-left:0;font-size:.67rem;padding:.18rem .45rem;max-width:42%;overflow:hidden;text-overflow:ellipsis}
body.app-shell .ride-compact-body--labels{padding:0 10px 8px;gap:4px}
body.app-shell .ride-detail{margin:0 10px 8px}
body.app-shell .ride-detail > summary{font-size:.72rem;color:#a6bad0}
body.app-shell .card-actions--compact{padding:0 10px 10px;gap:5px}
body.app-shell .card-actions--compact .mini-btn{min-height:30px;padding:4px 7px;font-size:.72rem}

@media (max-width:1100px){
  body.app-shell .vehicle-chooser__list{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}
}


/* refinement v3 */
:root{--kba-topbar-offset:56px;}
body.app-shell .topbar,
body.subpage-shell .topbar,
body.app-theme .topbar{
  padding:10px 14px 8px;
}
body.app-shell .topbar h1,
body.subpage-shell .topbar h1,
body.app-theme .topbar h1{font-size:1.12rem;line-height:1.05}
body.app-shell .topbar p,
body.subpage-shell .topbar p,
body.app-theme .topbar p{font-size:.76rem}
body.app-shell .topbar .ghost,
body.app-shell .topbar .compact-field,
body.app-shell .topbar input,
body.app-shell .topbar select,
body.app-shell .topbar button{min-height:34px;font-size:.78rem}
body.app-shell .topbar-actions{gap:8px}

body.app-shell select,
body.subpage-shell select,
body.app-theme select,
body.login-body select,
body.app-shell option,
body.subpage-shell option,
body.app-theme option,
body.login-body option{
  background:#132131;
  color:#ecf4ff;
}
body.app-shell select:focus,
body.subpage-shell select:focus,
body.app-theme select:focus,
body.login-body select:focus{
  outline:1px solid rgba(104,183,255,.55);
  border-color:rgba(104,183,255,.4);
}


body.app-shell .vehicle-head-wrap::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:4px;
  border-radius:16px 16px 0 0;
  background:rgba(126,163,203,.22);
  z-index:3;
  pointer-events:none;
}
body.app-shell .vehicle-card--ok .vehicle-head-wrap::before{background:rgba(74,222,128,.95)}
body.app-shell .vehicle-card--tight .vehicle-head-wrap::before{background:rgba(251,191,36,.95)}
body.app-shell .vehicle-card--late .vehicle-head-wrap::before{background:rgba(248,113,113,.95)}

body.app-shell .vehicle-head-wrap{
  position:sticky;
  top:calc(var(--kba-topbar-offset) + 24px);
  z-index:16;
  padding:0;
  overflow:hidden;
}
body.app-shell .vehicle-head-shell{
  padding:8px 8px 10px;
  background:linear-gradient(135deg, rgba(28,45,69,.18), rgba(255,255,255,.015));
}
body.app-shell .vehicle-head-toggle{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  width:100%;
  border:none;
  background:transparent;
  color:inherit;
  text-align:left;
  padding:8px 8px 7px;
  cursor:pointer;
}
body.app-shell .vehicle-head-toggle::after{
  content:"▾";
  font-size:.9rem;
  color:#9ab0c8;
  transition:transform .18s ease;
}
body.app-shell .vehicle-head-wrap.is-collapsed .vehicle-head-toggle::after{transform:rotate(-90deg)}
body.app-shell .vehicle-head-toggle:hover{background:rgba(255,255,255,.03)}
body.app-shell .vehicle-head-core{min-width:0;display:grid;gap:2px}
body.app-shell .vehicle-head-shell .vehicle-name{font-size:1.5em; line-height:.95; font-weight:800}
body.app-shell .vehicle-head-shell .vehicle-plate-line strong{font-size:.82rem;white-space:pre-line;line-height:1.15}
body.app-shell .vehicle-head-wrap .vehicle-roster,
body.app-shell .vehicle-head-wrap .vehicle-support-meta,
body.app-shell .vehicle-head-wrap .vehicle-card-toolbar--sticky{
  display:grid;
}
body.app-shell .vehicle-head-wrap.is-collapsed .vehicle-roster,
body.app-shell .vehicle-head-wrap.is-collapsed .vehicle-support-meta{
  display:none;
}
body.app-shell .vehicle-head-wrap.is-collapsed .vehicle-head-shell{padding-bottom:4px}

body.app-shell .ride-chip{background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.032));}
body.app-shell .ride-chip--active{
  background:linear-gradient(180deg, rgba(26,47,74,.98), rgba(15,30,47,.96));
  box-shadow:0 0 0 1px rgba(124,196,255,.34), 0 16px 32px rgba(0,0,0,.34);
}
body.app-shell .ride-chip--state-confirmed{
  box-shadow:0 0 0 1px rgba(96,165,250,.42), 0 14px 28px rgba(37,99,235,.16);
  background:linear-gradient(180deg, rgba(22,40,68,.98), rgba(15,29,48,.96));
}
body.app-shell .ride-chip--state-en_route{
  box-shadow:0 0 0 1px rgba(45,212,191,.42), 0 14px 28px rgba(13,148,136,.16);
  background:linear-gradient(180deg, rgba(14,46,48,.98), rgba(12,33,35,.96));
}
body.app-shell .ride-chip--state-in_progress{
  box-shadow:0 0 0 1px rgba(52,211,153,.46), 0 14px 28px rgba(22,163,74,.18);
  background:linear-gradient(180deg, rgba(14,46,32,.98), rgba(11,31,24,.96));
}
body.app-shell .ride-chip--late:not(.ride-chip--done){border-color:rgba(248,113,113,.34)}
body.app-shell .ride-chip--tight:not(.ride-chip--done){border-color:rgba(251,191,36,.32)}
body.app-shell .ride-chip--active::before{width:4px}
body.app-shell .ride-status-head{font-weight:650}
body.app-shell .ride-chip--collapsed{padding:0}
body.app-shell .ride-chip__summary{
  list-style:none;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  padding:9px 10px;
  cursor:pointer;
}
body.app-shell .ride-chip__summary::-webkit-details-marker{display:none}
body.app-shell .ride-chip__summary::after{
  content:"▾";
  color:#9ab0c8;
  font-size:.84rem;
  transition:transform .18s ease;
}
body.app-shell .ride-chip--collapsed:not([open]) .ride-chip__summary::after{transform:rotate(-90deg)}
body.app-shell .ride-chip__summary .time-pill{min-width:54px}
body.app-shell .ride-chip__summary-name{
  min-width:0;
  font-size:.84rem;
  font-weight:650;
  color:#eef4fc;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.app-shell .ride-chip__body{padding-top:0}
body.app-shell .ride-chip--collapsed:not([open]) .ride-chip__body{display:none}
body.app-shell .ride-chip__summary-state{justify-self:end;max-width:100%}
body.app-shell .ride-chip .card-actions--compact{flex-wrap:wrap}
body.app-shell .ride-chip .card-actions--compact .mini-btn{flex:1 1 auto}

@media (max-width: 980px){
  :root{--kba-topbar-offset:52px;}
  body.app-shell .topbar,
  body.subpage-shell .topbar,
  body.app-theme .topbar{padding:8px 10px 7px}
}


.small-feedback{margin-top:10px;font-size:12px;line-height:1.45;color:var(--text-dim,#9aa4b2);min-height:18px}
.small-feedback.info{color:#93c5fd}
.small-feedback.success{color:#86efac}
.small-feedback.error{color:#fca5a5}
.import-form button[disabled]{opacity:.72;cursor:progress}
input[type="file"]::file-selector-button{margin-right:10px;padding:8px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:inherit}
select, select option{background:#121722;color:#e6edf7}

/* refinement v6 - stronger ride cards and clearer form controls */
body.app-shell .ride-list{gap:10px}
body.app-shell .ride-chip{
  background:linear-gradient(180deg, rgba(71,92,122,.98), rgba(42,58,82,.98));
  border:1px solid rgba(180,208,239,.26);
  box-shadow:0 14px 30px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.08);
}
body.app-shell .ride-chip::before{width:5px;opacity:.95}
body.app-shell .ride-chip:hover{
  border-color:rgba(164,201,244,.34);
  box-shadow:0 16px 34px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.06);
}
body.app-shell .ride-chip .ride-status-head{
  background:rgba(255,255,255,.05);
  border-bottom:1px solid rgba(255,255,255,.05);
}
body.app-shell .ride-chip .time-pill{
  background:rgba(226,240,255,.18);
  border:1px solid rgba(198,221,255,.22);
  color:#f4f8ff;
}
body.app-shell .ride-chip .patient-strong,
body.app-shell .ride-chip__summary-name,
body.app-shell .ride-chip .ride-address__text{
  color:#f5f9ff;
}
body.app-shell .ride-chip .ride-address__label{color:#a8bdd3}
body.app-shell .ride-chip .transport-chip{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.08);
  color:#eaf2fb;
}
body.app-shell .ride-chip .driver-state-badge{
  border:1px solid rgba(255,255,255,.1);
  font-weight:700;
}
body.app-shell .ride-chip--active,
body.app-shell .ride-chip--state-confirmed,
body.app-shell .ride-chip--state-en_route,
body.app-shell .ride-chip--state-in_progress,
body.app-shell .ride-chip--late,
body.app-shell .ride-chip--tight{
  transform:translateY(-1px);
}
body.app-shell .ride-chip--active{
  background:linear-gradient(180deg, rgba(89,114,148,.99), rgba(53,72,102,.99));
  border-color:rgba(151,196,250,.4)!important;
  box-shadow:0 0 0 1px rgba(151,196,250,.28), 0 20px 40px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.08);
}
body.app-shell .ride-chip--state-confirmed{
  background:linear-gradient(180deg, rgba(72,107,165,.99), rgba(43,67,109,.99));
  border-color:rgba(96,165,250,.5)!important;
  box-shadow:0 0 0 1px rgba(96,165,250,.28), 0 18px 36px rgba(30,64,175,.26), inset 0 1px 0 rgba(255,255,255,.08);
}
body.app-shell .ride-chip--state-en_route{
  background:linear-gradient(180deg, rgba(43,122,129,.99), rgba(23,82,87,.99));
  border-color:rgba(45,212,191,.52)!important;
  box-shadow:0 0 0 1px rgba(45,212,191,.3), 0 18px 36px rgba(13,148,136,.26), inset 0 1px 0 rgba(255,255,255,.08);
}
body.app-shell .ride-chip--state-in_progress{
  background:linear-gradient(180deg, rgba(42,129,90,.99), rgba(22,82,58,.99));
  border-color:rgba(52,211,153,.54)!important;
  box-shadow:0 0 0 1px rgba(52,211,153,.3), 0 18px 36px rgba(21,128,61,.28), inset 0 1px 0 rgba(255,255,255,.08);
}
body.app-shell .ride-chip--tight:not(.ride-chip--done){
  background:linear-gradient(180deg, rgba(95,74,26,.99), rgba(58,44,16,.99));
  border-color:rgba(251,191,36,.54)!important;
  box-shadow:0 0 0 1px rgba(251,191,36,.28), 0 18px 36px rgba(180,83,9,.24), inset 0 1px 0 rgba(255,255,255,.08);
}
body.app-shell .ride-chip--late:not(.ride-chip--done){
  background:linear-gradient(180deg, rgba(101,43,47,.99), rgba(61,24,29,.99));
  border-color:rgba(248,113,113,.58)!important;
  box-shadow:0 0 0 1px rgba(248,113,113,.28), 0 18px 36px rgba(153,27,27,.24), inset 0 1px 0 rgba(255,255,255,.08);
}
body.app-shell .ride-chip--done{
  background:linear-gradient(180deg, rgba(45,55,67,.92), rgba(29,36,45,.92));
  border-color:rgba(148,163,184,.22)!important;
  opacity:.9;
}
body.app-shell .ride-chip .card-actions--compact .mini-btn,
body.app-shell .ride-chip .card-actions--compact .ghost,
body.app-shell .ride-chip .card-actions--compact button{
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.1);
  color:#eef5ff;
}
body.app-shell .ride-chip .card-actions--compact .mini-btn:hover,
body.app-shell .ride-chip .card-actions--compact .ghost:hover,
body.app-shell .ride-chip .card-actions--compact button:hover{
  background:rgba(255,255,255,.14);
}

body.subpage-shell input,
body.subpage-shell select,
body.subpage-shell textarea,
body.app-theme input,
body.app-theme select,
body.app-theme textarea{
  background:rgba(214,231,255,.12);
  border:1px solid rgba(168,196,232,.32);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
body.subpage-shell input:hover,
body.subpage-shell select:hover,
body.subpage-shell textarea:hover,
body.app-theme input:hover,
body.app-theme select:hover,
body.app-theme textarea:hover{
  background:rgba(214,231,255,.16);
  border-color:rgba(177,211,252,.42);
}
body.subpage-shell input:focus,
body.subpage-shell select:focus,
body.subpage-shell textarea:focus,
body.app-theme input:focus,
body.app-theme select:focus,
body.app-theme textarea:focus{
  outline:none;
  background:rgba(214,231,255,.18);
  border-color:rgba(124,196,255,.6);
  box-shadow:0 0 0 3px rgba(124,196,255,.14), inset 0 1px 0 rgba(255,255,255,.06);
}
body.subpage-shell .wizard-card,
body.subpage-shell .split-layout>.card,
body.app-theme .wizard-card,
body.app-theme .split-layout>.card,
body.subpage-shell .subsection,
body.app-theme .subsection,
body.subpage-shell .display-block,
body.app-theme .display-block{
  background:linear-gradient(180deg, rgba(23,37,56,.96), rgba(16,28,43,.98));
}
body.subpage-shell label,
body.app-theme label{
  color:#d2deeb;
}

.weekdays-row{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 14px}.weekdays-row label{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.03)}.helper-text{opacity:.78;font-size:.92rem;margin:8px 0 0}.stack-list{display:grid;gap:14px}.module-card--wide{display:grid;gap:10px}.module-card-actions{display:flex;gap:10px;flex-wrap:wrap}.compact-form label{margin:0}.driver-inline-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}


body.app-shell .transport-chip--kind{
  background:rgba(124,196,255,.14);
  border-color:rgba(124,196,255,.26);
  color:#eef7ff;
}


body.app-theme .side-facilities[hidden]{display:none !important;}


/* v15 search overlay + clearer ride kind labels */
.search-overlay-field{
  position:relative;
  margin-bottom:14px;
}
.search-overlay-field > label{
  margin-bottom:0;
}
.search-overlay-field .overlay-match-list{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 6px);
  z-index:80;
  max-height:260px;
  overflow:auto;
  padding:8px;
  border-radius:16px;
  border:1px solid rgba(168,196,232,.34);
  background:linear-gradient(180deg, rgba(23,37,56,.98), rgba(16,28,43,.99));
  box-shadow:0 22px 40px rgba(0,0,0,.34);
}
.search-overlay-field .overlay-match-list:empty{display:none}
.search-overlay-field .overlay-match-list .match-item{
  margin:0;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(168,196,232,.22);
}
.search-overlay-field .overlay-match-list .match-item + .match-item{margin-top:8px}
.search-overlay-field .overlay-match-list .match-item:hover{
  background:rgba(124,196,255,.16);
  border-color:rgba(124,196,255,.34);
}
body.app-theme .ride-kind-line,
body.app-shell .ride-kind-line{
  display:flex;
  align-items:center;
  gap:6px;
  padding:2px 10px 6px;
}
body.app-theme .ride-kind-line .transport-chip--kind,
body.app-shell .ride-kind-line .transport-chip--kind{
  max-width:none;
  font-size:.72rem;
  padding:4px 8px;
  background:rgba(124,196,255,.18);
  border:1px solid rgba(124,196,255,.34);
  color:#f4f9ff;
}


body.app-shell .transport-chip--mode,
body.app-theme .transport-chip--mode{
  background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.08));
  border:1px solid rgba(255,255,255,.18);
  color:#f3f8ff;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.02em;
  padding:5px 10px;
  box-shadow:0 10px 18px rgba(0,0,0,.18);
}
body.app-shell .transport-chip--mode-sitzend,
body.app-theme .transport-chip--mode-sitzend{ background:linear-gradient(180deg, rgba(83,164,255,.28), rgba(83,164,255,.16)); border-color:rgba(83,164,255,.34); }
body.app-shell .transport-chip--mode-rollstuhl,
body.app-theme .transport-chip--mode-rollstuhl{ background:linear-gradient(180deg, rgba(129,211,152,.28), rgba(129,211,152,.16)); border-color:rgba(129,211,152,.34); }
body.app-shell .transport-chip--mode-tragestuhl,
body.app-theme .transport-chip--mode-tragestuhl{ background:linear-gradient(180deg, rgba(255,203,91,.30), rgba(255,203,91,.16)); border-color:rgba(255,203,91,.36); color:#fff7dd; }
body.app-shell .transport-chip--mode-liegend,
body.app-theme .transport-chip--mode-liegend{ background:linear-gradient(180deg, rgba(255,128,168,.28), rgba(255,128,168,.16)); border-color:rgba(255,128,168,.34); }

body.app-shell .ride-kind-line .transport-chip--kind,
body.app-theme .ride-kind-line .transport-chip--kind{
  max-width:100%;
  justify-self:start;
  background:linear-gradient(180deg, rgba(151,123,255,.28), rgba(151,123,255,.16));
  border:1px solid rgba(151,123,255,.38);
  color:#f2ebff;
  font-size:.78rem;
  font-weight:800;
  padding:5px 10px;
  box-shadow:0 10px 18px rgba(18,12,36,.22);
}
body.app-shell .ride-kind-line .transport-chip--kind-dialyse,
body.app-theme .ride-kind-line .transport-chip--kind-dialyse{ background:linear-gradient(180deg, rgba(164,118,255,.34), rgba(164,118,255,.2)); border-color:rgba(187,153,255,.44); }
body.app-shell .ride-kind-line .transport-chip--kind-ambulant,
body.app-theme .ride-kind-line .transport-chip--kind-ambulant{ background:linear-gradient(180deg, rgba(128,102,255,.34), rgba(128,102,255,.2)); border-color:rgba(150,126,255,.44); }

body.app-theme .order-detail-card,
body.app-shell .order-detail-card,
body.app-theme .order-edit-card,
body.app-shell .order-edit-card{ padding:18px; }
.order-detail-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; }
.detail-row{ display:flex; flex-direction:column; gap:5px; padding:12px 14px; border-radius:14px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08); }
.detail-row--full{ grid-column:1 / -1; }
.detail-row span{ font-size:.75rem; text-transform:uppercase; letter-spacing:.05em; color:#8ea4bc; }
.detail-row strong{ color:#f4f8ff; line-height:1.35; }
.order-edit-card{ margin-top:14px; }
.order-times-form .field-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; }
.order-times-form label{ display:flex; flex-direction:column; gap:6px; }
.order-times-form input{ min-height:42px; }


/* Schritt 1: gemeinsame Navigation + Dashboard-Menü */
body.app-theme .global-nav,
body.app-shell .global-nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  overflow:visible;
  z-index:260;
}
.global-nav .nav-group{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}
.global-nav .nav-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:9px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.04);
  color:#d7e5f3;
  cursor:pointer;
}
.global-nav .nav-link:hover{border-color:rgba(124,196,255,.34);background:rgba(124,196,255,.08)}
.global-nav .nav-link.active{background:rgba(124,196,255,.14);border-color:rgba(124,196,255,.24);color:#f5fbff}
.global-nav .nav-link--action{background:rgba(128,181,255,.08);border-color:rgba(128,181,255,.2)}
.global-nav .nav-link--danger{background:rgba(255,208,128,.08);border-color:rgba(255,208,128,.2);color:#ffe7b8}
.global-nav .nav-link--auth{background:rgba(176,255,204,.08);border-color:rgba(176,255,204,.18)}
.global-nav--dashboard{justify-content:space-between}
.global-nav--dashboard .nav-group--main{justify-content:flex-start}
.global-nav--dashboard .nav-group--ops{margin-left:auto;justify-content:flex-end}


/* dashboard module drawers */
.dashboard-topbar__cluster--modules{
  display:flex;
  align-items:center;
  margin-left:2px;
}
.nav-chip--module{
  background:linear-gradient(180deg, rgba(255,214,102,.18), rgba(255,184,77,.12));
  border-color:rgba(255,214,102,.28);
  color:#fff3d6;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.nav-chip--module:hover{
  background:linear-gradient(180deg, rgba(255,214,102,.24), rgba(255,184,77,.16));
  border-color:rgba(255,214,102,.38);
}
.global-nav--dashboard{
  align-items:flex-end;
  gap:10px;
  overflow:visible;
}
.global-nav--dashboard .nav-group--main{
  display:flex;
  align-items:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.global-nav--dashboard .nav-group--ops{
  align-self:flex-end;
}
.module-drawer{
  position:relative;
  display:flex;
  align-items:flex-end;
}
.module-drawer__toggle{
  min-width:116px;
  justify-content:center;
  font-weight:800;
  letter-spacing:.01em;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
}
.module-drawer.is-open .module-drawer__toggle,
.module-drawer__toggle:hover{
  border-color:rgba(124,196,255,.32);
  background:linear-gradient(180deg, rgba(124,196,255,.16), rgba(124,196,255,.08));
  color:#f5fbff;
}
.module-drawer__panel{
  position:absolute;
  left:0;
  right:auto;
  bottom:calc(100% + 8px);
  width:min(320px, 36vw);
  max-height:0;
  opacity:0;
  pointer-events:none;
  overflow:hidden;
  transform:translateY(8px);
  transition:max-height .18s ease, opacity .14s ease, transform .18s ease;
  z-index:460;
}
.module-drawer.is-open .module-drawer__panel{
  max-height:420px;
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
}
.module-drawer__sheet{
  display:grid;
  gap:6px;
  padding:10px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(9,18,28,.98);
  box-shadow:0 18px 38px rgba(0,0,0,.34);
  backdrop-filter:blur(14px);
}
.module-drawer__item{
  display:flex;
  align-items:center;
  min-height:38px;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.03);
  color:#d7e5f3;
}
.module-drawer__item:hover{
  background:rgba(124,196,255,.10);
  border-color:rgba(124,196,255,.22);
}
.module-drawer__item.active{
  background:rgba(164,124,255,.16);
  border-color:rgba(164,124,255,.26);
  color:#f4eeff;
}
.module-drawer__item.is-disabled{
  color:#7e91a7;
  background:rgba(255,255,255,.02);
}
@media (max-width: 1280px){
  .module-drawer__toggle{min-width:104px;}
  .module-drawer__panel{width:min(300px, 44vw);}
}
@media (max-width: 900px){
  .dashboard-topbar__cluster--modules{margin-left:0;}
  .global-nav--dashboard .nav-group--main{width:100%;justify-content:flex-start;}
  .module-drawer__panel{width:min(280px, 84vw);}
}

body.app-theme .order-detail-card,
body.app-shell .order-detail-card,
body.app-theme .order-edit-card,
body.app-shell .order-edit-card{
  background:rgba(10,20,32,.94);
  color:#eef6ff;
  border:1px solid var(--dark-line-strong);
}
body.app-theme .order-detail-card h2,
body.app-shell .order-detail-card h2,
body.app-theme .order-detail-card h3,
body.app-shell .order-detail-card h3,
body.app-theme .order-edit-card h2,
body.app-shell .order-edit-card h2,
body.app-theme .order-edit-card h3,
body.app-shell .order-edit-card h3{color:#eef6ff}
body.app-theme .order-detail-card .muted,
body.app-shell .order-detail-card .muted,
body.app-theme .order-edit-card .muted,
body.app-shell .order-edit-card .muted{color:#97aec6}
body.app-theme .order-detail-card label,
body.app-shell .order-detail-card label,
body.app-theme .order-edit-card label,
body.app-shell .order-edit-card label{color:#dce9f5}
body.app-theme .order-details-shell .topbar-actions .ghost-button,
body.app-shell .order-details-shell .topbar-actions .ghost-button{color:#e8f3ff}

.dashboard-topbar{
  position:sticky;
  top:0;
  z-index:45;
  border-bottom:1px solid rgba(120,140,180,.16);
}
.dashboard-topbar__row{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:18px;
  flex-wrap:nowrap;
  overflow-x:auto;
  padding-right:4px;
}
.dashboard-topbar__left{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:nowrap;
  min-width:max-content;
}
.dashboard-brandline{display:flex;align-items:baseline;gap:10px;min-width:max-content}
.dashboard-brandline h1{margin:0;font-size:1.15rem}
.dashboard-datebar,
.dashboard-settings-inline{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap;
}
.dashboard-settings-inline{padding-left:10px;border-left:1px solid rgba(120,140,180,.16)}
.dashboard-settings-inline .compact-field{margin:0}
.compact-field--mini input{width:62px;min-width:62px}
.compact-field--narrow select{min-width:72px}
.compact-field--date input{min-width:144px}
.nav-chip{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  border-radius:999px;border:1px solid rgba(123,144,175,.18);
  background:rgba(255,255,255,.05);color:var(--text);padding:8px 12px;
  font-size:.84rem;font-weight:700;cursor:pointer;white-space:nowrap;
}
.nav-chip--soft{background:rgba(255,255,255,.06)}
.nav-chip--action{background:rgba(48,86,180,.16);border-color:rgba(108,139,223,.18)}
.nav-chip--refresh{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.18)}
.nav-chip--danger{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.2)}
.nav-chip--save{background:rgba(124,58,237,.14);border-color:rgba(124,58,237,.22)}
.nav-chip:disabled{opacity:.5;cursor:not-allowed}
.dashboard-settings-state{
  min-width:118px;max-width:180px;font-size:.78rem;line-height:1.2;color:var(--muted);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.dashboard-settings-state.is-ok{color:#85d39b}
.dashboard-settings-state.is-error{color:#ff8f8f}
.dashboard-shell .section-head .head-actions:empty{display:none}
.dashboard-shell .section-head{margin-bottom:12px}
.dashboard-shell .fleet-panel > .section-head{align-items:center}
.dashboard-shell .view-switch{margin-right:4px}

@media (max-width: 1380px){
  .dashboard-topbar__row{padding-bottom:2px}
  }


.dashboard-brandline{padding-right:10px;border-right:1px solid rgba(120,140,180,.16)}
.dashboard-topbar__left{width:100%;overflow-x:auto;padding-bottom:2px}
.dashboard-datebar{padding-right:10px;border-right:1px solid rgba(120,140,180,.16)}
.dashboard-settings-state{min-width:auto;white-space:nowrap;font-size:.8rem}
@media (max-width: 1200px){
  .dashboard-topbar__left{gap:10px}
  .dashboard-brandline{padding-right:8px}
  .dashboard-datebar{padding-right:8px}
}

/* Schritt 3: Module-Hover-Menü */
.global-nav .nav-dropdown{
  position:relative;
  display:flex;
  align-items:center;
}
.global-nav .nav-link--dropdown{
  padding-right:14px;
}
.global-nav .nav-dropdown::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:100%;
  height:8px;
}
.global-nav .nav-dropdown-menu{
  position:absolute;
  left:0;
  bottom:calc(100% + 8px);
  min-width:240px;
  display:none;
  flex-direction:column;
  gap:6px;
  padding:10px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(9,18,28,.97);
  box-shadow:0 16px 36px rgba(0,0,0,.32);
  backdrop-filter:blur(14px);
  z-index:420;
}
.global-nav .nav-dropdown:hover .nav-dropdown-menu,
.global-nav .nav-dropdown:focus-within .nav-dropdown-menu,
.global-nav .nav-dropdown.is-open .nav-dropdown-menu{
  display:flex;
}
.global-nav .nav-dropdown-link{
  display:flex;
  align-items:center;
  min-height:38px;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.03);
  color:#d7e5f3;
}
.global-nav .nav-dropdown-link:hover{
  background:rgba(124,196,255,.10);
  border-color:rgba(124,196,255,.22);
}
.global-nav .nav-dropdown-link.active{
  background:rgba(164,124,255,.16);
  border-color:rgba(164,124,255,.26);
  color:#f4eeff;
}
@media (max-width: 900px){
  .global-nav .nav-dropdown-menu{
    left:auto;
    right:0;
    min-width:220px;
  }
}


body.app-theme .vehicle-catalog-card__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
body.app-theme .vehicle-catalog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
body.app-theme .section-actions--tight{margin-top:10px}
body.app-theme .inline-note{font-size:.82rem;color:var(--dark-muted)}


body.app-shell .ride-time-block,
body.app-theme .ride-time-block{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:116px;
}
body.app-shell .ride-time-copy,
body.app-theme .ride-time-copy{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
body.app-shell .ride-time-copy__primary,
body.app-theme .ride-time-copy__primary{
  font-size:.68rem;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:#f5fbff;
  font-weight:800;
}
body.app-shell .ride-time-copy__secondary,
body.app-theme .ride-time-copy__secondary{
  font-size:.68rem;
  color:rgba(225,238,250,.78);
  white-space:nowrap;
}
body.app-shell .ride-compact-head,
body.app-theme .ride-compact-head{align-items:start;}
body.app-theme .trip-preview-box{
  margin-top:12px;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(124,196,255,.26);
  background:linear-gradient(180deg, rgba(16,33,52,.96), rgba(12,24,38,.98));
  box-shadow:0 10px 28px rgba(0,0,0,.24);
}
body.app-theme .trip-preview-box.hidden{display:none;}
body.app-theme .trip-preview-box__head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;}
body.app-theme .trip-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
body.app-theme .trip-preview-item{padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(168,196,232,.18);display:flex;flex-direction:column;gap:4px;}
body.app-theme .trip-preview-item--accent{background:linear-gradient(180deg, rgba(124,196,255,.14), rgba(124,196,255,.08));border-color:rgba(124,196,255,.3);}
body.app-theme .trip-preview-item span{font-size:.8rem;color:rgba(221,235,248,.8);}
body.app-theme .trip-preview-item strong{font-size:1.05rem;color:#fff;}
body.app-theme .review-box{padding:18px;border-style:solid;}
body.app-theme .review-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:14px 16px;border-radius:16px;background:rgba(124,196,255,.09);border:1px solid rgba(124,196,255,.22);margin-bottom:14px;}
body.app-theme .review-eyebrow{display:block;font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:rgba(221,235,248,.75);margin-bottom:6px;}
body.app-theme .review-hero__main strong{display:block;font-size:1.15rem;color:#fff;margin-bottom:4px;}
body.app-theme .review-hero__main span{display:block;color:rgba(231,241,250,.84);}
body.app-theme .review-hero__times{display:grid;grid-template-columns:repeat(2,minmax(140px,1fr));gap:10px;}
body.app-theme .review-hero__times div{padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(168,196,232,.18);}
body.app-theme .review-hero__times span{display:block;font-size:.78rem;color:rgba(221,235,248,.75);margin-bottom:4px;}
body.app-theme .review-hero__times strong{font-size:1.08rem;color:#fff;}
body.app-theme .review-grid.review-grid--large{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
body.app-theme .review-grid.review-grid--large > div{padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(168,196,232,.18);}
body.app-theme .review-grid.review-grid--large strong{display:block;font-size:.84rem;color:#fff;margin-bottom:6px;}
body.app-theme .review-grid.review-grid--large span{display:block;font-size:.98rem;line-height:1.45;color:rgba(235,244,252,.9);}
@media (max-width: 900px){
  body.app-theme .trip-preview-grid,
  body.app-theme .review-grid.review-grid--large,
  body.app-theme .review-hero__times{grid-template-columns:1fr;}
  body.app-theme .review-hero{flex-direction:column;}
}

/* v39 dark subpage consistency */
body.app-theme .driver-admin-list,
body.app-theme .driver-admin-formwrap,
body.app-theme .driver-admin-empty,
body.app-theme .driver-admin-item,
body.app-theme .admin-note,
body.app-theme .feedback,
body.app-theme .feedback.success,
body.app-theme .feedback.error,
body.app-theme .feedback.warn,
body.app-theme .feedback.info,
body.app-theme .order-meta,
body.app-theme .calc-preview,
body.app-theme .summary-block,
body.app-theme .ride-detail,
body.app-theme .priority-item,
body.app-theme .table-shell,
body.app-theme .table-card,
body.app-theme .data-card,
body.app-theme .settings-panel{
  color:var(--dark-text);
}

body.app-theme .driver-admin-list,
body.app-theme .driver-admin-formwrap,
body.app-theme .table-shell,
body.app-theme .table-card,
body.app-theme .data-card,
body.app-theme .settings-panel{
  background:linear-gradient(180deg, rgba(18,31,49,.95), rgba(15,25,40,.96));
  border:1px solid var(--dark-line);
  box-shadow:var(--dark-shadow);
}

body.app-theme .driver-admin-item,
body.app-theme .driver-admin-empty,
body.app-theme .feedback,
body.app-theme .feedback.success,
body.app-theme .feedback.error,
body.app-theme .feedback.warn,
body.app-theme .feedback.info,
body.app-theme .order-meta{
  background:rgba(255,255,255,.04);
  border:1px solid var(--dark-line);
  color:var(--dark-text);
}

body.app-theme .driver-admin-item span,
body.app-theme .driver-admin-item small,
body.app-theme .order-meta,
body.app-theme .feedback p,
body.app-theme .feedback small,
body.app-theme .table-shell th,
body.app-theme .table-shell td,
body.app-theme .meta,
body.app-theme .muted,
body.app-theme .help-text{
  color:var(--dark-muted);
}

body.app-theme .big-field span,
body.app-theme .check-line span,
body.app-theme .section-head p,
body.app-theme .topbar p,
body.app-theme .driver-admin-list__head,
body.app-theme .inline-label{
  color:#d9e6f3;
}

body.app-theme select,
body.app-theme input,
body.app-theme textarea{
  background:rgba(255,255,255,.06);
  color:var(--dark-text);
}

body.app-theme select option,
body.app-theme select optgroup,
body.subpage-shell select option,
body.subpage-shell select optgroup,
body.app-shell select option,
body.app-shell select optgroup{
  background:#101b2a;
  color:#eef7ff;
}

body.app-theme .feedback.success{border-color:rgba(74,222,128,.32)}
body.app-theme .feedback.error{border-color:rgba(248,113,113,.34)}
body.app-theme .feedback.warn{border-color:rgba(251,191,36,.34)}
body.app-theme .feedback.info{border-color:rgba(124,196,255,.34)}

body.app-theme .inline-status.ok{color:#9ae6b4}
body.app-theme .inline-status.error{color:#fca5a5}

body.app-theme table{color:var(--dark-text)}
body.app-theme thead th{background:rgba(255,255,255,.05);color:#eef7ff}
body.app-theme tbody td{background:transparent}

body.app-theme .ghost-button:hover,
body.app-theme .primary-button:hover,
body.app-theme .driver-admin-item:hover{
  filter:brightness(1.04);
}


/* v40: Dashboard-Topbar Feinlayout */
.dashboard-topbar{
  background:linear-gradient(180deg, rgba(10,18,30,.94), rgba(10,18,30,.84));
}
.dashboard-topbar__row,
.dashboard-topbar__left,
.dashboard-datebar,
.dashboard-settings-inline{
  align-items:center;
}
.dashboard-topbar__row{min-height:46px}
.dashboard-brandline{align-items:center}
.dashboard-brandline h1{font-size:1.12rem;line-height:1}
.dashboard-datebar,
.dashboard-settings-inline{gap:10px}
.dashboard-datebar{padding-right:12px;margin-right:2px}
.dashboard-settings-inline{padding-left:12px}
.dashboard-settings-inline .compact-field,
.dashboard-datebar .compact-field{
  font-size:.8rem;
  gap:6px;
  white-space:nowrap;
}
.dashboard-topbar .compact-field input,
.dashboard-topbar .compact-field select{
  min-height:34px;
  padding:7px 10px;
}
.dashboard-topbar .compact-field input[type=date]{
  min-width:138px;
  color:#e9f2ff;
}
.dashboard-topbar .compact-field input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1) brightness(1.2);opacity:.9}
.dashboard-topbar .nav-chip{
  min-height:34px;
  padding:7px 12px;
  color:#edf5ff;
  border-color:rgba(140,165,205,.24);
  background:rgba(255,255,255,.07);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
.dashboard-topbar .nav-chip:hover{background:rgba(255,255,255,.11)}
.dashboard-topbar .nav-chip:focus-visible,
.dashboard-topbar .compact-field input:focus-visible{
  outline:2px solid rgba(124,196,255,.42);
  outline-offset:1px;
}
.dashboard-topbar .nav-chip--soft{
  background:rgba(255,255,255,.08);
  color:#f4f8ff;
}
.dashboard-topbar .nav-chip--save{
  background:rgba(124,58,237,.12);
  border-color:rgba(167,139,250,.26);
  color:#efe7ff;
}
.dashboard-topbar .nav-chip--save:hover{
  background:rgba(124,58,237,.18);
}
.dashboard-settings-state{
  color:#9cb2c8;
}
@media (max-width: 1200px){
  .dashboard-topbar__row{align-items:flex-start}
}

/* v41: Dashboard-Topbar date hero */
.dashboard-topbar{
  background:linear-gradient(180deg, rgba(9,17,28,.97), rgba(10,18,30,.9));
}
.dashboard-topbar__row{
  justify-content:space-between;
  gap:18px;
  min-height:72px;
}
.dashboard-topbar__left{
  flex:1 1 auto;
  min-width:0;
}
.dashboard-topbar__right{
  margin-left:auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  flex-wrap:nowrap;
  min-width:max-content;
}
.dashboard-brandline--datehero{
  align-items:flex-end;
  gap:12px;
}
.dashboard-brandline__label{
  display:inline-flex;
  align-items:center;
  font-size:.95rem;
  font-weight:700;
  letter-spacing:.03em;
  color:#c6d6e8;
  white-space:nowrap;
  padding-bottom:.3rem;
}
.dashboard-brandline--datehero h1,
#boardDateHeadline{
  margin:0;
  font-size:2em;
  line-height:1;
  letter-spacing:.01em;
  color:#f4f8ff;
  white-space:nowrap;
}
.dashboard-datebar{
  padding-right:14px;
  margin-right:0;
  border-right:1px solid rgba(120,140,180,.16);
}
.dashboard-topbar .compact-field{
  color:#d8e6f4;
}
.dashboard-topbar .compact-field input,
.dashboard-topbar .compact-field select{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(140,165,205,.22);
  color:#eef6ff;
}
.dashboard-topbar .compact-field input[type=date]{
  min-width:148px;
  font-weight:700;
}
.dashboard-topbar .nav-chip,
.dashboard-topbar .nav-chip--soft,
.dashboard-topbar .nav-chip--save{
  color:#eef6ff;
}
.dashboard-topbar .nav-chip--save{
  background:rgba(124,196,255,.14);
  border-color:rgba(124,196,255,.26);
  color:#eef8ff;
}
.dashboard-topbar .nav-chip--save:hover{background:rgba(124,196,255,.2)}
.dashboard-settings-state{max-width:150px}

@media (max-width: 1280px){
  .dashboard-topbar__row{align-items:flex-start;min-height:auto}
  .dashboard-topbar__right{flex-wrap:wrap;justify-content:flex-end}
}
@media (max-width: 900px){
  .dashboard-topbar__row{flex-direction:column;align-items:flex-start}
  .dashboard-topbar__right{width:100%;min-width:0;justify-content:flex-start}
  .dashboard-brandline--datehero h1,
  #boardDateHeadline{font-size:1.6em}
}


/* v42: topbar alignment and day nav fix */
.dashboard-topbar__row{align-items:center;}
.dashboard-topbar__left{flex:0 0 auto;width:auto;overflow:visible;padding-bottom:0;}
.dashboard-topbar__right{flex:1 1 auto;justify-content:flex-end;align-items:center;margin-left:auto;}
.dashboard-brandline{border-right:none;padding-right:0;}
.dashboard-datebar{margin-left:auto;}
.dashboard-topbar .nav-chip,.dashboard-topbar .compact-field,.dashboard-topbar .compact-field input{position:relative;z-index:2;}
@media (max-width: 1280px){
  .dashboard-topbar__row{align-items:center;}
  .dashboard-topbar__right{flex-wrap:wrap;justify-content:flex-end;}
}
@media (max-width: 900px){
  .dashboard-topbar__row{flex-direction:column;align-items:flex-start;}
  .dashboard-topbar__right{width:100%;justify-content:flex-start;}
  .dashboard-datebar{margin-left:0;}
}

/* v46 dashboard status emphasis + stable refresh */
body.app-shell .ride-chip [data-status-head],
body.app-shell .order-card [data-status-head]{display:block}
body.app-shell .ride-chip .ride-status-head,
body.app-shell .order-card .ride-status-head{
  border:1px solid rgba(255,255,255,.08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
body.app-shell .ride-chip--state-confirmed .ride-status-head{
  background:linear-gradient(180deg, rgba(96,165,250,.42), rgba(59,130,246,.28));
  color:#eff6ff;
  border-color:rgba(96,165,250,.48);
}
body.app-shell .ride-chip--state-en_route .ride-status-head{
  background:linear-gradient(180deg, rgba(20,184,166,.42), rgba(13,148,136,.28));
  color:#f0fdfa;
  border-color:rgba(45,212,191,.48);
}
body.app-shell .ride-chip--state-in_progress .ride-status-head{
  background:linear-gradient(180deg, rgba(34,197,94,.40), rgba(22,163,74,.28));
  color:#f0fdf4;
  border-color:rgba(74,222,128,.48);
}
body.app-shell .ride-chip--late .ride-status-head{
  background:linear-gradient(180deg, rgba(239,68,68,.42), rgba(220,38,38,.28));
  color:#fff1f2;
  border-color:rgba(248,113,113,.48);
}
body.app-shell .ride-chip--tight .ride-status-head{
  background:linear-gradient(180deg, rgba(245,158,11,.40), rgba(217,119,6,.28));
  color:#fffbeb;
  border-color:rgba(251,191,36,.48);
}
body.app-shell .ride-chip--done .ride-status-head,
body.app-shell .order-card .ride-status-head--done{
  background:linear-gradient(180deg, rgba(100,116,139,.34), rgba(71,85,105,.24));
  color:#e2e8f0;
  border-color:rgba(148,163,184,.38);
}
body.app-shell .ride-status-head__label{font-weight:800;letter-spacing:.015em}

/* v48 stronger status contrast without breaking auto update */
body.app-shell .ride-chip .ride-status-head,
body.app-shell .order-card .ride-status-head{
  border:1px solid rgba(255,255,255,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 4px 12px rgba(0,0,0,.18);
  padding:7px 10px;
  border-radius:12px 12px 0 0;
}
body.app-shell .ride-status-head__label{
  display:block;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.015em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.app-shell .ride-chip--state-confirmed .ride-status-head{
  background:linear-gradient(180deg, rgb(18,74,132), rgb(21,94,171));
  color:#eff6ff;
  border-color:rgba(96,165,250,.52);
}
body.app-shell .ride-chip--ok .ride-status-head,
body.app-shell .order-card .ride-status-head--ok{
  background:linear-gradient(180deg, rgb(6,95,70), rgb(5,150,105));
  color:#ecfdf5;
  border-color:rgba(52,211,153,.56);
}
body.app-shell .ride-chip--state-en_route .ride-status-head{
  background:linear-gradient(180deg, rgb(146,64,14), rgb(194,65,12));
  color:#fff7ed;
  border-color:rgba(251,146,60,.56);
}
body.app-shell .ride-chip--state-in_progress .ride-status-head{
  background:linear-gradient(180deg, rgb(6,95,70), rgb(5,150,105));
  color:#ecfdf5;
  border-color:rgba(52,211,153,.56);
}
body.app-shell .ride-chip--late .ride-status-head{
  background:linear-gradient(180deg, rgb(153,27,27), rgb(220,38,38));
  color:#fff1f2;
  border-color:rgba(248,113,113,.56);
}
body.app-shell .ride-chip--tight .ride-status-head{
  background:linear-gradient(180deg, rgb(146,64,14), rgb(217,119,6));
  color:#fffbeb;
  border-color:rgba(251,191,36,.54);
}
body.app-shell .ride-chip--done .ride-status-head,
body.app-shell .order-card .ride-status-head--done{
  background:linear-gradient(180deg, rgb(71,85,105), rgb(100,116,139));
  color:#f1f5f9;
  border-color:rgba(148,163,184,.42);
}


/* v52 driver view compaction */
.driver-phone-head--menu{align-items:center;padding-bottom:10px}.driver-head-copy{min-width:0}.driver-menu-button-inline{min-height:38px;padding:8px 12px;white-space:nowrap}.driver-phone--fit{height:100dvh;max-height:100dvh}.driver-phone-body--fit{overflow:auto !important;justify-content:flex-start;gap:10px;padding-bottom:8px !important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.driver-phone-actions--single{display:grid;grid-template-columns:1fr;gap:10px}.driver-ride-panel--fit{padding:14px 14px 12px;gap:10px}.driver-kicker{font-size:.75rem;line-height:1.1}.driver-hero-line--single{grid-template-columns:auto 1fr;gap:10px;align-items:center}.driver-time-block-inline{display:flex;align-items:baseline;gap:7px;min-width:0;white-space:nowrap}.driver-time-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:rgba(238,247,251,.74)}.driver-time-large{font-size:1.18rem !important;font-weight:800;line-height:1;white-space:nowrap;margin:0 !important}.driver-hero-line h1{margin:0;min-width:0;font-size:1.1rem;line-height:1.12;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.driver-transport-line strong{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);font-size:.82rem;line-height:1}.driver-facts--compact{gap:7px}.driver-facts--compact div{display:grid;gap:3px}.driver-facts--compact strong{font-size:.86rem;line-height:1.22;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.driver-plan-box--compact{padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}.driver-summary-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.driver-summary-line span{min-width:0;font-size:.77rem;line-height:1.2}.driver-summary-line strong{font-size:.88rem;line-height:1.2;text-align:right;white-space:nowrap}.driver-time-nowrap{white-space:nowrap !important}.driver-step-card--compact{padding:12px 14px}.driver-inline-actions{gap:8px}.driver-inline-actions .secondary-button,.driver-inline-actions .primary-button{min-height:38px;padding:8px 10px;font-size:.88rem}.driver-menu-grid--single .driver-menu-button{justify-content:center}.driver-today-list{display:grid;gap:10px}.driver-today-item{display:grid;gap:5px;padding:12px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}.driver-today-item__top{display:flex;justify-content:space-between;gap:10px;align-items:center}.driver-today-item__top strong{font-size:.98rem}.driver-today-item__top span{font-size:.78rem;color:rgba(238,247,251,.78)}.driver-today-item__patient{font-size:.96rem;font-weight:700}.driver-today-item__meta{font-size:.8rem;color:rgba(238,247,251,.82)}.driver-today-item__addr{display:grid;gap:3px}.driver-today-item__addr span{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:rgba(238,247,251,.66)}.driver-today-item__addr strong{font-size:.82rem;line-height:1.22}.driver-phone-actions .primary-button,.driver-phone-actions .secondary-button,.driver-phone-actions .primary-link-button{font-size:.96rem}.driver-menu-launch{display:none}


/* v53 Fahreransicht Verdichtung */
.driver-phone--fit{height:100dvh;max-height:100dvh;overflow:hidden;}
.driver-phone-head--menu{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:8px;}
.driver-head-copy{display:grid;gap:2px;min-width:0;}
.driver-menu-button-inline{align-self:center;min-height:36px;padding:8px 11px;}
.driver-phone-body--fit{overflow:auto !important;justify-content:flex-start;gap:8px;padding:8px 12px 4px !important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;}
.driver-ride-panel--fit{padding:12px 12px 10px;border-radius:18px;gap:8px;}
.driver-ride-main--focus{display:grid;gap:8px;}
.driver-kicker--state{font-size:.78rem;line-height:1;color:#a5d8ff;letter-spacing:.04em;}
.driver-hero-stack{display:grid;gap:4px;padding:8px 10px 10px;border-radius:16px;background:rgba(125,211,252,.08);border:1px solid rgba(125,211,252,.16);}
.driver-hero-topline{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;}
.driver-time-label--hero{font-size:.78rem;color:#7dd3fc;}
.driver-time-large--hero{font-size:1.58rem !important;font-weight:900;line-height:1;white-space:nowrap;color:#f8fafc;}
.driver-patient-name{margin:0;font-size:1.3rem;line-height:1.08;font-weight:800;color:#fff;word-break:break-word;}
.driver-transport-line--hero{margin:0;}
.driver-transport-line--hero strong{background:rgba(168,85,247,.16);border-color:rgba(168,85,247,.28);color:#f3e8ff;font-size:.88rem;padding:6px 11px;}
.driver-facts--focus{gap:6px;}
.driver-fact{display:grid;gap:2px;padding:8px 10px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);}
.driver-fact span{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:rgba(238,247,251,.68);}
.driver-fact strong{font-size:.93rem;line-height:1.2;display:block;overflow:visible;-webkit-line-clamp:unset;}
.driver-fact small{display:block;font-size:.84rem;line-height:1.18;color:#e2e8f0;}
.driver-fact--pickup{background:rgba(34,197,94,.08);border-color:rgba(34,197,94,.14);}
.driver-fact--destination{background:rgba(59,130,246,.08);border-color:rgba(59,130,246,.14);}
.driver-plan-box--tight{margin-top:0;padding:8px 10px;border-radius:14px;}
.driver-summary-line--tight{grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin:0;}
.driver-summary-line--tight span{font-size:.73rem;line-height:1.1;}
.driver-summary-line--tight strong{font-size:.86rem;line-height:1.1;}
.driver-phone-actions--single{padding-top:8px;}
.driver-phone-actions .primary-button{min-height:50px;}
@media (max-height: 760px){
  .driver-phone-head{padding-bottom:8px;}
  .driver-phone-body--fit{padding:6px 10px 2px !important;gap:6px;}
  .driver-ride-panel--fit{padding:10px 10px 8px;}
  .driver-time-large--hero{font-size:1.42rem !important;}
  .driver-patient-name{font-size:1.18rem;}
  .driver-fact{padding:7px 9px;}
  .driver-fact strong{font-size:.88rem;}
  .driver-fact small{font-size:.79rem;}
  .driver-plan-box--tight{padding:7px 9px;}
  .driver-summary-line--tight span{font-size:.7rem;}
  .driver-summary-line--tight strong{font-size:.82rem;}
}

.vehicle-alert{margin:.4rem 0;padding:.55rem .7rem;border-radius:12px;border:1px solid rgba(255,255,255,.14);font-size:.82rem;display:flex;align-items:center;justify-content:space-between;gap:.6rem;}
.vehicle-alert--base{background:rgba(119,91,255,.14);border-color:rgba(154,130,255,.34);color:#efeaff;}
.vehicle-alert--done{background:rgba(60,150,90,.16);border-color:rgba(90,190,120,.3);color:#e8fff0;}
.vehicle-footer-action{padding:.5rem .2rem 0;}
.mini-btn--primary{background:rgba(119,91,255,.22);border:1px solid rgba(154,130,255,.42);color:#f4f0ff;}
.driver-basis-note{margin:0 0 .75rem;padding:.7rem .8rem;border-radius:16px;border:1px solid rgba(154,130,255,.34);background:rgba(119,91,255,.14);color:#f3efff;}
.driver-basis-note__title{font-weight:700;margin-bottom:.2rem;}
.driver-basis-note__meta{font-size:.9rem;opacity:.9;margin-top:.25rem;}


.drop-slot__notice{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:nowrap;width:100%}
.drop-slot__notice-main{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.drop-slot .mini-btn{flex:0 0 auto}


.driver-basis-note{margin:0 0 .75rem;padding:1rem 1rem 1.05rem;border-radius:20px;border:2px solid rgba(154,130,255,.45);background:linear-gradient(180deg, rgba(119,91,255,.24), rgba(65,38,140,.24));color:#fbf8ff;box-shadow:0 14px 30px rgba(23,10,58,.28)}
.driver-basis-note--base{border-color:rgba(143,182,255,.5);background:linear-gradient(180deg, rgba(74,116,255,.28), rgba(32,52,112,.26))}
.driver-basis-note--shift-end{border-color:rgba(255,181,96,.58);background:linear-gradient(180deg, rgba(255,162,64,.3), rgba(122,63,0,.24))}
.driver-basis-note__eyebrow{font-size:.72rem;line-height:1;letter-spacing:.08em;text-transform:uppercase;opacity:.9;margin-bottom:.38rem;font-weight:700}
.driver-basis-note__title{font-size:1.22rem;line-height:1.08;font-weight:900;margin-bottom:.34rem}
.driver-basis-note__text{font-size:.96rem;line-height:1.32;font-weight:600}
.driver-basis-note__meta{font-size:.92rem;opacity:.98;margin-top:.45rem;font-weight:700}
.driver-ride-panel--muted{background:rgba(255,255,255,.04);border:1px dashed rgba(255,255,255,.12)}


/* v66 stronger base/shift alerts */
.vehicle-alert--base{background:linear-gradient(180deg, rgba(74,116,255,.28), rgba(32,52,112,.28));border-color:rgba(143,182,255,.58);color:#f6f8ff;box-shadow:0 10px 24px rgba(17,28,72,.24)}
.vehicle-alert--base span{font-weight:800;letter-spacing:.01em}
.vehicle-alert--base strong{font-weight:900;white-space:nowrap}
.driver-basis-note--base{border-color:rgba(143,182,255,.7);background:linear-gradient(180deg, rgba(74,116,255,.36), rgba(26,44,112,.34));box-shadow:0 18px 34px rgba(16,26,78,.34)}
.driver-basis-note--shift-end{border-color:rgba(255,184,92,.72);background:linear-gradient(180deg, rgba(255,162,64,.4), rgba(122,63,0,.34));box-shadow:0 18px 34px rgba(94,42,0,.28)}
.drop-slot__notice{min-height:42px;padding:0;width:100%}
.drop-slot__notice-main{font-size:.86rem;font-weight:500;line-height:1.18;color:#f4f8ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drop-slot__notice--routing{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.55rem;padding:8px 12px;border-radius:16px;border:1px solid rgba(232,243,255,.18);background:linear-gradient(180deg, rgba(61,104,176,.36), rgba(24,48,87,.34));box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 8px 18px rgba(8,18,38,.14)}
.drop-slot__notice-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.drop-slot__notice-sub{font-size:.72rem;font-weight:400;line-height:1.15;color:rgba(235,244,255,.76);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}


.driver-phone-drop{margin-top:8px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.05);overflow:hidden}
.driver-phone-drop__summary{list-style:none;cursor:pointer;padding:10px 12px;font-size:.82rem;font-weight:700;color:#eef7fb}
.driver-phone-drop__summary::-webkit-details-marker{display:none}
.driver-phone-drop__summary::after{content:'+';float:right;font-size:1rem;line-height:1}
.driver-phone-drop[open] .driver-phone-drop__summary::after{content:'−'}
.driver-phone-drop__body{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:0 12px 12px 12px;color:#fff;border-top:1px solid rgba(255,255,255,.08)}
.driver-phone-drop__body span{font-size:.96rem;font-weight:700;word-break:break-word}
.driver-phone-drop__call{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.09);color:#fff;text-decoration:none;font-size:.82rem;font-weight:700;white-space:nowrap}
@media (max-width: 480px){.driver-phone-drop__body{flex-direction:column;align-items:flex-start}.driver-phone-drop__call{width:100%}}

@media (min-width: 1400px) and (min-height: 900px){
  .driver-screen.active{padding:24px;background:#091a24;box-sizing:border-box}
  .driver-phone--fit{
    max-width:1280px;
    min-height:calc(100dvh - 48px);
    height:calc(100dvh - 48px);
    border-radius:28px;
    overflow:hidden;
    box-shadow:0 24px 64px rgba(0,0,0,.32);
  }
  .driver-phone-head--menu{padding:22px 24px 12px;align-items:flex-start}
  .driver-head-copy .driver-brand{font-size:1.28rem;line-height:1.08}
  .driver-head-copy .driver-subline{font-size:.98rem}
  .driver-phone-body--fit{
    display:grid;
    grid-template-columns:minmax(340px,.9fr) minmax(560px,1.15fr);
    grid-auto-rows:max-content;
    gap:18px;
    align-content:start;
    padding:12px 24px 8px !important;
  }
  .driver-phone-body--fit > .driver-action-nav,
  .driver-phone-body--fit > .driver-basis-note,
  .driver-phone-body--fit > .driver-step-card:not(.driver-ride-panel){grid-column:1}
  .driver-phone-body--fit > .driver-ride-panel{grid-column:2;grid-row:1 / span 6;align-self:start;position:sticky;top:0}
  .driver-basis-note{margin:0;padding:1.15rem 1.15rem 1.2rem}
  .driver-basis-note__title{font-size:1.3rem}
  .driver-basis-note__text{font-size:1rem}
  .driver-step-card--compact{padding:16px 18px}
  .driver-alert__title{font-size:1.16rem}
  .driver-alert__text{font-size:.98rem;line-height:1.38}
  .driver-ride-panel--fit{padding:20px 20px 18px;gap:12px}
  .driver-stage-head{font-size:.96rem}
  .driver-hero-line h1{font-size:1.34rem;line-height:1.16}
  .driver-time-large{font-size:1.5rem !important}
  .driver-facts--compact strong{font-size:.94rem}
  .driver-phone-drop__summary{padding:12px 14px;font-size:.88rem}
  .driver-phone-drop__body{padding:0 14px 14px 14px}
  .driver-phone-actions--single{padding:14px 24px 22px}
  .driver-phone-actions .primary-button,
  .driver-phone-actions .secondary-button,
  .driver-phone-actions .primary-link-button,
  .driver-phone-actions a.secondary-button,
  .driver-phone-actions a.primary-button{min-height:58px;font-size:1.02rem}
}
.driver-field--dark textarea{width:100%;min-height:108px;resize:vertical;background:rgba(255,255,255,.08);color:#eef7fb;border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:12px 14px;font:inherit;box-sizing:border-box}
.driver-field--dark textarea::placeholder{color:rgba(238,247,251,.48)}
.board-summary--cancel{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:10px}
.summary-block--cancel{align-items:flex-start}
.summary-block--cancel small{display:block;margin-top:6px;color:rgba(255,255,255,.76);line-height:1.25}
.driver-field--dark input[type="text"],
.driver-field--dark input[type="date"],
.driver-field--dark input[type="time"],
.driver-followup-input{width:100%;min-height:46px;background:rgba(255,255,255,.08);color:#eef7fb;border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:10px 12px;font:inherit;box-sizing:border-box}
.driver-field--dark input::placeholder,.driver-followup-input::placeholder{color:rgba(238,247,251,.48)}
.driver-followup-card{display:grid;gap:12px}
.driver-followup-search{display:grid;gap:8px;max-height:200px;overflow:auto}
.driver-followup-search__item{display:grid;gap:3px;text-align:left;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:#eef7fb;border-radius:14px;padding:10px 12px;font:inherit}
.driver-followup-search__item span{font-size:.8rem;color:rgba(238,247,251,.74)}
.driver-followup-selected,.driver-followup-saved{display:grid;gap:4px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.driver-followup-selected__meta,.driver-followup-saved span{font-size:.84rem;color:rgba(238,247,251,.8)}
.driver-check--dark{display:flex;align-items:center;gap:10px;color:#eef7fb;font-size:.9rem}
.driver-inline-actions--stack{display:grid}
.board-summary--followup{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:10px}
.summary-block--followup{align-items:flex-start}
.summary-block--followup small{display:block;margin-top:6px;color:rgba(255,255,255,.76);line-height:1.25}
.driver-action-nav__list{display:grid;gap:8px;margin-top:10px}
.driver-action-nav__item{width:100%;text-align:left;background:rgba(255,255,255,.06);color:#eef7fb;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:11px 12px;font:inherit;font-weight:700}
.driver-action-nav__item.is-active{background:rgba(79,179,255,.18);border-color:rgba(79,179,255,.42)}
.driver-action-nav__item.is-disabled{opacity:.45}
.driver-action-nav__hint{margin-top:10px;font-size:.82rem;line-height:1.35;color:rgba(238,247,251,.72)}


.dashboard-followup-panel{margin:14px 0 18px; padding:16px 18px; border-radius:18px; background:#10161f; border:1px solid rgba(255,255,255,.08); color:#eef3ff; box-shadow:0 8px 28px rgba(0,0,0,.18)}
.dashboard-followup-head{display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px}
.dashboard-followup-head h3{margin:0; font-size:18px}
.dashboard-followup-head span{font-size:13px; color:#b8c3d9}
.dashboard-followup-list{display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:12px}
.dashboard-followup-item{padding:12px 14px; border-radius:14px; background:#182233; border:1px solid rgba(255,255,255,.08)}
.dashboard-followup-title{display:flex; flex-direction:column; gap:4px; margin-bottom:8px}
.dashboard-followup-title span,.dashboard-followup-meta{font-size:13px; color:#c8d2e3}
.dashboard-followup-note{margin-top:8px; font-size:13px; color:#f4f7ff}


.driver-ride-panel--menu{min-height:320px}
.driver-menu-content-card{border:none;background:transparent;padding:0;box-shadow:none}
.driver-menu-content-card .driver-stage-head{margin-bottom:10px}
.driver-followup-grid{display:grid;gap:12px}
.driver-followup-grid__full{grid-column:1 / -1}
.driver-followup-card .driver-inline-actions{margin-top:4px}
@media (min-width: 900px){
  .driver-followup-grid{grid-template-columns:repeat(2, minmax(0,1fr));align-items:start}
}
@media (min-width: 1400px) and (min-height: 900px){
  .driver-ride-panel--menu{padding:22px 22px 18px}
  .driver-followup-grid{grid-template-columns:repeat(2, minmax(0,1fr));gap:14px}
  .driver-followup-search{max-height:180px}
}

.ride-followup-line{margin:6px 0 8px;padding:7px 10px;border-radius:12px;background:rgba(114,173,255,.12);border:1px solid rgba(114,173,255,.24);color:#dceaff;font-size:.84rem;font-weight:700;line-height:1.25}


.order-layout-grid{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:18px;align-items:start}
.order-info-panel,.order-edit-card--clean{background:linear-gradient(180deg, rgba(17,29,45,.96), rgba(13,22,36,.98));border:1px solid rgba(129,170,215,.18);box-shadow:0 22px 48px rgba(0,0,0,.24)}
.order-detail-grid--summary .detail-row{background:rgba(255,255,255,.03);border:1px solid rgba(129,170,215,.14);border-radius:14px;padding:12px 14px}
.order-edit-section{border:1px solid rgba(129,170,215,.14);background:rgba(255,255,255,.03);border-radius:16px;padding:16px;margin-bottom:14px}
.order-edit-section h3{margin:0 0 12px;font-size:1rem}
.order-times-form--clean .field-grid{gap:12px}
.order-times-form--clean .field-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.order-times-form--clean .field-grid__span2{grid-column:1 / -1}
.order-search-results{display:grid;gap:8px;margin-top:10px}
.order-search-result{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;text-align:left;padding:10px 12px;border-radius:12px;border:1px solid rgba(129,170,215,.2);background:rgba(255,255,255,.04);color:#eef6ff}
.order-search-result span{color:#9fb4c9;font-size:.85rem}
.order-search-result:hover{background:rgba(114,173,255,.14);border-color:rgba(114,173,255,.38)}
.card-actions--sticky{position:sticky;bottom:0;padding-top:10px;background:linear-gradient(180deg, rgba(13,22,36,0), rgba(13,22,36,.92) 30%, rgba(13,22,36,.98) 100%)}
.ride-address__text{display:flex;flex-direction:column;gap:2px}
.ride-address__text strong{font-size:.94rem;color:#f5f9ff;line-height:1.25}
.ride-address__text small{font-size:.82rem;color:#9fb4c9;line-height:1.3}
.ride-followup-line{margin:6px 0 8px;padding:8px 12px;border-radius:12px;background:rgba(251,191,36,.18);border:1px solid rgba(251,191,36,.45);color:#ffe8a3;font-size:.84rem;font-weight:800;line-height:1.25;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}
@media (max-width: 980px){.order-layout-grid{grid-template-columns:1fr}.order-info-panel{order:2}.order-edit-card--clean{order:1}.order-times-form--clean .field-grid--two{grid-template-columns:1fr}}


.ride-followup-line{margin:6px 0 8px;padding:6px 10px;border-radius:10px;background:rgba(251,191,36,.14);border:1px solid rgba(251,191,36,.38);color:#ffe3a0;font-size:.78rem;font-weight:700;line-height:1.25;box-shadow:none}
.driver-file-hint{font-size:.82rem;color:rgba(238,247,251,.72);margin-top:-4px}
.terminlist-photo-list{display:grid;gap:14px}
.terminlist-photo-card{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:16px;padding:16px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:#10161f;color:#eef3ff;box-shadow:0 12px 30px rgba(0,0,0,.18)}
.terminlist-photo-card.is-open{border-color:rgba(239,68,68,.42);box-shadow:0 0 0 1px rgba(239,68,68,.12),0 12px 30px rgba(0,0,0,.18)}
.terminlist-photo-card.is-done{border-color:rgba(34,197,94,.42);box-shadow:0 0 0 1px rgba(34,197,94,.12),0 12px 30px rgba(0,0,0,.18)}
.terminlist-photo-card__body{display:grid;gap:10px;align-content:start}
.terminlist-photo-card__top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.terminlist-status-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:.8rem;font-weight:700}
.terminlist-status-chip.is-open{background:rgba(239,68,68,.16);color:#fecaca;border:1px solid rgba(239,68,68,.32)}
.terminlist-status-chip.is-done{background:rgba(34,197,94,.16);color:#bbf7d0;border:1px solid rgba(34,197,94,.32)}
.terminlist-photo-card__meta{display:grid;gap:6px;font-size:.9rem;color:#c7d2e5}
.terminlist-photo-card__note{padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);line-height:1.4}
.terminlist-photo-card__actions{display:flex;justify-content:flex-start}
@media (max-width: 900px){.terminlist-photo-card{grid-template-columns:1fr}.terminlist-photo-card__media img{max-height:260px}}


.terminlist-photo-card__preview{display:block;padding:0;border:0;background:transparent;cursor:zoom-in;border-radius:14px}
.terminlist-photo-card__preview img{display:block;width:100%;max-height:320px;object-fit:cover;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:#0b1119}
.terminlist-photo-card__preview:focus-visible{outline:2px solid rgba(96,165,250,.9);outline-offset:3px}
.photo-lightbox{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:24px}
.photo-lightbox[hidden]{display:none}
.photo-lightbox__backdrop{position:absolute;inset:0;background:rgba(3,8,16,.82);backdrop-filter:blur(4px)}
.photo-lightbox__dialog{position:relative;z-index:1;max-width:min(96vw,1600px);max-height:92vh;display:grid;gap:12px}
.photo-lightbox__image{display:block;max-width:100%;max-height:92vh;width:auto;height:auto;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:#05080d;box-shadow:0 24px 80px rgba(0,0,0,.45)}
.photo-lightbox__close{position:absolute;top:14px;right:14px;z-index:2;width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(10,15,24,.78);color:#fff;font-size:1.8rem;line-height:1;cursor:pointer}
body.lightbox-open{overflow:hidden}
@media (max-width: 900px){.terminlist-photo-card__preview img{max-height:260px}.photo-lightbox{padding:12px}.photo-lightbox__image{max-height:88vh}.photo-lightbox__close{top:10px;right:10px}}


#planningPresetGrid .admin-setting-card .order-meta{
  margin-top: 6px;
}


.dashboard-presetbar{
  display:flex;
  align-items:center;
  gap:8px;
  justify-content:flex-end;
  margin-top:8px;
  opacity:.92;
}
.dashboard-presetbar select{
  min-width:180px;
}
.planning-preset-card textarea{
  resize:vertical;
}


.planning-preset-card textarea[data-preset="vehicle_weights_text"]{
  font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.ride-address__text br{display:block;content:'';}
.ride-address__name,.ride-address__sub{display:block;}







/* Tourkacheln: volle Lesbarkeit für Einrichtung + komplette Adresse */
.ride-chip .ride-address__text{
  display:block !important;
  overflow:visible !important;
  text-overflow:clip !important;
  white-space:normal !important;
  -webkit-line-clamp:unset !important;
  -webkit-box-orient:initial !important;
  max-height:none !important;
}
.ride-chip .ride-address__name{
  display:block !important;
  font-size:.86rem !important;
  line-height:1.2 !important;
  font-weight:600 !important;
  color:#edf3ff !important;
  margin-bottom:0 !important;
}
.ride-chip .ride-address__sub{
  display:block !important;
  font-size:.82rem !important;
  line-height:1.16 !important;
  font-weight:400 !important;
  color:#ffffff !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
  max-height:none !important;
}







.recent-cancellations-panel[hidden],
.recent-cancellations-panel:empty{
  display:none !important;
}
.recent-cancellations-panel{
  margin:0 0 12px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(15,94,140,.08);
  border:1px solid rgba(15,94,140,.18);
  color:var(--text);
}
.open-panel .section-subhead{
  margin:0 0 8px;
  font-size:.78rem;
  font-weight:800;
  color:#355070;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.open-panel .board-summary--cancel{
  display:grid;
  gap:8px;
}
.open-panel .summary-block--cancel{
  display:grid;
  gap:4px;
  padding:10px 12px;
  border-radius:12px;
  background:#fff;
  border:1px solid rgba(15,94,140,.14);
  color:#183244;
}
.open-panel .summary-block--cancel span{display:block;color:#355070;font-size:.82rem}
.open-panel .summary-block--cancel small{
  display:block;
  color:#607889;
  font-size:.8rem;
  line-height:1.25;
  white-space:normal;
  overflow-wrap:anywhere;
}


/* Fahreransicht: Storno-Begründung in Alarmkarte lesbar */
.driver-step-card--alert .driver-field--dark span{
  color:#7f3127 !important;
}
.driver-step-card--alert .driver-field--dark textarea,
.driver-step-card--alert .driver-field--dark input[type="text"],
.driver-step-card--alert .driver-field--dark input[type="date"],
.driver-step-card--alert .driver-field--dark input[type="time"]{
  background:#fff !important;
  color:#183244 !important;
  border:1px solid rgba(185,35,24,.28) !important;
}
.driver-step-card--alert .driver-field--dark textarea::placeholder,
.driver-step-card--alert .driver-field--dark input::placeholder{
  color:#6b7280 !important;
}


.open-panel .summary-block--cancel strong{
  display:block;
  color:#ffffff !important;
  font-size:.9rem;
}


/* STEP5: Dashboard-Storno + Tourkachel Feinschliff */
.open-panel .summary-block--cancel{
  align-items:start;
}
.open-panel .summary-block--cancel strong{
  display:block;
  color:#183244 !important;
  font-size:.92rem;
  line-height:1.22;
  white-space:normal;
  overflow-wrap:anywhere;
}
.open-panel .summary-block--cancel span,
.open-panel .summary-block--cancel small{
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
}

body.app-shell .ride-chip .ride-address__text,
body.app-shell .ride-chip .ride-address__sub{
  display:block !important;
  overflow:visible !important;
  text-overflow:clip !important;
  -webkit-line-clamp:unset !important;
  max-height:none !important;
}
body.app-shell .ride-chip .ride-address__name{
  font-size:.78rem !important;
  line-height:1.18 !important;
  font-weight:600 !important;
  color:#d8e6f7 !important;
  margin-bottom:0 !important;
}
body.app-shell .ride-chip .ride-address__sub{
  font-size:.82rem !important;
  line-height:1.16 !important;
  color:#ffffff !important;
}
body.app-shell .ride-chip .ride-address__label{
  align-self:start;
  padding-top:1px;
}

.driver-step-card--alert .driver-alert__text{
  color:#7b2e27 !important;
}
.driver-step-card--alert .driver-field--dark textarea{
  line-height:1.4;
}


.private-fare-prep-grid{align-items:start;}
.inline-link-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;}
.stack-gap{display:grid;gap:10px;}
.page-grid.single-page{grid-template-columns:minmax(0,980px);justify-content:center;}
.admin-settings-grid .span-2{grid-column:span 2;}
.inline-status.ok{color:#0f7b37;}
.inline-status.error{color:#b42318;}

.driver-desktop-shell{max-width:1280px;width:100%;min-height:100dvh;height:100dvh}
.driver-start-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:18px;align-content:start;overflow:auto !important;padding:18px 24px 12px !important}
.driver-start-card .driver-followup-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;gap:14px}
.driver-start-card .driver-field{margin:0}
.driver-workspace{display:grid;grid-template-columns:320px minmax(0,1fr);min-height:100dvh;height:100dvh;background:#091a24;color:#eef7fb}
.driver-workspace__sidebar{position:sticky;top:0;height:100dvh;padding:26px 18px 20px;border-right:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#0d2431,#0a1d28);display:flex;flex-direction:column;gap:18px;box-sizing:border-box}
.driver-workspace__brand{font-size:1.35rem;font-weight:800}
.driver-workspace__meta{display:grid;gap:10px;padding:14px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.driver-workspace__meta div{display:grid;gap:3px}
.driver-workspace__meta span{font-size:.78rem;color:rgba(238,247,251,.7);text-transform:uppercase;letter-spacing:.05em}
.driver-workspace__meta strong{font-size:.96rem;line-height:1.2}
.driver-workspace__nav{display:grid;gap:8px}
.driver-workspace__link{display:flex;align-items:center;justify-content:flex-start;width:100%;min-height:46px;padding:11px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#eef7fb;text-decoration:none;font-weight:700;font-size:.95rem;cursor:pointer}
.driver-workspace__link.is-active{background:#1d7fa6;border-color:#1d7fa6;color:#fff}
.driver-workspace__actions{margin-top:auto;display:grid;gap:10px}
.driver-workspace__content{min-width:0;display:flex;flex-direction:column;min-height:100dvh;height:100dvh}
.driver-workspace__contentHead{padding:22px 24px 12px;border-bottom:1px solid rgba(255,255,255,.08);background:#0c2230}
.driver-workspace__frameWrap{flex:1;min-height:0;overflow:auto;padding:18px 24px 24px;box-sizing:border-box}
.driver-workspace__frame{width:100%;height:calc(100dvh - 110px);border:0;border-radius:20px;background:#102b3a;box-shadow:0 18px 40px rgba(0,0,0,.24)}
@media (max-width: 1100px){.driver-workspace{grid-template-columns:1fr}.driver-workspace__sidebar{position:static;height:auto}.driver-workspace__content{height:auto;min-height:0}.driver-workspace__frame{height:78dvh}.driver-start-grid{grid-template-columns:1fr}}


.driver-workspace{display:grid;grid-template-columns:320px minmax(0,1fr);min-height:100dvh;background:#081722;color:#eef7fb}.driver-workspace--fast{grid-template-columns:320px minmax(0,1fr)}
.driver-workspace__topBlock{display:grid;gap:8px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.driver-workspace__topLine{display:flex;flex-wrap:wrap;gap:10px 16px;font-size:.95rem;line-height:1.35}.driver-workspace__topLine strong{font-weight:800}
.driver-workspace__nav--full{align-content:start}.driver-workspace__content--fast{background:#0b2030}.driver-workspace__contentHead:empty{display:none}.driver-workspace__contentActions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.driver-workspace__contentActions .primary-button,.driver-workspace__contentActions .secondary-button{width:auto}.driver-workspace__frameWrap>.driver-step-card,.driver-workspace__frameWrap>.driver-ride-panel{max-width:none}.driver-ride-panel--menu{background:transparent;box-shadow:none;padding:0}.driver-workspace__sidebar--fast{gap:14px}.driver-workspace__actions{margin-top:auto}.driver-workspace__actions .secondary-button{width:100%}
@media (max-width: 1100px){.driver-workspace,.driver-workspace--fast{grid-template-columns:1fr}.driver-workspace__topLine{font-size:.9rem}}


/* Fahreransicht Full-HD Optimierung */
.driver-workspace--fast{
  width:min(80vw, 1820px);
  margin:0 auto;
  grid-template-columns:380px minmax(0,1fr);
}
.driver-workspace__sidebar--fast{
  padding:18px 20px 22px;
}
.driver-workspace__topBlock{
  gap:6px;
  padding:10px 12px;
}
.driver-workspace__topLine{
  gap:12px 18px;
  font-size:1rem;
}
.driver-workspace__nav--full{
  gap:10px;
}
.driver-workspace__link{
  min-height:54px;
  padding:13px 16px;
  font-size:1rem;
}
.driver-workspace__content--fast{
  min-height:100dvh;
}
.driver-workspace__frameWrap{
  overflow:auto;
  padding:24px 28px 32px;
}
.driver-ride-panel--fit,
.driver-step-card--compact{
  max-width:none;
}
.driver-ride-main--focus .driver-patient-name{
  font-size:2rem;
}
.driver-time-large--hero{
  font-size:2rem !important;
}
.driver-facts--focus strong,
.driver-facts--focus small,
.driver-summary-line strong,
.driver-summary-line span{
  font-size:1rem;
}
.driver-today-list{
  gap:14px;
}
.driver-today-item{
  padding:16px;
}
@media (max-width: 1500px){
  .driver-workspace--fast{width:min(92vw, 1600px);grid-template-columns:340px minmax(0,1fr)}
}

/* Fahreransicht: Basis-/Feierabend-Hinweise direkt bedienbar und komplette Seite scrollbar */
.driver-app,
#driverFlow{
  min-height:100dvh;
}
.driver-screen--scroll,
.driver-phone--scroll{
  min-height:100dvh;
}
.driver-phone-body--scroll{
  overflow:auto;
}
.driver-phone-actions--sticky{
  position:sticky;
  bottom:0;
  z-index:5;
  background:linear-gradient(180deg, rgba(9,18,28,0), rgba(9,18,28,.92) 28%, rgba(9,18,28,.98) 100%);
  padding-top:14px;
}
.driver-basis-note{
  display:grid;
  gap:10px;
}
.driver-basis-note__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.driver-basis-note__actions .primary-button,
.driver-basis-note__actions .secondary-button{
  width:auto;
}

/* Gesamte Fahrerarbeitsseite auf großen Geräten scrollbar und breiter */
.driver-workspace,
.driver-workspace--fast{
  min-height:100dvh;
  height:auto;
  align-items:start;
}
.driver-workspace--fast{
  width:min(88vw, 1920px);
  margin:0 auto;
  grid-template-columns:400px minmax(0,1fr);
}
.driver-workspace__sidebar,
.driver-workspace__sidebar--fast{
  position:sticky;
  top:0;
  align-self:start;
  max-height:100dvh;
  height:auto;
  overflow:auto;
  scrollbar-gutter:stable;
}
.driver-workspace__nav,
.driver-workspace__nav--full{
  overflow:visible;
}
.driver-workspace__content,
.driver-workspace__content--fast{
  min-height:100dvh;
  height:auto;
}
.driver-workspace__contentHead{
  position:sticky;
  top:0;
  z-index:4;
}
.driver-workspace__frameWrap{
  overflow:visible;
  min-height:0;
}
.driver-workspace__frameWrap,
.driver-workspace__frameWrap > *{
  max-width:none;
}
.driver-workspace__actions{
  margin-top:18px;
  padding-top:6px;
}
.driver-workspace__actions .secondary-button,
.driver-workspace__actions .primary-button{
  width:100%;
}
@media (max-width: 1500px){
  .driver-workspace--fast{
    width:min(94vw, 1700px);
    grid-template-columns:360px minmax(0,1fr);
  }
}
@media (max-width: 1100px){
  .driver-workspace--fast,
  .driver-workspace{
    width:100%;
    grid-template-columns:1fr;
  }
  .driver-workspace__sidebar,
  .driver-workspace__sidebar--fast,
  .driver-workspace__contentHead{
    position:static;
    max-height:none;
  }
  .driver-workspace__frameWrap{
    overflow:visible;
  }
}


/* v30 scroll fixes for all driver subviews */
.driver-workspace__content--fast,
.driver-workspace__content,
.driver-app,
#driverFlow {
  min-height:100dvh;
  height:auto;
}
.driver-workspace__frameWrap {
  overflow:auto !important;
  max-height:calc(100dvh - 110px);
  padding-right:10px;
}
.driver-workspace__nav,
.driver-workspace__nav--full,
.driver-workspace__sidebar,
.driver-workspace__sidebar--fast {
  overflow:auto !important;
}
.driver-step-card,
.driver-ride-panel,
.driver-today-list,
.driver-menu-content-card,
.driver-phone-body {
  max-width:none;
}
.driver-phone-body--scroll,
.driver-phone-body--embedded {
  overflow:auto !important;
}
.driver-workspace__contentActions {
  position:sticky;
  bottom:0;
  background:linear-gradient(180deg, rgba(11,32,48,0), rgba(11,32,48,.9) 30%, rgba(11,32,48,.98) 100%);
  padding-top:12px;
  z-index:4;
}
@media (max-width: 1100px){
  .driver-workspace__frameWrap { max-height:none; }
}


/* v32 Fahreransicht: Aktionsleiste unten fixieren und Fotobuttons */
.driver-workspace__frameWrap{
  display:flex;
  flex-direction:column;
}
.driver-workspace__contentActions{
  margin-top:auto;
  position:sticky;
  bottom:0;
  z-index:6;
  padding:14px 0 max(12px, env(safe-area-inset-bottom));
}
.driver-workspace__contentActions .primary-button,
.driver-workspace__contentActions .secondary-button{
  box-shadow:0 10px 24px rgba(0,0,0,.18);
}
.driver-followup-input--hidden{
  position:absolute !important;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.driver-photo-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:8px;
}
@media (max-width: 800px){
  .driver-photo-actions{grid-template-columns:1fr;}
}


/* v33 Fahreransicht: robust scrollen auf allen Unterseiten */
html, body, .driver-body, .driver-app-shell, .driver-app-shell--dark, .driver-app {
  min-height: 100dvh;
  height: auto;
  overflow: auto;
}
.driver-workspace__frameWrap{
  align-items: stretch;
  overflow: auto !important;
  padding-bottom: 120px;
  -webkit-overflow-scrolling: touch;
}
.driver-workspace__sidebar,
.driver-workspace__sidebar--fast,
.driver-workspace__content,
.driver-workspace__content--fast{
  min-height: 0;
}
.driver-step-card,
.driver-ride-panel,
.driver-followup-card,
.driver-today-list,
.driver-phone-body{
  overflow: visible;
}
.driver-today-list{
  max-height: none;
}
.driver-workspace__contentActions{
  margin-top: 16px;
}

/* v43: untere Navigations-/Aktionsleiste in Fahrten wieder sauber unten andocken */
.driver-workspace--fast {
  min-height: 100dvh;
  height: 100dvh;
}
.driver-workspace__content--fast {
  display: grid;
  grid-template-rows: auto 1fr;
  min-height: 100dvh;
  height: 100dvh;
  overflow: hidden;
}
.driver-workspace__frameWrap--fahrten {
  display: flex !important;
  flex-direction: column;
  min-height: 0;
  height: 100%;
  overflow: hidden !important;
  padding: 0 !important;
}
.driver-fahrten-shell {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
.driver-fahrten-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 24px 28px 24px;
}
.driver-fahrten-actions {
  flex: 0 0 auto;
  margin-top: auto !important;
  padding: 14px 28px calc(14px + env(safe-area-inset-bottom));
  background: linear-gradient(180deg, rgba(11,32,48,0), rgba(11,32,48,.94) 24%, rgba(11,32,48,.99) 100%);
  border-top: 1px solid rgba(255,255,255,.08);
  z-index: 12;
}
.driver-fahrten-actions .driver-workspace__contentActions {
  margin-top: 0;
}
@media (max-width: 1100px) {
  .driver-workspace--fast,
  .driver-workspace__content--fast {
    height: auto;
    min-height: 100dvh;
  }
  .driver-workspace__frameWrap--fahrten {
    min-height: calc(100dvh - 140px);
  }
  .driver-fahrten-scroll {
    padding: 16px 16px 16px;
  }
  .driver-fahrten-actions {
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
  }
}


/* v45: Fahrten-Aktionsleiste exakt auf unteren Bildschirmrand des rechten Bereichs setzen */
body .driver-workspace.driver-workspace--fast{
  height:100dvh !important;
  min-height:100dvh !important;
  align-items:stretch !important;
}
body .driver-workspace__sidebar.driver-workspace__sidebar--fast{
  display:flex !important;
  flex-direction:column !important;
  height:100dvh !important;
  max-height:100dvh !important;
  overflow:auto !important;
}
body .driver-workspace__content.driver-workspace__content--fast{
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) !important;
  height:100dvh !important;
  min-height:100dvh !important;
  max-height:100dvh !important;
  overflow:hidden !important;
}
body .driver-workspace__frameWrap.driver-workspace__frameWrap--fahrten{
  display:block !important;
  height:100% !important;
  min-height:0 !important;
  overflow:hidden !important;
  padding:0 !important;
}
body .driver-workspace__frameWrap--fahrten .driver-fahrten-shell{
  display:grid !important;
  grid-template-rows:minmax(0,1fr) auto !important;
  height:100% !important;
  min-height:0 !important;
}
body .driver-workspace__frameWrap--fahrten .driver-fahrten-scroll{
  min-height:0 !important;
  overflow:auto !important;
  padding:24px 28px 120px !important;
  -webkit-overflow-scrolling:touch;
}
body .driver-workspace__frameWrap--fahrten .driver-fahrten-actions{
  position:sticky !important;
  bottom:0 !important;
  left:0 !important;
  right:0 !important;
  z-index:20 !important;
  margin-top:0 !important;
  padding:14px 28px calc(14px + env(safe-area-inset-bottom)) !important;
  background:linear-gradient(180deg, rgba(11,32,48,0), rgba(11,32,48,.94) 24%, rgba(11,32,48,.99) 100%) !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
}
@media (max-width:1100px){
  body .driver-workspace.driver-workspace--fast,
  body .driver-workspace__sidebar.driver-workspace__sidebar--fast,
  body .driver-workspace__content.driver-workspace__content--fast{
    height:100dvh !important;
    max-height:100dvh !important;
  }
  body .driver-workspace__frameWrap--fahrten .driver-fahrten-scroll{
    padding:16px 16px 110px !important;
  }
  body .driver-workspace__frameWrap--fahrten .driver-fahrten-actions{
    padding:12px 16px calc(12px + env(safe-area-inset-bottom)) !important;
  }
}


/* v46: rechte Aktionsleiste exakt unten wie "Schicht beenden" */
@media (min-width: 1101px){
  body .driver-workspace.driver-workspace--fast{
    display:grid !important;
    grid-template-columns:400px minmax(0,1fr) !important;
    width:min(88vw, 1920px) !important;
    min-height:100dvh !important;
    height:100dvh !important;
    align-items:stretch !important;
  }
  body .driver-workspace__sidebar.driver-workspace__sidebar--fast{
    position:sticky !important;
    top:0 !important;
    display:flex !important;
    flex-direction:column !important;
    min-height:100dvh !important;
    height:100dvh !important;
    max-height:100dvh !important;
    overflow:auto !important;
  }
  body .driver-workspace__content.driver-workspace__content--fast{
    display:flex !important;
    flex-direction:column !important;
    min-height:100dvh !important;
    height:100dvh !important;
    max-height:100dvh !important;
    overflow:hidden !important;
  }
  body .driver-workspace__contentHead{
    flex:0 0 auto !important;
  }
  body .driver-workspace__frameWrap.driver-workspace__frameWrap--fahrten{
    flex:1 1 auto !important;
    min-height:0 !important;
    height:auto !important;
    display:flex !important;
    flex-direction:column !important;
    overflow:hidden !important;
    padding:0 !important;
  }
  body .driver-workspace__frameWrap--fahrten .driver-fahrten-shell{
    flex:1 1 auto !important;
    display:flex !important;
    flex-direction:column !important;
    min-height:0 !important;
    height:100% !important;
  }
  body .driver-workspace__frameWrap--fahrten .driver-fahrten-scroll{
    flex:1 1 auto !important;
    min-height:0 !important;
    overflow:auto !important;
    padding:24px 28px 24px !important;
    -webkit-overflow-scrolling:touch !important;
  }
  body .driver-workspace__frameWrap--fahrten .driver-fahrten-actions{
    flex:0 0 auto !important;
    position:relative !important;
    bottom:auto !important;
    margin-top:auto !important;
    padding:14px 28px 20px !important;
    background:linear-gradient(180deg, rgba(11,32,48,0), rgba(11,32,48,.94) 24%, rgba(11,32,48,.99) 100%) !important;
    border-top:1px solid rgba(255,255,255,.08) !important;
    z-index:12 !important;
  }
}

/* v47: Fahreransicht Fahrten rechts wirklich bis unten spannen wie linke Sidebar */
@media (min-width: 1101px){
  html, body{
    height:100%;
  }
  body .driver-workspace.driver-workspace--fast{
    display:grid !important;
    grid-template-columns:400px minmax(0,1fr) !important;
    width:min(88vw, 1920px) !important;
    height:100dvh !important;
    min-height:100dvh !important;
    max-height:100dvh !important;
    margin:0 auto !important;
    align-items:stretch !important;
    overflow:hidden !important;
  }
  body .driver-workspace__sidebar.driver-workspace__sidebar--fast,
  body .driver-workspace__content.driver-workspace__content--fast{
    height:100dvh !important;
    min-height:100dvh !important;
    max-height:100dvh !important;
  }
  body .driver-workspace__sidebar.driver-workspace__sidebar--fast{
    display:flex !important;
    flex-direction:column !important;
    overflow:auto !important;
    position:sticky !important;
    top:0 !important;
    align-self:stretch !important;
  }
  body .driver-workspace__content.driver-workspace__content--fast{
    display:grid !important;
    grid-template-rows:auto minmax(0,1fr) !important;
    overflow:hidden !important;
  }
  body .driver-workspace__frameWrap.driver-workspace__frameWrap--fahrten{
    display:block !important;
    height:100% !important;
    min-height:0 !important;
    overflow:hidden !important;
    padding:0 !important;
  }
  body .driver-workspace__frameWrap--fahrten .driver-fahrten-shell{
    display:grid !important;
    grid-template-rows:minmax(0,1fr) auto !important;
    height:100% !important;
    min-height:0 !important;
  }
  body .driver-workspace__frameWrap--fahrten .driver-fahrten-scroll{
    overflow:auto !important;
    min-height:0 !important;
    padding:24px 28px 24px !important;
    -webkit-overflow-scrolling:touch !important;
  }
  body .driver-workspace__frameWrap--fahrten .driver-fahrten-actions{
    align-self:stretch !important;
    margin:0 !important;
    padding:14px 28px 20px !important;
    background:linear-gradient(180deg, rgba(11,32,48,0), rgba(11,32,48,.94) 24%, rgba(11,32,48,.99) 100%) !important;
    border-top:1px solid rgba(255,255,255,.08) !important;
    position:static !important;
    z-index:12 !important;
  }
}


/* v48: Fahrten-Aktionsleiste als echter Footer des rechten Bereichs */
body .driver-workspace__content.driver-workspace__content--fast{
  display:flex !important;
  flex-direction:column !important;
  min-height:100dvh !important;
  height:100dvh !important;
  max-height:100dvh !important;
  overflow:hidden !important;
}
body .driver-workspace__frameWrap.driver-workspace__frameWrap--fahrten{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow:hidden !important;
  display:block !important;
}
body .driver-workspace__frameWrap--fahrten .driver-fahrten-shell{
  height:100% !important;
  min-height:0 !important;
}
body .driver-workspace__frameWrap--fahrten .driver-fahrten-scroll{
  height:100% !important;
  min-height:0 !important;
  overflow:auto !important;
  padding:24px 28px !important;
  padding-bottom:24px !important;
  -webkit-overflow-scrolling:touch;
}
body .driver-workspace__bottomBar{
  flex:0 0 auto !important;
  margin-top:auto !important;
  padding:14px 28px calc(14px + env(safe-area-inset-bottom)) !important;
  background:rgba(5,25,39,.98) !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
}
body .driver-workspace__bottomBar .driver-workspace__contentActions{
  margin:0 !important;
}
@media (max-width:1100px){
  body .driver-workspace__frameWrap--fahrten .driver-fahrten-scroll{ padding:16px !important; }
  body .driver-workspace__bottomBar{ padding:12px 16px calc(12px + env(safe-area-inset-bottom)) !important; }
}


/* v50: Fahrten-Aktionsleiste nur im unteren Footer des rechten Bereichs */
body .driver-workspace__frameWrap--fahrten .driver-fahrten-actions{display:none !important;}
body .driver-workspace__content.driver-workspace__content--fast{display:flex !important;flex-direction:column !important;min-height:100dvh !important;height:100dvh !important;max-height:100dvh !important;overflow:hidden !important;}
body .driver-workspace__frameWrap.driver-workspace__frameWrap--fahrten{flex:1 1 auto !important;min-height:0 !important;overflow:hidden !important;display:block !important;}
body .driver-workspace__frameWrap--fahrten .driver-fahrten-shell{height:100% !important;min-height:0 !important;display:block !important;}
body .driver-workspace__frameWrap--fahrten .driver-fahrten-scroll{height:100% !important;min-height:0 !important;overflow:auto !important;padding:24px 28px !important;-webkit-overflow-scrolling:touch !important;}
body .driver-workspace__bottomBar{flex:0 0 auto !important;margin-top:auto !important;padding:14px 28px calc(14px + env(safe-area-inset-bottom)) !important;background:transparent !important;border-top:none !important;position:relative !important;z-index:30 !important;box-shadow:none !important;}
body .driver-workspace__bottomBar .driver-workspace__contentActions{margin:0 !important;}
@media (max-width:1100px){body .driver-workspace__frameWrap--fahrten .driver-fahrten-scroll{padding:16px !important;}body .driver-workspace__bottomBar{padding:12px 16px calc(12px + env(safe-area-inset-bottom)) !important;}}

body.dashboard-shell{
  padding-bottom:84px;
}
@media (max-width: 900px){
  body.dashboard-shell{
    padding-bottom:92px;
  }
}

.compact-field--hint{position:relative;}
.compact-field__label{cursor:help; text-decoration: underline dotted rgba(255,255,255,.22); text-underline-offset: 2px;}
.compact-field--hint:hover .compact-field__label{color:#fff; text-decoration-color: rgba(255,255,255,.5);}


.module-overview-clean{display:grid;gap:24px}
.module-quick-section{padding:18px 20px;border:1px solid rgba(39,76,119,.14);border-radius:24px;background:transparent;box-shadow:none}
.module-grid--quick{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.module-card--quick{background:transparent;border:1px solid rgba(255,255,255,.08);box-shadow:none}
.module-card--quick:hover{box-shadow:none;background:rgba(255,255,255,.03)}
.module-card--quick strong{font-size:1.08rem}
.module-card--placeholder{background:rgba(246,249,252,.9);border-style:dashed;color:#5f6f83;cursor:default;box-shadow:none}
.module-card--placeholder:hover{transform:none;box-shadow:none}
.module-card--placeholder strong{color:#52627a}
.module-card--placeholder em{font-style:normal;display:inline-flex;align-self:flex-start;padding:6px 10px;border-radius:999px;background:#edf4f8;color:#5d728d;font-size:.82rem}


/* Modules page layout refinement */
.module-overview-clean{
  width:min(75vw, 1280px);
  max-width:min(75vw, 1280px);
  min-width:min(100%, 760px);
  margin:0 auto 110px;
}
@media (max-width: 1200px){
  .module-overview-clean{
    width:min(92vw, 980px);
    max-width:min(92vw, 980px);
    min-width:0;
  }
}
.module-quick-section .section-head{
  background:transparent;
  color:inherit;
  border-color:transparent;
}
.module-quick-section .section-head h2,
.module-quick-section .section-head p{color:inherit}

/* richer module dropdown */
.global-nav .nav-dropdown-menu.nav-dropdown-menu--modules{
  min-width:300px;
  max-width:340px;
  max-height:min(70vh, 760px);
  overflow:visible;
  padding:10px;
}
.global-nav .nav-dropdown-group--flyout{
  position:relative;
}
.global-nav .nav-dropdown-group--flyout::after{
  content:'';
  position:absolute;
  top:-6px;
  right:-18px;
  width:22px;
  height:calc(100% + 12px);
}
.global-nav .nav-dropdown-group--flyout + .nav-dropdown-group--flyout{
  margin-top:8px;
}
.global-nav .nav-dropdown-group-trigger{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:42px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.07);
  background:rgba(255,255,255,.03);
  color:#eef7ff;
  font-weight:700;
}
.global-nav .nav-dropdown-group-trigger::after{
  content:'›';
  font-size:1rem;
  opacity:.8;
}
.global-nav .nav-dropdown-group--flyout:hover > .nav-dropdown-group-trigger,
.global-nav .nav-dropdown-group--flyout:focus-within > .nav-dropdown-group-trigger,
.global-nav .nav-dropdown-group-trigger.active{
  background:rgba(124,196,255,.11);
  border-color:rgba(124,196,255,.24);
}
.global-nav .nav-dropdown-subitems--flyout{
  position:absolute;
  left:calc(100% - 2px);
  bottom:-6px;
  top:auto;
  min-width:290px;
  max-width:360px;
  display:none;
  gap:6px;
  z-index:60;
  padding:10px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(9,18,28,.98);
  box-shadow:0 16px 36px rgba(0,0,0,.32);
}
.global-nav .nav-dropdown-group--flyout:hover > .nav-dropdown-subitems--flyout,
.global-nav .nav-dropdown-group--flyout:focus-within > .nav-dropdown-subitems--flyout,
.global-nav .nav-dropdown-group--flyout.active > .nav-dropdown-subitems--flyout{
  display:grid;
}
.global-nav .nav-dropdown-subitems--flyout .nav-dropdown-link{
  margin:0;
}
.global-nav .nav-dropdown-link.is-disabled{
  opacity:.72;
  cursor:default;
}
@media (max-width: 1200px){
  .global-nav .nav-dropdown-menu.nav-dropdown-menu--modules{
    min-width:280px;
    max-width:300px;
  }
  .global-nav .nav-dropdown-subitems--flyout{
    left:auto;
    right:calc(100% - 2px);
  }
}


/* Tourkachel: Einrichtung und Adresse ohne Zusatzabstand */
.ride-chip .ride-address__text,
body.app-shell .ride-chip .ride-address__text{
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
  row-gap:0 !important;
}
.ride-chip .ride-address__name,
.ride-chip .ride-address__sub,
body.app-shell .ride-chip .ride-address__name,
body.app-shell .ride-chip .ride-address__sub{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
}
.ride-chip .ride-address__name,
body.app-shell .ride-chip .ride-address__name{
  line-height:1.08 !important;
}
.ride-chip .ride-address__sub,
body.app-shell .ride-chip .ride-address__sub{
  line-height:1.08 !important;
}


/* Security center */
.security-main{width:min(1100px,92vw);margin:0 auto 96px;}
.security-callout{padding:14px 16px;border-radius:14px;background:rgba(12,34,64,.08);margin-bottom:14px;}
.security-steps{margin:0;padding-left:20px;display:grid;gap:8px;}
.security-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:14px;}
.security-meta-grid code{display:block;margin-top:6px;word-break:break-all;white-space:pre-wrap;}
.security-check{display:grid;gap:4px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.04);margin-bottom:10px;}
.security-check--ok{border-left:4px solid #2bb673;}
.security-check--warn{border-left:4px solid #f0a11a;}

.page-state{display:grid;gap:6px;padding:12px 14px;border-radius:14px;border:1px solid rgba(22,58,92,.12);background:#f7fafc;color:#17324a}
.page-state strong{font-size:14px;line-height:1.2}
.page-state span{font-size:13px;line-height:1.35;color:#4f6479}
.page-state--loading{background:#f4f8fb}
.page-state--empty{background:#f8fafc}
.page-state--error{background:#fff5f5;border-color:rgba(185,28,28,.18)}


.list-item.is-selected{
  outline:2px solid rgba(23,50,74,.18);
  background:rgba(23,50,74,.06);
}


/* tkba362 Fahrzeugkopf aufgeräumt */
body.app-shell .vehicle-head-core{gap:6px}
body.app-shell .vehicle-crew-summary{
  display:grid;
  gap:4px;
  margin-top:6px;
}
body.app-shell .vehicle-crew-line{
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  gap:4px;
  align-items:start;
  min-width:0;
}
body.app-shell .vehicle-crew-label{
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#7f93aa;
}
body.app-shell .vehicle-crew-value{
  min-width:0;
  font-size:.8rem;
  color:#e7eef8;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  word-break:normal;
  overflow-wrap:anywhere;
  line-height:1.15;
}
body.app-shell .vehicle-roster{
  gap:8px;
  margin-top:6px;
}
body.app-shell .vehicle-support-meta{
  display:grid;
  gap:8px;
  margin-top:10px;
  min-height:56px;
}
body.app-shell .vehicle-head-drop{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
}
body.app-shell .vehicle-tail-meta{
  font-size:.72rem;
  line-height:1.25;
  color:#8ea2b8;
}
body.app-shell .vehicle-card-toolbar--sticky{
  position:relative;
  z-index:4;
  margin-top:8px;
  padding-top:6px;
  padding-bottom:0;
  background:none;
  border-top:none;
}
body.app-shell .vehicle-card-toolbar--head{
  margin-top:8px;
}
body.app-shell .vehicle-card-toolbar--head .mini-lock-all{border-radius:10px;}
body.app-shell .vehicle-card-toolbar--sticky .mini-lock-all{
  width:100%;
  min-height:30px;
  padding:4px 10px;
  font-size:.74rem;
}

@media (max-width: 1280px){
  body.app-shell .vehicle-head-main{grid-template-columns:1fr;gap:8px;}
  body.app-shell .vehicle-head-right{gap:4px;}
}


/* TKBA378: sticky shift heads slightly lower so the status strip remains visible below the top navigation */
body.app-shell .vehicle-head-wrap{
  top:calc(var(--kba-topbar-offset) + 32px);
}
body.app-shell .vehicle-head-wrap::before{
  left:0;
  right:0;
  top:0;
  height:4px;
  border-radius:16px 16px 0 0;
}


.driver-status-panel{display:grid;gap:16px;padding:20px 22px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.14)}
.driver-status-panel__head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.driver-status-chip{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:999px;font-size:.82rem;font-weight:800;letter-spacing:.02em;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#eef7fb;white-space:nowrap}
.driver-status-chip.is-active{background:rgba(44,140,90,.22);border-color:rgba(98,198,143,.35);color:#dff8e8}
.driver-status-chip.is-idle{background:rgba(255,255,255,.06);color:rgba(238,247,251,.92)}
.driver-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.driver-status-item{display:grid;gap:6px;padding:16px 18px;border-radius:20px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);min-height:92px;align-content:start}
.driver-status-item span{font-size:.77rem;line-height:1.2;text-transform:uppercase;letter-spacing:.05em;color:rgba(238,247,251,.62)}
.driver-status-item strong{font-size:1.08rem;line-height:1.28;color:#eef7fb;font-weight:800}
.driver-status-panel__foot{font-size:.9rem;color:rgba(238,247,251,.78)}
@media (max-width: 1200px){.driver-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 720px){.driver-status-panel{padding:16px 18px}.driver-status-panel__head{flex-direction:column;align-items:flex-start}.driver-status-grid{grid-template-columns:1fr}}


/* TKBA494: Full-HD Eingangsseite im Dashboard-Stil */
.driver-desktop-shell{max-width:1680px}
.driver-start-grid{grid-template-columns:minmax(0,1.3fr) minmax(420px,.7fr);gap:22px;padding:22px 28px 18px !important}
.driver-phone-head--menu{padding:18px 28px 14px;border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02))}
.driver-brand{font-size:1.28rem;font-weight:900;letter-spacing:.01em;color:#f8fbff}
.driver-subline{max-width:980px;font-size:.96rem;line-height:1.45;color:rgba(238,247,251,.8)}
.driver-start-card{position:relative;overflow:hidden}
.driver-start-card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,rgba(96,165,250,.9),rgba(52,211,153,.75));opacity:.9}
.driver-start-card--role::before{background:linear-gradient(90deg,rgba(59,130,246,.88),rgba(14,165,233,.72))}
.driver-start-card--actions::before{background:linear-gradient(90deg,rgba(245,158,11,.92),rgba(249,115,22,.76))}
.driver-stage-head{font-size:1.03rem;font-weight:900;letter-spacing:.01em;color:#f8fbff}
.driver-card-note{margin:8px 0 14px;font-size:.9rem;line-height:1.45;color:rgba(238,247,251,.74)}
.driver-start-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.driver-start-meta__item{display:grid;gap:4px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09)}
.driver-start-meta__item span{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:rgba(238,247,251,.58)}
.driver-start-meta__item strong{font-size:1rem;font-weight:800;color:#f8fbff;line-height:1.25}
.driver-status-panel{padding:24px 24px 20px;border-radius:30px;background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.16);box-shadow:0 18px 38px rgba(0,0,0,.18)}
.driver-status-grid{gap:16px}
.driver-status-item{min-height:102px;padding:18px 20px;border-radius:22px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.driver-status-item strong{font-size:1.12rem}
.driver-phone-actions--role .primary-button,.driver-phone-actions--role .secondary-button,.driver-phone-actions--actionbar .primary-button,.driver-phone-actions--actionbar .secondary-button{min-height:52px;border-radius:16px;font-size:.98rem;font-weight:800}
.driver-field--dark select{min-height:54px;border-radius:16px;font-weight:700}
.driver-field--dark span{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:rgba(238,247,251,.72)}
@media (max-width:1400px){.driver-start-grid{grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr)}}
@media (max-width:1100px){.driver-start-grid{grid-template-columns:1fr}.driver-phone-head--menu{padding:16px 18px 12px}.driver-start-meta{grid-template-columns:1fr 1fr}}
@media (max-width:720px){.driver-start-grid{padding:12px 12px 10px !important;gap:12px}.driver-start-meta{grid-template-columns:1fr}.driver-phone-actions--role,.driver-phone-actions--actionbar{grid-template-columns:1fr !important}}


.driver-confirm-backdrop{position:fixed;inset:0;background:rgba(5,10,18,.72);display:flex;align-items:center;justify-content:center;padding:24px;z-index:9999;backdrop-filter:blur(4px);}
.driver-confirm-modal{width:min(680px,100%);background:#111827;border:1px solid rgba(148,163,184,.22);border-radius:22px;box-shadow:0 28px 80px rgba(0,0,0,.45);padding:24px;display:grid;gap:18px;}
.driver-confirm-modal__head{display:grid;gap:10px;}
.driver-confirm-modal__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
@media (max-width: 720px){.driver-confirm-modal__actions{grid-template-columns:1fr;}}


.driver-workflow-card{border:1px solid rgba(255,255,255,.10)}
.driver-workflow-card__title{font-size:1rem;font-weight:800;color:#fff;margin:4px 0 8px}
.driver-workflow-card--ok{background:linear-gradient(180deg,rgba(36,92,54,.28),rgba(15,28,43,.94));border-color:rgba(113,193,135,.32)}
.driver-workflow-card--warn{background:linear-gradient(180deg,rgba(217,119,6,.24),rgba(15,28,43,.94));border-color:rgba(240,180,90,.30)}
.driver-workflow-card--idle{background:linear-gradient(180deg,rgba(39,76,119,.18),rgba(15,28,43,.94));border-color:rgba(133,174,216,.20)}


/* tkba497: stronger lock and full-hd clarity on team login page */
.driver-start-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px;flex-wrap:wrap}
.driver-card-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(29,127,166,.16);border:1px solid rgba(29,127,166,.28);color:#c7ebfb;font-size:.78rem;font-weight:700;letter-spacing:.01em}
.driver-section-meta{margin:8px 0 0;padding:10px 12px;border-radius:14px;font-size:.92rem;line-height:1.45;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#d7ecf6}
.driver-section-meta--warn{background:rgba(251,191,36,.12);border-color:rgba(251,191,36,.28);color:#fde68a}
.driver-section-meta--info{background:rgba(59,130,246,.12);border-color:rgba(96,165,250,.25);color:#dbeafe}
.driver-lock-summary{grid-column:1 / -1}
.driver-lock-summary__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.driver-lock-summary__item{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);display:grid;gap:6px}
.driver-lock-summary__item span{font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:rgba(238,247,251,.7)}
.driver-lock-summary__item strong{font-size:1.75rem;line-height:1;font-weight:800;color:#fff}
.driver-lock-summary__item small{font-size:.88rem;line-height:1.45;color:#d8ebf4}
.driver-start-card select:disabled{opacity:.78;cursor:not-allowed;border-color:rgba(251,191,36,.28);box-shadow:inset 0 0 0 1px rgba(251,191,36,.12)}
.driver-start-card option:disabled{color:#9fb8c6}
.driver-start-card .primary-button:disabled,.driver-start-card .secondary-button:disabled{opacity:.62;filter:saturate(.75)}
@media (max-width: 1300px){.driver-lock-summary__grid{grid-template-columns:1fr}}


.driver-current-context{grid-column:1 / -1;border:1px solid rgba(110,184,255,.18);background:linear-gradient(180deg,rgba(29,78,216,.16),rgba(15,28,43,.94))}
.driver-current-context__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:10px 0 12px}
.driver-current-context__item{padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);display:grid;gap:4px}
.driver-current-context__item span{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:rgba(238,247,251,.68)}
.driver-current-context__item strong{font-size:1rem;font-weight:800;color:#fff}
.driver-lock-summary__list{display:grid;gap:8px;margin-top:6px}
.driver-lock-summary__list-item{padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);font-size:.85rem;line-height:1.35;color:#eef7fb}
.driver-lock-summary__list-empty{margin-top:6px;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.03);border:1px dashed rgba(255,255,255,.12);font-size:.84rem;color:rgba(238,247,251,.68)}
@media (max-width: 1100px){.driver-current-context__grid{grid-template-columns:1fr}}


.driver-readiness-strip__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px}
.driver-readiness-strip__item{padding:14px 16px;border-radius:16px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);display:flex;flex-direction:column;gap:6px}
.driver-readiness-strip__item span{font-size:12px;letter-spacing:.04em;text-transform:uppercase;opacity:.72}
.driver-readiness-strip__item strong{font-size:17px;line-height:1.25}
.driver-readiness-strip__item--ok{border-color:rgba(74,222,128,.28);background:rgba(74,222,128,.08)}
.driver-readiness-strip__item--warn{border-color:rgba(250,204,21,.26);background:rgba(250,204,21,.08)}
.driver-readiness-strip__item--idle{border-color:rgba(148,163,184,.2);background:rgba(255,255,255,.03)}
@media (max-width: 1200px){.driver-readiness-strip__grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width: 700px){.driver-readiness-strip__grid{grid-template-columns:1fr;}}


.driver-top-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;position:sticky;top:12px;z-index:12;padding:14px 16px;border-radius:22px;background:rgba(10,18,31,.86);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 36px rgba(0,0,0,.2)}
@media (max-width:900px){.driver-top-actions{grid-template-columns:1fr;position:static}}

/* tkba504: Startseiten-Buttons optisch an Dashboard angleichen */
.driver-top-actions{
  position:static;
  top:auto;
  z-index:auto;
  padding:0;
  border:0;
  background:transparent;
  backdrop-filter:none;
  box-shadow:none;
}
.driver-top-actions .primary-button,
.driver-top-actions .secondary-button,
.driver-start-card .primary-button,
.driver-start-card .secondary-button{
  min-height:54px;
  border-radius:16px;
  font-weight:800;
  box-shadow:none;
}
.driver-top-actions .primary-button,
.driver-start-card .primary-button{
  background:linear-gradient(135deg,#355e95,#274c77);
  color:#eef7fb;
  border:1px solid rgba(140,175,219,.22);
}
.driver-top-actions .primary-button:hover,
.driver-start-card .primary-button:hover{
  filter:brightness(1.04);
}
.driver-top-actions .secondary-button,
.driver-start-card .secondary-button{
  background:rgba(255,255,255,.06);
  color:#eef7fb;
  border:1px solid rgba(255,255,255,.12);
}
.driver-top-actions .primary-button:disabled,
.driver-top-actions .secondary-button:disabled,
.driver-start-card .primary-button:disabled,
.driver-start-card .secondary-button:disabled{
  opacity:.58;
  filter:none;
}


/* TKBA505: entfernte Fahrt in Desktop-Optik statt Handykarte */
.driver-removed-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);
  gap:22px;
  align-items:start;
  padding:22px 28px 18px !important;
}
.driver-removed-card,
.driver-removed-sidecard{
  border-radius:24px;
  box-shadow:0 18px 38px rgba(0,0,0,.18);
}
.driver-removed-card{
  position:relative;
  overflow:hidden;
  padding:26px 28px;
}
.driver-removed-card::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:4px;
  background:linear-gradient(90deg,rgba(245,158,11,.95),rgba(239,68,68,.78));
}
.driver-removed-card__eyebrow{
  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  border-radius:999px;
  margin-bottom:12px;
  background:rgba(251,191,36,.12);
  border:1px solid rgba(251,191,36,.28);
  color:#fde68a;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.driver-removed-card__meta{
  margin-top:16px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:10px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  color:#f8fbff;
  font-size:1rem;
  font-weight:800;
}
.driver-removed-sidecard{
  min-height:100%;
}
.driver-removed-actions{
  padding:0 28px 24px;
}
.driver-removed-actions .primary-button{
  max-width:420px;
}
@media (max-width: 1100px){
  .driver-removed-layout{
    grid-template-columns:1fr;
    padding:16px 18px 12px !important;
    gap:14px;
  }
  .driver-removed-card{
    padding:22px 20px;
  }
  .driver-removed-actions{
    padding:0 18px 18px;
  }
  .driver-removed-actions .primary-button{
    max-width:none;
  }
}


.driver-removed-minimal-wrap{
  min-height:calc(100vh - 120px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:32px 20px;
}
.driver-removed-minimal-card{
  width:min(680px, 100%);
  text-align:center;
  gap:18px;
  padding:30px 28px;
}
.driver-removed-minimal-card .driver-alert__title,
.driver-removed-minimal-card .driver-alert__text,
.driver-removed-minimal-card .driver-removed-card__meta{
  text-align:center;
}
.driver-removed-minimal-actions{
  display:flex;
  justify-content:center;
  margin-top:6px;
}
.driver-removed-minimal-actions .primary-button{
  min-width:220px;
}
@media (max-width: 700px){
  .driver-removed-minimal-wrap{
    min-height:calc(100vh - 80px);
    padding:20px 14px;
  }
  .driver-removed-minimal-card{
    padding:24px 18px;
  }
  .driver-removed-minimal-actions .primary-button{
    min-width:0;
    width:100%;
  }
}


.worktime-layout{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:18px;padding:18px;align-items:start}
.worktime-sidebar{position:sticky;top:18px}
.worktime-content{display:grid;gap:18px}
.worktime-driver-item{width:100%;text-align:left;border:1px solid rgba(18,61,102,.12);border-radius:18px;background:#fff;padding:14px 16px;display:grid;gap:6px;cursor:pointer}
.worktime-driver-item.is-active{border-color:#123d66;box-shadow:0 0 0 2px rgba(18,61,102,.12)}
.worktime-month-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}
.worktime-month-card{border:1px solid rgba(18,61,102,.12);border-radius:20px;background:#fff;padding:16px;display:grid;gap:8px;text-align:left;cursor:pointer}
.worktime-month-card.is-active{border-color:#123d66;background:rgba(18,61,102,.04);box-shadow:0 0 0 2px rgba(18,61,102,.08)}
.worktime-table{width:100%;border-collapse:collapse}
.worktime-table th,.worktime-table td{padding:12px 10px;border-bottom:1px solid rgba(18,61,102,.1);text-align:left;vertical-align:top}
.worktime-table th{font-size:.84rem;text-transform:uppercase;letter-spacing:.04em;color:#4f6480}
@media (max-width: 1080px){.worktime-layout{grid-template-columns:1fr}.worktime-sidebar{position:static}}


.worktime-rules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:10px}
.worktime-rules-grid--inputs{margin-top:16px}
.rule-check-card{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border:1px solid rgba(18,61,102,.12);border-radius:18px;background:#f8fbff;min-height:72px}
.module-card--static{cursor:default}
@media (max-width: 780px){.rule-check-card{min-height:auto}}


/* dashboard quick access */
.dashboard-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 24px 14px}
.dashboard-shortcut-card{display:grid;gap:6px;padding:16px 18px;border-radius:20px;text-decoration:none;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,250,252,.96));border:1px solid rgba(39,76,119,.14);box-shadow:0 10px 28px rgba(31,41,55,.08);color:#18324a;transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease}
.dashboard-shortcut-card strong{font-size:1.02rem;color:#22486f}
.dashboard-shortcut-card span{color:#58697f;line-height:1.4}
.dashboard-shortcut-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(31,41,55,.12);border-color:rgba(39,76,119,.28)}
body.app-shell .dashboard-shortcut-card, body.app-theme .dashboard-shortcut-card{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,250,252,.98));color:#18324a}
@media (max-width: 980px){.dashboard-shortcuts{grid-template-columns:1fr;padding:0 14px 12px}}


.worktime-net-summary{margin-top:18px;padding:18px 22px;border-radius:22px;border:1px solid rgba(18,61,102,.12);background:linear-gradient(180deg, rgba(18,61,102,.06), rgba(18,61,102,.02));display:grid;gap:6px;justify-items:center;text-align:center}
.worktime-net-summary__label{font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;color:#4f6480;font-weight:800}
.worktime-net-summary strong{font-size:2rem;line-height:1;color:#123d66}
.worktime-net-summary__meta{color:#5f728a;font-size:.92rem}
.worktime-layout--compact{grid-template-columns:minmax(220px,280px) minmax(0,1fr)}
.worktime-sidebar-head{display:grid;gap:10px}
.worktime-driver-compact-list{display:grid;grid-template-columns:1fr;gap:10px}
.worktime-driver-pill{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:14px;border:1px solid rgba(18,61,102,.12);background:#fff;text-align:left;cursor:pointer;font-weight:700;color:#123d66}
.worktime-driver-pill.is-active{border-color:#123d66;background:rgba(18,61,102,.06);box-shadow:0 0 0 2px rgba(18,61,102,.08)}
.worktime-export-grid{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:16px;align-items:end}
.worktime-export-grid label{display:grid;gap:8px}
.worktime-export-actions,.worktime-detail-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.worktime-detail-head{gap:16px;align-items:flex-start}
.worktime-detail-actions{justify-content:flex-end}
.worktime-table--compact th,.worktime-table--compact td{padding:10px 8px;font-size:.92rem}
.worktime-table--compact th:nth-child(1){width:10%}
.worktime-table--compact th:nth-child(2){width:5%}
.worktime-table--compact th:nth-child(3),.worktime-table--compact th:nth-child(4){width:7%}
.worktime-table--compact th:nth-child(5){width:7%}
.worktime-table--compact th:nth-child(8),.worktime-table--compact th:nth-child(9),.worktime-table--compact th:nth-child(10){width:8%}
a[aria-disabled="true"]{pointer-events:none;opacity:.5}
@media (max-width: 1180px){.worktime-export-grid{grid-template-columns:1fr}.worktime-detail-actions{justify-content:flex-start}}


.worktime-layout--compact{grid-template-columns:minmax(180px,220px) minmax(0,1fr);gap:14px}
.worktime-sidebar{padding:14px}
.worktime-sidebar-head input{min-height:40px}
.worktime-driver-compact-list{display:grid;grid-template-columns:1fr;gap:8px;max-height:68vh;overflow:auto;padding-right:4px}
.worktime-driver-pill{justify-content:flex-start;padding:8px 10px;border-radius:12px;font-size:.95rem;line-height:1.2}
.worktime-driver-pill__name{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.worktime-export-grid{grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:12px}
.worktime-month-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.worktime-month-card{padding:14px;border-radius:16px}
.worktime-table--compact th,.worktime-table--compact td{padding:8px 6px;font-size:.88rem}
.worktime-detail-actions{row-gap:8px}
.worktime-net-summary{margin-top:14px;padding:16px 18px}
@media (max-width: 1080px){.worktime-layout--compact{grid-template-columns:1fr}.worktime-driver-compact-list{max-height:none}}

/* Arbeitszeitabrechnung – Layout-Überarbeitung */
body.app-theme .worktime-layout,
body.subpage-shell .worktime-layout{
  grid-template-columns:minmax(190px,230px) minmax(0,1fr);
  gap:16px;
  padding:16px 16px 112px;
  align-items:start;
}
body.app-theme .worktime-sidebar,
body.subpage-shell .worktime-sidebar{
  position:sticky;
  top:14px;
  padding:14px;
  background:linear-gradient(180deg, rgba(11,25,38,.92), rgba(16,36,54,.92));
  border:1px solid rgba(124,196,255,.16);
}
body.app-theme .worktime-content,
body.subpage-shell .worktime-content{
  display:grid;
  gap:16px;
  min-width:0;
}
body.app-theme .worktime-intro,
body.app-theme .worktime-panel,
body.subpage-shell .worktime-intro,
body.subpage-shell .worktime-panel{
  padding:16px 18px;
  min-width:0;
}
body.app-theme .worktime-sidebar h2,
body.app-theme .worktime-intro h2,
body.app-theme .worktime-panel h2,
body.subpage-shell .worktime-sidebar h2,
body.subpage-shell .worktime-intro h2,
body.subpage-shell .worktime-panel h2{
  color:#f3f8ff;
  margin:0;
}
body.app-theme .worktime-sidebar .section-head,
body.subpage-shell .worktime-sidebar .section-head{
  margin-bottom:12px;
}
body.app-theme .worktime-sidebar-head input,
body.subpage-shell .worktime-sidebar-head input{
  width:100%;
  min-height:42px;
  border-radius:12px;
  border:1px solid rgba(124,196,255,.22);
  background:rgba(255,255,255,.08);
  color:#eef6ff;
  padding:0 12px;
}
body.app-theme .worktime-sidebar-head input::placeholder,
body.subpage-shell .worktime-sidebar-head input::placeholder{
  color:#b8cadb;
}
body.app-theme .worktime-driver-compact-list,
body.subpage-shell .worktime-driver-compact-list{
  display:grid;
  gap:8px;
  max-height:calc(100vh - 250px);
  overflow:auto;
  padding-right:2px;
}
body.app-theme .worktime-driver-pill,
body.subpage-shell .worktime-driver-pill{
  width:100%;
  min-height:42px;
  justify-content:flex-start;
  padding:9px 12px;
  border-radius:12px;
  border:1px solid rgba(124,196,255,.14);
  background:rgba(255,255,255,.04);
  color:#eef6ff;
  box-shadow:none;
}
body.app-theme .worktime-driver-pill:hover,
body.subpage-shell .worktime-driver-pill:hover{
  border-color:rgba(124,196,255,.34);
  background:rgba(255,255,255,.08);
}
body.app-theme .worktime-driver-pill.is-active,
body.subpage-shell .worktime-driver-pill.is-active{
  background:linear-gradient(135deg, rgba(42,132,255,.28), rgba(91,192,255,.18));
  border-color:rgba(124,196,255,.46);
  color:#ffffff;
  box-shadow:0 0 0 1px rgba(124,196,255,.12);
}
body.app-theme .worktime-export-grid,
body.subpage-shell .worktime-export-grid{
  grid-template-columns:minmax(210px,260px) minmax(0,1fr);
  gap:14px;
  align-items:end;
}
body.app-theme .worktime-export-grid label > span,
body.subpage-shell .worktime-export-grid label > span{
  color:#d7e5f3;
  font-weight:700;
}
body.app-theme .worktime-export-grid select,
body.subpage-shell .worktime-export-grid select{
  min-height:44px;
  border-radius:12px;
  border:1px solid rgba(124,196,255,.18);
  background:rgba(7,18,28,.84);
  color:#eef6ff;
  padding:0 12px;
}
body.app-theme .worktime-action-button,
body.app-theme .worktime-top-action,
body.subpage-shell .worktime-action-button,
body.subpage-shell .worktime-top-action{
  width:auto;
  min-width:176px;
  min-height:44px;
  padding:10px 16px;
  border-radius:14px;
  text-decoration:none;
  color:#081521 !important;
  font-size:.92rem;
  white-space:nowrap;
}
body.app-theme .worktime-detail-head,
body.subpage-shell .worktime-detail-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
}
body.app-theme #worktimeDriverMeta,
body.app-theme #worktimeDetailMeta,
body.subpage-shell #worktimeDriverMeta,
body.subpage-shell #worktimeDetailMeta{
  color:#b8cadb;
}
body.app-theme .table-wrap,
body.subpage-shell .table-wrap{
  overflow:auto;
  margin:0 -2px;
  padding-bottom:8px;
  scrollbar-gutter:stable both-edges;
}
body.app-theme .worktime-table,
body.subpage-shell .worktime-table{
  width:100%;
  table-layout:fixed;
  border-collapse:collapse;
  min-width:1120px;
}
body.app-theme .worktime-table thead th,
body.subpage-shell .worktime-table thead th{
  position:sticky;
  top:0;
  z-index:1;
  background:#102434;
  color:#eef6ff;
  border-bottom:1px solid rgba(124,196,255,.18);
}
body.app-theme .worktime-table th,
body.app-theme .worktime-table td,
body.subpage-shell .worktime-table th,
body.subpage-shell .worktime-table td{
  padding:10px 10px;
  text-align:left;
  vertical-align:middle;
  border-bottom:1px solid rgba(124,196,255,.12);
  color:#e7f1fb;
}
body.app-theme .worktime-table tbody tr:nth-child(even),
body.subpage-shell .worktime-table tbody tr:nth-child(even){
  background:rgba(255,255,255,.025);
}
body.app-theme .worktime-table tbody tr:hover,
body.subpage-shell .worktime-table tbody tr:hover{
  background:rgba(124,196,255,.08);
}
body.app-theme .worktime-table .muted-pill,
body.subpage-shell .worktime-table .muted-pill,
body.app-theme #worktimeSummary.muted-pill,
body.subpage-shell #worktimeSummary.muted-pill{
  background:rgba(124,196,255,.14);
  color:#eef6ff;
  border:1px solid rgba(124,196,255,.16);
}
body.app-theme .worktime-month-grid,
body.subpage-shell .worktime-month-grid{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:12px;
}
body.app-theme .worktime-month-card,
body.subpage-shell .worktime-month-card{
  padding:14px;
  border-radius:16px;
  border:1px solid rgba(124,196,255,.14);
  background:rgba(255,255,255,.04);
  color:#eef6ff;
}
body.app-theme .worktime-month-card strong,
body.subpage-shell .worktime-month-card strong{
  color:#ffffff;
}
body.app-theme .worktime-month-card span,
body.subpage-shell .worktime-month-card span{
  color:#c5d6e7;
}
body.app-theme .worktime-month-card.is-active,
body.subpage-shell .worktime-month-card.is-active{
  background:linear-gradient(135deg, rgba(42,132,255,.18), rgba(91,192,255,.12));
  border-color:rgba(124,196,255,.42);
  box-shadow:0 0 0 1px rgba(124,196,255,.14);
}
body.app-theme .worktime-net-summary,
body.subpage-shell .worktime-net-summary{
  margin-top:16px;
  padding:18px 22px;
  border-radius:18px;
  border:1px solid rgba(124,196,255,.18);
  background:linear-gradient(180deg, rgba(42,132,255,.12), rgba(16,36,54,.68));
}
body.app-theme .worktime-net-summary strong,
body.subpage-shell .worktime-net-summary strong{
  color:#ffffff;
}
body.app-theme .worktime-net-summary__label,
body.app-theme .worktime-net-summary__meta,
body.subpage-shell .worktime-net-summary__label,
body.subpage-shell .worktime-net-summary__meta{
  color:#d7e5f3;
}
body.app-theme .worktime-table col.col-date,
body.subpage-shell .worktime-table col.col-date{width:12%;}
body.app-theme .worktime-table col.col-day,
body.subpage-shell .worktime-table col.col-day{width:7%;}
body.app-theme .worktime-table col.col-time,
body.subpage-shell .worktime-table col.col-time{width:9%;}
body.app-theme .worktime-table col.col-blocks,
body.subpage-shell .worktime-table col.col-blocks{width:8%;}
body.app-theme .worktime-table col.col-role,
body.subpage-shell .worktime-table col.col-role{width:13%;}
body.app-theme .worktime-table col.col-vehicle,
body.subpage-shell .worktime-table col.col-vehicle{width:16%;}
body.app-theme .worktime-table col.col-duration,
body.subpage-shell .worktime-table col.col-duration{width:8.67%;}
@media (max-width: 1180px){
  body.app-theme .worktime-layout,
  body.subpage-shell .worktime-layout{grid-template-columns:1fr;padding:14px 14px 118px;}
  body.app-theme .worktime-sidebar,
  body.subpage-shell .worktime-sidebar{position:static;}
  body.app-theme .worktime-driver-compact-list,
  body.subpage-shell .worktime-driver-compact-list{max-height:none;}
  body.app-theme .worktime-export-grid,
  body.subpage-shell .worktime-export-grid{grid-template-columns:1fr;}
  body.app-theme .worktime-detail-head,
  body.subpage-shell .worktime-detail-head{flex-direction:column;align-items:flex-start;}
  body.app-theme .worktime-detail-actions,
  body.subpage-shell .worktime-detail-actions{justify-content:flex-start;}
}


/* v51 dashboard topbar premium alignment */
.dashboard-topbar{
  padding:18px 24px 12px;
  background:linear-gradient(180deg, rgba(10,18,30,.98) 0%, rgba(11,20,32,.94) 100%);
  border-bottom:1px solid rgba(132,157,194,.16);
  box-shadow:0 14px 34px rgba(4,11,21,.18);
}
.dashboard-topbar__row{
  display:grid;
  grid-template-columns:minmax(260px,1fr) auto;
  align-items:center;
  gap:18px;
  min-height:78px;
  overflow:visible;
  padding-right:0;
}
.dashboard-topbar__left{
  display:flex;
  align-items:center;
  min-width:0;
  width:auto;
  overflow:visible;
  padding-bottom:0;
}
.dashboard-topbar__right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  flex-wrap:wrap;
  min-width:0;
  margin-left:0;
}
.dashboard-topbar__cluster{
  display:flex;
  align-items:center;
  min-height:56px;
  padding:10px 12px;
  border:1px solid rgba(142,167,205,.16);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
.dashboard-topbar__cluster--date{padding-right:14px;}
.dashboard-topbar__cluster--preset{padding-left:14px;}
.dashboard-brandline,
.dashboard-brandline--datehero{
  display:flex;
  align-items:baseline;
  gap:12px;
  padding-right:0;
  border-right:none;
}
.dashboard-brandline__label{
  padding-bottom:0;
  font-size:.9rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#9fb3c9;
}
.dashboard-brandline--datehero h1,
#boardDateHeadline{
  font-size:2.05rem;
  line-height:1.05;
  color:#f5f8ff;
  text-shadow:0 1px 0 rgba(255,255,255,.04);
}
.dashboard-datebar,
.dashboard-presetbar{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0;
  padding:0;
  border:0;
  opacity:1;
}
.dashboard-presetbar{justify-content:flex-start;}
.dashboard-topbar .compact-field{
  gap:7px;
  margin:0;
  color:#dce8f5;
  font-weight:700;
  white-space:nowrap;
}
.dashboard-topbar .compact-field input,
.dashboard-topbar .compact-field select{
  min-height:38px;
  height:38px;
  padding:8px 12px;
  border-radius:12px;
  border:1px solid rgba(146,172,211,.22);
  background:rgba(255,255,255,.085);
  color:#f2f7ff;
}
.dashboard-topbar .compact-field select{min-width:196px;}
.dashboard-topbar .compact-field input::placeholder{color:rgba(231,240,250,.7);}
.dashboard-topbar .nav-chip{
  min-height:38px;
  height:38px;
  padding:0 14px;
  border-radius:12px;
  border:1px solid rgba(146,172,211,.22);
  background:rgba(255,255,255,.07);
  color:#eef5ff;
  box-shadow:none;
}
.dashboard-topbar .nav-chip--soft:hover{background:rgba(255,255,255,.13);}
.dashboard-topbar .nav-chip--save{
  background:linear-gradient(180deg, rgba(61,126,221,.2), rgba(61,126,221,.13));
  border-color:rgba(117,177,255,.3);
  color:#f4f9ff;
}
.dashboard-topbar .nav-chip--save:hover{background:linear-gradient(180deg, rgba(61,126,221,.28), rgba(61,126,221,.18));}
.dashboard-settings-state{
  min-width:112px;
  max-width:168px;
  padding-left:2px;
  color:#a9bdd2;
  font-size:.8rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.dashboard-topbar .nav-chip:focus-visible,
.dashboard-topbar .compact-field input:focus-visible,
.dashboard-topbar .compact-field select:focus-visible{
  outline:2px solid rgba(120,190,255,.45);
  outline-offset:2px;
}
@media (max-width: 1360px){
  .dashboard-topbar__row{grid-template-columns:1fr; align-items:start;}
  .dashboard-topbar__right{justify-content:flex-start;}
}
@media (max-width: 980px){
  .dashboard-topbar{padding:14px 14px 10px;}
  .dashboard-topbar__row{gap:12px; min-height:auto;}
  .dashboard-topbar__right{width:100%;}
  .dashboard-topbar__cluster{width:100%; justify-content:flex-start; overflow-x:auto;}
  .dashboard-brandline--datehero h1, #boardDateHeadline{font-size:1.72rem;}
}
@media (max-width: 680px){
  .dashboard-brandline, .dashboard-brandline--datehero{flex-direction:column; align-items:flex-start; gap:4px;}
  .dashboard-datebar, .dashboard-presetbar{flex-wrap:wrap;}
  .dashboard-topbar .compact-field select{min-width:160px;}
}


/* v47 topbar ultra-compact alignment */
.sr-only{
  position:absolute!important;
  width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
.dashboard-topbar{
  padding:0;
  background:linear-gradient(180deg, rgba(9,17,28,.98), rgba(10,18,30,.92));
}
.dashboard-topbar__row{
  min-height:58px;
  gap:14px;
  padding-right:0;
}
.dashboard-topbar__left,
.dashboard-topbar__right,
.dashboard-topbar__cluster,
.dashboard-datebar,
.dashboard-presetbar{
  display:flex;
  align-items:center;
}
.dashboard-topbar__right{gap:10px;flex-wrap:nowrap;}
.dashboard-topbar__cluster{min-width:0;}
.dashboard-brandline--datehero{align-items:center;gap:10px;}
.dashboard-brandline__label{padding-bottom:0;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:#9eb4ca;}
.dashboard-brandline--datehero h1,#boardDateHeadline{font-size:1.7rem;line-height:1;}
.dashboard-datebar,.dashboard-presetbar{gap:8px;flex-wrap:nowrap;}
.dashboard-datebar{padding-right:10px;border-right:1px solid rgba(120,140,180,.14);}
.dashboard-presetbar{gap:8px;}
.dashboard-topbar .compact-field{margin:0;gap:0;display:inline-flex;align-items:center;}
.dashboard-topbar .compact-field--solo{position:relative;}
.dashboard-topbar .compact-field input,
.dashboard-topbar .compact-field select,
.dashboard-topbar .nav-chip{
  height:36px;
  min-height:36px;
  line-height:36px;
}
.dashboard-topbar .compact-field input,
.dashboard-topbar .compact-field select{
  padding:0 12px;
  border-radius:12px;
  font-size:.93rem;
  font-weight:700;
}
.dashboard-topbar .compact-field select{padding-right:34px;}
.dashboard-topbar .compact-field input[type=date]{min-width:146px;padding-right:10px;}
.dashboard-topbar .nav-chip{padding:0 12px;border-radius:12px;font-size:.83rem;}
.dashboard-topbar .nav-chip#boardPrevDay,
.dashboard-topbar .nav-chip#boardNextDay{min-width:36px;padding:0;}
.dashboard-settings-state{min-width:0;max-width:132px;font-size:.76rem;}
@media (max-width: 1280px){
  .dashboard-topbar__row{min-height:56px;}
  .dashboard-topbar__right{gap:8px;}
  .dashboard-brandline--datehero h1,#boardDateHeadline{font-size:1.5rem;}
}
@media (max-width: 900px){
  .dashboard-topbar__row{min-height:auto;}
  .dashboard-topbar__right{width:100%;flex-wrap:wrap;justify-content:flex-start;}
  .dashboard-datebar{padding-right:0;border-right:none;}
}


.release-day-banner-btn{display:block;width:100%;margin:0 0 12px;padding:8px 12px;border-radius:10px;border:1px solid rgba(251,191,36,.38);background:rgba(251,191,36,.14);color:#9a6700;font-size:.78rem;font-weight:700;line-height:1.25;text-align:center;box-shadow:none;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}
.release-day-banner-btn:hover{background:rgba(251,191,36,.2);border-color:rgba(251,191,36,.5)}
.release-day-banner-btn:active{transform:translateY(1px)}
.release-day-banner-btn:focus-visible{outline:2px solid rgba(245,158,11,.45);outline-offset:2px}

/* Schnelleingabe Interviewmodus */
body.intake-quick-shell .intake-layout--compact{grid-template-columns:minmax(0,920px) 300px;justify-content:center;gap:18px;padding:0 24px 92px}
body.intake-quick-shell .intake-main-card{max-width:920px;width:100%;margin:0 auto}
body.intake-quick-shell .wizard-steps--compact{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:18px}
body.intake-quick-shell .wizard-steps--compact .step{min-height:44px}
body.intake-quick-shell .pane-head{margin-bottom:14px}
body.intake-quick-shell .pane-head h2{margin-bottom:4px}
body.intake-quick-shell .pane-head p{margin:0;color:var(--muted)}
body.intake-quick-shell .intake-topbar-actions{display:flex;align-items:center;gap:10px}
body.intake-quick-shell .intake-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
body.intake-quick-shell .intake-card-grid--narrow{grid-template-columns:repeat(3,minmax(0,1fr))}
body.intake-quick-shell .intake-choice-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:104px;padding:16px 54px 16px 16px;border-radius:18px;border:1px solid rgba(168,196,232,.18);background:rgba(255,255,255,.04);color:#eef6ff;text-align:left;cursor:pointer}
body.intake-quick-shell .intake-choice-card__icon{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;color:rgba(255,255,255,.94);pointer-events:none}
body.intake-quick-shell .intake-choice-card__icon svg{width:36px;height:36px;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;fill:none;opacity:.94;filter:drop-shadow(0 1px 0 rgba(255,255,255,.05))}
body.intake-quick-shell .intake-choice-card strong{display:block;padding-right:4px;font-size:1rem;line-height:1.2}
body.intake-quick-shell .intake-choice-card span{display:block;font-size:.9rem;color:rgba(231,241,250,.78);line-height:1.35}
body.intake-quick-shell .intake-choice-card.active{background:linear-gradient(180deg, rgba(124,196,255,.18), rgba(124,196,255,.08));border-color:rgba(124,196,255,.42);box-shadow:0 12px 30px rgba(0,0,0,.18)}
body.intake-quick-shell .intake-choice-card.is-disabled,body.intake-quick-shell .intake-choice-card:disabled{opacity:.45;cursor:not-allowed}
body.intake-quick-shell .readonly-field{min-height:46px;display:flex;align-items:center;padding:12px 14px;border-radius:14px;border:1px solid rgba(168,196,232,.18);background:rgba(255,255,255,.04);color:#eef6ff;font-weight:600}
body.intake-quick-shell .visually-hidden{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.intake-quick-shell .is-disabled-field,body.intake-quick-shell .is-disabled-field input,body.intake-quick-shell .is-disabled-field select{opacity:.45;cursor:not-allowed !important}
body.intake-quick-shell .is-disabled-field input,body.intake-quick-shell .is-disabled-field select{background:rgba(255,255,255,.02);pointer-events:none}

body.intake-quick-shell .interview-kicker{margin-top:14px;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(168,196,232,.16);color:rgba(235,244,252,.9)}
body.intake-quick-shell .time-input-grid label input{font-size:1.08rem;font-weight:700;letter-spacing:.04em}
body.intake-quick-shell .side-facilities{max-width:300px}
body.intake-quick-shell #tripKind{pointer-events:none;opacity:.75}
body.intake-quick-shell .intake-optional-grid{align-items:end}
.time-wheel-modal{position:fixed;inset:0;z-index:500;display:grid;place-items:center}
.time-wheel-modal.hidden{display:none}
.time-wheel-backdrop{position:absolute;inset:0;background:rgba(4,10,18,.72);backdrop-filter:blur(6px)}
.time-wheel-dialog{position:relative;z-index:1;width:min(760px,calc(100vw - 28px));padding:18px}
.time-wheel-status{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;margin-bottom:12px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(168,196,232,.16)}
.time-wheel-status strong{font-size:1.5rem;color:#fff}
.time-wheel-status span{color:rgba(231,241,250,.76)}
.time-wheel-stage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.time-wheel-stage--single{grid-template-columns:1fr}
.time-wheel-board{display:grid;place-items:center;padding:12px;border-radius:18px;background:rgba(255,255,255,.03);border:1px solid rgba(168,196,232,.14)}
.time-wheel-mode{display:flex;justify-content:space-between;align-items:center;width:min(280px,100%);margin:0 auto 10px;padding:8px 12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(168,196,232,.14)}
.time-wheel-mode span{color:rgba(231,241,250,.78)}
.time-wheel-mode strong{color:#fff}
.time-wheel-face{position:relative;width:280px;height:280px;border-radius:50%;border:1px solid rgba(124,196,255,.2);background:radial-gradient(circle at center, rgba(124,196,255,.12) 0, rgba(124,196,255,.05) 42%, rgba(255,255,255,.02) 43%, rgba(255,255,255,.01) 100%);box-shadow:inset 0 0 0 10px rgba(255,255,255,.02), 0 18px 48px rgba(0,0,0,.18)}
.analog-clock-face::before{content:'';position:absolute;inset:18px;border-radius:50%;border:1px solid rgba(168,196,232,.10)}
.analog-clock-center{position:absolute;left:50%;top:50%;width:14px;height:14px;border-radius:50%;transform:translate(-50%,-50%);background:rgba(124,196,255,.95);box-shadow:0 0 0 8px rgba(124,196,255,.14);z-index:4}
.analog-clock-hand{position:absolute;left:50%;top:50%;width:4px;height:94px;transform-origin:50% calc(100% - 10px);transform:translateX(-50%) rotate(0deg);border-radius:999px;background:linear-gradient(180deg, rgba(124,196,255,.98), rgba(124,196,255,.24));box-shadow:0 0 14px rgba(124,196,255,.2);z-index:2}
.analog-clock-tick{position:absolute;transform:translate(-50%,-50%);width:8px;height:8px;border-radius:50%;background:rgba(231,241,250,.24)}
.time-wheel-point{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:999px;border:1px solid rgba(168,196,232,.18);background:rgba(12,24,38,.96);color:#edf6ff;font-weight:700;cursor:pointer;z-index:3}
.time-wheel-point.active{background:rgba(124,196,255,.22);border-color:rgba(124,196,255,.54);box-shadow:0 0 0 4px rgba(124,196,255,.12);color:#fff}
.time-wheel-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}
@media (max-width:1180px){body.intake-quick-shell .intake-layout--compact{grid-template-columns:minmax(0,920px)}body.intake-quick-shell .side-facilities{display:none}}
@media (max-width:820px){body.intake-quick-shell .wizard-steps--compact{grid-template-columns:repeat(2,minmax(0,1fr))}body.intake-quick-shell .intake-card-grid,body.intake-quick-shell .intake-card-grid--narrow,.time-wheel-stage{grid-template-columns:1fr}body.intake-quick-shell .intake-topbar-actions{flex-wrap:wrap;justify-content:flex-end}.time-wheel-face{width:248px;height:248px}.time-wheel-point{width:40px;height:40px}}

body.intake-quick-shell .time-wheel-input{cursor:pointer;background-image:linear-gradient(180deg, rgba(124,196,255,.08), rgba(124,196,255,.03));}
body.intake-quick-shell .time-wheel-input:focus{outline:none;border-color:rgba(124,196,255,.42);box-shadow:0 0 0 3px rgba(124,196,255,.12);}

body.app-theme .time-chip.active, body.intake-quick-shell .time-chip.active{border-color:rgba(124,196,255,.8);background:linear-gradient(180deg, rgba(124,196,255,.28), rgba(124,196,255,.14));box-shadow:0 0 0 3px rgba(124,196,255,.18), inset 0 1px 0 rgba(255,255,255,.08);color:#eef7ff;}

.private-fare-breakdown__rows{display:grid;gap:10px;margin-top:8px}
.private-fare-breakdown__row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.private-fare-breakdown__row--total{font-size:1.02rem;background:var(--surface-2)}


.clock-picker-backdrop{position:fixed;inset:0;background:rgba(8,15,28,.58);display:flex;align-items:center;justify-content:center;padding:24px;z-index:9999;backdrop-filter:blur(5px)}
.clock-picker-backdrop.hidden{display:none}
.clock-picker{width:min(420px,100%);padding:20px;border-radius:26px;background:linear-gradient(180deg,#fff,#f7fbff);border:1px solid rgba(18,61,102,.12);box-shadow:0 28px 90px rgba(8,15,28,.28);display:grid;gap:18px}
.clock-picker__head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.clock-picker__head h3{margin:2px 0 0;font-size:1.2rem;color:#123d66}
.clock-picker__digital{display:flex;align-items:center;justify-content:center;gap:10px;font-size:2rem;font-weight:800;color:#123d66}
.clock-picker__digital-part{border:none;background:transparent;color:inherit;font:inherit;padding:6px 10px;border-radius:16px;cursor:pointer}
.clock-picker__digital-part.is-active{background:rgba(18,61,102,.09)}
.clock-picker__face-wrap{display:flex;justify-content:center}
.clock-picker__face{position:relative;width:290px;height:290px;border-radius:50%;background:radial-gradient(circle at center, rgba(18,61,102,.06) 0, rgba(18,61,102,.06) 34px, rgba(18,61,102,.03) 35px, rgba(18,61,102,.03) 100%);border:1px solid rgba(18,61,102,.10)}
.clock-picker__center{position:absolute;left:50%;top:50%;width:14px;height:14px;border-radius:50%;background:#123d66;transform:translate(-50%,-50%);z-index:3}
.clock-picker__hand{position:absolute;left:50%;top:50%;width:4px;height:112px;border-radius:999px;background:#123d66;transform-origin:50% 0%;margin-top:2px;z-index:2}
.clock-picker__tick{position:absolute;transform:translate(-50%,-50%);width:42px;height:42px;border:none;border-radius:50%;background:transparent;color:#123d66;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center}
.clock-picker__tick--inner{width:28px;height:28px;font-size:.78rem;color:#35597a;z-index:1}
.clock-picker__tick--minute{font-size:.92rem}
.clock-picker__tick.is-selected{background:#123d66;color:#fff;box-shadow:0 12px 24px rgba(18,61,102,.22)}
.clock-picker__tick--hour{z-index:2}
.clock-picker__actions{display:flex;justify-content:space-between;gap:12px}
@media (max-width:640px){.clock-picker{padding:16px;border-radius:22px}.clock-picker__face{width:260px;height:260px}.clock-picker__tick{width:38px;height:38px;font-size:.92rem}.clock-picker__tick--inner{width:24px;height:24px;font-size:.72rem}.clock-picker__digital{font-size:1.7rem}}


.timing-strip{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;width:100%;min-width:0;padding:8px 12px;border-radius:16px;border:1px solid rgba(232,243,255,.18);background:linear-gradient(180deg, rgba(61,104,176,.36), rgba(24,48,87,.34));box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 8px 18px rgba(8,18,38,.14)}
.timing-strip__main{font-weight:500;font-size:.86rem;line-height:1.16;color:#f4f8ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.timing-strip__meta{font-size:.72rem;font-weight:400;line-height:1.15;color:rgba(235,244,255,.76);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.route-badge{display:inline-flex;align-items:center;justify-content:center;min-width:62px;padding:3px 10px;border-radius:999px;font-size:.66rem;font-weight:500;letter-spacing:.02em;border:1px solid transparent;white-space:nowrap;backdrop-filter:blur(2px)}
.route-badge--ors{background:rgba(53,126,255,.16);border-color:rgba(170,205,255,.34);color:#eef5ff;text-shadow:0 1px 0 rgba(0,0,0,.16)}
.route-badge--cache{background:rgba(123,92,255,.16);border-color:rgba(208,196,255,.34);color:#f4efff;text-shadow:0 1px 0 rgba(0,0,0,.16)}
.route-badge--estimate{background:rgba(255,166,0,.16);border-color:rgba(255,223,161,.34);color:#fff8ea;text-shadow:0 1px 0 rgba(0,0,0,.16)}
.route-badge--preset{background:rgba(18,148,116,.16);border-color:rgba(176,239,223,.34);color:#effff9;text-shadow:0 1px 0 rgba(0,0,0,.16)}
.route-badge--neutral{background:rgba(120,134,160,.18);border-color:rgba(220,228,241,.34);color:#f5f8ff;text-shadow:0 1px 0 rgba(0,0,0,.16)}
.drop-slot,.vehicle-head-drop{padding:4px 6px;min-height:28px}
.drop-slot .timing-strip,.vehicle-head-drop .timing-strip{min-height:24px}

/* v590 compact transition strips without dashed outer frame */
body.app-shell .ride-list{
  gap:2px;
}
body.app-shell .vehicle-support-meta{
  gap:2px;
  margin-top:4px;
  min-height:0;
}
body.app-shell .drop-slot,
body.app-shell .vehicle-head-drop{
  padding:1px 0 !important;
  min-height:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  border-style:solid !important;
}
body.app-shell .drop-slot.is-over,
body.app-shell .vehicle-head-drop.is-over{
  background:transparent !important;
  box-shadow:none !important;
}
body.app-shell .timing-strip,
body.app-shell .drop-slot__notice--routing{
  width:100%;
  margin:0;
  min-height:0;
  padding:6px 10px;
  border-radius:14px;
}
body.app-shell .timing-strip{
  grid-template-columns:auto 1fr auto;
  gap:.45rem;
}
body.app-shell .drop-slot__notice--routing{
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:.45rem;
}
body.app-shell .timing-strip + .ride-chip,
body.app-shell .drop-slot__notice--routing + .ride-chip{
  margin-top:0;
}
body.app-shell .timing-strip__main,
body.app-shell .drop-slot__notice-main{
  font-weight:400;
}
body.app-shell .timing-strip__meta,
body.app-shell .drop-slot__notice-sub{
  color:rgba(239,246,255,.88);
}


/* v596 remove remaining frame in route gap strips; keep only the data */
body.app-shell .timing-strip,
body.app-shell .drop-slot__notice--routing{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}
body.app-shell .vehicle-head-drop,
body.app-shell .drop-slot{
  border:none !important;
  box-shadow:none !important;
  background:transparent !important;
}
body.app-shell .vehicle-head-drop.is-over,
body.app-shell .drop-slot.is-over{
  border:none !important;
  box-shadow:none !important;
  background:transparent !important;
}


/* v597 restore refined frame and add silver-grey gradient background for route gap strips */
body.app-shell .timing-strip,
body.app-shell .drop-slot__notice--routing{
  background:linear-gradient(180deg, rgba(161,171,185,.22) 0%, rgba(119,130,146,.18) 46%, rgba(83,95,112,.22) 100%) !important;
  border:1px solid rgba(221,229,238,.26) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 4px 12px rgba(9,16,28,.10) !important;
}
body.app-shell .timing-strip__main,
body.app-shell .drop-slot__notice-main{
  color:#f4f7fb !important;
}
body.app-shell .timing-strip__meta,
body.app-shell .drop-slot__notice-sub{
  color:rgba(236,241,247,.92) !important;
}


body.app-shell .drop-slot__notice--dayend-state .drop-slot__notice-copy{
  gap:1px;
}
body.app-shell .drop-slot__notice-state{
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  width:max-content;
  padding:2px 8px;
  border-radius:999px;
  border:1px solid rgba(229,236,244,.26);
  background:rgba(234,240,247,.08);
  color:rgba(244,247,251,.92);
  font-size:.64rem;
  font-weight:500;
  letter-spacing:.04em;
  text-transform:uppercase;
  line-height:1.1;
}


/* Dienst morgen App */
.dienst-morgen-app-body{
  min-height:100vh;
  margin:0;
  background:radial-gradient(circle at top, rgba(52,91,136,.34) 0%, rgba(11,18,28,.98) 48%, rgba(7,12,19,1) 100%);
  color:#eef4fb;
}
.dienst-morgen-app-shell{
  width:min(100%, 560px);
  margin:0 auto;
  padding:20px 16px calc(28px + env(safe-area-inset-bottom));
  display:grid;
  gap:14px;
}
.dienst-morgen-app-card{
  background:linear-gradient(180deg, rgba(19,29,41,.96) 0%, rgba(14,22,32,.98) 100%);
  border:1px solid rgba(118,145,175,.22);
  border-radius:24px;
  box-shadow:0 20px 48px rgba(0,0,0,.28);
  padding:18px;
}
.dienst-morgen-app-card--hero{
  padding:20px 18px;
}
.dienst-morgen-app-brand{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(132,176,224,.25);
  background:rgba(74,125,181,.16);
  color:#d9ebff;
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.dienst-morgen-app-card h1,
.dienst-morgen-app-card h2{
  margin:0;
  color:#f4f8fc;
}
.dienst-morgen-app-card h1{
  margin-top:12px;
  font-size:clamp(1.75rem, 5vw, 2.35rem);
  line-height:1.05;
}
.dienst-morgen-app-card p{
  color:#aebfd2;
  line-height:1.5;
}
.dienst-morgen-app-sectionhead{
  display:grid;
  gap:6px;
  margin-bottom:14px;
}
.dienst-morgen-app-sectionhead p{
  margin:0;
}
.dienst-morgen-app-datehead{
  font-size:clamp(1.75rem, 5vw, 2.35rem);
  line-height:1.05;
  font-weight:800;
  color:#f4f8fc !important;
}
.dienst-morgen-app-form{
  gap:14px;
}
.dienst-morgen-app-toprow{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.dienst-morgen-summary{
  display:grid;
  gap:14px;
  margin-top:14px;
  padding:16px;
  border-radius:20px;
  background:linear-gradient(180deg, rgba(53,102,156,.20) 0%, rgba(31,60,92,.18) 100%);
  border:1px solid rgba(132,176,224,.22);
}
.dienst-morgen-summary__timewrap{
  display:grid;
  gap:6px;
}
.dienst-morgen-summary__label{
  color:#a8c3df;
  font-size:.84rem;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.dienst-morgen-summary__time{
  font-size:clamp(2.4rem, 12vw, 4rem);
  line-height:1;
  font-weight:900;
  letter-spacing:-.04em;
  color:#ffffff;
}
.dienst-morgen-summary__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  width:fit-content;
  padding:0 14px;
  border-radius:14px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.1);
  color:#eef6ff;
  font-weight:800;
}
.driver-next-state{
  margin-top:14px;
}

.driver-next-grid{
  margin-top:14px;
  display:grid;
  gap:8px;
}
.driver-next-item{
  display:grid;
  grid-template-columns:84px minmax(0,1fr);
  gap:8px;
  align-items:start;
}
.driver-next-item__label{
  color:#aebfd4;
  font-weight:700;
}
.driver-next-item__value{
  line-height:1.25;
  color:#f3f8ff;
}
.driver-next-empty{
  margin-top:14px;
}

.dienst-morgen-summary__label--draft,
.dienst-morgen-summary__time--draft,
.driver-next-state--draft{
  color:#ff5c73 !important;
  text-shadow:0 0 14px rgba(255,92,115,.25);
}

.dienst-morgen-summary__label--final,
.dienst-morgen-summary__time--final,
.driver-next-state--final{
  color:#58ff8a !important;
  text-shadow:0 0 14px rgba(88,255,138,.24);
}
@media (max-width: 520px){
  .dienst-morgen-app-shell{
    padding:14px 12px calc(22px + env(safe-area-inset-bottom));
  }
  .dienst-morgen-app-card{
    padding:16px;
    border-radius:22px;
  }
  .dienst-morgen-app-toprow{
    flex-direction:column;
    align-items:stretch;
  }
  .dienst-morgen-app-toprow .ghost-button{
    width:100%;
  }
}

body.app-shell .vehicle-day-weight-strip{
  display:grid;
  gap:1px;
  margin-left: -6px !important;
  margin-top: -5px !important;
  margin-right: -5px !important;
  margin-bottom: 2px;
  padding:6px 5px 2px;
  border-radius:15px 15px 0 0;
  border:1px solid rgba(151,173,197,.22);
  border-bottom:none;
  background:linear-gradient(180deg, rgba(14,24,38,.68), rgba(14,24,38,.30));
}
body.app-shell .vehicle-day-weight-strip__label{
  margin-top:2px;
  font-size:.64rem;
  line-height:1;
  font-weight:800;
  letter-spacing:.02em;
  color:#8ea2b8;
  text-transform:uppercase;
}
body.app-shell .vehicle-day-weight-strip__control{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:6px;
  align-items:center;
}
body.app-shell .vehicle-day-weight-strip__range{width:100%;margin:0;accent-color:#7cc4ff}
body.app-shell .vehicle-day-weight-strip__value{
  min-width:32px;
  text-align:right;
  font-size:.78rem;
  font-weight:800;
  color:#eef7fb;
}
body.app-shell .vehicle-head-wrap{margin-top:0}


body.app-shell .board-floating-resort{
  position:fixed;
  left:50%;
  bottom:calc(14px + env(safe-area-inset-bottom));
  transform:translateX(-50%);
  z-index:40;
  display:flex;
  justify-content:center;
  pointer-events:none;
}
body.app-shell .board-floating-resort__btn{
  pointer-events:auto;
  min-height:46px;
  padding:12px 20px;
  border:none;
  border-radius:999px;
  background:linear-gradient(180deg,#4ea3ff,#2f7fe0);
  color:#f8fbff;
  font-weight:800;
  letter-spacing:.01em;
  box-shadow:0 14px 34px rgba(16,42,67,.28), inset 0 1px 0 rgba(255,255,255,.24);
}
body.app-shell .board-floating-resort__btn:disabled{opacity:.72}
@media (max-width: 820px){
  body.app-shell .board-floating-resort{
    left:12px;
    right:12px;
    transform:none;
    bottom:calc(10px + env(safe-area-inset-bottom));
  }
  body.app-shell .board-floating-resort__btn{
    width:100%;
    justify-content:center;
  }
}


body.app-shell .action-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:38px;
  height:38px;
  padding:0 14px;
  border-radius:12px;
  border:1px solid rgba(117,177,255,.3);
  background:linear-gradient(180deg, rgba(61,126,221,.2), rgba(61,126,221,.13));
  color:#f4f9ff;
  font-weight:700;
  font-size:.84rem;
  line-height:1;
  white-space:nowrap;
  box-shadow:none;
}
body.app-shell .action-chip:hover{
  background:linear-gradient(180deg, rgba(61,126,221,.28), rgba(61,126,221,.18));
}
body.app-shell .action-chip--blue{
  border-color:rgba(117,177,255,.3);
  background:linear-gradient(180deg, rgba(61,126,221,.2), rgba(61,126,221,.13));
}
body.app-shell .action-chip--blue:hover{
  background:linear-gradient(180deg, rgba(61,126,221,.28), rgba(61,126,221,.18));
}

body.app-shell .action-chip--blue-soft{
  color:#d9edff;
  background:linear-gradient(180deg, rgba(47,96,154,.34), rgba(23,51,86,.26));
  border-color:rgba(125,174,228,.24);
  box-shadow:0 12px 26px rgba(11,32,58,.16);
}
body.app-shell .action-chip--blue-soft:hover{
  background:linear-gradient(180deg, rgba(55,108,171,.38), rgba(28,58,96,.30));
}
body.app-shell .action-chip--orange{
  border-color:rgba(255,183,77,.28);
  background:linear-gradient(180deg, rgba(214,139,36,.2), rgba(214,139,36,.12));
}
body.app-shell .action-chip--orange:hover{
  background:linear-gradient(180deg, rgba(214,139,36,.28), rgba(214,139,36,.18));
}
body.app-shell .action-chip--red{
  border-color:rgba(239,121,121,.26);
  background:linear-gradient(180deg, rgba(182,74,74,.2), rgba(182,74,74,.12));
}
body.app-shell .action-chip--red:hover{
  background:linear-gradient(180deg, rgba(182,74,74,.28), rgba(182,74,74,.18));
}
body.app-shell .action-chip--green{
  border-color:rgba(104,211,145,.26);
  background:linear-gradient(180deg, rgba(51,153,92,.2), rgba(51,153,92,.12));
}
body.app-shell .action-chip--green:hover{
  background:linear-gradient(180deg, rgba(51,153,92,.28), rgba(51,153,92,.18));
}
body.app-shell .action-chip:disabled{opacity:.58;cursor:not-allowed}
body.app-shell .board-top-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
body.app-shell .board-floating-resort{
  position:fixed;
  right:16px;
  left:auto;
  bottom:calc(76px + env(safe-area-inset-bottom));
  transform:none;
  z-index:40;
  display:flex;
  justify-content:flex-end;
  pointer-events:none;
}
body.app-shell .board-floating-resort__btn{
  pointer-events:auto;
  min-height:38px;
  height:38px;
  padding:0 14px;
  border-radius:12px;
  box-shadow:0 12px 28px rgba(16,42,67,.18);
}
@media (max-width: 820px){
  body.app-shell .board-floating-resort{
    right:12px;
    left:12px;
    bottom:calc(72px + env(safe-area-inset-bottom));
    justify-content:flex-end;
  }
  body.app-shell .board-floating-resort__btn{
    width:auto;
    max-width:100%;
  }
}

/* Enterprise redesign layer */
:root{
  --page-max:1440px;
  --content-max:1120px;
  --form-max:880px;
  --enterprise-radius:22px;
  --enterprise-radius-lg:26px;
  --enterprise-line:rgba(148,163,184,.14);
  --enterprise-line-strong:rgba(96,165,250,.22);
  --enterprise-fill:linear-gradient(180deg, rgba(18,31,49,.94), rgba(13,22,34,.98));
  --enterprise-fill-soft:linear-gradient(180deg, rgba(22,36,55,.92), rgba(14,24,38,.94));
  --enterprise-shadow:0 18px 42px rgba(0,0,0,.24);
}

body.app-theme.enterprise-subpage .topbar,
body.app-theme.module-catalog-page .topbar{
  backdrop-filter:blur(16px);
}

.enterprise-page,
.module-overview{
  width:min(var(--page-max), calc(100% - 32px));
  margin:0 auto;
}

.content-wrap{
  width:min(var(--content-max), calc(100% - 32px));
  margin:0 auto;
}

.form-wrap{
  width:min(var(--form-max), calc(100% - 32px));
  margin:0 auto;
}

.page-stack{
  display:grid;
  gap:22px;
  padding:22px 0 108px;
}

.hero-card,
.panel-card{
  border-radius:var(--enterprise-radius);
  border:1px solid var(--enterprise-line);
  background:var(--enterprise-fill);
  box-shadow:var(--enterprise-shadow);
}

.hero-card{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:20px;
  padding:22px 24px;
  background:
    radial-gradient(circle at top left, rgba(59,130,246,.14), transparent 35%),
    linear-gradient(180deg, rgba(19,31,48,.96), rgba(13,22,34,.98));
  border-radius:var(--enterprise-radius-lg);
}

.hero-card__content{display:grid;gap:10px;max-width:820px}
.hero-card__content h1{margin:0;font-size:clamp(1.45rem,2.3vw,2.05rem);line-height:1.08;letter-spacing:-.02em;color:#f5f9ff}
.hero-card__content p{margin:0;color:var(--dark-muted);line-height:1.6}
.hero-card__actions{display:flex;gap:10px;flex-wrap:wrap;align-self:center}

.eyebrow{
  display:inline-flex;align-items:center;width:max-content;min-height:28px;padding:0 12px;border-radius:999px;
  background:rgba(59,130,246,.12);border:1px solid rgba(96,165,250,.18);color:#b8d8ff;
  font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
}

.panel-card__head{
  padding:18px 20px 12px;
  border-bottom:1px solid rgba(148,163,184,.10);
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
}
.panel-card__head h2,
.panel-card__head h3{margin:0;color:#f4f8ff}
.panel-card__head p{margin:4px 0 0;color:var(--dark-muted);line-height:1.55}
.panel-card__body{padding:18px 20px 20px}
.panel-card--compact .panel-card__body{padding-top:16px}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;
  border:1px solid transparent;font-size:.88rem;font-weight:700;text-decoration:none;cursor:pointer;transition:all .18s ease;
}
.btn--primary{
  color:#edf7ff;background:linear-gradient(135deg, rgba(42,132,255,.22), rgba(91,192,255,.16));
  border-color:rgba(91,192,255,.24);box-shadow:0 10px 22px rgba(24,104,196,.18);
}
.btn--primary:hover{transform:translateY(-1px);box-shadow:0 14px 26px rgba(24,104,196,.24)}
.btn--ghost{color:#dbe7f5;background:rgba(255,255,255,.04);border-color:rgba(148,163,184,.16)}
.btn--ghost:hover{background:rgba(255,255,255,.06);border-color:rgba(148,163,184,.22)}

.module-overview{display:grid;gap:28px;padding:24px 0 108px}
.module-hero{
  display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:24px 26px;border-radius:26px;
  border:1px solid var(--enterprise-line);background:
    radial-gradient(circle at top left, rgba(59,130,246,.16), transparent 34%),
    linear-gradient(180deg, rgba(19,31,48,.96), rgba(13,22,34,.98));
  box-shadow:var(--enterprise-shadow);
}
.module-hero__content{display:grid;gap:10px;max-width:820px}
.module-hero__content h1{margin:0;font-size:clamp(1.5rem,2.4vw,2.25rem);line-height:1.1;letter-spacing:-.02em;color:#f5f9ff}
.module-hero__content p{margin:0;color:var(--dark-muted);max-width:760px;line-height:1.6}
.module-hero__actions{display:flex;flex-wrap:wrap;gap:10px;align-self:center}
.module-section{display:grid;gap:14px}
.module-section__head{display:flex;justify-content:space-between;align-items:end;gap:16px}
.module-section__head h2{margin:0;font-size:1.02rem;font-weight:700;color:#eef4ff}
.module-section__head p{margin:.35rem 0 0;color:var(--dark-muted);line-height:1.55}
.module-grid{display:grid;gap:16px}
.module-grid--hero{grid-template-columns:repeat(12,1fr)}
.module-grid--standard{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.module-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.module-card{
  display:grid;gap:12px;min-height:168px;padding:18px;border-radius:22px;text-decoration:none;color:var(--dark-text);
  background:linear-gradient(180deg, rgba(20,32,48,.96), rgba(14,23,35,.98));
  border:1px solid rgba(148,163,184,.14);box-shadow:0 12px 28px rgba(0,0,0,.18);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.module-card:hover{transform:translateY(-2px);border-color:rgba(96,165,250,.26);box-shadow:0 16px 34px rgba(0,0,0,.24)}
.module-card:focus-visible{outline:none;border-color:rgba(96,165,250,.36);box-shadow:0 0 0 4px rgba(96,165,250,.10),0 16px 34px rgba(0,0,0,.24)}
.module-card--hero{grid-column:span 4;min-height:192px;padding:22px;border-radius:24px;background:radial-gradient(circle at top right, rgba(59,130,246,.10), transparent 28%), linear-gradient(180deg, rgba(22,36,55,.98), rgba(14,24,38,.98))}
.module-card__meta{display:flex;flex-wrap:wrap;gap:8px}
.module-card__title{margin:0;font-size:1rem;font-weight:700;letter-spacing:-.01em;color:#f5f9ff}
.module-card__desc{margin:0;color:var(--dark-muted);font-size:.92rem;line-height:1.58}
.module-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.02em;border:1px solid rgba(148,163,184,.16);background:rgba(255,255,255,.04);color:#ced9e7}
.module-badge--primary{background:linear-gradient(135deg, rgba(42,132,255,.16), rgba(91,192,255,.12));border-color:rgba(91,192,255,.24);color:#abd9ff}
.module-card--disabled{opacity:.74;cursor:default;background:linear-gradient(180deg, rgba(18,31,49,.74), rgba(15,25,40,.84))}
.module-card--disabled:hover{transform:none;box-shadow:0 12px 28px rgba(0,0,0,.18)}

body.app-theme .module-card strong,
body.app-theme .module-card span{color:inherit}

.enterprise-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.enterprise-card-muted{background:rgba(255,255,255,.03);border:1px solid rgba(148,163,184,.12);box-shadow:0 10px 24px rgba(0,0,0,.14)}
.enterprise-tight-grid{gap:14px}
.enterprise-actions{margin-top:16px}

.patient-layout,
.tariff-layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:18px}
.patient-panel--list{align-self:start}
.patient-panel--form{min-width:0}
.section-head--soft{align-items:center}
.enterprise-list .list-item,
.enterprise-list .match-item{
  border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(148,163,184,.12);color:#eaf2ff;
}
.form-section-grid{display:grid;gap:14px}
.form-section-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.form-section-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.enterprise-form-stack{display:grid;gap:16px}
.enterprise-form-stack label{display:grid;gap:7px;color:#c9d7e6;font-size:.84rem;font-weight:600}
.enterprise-form-stack input,
.enterprise-form-stack textarea,
.enterprise-form-stack select{
  min-height:40px;padding:10px 12px;border-radius:14px;border:1px solid rgba(148,163,184,.16);
  background:rgba(255,255,255,.045);color:#eef5ff;
}
.enterprise-form-stack textarea{min-height:96px;resize:vertical}
.enterprise-subsection{padding:16px;border-radius:18px;background:rgba(255,255,255,.03);border:1px solid rgba(148,163,184,.10)}
.patient-toggle-row{display:flex;flex-wrap:wrap;gap:10px 14px;padding:2px 0 2px}
.patient-toggle-row label{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(148,163,184,.10)}
.tariff-main-card{min-width:0}
.tariff-side-card{align-self:start}
.tariff-action-row{align-items:center;gap:10px 12px;flex-wrap:wrap}

body.app-theme.enterprise-subpage .simple-list,
body.app-theme.enterprise-subpage .preset-list,
body.app-theme.enterprise-subpage .stack-gap{gap:12px}
body.app-theme.enterprise-subpage .card,
body.app-theme.enterprise-subpage .admin-setting-card{
  border-radius:20px;
}
body.app-theme.enterprise-subpage .admin-setting-card,
body.app-theme.enterprise-subpage .split-layout>.card,
body.app-theme.enterprise-subpage .card-elevated{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(148,163,184,.12);
  box-shadow:0 12px 30px rgba(0,0,0,.16);
}
body.app-theme.enterprise-subpage .ghost-button,
body.app-theme.enterprise-subpage .ghost,
body.app-theme.module-catalog-page .ghost-button{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(148,163,184,.14);
}
body.app-theme.enterprise-subpage .primary,
body.app-theme.enterprise-subpage .primary-button,
body.app-theme.enterprise-subpage .primary-button--xl{
  background:linear-gradient(135deg, rgba(42,132,255,.24), rgba(91,192,255,.16));
  color:#eaf6ff;
  box-shadow:0 10px 22px rgba(24,104,196,.18);
}
body.app-theme.enterprise-subpage .small-link{padding:10px 12px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(148,163,184,.14);text-decoration:none}
body.app-theme.enterprise-subpage input:focus,
body.app-theme.enterprise-subpage select:focus,
body.app-theme.enterprise-subpage textarea:focus{outline:none;border-color:rgba(124,196,255,.38);box-shadow:0 0 0 4px rgba(124,196,255,.10)}

@media (max-width:1100px){
  .module-grid--hero{grid-template-columns:repeat(2,1fr)}
  .module-card--hero{grid-column:auto}
  .module-info-grid,
  .enterprise-two-col,
  .patient-layout,
  .tariff-layout{grid-template-columns:1fr}
}

@media (max-width:780px){
  .module-overview,
  .content-wrap{width:min(100%, calc(100% - 20px))}
  .module-overview{padding:18px 0 96px;gap:22px}
  .module-hero,
  .hero-card{flex-direction:column;align-items:flex-start;padding:20px}
  .module-hero__actions,
  .hero-card__actions{width:100%}
  .module-hero__actions .btn,
  .hero-card__actions .btn{flex:1 1 auto}
  .module-grid--hero,
  .module-grid--standard,
  .module-info-grid,
  .enterprise-two-col,
  .patient-layout,
  .tariff-layout,
  .form-section-grid--two,
  .form-section-grid--three{grid-template-columns:1fr}
  .module-card,
  .module-card--hero{min-height:auto}
  .panel-card__head{flex-direction:column;align-items:flex-start}
}

/* Copay tariffs page refinement */
body.app-theme.tariff-page .tariff-layout{
  grid-template-columns:minmax(0, 1.28fr) minmax(300px, .72fr);
  align-items:start;
}
body.app-theme.tariff-page .tariff-main-card,
body.app-theme.tariff-page .tariff-side-card,
body.app-theme.tariff-page #copayTariffForm > .card{
  min-width:0;
  overflow:hidden;
}
body.app-theme.tariff-page #copayTariffForm > .card{
  padding:18px;
}
body.app-theme.tariff-page .section-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
body.app-theme.tariff-page .section-head h3{
  min-width:0;
}
body.app-theme.tariff-page .admin-settings-grid{
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
  align-items:start;
}
body.app-theme.tariff-page .admin-settings-grid > label,
body.app-theme.tariff-page .grid.two > .display-block{
  min-width:0;
}
body.app-theme.tariff-page .admin-settings-grid .span-2{
  grid-column:1 / -1;
}
body.app-theme.tariff-page .grid.two{
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
  align-items:start;
}
body.app-theme.tariff-page .display-block{
  margin-bottom:0;
  padding:16px;
}
body.app-theme.tariff-page .display-label{
  margin-bottom:10px;
}
body.app-theme.tariff-page textarea[data-field="insurances"]{
  min-height:152px;
}
body.app-theme.tariff-page .helper-text{
  line-height:1.6;
}
body.app-theme.tariff-page .tariff-action-row{
  justify-content:flex-start;
}
body.app-theme.tariff-page .inline-status{
  min-height:40px;
  display:flex;
  align-items:center;
}

@media (max-width: 900px){
  body.app-theme.tariff-page .admin-settings-grid,
  body.app-theme.tariff-page .grid.two{
    grid-template-columns:1fr;
  }
}

body.driver-app-shell .bottom-nav{display:flex!important;}
body.driver-app-shell .driver-phone,
body.driver-app-shell .driver-screen,
body.driver-app-shell .driver-app,
.dienst-morgen-app-shell{padding-bottom:88px;}


.radio-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.radio-row label{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(148,163,184,.10)}
.radio-row input[type="radio"]{accent-color:var(--primary)}
.radio-row--copay{gap:10px 12px}


body.app-theme .inline-dual select.select-unmatched,
body.app-shell .inline-dual select.select-unmatched{
  border-color: rgba(239, 68, 68, .52) !important;
  background: linear-gradient(180deg, rgba(127, 29, 29, .18), rgba(255, 255, 255, .04));
  color: #ffd5d5;
  box-shadow: 0 0 0 1px rgba(239,68,68,.16), inset 0 0 0 1px rgba(239,68,68,.08);
}
body.app-theme .inline-dual select.select-unmatched:focus,
body.app-shell .inline-dual select.select-unmatched:focus{
  border-color: rgba(248, 113, 113, .68) !important;
  box-shadow: 0 0 0 3px rgba(239,68,68,.12);
}


/* TKBA757: driver.html im Dashboard-Stil mit statischer Full-HD/Tablet-Anordnung */
.driver-dashboard-shell{
  max-width:1720px;
  background:
    radial-gradient(circle at top right, rgba(80,138,196,.18), transparent 28%),
    linear-gradient(180deg,#0d2230 0%, #102a3a 42%, #0d2230 100%);
}
.driver-dashboard-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:18px;
  padding:22px 28px 16px;
  border-bottom:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
}
.driver-dashboard-head__meta{
  display:grid;
  grid-template-columns:repeat(2,minmax(140px,1fr));
  gap:12px;
}
.driver-dashboard-pill{
  display:grid;
  gap:4px;
  min-width:140px;
  padding:12px 14px;
  border-radius:18px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 10px 24px rgba(4,18,29,.18);
}
.driver-dashboard-pill span{
  font-size:.74rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:rgba(238,247,251,.64);
}
.driver-dashboard-pill strong{
  color:#fff;
  font-size:1.02rem;
  line-height:1.2;
}
.driver-start-grid--dashboard{
  display:grid;
  grid-template-columns:minmax(720px,1.15fr) minmax(420px,.85fr);
  gap:24px;
  align-items:start;
  padding:20px 28px 18px !important;
  overflow:auto !important;
}
.driver-start-main,
.driver-start-side{
  display:grid;
  gap:16px;
  align-content:start;
  min-width:0;
}
.driver-start-side{
  position:sticky;
  top:0;
}
.driver-start-main .driver-start-card,
.driver-start-side .driver-step-card,
.driver-start-side .driver-start-card{
  backdrop-filter:blur(8px);
}
.driver-inline-button-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  align-self:end;
  padding:0;
  margin:0;
  position:static;
  background:transparent;
}
.driver-inline-button-grid--single-gap{
  margin-top:12px;
}
.driver-start-card .driver-followup-grid{
  align-items:end;
}
.driver-start-card .driver-field select,
.driver-start-card .driver-field input{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04), 0 8px 18px rgba(5,15,24,.12);
}
.driver-readiness-strip{
  background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.14);
}
.driver-status-panel,
.driver-workflow-card,
.driver-lock-summary,
.driver-current-context,
.driver-start-card{
  background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.05));
  border-color:rgba(255,255,255,.14);
}
.driver-step-card--alert{
  box-shadow:0 16px 34px rgba(73,18,10,.18);
}
@media (max-width: 1360px){
  .driver-start-grid--dashboard{
    grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);
  }
  .driver-dashboard-head__meta{
    grid-template-columns:1fr;
  }
}
@media (max-width: 1180px){
  .driver-dashboard-head{
    grid-template-columns:1fr;
  }
  .driver-dashboard-head__meta{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .driver-start-grid--dashboard{
    grid-template-columns:1fr;
  }
  .driver-start-side{
    position:static;
  }
}
@media (max-width: 760px){
  .driver-dashboard-head,
  .driver-start-grid--dashboard{
    padding-left:12px !important;
    padding-right:12px !important;
  }
  .driver-dashboard-head__meta,
  .driver-inline-button-grid,
  .driver-start-card .driver-followup-grid{
    grid-template-columns:1fr !important;
  }
}


/* TKBA758: driver.html verschlanken, feste Tablet-/Full-HD-Anordnung ohne Scrollen */
body.driver-app-shell{
  overflow:hidden;
}
.driver-login-shell{
  max-width:1400px;
  background:
    radial-gradient(circle at top right, rgba(80,138,196,.14), transparent 26%),
    linear-gradient(180deg,#0d2230 0%, #102a3a 46%, #0d2230 100%);
}
.driver-login-head{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:18px;
  align-items:center;
  padding:18px 24px 14px;
  border-bottom:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
}
.driver-login-brand{
  font-size:1.22rem;
  font-weight:800;
  letter-spacing:.01em;
  color:#f5fbff;
}
.driver-login-statusline{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.driver-login-chip{
  display:grid;
  gap:2px;
  padding:10px 12px;
  border-radius:16px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
}
.driver-login-chip span{
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:rgba(238,247,251,.58);
}
.driver-login-chip strong{
  font-size:1rem;
  line-height:1.2;
  color:#fff;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.driver-login-layout{
  display:grid;
  grid-template-rows:auto 1fr auto;
  gap:14px;
  padding:18px 24px 20px !important;
  min-height:calc(100dvh - 92px);
  overflow:hidden !important;
}
.driver-login-notices{
  display:grid;
  gap:10px;
  min-height:0;
}
.driver-login-note{
  padding:10px 14px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  color:#f5fbff;
  font-weight:600;
}
.driver-login-note--error{
  background:rgba(127,29,29,.34);
  border-color:rgba(248,113,113,.42);
}
.driver-login-note--ok{
  background:rgba(6,78,59,.28);
  border-color:rgba(52,211,153,.32);
}
.driver-login-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:14px;
  min-height:0;
}
.driver-login-card{
  min-height:0;
  padding:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.05));
  border-color:rgba(255,255,255,.14);
  overflow:hidden;
}
.driver-login-card::before{
  height:3px;
}
.driver-login-card .driver-stage-head{
  margin-bottom:10px;
}
.driver-login-field,
.driver-login-field select{
  height:100%;
}
.driver-login-field select{
  min-height:54px;
  font-size:1rem;
}
.driver-login-role-row{
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  gap:12px;
  height:calc(100% - 34px);
}
.driver-login-actions-inline{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.driver-login-actions-inline .primary-button,
.driver-login-actions-inline .secondary-button,
.driver-login-footer .primary-button,
.driver-login-footer .secondary-button{
  min-height:56px;
  font-size:1rem;
}
.driver-login-footer{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  padding:14px 18px;
}
@media (max-width: 1280px){
  .driver-login-head{
    grid-template-columns:1fr;
  }
}
@media (max-width: 980px){
  body.driver-app-shell{overflow:auto;}
  .driver-login-layout{
    min-height:auto;
    overflow:auto !important;
  }
  .driver-login-statusline,
  .driver-login-grid,
  .driver-login-footer{
    grid-template-columns:1fr;
  }
  .driver-login-grid{
    grid-template-rows:auto;
  }
}

/* TKBA759: driver.html optisch an Dashboard-Farbschema angleichen, ruhiger und hochwertiger */
body.driver-app-shell.driver-app-shell--dark{
  background:linear-gradient(180deg,#eef4f9 0%,#e6edf5 100%);
  color:#17324a;
}
body.driver-app-shell .driver-screen.active{
  background:linear-gradient(180deg,#eef4f9 0%,#e6edf5 100%);
}
body.driver-app-shell .driver-phone.driver-login-shell{
  width:min(1480px,calc(100vw - 28px));
  max-width:1480px;
  height:calc(100dvh - 28px);
  margin:14px auto;
  border-radius:32px;
  border:1px solid rgba(39,76,119,.12);
  box-shadow:0 20px 44px rgba(31,41,55,.10);
  background:
    radial-gradient(circle at top right, rgba(47,111,237,.10), transparent 24%),
    radial-gradient(circle at bottom left, rgba(39,76,119,.06), transparent 26%),
    linear-gradient(180deg,#f8fbfe 0%,#eef4f9 100%);
  overflow:hidden;
}
body.driver-app-shell .driver-login-head{
  grid-template-columns:320px minmax(0,1fr);
  gap:20px;
  align-items:center;
  padding:22px 28px 16px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(246,250,253,.92));
  border-bottom:1px solid rgba(39,76,119,.10);
}
body.driver-app-shell .driver-login-brand{
  color:#274c77;
  font-size:1.45rem;
  font-weight:800;
  letter-spacing:.01em;
}
body.driver-app-shell .driver-login-statusline{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
body.driver-app-shell .driver-login-chip{
  padding:12px 14px;
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff 0%,#f5f9fd 100%);
  border:1px solid rgba(39,76,119,.12);
  box-shadow:0 8px 20px rgba(18,39,61,.05);
}
body.driver-app-shell .driver-login-chip span{
  color:#6b8195;
  font-size:.66rem;
}
body.driver-app-shell .driver-login-chip strong{
  color:#17324a;
  font-size:1rem;
}
body.driver-app-shell .driver-phone-body.driver-login-layout{
  display:grid;
  grid-template-rows:minmax(0,auto) minmax(0,1fr) auto;
  gap:16px;
  padding:18px 28px 22px !important;
  min-height:0;
}
body.driver-app-shell .driver-login-notices{
  min-height:0;
}
body.driver-app-shell .driver-login-note{
  border-radius:16px;
  border:1px solid rgba(39,76,119,.10);
  background:#ffffff;
  color:#274c77;
  font-weight:700;
  box-shadow:0 8px 20px rgba(18,39,61,.04);
}
body.driver-app-shell .driver-login-note--error{
  background:#fff4f3;
  border-color:rgba(185,64,54,.20);
  color:#9b2226;
}
body.driver-app-shell .driver-login-note--ok{
  background:#eefaf3;
  border-color:rgba(36,92,54,.18);
  color:#245c36;
}
body.driver-app-shell .driver-login-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:16px;
}
body.driver-app-shell .driver-step-card.driver-step-card--dark.driver-login-card{
  background:linear-gradient(180deg,#ffffff 0%,#f7fafc 100%);
  color:#17324a;
  border:1px solid rgba(39,76,119,.12);
  border-radius:26px;
  box-shadow:0 12px 28px rgba(31,41,55,.08);
  padding:20px;
}
body.driver-app-shell .driver-step-card.driver-step-card--dark.driver-login-card::before{
  content:'';
  display:block;
  width:64px;
  height:4px;
  border-radius:999px;
  margin-bottom:14px;
  background:linear-gradient(90deg,#2f6fed,#6ea8ff);
}
body.driver-app-shell .driver-step-card.driver-step-card--dark.driver-login-card .driver-stage-head{
  color:#274c77;
  font-size:1.02rem;
  font-weight:800;
  margin-bottom:12px;
}
body.driver-app-shell .driver-field.driver-field--dark span{
  color:#607889;
}
body.driver-app-shell .driver-field.driver-field--dark select,
body.driver-app-shell .driver-field.driver-field--dark input,
body.driver-app-shell .driver-field.driver-field--dark textarea{
  background:#ffffff;
  color:#17324a;
  border:1px solid #d9e3ef;
  border-radius:18px;
  min-height:58px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
body.driver-app-shell .driver-field.driver-field--dark select:disabled,
body.driver-app-shell .driver-field.driver-field--dark input:disabled,
body.driver-app-shell .driver-field.driver-field--dark textarea:disabled{
  background:#f3f6fa;
  color:#6e8397;
}
body.driver-app-shell .driver-login-role-row{
  grid-template-rows:minmax(0,1fr) auto;
  gap:14px;
}
body.driver-app-shell .driver-login-actions-inline,
body.driver-app-shell .driver-login-footer{
  gap:12px;
}
body.driver-app-shell .driver-login-footer{
  padding:0;
  background:transparent;
  border:none;
  box-shadow:none;
}
body.driver-app-shell .primary-button,
body.driver-app-shell .secondary-button,
body.driver-app-shell .primary-link-button{
  min-height:58px;
  border-radius:18px;
  font-weight:800;
  border:1px solid transparent;
  box-shadow:none;
}
body.driver-app-shell .primary-button,
body.driver-app-shell .primary-link-button{
  background:linear-gradient(135deg,#2f6fed 0%,#3f82ff 100%);
  color:#fff;
}
body.driver-app-shell .primary-button:hover,
body.driver-app-shell .primary-link-button:hover{
  filter:brightness(.98);
}
body.driver-app-shell .secondary-button{
  background:#edf4f8;
  color:#274c77;
  border-color:#d9e3ef;
}
body.driver-app-shell .primary-button:disabled,
body.driver-app-shell .secondary-button:disabled,
body.driver-app-shell .primary-link-button:disabled{
  opacity:.58;
}
body.driver-app-shell .driver-confirm-backdrop{
  background:rgba(14,30,46,.26);
  backdrop-filter:blur(4px);
}
body.driver-app-shell .driver-confirm-modal{
  background:linear-gradient(180deg,#ffffff 0%,#f6f9fc 100%);
  color:#17324a;
  border:1px solid rgba(39,76,119,.12);
  border-radius:26px;
  box-shadow:0 24px 50px rgba(18,39,61,.18);
}
body.driver-app-shell .driver-confirm-modal .driver-stage-head{
  color:#274c77;
}
body.driver-app-shell .driver-confirm-modal .driver-alert__text{
  color:#5b7184;
}

@media (max-width: 1360px){
  body.driver-app-shell .driver-login-head{
    grid-template-columns:1fr;
  }
}
@media (max-width: 980px){
  body.driver-app-shell{
    overflow:auto;
  }
  body.driver-app-shell .driver-phone.driver-login-shell{
    width:calc(100vw - 16px);
    height:auto;
    min-height:calc(100dvh - 16px);
    margin:8px auto;
    border-radius:24px;
  }
  body.driver-app-shell .driver-phone-body.driver-login-layout{
    padding:14px 16px 16px !important;
  }
  body.driver-app-shell .driver-login-head{
    padding:16px 16px 12px;
  }
}


/* 760: driver login compact dark dashboard alignment */
body.driver-app-shell{background:#0b1118 !important;overflow:hidden;}
body.driver-app-shell .driver-screen.active{
  background:radial-gradient(circle at top right, rgba(68,112,180,.16), transparent 22%), linear-gradient(180deg,#0b1118 0%, #101823 100%) !important;
}
body.driver-app-shell .driver-phone.driver-login-shell{
  width:min(1500px,calc(100vw - 20px));
  height:calc(100dvh - 20px);
  margin:10px auto;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 18px 40px rgba(0,0,0,.30);
  background:linear-gradient(180deg,#111925 0%,#0e1621 100%);
}
body.driver-app-shell .driver-login-head{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:16px;
  padding:16px 20px 12px;
  background:rgba(255,255,255,.02);
  border-bottom:1px solid rgba(255,255,255,.08);
}
body.driver-app-shell .driver-login-brand{
  color:#eef3ff;
  font-size:1.1rem;
  font-weight:800;
  letter-spacing:.01em;
}
body.driver-app-shell .driver-login-statusline{
  display:flex;
  justify-content:flex-end;
  gap:10px;
}
body.driver-app-shell .driver-login-chip{
  min-width:140px;
  padding:8px 12px;
  border-radius:14px;
  background:#182233;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:none;
}
body.driver-app-shell .driver-login-chip:nth-child(n+3){display:none;}
body.driver-app-shell .driver-login-chip span{color:#8fa3bf;font-size:.62rem;}
body.driver-app-shell .driver-login-chip strong{color:#f3f7ff;font-size:.92rem;}
body.driver-app-shell .driver-phone-body.driver-login-layout{
  display:grid;
  grid-template-rows:auto 1fr auto;
  gap:12px;
  padding:12px 20px 18px !important;
  overflow:hidden !important;
}
body.driver-app-shell .driver-login-notices{min-height:0;}
body.driver-app-shell .driver-login-note{
  padding:10px 12px;
  border-radius:14px;
  background:#182233;
  color:#dce7fb;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:none;
}
body.driver-app-shell .driver-login-note--error{background:#30171b;border-color:rgba(255,133,133,.18);color:#ffc3c3;}
body.driver-app-shell .driver-login-note--ok{background:#14261f;border-color:rgba(133,216,171,.18);color:#b7f1cb;}
body.driver-app-shell .driver-login-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-template-areas:'shift shift shift vehicle vehicle vehicle driver driver driver driver codriver codriver';
  gap:12px;
  min-height:0;
}
body.driver-app-shell .driver-login-grid > :nth-child(1){grid-area:shift;}
body.driver-app-shell .driver-login-grid > :nth-child(2){grid-area:vehicle;}
body.driver-app-shell .driver-login-grid > :nth-child(3){grid-area:driver;}
body.driver-app-shell .driver-login-grid > :nth-child(4){grid-area:codriver;}
body.driver-app-shell .driver-step-card.driver-step-card--dark.driver-login-card{
  padding:14px 16px;
  border-radius:18px;
  background:#182233;
  color:#eef3ff;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:none;
  min-height:0;
}
body.driver-app-shell .driver-step-card.driver-step-card--dark.driver-login-card::before{display:none;}
body.driver-app-shell .driver-step-card.driver-step-card--dark.driver-login-card .driver-stage-head{
  margin-bottom:8px;
  color:#eef3ff;
  font-size:.88rem;
  letter-spacing:.03em;
  text-transform:uppercase;
}
body.driver-app-shell .driver-field.driver-field--dark{gap:6px;margin-bottom:0;}
body.driver-app-shell .driver-field.driver-field--dark select,
body.driver-app-shell .driver-field.driver-field--dark input,
body.driver-app-shell .driver-field.driver-field--dark textarea{
  min-height:44px;
  padding:10px 12px;
  background:#0f1722;
  color:#eef3ff;
  border:1px solid rgba(255,255,255,.10);
  border-radius:12px;
  box-shadow:none;
}
body.driver-app-shell .driver-field.driver-field--dark select:disabled,
body.driver-app-shell .driver-field.driver-field--dark input:disabled,
body.driver-app-shell .driver-field.driver-field--dark textarea:disabled{
  background:#111925;
  color:#8ea0b8;
}
body.driver-app-shell .driver-login-role-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 152px;
  gap:10px;
  align-items:end;
}
body.driver-app-shell .driver-login-actions-inline,
body.driver-app-shell .driver-login-footer{
  display:grid;
  gap:10px;
}
body.driver-app-shell .driver-login-actions-inline{grid-template-columns:1fr 1fr;}
body.driver-app-shell .driver-login-footer{
  grid-template-columns:180px 180px;
  justify-content:end;
  padding:0;
  background:transparent;
  border:none;
  box-shadow:none;
}
body.driver-app-shell .primary-button,
body.driver-app-shell .secondary-button,
body.driver-app-shell .primary-link-button{
  min-height:44px;
  padding:10px 14px;
  border-radius:12px;
  font-size:.95rem;
  font-weight:700;
  box-shadow:none;
}
body.driver-app-shell .primary-button,
body.driver-app-shell .primary-link-button{
  background:#2a6bf2;
  color:#fff;
  border:1px solid rgba(255,255,255,.08);
}
body.driver-app-shell .secondary-button{
  background:#121c29;
  color:#d8e5fa;
  border:1px solid rgba(255,255,255,.10);
}
body.driver-app-shell .primary-button:hover,
body.driver-app-shell .secondary-button:hover,
body.driver-app-shell .primary-link-button:hover{filter:brightness(1.05);}
body.driver-app-shell .primary-button:disabled,
body.driver-app-shell .secondary-button:disabled,
body.driver-app-shell .primary-link-button:disabled{opacity:.48;}
body.driver-app-shell .driver-confirm-backdrop{background:rgba(7,11,17,.58);backdrop-filter:blur(6px);}
body.driver-app-shell .driver-confirm-modal{
  background:#182233;
  color:#eef3ff;
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  box-shadow:0 22px 48px rgba(0,0,0,.35);
}
body.driver-app-shell .driver-confirm-modal .driver-stage-head,
body.driver-app-shell .driver-confirm-modal .driver-alert__text{color:#eef3ff;}
@media (max-width: 1260px){
  body.driver-app-shell .driver-login-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-areas:'shift vehicle' 'driver codriver';
  }
}
@media (max-width: 900px){
  body.driver-app-shell{overflow:auto;}
  body.driver-app-shell .driver-phone.driver-login-shell{
    width:calc(100vw - 12px);
    height:auto;
    min-height:calc(100dvh - 12px);
    margin:6px auto;
    border-radius:18px;
  }
  body.driver-app-shell .driver-login-head{
    grid-template-columns:1fr;
    justify-items:start;
    gap:10px;
    padding:14px 14px 10px;
  }
  body.driver-app-shell .driver-login-statusline{justify-content:flex-start;flex-wrap:wrap;}
  body.driver-app-shell .driver-phone-body.driver-login-layout{padding:10px 14px 14px !important;overflow:auto !important;}
  body.driver-app-shell .driver-login-grid{grid-template-columns:1fr;grid-template-areas:'shift' 'vehicle' 'driver' 'codriver';}
  body.driver-app-shell .driver-login-role-row{grid-template-columns:1fr;}
  body.driver-app-shell .driver-login-footer{grid-template-columns:1fr 1fr;}
}


/* TKBA761: driver.html neu sortiert, dunkel, kompakt, dashboard-nah */
body.driver-app-shell.driver-app-shell--dark{
  background:radial-gradient(circle at top, rgba(24,84,176,.18), transparent 24%), linear-gradient(180deg,#07111d 0%,#09172a 100%);
  color:#eef4ff;
}
body.driver-app-shell .driver-screen.active{
  background:transparent;
}
body.driver-app-shell .driver-phone.driver-login-shell{
  width:min(1520px, calc(100vw - 28px));
  max-width:1520px;
  height:calc(100dvh - 28px);
  margin:14px auto;
  border-radius:30px;
  border:1px solid rgba(110,148,210,.16);
  box-shadow:0 22px 60px rgba(0,0,0,.34);
  background:linear-gradient(180deg, rgba(10,22,39,.98), rgba(7,18,32,.98));
}
body.driver-app-shell .driver-login-head{
  grid-template-columns:minmax(320px,1fr) auto;
  gap:18px;
  align-items:center;
  padding:18px 22px 14px;
  background:linear-gradient(180deg, rgba(18,32,54,.96), rgba(13,25,43,.96));
  border-bottom:1px solid rgba(110,148,210,.14);
}
body.driver-app-shell .driver-login-brand{
  color:#f3f7ff;
  font-size:1.18rem;
  font-weight:800;
}
body.driver-app-shell .driver-login-statusline--minimal{
  display:grid;
  grid-template-columns:repeat(2, minmax(160px, 1fr));
  gap:10px;
}
body.driver-app-shell .driver-login-chip{
  padding:10px 14px;
  border-radius:16px;
  background:rgba(20,35,59,.88);
  border:1px solid rgba(110,148,210,.14);
  box-shadow:none;
}
body.driver-app-shell .driver-login-chip span{
  color:#8fa8c8;
  font-size:.7rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}
body.driver-app-shell .driver-login-chip strong{
  color:#f2f6ff;
  font-size:1rem;
}
body.driver-app-shell .driver-phone-body.driver-login-layout{
  display:grid;
  grid-template-rows:auto 1fr;
  gap:14px;
  padding:18px 22px 22px !important;
}
body.driver-app-shell .driver-login-notices{
  min-height:0;
}
body.driver-app-shell .driver-login-note{
  border-radius:14px;
  border:1px solid rgba(110,148,210,.18);
  background:rgba(17,31,52,.92);
  color:#dbe8ff;
  font-weight:700;
  box-shadow:none;
}
body.driver-app-shell .driver-login-note--error{
  background:rgba(88,28,36,.34);
  border-color:rgba(248,113,113,.28);
  color:#ffd5d9;
}
body.driver-app-shell .driver-login-note--ok{
  background:rgba(19,78,74,.34);
  border-color:rgba(45,212,191,.24);
  color:#cffaf2;
}
body.driver-app-shell .driver-login-grid{
  align-content:start;
  grid-template-columns:220px 220px minmax(0,1fr) minmax(0,1fr);
  grid-template-rows:auto auto;
  gap:14px;
}
body.driver-app-shell .driver-login-card--select{min-height:132px;}
body.driver-app-shell .driver-login-card--role{min-height:132px;}
body.driver-app-shell .driver-login-footer--compact{
  grid-column:3 / 5;
  min-height:88px;
  align-self:start;
}
body.driver-app-shell .driver-step-card.driver-step-card--dark.driver-login-card{
  background:linear-gradient(180deg, rgba(18,31,51,.94), rgba(13,24,41,.96));
  color:#eef4ff;
  border:1px solid rgba(110,148,210,.14);
  border-radius:22px;
  box-shadow:none;
  padding:16px;
}
body.driver-app-shell .driver-step-card.driver-step-card--dark.driver-login-card::before{display:none;}
body.driver-app-shell .driver-step-card.driver-step-card--dark.driver-login-card .driver-stage-head{
  color:#f2f6ff;
  font-size:1rem;
  font-weight:800;
  margin-bottom:10px;
  letter-spacing:.02em;
}
body.driver-app-shell .driver-field.driver-field--dark select,
body.driver-app-shell .driver-field.driver-field--dark input,
body.driver-app-shell .driver-field.driver-field--dark textarea{
  background:#081425;
  color:#f3f7ff;
  border:1px solid rgba(110,148,210,.18);
  border-radius:14px;
  min-height:48px;
  box-shadow:none;
}
body.driver-app-shell .driver-field.driver-field--dark select:disabled,
body.driver-app-shell .driver-field.driver-field--dark input:disabled,
body.driver-app-shell .driver-field.driver-field--dark textarea:disabled{
  background:#0d1b2d;
  color:#8ca2bf;
}
body.driver-app-shell .driver-login-role-row{
  grid-template-columns:minmax(0,1fr) auto auto;
  grid-template-rows:auto;
  align-items:end;
  gap:10px;
}
body.driver-app-shell .driver-login-actions-inline{
  display:grid;
  grid-template-columns:auto auto;
  gap:10px;
  align-items:end;
}
body.driver-app-shell .driver-login-field{margin:0;}
body.driver-app-shell .driver-login-footer{
  padding:0;
  background:transparent;
  border:none;
  box-shadow:none;
  display:flex;
  justify-content:flex-start;
  align-items:center;
  gap:12px;
}
body.driver-app-shell .primary-button,
body.driver-app-shell .secondary-button,
body.driver-app-shell .primary-link-button{
  min-height:48px;
  padding:0 18px;
  border-radius:14px;
  font-weight:800;
  border:1px solid transparent;
  box-shadow:none;
  font-size:.98rem;
}
body.driver-app-shell .primary-button,
body.driver-app-shell .primary-link-button{
  background:linear-gradient(180deg,#3b82f6 0%, #2563eb 100%);
  color:#fff;
}
body.driver-app-shell .primary-button:hover,
body.driver-app-shell .primary-link-button:hover{filter:brightness(1.03);}
body.driver-app-shell .secondary-button{
  background:rgba(18,31,51,.94);
  color:#dbe8ff;
  border-color:rgba(110,148,210,.16);
}
body.driver-app-shell .primary-button:disabled,
body.driver-app-shell .secondary-button:disabled,
body.driver-app-shell .primary-link-button:disabled{opacity:.52;}
body.driver-app-shell .driver-confirm-backdrop{background:rgba(3,8,17,.6); backdrop-filter:blur(4px);}
body.driver-app-shell .driver-confirm-modal{
  background:linear-gradient(180deg, rgba(17,30,49,.98), rgba(11,21,36,.98));
  color:#eef4ff;
  border:1px solid rgba(110,148,210,.18);
  border-radius:22px;
  box-shadow:0 26px 60px rgba(0,0,0,.4);
}
body.driver-app-shell .driver-confirm-modal .driver-stage-head{color:#f2f6ff;}
body.driver-app-shell .driver-confirm-modal .driver-alert__text{color:#bfd0e6;}
@media (max-width: 1180px){
  body.driver-app-shell .driver-login-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
    grid-template-rows:repeat(3, auto);
  }
  body.driver-app-shell .driver-login-footer--compact{grid-column:1 / -1;}
  body.driver-app-shell .driver-login-role-row{grid-template-columns:1fr;}
  body.driver-app-shell .driver-login-actions-inline{grid-template-columns:1fr 1fr;}
}

/* driver.html tablet/dashboard refinement v762 */
body.driver-app-shell .driver-phone.driver-login-shell{
  width:min(1536px, calc(100vw - 28px));
  max-width:1536px;
  height:calc(100dvh - 28px);
  overflow:hidden;
  background:
    radial-gradient(circle at top center, rgba(30,78,160,.16), transparent 34%),
    linear-gradient(180deg, rgba(10,22,39,.985), rgba(7,18,32,.985));
}
body.driver-app-shell .driver-login-head{
  display:grid;
  grid-template-columns:minmax(340px,1fr) auto;
  align-items:center;
  gap:18px;
  padding:20px 22px 16px;
}
body.driver-app-shell .driver-phone-body.driver-login-layout{
  display:block;
  padding:18px 22px 22px !important;
  overflow:hidden !important;
}
body.driver-app-shell .driver-login-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  grid-template-areas:
    'shift vehicle driver codriver'
    'actions actions feedback feedback';
  gap:16px;
  align-content:start;
}
body.driver-app-shell .driver-login-grid > :nth-child(1){grid-area:shift;}
body.driver-app-shell .driver-login-grid > :nth-child(2){grid-area:vehicle;}
body.driver-app-shell .driver-login-grid > :nth-child(3){grid-area:driver;}
body.driver-app-shell .driver-login-grid > :nth-child(4){grid-area:codriver;}
body.driver-app-shell .driver-login-footer--compact{grid-area:actions;min-height:128px;}
body.driver-app-shell .driver-login-feedback-card{grid-area:feedback;min-height:128px;}
body.driver-app-shell .driver-login-card--select,
body.driver-app-shell .driver-login-card--role,
body.driver-app-shell .driver-login-footer--compact,
body.driver-app-shell .driver-login-feedback-card{min-height:128px;}
body.driver-app-shell .driver-step-card.driver-step-card--dark.driver-login-card{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  padding:16px;
  border-radius:20px;
}
body.driver-app-shell .driver-step-card.driver-step-card--dark.driver-login-card .driver-stage-head{
  margin-bottom:12px;
  min-height:24px;
}
body.driver-app-shell .driver-login-field,
body.driver-app-shell .driver-login-field select{width:100%;}
body.driver-app-shell .driver-field.driver-field--dark select,
body.driver-app-shell .driver-field.driver-field--dark input,
body.driver-app-shell .driver-field.driver-field--dark textarea{
  min-height:52px;
  padding:0 14px;
  font-size:1rem;
}
body.driver-app-shell .driver-login-role-row{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  align-items:stretch;
}
body.driver-app-shell .driver-login-actions-inline,
body.driver-app-shell .driver-login-footer{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  width:100%;
}
body.driver-app-shell .driver-login-actions-inline .primary-button,
body.driver-app-shell .driver-login-actions-inline .secondary-button,
body.driver-app-shell .driver-login-footer .primary-button,
body.driver-app-shell .driver-login-footer .secondary-button{
  width:100%;
  min-width:0;
}
body.driver-app-shell .primary-button,
body.driver-app-shell .secondary-button,
body.driver-app-shell .primary-link-button{
  min-height:52px;
  padding:0 16px;
  font-size:1rem;
  border-radius:14px;
}
body.driver-app-shell .driver-login-feedback-card{
  justify-content:center;
}
body.driver-app-shell .driver-login-note,
body.driver-app-shell .driver-login-note--idle{
  display:flex;
  align-items:center;
  width:100%;
  min-height:96px;
  border-radius:16px;
  padding:16px 18px;
  font-size:1rem;
  line-height:1.35;
}
body.driver-app-shell .driver-login-note--idle{
  border:1px dashed rgba(110,148,210,.16);
  background:rgba(12,24,40,.42);
  color:#91a6c4;
  font-weight:700;
}
body.driver-app-shell .driver-login-feedback-card.is-idle{
  opacity:.92;
}
body.driver-app-shell .driver-login-statusline--minimal{
  grid-template-columns:repeat(2, minmax(150px, 1fr));
}
@media (max-width: 1280px){
  body.driver-app-shell .driver-login-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
    grid-template-areas:
      'shift vehicle'
      'driver codriver'
      'actions feedback';
  }
}
@media (max-width: 900px){
  body.driver-app-shell .driver-phone.driver-login-shell{
    width:min(100vw, calc(100vw - 12px));
    height:calc(100dvh - 12px);
    margin:6px auto;
    border-radius:22px;
  }
  body.driver-app-shell .driver-login-head{
    grid-template-columns:1fr;
    align-items:start;
  }
  body.driver-app-shell .driver-login-grid{
    grid-template-columns:1fr;
    grid-template-areas:
      'shift'
      'vehicle'
      'driver'
      'codriver'
      'actions'
      'feedback';
  }
}

/* Dashboard-Sammelfahrten: Markierungsauswahl */
body.app-shell .ride-chip-v2,
body.app-shell .order-card{
  position:relative;
}
.collective-select{
  position:absolute;
  right:8px;
  bottom:8px;
  z-index:8;
  width:28px;
  height:28px;
  margin:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.collective-select input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.collective-select span{
  width:20px;
  height:20px;
  border-radius:7px;
  border:2px solid rgba(15,76,129,.45);
  background:rgba(255,255,255,.92);
  box-shadow:0 2px 8px rgba(15,23,42,.12);
}
.collective-select input:checked + span{
  border-color:#0f4c81;
  background:#0f4c81;
  box-shadow:0 0 0 3px rgba(15,76,129,.14);
}
.collective-select input:checked + span::after{
  content:'✓';
  display:block;
  color:#fff;
  font-weight:900;
  font-size:14px;
  line-height:17px;
  text-align:center;
}
body.app-shell .ride-chip-v2.is-collective-selected,
body.app-shell .order-card.is-collective-selected{
  outline:2px solid rgba(15,76,129,.32);
  outline-offset:2px;
}
body.app-shell .ride-chip-v2--collective{
  box-shadow:0 0 0 2px rgba(30,92,135,.16), 0 6px 18px rgba(20,44,70,.05);
}
.collective-action-bar{
  position:fixed;
  right:18px;
  bottom:86px;
  z-index:55;
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid rgba(39,76,119,.18);
  border-radius:18px;
  background:rgba(255,255,255,.96);
  box-shadow:0 14px 38px rgba(15,23,42,.18);
  backdrop-filter:blur(12px);
}
.collective-action-bar[hidden]{display:none!important;}
.collective-action-bar__count{
  color:#18364d;
  font-weight:700;
  padding:0 4px;
  white-space:nowrap;
}
.collective-action-bar button:disabled{
  opacity:.45;
  cursor:not-allowed;
}
@media (max-width: 760px){
  .collective-action-bar{
    left:10px;
    right:10px;
    bottom:78px;
    flex-wrap:wrap;
  }
  .collective-action-bar .action-chip,
  .collective-action-bar .nav-chip{
    flex:1 1 100%;
    justify-content:center;
  }
}
body.app-shell .ride-chip-v2 .chip-v2-actions{padding-right:34px;}

/* Dashboard-Sammelfahrten: dezente Gruppenrahmung */
body.app-shell .ride-chip-v2--collective{
  position:relative;
  margin-left:4px;
  margin-right:4px;
}
body.app-shell .ride-chip-v2--collective::before{
  content:'';
  position:absolute;
  left:-9px;
  right:-9px;
  top:-7px;
  bottom:-7px;
  border-left:2px solid rgba(15,76,129,.45);
  border-right:2px solid rgba(15,76,129,.45);
  pointer-events:none;
  z-index:1;
}
body.app-shell .ride-chip-v2--collective-start{margin-top:14px;}
body.app-shell .ride-chip-v2--collective-end{margin-bottom:14px;}
body.app-shell .ride-chip-v2--collective-single{margin-top:14px;margin-bottom:14px;}
body.app-shell .ride-chip-v2--collective-start::before,
body.app-shell .ride-chip-v2--collective-single::before{
  top:-10px;
  border-top:2px solid rgba(15,76,129,.45);
  border-top-left-radius:14px;
  border-top-right-radius:14px;
}
body.app-shell .ride-chip-v2--collective-end::before,
body.app-shell .ride-chip-v2--collective-single::before{
  bottom:-10px;
  border-bottom:2px solid rgba(15,76,129,.45);
  border-bottom-left-radius:14px;
  border-bottom-right-radius:14px;
}
body.app-shell .ride-chip-v2--collective-middle::before{
  top:-8px;
  bottom:-8px;
}
/* Unterschiedliche Sammelfahrten dürfen optisch nicht ineinanderlaufen.
   Die Verbindung innerhalb einer Sammelfahrt entsteht ausschließlich über gleiche ride_group_id
   und die Klassen start/middle/end aus dashboard.js. */
body.app-shell .ride-chip-v2--collective + .drop-slot + .ride-chip-v2--collective,
body.app-shell .ride-chip-v2--collective + .ride-chip-v2--collective-start,
body.app-shell .ride-chip-v2--collective-single + .ride-chip-v2--collective{
  margin-top:18px;
}
body.app-shell .ride-chip-v2--collective .collective-select{z-index:9;}

/* Serienplan-Auswahl im Dashboard */
.series-pattern-picker-overlay{
  position:fixed; inset:0; z-index:10050;
  background:rgba(15,23,42,.48);
  display:flex; align-items:center; justify-content:center;
  padding:24px;
}
.series-pattern-picker{
  width:min(760px, calc(100vw - 32px)); max-height:min(82vh, 760px); overflow:auto;
  background:#fff; color:#172033;
  border-radius:22px; box-shadow:0 22px 70px rgba(15,23,42,.28);
  padding:22px;
}
.series-pattern-picker,
.series-pattern-picker *{ color:#172033; box-sizing:border-box; }
.series-pattern-picker__head{display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:16px;}
.series-pattern-picker__head h2{margin:0 0 4px; font-size:1.35rem; color:#101828;}
.series-pattern-picker__head p{margin:0; color:#475467; line-height:1.35;}
.series-pattern-picker__close{color:#101828; background:#f2f4f7; border:1px solid #d0d5dd; border-radius:999px; width:36px; height:36px; font-size:22px; line-height:1;}
.series-pattern-picker__dates{display:grid; gap:7px; font-weight:700; color:#344054; margin-bottom:16px;}
.series-pattern-picker__dates input{width:100%; border:1px solid #98a2b3; border-radius:12px; background:#fff; color:#101828; padding:11px 12px; font:inherit;}
.series-pattern-picker__dates input::placeholder{color:#667085;}
.series-pattern-picker__list{display:grid; gap:10px;}
.series-pattern-row{display:grid; grid-template-columns:minmax(0, 1fr) 42px; gap:8px; align-items:stretch;}
.series-pattern-card{display:grid; gap:4px; text-align:left; width:100%; border:1px solid #d0d5dd; border-radius:14px; background:#f9fafb; padding:13px 14px; cursor:pointer;}
.series-pattern-card:hover,.series-pattern-card:focus-visible{background:#eef4ff; border-color:#84adff; outline:none;}
.series-pattern-card:disabled{opacity:.65; cursor:wait;}
.series-pattern-card strong{font-size:1rem; color:#101828;}
.series-pattern-card span{font-size:.86rem; color:#475467;}
.series-pattern-delete{border:1px solid #fda29b; border-radius:14px; background:#fff5f5; color:#b42318; font-size:22px; font-weight:800; cursor:pointer;}
.series-pattern-delete:hover,.series-pattern-delete:focus-visible{background:#fee4e2; outline:none;}
.series-pattern-delete:disabled{opacity:.65; cursor:wait;}

/* 802: Sammelfahrten als zusammenhängende Tourgruppe */
body.app-shell .collective-tour-block{
  --collective-accent:#2563eb;
  position:relative;
  margin:18px 4px 20px;
  padding:8px;
  border:2px solid color-mix(in srgb, var(--collective-accent) 42%, transparent);
  border-radius:22px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--collective-accent) 9%, #fff) 0%, rgba(255,255,255,.82) 42%, rgba(255,255,255,.72) 100%);
  box-shadow:0 12px 28px rgba(15,23,42,.10), inset 0 0 0 1px rgba(255,255,255,.72);
}
body.app-shell .collective-tour-block--c0{--collective-accent:#2563eb;}
body.app-shell .collective-tour-block--c1{--collective-accent:#0f766e;}
body.app-shell .collective-tour-block--c2{--collective-accent:#7c3aed;}
body.app-shell .collective-tour-block--c3{--collective-accent:#b45309;}
body.app-shell .collective-tour-block--c4{--collective-accent:#be123c;}
body.app-shell .collective-tour-block--c5{--collective-accent:#0369a1;}
body.app-shell .collective-tour-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:0 2px 8px;
  padding:7px 10px;
  border-radius:16px;
  background:color-mix(in srgb, var(--collective-accent) 13%, #ffffff);
  border:1px solid color-mix(in srgb, var(--collective-accent) 24%, transparent);
  color:#163247;
}
body.app-shell .collective-tour-head strong{
  display:block;
  font-size:.82rem;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:color-mix(in srgb, var(--collective-accent) 72%, #0f172a);
}
body.app-shell .collective-tour-head span{
  display:block;
  margin-top:1px;
  font-size:.84rem;
  color:#475569;
  font-weight:700;
}
body.app-shell .collective-tour-head em{
  flex:0 0 auto;
  font-style:normal;
  font-size:.74rem;
  font-weight:900;
  color:#fff;
  background:var(--collective-accent);
  border-radius:999px;
  padding:5px 8px;
  box-shadow:0 6px 14px color-mix(in srgb, var(--collective-accent) 26%, transparent);
}
body.app-shell .collective-tour-body{
  display:grid;
  gap:0;
  position:relative;
}
body.app-shell .collective-tour-body::before{
  content:'';
  position:absolute;
  left:13px;
  top:14px;
  bottom:14px;
  width:3px;
  border-radius:999px;
  background:linear-gradient(180deg, transparent, color-mix(in srgb, var(--collective-accent) 56%, transparent) 16%, color-mix(in srgb, var(--collective-accent) 56%, transparent) 84%, transparent);
  pointer-events:none;
  z-index:3;
}
body.app-shell .collective-tour-block .ride-chip-v2--collective{
  margin:0 0 6px 0;
  box-shadow:0 6px 14px rgba(15,23,42,.07);
  border-radius:16px;
  border-left:0;
}
body.app-shell .collective-tour-block .ride-chip-v2--collective:last-child{margin-bottom:0;}
body.app-shell .collective-tour-block .ride-chip-v2--collective::before{display:none!important;}
body.app-shell .collective-tour-block .ride-chip-v2--collective-start,
body.app-shell .collective-tour-block .ride-chip-v2--collective-end,
body.app-shell .collective-tour-block .ride-chip-v2--collective-single{margin-top:0;margin-bottom:6px;}
body.app-shell .collective-tour-block .ride-chip-v2--collective-middle{margin-top:0;margin-bottom:6px;}
body.app-shell .collective-tour-block .ride-chip-v2--collective .chip-v2-time-block,
body.app-shell .collective-tour-block .ride-chip-v2--collective .chip-v2-head,
body.app-shell .collective-tour-block .ride-chip-v2--collective .chip-v2-route,
body.app-shell .collective-tour-block .ride-chip-v2--collective .ride-plan-box,
body.app-shell .collective-tour-block .ride-chip-v2--collective .chip-v2-actions,
body.app-shell .collective-tour-block .ride-chip-v2--collective .ride-kind-line,
body.app-shell .collective-tour-block .ride-chip-v2--collective .ride-chip-v2__headline{
  margin-left:14px;
}
body.app-shell .collective-tour-block .collective-select{
  right:9px;
  bottom:9px;
}
@media (max-width:760px){
  body.app-shell .collective-tour-block{margin-left:0;margin-right:0;padding:7px;border-radius:18px;}
  body.app-shell .collective-tour-head{align-items:flex-start;flex-direction:column;}
  body.app-shell .collective-tour-head em{align-self:flex-start;}
}


/* 803: Sammelfahrt-Kopf minimiert, vertikale Verbindungslinie entfernt */
body.app-shell .collective-tour-head{
  min-height:0;
  padding:6px 10px;
  justify-content:flex-start;
}
body.app-shell .collective-tour-head strong{
  font-size:12px;
  letter-spacing:.08em;
}
body.app-shell .collective-tour-head span,
body.app-shell .collective-tour-head em{
  display:none!important;
}
body.app-shell .collective-tour-head strong::before{
  width:7px;
  height:7px;
}
body.app-shell .collective-tour-body::before{
  display:none!important;
}
body.app-shell .collective-tour-body{
  padding-left:0;
}

/* Fahreransicht: Sammelfahrten als gemeinsamer Block, Buchung bleibt je Einzelfahrt */
.driver-ride-panel--collective .driver-stage-head{
  letter-spacing:.02em;
}
.driver-collective-tour{
  margin:0 0 14px;
  padding:12px;
  border:1px solid rgba(148,163,184,.34);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(15,23,42,.88), rgba(15,23,42,.72));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);
}
.driver-collective-tour__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:6px;
  color:#f8fafc;
  font-weight:800;
  font-size:1rem;
}
.driver-collective-tour__head strong{
  font-size:.82rem;
  font-weight:800;
  color:#cbd5e1;
  padding:3px 8px;
  border-radius:999px;
  background:rgba(148,163,184,.16);
}
.driver-collective-tour__hint{
  margin:0 0 10px;
  color:#cbd5e1;
  font-size:.82rem;
  line-height:1.35;
}
.driver-collective-tour__list{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.driver-collective-row{
  display:grid;
  grid-template-columns:30px 1fr;
  gap:9px;
  padding:10px;
  border:1px solid rgba(148,163,184,.18);
  border-radius:14px;
  background:rgba(2,6,23,.34);
}
.driver-collective-row.is-current{
  border-color:rgba(59,130,246,.68);
  background:rgba(30,64,175,.24);
}
.driver-collective-row__index{
  width:26px;
  height:26px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(148,163,184,.18);
  color:#e2e8f0;
  font-weight:900;
  font-size:.8rem;
}
.driver-collective-row.is-current .driver-collective-row__index{
  background:rgba(59,130,246,.92);
  color:#fff;
}
.driver-collective-row__body{
  min-width:0;
  color:#e5e7eb;
}
.driver-collective-row__top{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
  margin-bottom:3px;
}
.driver-collective-row__top strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#f8fafc;
  font-size:.96rem;
}
.driver-collective-row__top span{
  color:#bfdbfe;
  font-weight:800;
  font-variant-numeric:tabular-nums;
}
.driver-collective-row__meta{
  color:#cbd5e1;
  font-size:.78rem;
  margin-bottom:6px;
}
.driver-collective-row__addr{
  display:grid;
  grid-template-columns:72px 1fr;
  gap:8px;
  color:#dbeafe;
  font-size:.8rem;
  line-height:1.25;
}
.driver-collective-row__addr span{
  color:#94a3b8;
}
.driver-collective-row__addr strong{
  color:#e2e8f0;
  font-weight:700;
}

/* Schnelleingabe / Telefonannahme */
.quick-intake-overlay{
  position:fixed; inset:0; z-index:12000; display:flex; align-items:center; justify-content:center;
  background:rgba(8,18,32,.58); backdrop-filter:blur(4px); padding:24px;
}
.quick-intake-dialog{
  width:min(920px, calc(100vw - 32px)); max-height:calc(100vh - 48px); overflow:auto;
  background:#f8fafc; color:#132033; border:1px solid rgba(15,23,42,.16); border-radius:22px;
  box-shadow:0 24px 70px rgba(0,0,0,.35); padding:20px;
}
.quick-intake-head{display:flex; justify-content:space-between; gap:18px; align-items:flex-start; margin-bottom:14px;}
.quick-intake-head h2{margin:0 0 4px; font-size:1.35rem; color:#0f172a;}
.quick-intake-head p{margin:0; color:#475569; font-size:.92rem;}
.quick-intake-close{color:#0f172a; background:#e2e8f0; border:1px solid #cbd5e1;}
.quick-intake-full{display:block; margin:12px 0;}
.quick-intake-grid{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; margin:12px 0;}
.quick-intake-dialog label span{display:block; margin:0 0 5px; font-weight:700; font-size:.82rem; color:#334155;}
.quick-intake-dialog input,.quick-intake-dialog textarea,.quick-intake-dialog select{
  width:100%; box-sizing:border-box; border:1px solid #cbd5e1; border-radius:12px; padding:10px 12px;
  background:#fff; color:#0f172a; font:inherit; outline:none;
}
.quick-intake-dialog textarea{resize:vertical; min-height:82px;}
.quick-intake-dialog input:focus,.quick-intake-dialog textarea:focus,.quick-intake-dialog select:focus{border-color:#3b82f6; box-shadow:0 0 0 3px rgba(59,130,246,.18);}
.quick-intake-actions{display:flex; justify-content:flex-end; gap:10px; margin-top:16px; flex-wrap:wrap;}
.quick-intake-state{min-height:20px; margin-top:10px; color:#2563eb; font-weight:700; font-size:.9rem;}
.quick-intake-state.error{color:#b91c1c;}
.ride-followup-line--quick{background:rgba(245,158,11,.13); border-color:rgba(245,158,11,.28); color:#92400e; font-weight:800;}
@media (max-width:760px){.quick-intake-grid{grid-template-columns:1fr}.quick-intake-overlay{align-items:flex-start; padding:12px}.quick-intake-dialog{max-height:calc(100vh - 24px)}}


/* Schnelleingabe: kontrastreiches helles Dialogdesign */
.quick-intake-overlay{background:rgba(15,23,42,.72); backdrop-filter:blur(3px);}
.quick-intake-dialog{background:#f8fafc !important; color:#0f172a !important; border:1px solid #cbd5e1; box-shadow:0 24px 70px rgba(15,23,42,.42);}
.quick-intake-head h2{color:#0f172a !important;}
.quick-intake-head p{color:#334155 !important;}
.quick-intake-dialog label span,.quick-intake-dialog legend{color:#1e293b !important;}
.quick-intake-dialog input,.quick-intake-dialog textarea,.quick-intake-dialog select{background:#ffffff !important; color:#0f172a !important; border-color:#94a3b8 !important;}
.quick-intake-dialog input::placeholder,.quick-intake-dialog textarea::placeholder{color:#64748b !important; opacity:1;}
.quick-intake-dialog input:focus,.quick-intake-dialog textarea:focus,.quick-intake-dialog select:focus{border-color:#2563eb !important; box-shadow:0 0 0 3px rgba(37,99,235,.18) !important; outline:none;}
.quick-copay-choice{border:1px solid #cbd5e1; border-radius:14px; padding:10px 12px; background:#eef2ff; display:flex !important; gap:14px; align-items:center; flex-wrap:wrap;}
.quick-copay-choice legend{font-weight:800; padding:0 4px;}
.quick-copay-choice label{display:inline-flex; align-items:center; gap:6px; margin:0; color:#0f172a; font-weight:700;}
.quick-copay-choice input{width:auto !important; min-height:auto !important;}

/* Schnelleingabe: Uhrzeit-Picker muss über dem Eingabedialog liegen */
.quick-clock-picker-backdrop{
  z-index:13050 !important;
}
.quick-clock-picker-backdrop .clock-picker{
  z-index:13060;
}

/* 811: Kontrast-Härtung für Eingaben, Modale und Dashboard-Aktionsleisten
   Grundsatz: Eingabe- und Auswahlfelder bekommen explizite Vorder-/Hintergrundfarben,
   damit keine helle Schrift auf hellem Grund oder dunkle Schrift auf dunklem Grund entsteht. */
body.app-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
body.app-shell select,
body.app-shell textarea,
body.app-theme input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
body.app-theme select,
body.app-theme textarea,
body.subpage-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
body.subpage-shell select,
body.subpage-shell textarea{
  background:#ffffff !important;
  color:#0f172a !important;
  border-color:#94a3b8 !important;
  caret-color:#0f172a !important;
}
body.app-shell input::placeholder,
body.app-shell textarea::placeholder,
body.app-theme input::placeholder,
body.app-theme textarea::placeholder,
body.subpage-shell input::placeholder,
body.subpage-shell textarea::placeholder{
  color:#64748b !important;
  opacity:1 !important;
}
body.app-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):focus,
body.app-shell select:focus,
body.app-shell textarea:focus,
body.app-theme input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):focus,
body.app-theme select:focus,
body.app-theme textarea:focus,
body.subpage-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):focus,
body.subpage-shell select:focus,
body.subpage-shell textarea:focus{
  border-color:#2563eb !important;
  box-shadow:0 0 0 3px rgba(37,99,235,.18) !important;
  outline:none !important;
}
body.app-shell label,
body.app-shell legend,
body.app-theme label,
body.app-theme legend,
body.subpage-shell label,
body.subpage-shell legend{
  color:inherit;
}

/* Dashboard: Sammelfahrt-Aktionsleiste unten rechts gut lesbar */
body.app-shell .collective-action-bar{
  background:#0f172a !important;
  color:#f8fafc !important;
  border:1px solid rgba(203,213,225,.34) !important;
  box-shadow:0 18px 44px rgba(2,6,23,.45) !important;
}
body.app-shell .collective-action-bar__count,
body.app-shell .collective-action-bar__count strong{
  color:#f8fafc !important;
}
body.app-shell .collective-action-bar .action-chip,
body.app-shell .collective-action-bar .nav-chip,
body.app-shell .collective-action-bar button{
  color:#ffffff !important;
  border-color:rgba(255,255,255,.22) !important;
  box-shadow:none !important;
}
body.app-shell .collective-action-bar .action-chip--blue,
body.app-shell .collective-action-bar [data-collective-create]{
  background:#1d4ed8 !important;
}
body.app-shell .collective-action-bar .action-chip--orange,
body.app-shell .collective-action-bar [data-collective-ungroup]{
  background:#b45309 !important;
}
body.app-shell .collective-action-bar .nav-chip--soft,
body.app-shell .collective-action-bar [data-collective-clear]{
  background:#334155 !important;
}
body.app-shell .collective-action-bar button:disabled{
  opacity:.55 !important;
  color:#e2e8f0 !important;
}

/* Dashboard: Plan anwenden Dialog immer hell mit dunkler Schrift */
body.app-shell .series-pattern-picker-overlay{
  background:rgba(15,23,42,.68) !important;
}
body.app-shell .series-pattern-picker{
  background:#ffffff !important;
  color:#0f172a !important;
  border:1px solid #cbd5e1 !important;
}
body.app-shell .series-pattern-picker,
body.app-shell .series-pattern-picker *{
  color:#0f172a;
}
body.app-shell .series-pattern-picker__head h2,
body.app-shell .series-pattern-card strong{
  color:#0f172a !important;
}
body.app-shell .series-pattern-picker__head p,
body.app-shell .series-pattern-card span,
body.app-shell .series-pattern-picker__dates{
  color:#334155 !important;
}
body.app-shell .series-pattern-card{
  background:#f8fafc !important;
  color:#0f172a !important;
  border-color:#94a3b8 !important;
}
body.app-shell .series-pattern-card:hover,
body.app-shell .series-pattern-card:focus-visible{
  background:#eaf2ff !important;
  border-color:#2563eb !important;
}
body.app-shell .series-pattern-delete{
  background:#fee2e2 !important;
  color:#991b1b !important;
  border-color:#fca5a5 !important;
}
body.app-shell .series-pattern-delete:hover,
body.app-shell .series-pattern-delete:focus-visible{
  background:#fecaca !important;
}
body.app-shell .series-pattern-picker__close{
  background:#e2e8f0 !important;
  color:#0f172a !important;
  border-color:#94a3b8 !important;
}

/* Schnelleingabe: Eingabefelder und Radiobereich bleiben explizit kontrastreich */
body.app-shell .quick-intake-dialog,
body.app-shell .quick-intake-dialog *{
  color:#0f172a;
}
body.app-shell .quick-intake-dialog input:not([type="checkbox"]):not([type="radio"]),
body.app-shell .quick-intake-dialog textarea,
body.app-shell .quick-intake-dialog select{
  background:#ffffff !important;
  color:#0f172a !important;
  border-color:#94a3b8 !important;
}
body.app-shell .quick-intake-dialog input[type="radio"],
body.app-shell .quick-intake-dialog input[type="checkbox"]{
  accent-color:#2563eb;
}
body.app-shell .quick-copay-choice{
  background:#eef2ff !important;
  color:#0f172a !important;
  border-color:#94a3b8 !important;
}
body.app-shell .quick-intake-actions .nav-chip,
body.app-shell .quick-intake-actions button{
  color:#ffffff !important;
  border-color:transparent !important;
}
body.app-shell .quick-intake-actions #quickAnalyzeBtn{
  background:#334155 !important;
}
body.app-shell .quick-intake-actions #quickSaveBtn{
  background:#166534 !important;
}
body.app-shell .quick-intake-state{color:#1d4ed8 !important;}
body.app-shell .quick-intake-state.error{color:#b91c1c !important;}

/* Uhr-Picker über Modalen: dunkles Dialogschema behält lesbare Eingaben/Buttons */
body.app-shell .quick-clock-picker-backdrop .clock-picker,
body.app-theme .quick-clock-picker-backdrop .clock-picker,
body.subpage-shell .quick-clock-picker-backdrop .clock-picker{
  color:#f8fafc;
}

/* Fahrer-/Tablet-Ansichten behalten ihr dunkles Spezialdesign. */
body.driver-app-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
body.driver-app-shell select,
body.driver-app-shell textarea,
body.tablet-driver-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
body.tablet-driver-shell select,
body.tablet-driver-shell textarea{
  background:rgba(15,23,42,.78) !important;
  color:#f8fafc !important;
  border-color:rgba(148,163,184,.34) !important;
}

/* KI-Schnelleingabe */
.nav-chip--ai{
  background:linear-gradient(180deg,#7c3aed,#5b21b6) !important;
  border-color:#6d28d9 !important;
  color:#ffffff !important;
  box-shadow:0 10px 24px rgba(91,33,182,.24);
}
.nav-chip--ai:disabled{opacity:.55; cursor:not-allowed; box-shadow:none;}
.quick-intake-state{line-height:1.35;}

/* Dashboard: Rückfahrzeit direkt in der Tourkachel */
.ride-return-time-line{
  display:flex;
  align-items:center;
  gap:8px;
  margin:8px 0 6px;
  padding:7px 8px;
  border:1px solid rgba(15,23,42,.14);
  border-radius:10px;
  background:rgba(248,250,252,.95);
  color:#0f172a;
  font-size:.82rem;
}
.ride-return-time-line span{font-weight:800;color:#334155;white-space:nowrap;}
.ride-return-time-input{
  min-width:92px;
  max-width:110px;
  height:32px;
  padding:4px 7px;
  border:1px solid rgba(15,23,42,.22);
  border-radius:8px;
  background:#fff;
  color:#0f172a;
  font-weight:800;
}
.ride-return-time-save{
  min-height:30px;
  padding:5px 9px;
  color:#0f172a !important;
  background:#e2e8f0 !important;
  border:1px solid rgba(15,23,42,.18) !important;
}
.ride-return-time-save:hover{background:#cbd5e1 !important;}

/* Etappe 4: kompakte/einklappbare Tourkacheln */
body.app-shell .ride-chip-v2,
body.app-shell .order-card{
  padding-top:8px;
  padding-right:42px;
}
body.app-shell .ride-main-fields{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-areas:
    "time head"
    "route route";
  gap:6px 10px;
  align-items:start;
}
body.app-shell .ride-main-fields .chip-v2-time-block{grid-area:time;margin:0;}
body.app-shell .ride-main-fields .chip-v2-head{grid-area:head;margin:0;min-width:0;}
body.app-shell .ride-main-fields .chip-v2-route{grid-area:route;margin:0;padding-right:4px;}
body.app-shell .ride-expanded-fields{
  margin-top:8px;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-expanded-fields,
body.app-shell .order-card.is-ride-collapsed .ride-expanded-fields,
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-chip-v2__headline,
body.app-shell .order-card.is-ride-collapsed .ride-chip-v2__headline{
  display:none!important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed,
body.app-shell .order-card.is-ride-collapsed{
  padding-top:7px;
  padding-bottom:5px;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-time-block,
body.app-shell .order-card.is-ride-collapsed .chip-v2-time-block{
  transform:scale(.94);
  transform-origin:left top;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-route,
body.app-shell .order-card.is-ride-collapsed .chip-v2-route{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr{
  padding:5px 7px;
  min-height:0;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr-name,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr-name{
  display:none;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr-street,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr-street{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:100%;
}
body.app-shell .ride-compact-toggle{
  position:absolute;
  top:7px;
  right:8px;
  z-index:12;
  width:28px;
  height:28px;
  border-radius:10px;
  border:1px solid rgba(157,188,221,.42);
  background:rgba(15,31,48,.86);
  color:#f4f9ff;
  font-weight:900;
  font-size:15px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(0,0,0,.2);
}
body.app-shell .ride-compact-toggle:hover{background:rgba(37,75,112,.94);}
body.app-shell .ride-kind-line{
  margin-top:6px;
  padding:4px 40px 4px 0;
  justify-content:flex-start;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-kind-line,
body.app-shell .order-card.is-ride-collapsed .ride-kind-line{
  margin-top:4px;
  padding-top:2px;
  padding-bottom:2px;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-kind-line .transport-chip--kind,
body.app-shell .order-card.is-ride-collapsed .ride-kind-line .transport-chip--kind{
  font-size:.72rem;
  padding:3px 7px;
}
body.app-shell .ride-chip-v2 .ride-detail,
body.app-shell .order-card .ride-detail{
  display:none!important;
}
@media (max-width: 1280px){
  body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-route,
  body.app-shell .order-card.is-ride-collapsed .chip-v2-route{grid-template-columns:1fr;}
}

/* v829: sichtbarer Einklapp-Button und Rückfahrzeit nur in Rückfahrt-Kacheln */
body.app-shell .ride-chip-v2,
body.app-shell .order-card{
  overflow:visible;
}
body.app-shell .ride-compact-toggle{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  position:absolute;
  top:6px;
  right:6px;
  z-index:60;
  width:32px;
  height:32px;
  border-radius:12px;
  border:2px solid rgba(255,255,255,.78);
  background:#0f2740;
  color:#ffffff;
  font-size:18px;
  font-weight:900;
  line-height:1;
  box-shadow:0 8px 22px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.12);
  opacity:1;
}
body.app-shell .ride-compact-toggle:hover,
body.app-shell .ride-compact-toggle:focus-visible{
  background:#1d4f7c;
  border-color:#ffffff;
  outline:none;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-compact-toggle,
body.app-shell .order-card.is-ride-collapsed .ride-compact-toggle{
  background:#12385d;
}
body.app-shell .ride-return-time-line{
  margin-top:8px;
}


/* v830: Tourkachel-Breite zurück auf Dashboard-Ursprungsform + sichtbarer Detail-Schalter */
body.app-shell .vehicles-grid{
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr)) !important;
  align-items:start;
}
body.app-shell .vehicle-card,
body.app-shell .vehicle-card *,
body.app-shell .ride-chip-v2,
body.app-shell .order-card{
  box-sizing:border-box;
  min-width:0;
}
body.app-shell .ride-chip-v2,
body.app-shell .order-card{
  width:100% !important;
  max-width:100% !important;
  padding:10px 12px 8px 12px !important;
  overflow:visible !important;
}
body.app-shell .ride-main-fields{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  grid-template-areas:
    "time head"
    "route route" !important;
  gap:6px 8px !important;
  width:100%;
  min-width:0;
  padding-right:0 !important;
}
body.app-shell .ride-main-fields .chip-v2-head,
body.app-shell .ride-main-fields .chip-v2-route,
body.app-shell .chip-v2-patient,
body.app-shell .chip-v2-addr,
body.app-shell .chip-v2-addr-content,
body.app-shell .chip-v2-addr-street{
  min-width:0 !important;
  max-width:100% !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-route,
body.app-shell .order-card.is-ride-collapsed .chip-v2-route{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:5px !important;
}
body.app-shell .ride-compact-toggle{
  position:absolute !important;
  top:-9px !important;
  right:-7px !important;
  z-index:999 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  min-height:26px !important;
  padding:0 !important;
  border-radius:999px !important;
  border:2px solid #ffffff !important;
  background:#0b66a3 !important;
  color:#ffffff !important;
  font-size:18px !important;
  font-weight:900 !important;
  line-height:1 !important;
  box-shadow:0 6px 16px rgba(0,0,0,.34) !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
body.app-shell .ride-compact-toggle:hover,
body.app-shell .ride-compact-toggle:focus-visible{
  background:#084b79 !important;
  outline:3px solid rgba(125,197,255,.36) !important;
  outline-offset:2px !important;
}
body.app-shell .ride-compact-toggle::before{
  content:'−';
  display:block;
  transform:translateY(-1px);
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-compact-toggle::before,
body.app-shell .order-card.is-ride-collapsed .ride-compact-toggle::before{
  content:'+';
  transform:none;
}
body.app-shell .ride-compact-toggle{font-size:0 !important;}
body.app-shell .ride-kind-line{
  padding-right:34px !important;
}
body.app-shell .collective-select{
  right:7px;
  bottom:7px;
}

/* v832 Konsolidierung: Dashboard-Aktionen unten, klare Kacheln, minimalistische Rückfahrtzeit */
body.app-shell .dashboard-topbar__cluster--preset #seriesPatternSave,
body.app-shell .dashboard-topbar__cluster--preset #seriesPatternApply,
body.app-shell .dashboard-topbar__cluster--preset #aiPlanReviewBtn,
body.app-shell .dashboard-topbar__cluster--preset #quickIntakeBtn{
  display:none !important;
}
body.app-shell .global-nav--dashboard .nav-group--ops{
  display:flex;
  align-items:center;
  gap:8px;
  margin-left:auto;
  flex-wrap:nowrap;
}
body.app-shell .global-nav--dashboard .nav-link--dashop{
  border:1px solid rgba(15,23,42,.12) !important;
  background:#ffffff !important;
  color:#0f172a !important;
  font-weight:800;
  box-shadow:0 6px 18px rgba(15,23,42,.08);
}
body.app-shell .global-nav--dashboard .nav-link--dashop:hover,
body.app-shell .global-nav--dashboard .nav-link--dashop:focus-visible{
  background:#eaf4ff !important;
  color:#082f49 !important;
  outline:2px solid rgba(37,99,235,.24);
  outline-offset:2px;
}
body.app-shell .global-nav--dashboard .nav-link--dashop-ai{
  background:#ede9fe !important;
  color:#3b0764 !important;
  border-color:#c4b5fd !important;
}
body.app-shell .global-nav--dashboard .nav-link--dashop-add{
  background:#dcfce7 !important;
  color:#14532d !important;
  border-color:#86efac !important;
}
body.app-shell .global-nav--dashboard .nav-link--auth{
  margin-left:6px;
}

/* Tourkachel: Modul erzeugt den Schalter jetzt selbst; dieser Override hält ihn sichtbar und sauber. */
body.app-shell .ride-chip-v2,
body.app-shell .order-card{
  position:relative !important;
  overflow:visible !important;
  width:100% !important;
  max-width:100% !important;
  padding:10px 10px 8px !important;
}
body.app-shell .ride-main-fields{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  grid-template-areas:"time head" "route route" !important;
  gap:6px 8px !important;
  min-width:0 !important;
}
body.app-shell .ride-main-fields .chip-v2-time-block{grid-area:time;}
body.app-shell .ride-main-fields .chip-v2-head{grid-area:head;margin:0;min-width:0;}
body.app-shell .ride-main-fields .chip-v2-route{grid-area:route;margin:0;min-width:0;}
body.app-shell .ride-expanded-fields{margin-top:7px;display:grid;gap:6px;}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-expanded-fields,
body.app-shell .order-card.is-ride-collapsed .ride-expanded-fields{
  display:none !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-route,
body.app-shell .order-card.is-ride-collapsed .chip-v2-route{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:5px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr{
  padding:5px 7px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr-name,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr-name{
  display:none !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr-street,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr-street{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body.app-shell .ride-compact-toggle{
  position:absolute !important;
  top:-8px !important;
  right:-8px !important;
  z-index:1000 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  min-height:26px !important;
  padding:0 !important;
  border-radius:999px !important;
  border:2px solid #fff !important;
  background:#075985 !important;
  color:#fff !important;
  font-size:18px !important;
  font-weight:900 !important;
  line-height:1 !important;
  box-shadow:0 6px 16px rgba(15,23,42,.35) !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
body.app-shell .ride-compact-toggle:hover,
body.app-shell .ride-compact-toggle:focus-visible{
  background:#0c4a6e !important;
  outline:3px solid rgba(14,165,233,.28) !important;
  outline-offset:2px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-compact-toggle,
body.app-shell .order-card.is-ride-collapsed .ride-compact-toggle{background:#166534 !important;}
body.app-shell .ride-detail,
body.app-shell .chip-v2-detail,
body.app-shell .ride-plan-box{display:none !important;}

body.app-shell .ride-return-time-line{
  display:grid !important;
  grid-template-columns:auto 74px 30px !important;
  align-items:center !important;
  gap:6px !important;
  width:max-content !important;
  max-width:100% !important;
  margin:6px 0 3px !important;
  padding:4px 5px 4px 7px !important;
  border:1px solid rgba(37,99,235,.16) !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,#f8fbff,#edf5ff) !important;
  color:#0f172a !important;
  box-shadow:0 3px 10px rgba(15,23,42,.06) !important;
}
body.app-shell .ride-return-time-line span{
  font-size:.72rem !important;
  font-weight:900 !important;
  color:#1e3a8a !important;
  letter-spacing:.01em;
}
body.app-shell .ride-return-time-input{
  width:74px !important;
  min-width:74px !important;
  height:28px !important;
  padding:2px 4px !important;
  border:1px solid rgba(37,99,235,.18) !important;
  border-radius:999px !important;
  background:#ffffff !important;
  color:#0f172a !important;
  font-size:.78rem !important;
  font-weight:900 !important;
  text-align:center !important;
}
body.app-shell .ride-return-time-save{
  width:28px !important;
  height:28px !important;
  min-height:28px !important;
  padding:0 !important;
  border-radius:999px !important;
  border:1px solid rgba(22,101,52,.22) !important;
  background:#dcfce7 !important;
  color:#14532d !important;
  font-size:.9rem !important;
  font-weight:1000 !important;
}
body.app-shell .ride-return-time-save:hover,
body.app-shell .ride-return-time-save:focus-visible{
  background:#bbf7d0 !important;
  outline:2px solid rgba(34,197,94,.28) !important;
  outline-offset:2px !important;
}

body.app-shell .plan-review-overlay{position:fixed;inset:0;background:rgba(2,6,23,.66);z-index:3000;display:grid;place-items:center;padding:20px;}
body.app-shell .plan-review-dialog{width:min(920px,96vw);max-height:88vh;overflow:auto;background:#f8fafc;color:#0f172a;border-radius:20px;border:1px solid rgba(148,163,184,.45);box-shadow:0 28px 80px rgba(0,0,0,.38);padding:18px;}
body.app-shell .plan-review-head{display:flex;justify-content:space-between;gap:16px;align-items:start;border-bottom:1px solid rgba(15,23,42,.1);padding-bottom:10px;margin-bottom:12px;}
body.app-shell .plan-review-head h2{margin:0;color:#0f172a;}
body.app-shell .plan-review-head p{margin:4px 0 0;color:#334155;}
body.app-shell .plan-review-summary,.plan-review-ai-error,.plan-review-item{background:#fff;color:#0f172a;border:1px solid rgba(15,23,42,.11);border-radius:14px;padding:10px 12px;margin:8px 0;}
body.app-shell .plan-review-summary span{display:block;color:#475569;margin-top:3px;}
body.app-shell .plan-review-section h3{margin:14px 0 6px;color:#0f172a;}
body.app-shell .plan-review-rides{display:grid;gap:5px;margin-top:7px;}
body.app-shell .plan-review-rides button{border:1px solid rgba(37,99,235,.2);background:#eff6ff;color:#1e3a8a;border-radius:10px;padding:7px 9px;text-align:left;font-weight:800;}
body.app-shell .plan-review-suggestion-select{display:flex;gap:9px;align-items:flex-start;}
body.app-shell .plan-review-suggestion-select input{margin-top:3px;}
body.app-shell .plan-review-suggestion-select small{display:block;color:#334155;margin-top:3px;font-weight:600;}
body.app-shell .plan-review-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px;}

/* v833: Patientennamen in Tourkacheln einzeilig halten, damit Kacheln kompakt bleiben */
body.app-shell .ride-chip-v2 .chip-v2-head,
body.app-shell .order-card .chip-v2-head{
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
}
body.app-shell .ride-chip-v2 .chip-v2-name-row,
body.app-shell .order-card .chip-v2-name-row{
  display:flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  gap:7px !important;
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
}
body.app-shell .ride-chip-v2 .chip-v2-patient,
body.app-shell .order-card .chip-v2-patient,
body.app-shell .ride-main-fields .chip-v2-patient{
  display:block !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  max-width:100% !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  line-height:1.15 !important;
}
body.app-shell .ride-chip-v2 .chip-v2-transport,
body.app-shell .order-card .chip-v2-transport{
  flex:0 0 auto !important;
  max-width:96px !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* v834: Patient/Transport-Zeile repariert: Name sichtbar, einzeilig; Transportart vollständig */
body.app-shell .ride-main-fields{
  grid-template-columns:56px minmax(0,1fr) !important;
  column-gap:8px !important;
}
body.app-shell .ride-main-fields .chip-v2-time-block{
  width:56px !important;
  min-width:56px !important;
  max-width:56px !important;
}
body.app-shell .ride-main-fields .chip-v2-head,
body.app-shell .ride-chip-v2 .chip-v2-head,
body.app-shell .order-card .chip-v2-head{
  grid-area:head !important;
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  overflow:visible !important;
}
body.app-shell .ride-chip-v2 .chip-v2-name-row,
body.app-shell .order-card .chip-v2-name-row,
body.app-shell .ride-main-fields .chip-v2-name-row{
  display:grid !important;
  grid-template-columns:minmax(4.5rem,1fr) max-content !important;
  align-items:center !important;
  gap:7px !important;
  min-width:0 !important;
  max-width:100% !important;
  width:100% !important;
  overflow:visible !important;
}
body.app-shell .ride-chip-v2 .chip-v2-patient,
body.app-shell .order-card .chip-v2-patient,
body.app-shell .ride-main-fields .chip-v2-patient{
  grid-column:1 !important;
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  width:auto !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  color:#f8fafc !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  opacity:1 !important;
  visibility:visible !important;
}
body.app-shell .ride-chip-v2 .transport-chip,
body.app-shell .order-card .transport-chip,
body.app-shell .ride-main-fields .transport-chip,
body.app-shell .ride-chip-v2 .transport-chip--mode,
body.app-shell .order-card .transport-chip--mode,
body.app-shell .ride-main-fields .transport-chip--mode{
  grid-column:2 !important;
  justify-self:end !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:max-content !important;
  max-width:none !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  padding:4px 8px !important;
  font-size:.70rem !important;
  line-height:1 !important;
}
@media (max-width: 1180px){
  body.app-shell .ride-chip-v2 .transport-chip,
  body.app-shell .order-card .transport-chip,
  body.app-shell .ride-main-fields .transport-chip,
  body.app-shell .ride-chip-v2 .transport-chip--mode,
  body.app-shell .order-card .transport-chip--mode,
  body.app-shell .ride-main-fields .transport-chip--mode{
    padding:3px 6px !important;
    font-size:.66rem !important;
  }
  body.app-shell .ride-chip-v2 .chip-v2-name-row,
  body.app-shell .order-card .chip-v2-name-row,
  body.app-shell .ride-main-fields .chip-v2-name-row{
    grid-template-columns:minmax(3.8rem,1fr) max-content !important;
    gap:5px !important;
  }
}

/* v835: Tourkachel-Layout finalisiert: vollständiger einzeiliger Name, Transport nur aufgeklappt, Fahrdetails im Haupt-Klappbereich */
body.app-shell .ride-main-fields .chip-v2-name-row,
body.app-shell .ride-chip-v2 .chip-v2-name-row,
body.app-shell .order-card .chip-v2-name-row{
  display:flex !important;
  align-items:center !important;
  min-width:0 !important;
  width:100% !important;
  overflow:visible !important;
  gap:4px !important;
}
body.app-shell .ride-main-fields .chip-v2-patient,
body.app-shell .ride-chip-v2 .chip-v2-patient,
body.app-shell .order-card .chip-v2-patient{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  color:#f8fafc !important;
  font-weight:950 !important;
  letter-spacing:-.02em !important;
  line-height:1.05 !important;
  font-size:clamp(.64rem, 1.05vw, .98rem) !important;
  transform-origin:left center !important;
}
body.app-shell .ride-main-fields .chip-v2-patient--sm,
body.app-shell .ride-chip-v2 .chip-v2-patient--sm,
body.app-shell .order-card .chip-v2-patient--sm{font-size:clamp(.58rem,.9vw,.84rem) !important;letter-spacing:-.035em !important;}
body.app-shell .ride-main-fields .chip-v2-patient--xs,
body.app-shell .ride-chip-v2 .chip-v2-patient--xs,
body.app-shell .order-card .chip-v2-patient--xs{font-size:clamp(.52rem,.78vw,.74rem) !important;letter-spacing:-.05em !important;}
body.app-shell .ride-main-fields .chip-v2-patient--xxs,
body.app-shell .ride-chip-v2 .chip-v2-patient--xxs,
body.app-shell .order-card .chip-v2-patient--xxs{font-size:clamp(.46rem,.68vw,.66rem) !important;letter-spacing:-.065em !important;}

/* Transportart nur in aufgeklappter Tourkachel anzeigen. */
body.app-shell .ride-main-fields .chip-v2-transport,
body.app-shell .ride-main-fields .transport-chip,
body.app-shell .ride-main-fields .transport-chip--mode{
  display:none !important;
}
body.app-shell .chip-v2-expanded-transport{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  min-height:0 !important;
  margin:-1px 0 1px !important;
}
body.app-shell .chip-v2-expanded-transport .chip-v2-transport,
body.app-shell .chip-v2-expanded-transport .transport-chip,
body.app-shell .chip-v2-expanded-transport .transport-chip--mode{
  display:inline-flex !important;
  width:auto !important;
  max-width:none !important;
  min-width:max-content !important;
  overflow:visible !important;
  white-space:nowrap !important;
  text-overflow:clip !important;
  font-size:.68rem !important;
  line-height:1 !important;
  padding:4px 8px !important;
}

/* Ziel-ca/ETA bleibt aus dem Zeitblock; falls ältere Renderer noch etwas ausgeben, ausblenden. */
body.app-shell .chip-v2-time-eta{display:none !important;}

/* Fahrdetails ohne eigenen Klappmechanismus innerhalb des übergeordneten aufgeklappten Bereichs. */
body.app-shell .ride-detail,
body.app-shell .chip-v2-detail,
body.app-shell .ride-plan-box{display:block !important;}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-detail,
body.app-shell .order-card.is-ride-collapsed .chip-v2-detail,
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-detail,
body.app-shell .order-card.is-ride-collapsed .ride-detail,
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-plan-box,
body.app-shell .order-card.is-ride-collapsed .ride-plan-box{display:none !important;}
body.app-shell .chip-v2-detail{
  border:1px solid rgba(148,163,184,.22) !important;
  border-radius:12px !important;
  background:rgba(15,23,42,.16) !important;
  color:#e5eef7 !important;
  padding:8px 9px !important;
  margin:2px 0 !important;
}
body.app-shell .chip-v2-detail-summary{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:8px !important;
  color:#f8fafc !important;
  font-size:.74rem !important;
  font-weight:950 !important;
  text-transform:none !important;
  margin:0 0 6px !important;
  cursor:default !important;
  list-style:none !important;
}
body.app-shell .chip-v2-detail-summary::-webkit-details-marker{display:none !important;}
body.app-shell .chip-v2-detail-body{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:4px !important;
}
body.app-shell .chip-v2-detail-line{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:8px !important;
  min-width:0 !important;
}
body.app-shell .chip-v2-detail-lbl{
  min-width:0 !important;
  color:#cbd5e1 !important;
  font-size:.68rem !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body.app-shell .chip-v2-detail-val{
  color:#f8fafc !important;
  font-size:.70rem !important;
  white-space:nowrap !important;
  font-weight:900 !important;
}

/* v836: rechte untere Dashboard-Navigation kompakt und ruhig; Aufklappbutton dezenter */
body.app-shell .global-nav--dashboard .nav-group--ops{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:6px !important;
  margin-left:auto !important;
  padding:3px 4px !important;
  border-radius:999px !important;
  background:rgba(8,28,44,.54) !important;
  border:1px solid rgba(168,196,232,.14) !important;
  box-shadow:0 10px 28px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.05) !important;
}
body.app-shell .global-nav--dashboard .nav-group--ops .nav-link{
  height:34px !important;
  min-height:34px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  font-size:.82rem !important;
  line-height:1 !important;
  letter-spacing:.005em !important;
  box-shadow:none !important;
}
body.app-shell .global-nav--dashboard .nav-link--dashop{
  border:1px solid rgba(168,196,232,.18) !important;
  background:rgba(255,255,255,.065) !important;
  color:#e7f1fa !important;
  font-weight:800 !important;
}
body.app-shell .global-nav--dashboard .nav-link--dashop:hover,
body.app-shell .global-nav--dashboard .nav-link--dashop:focus-visible{
  background:rgba(124,196,255,.16) !important;
  border-color:rgba(124,196,255,.38) !important;
  color:#ffffff !important;
  outline:2px solid rgba(124,196,255,.22) !important;
  outline-offset:2px !important;
}
body.app-shell .global-nav--dashboard .nav-link--dashop-ai{
  background:rgba(124,196,255,.10) !important;
  color:#eef7ff !important;
  border-color:rgba(124,196,255,.24) !important;
}
body.app-shell .global-nav--dashboard .nav-link--dashop-add{
  background:rgba(82,211,141,.13) !important;
  color:#eafff2 !important;
  border-color:rgba(82,211,141,.30) !important;
}
body.app-shell .global-nav--dashboard .nav-link--auth{
  margin-left:2px !important;
  border-color:rgba(255,255,255,.16) !important;
  background:rgba(255,255,255,.08) !important;
  color:#f6fbff !important;
}

body.app-shell .ride-compact-toggle{
  top:7px !important;
  right:7px !important;
  width:20px !important;
  height:20px !important;
  min-width:20px !important;
  min-height:20px !important;
  border:1px solid rgba(226,232,240,.44) !important;
  background:rgba(15,23,42,.34) !important;
  color:rgba(248,250,252,.86) !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:1 !important;
  box-shadow:0 3px 8px rgba(0,0,0,.18) !important;
  opacity:.68 !important;
  backdrop-filter:blur(6px) !important;
}
body.app-shell .ride-compact-toggle:hover,
body.app-shell .ride-compact-toggle:focus-visible{
  opacity:1 !important;
  background:rgba(15,23,42,.58) !important;
  color:#ffffff !important;
  border-color:rgba(124,196,255,.45) !important;
  outline:2px solid rgba(124,196,255,.20) !important;
  outline-offset:2px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-compact-toggle,
body.app-shell .order-card.is-ride-collapsed .ride-compact-toggle{
  background:rgba(15,23,42,.30) !important;
  color:rgba(248,250,252,.86) !important;
}

/* v838: kompakte Tourkachel im eingeklappten Zustand – Basis 836, Checkbox unverändert */
body.app-shell .ride-chip-v2.is-ride-collapsed,
body.app-shell .order-card.is-ride-collapsed{
  padding:6px 30px 5px 9px !important;
  min-height:0 !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-main-fields,
body.app-shell .order-card.is-ride-collapsed .ride-main-fields{
  grid-template-columns:auto minmax(0,1fr) !important;
  grid-template-areas:"time head" "route route" !important;
  gap:3px 7px !important;
  align-items:center !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-time-block,
body.app-shell .order-card.is-ride-collapsed .chip-v2-time-block{
  transform:none !important;
  margin:0 !important;
  min-width:44px !important;
  gap:1px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-time-pill,
body.app-shell .order-card.is-ride-collapsed .chip-v2-time-pill{
  min-width:42px !important;
  padding:3px 6px !important;
  font-size:.84rem !important;
  line-height:1 !important;
  border-radius:9px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-time-label,
body.app-shell .order-card.is-ride-collapsed .chip-v2-time-label{
  display:none !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-head,
body.app-shell .order-card.is-ride-collapsed .chip-v2-head{
  min-width:0 !important;
  padding-right:8px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-name-row,
body.app-shell .order-card.is-ride-collapsed .chip-v2-name-row{
  min-height:0 !important;
  line-height:1 !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-patient,
body.app-shell .order-card.is-ride-collapsed .chip-v2-patient{
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  line-height:1 !important;
  font-weight:950 !important;
  font-size:clamp(.54rem,.82vw,.86rem) !important;
  letter-spacing:-.035em !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-patient--sm,
body.app-shell .order-card.is-ride-collapsed .chip-v2-patient--sm{font-size:clamp(.50rem,.73vw,.78rem) !important;letter-spacing:-.05em !important;}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-patient--xs,
body.app-shell .order-card.is-ride-collapsed .chip-v2-patient--xs{font-size:clamp(.46rem,.66vw,.70rem) !important;letter-spacing:-.065em !important;}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-patient--xxs,
body.app-shell .order-card.is-ride-collapsed .chip-v2-patient--xxs{font-size:clamp(.42rem,.58vw,.62rem) !important;letter-spacing:-.08em !important;}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-route,
body.app-shell .order-card.is-ride-collapsed .chip-v2-route{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:2px !important;
  margin-top:1px !important;
  padding-right:0 !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr{
  display:grid !important;
  grid-template-columns:28px minmax(0,1fr) !important;
  align-items:center !important;
  gap:4px !important;
  min-height:0 !important;
  padding:2px 5px !important;
  border-radius:8px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr-lbl,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr-lbl{
  font-size:.55rem !important;
  line-height:1 !important;
  opacity:.78 !important;
  margin:0 !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr-content,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr-content{
  min-width:0 !important;
  line-height:1 !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr-name,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr-name{
  display:none !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr-street,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr-street{
  display:block !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  font-size:.66rem !important;
  line-height:1.05 !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-kind-line,
body.app-shell .order-card.is-ride-collapsed .ride-kind-line{
  margin-top:3px !important;
  padding:1px 34px 0 0 !important;
  min-height:0 !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-kind-line .transport-chip--kind,
body.app-shell .order-card.is-ride-collapsed .ride-kind-line .transport-chip--kind{
  font-size:.62rem !important;
  line-height:1 !important;
  padding:2px 6px !important;
  border-radius:999px !important;
}
/* Checkbox unten rechts bleibt an ihrer Position, bekommt aber Reserveplatz durch das Footer-Padding. */
body.app-shell .ride-chip-v2.is-ride-collapsed .collective-select,
body.app-shell .order-card.is-ride-collapsed .collective-select{
  right:7px !important;
  bottom:6px !important;
}

/* v839: harmonischer vertikaler Statusstreifen innerhalb der Tourkachel – ohne Layout-/Inhaltsänderung */
body.app-shell .ride-chip-v2,
body.app-shell .order-card{
  position:relative !important;
}
body.app-shell .ride-chip-v2::after,
body.app-shell .order-card::after{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  border-top-left-radius:inherit;
  border-bottom-left-radius:inherit;
  background:rgba(124,196,255,.55);
  box-shadow:inset -1px 0 0 rgba(255,255,255,.14), 1px 0 6px rgba(15,23,42,.10);
  pointer-events:none;
  z-index:2;
}
body.app-shell .ride-chip-v2--ok::after,
body.app-shell .order-card.ride-chip-v2--ok::after{
  background:linear-gradient(180deg,#34d399,#10b981);
}
body.app-shell .ride-chip-v2--tight::after,
body.app-shell .order-card.ride-chip-v2--tight::after{
  background:linear-gradient(180deg,#fbbf24,#f59e0b);
}
body.app-shell .ride-chip-v2--late::after,
body.app-shell .order-card.ride-chip-v2--late::after{
  background:linear-gradient(180deg,#fb7185,#ef4444);
}
body.app-shell .ride-chip-v2--done::after,
body.app-shell .order-card.ride-chip-v2--done::after{
  background:linear-gradient(180deg,#94a3b8,#64748b);
}
body.app-shell .ride-chip-v2--locked::after,
body.app-shell .order-card.ride-chip-v2--locked::after{
  opacity:.88;
}

/* v840: Tourkachel-Inhalt ca. 2mm nach rechts – nur Innenabstand, keine Höhen-/Funktionsänderung */
body.app-shell .ride-chip-v2,
body.app-shell .order-card{
  padding-left:18px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed,
body.app-shell .order-card.is-ride-collapsed{
  padding-left:17px !important;
}
/* Der Statusstreifen bleibt unverändert links in der Rundung; der Inhalt bekommt optisch Luft daneben. */

/* v841: Fahrtart-Streifen bündig und harmonisch am unteren Kartenrand */
body.app-shell .ride-chip-v2 .chip-v2-kind-footer,
body.app-shell .order-card .chip-v2-kind-footer{
  margin:7px -42px -6px -18px !important;
  padding:0 !important;
  display:block !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-kind-footer,
body.app-shell .order-card.is-ride-collapsed .chip-v2-kind-footer{
  margin:5px -30px -5px -17px !important;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .ride-kind-line,
body.app-shell .order-card .chip-v2-kind-footer .ride-kind-line,
body.app-shell .ride-chip-v2 .ride-kind-line,
body.app-shell .order-card .ride-kind-line{
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  display:block !important;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind,
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind,
body.app-shell .order-card .ride-kind-line .transport-chip--kind{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  max-width:none !important;
  min-height:22px !important;
  box-sizing:border-box !important;
  border-width:0 !important;
  border-top:1px solid rgba(255,255,255,.20) !important;
  border-radius:0 0 18px 18px !important;
  padding:4px 36px 5px 16px !important;
  font-size:.72rem !important;
  line-height:1.05 !important;
  font-weight:900 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  color:#fff !important;
  text-shadow:0 1px 1px rgba(0,0,0,.28) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10), 0 -1px 10px rgba(15,23,42,.10) !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-kind-footer .transport-chip--kind,
body.app-shell .order-card.is-ride-collapsed .chip-v2-kind-footer .transport-chip--kind,
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-kind-line .transport-chip--kind,
body.app-shell .order-card.is-ride-collapsed .ride-kind-line .transport-chip--kind{
  min-height:19px !important;
  padding:3px 34px 4px 14px !important;
  font-size:.64rem !important;
  border-radius:0 0 18px 18px !important;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind-dialyse,
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind-dialyse,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind-dialyse,
body.app-shell .order-card .ride-kind-line .transport-chip--kind-dialyse{
  background:linear-gradient(90deg, rgba(126,87,255,.98), rgba(166,112,255,.92)) !important;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind-ambulant,
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind-ambulant,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind-ambulant,
body.app-shell .order-card .ride-kind-line .transport-chip--kind-ambulant{
  background:linear-gradient(90deg, rgba(98,86,229,.98), rgba(134,112,255,.92)) !important;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind:not(.transport-chip--kind-dialyse):not(.transport-chip--kind-ambulant),
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind:not(.transport-chip--kind-dialyse):not(.transport-chip--kind-ambulant),
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind:not(.transport-chip--kind-dialyse):not(.transport-chip--kind-ambulant),
body.app-shell .order-card .ride-kind-line .transport-chip--kind:not(.transport-chip--kind-dialyse):not(.transport-chip--kind-ambulant){
  background:linear-gradient(90deg, rgba(102,126,234,.98), rgba(118,75,162,.92)) !important;
}
/* Auswahl-Checkbox bleibt bedienbar über dem unteren Fahrtart-Streifen. */
body.app-shell .ride-chip-v2 .collective-select,
body.app-shell .order-card .collective-select{
  z-index:14 !important;
}

/* v843: Nur Fahrtart-Footer farblich auf Ambulant-Intensität vereinheitlicht. Keine Änderung am linken Statusstreifen. */
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind,
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind,
body.app-shell .order-card .ride-kind-line .transport-chip--kind{
  color:#ffffff !important;
  border-top:1px solid rgba(255,255,255,.22) !important;
  text-shadow:0 1px 1px rgba(0,0,0,.30) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12), 0 -1px 10px rgba(15,23,42,.12) !important;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind-ambulant,
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind-ambulant,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind-ambulant,
body.app-shell .order-card .ride-kind-line .transport-chip--kind-ambulant{
  background:linear-gradient(90deg, rgba(98,86,229,.98), rgba(134,112,255,.92)) !important;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind-dialyse,
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind-dialyse,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind-dialyse,
body.app-shell .order-card .ride-kind-line .transport-chip--kind-dialyse{
  background:linear-gradient(90deg, rgba(116,88,238,.98), rgba(156,111,250,.92)) !important;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind:not(.transport-chip--kind-dialyse):not(.transport-chip--kind-ambulant),
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind:not(.transport-chip--kind-dialyse):not(.transport-chip--kind-ambulant),
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind:not(.transport-chip--kind-dialyse):not(.transport-chip--kind-ambulant),
body.app-shell .order-card .ride-kind-line .transport-chip--kind:not(.transport-chip--kind-dialyse):not(.transport-chip--kind-ambulant){
  background:linear-gradient(90deg, rgba(104,92,226,.98), rgba(142,116,244,.92)) !important;
}

/* v844: Fahrtart-Footer mit identischer optischer Intensität je Variante.
   Nur Farb-/Kontrastwerte des unteren Fahrtart-Streifens, kein Layout-Eingriff. */
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind,
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind,
body.app-shell .order-card .ride-kind-line .transport-chip--kind{
  --kind-h1:255;
  --kind-h2:262;
  background:linear-gradient(90deg,
    hsl(var(--kind-h1) 68% 51%),
    hsl(var(--kind-h2) 70% 58%)
  ) !important;
  color:#ffffff !important;
  border-top:1px solid rgba(255,255,255,.24) !important;
  text-shadow:0 1px 1px rgba(0,0,0,.32) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13), 0 -1px 10px rgba(15,23,42,.13) !important;
  opacity:1 !important;
  filter:none !important;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind-ambulant,
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind-ambulant,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind-ambulant,
body.app-shell .order-card .ride-kind-line .transport-chip--kind-ambulant{
  --kind-h1:250;
  --kind-h2:258;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind-dialyse,
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind-dialyse,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind-dialyse,
body.app-shell .order-card .ride-kind-line .transport-chip--kind-dialyse{
  --kind-h1:268;
  --kind-h2:276;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind:not(.transport-chip--kind-dialyse):not(.transport-chip--kind-ambulant),
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind:not(.transport-chip--kind-dialyse):not(.transport-chip--kind-ambulant),
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind:not(.transport-chip--kind-dialyse):not(.transport-chip--kind-ambulant),
body.app-shell .order-card .ride-kind-line .transport-chip--kind:not(.transport-chip--kind-dialyse):not(.transport-chip--kind-ambulant){
  --kind-h1:238;
  --kind-h2:246;
}

/* v853 fallback: Genau zwei Farben fuer Fahrtart-Balken, falls app.css nach dem Modul greift. */
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind,
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind,
body.app-shell .order-card .ride-kind-line .transport-chip--kind{
  background:linear-gradient(90deg, hsl(252 68% 51%), hsl(262 70% 58%)) !important;
  color:#ffffff !important;
  border-top:1px solid rgba(255,255,255,.24) !important;
  text-shadow:0 1px 1px rgba(0,0,0,.32) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13), 0 -1px 10px rgba(15,23,42,.13) !important;
  opacity:1 !important;
  filter:none !important;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind.transport-chip--outbound,
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind.transport-chip--outbound,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind.transport-chip--outbound,
body.app-shell .order-card .ride-kind-line .transport-chip--kind.transport-chip--outbound{
  background:linear-gradient(90deg, hsl(252 68% 51%), hsl(262 70% 58%)) !important;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .transport-chip--kind.transport-chip--return,
body.app-shell .order-card .chip-v2-kind-footer .transport-chip--kind.transport-chip--return,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind.transport-chip--return,
body.app-shell .order-card .ride-kind-line .transport-chip--kind.transport-chip--return{
  background:linear-gradient(90deg, hsl(198 70% 43%), hsl(184 72% 45%)) !important;
}

/* v856 defensiv: keine Fahrtart-spezifischen Farben im unteren Fahrtart-Balken. */
body.app-shell .ride-chip-v2 .ride-kind-line.ride-kind-line--outbound,
body.app-shell .order-card .ride-kind-line.ride-kind-line--outbound{ background-image:linear-gradient(90deg,#5f52df 0%,#7a67f1 100%) !important; }
body.app-shell .ride-chip-v2 .ride-kind-line.ride-kind-line--return,
body.app-shell .order-card .ride-kind-line.ride-kind-line--return{ background-image:linear-gradient(90deg,#0f879f 0%,#15a9b3 100%) !important; }
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind,
body.app-shell .order-card .ride-kind-line .transport-chip--kind{ background:transparent !important; background-image:none !important; }

/* v857 fallback: Fahrtart-Footer exakt zweifarbig. */
body.app-shell .ride-chip-v2 .ride-kind-line.ride-kind-line--outbound,
body.app-shell .order-card .ride-kind-line.ride-kind-line--outbound,
body.app-shell .ride-chip-v2 .ride-kind-line[data-ride-direction="outbound"],
body.app-shell .order-card .ride-kind-line[data-ride-direction="outbound"]{
  background:#1d4ed8 !important;
  background-image:linear-gradient(90deg,#1d4ed8 0%,#2563eb 100%) !important;
}
body.app-shell .ride-chip-v2 .ride-kind-line.ride-kind-line--return,
body.app-shell .order-card .ride-kind-line.ride-kind-line--return,
body.app-shell .ride-chip-v2 .ride-kind-line[data-ride-direction="return"],
body.app-shell .order-card .ride-kind-line[data-ride-direction="return"]{
  background:#0e7490 !important;
  background-image:linear-gradient(90deg,#0e7490 0%,#0891b2 100%) !important;
}
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind,
body.app-shell .order-card .ride-kind-line .transport-chip--kind{
  background:transparent !important;
  background-image:none !important;
}


/* v859: Finale, dunklere Fahrtart-Footerfarben.
   Muss nach allen alten Regeln greifen; Farben nur nach Richtung. */
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .ride-kind-line.ride-kind-line--outbound,
body.app-shell .order-card .chip-v2-kind-footer .ride-kind-line.ride-kind-line--outbound,
body.app-shell .ride-chip-v2 .ride-kind-line.ride-kind-line--outbound,
body.app-shell .order-card .ride-kind-line.ride-kind-line--outbound,
body.app-shell .ride-chip-v2 .ride-kind-line[data-ride-direction="outbound"],
body.app-shell .order-card .ride-kind-line[data-ride-direction="outbound"]{
  background:#1e3a8a !important;
  background-image:linear-gradient(90deg,#1e3a8a 0%,#1d4ed8 100%) !important;
}
body.app-shell .ride-chip-v2 .chip-v2-kind-footer .ride-kind-line.ride-kind-line--return,
body.app-shell .order-card .chip-v2-kind-footer .ride-kind-line.ride-kind-line--return,
body.app-shell .ride-chip-v2 .ride-kind-line.ride-kind-line--return,
body.app-shell .order-card .ride-kind-line.ride-kind-line--return,
body.app-shell .ride-chip-v2 .ride-kind-line[data-ride-direction="return"],
body.app-shell .order-card .ride-kind-line[data-ride-direction="return"]{
  background:#075985 !important;
  background-image:linear-gradient(90deg,#075985 0%,#0e7490 100%) !important;
}
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip,
body.app-shell .order-card .ride-kind-line .transport-chip,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind,
body.app-shell .order-card .ride-kind-line .transport-chip--kind,
body.app-shell .ride-chip-v2 .ride-kind-line [class*="transport-chip--kind"],
body.app-shell .order-card .ride-kind-line [class*="transport-chip--kind"]{
  background:transparent !important;
  background-image:none !important;
  color:#fff !important;
  text-shadow:0 1px 2px rgba(0,0,0,.45) !important;
}

/* Serien-Fahrtart direkt im ersten Intake-Schritt */
.series-ride-type-choice {
  display: block;
  margin-top: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(148, 163, 184, .34);
  border-radius: 16px;
  background: rgba(15, 23, 42, .035);
  color: #0f172a;
  font-weight: 800;
}
.series-ride-type-choice.hidden { display: none !important; }
.series-ride-type-choice select {
  margin-top: 7px;
  width: 100%;
  min-height: 40px;
  border-radius: 12px;
  border: 1px solid rgba(100, 116, 139, .38);
  background: #fff;
  color: #0f172a;
  font-weight: 750;
}
.series-ride-type-choice .helper-text {
  display: block;
  margin-top: 6px;
  font-size: .78rem;
  line-height: 1.25;
  color: #475569;
  font-weight: 650;
}

/* Planprüfung: dezenter Hinweis, dass Sammelfahrten nicht automatisch geprüft werden */
body.app-shell .plan-review-note{
  margin: -2px 0 8px;
  color:#475569;
  font-size:.84rem;
  font-weight:700;
}

/* Schnellfahrt: Datenbankvorschläge für Patient und Ziel */
.quick-intake-suggestions{
  margin-top:12px;
  display:grid;
  gap:10px;
}
.quick-suggestion-group{
  border:1px solid #cbd5e1;
  border-radius:14px;
  background:#f1f5f9;
  padding:10px;
}
.quick-suggestion-group h3{
  margin:0 0 8px;
  font-size:.88rem;
  color:#0f172a;
  font-weight:800;
}
.quick-suggestion-list{
  display:grid;
  gap:7px;
}
.quick-suggestion-card{
  width:100%;
  text-align:left;
  border:1px solid #cbd5e1;
  background:#ffffff;
  color:#0f172a;
  border-radius:12px;
  padding:8px 10px;
  cursor:pointer;
  display:grid;
  gap:2px;
  box-shadow:0 4px 12px rgba(15,23,42,.08);
}
.quick-suggestion-card:hover,
.quick-suggestion-card:focus-visible{
  border-color:#2563eb;
  box-shadow:0 0 0 3px rgba(37,99,235,.16);
  outline:none;
}
.quick-suggestion-card strong{
  font-size:.9rem;
  line-height:1.2;
  color:#0f172a;
}
.quick-suggestion-card span{
  font-size:.8rem;
  color:#334155;
  line-height:1.25;
}
.quick-suggestion-card em{
  font-style:normal;
  font-size:.72rem;
  color:#475569;
}

/* 866: Schnelleingabe – Vorschläge rechts neben der Eingabemaske */
.quick-intake-dialog{
  width:min(1240px, calc(100vw - 32px)) !important;
}
.quick-intake-body{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(300px, 360px);
  gap:16px;
  align-items:start;
}
.quick-intake-form{
  min-width:0;
}
.quick-intake-suggestions{
  margin-top:0 !important;
  align-self:start;
  max-height:calc(100vh - 190px);
  overflow:auto;
  padding:2px 2px 10px;
}
.quick-intake-suggestions[hidden]{
  display:none !important;
}
.quick-intake-suggestions:not([hidden]){
  display:grid;
  gap:10px;
}
.quick-suggestion-group{
  background:#eef2f7;
  border-color:#cbd5e1;
  box-shadow:0 10px 26px rgba(15,23,42,.08);
}
.quick-suggestion-group h3{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.quick-suggestion-card{
  min-height:0;
}
@media (max-width:1040px){
  .quick-intake-body{
    grid-template-columns:1fr;
  }
  .quick-intake-suggestions{
    max-height:none;
    padding:0;
  }
}
@media (max-width:760px){
  .quick-intake-dialog{
    width:calc(100vw - 24px) !important;
  }
}

/* Routing-Diagnose für geschätzte Zwischenabschnitte */
.route-badge--clickable{cursor:pointer;font:inherit}
.route-badge--clickable:hover{filter:brightness(1.15);transform:translateY(-1px)}
.route-diagnose-backdrop{position:fixed;inset:0;z-index:99980;background:rgba(4,12,24,.62);display:flex;align-items:center;justify-content:center;padding:24px}
.route-diagnose-modal{width:min(900px,96vw);max-height:92vh;overflow:auto;border-radius:22px;background:#f8fafc;color:#102033;box-shadow:0 24px 70px rgba(0,0,0,.38);border:1px solid rgba(15,23,42,.16)}
.route-diagnose-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px 14px;border-bottom:1px solid rgba(15,23,42,.12);background:linear-gradient(135deg,#eaf2ff,#f8fafc)}
.route-diagnose-head h3{margin:0;color:#0f172a;font-size:1.25rem}.route-diagnose-head p{margin:4px 0 0;color:#475569}.route-diagnose-close{border:0;background:rgba(15,23,42,.08);color:#0f172a;border-radius:999px;width:34px;height:34px;font-size:1.3rem;cursor:pointer}.route-diagnose-close:hover{background:rgba(15,23,42,.16)}
.route-diagnose-body{padding:18px 22px}.route-diagnose-loading{padding:18px;border-radius:14px;background:#fff;border:1px solid #dbe3ef;color:#334155}.route-diagnose-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.route-diagnose-card{border:1px solid #d7e0ec;border-radius:14px;background:#fff;padding:12px;box-shadow:0 8px 20px rgba(15,23,42,.06)}.route-diagnose-card h4{margin:0 0 8px;color:#0f172a}.route-diagnose-card.is-ok{border-color:#9ed9c5}.route-diagnose-card.is-bad{border-color:#f3b0a6;background:#fff7f5}.route-diagnose-line{display:grid;grid-template-columns:120px 1fr;gap:10px;font-size:.86rem;margin:4px 0}.route-diagnose-line span{color:#64748b}.route-diagnose-line strong{color:#0f172a;font-weight:700;word-break:break-word}.route-diagnose-section{margin-top:14px;border-radius:14px;background:#fff;border:1px solid #d7e0ec;padding:12px}.route-diagnose-section h4{margin:0 0 8px;color:#0f172a}.route-diagnose-section ul{margin:0;padding-left:20px;color:#1e293b}.route-diagnose-section li{margin:5px 0}.route-diagnose-actions{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px 20px;border-top:1px solid rgba(15,23,42,.1);background:#f1f5f9}.route-diagnose-error{margin-bottom:12px;border-radius:12px;padding:10px 12px;background:#fee2e2;color:#7f1d1d;border:1px solid #fecaca}.route-diagnose-result{margin-bottom:12px;border-radius:12px;padding:10px 12px;background:#dff7ec;color:#064e3b;border:1px solid #a7f3d0}
@media(max-width:760px){.route-diagnose-grid{grid-template-columns:1fr}.route-diagnose-backdrop{padding:10px}.route-diagnose-line{grid-template-columns:1fr}}

/* Routing-Diagnose: manuelle Cache-Erfassung */
.route-diagnose-addresses{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.route-diagnose-addresses>div{border:1px solid #cbd5e1;border-radius:14px;background:#ffffff;padding:12px;box-shadow:0 8px 18px rgba(15,23,42,.06)}
.route-diagnose-addresses span{display:block;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#64748b;margin-bottom:5px}
.route-diagnose-addresses strong{display:block;color:#0f172a;font-size:.95rem;line-height:1.25;word-break:break-word}
.route-diagnose-manual{margin-top:14px;border:1px solid #bfdbfe;border-radius:14px;background:linear-gradient(135deg,#eff6ff,#ffffff);padding:12px;color:#0f172a}
.route-diagnose-manual h4{margin:0 0 6px;color:#0f172a}.route-diagnose-manual p{margin:0 0 10px;color:#475569;font-size:.9rem;line-height:1.35}
.route-diagnose-manual-row{display:grid;grid-template-columns:minmax(120px,170px) minmax(120px,170px);gap:10px;align-items:end}
.route-diagnose-manual-row label{display:flex;flex-direction:column;gap:5px;font-size:.82rem;font-weight:800;color:#334155}
.route-diagnose-manual-row input{height:36px;border-radius:10px;border:1px solid #94a3b8;background:#fff;color:#0f172a;padding:0 10px;font-weight:800;outline:none}
.route-diagnose-manual-row input:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.16)}
@media(max-width:760px){.route-diagnose-addresses,.route-diagnose-manual-row{grid-template-columns:1fr}}

/* KI-Konfiguration */
.ai-settings-page .ai-key-card .calc-preview {
  color: #0f172a;
  background: #e8f0ff;
  border: 1px solid rgba(37, 99, 235, .22);
  font-weight: 800;
}
.ai-toggle-line {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  color: #0f172a;
  font-weight: 700;
}
.ai-diagnostics-box {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}
.ai-diagnostic-row {
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(15, 23, 42, .12);
  background: #fff;
  color: #0f172a;
}
.ai-diagnostic-row strong { font-size: 13px; }
.ai-diagnostic-row span { font-size: 12px; color: #334155; line-height: 1.35; }
.ai-diagnostic-row.ok { border-left: 4px solid #16a34a; }
.ai-diagnostic-row.warn { border-left: 4px solid #f97316; background: #fff7ed; }

/* v875: ungeprüfte Schnelleingabe nur über Statusbalken, Uhrzeit und Namen markieren */
body.app-shell .ride-chip-v2--review::before,
body.app-shell .order-card.ride-chip-v2--review::before{
  background:#c026d3 !important;
  width:5px !important;
}
body.app-shell .ride-chip-v2--review .chip-v2-time-pill,
body.app-shell .order-card.ride-chip-v2--review .chip-v2-time-pill{
  background:#f5d0fe !important;
  color:#86198f !important;
  border-color:#c026d3 !important;
}
body.app-shell .ride-chip-v2--review .chip-v2-patient,
body.app-shell .order-card.ride-chip-v2--review .chip-v2-patient{
  color:#c026d3 !important;
  text-shadow:none !important;
}
body.app-shell .ride-followup-line--button{
  display:block;
  width:100%;
  text-align:left;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
}
body.app-shell .ride-followup-line--button:hover,
body.app-shell .ride-followup-line--button:focus-visible{
  background:#f5d0fe !important;
  border-color:#c026d3 !important;
  color:#701a75 !important;
  outline:3px solid rgba(192,38,211,.22);
  outline-offset:2px;
}

/* 877: Gezielte Lesbarkeitskorrektur für Popups/Prüfanzeigen ohne Änderung der Dashboard-Grundoptik.
   Keine globalen Card-/Dashboard-Regeln: nur konkrete Dialoge, Overlays, Picker und Ergebnisflächen. */
body.app-shell .plan-review-dialog,
body.app-shell .plan-review-dialog *,
body.app-shell .plan-review-summary,
body.app-shell .plan-review-summary *,
body.app-shell .plan-review-ai-error,
body.app-shell .plan-review-ai-error *,
body.app-shell .plan-review-item,
body.app-shell .plan-review-item *,
body.app-shell .plan-review-note,
body.app-shell .plan-review-empty{
  color:#0f172a;
}
body.app-shell .plan-review-head p,
body.app-shell .plan-review-summary span,
body.app-shell .plan-review-suggestion-select small,
body.app-shell .plan-review-note{
  color:#334155 !important;
}
body.app-shell .plan-review-dialog strong,
body.app-shell .plan-review-summary strong,
body.app-shell .plan-review-ai-error strong,
body.app-shell .plan-review-item strong{
  color:#0f172a !important;
}
body.app-shell .plan-review-rides button,
body.app-shell .plan-review-rides button *{
  color:#1e3a8a !important;
}
body.app-shell .plan-review-ai-error{
  background:#fff7ed;
  border-color:#fed7aa;
}
body.app-shell .plan-review-ai-error,
body.app-shell .plan-review-ai-error *{
  color:#7c2d12 !important;
}

body.app-shell .quick-intake-dialog,
body.app-shell .quick-intake-dialog *,
body.app-shell .quick-intake-suggestions,
body.app-shell .quick-intake-suggestions *,
body.app-shell .quick-suggestion-card,
body.app-shell .quick-suggestion-card *,
body.app-shell .quick-copay-choice,
body.app-shell .quick-copay-choice *{
  color:#0f172a;
}
body.app-shell .quick-intake-head p,
body.app-shell .quick-intake-dialog label span,
body.app-shell .quick-intake-dialog legend,
body.app-shell .quick-suggestion-card span,
body.app-shell .quick-suggestion-card small{
  color:#334155 !important;
}
body.app-shell .quick-intake-state{color:#1d4ed8 !important;}
body.app-shell .quick-intake-state.error{color:#991b1b !important;}

body.app-shell .route-diagnose-modal,
body.app-shell .route-diagnose-modal *,
body.app-shell .route-diagnose-card,
body.app-shell .route-diagnose-card *,
body.app-shell .route-diagnose-section,
body.app-shell .route-diagnose-section *,
body.app-shell .route-diagnose-addresses,
body.app-shell .route-diagnose-addresses *,
body.app-shell .route-diagnose-manual,
body.app-shell .route-diagnose-manual *{
  color:#0f172a;
}
body.app-shell .route-diagnose-head p,
body.app-shell .route-diagnose-line span,
body.app-shell .route-diagnose-addresses span,
body.app-shell .route-diagnose-manual p,
body.app-shell .route-diagnose-manual-row label{
  color:#475569 !important;
}
body.app-shell .route-diagnose-error,
body.app-shell .route-diagnose-error *{color:#7f1d1d !important;}
body.app-shell .route-diagnose-result,
body.app-shell .route-diagnose-result *{color:#064e3b !important;}

body.app-shell .series-pattern-picker,
body.app-shell .series-pattern-picker *,
body.app-shell .clock-picker,
body.app-shell .clock-picker *,
body.app-theme .clock-picker,
body.app-theme .clock-picker *,
body.subpage-shell .clock-picker,
body.subpage-shell .clock-picker *{
  color:#0f172a;
}
body.app-shell .series-pattern-picker__head p,
body.app-shell .series-pattern-card span{
  color:#475569 !important;
}
body.app-shell .series-pattern-delete,
body.app-shell .series-pattern-delete *{
  color:#991b1b !important;
}
body.app-shell .clock-picker__tick.is-selected,
body.app-shell .clock-picker__tick.is-selected *,
body.app-theme .clock-picker__tick.is-selected,
body.app-theme .clock-picker__tick.is-selected *,
body.subpage-shell .clock-picker__tick.is-selected,
body.subpage-shell .clock-picker__tick.is-selected *{
  color:#ffffff !important;
}

body.app-shell .feedback.success,
body.app-theme .feedback.success,
body.subpage-shell .feedback.success{background:#dcfce7;color:#14532d;border-color:#86efac;}
body.app-shell .feedback.error,
body.app-theme .feedback.error,
body.subpage-shell .feedback.error{background:#fee2e2;color:#7f1d1d;border-color:#fca5a5;}
body.app-shell .feedback.warn,
body.app-theme .feedback.warn,
body.subpage-shell .feedback.warn{background:#fef3c7;color:#78350f;border-color:#fcd34d;}
body.app-shell .feedback.info,
body.app-theme .feedback.info,
body.subpage-shell .feedback.info{background:#dbeafe;color:#1e3a8a;border-color:#93c5fd;}
body.app-shell .feedback.success *,
body.app-theme .feedback.success *,
body.subpage-shell .feedback.success *{color:#14532d;}
body.app-shell .feedback.error *,
body.app-theme .feedback.error *,
body.subpage-shell .feedback.error *{color:#7f1d1d;}
body.app-shell .feedback.warn *,
body.app-theme .feedback.warn *,
body.subpage-shell .feedback.warn *{color:#78350f;}
body.app-shell .feedback.info *,
body.app-theme .feedback.info *,
body.subpage-shell .feedback.info *{color:#1e3a8a;}

body.app-shell .search-overlay-field .overlay-match-list .match-item,
body.app-shell .search-overlay-field .overlay-match-list .match-item *,
body.app-theme .search-overlay-field .overlay-match-list .match-item,
body.app-theme .search-overlay-field .overlay-match-list .match-item *,
body.subpage-shell .search-overlay-field .overlay-match-list .match-item,
body.subpage-shell .search-overlay-field .overlay-match-list .match-item *{
  color:#0f172a;
}

/* v878: Kommerzielle Veredelung der Tourkacheln – nur Kartenoptik, keine Dashboard-Grundstruktur und keine Logikänderung */
body.app-shell .ride-chip-v2,
body.app-shell .order-card{
  background:linear-gradient(180deg, rgba(19,32,50,.98), rgba(14,24,38,.98)) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  border-radius:16px !important;
  box-shadow:0 10px 24px rgba(2,6,23,.20), inset 0 1px 0 rgba(255,255,255,.045) !important;
  padding:11px 12px 9px 20px !important;
}
body.app-shell .ride-chip-v2:hover,
body.app-shell .order-card:hover{
  border-color:rgba(124,196,255,.32) !important;
  box-shadow:0 13px 28px rgba(2,6,23,.26), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
body.app-shell .ride-chip-v2::after,
body.app-shell .order-card::after{
  width:5px !important;
  border-top-left-radius:16px !important;
  border-bottom-left-radius:16px !important;
  box-shadow:inset -1px 0 0 rgba(255,255,255,.18), 1px 0 8px rgba(2,6,23,.18) !important;
}
body.app-shell .ride-main-fields{
  gap:7px 9px !important;
}
body.app-shell .ride-chip-v2 .chip-v2-time-pill,
body.app-shell .order-card .chip-v2-time-pill{
  background:rgba(224,242,254,.96) !important;
  color:#075985 !important;
  border:1px solid rgba(125,211,252,.45) !important;
  box-shadow:0 4px 10px rgba(2,132,199,.10) !important;
  font-weight:950 !important;
  letter-spacing:-.01em !important;
}
body.app-shell .ride-chip-v2 .chip-v2-patient,
body.app-shell .order-card .chip-v2-patient,
body.app-shell .ride-main-fields .chip-v2-patient{
  color:#f8fafc !important;
  font-weight:900 !important;
  letter-spacing:-.018em !important;
  line-height:1.08 !important;
  text-shadow:none !important;
}
body.app-shell .ride-chip-v2 .chip-v2-addr,
body.app-shell .order-card .chip-v2-addr{
  background:rgba(255,255,255,.035) !important;
  border:1px solid rgba(148,163,184,.13) !important;
  border-radius:12px !important;
  box-shadow:none !important;
}
body.app-shell .ride-chip-v2 .chip-v2-addr-name,
body.app-shell .order-card .chip-v2-addr-name{
  color:#e2e8f0 !important;
  font-weight:800 !important;
}
body.app-shell .ride-chip-v2 .chip-v2-addr-street,
body.app-shell .order-card .chip-v2-addr-street,
body.app-shell .ride-chip-v2 .chip-v2-detail-body,
body.app-shell .order-card .chip-v2-detail-body{
  color:#b8c5d4 !important;
}
body.app-shell .ride-chip-v2 .chip-v2-detail,
body.app-shell .order-card .chip-v2-detail,
body.app-shell .ride-chip-v2 .ride-plan-box,
body.app-shell .order-card .ride-plan-box{
  background:rgba(15,23,42,.26) !important;
  border-color:rgba(148,163,184,.16) !important;
  color:#dbeafe !important;
}
body.app-shell .ride-chip-v2 .chip-v2-detail-summary,
body.app-shell .order-card .chip-v2-detail-summary{
  color:#f8fafc !important;
  font-weight:900 !important;
}
body.app-shell .ride-chip-v2 .transport-chip,
body.app-shell .order-card .transport-chip,
body.app-shell .ride-chip-v2 .transport-chip--kind,
body.app-shell .order-card .transport-chip--kind{
  border-color:rgba(148,163,184,.22) !important;
  background:rgba(255,255,255,.055) !important;
  color:#e5eef7 !important;
}
body.app-shell .ride-compact-toggle{
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  min-height:24px !important;
  top:-8px !important;
  right:-6px !important;
  background:#0f4c81 !important;
  border:2px solid rgba(255,255,255,.92) !important;
  box-shadow:0 6px 14px rgba(2,6,23,.36) !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed,
body.app-shell .order-card.is-ride-collapsed{
  padding:7px 30px 6px 19px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-time-pill,
body.app-shell .order-card.is-ride-collapsed .chip-v2-time-pill{
  min-width:43px !important;
  padding:4px 6px !important;
}
body.app-shell .ride-chip-v2--review::after,
body.app-shell .order-card.ride-chip-v2--review::after,
body.app-shell .ride-chip-v2--review::before,
body.app-shell .order-card.ride-chip-v2--review::before{
  background:linear-gradient(180deg,#e879f9,#c026d3) !important;
  width:5px !important;
}
body.app-shell .ride-chip-v2--review .chip-v2-time-pill,
body.app-shell .order-card.ride-chip-v2--review .chip-v2-time-pill{
  background:#f5d0fe !important;
  color:#86198f !important;
  border-color:#e879f9 !important;
}
body.app-shell .ride-chip-v2--review .chip-v2-patient,
body.app-shell .order-card.ride-chip-v2--review .chip-v2-patient{
  color:#f0abfc !important;
}

/* v879: Tourkachel-Aufklappbutton edler und nicht mehr angeschnitten.
   Nur Optik/Position des bestehenden Schalters; keine Logikänderung. */
body.app-shell .ride-chip-v2,
body.app-shell .order-card{
  overflow:visible !important;
}
body.app-shell .ride-chip-v2 .chip-v2-head,
body.app-shell .order-card .chip-v2-head,
body.app-shell .ride-main-fields .chip-v2-head{
  padding-right:34px !important;
}
body.app-shell .ride-compact-toggle{
  top:8px !important;
  right:8px !important;
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  min-height:28px !important;
  border-radius:10px !important;
  border:1px solid rgba(148,163,184,.34) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(241,245,249,.94)) !important;
  color:#0f172a !important;
  box-shadow:0 5px 14px rgba(15,23,42,.16), inset 0 1px 0 rgba(255,255,255,.86) !important;
  font-size:0 !important;
  line-height:1 !important;
  transform:none !important;
}
body.app-shell .ride-compact-toggle::before{
  content:'⌃' !important;
  display:block !important;
  color:#0f172a !important;
  font-size:18px !important;
  font-weight:900 !important;
  line-height:1 !important;
  transform:translateY(-1px) !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-compact-toggle,
body.app-shell .order-card.is-ride-collapsed .ride-compact-toggle{
  background:linear-gradient(180deg,#ffffff,#eaf4ff) !important;
  border-color:rgba(14,116,144,.28) !important;
  color:#075985 !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-compact-toggle::before,
body.app-shell .order-card.is-ride-collapsed .ride-compact-toggle::before{
  content:'⌄' !important;
  color:#075985 !important;
  transform:translateY(-2px) !important;
}
body.app-shell .ride-compact-toggle:hover,
body.app-shell .ride-compact-toggle:focus-visible{
  background:linear-gradient(180deg,#ffffff,#dff1ff) !important;
  border-color:rgba(14,116,144,.42) !important;
  color:#075985 !important;
  outline:2px solid rgba(14,165,233,.22) !important;
  outline-offset:2px !important;
  box-shadow:0 7px 18px rgba(15,23,42,.2), inset 0 1px 0 rgba(255,255,255,.92) !important;
}

/* v880: Tourkachel-Aufklappsteuerung dezent als reiner Pfeil */
body.app-shell .ride-compact-toggle{
  position:absolute !important;
  top:7px !important;
  right:8px !important;
  z-index:60 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:8px !important;
  background:transparent !important;
  color:rgba(71,85,105,.82) !important;
  box-shadow:none !important;
  outline:none !important;
  opacity:.86 !important;
  font-size:0 !important;
  font-weight:900 !important;
  line-height:1 !important;
}
body.app-shell .ride-compact-toggle::before{
  content:'⌃' !important;
  display:block !important;
  color:currentColor !important;
  font-size:18px !important;
  font-weight:900 !important;
  line-height:1 !important;
  transform:translateY(1px) !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-compact-toggle,
body.app-shell .order-card.is-ride-collapsed .ride-compact-toggle{
  background:transparent !important;
  color:rgba(71,85,105,.82) !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-compact-toggle::before,
body.app-shell .order-card.is-ride-collapsed .ride-compact-toggle::before{
  content:'⌄' !important;
  transform:translateY(-1px) !important;
}
body.app-shell .ride-compact-toggle:hover,
body.app-shell .ride-compact-toggle:focus-visible{
  background:rgba(15,23,42,.045) !important;
  color:#0f172a !important;
  outline:1px solid rgba(15,23,42,.12) !important;
  outline-offset:1px !important;
  box-shadow:none !important;
  opacity:1 !important;
}
body.app-shell .ride-main-fields{
  padding-right:18px !important;
}

/* v52 dashboard topbar: ruhiger, kommerzieller Aktionsbereich */
body.app-shell.dashboard-shell .dashboard-topbar{
  padding:14px 22px 10px;
  background:linear-gradient(180deg, rgba(8,15,26,.98), rgba(10,18,30,.94));
  border-bottom:1px solid rgba(148,170,205,.12);
  box-shadow:0 10px 26px rgba(3,10,20,.18);
}
body.app-shell.dashboard-shell .dashboard-topbar__row{
  display:grid;
  grid-template-columns:minmax(260px,1fr) auto;
  gap:18px;
  min-height:62px;
  align-items:center;
}
body.app-shell.dashboard-shell .dashboard-topbar__right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
body.app-shell.dashboard-shell .dashboard-topbar__cluster{
  min-height:44px;
  padding:6px;
  border-radius:16px;
  border:1px solid rgba(148,170,205,.13);
  background:rgba(255,255,255,.035);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
body.app-shell.dashboard-shell .dashboard-topbar__cluster--date{
  padding-right:6px;
}
body.app-shell.dashboard-shell .dashboard-topbar__cluster--preset{
  padding-left:6px;
}
body.app-shell.dashboard-shell .dashboard-brandline--datehero{
  display:flex;
  align-items:baseline;
  gap:10px;
}
body.app-shell.dashboard-shell .dashboard-brandline__label{
  font-size:.76rem;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:#9fb4ca;
  font-weight:800;
}
body.app-shell.dashboard-shell .dashboard-brandline--datehero h1,
body.app-shell.dashboard-shell #boardDateHeadline{
  font-size:1.62rem;
  line-height:1.05;
  color:#f5f8ff;
  letter-spacing:-.025em;
}
body.app-shell.dashboard-shell .dashboard-datebar,
body.app-shell.dashboard-shell .dashboard-presetbar{
  gap:6px;
  margin:0;
  padding:0;
  border:0;
  flex-wrap:nowrap;
}
body.app-shell.dashboard-shell .dashboard-datebar{
  padding-right:0;
}
body.app-shell.dashboard-shell .dashboard-topbar .compact-field{
  margin:0;
  color:#dce8f5;
}
body.app-shell.dashboard-shell .dashboard-topbar .compact-field input,
body.app-shell.dashboard-shell .dashboard-topbar .compact-field select,
body.app-shell.dashboard-shell .dashboard-topbar .nav-chip{
  height:34px;
  min-height:34px;
  line-height:34px;
  border-radius:11px;
  font-size:.8rem;
  font-weight:800;
}
body.app-shell.dashboard-shell .dashboard-topbar .compact-field input,
body.app-shell.dashboard-shell .dashboard-topbar .compact-field select{
  padding:0 11px;
  border:1px solid rgba(148,170,205,.17);
  background:rgba(255,255,255,.07);
  color:#f4f8ff;
}
body.app-shell.dashboard-shell .dashboard-topbar .compact-field input[type=date]{
  min-width:142px;
}
body.app-shell.dashboard-shell .dashboard-topbar .compact-field select{
  min-width:182px;
  padding-right:32px;
}
body.app-shell.dashboard-shell .dashboard-topbar .nav-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 12px;
  border:1px solid rgba(148,170,205,.16);
  background:rgba(255,255,255,.055);
  color:#edf5ff;
  box-shadow:none;
}
body.app-shell.dashboard-shell .dashboard-topbar .nav-chip:hover{
  background:rgba(255,255,255,.09);
  border-color:rgba(164,190,225,.24);
}
body.app-shell.dashboard-shell .dashboard-topbar .nav-chip#boardPrevDay,
body.app-shell.dashboard-shell .dashboard-topbar .nav-chip#boardNextDay{
  width:34px;
  min-width:34px;
  padding:0;
  font-size:.95rem;
}
body.app-shell.dashboard-shell .dashboard-topbar .nav-chip--save{
  min-width:148px;
  background:linear-gradient(180deg, rgba(77,145,238,.34), rgba(42,105,195,.24));
  border-color:rgba(128,186,255,.38);
  color:#ffffff;
  box-shadow:0 10px 22px rgba(20,85,170,.22), inset 0 1px 0 rgba(255,255,255,.12);
}
body.app-shell.dashboard-shell .dashboard-topbar .nav-chip--save:hover{
  background:linear-gradient(180deg, rgba(90,158,248,.42), rgba(50,118,210,.3));
  border-color:rgba(148,202,255,.5);
}
body.app-shell.dashboard-shell .dashboard-settings-state{
  max-width:148px;
  min-width:0;
  color:#9fb4ca;
  font-size:.74rem;
  line-height:1.2;
}
body.app-shell.dashboard-shell .dashboard-topbar .nav-chip:focus-visible,
body.app-shell.dashboard-shell .dashboard-topbar .compact-field input:focus-visible,
body.app-shell.dashboard-shell .dashboard-topbar .compact-field select:focus-visible{
  outline:2px solid rgba(125,190,255,.48);
  outline-offset:2px;
}
@media (max-width: 1360px){
  body.app-shell.dashboard-shell .dashboard-topbar__row{grid-template-columns:1fr;align-items:start;gap:10px;}
  body.app-shell.dashboard-shell .dashboard-topbar__right{justify-content:flex-start;}
}
@media (max-width: 980px){
  body.app-shell.dashboard-shell .dashboard-topbar{padding:12px 14px 10px;}
  body.app-shell.dashboard-shell .dashboard-topbar__row{min-height:auto;}
  body.app-shell.dashboard-shell .dashboard-topbar__right{width:100%;}
  body.app-shell.dashboard-shell .dashboard-topbar__cluster{max-width:100%;overflow-x:auto;}
}
@media (max-width: 680px){
  body.app-shell.dashboard-shell .dashboard-brandline--datehero{flex-direction:column;align-items:flex-start;gap:3px;}
  body.app-shell.dashboard-shell .dashboard-brandline--datehero h1,
  body.app-shell.dashboard-shell #boardDateHeadline{font-size:1.42rem;}
  body.app-shell.dashboard-shell .dashboard-datebar,
  body.app-shell.dashboard-shell .dashboard-presetbar{flex-wrap:wrap;}
}

/* v882: Rechte Dashboard-Spalte als hochwertiger Arbeitsvorrat */
body.app-shell.dashboard-shell .open-panel.card-elevated{
  padding:14px !important;
  border-radius:22px !important;
  border:1px solid rgba(148,170,205,.16) !important;
  background:linear-gradient(180deg, rgba(16,28,45,.96), rgba(12,22,35,.98)) !important;
  box-shadow:0 18px 42px rgba(3,10,20,.28), inset 0 1px 0 rgba(255,255,255,.045) !important;
}
body.app-shell.dashboard-shell .open-panel .section-head{
  display:grid !important;
  grid-template-columns:1fr auto !important;
  align-items:center !important;
  gap:10px !important;
  margin:2px 0 12px !important;
  padding:0 2px 10px !important;
  border-bottom:1px solid rgba(148,170,205,.12) !important;
}
body.app-shell.dashboard-shell .open-panel .section-head h2{
  margin:0 !important;
  font-size:1.02rem !important;
  line-height:1.15 !important;
  letter-spacing:-.01em !important;
  color:#f5f9ff !important;
}
body.app-shell.dashboard-shell .open-panel .muted-pill#openCount{
  min-width:36px !important;
  height:28px !important;
  padding:0 10px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:999px !important;
  border:1px solid rgba(148,170,205,.18) !important;
  background:rgba(255,255,255,.06) !important;
  color:#dbeafe !important;
  font-size:.82rem !important;
  font-weight:900 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05) !important;
}
body.app-shell.dashboard-shell .open-panel .release-day-banner-btn{
  width:100% !important;
  min-height:40px !important;
  margin:0 0 12px !important;
  border-radius:14px !important;
  border:1px solid rgba(251,191,36,.24) !important;
  background:linear-gradient(180deg, rgba(251,191,36,.14), rgba(217,119,6,.10)) !important;
  color:#fdecc8 !important;
  font-weight:850 !important;
  box-shadow:none !important;
}
body.app-shell.dashboard-shell .open-panel .release-day-banner-btn:hover,
body.app-shell.dashboard-shell .open-panel .release-day-banner-btn:focus-visible{
  border-color:rgba(251,191,36,.38) !important;
  background:linear-gradient(180deg, rgba(251,191,36,.19), rgba(217,119,6,.14)) !important;
  color:#fff7e6 !important;
  outline:2px solid rgba(251,191,36,.24) !important;
  outline-offset:2px !important;
}
body.app-shell.dashboard-shell .open-panel .inline-search{
  margin:0 0 12px !important;
  position:relative !important;
}
body.app-shell.dashboard-shell .open-panel .inline-search input{
  width:100% !important;
  min-height:40px !important;
  border-radius:14px !important;
  border:1px solid rgba(148,170,205,.15) !important;
  background:rgba(255,255,255,.055) !important;
  color:#f4f8ff !important;
  padding:0 13px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}
body.app-shell.dashboard-shell .open-panel .inline-search input::placeholder{
  color:#93a9bf !important;
}
body.app-shell.dashboard-shell .open-panel .inline-search input:focus{
  border-color:rgba(125,190,255,.42) !important;
  background:rgba(255,255,255,.075) !important;
  outline:2px solid rgba(125,190,255,.20) !important;
  outline-offset:2px !important;
}
body.app-shell.dashboard-shell .open-panel .open-orders{
  gap:10px !important;
  padding:2px !important;
}
body.app-shell.dashboard-shell .open-panel .drop-bucket--unplanned{
  border-radius:18px !important;
  transition:background .16s ease, outline-color .16s ease, box-shadow .16s ease !important;
}
body.app-shell.dashboard-shell .open-panel.is-drop-ready,
body.app-shell.dashboard-shell .open-panel.is-over{
  outline:2px dashed rgba(251,191,36,.44) !important;
  outline-offset:-8px !important;
  box-shadow:0 18px 42px rgba(3,10,20,.28), inset 0 0 0 999px rgba(251,191,36,.035) !important;
}
body.app-shell.dashboard-shell .open-panel .empty-state{
  border-radius:16px !important;
  border:1px dashed rgba(148,170,205,.20) !important;
  background:rgba(255,255,255,.04) !important;
  color:#c4d2e1 !important;
  padding:18px 14px !important;
  text-align:center !important;
}

/* v884: Fahrzeugspalten erneut optimiert – lesbar, dunkel, ohne helle Flächen */
body.app-shell.dashboard-shell .vehicles-grid{
  gap:10px !important;
  align-items:start !important;
}
body.app-shell.dashboard-shell .vehicle-card{
  padding:8px !important;
  border-radius:18px !important;
  overflow:visible !important;
  background:linear-gradient(180deg, rgba(31,45,61,.96), rgba(22,34,49,.98)) !important;
  border:1px solid rgba(148,170,205,.18) !important;
  box-shadow:0 16px 34px rgba(2,8,18,.26), inset 0 1px 0 rgba(255,255,255,.055) !important;
  color:#eef5ff !important;
}
body.app-shell.dashboard-shell .vehicle-card--ok{
  border-top:1px solid rgba(74,222,128,.22) !important;
}
body.app-shell.dashboard-shell .vehicle-card--tight{
  border-top:1px solid rgba(251,191,36,.24) !important;
}
body.app-shell.dashboard-shell .vehicle-card--late{
  border-top:1px solid rgba(248,113,113,.24) !important;
}
body.app-shell.dashboard-shell .vehicle-head-wrap{
  margin:0 0 9px !important;
  padding:0 !important;
  border-radius:16px !important;
  background:linear-gradient(180deg, rgba(18,32,50,.98), rgba(14,26,42,.98)) !important;
  border:1px solid rgba(148,170,205,.17) !important;
  border-bottom-color:rgba(148,170,205,.14) !important;
  box-shadow:0 12px 24px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.045) !important;
  color:#eef5ff !important;
  overflow:hidden !important;
}
body.app-shell.dashboard-shell .vehicle-head-wrap::before{
  height:4px !important;
  opacity:1 !important;
}
body.app-shell.dashboard-shell .vehicle-head-shell{
  padding:8px 8px 10px !important;
  background:linear-gradient(135deg, rgba(255,255,255,.035), rgba(255,255,255,.01)) !important;
}
body.app-shell.dashboard-shell .vehicle-head-toggle{
  padding:7px 8px 6px !important;
  border-radius:12px !important;
  color:#eef5ff !important;
}
body.app-shell.dashboard-shell .vehicle-head-toggle:hover{
  background:rgba(255,255,255,.035) !important;
}
body.app-shell.dashboard-shell .vehicle-head-main{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(118px,.9fr) !important;
  gap:10px !important;
  align-items:start !important;
}
body.app-shell.dashboard-shell .vehicle-name{
  color:#f8fbff !important;
  font-weight:900 !important;
  letter-spacing:-.01em !important;
  line-height:1.05 !important;
}
body.app-shell.dashboard-shell .vehicle-shift-line,
body.app-shell.dashboard-shell .vehicle-plate-line,
body.app-shell.dashboard-shell .vehicle-crew-label,
body.app-shell.dashboard-shell .vehicle-tail-meta,
body.app-shell.dashboard-shell .vehicle-support-meta,
body.app-shell.dashboard-shell .vehicle-meta-line,
body.app-shell.dashboard-shell .vehicle-tools__hint,
body.app-shell.dashboard-shell .vehicle-roster-state{
  color:#a9bdd3 !important;
}
body.app-shell.dashboard-shell .vehicle-plate-line strong,
body.app-shell.dashboard-shell .vehicle-crew-value,
body.app-shell.dashboard-shell .vehicle-tail-meta strong,
body.app-shell.dashboard-shell .vehicle-roster strong{
  color:#ecf5ff !important;
  font-weight:850 !important;
}
body.app-shell.dashboard-shell .vehicle-crew-line{
  display:grid !important;
  grid-template-columns:68px minmax(0,1fr) !important;
  gap:5px !important;
  align-items:start !important;
  line-height:1.15 !important;
}
body.app-shell.dashboard-shell .vehicle-crew-line br{
  display:none !important;
}
body.app-shell.dashboard-shell .vehicle-crew-label{
  font-size:.66rem !important;
  line-height:1.15 !important;
  letter-spacing:.045em !important;
  text-transform:uppercase !important;
  font-weight:800 !important;
}
body.app-shell.dashboard-shell .vehicle-crew-value{
  font-size:.78rem !important;
  line-height:1.15 !important;
  overflow-wrap:anywhere !important;
}
body.app-shell.dashboard-shell .vehicle-card-toolbar--sticky{
  margin-top:7px !important;
  padding-top:7px !important;
  border-top:1px solid rgba(148,170,205,.12) !important;
  background:transparent !important;
}
body.app-shell.dashboard-shell .vehicle-card-toolbar--sticky .mini-lock-all{
  min-height:31px !important;
  width:100% !important;
  border-radius:11px !important;
  border:1px solid rgba(148,170,205,.18) !important;
  background:rgba(255,255,255,.045) !important;
  color:#e7f0fb !important;
  box-shadow:none !important;
  font-size:.74rem !important;
  font-weight:800 !important;
}
body.app-shell.dashboard-shell .vehicle-card-toolbar--sticky .mini-lock-all:hover,
body.app-shell.dashboard-shell .vehicle-card-toolbar--sticky .mini-lock-all:focus-visible{
  background:rgba(255,255,255,.075) !important;
  border-color:rgba(148,170,205,.28) !important;
  color:#ffffff !important;
}
body.app-shell.dashboard-shell .vehicle-roster{
  gap:7px !important;
  margin-top:8px !important;
}
body.app-shell.dashboard-shell .vehicle-roster .roster-field{
  padding:7px 8px !important;
  border-radius:12px !important;
  border:1px solid rgba(148,170,205,.12) !important;
  background:rgba(255,255,255,.035) !important;
}
body.app-shell.dashboard-shell .vehicle-roster .roster-field span{
  color:#9fb4cb !important;
  font-size:.66rem !important;
  line-height:1.1 !important;
  font-weight:800 !important;
}
body.app-shell.dashboard-shell .vehicle-support-meta{
  min-height:auto !important;
  margin-top:8px !important;
  gap:6px !important;
}
body.app-shell.dashboard-shell .vehicle-tail-meta{
  padding:7px 8px !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.025) !important;
  border:1px solid rgba(148,170,205,.10) !important;
}
body.app-shell.dashboard-shell .vehicle-day-weight-strip{
  margin:-2px 0 7px !important;
  padding:7px 8px 6px !important;
  border-radius:16px !important;
  border:1px solid rgba(148,170,205,.14) !important;
  background:linear-gradient(180deg, rgba(14,26,42,.78), rgba(14,26,42,.46)) !important;
}
body.app-shell.dashboard-shell .vehicle-day-weight-strip__label{
  color:#9fb4cb !important;
}
body.app-shell.dashboard-shell .vehicle-day-weight-strip__value{
  color:#f3f8ff !important;
}
body.app-shell.dashboard-shell .vehicle-head-drop{
  min-height:32px !important;
  border-radius:12px !important;
  border:1px dashed rgba(148,170,205,.24) !important;
  background:rgba(255,255,255,.035) !important;
  color:#bfd0e3 !important;
  font-size:.72rem !important;
  font-weight:800 !important;
}
body.app-shell.dashboard-shell .vehicle-card.is-drop-ready{
  border-color:rgba(125,190,255,.30) !important;
}
body.app-shell.dashboard-shell .vehicle-card.is-over,
body.app-shell.dashboard-shell .vehicle-head-drop.is-over{
  background:linear-gradient(180deg, rgba(29,58,92,.98), rgba(17,38,63,.98)) !important;
  border-color:rgba(125,190,255,.58) !important;
  box-shadow:0 16px 34px rgba(37,99,235,.20), inset 0 1px 0 rgba(255,255,255,.06) !important;
  color:#f6fbff !important;
}
body.app-shell.dashboard-shell .ride-list{
  gap:8px !important;
}
@media (max-width:1280px){
  body.app-shell.dashboard-shell .vehicle-head-main{
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
}

/* v885: Statusfarben und Badges im Dashboard vereinheitlicht – nur kleine Status-/Chip-Elemente, keine Layout- oder Logikänderung */
body.app-shell.dashboard-shell .status-badge,
body.app-shell.dashboard-shell .summary-pill,
body.app-shell.dashboard-shell .warn-badge,
body.app-shell.dashboard-shell .driver-state-badge,
body.app-shell.dashboard-shell .transport-chip,
body.app-shell.dashboard-shell .transport-chip--kind,
body.app-shell.dashboard-shell .transport-chip--mode{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:22px !important;
  border-radius:999px !important;
  border:1px solid rgba(148,170,205,.20) !important;
  box-shadow:none !important;
  line-height:1.15 !important;
  text-shadow:none !important;
  white-space:nowrap !important;
}
body.app-shell.dashboard-shell .status-badge,
body.app-shell.dashboard-shell .summary-pill,
body.app-shell.dashboard-shell .warn-badge{
  padding:4px 9px !important;
  font-size:.72rem !important;
  font-weight:850 !important;
  letter-spacing:.005em !important;
}
body.app-shell.dashboard-shell .transport-chip,
body.app-shell.dashboard-shell .transport-chip--kind,
body.app-shell.dashboard-shell .transport-chip--mode,
body.app-shell.dashboard-shell .driver-state-badge{
  padding:4px 8px !important;
  font-size:.70rem !important;
  font-weight:800 !important;
}
body.app-shell.dashboard-shell .summary-pill--ok,
body.app-shell.dashboard-shell .status-badge--ok,
body.app-shell.dashboard-shell .driver-state-badge--completed{
  background:rgba(34,197,94,.12) !important;
  border-color:rgba(74,222,128,.28) !important;
  color:#bbf7d0 !important;
}
body.app-shell.dashboard-shell .summary-pill--tight,
body.app-shell.dashboard-shell .warn-badge--tight{
  background:rgba(251,191,36,.13) !important;
  border-color:rgba(251,191,36,.32) !important;
  color:#fde68a !important;
}
body.app-shell.dashboard-shell .summary-pill--late,
body.app-shell.dashboard-shell .warn-badge:not(.warn-badge--tight){
  background:rgba(248,113,113,.13) !important;
  border-color:rgba(248,113,113,.34) !important;
  color:#fecaca !important;
}
body.app-shell.dashboard-shell .driver-state-badge--planned{
  background:rgba(148,163,184,.12) !important;
  border-color:rgba(148,163,184,.24) !important;
  color:#dbe4ee !important;
}
body.app-shell.dashboard-shell .driver-state-badge--confirmed,
body.app-shell.dashboard-shell .ride-chip--state-confirmed .driver-state-badge{
  background:rgba(96,165,250,.14) !important;
  border-color:rgba(96,165,250,.30) !important;
  color:#dbeafe !important;
}
body.app-shell.dashboard-shell .driver-state-badge--en_route,
body.app-shell.dashboard-shell .ride-chip--state-en_route .driver-state-badge{
  background:rgba(45,212,191,.14) !important;
  border-color:rgba(45,212,191,.30) !important;
  color:#ccfbf1 !important;
}
body.app-shell.dashboard-shell .driver-state-badge--in_progress,
body.app-shell.dashboard-shell .ride-chip--state-in_progress .driver-state-badge{
  background:rgba(52,211,153,.14) !important;
  border-color:rgba(52,211,153,.32) !important;
  color:#d1fae5 !important;
}
body.app-shell.dashboard-shell .transport-chip--mode-sitzend{
  background:rgba(96,165,250,.13) !important;
  border-color:rgba(96,165,250,.28) !important;
  color:#dbeafe !important;
}
body.app-shell.dashboard-shell .transport-chip--mode-rollstuhl{
  background:rgba(74,222,128,.12) !important;
  border-color:rgba(74,222,128,.28) !important;
  color:#dcfce7 !important;
}
body.app-shell.dashboard-shell .transport-chip--mode-tragestuhl{
  background:rgba(251,191,36,.13) !important;
  border-color:rgba(251,191,36,.30) !important;
  color:#fef3c7 !important;
}
body.app-shell.dashboard-shell .transport-chip--mode-liegend{
  background:rgba(248,113,113,.13) !important;
  border-color:rgba(248,113,113,.30) !important;
  color:#fee2e2 !important;
}
body.app-shell.dashboard-shell .ride-kind-line .transport-chip--kind,
body.app-shell.dashboard-shell .chip-v2-kind-footer .transport-chip--kind{
  background:rgba(167,139,250,.13) !important;
  border-color:rgba(167,139,250,.30) !important;
  color:#ede9fe !important;
  box-shadow:none !important;
}
body.app-shell.dashboard-shell .ride-kind-line .transport-chip--kind-ambulant,
body.app-shell.dashboard-shell .chip-v2-kind-footer .transport-chip--kind-ambulant{
  background:rgba(129,140,248,.14) !important;
  border-color:rgba(129,140,248,.32) !important;
  color:#e0e7ff !important;
}
body.app-shell.dashboard-shell .ride-kind-line .transport-chip--kind-dialyse,
body.app-shell.dashboard-shell .chip-v2-kind-footer .transport-chip--kind-dialyse{
  background:rgba(168,85,247,.14) !important;
  border-color:rgba(192,132,252,.34) !important;
  color:#f3e8ff !important;
}
body.app-shell.dashboard-shell .ride-kind-line.ride-kind-line--outbound,
body.app-shell.dashboard-shell .ride-kind-line[data-ride-direction="outbound"]{
  background:linear-gradient(90deg, rgba(79,70,229,.22), rgba(99,102,241,.16)) !important;
  border-color:rgba(129,140,248,.26) !important;
}
body.app-shell.dashboard-shell .ride-kind-line.ride-kind-line--return,
body.app-shell.dashboard-shell .ride-kind-line[data-ride-direction="return"]{
  background:linear-gradient(90deg, rgba(14,116,144,.22), rgba(20,184,166,.14)) !important;
  border-color:rgba(45,212,191,.26) !important;
}
body.app-shell.dashboard-shell .ride-chip-v2--review .chip-v2-time-pill,
body.app-shell.dashboard-shell .order-card.ride-chip-v2--review .chip-v2-time-pill{
  background:rgba(232,121,249,.18) !important;
  color:#f5d0fe !important;
  border-color:rgba(232,121,249,.42) !important;
}
body.app-shell.dashboard-shell .ride-chip-v2--review .chip-v2-patient,
body.app-shell.dashboard-shell .order-card.ride-chip-v2--review .chip-v2-patient{
  color:#f0abfc !important;
}

/* v886: Bottom-Navigation und untere Statusbereiche ruhiger – nur Dashboard, keine Logik- oder Layoutstrukturänderung */
body.app-shell.dashboard-shell .bottom-nav.full-nav,
body.app-shell.dashboard-shell .bottom-nav.slim.full-nav,
body.app-shell.dashboard-shell .bottom-nav[data-global-nav]{
  left:14px !important;
  right:14px !important;
  bottom:10px !important;
  width:auto !important;
  max-width:calc(100vw - 28px) !important;
  min-height:54px !important;
  padding:7px 9px calc(7px + env(safe-area-inset-bottom)) !important;
  gap:4px !important;
  justify-content:center !important;
  align-items:center !important;
  background:linear-gradient(180deg, rgba(15,27,43,.94), rgba(8,16,27,.94)) !important;
  border:1px solid rgba(148,170,205,.16) !important;
  border-radius:22px !important;
  box-shadow:0 18px 48px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.055) !important;
  backdrop-filter:blur(18px) saturate(120%) !important;
  overflow:auto !important;
  scrollbar-width:none !important;
}
body.app-shell.dashboard-shell .bottom-nav.full-nav::-webkit-scrollbar,
body.app-shell.dashboard-shell .bottom-nav.slim.full-nav::-webkit-scrollbar,
body.app-shell.dashboard-shell .bottom-nav[data-global-nav]::-webkit-scrollbar{
  display:none !important;
}
body.app-shell.dashboard-shell .bottom-nav a,
body.app-shell.dashboard-shell .bottom-nav button{
  min-height:38px !important;
  padding:8px 11px !important;
  border:1px solid transparent !important;
  border-radius:15px !important;
  background:transparent !important;
  color:#b9c8d9 !important;
  font-size:.86rem !important;
  font-weight:750 !important;
  letter-spacing:.005em !important;
  box-shadow:none !important;
  opacity:.92 !important;
  transition:background .16s ease, border-color .16s ease, color .16s ease, opacity .16s ease, transform .16s ease !important;
}
body.app-shell.dashboard-shell .bottom-nav a:hover,
body.app-shell.dashboard-shell .bottom-nav button:hover{
  background:rgba(255,255,255,.045) !important;
  border-color:rgba(148,170,205,.14) !important;
  color:#edf6ff !important;
  opacity:1 !important;
  transform:translateY(-1px) !important;
}
body.app-shell.dashboard-shell .bottom-nav a.active,
body.app-shell.dashboard-shell .bottom-nav button.active,
body.app-shell.dashboard-shell .bottom-nav [aria-current="page"]{
  background:linear-gradient(180deg, rgba(96,165,250,.20), rgba(59,130,246,.12)) !important;
  border-color:rgba(125,190,255,.30) !important;
  color:#f3f9ff !important;
  opacity:1 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
}
body.app-shell.dashboard-shell .debug-bar.card{
  margin:0 16px 78px !important;
  padding:10px 13px !important;
  border-radius:18px !important;
  background:linear-gradient(180deg, rgba(15,27,43,.76), rgba(10,20,34,.72)) !important;
  border:1px solid rgba(148,170,205,.13) !important;
  box-shadow:0 12px 28px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.035) !important;
  color:#dbe7f4 !important;
}
body.app-shell.dashboard-shell .debug-bar.card strong{
  margin-bottom:3px !important;
  color:#f4f8fd !important;
  font-size:.82rem !important;
  font-weight:850 !important;
  letter-spacing:.025em !important;
  text-transform:uppercase !important;
}
body.app-shell.dashboard-shell .debug-text,
body.app-shell.dashboard-shell #debugArea{
  color:#b8c7d8 !important;
  font-size:.86rem !important;
  line-height:1.35 !important;
}
@media (max-width:900px){
  body.app-shell.dashboard-shell .bottom-nav.full-nav,
  body.app-shell.dashboard-shell .bottom-nav.slim.full-nav,
  body.app-shell.dashboard-shell .bottom-nav[data-global-nav]{
    left:8px !important;
    right:8px !important;
    bottom:8px !important;
    max-width:calc(100vw - 16px) !important;
    justify-content:flex-start !important;
  }
  body.app-shell.dashboard-shell .bottom-nav a,
  body.app-shell.dashboard-shell .bottom-nav button{
    font-size:.82rem !important;
    padding:8px 10px !important;
  }
  body.app-shell.dashboard-shell .debug-bar.card{margin-bottom:74px !important;}
}

/* v887: Bottom-Menü repariert – Aufklappen wieder sichtbar, Abstand unten = 0; keine weitere Dashboard-Optikänderung */
body.app-shell.dashboard-shell .bottom-nav.full-nav,
body.app-shell.dashboard-shell .bottom-nav.slim.full-nav,
body.app-shell.dashboard-shell .bottom-nav[data-global-nav]{
  bottom:0 !important;
  overflow:visible !important;
  border-radius:22px 22px 0 0 !important;
}
body.app-shell.dashboard-shell .bottom-nav.full-nav .nav-dropdown-menu,
body.app-shell.dashboard-shell .bottom-nav.slim.full-nav .nav-dropdown-menu,
body.app-shell.dashboard-shell .bottom-nav[data-global-nav] .nav-dropdown-menu{
  display:none;
  bottom:calc(100% + 8px) !important;
  z-index:10000 !important;
}
body.app-shell.dashboard-shell .bottom-nav.full-nav .nav-dropdown:hover .nav-dropdown-menu,
body.app-shell.dashboard-shell .bottom-nav.full-nav .nav-dropdown:focus-within .nav-dropdown-menu,
body.app-shell.dashboard-shell .bottom-nav.full-nav .nav-dropdown.is-open .nav-dropdown-menu,
body.app-shell.dashboard-shell .bottom-nav.slim.full-nav .nav-dropdown:hover .nav-dropdown-menu,
body.app-shell.dashboard-shell .bottom-nav.slim.full-nav .nav-dropdown:focus-within .nav-dropdown-menu,
body.app-shell.dashboard-shell .bottom-nav.slim.full-nav .nav-dropdown.is-open .nav-dropdown-menu,
body.app-shell.dashboard-shell .bottom-nav[data-global-nav] .nav-dropdown:hover .nav-dropdown-menu,
body.app-shell.dashboard-shell .bottom-nav[data-global-nav] .nav-dropdown:focus-within .nav-dropdown-menu,
body.app-shell.dashboard-shell .bottom-nav[data-global-nav] .nav-dropdown.is-open .nav-dropdown-menu{
  display:flex !important;
}
@media (max-width:900px){
  body.app-shell.dashboard-shell .bottom-nav.full-nav,
  body.app-shell.dashboard-shell .bottom-nav.slim.full-nav,
  body.app-shell.dashboard-shell .bottom-nav[data-global-nav]{
    bottom:0 !important;
    overflow:visible !important;
  }
}

/* v889: Dashboard-Feinschliff für Aktionsbuttons und Formularelemente – keine Logik, keine Bottom-Menü-Änderung */
body.app-shell.dashboard-shell .dashboard-topbar .nav-chip,
body.app-shell.dashboard-shell .dashboard-topbar .ghost,
body.app-shell.dashboard-shell .dashboard-topbar button:not(.nav-dropdown-toggle),
body.app-shell.dashboard-shell .open-panel .ghost,
body.app-shell.dashboard-shell .open-panel button:not(.nav-dropdown-toggle),
body.app-shell.dashboard-shell .debug-bar.card button,
body.app-shell.dashboard-shell .view-switch__btn{
  min-height:36px !important;
  border-radius:14px !important;
  border:1px solid rgba(148,170,205,.18) !important;
  background:rgba(255,255,255,.065) !important;
  color:#e9f2ff !important;
  font-weight:800 !important;
  letter-spacing:.003em !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045) !important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease !important;
}
body.app-shell.dashboard-shell .dashboard-topbar .nav-chip:hover,
body.app-shell.dashboard-shell .dashboard-topbar .ghost:hover,
body.app-shell.dashboard-shell .dashboard-topbar button:not(.nav-dropdown-toggle):hover,
body.app-shell.dashboard-shell .open-panel .ghost:hover,
body.app-shell.dashboard-shell .open-panel button:not(.nav-dropdown-toggle):hover,
body.app-shell.dashboard-shell .debug-bar.card button:hover,
body.app-shell.dashboard-shell .view-switch__btn:hover{
  background:rgba(255,255,255,.10) !important;
  border-color:rgba(186,209,238,.28) !important;
  color:#ffffff !important;
  transform:translateY(-1px) !important;
}
body.app-shell.dashboard-shell .dashboard-topbar .nav-chip--save,
body.app-shell.dashboard-shell .dashboard-topbar [data-action="eco-plan"],
body.app-shell.dashboard-shell .dashboard-topbar [href$="#eco-plan"]{
  background:linear-gradient(180deg, rgba(96,165,250,.22), rgba(59,130,246,.13)) !important;
  border-color:rgba(125,190,255,.34) !important;
  color:#f3f9ff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 8px 22px rgba(37,99,235,.10) !important;
}
body.app-shell.dashboard-shell .dashboard-topbar .nav-chip--save:hover,
body.app-shell.dashboard-shell .dashboard-topbar [data-action="eco-plan"]:hover,
body.app-shell.dashboard-shell .dashboard-topbar [href$="#eco-plan"]:hover{
  background:linear-gradient(180deg, rgba(96,165,250,.27), rgba(59,130,246,.17)) !important;
  border-color:rgba(147,197,253,.44) !important;
}
body.app-shell.dashboard-shell .dashboard-topbar .compact-field,
body.app-shell.dashboard-shell .open-panel .compact-field{
  color:#c9d8e8 !important;
  font-weight:750 !important;
}
body.app-shell.dashboard-shell .dashboard-topbar .compact-field input,
body.app-shell.dashboard-shell .dashboard-topbar .compact-field select,
body.app-shell.dashboard-shell .open-panel input,
body.app-shell.dashboard-shell .open-panel select,
body.app-shell.dashboard-shell .inline-search input{
  min-height:38px !important;
  border-radius:14px !important;
  border:1px solid rgba(148,170,205,.20) !important;
  background:rgba(8,16,27,.58) !important;
  color:#eef6ff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}
body.app-shell.dashboard-shell .dashboard-topbar .compact-field input:focus,
body.app-shell.dashboard-shell .dashboard-topbar .compact-field select:focus,
body.app-shell.dashboard-shell .open-panel input:focus,
body.app-shell.dashboard-shell .open-panel select:focus,
body.app-shell.dashboard-shell .inline-search input:focus{
  outline:2px solid rgba(125,190,255,.34) !important;
  outline-offset:2px !important;
  border-color:rgba(147,197,253,.44) !important;
  background:rgba(8,16,27,.72) !important;
}
body.app-shell.dashboard-shell .inline-search input::placeholder,
body.app-shell.dashboard-shell .open-panel input::placeholder{
  color:#8fa3b8 !important;
}
body.app-shell.dashboard-shell .view-switch__buttons{
  padding:3px !important;
  border-radius:16px !important;
  background:rgba(8,16,27,.48) !important;
  border:1px solid rgba(148,170,205,.16) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}
body.app-shell.dashboard-shell .view-switch__btn{
  min-height:32px !important;
  padding:6px 10px !important;
  background:transparent !important;
  border-color:transparent !important;
  color:#b9c8d9 !important;
  box-shadow:none !important;
}
body.app-shell.dashboard-shell .view-switch__btn.is-active{
  background:rgba(96,165,250,.18) !important;
  border-color:rgba(125,190,255,.24) !important;
  color:#f3f9ff !important;
}
body.app-shell.dashboard-shell button:disabled,
body.app-shell.dashboard-shell .nav-chip[aria-disabled="true"],
body.app-shell.dashboard-shell .nav-chip.is-disabled{
  opacity:.52 !important;
  cursor:not-allowed !important;
  transform:none !important;
}

/* v890: Topbar-Datumssteuerung stabilisieren */
body.app-shell.dashboard-shell .dashboard-topbar__cluster--date{
  flex:0 0 auto;
}
body.app-shell.dashboard-shell .dashboard-datebar{
  width:318px;
  min-width:318px;
  max-width:318px;
  display:grid;
  grid-template-columns:34px 172px 58px 34px;
  gap:6px;
  align-items:center;
}
body.app-shell.dashboard-shell .dashboard-datebar .nav-chip,
body.app-shell.dashboard-shell .dashboard-datebar .compact-field{
  width:100%;
  min-width:0;
}
body.app-shell.dashboard-shell .dashboard-topbar .compact-field--date{
  position:relative;
  display:block;
}
body.app-shell.dashboard-shell .dashboard-topbar .compact-field--date input[type=date]{
  width:172px;
  min-width:172px;
  max-width:172px;
  padding-right:38px;
  font-variant-numeric:tabular-nums;
  letter-spacing:.01em;
}
body.app-shell.dashboard-shell .dashboard-topbar .compact-field--date::after{
  content:"▾";
  position:absolute;
  right:10px;
  top:50%;
  transform:translateY(-50%);
  width:22px;
  height:22px;
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#f5f9ff;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(170,196,230,.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  pointer-events:none;
  font-size:.8rem;
  line-height:1;
}
body.app-shell.dashboard-shell .dashboard-topbar .compact-field--date input[type=date]::-webkit-calendar-picker-indicator{
  opacity:1;
  width:30px;
  height:30px;
  margin-right:-4px;
  cursor:pointer;
  filter:invert(1) brightness(1.25);
}
body.app-shell.dashboard-shell .dashboard-topbar .compact-field--date:focus-within::after{
  background:rgba(125,190,255,.2);
  border-color:rgba(125,190,255,.45);
}
body.app-shell.dashboard-shell .dashboard-brandline--datehero{
  min-width:380px;
}
body.app-shell.dashboard-shell #boardDateHeadline{
  min-width:250px;
  font-variant-numeric:tabular-nums;
}
@media (max-width: 680px){
  body.app-shell.dashboard-shell .dashboard-datebar{
    width:100%;
    min-width:0;
    max-width:100%;
    grid-template-columns:34px minmax(164px,1fr) 58px 34px;
  }
  body.app-shell.dashboard-shell .dashboard-topbar .compact-field--date input[type=date]{
    width:100%;
    min-width:0;
    max-width:none;
  }
  body.app-shell.dashboard-shell .dashboard-brandline--datehero,
  body.app-shell.dashboard-shell #boardDateHeadline{
    min-width:0;
  }
}

/* v43: Dashboard-Topbar - rechte Steuerung fest rechts vom Datumsheadline ausrichten */
@media (min-width: 901px){
  body.app-shell .dashboard-topbar__row{
    display:grid;
    grid-template-columns:max-content minmax(0, 1fr);
    align-items:center;
    column-gap:24px;
    width:100%;
    overflow:visible;
  }
  body.app-shell .dashboard-topbar__left{
    grid-column:1;
    width:auto;
    min-width:max-content;
    overflow:visible;
  }
  body.app-shell .dashboard-topbar__right{
    grid-column:2;
    width:100%;
    min-width:0;
    margin-left:0;
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:12px;
    flex-wrap:nowrap;
    justify-self:stretch;
  }
  body.app-shell .dashboard-topbar__cluster{
    display:flex;
    justify-content:flex-end;
    min-width:0;
  }
  body.app-shell .dashboard-datebar{
    margin-left:0;
  }
}

/* v894: Kommerzielle Vereinheitlichung der Popup-/Dialogoptik.
   Bewusst eng auf Dialoge/Overlays begrenzt: keine Dashboard-Flächen, keine Kacheln, keine Navigation. */
body.app-shell .plan-review-overlay,
body.app-shell .quick-intake-overlay,
body.app-shell .route-diagnose-backdrop,
body.app-shell .series-pattern-picker-overlay,
body.app-shell .clock-picker-backdrop{
  background:rgba(2,6,23,.70) !important;
  backdrop-filter:blur(8px);
}

body.app-shell .plan-review-dialog,
body.app-shell .quick-intake-dialog,
body.app-shell .route-diagnose-modal,
body.app-shell .series-pattern-picker,
body.app-shell .clock-picker{
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%) !important;
  color:#0f172a !important;
  border:1px solid rgba(148,163,184,.42) !important;
  border-radius:24px !important;
  box-shadow:0 30px 90px rgba(2,6,23,.38), inset 0 1px 0 rgba(255,255,255,.80) !important;
}

body.app-shell .plan-review-dialog,
body.app-shell .quick-intake-dialog,
body.app-shell .series-pattern-picker,
body.app-shell .clock-picker{
  padding:22px !important;
}
body.app-shell .route-diagnose-modal{
  overflow:hidden !important;
}
body.app-shell .route-diagnose-body{
  padding:20px 24px !important;
  max-height:calc(92vh - 132px);
  overflow:auto;
}

body.app-shell .plan-review-head,
body.app-shell .quick-intake-head,
body.app-shell .series-pattern-picker__head,
body.app-shell .route-diagnose-head{
  padding-bottom:14px !important;
  margin-bottom:16px !important;
  border-bottom:1px solid rgba(15,23,42,.10) !important;
  background:transparent !important;
}
body.app-shell .route-diagnose-head{
  padding:22px 24px 16px !important;
  margin-bottom:0 !important;
}

body.app-shell .plan-review-head h2,
body.app-shell .quick-intake-head h2,
body.app-shell .series-pattern-picker__head h2,
body.app-shell .route-diagnose-head h3,
body.app-shell .clock-picker__head h3{
  color:#0f172a !important;
  font-size:1.24rem !important;
  line-height:1.12 !important;
  letter-spacing:-.025em !important;
  font-weight:900 !important;
}
body.app-shell .plan-review-head p,
body.app-shell .quick-intake-head p,
body.app-shell .series-pattern-picker__head p,
body.app-shell .route-diagnose-head p{
  color:#475569 !important;
  line-height:1.42 !important;
}

body.app-shell .quick-intake-close,
body.app-shell .series-pattern-picker__close,
body.app-shell .route-diagnose-close{
  width:36px !important;
  height:36px !important;
  border-radius:999px !important;
  border:1px solid #cbd5e1 !important;
  background:#f8fafc !important;
  color:#334155 !important;
  box-shadow:0 6px 14px rgba(15,23,42,.08) !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
}
body.app-shell .quick-intake-close:hover,
body.app-shell .series-pattern-picker__close:hover,
body.app-shell .route-diagnose-close:hover,
body.app-shell .quick-intake-close:focus-visible,
body.app-shell .series-pattern-picker__close:focus-visible,
body.app-shell .route-diagnose-close:focus-visible{
  background:#e2e8f0 !important;
  color:#0f172a !important;
  border-color:#94a3b8 !important;
  outline:none !important;
  box-shadow:0 0 0 3px rgba(59,130,246,.18), 0 8px 18px rgba(15,23,42,.10) !important;
}

body.app-shell .plan-review-summary,
body.app-shell .plan-review-item,
body.app-shell .quick-suggestion-card,
body.app-shell .quick-copay-choice,
body.app-shell .route-diagnose-card,
body.app-shell .route-diagnose-section,
body.app-shell .route-diagnose-addresses>div,
body.app-shell .route-diagnose-manual,
body.app-shell .series-pattern-card{
  background:#ffffff !important;
  color:#0f172a !important;
  border:1px solid #dbe3ef !important;
  border-radius:16px !important;
  box-shadow:0 10px 24px rgba(15,23,42,.06) !important;
}
body.app-shell .plan-review-summary,
body.app-shell .plan-review-item{
  padding:13px 14px !important;
  margin:10px 0 !important;
}
body.app-shell .plan-review-item:hover,
body.app-shell .quick-suggestion-card:hover,
body.app-shell .series-pattern-card:hover,
body.app-shell .series-pattern-card:focus-visible{
  border-color:#bfdbfe !important;
  box-shadow:0 14px 28px rgba(15,23,42,.08) !important;
}

body.app-shell .plan-review-section h3{
  margin:18px 0 8px !important;
  color:#0f172a !important;
  font-size:.94rem !important;
  letter-spacing:.01em !important;
  font-weight:900 !important;
}
body.app-shell .plan-review-note,
body.app-shell .plan-review-empty{
  background:#f8fafc !important;
  border:1px solid #dbe3ef !important;
  border-radius:14px !important;
  color:#334155 !important;
  padding:11px 12px !important;
}
body.app-shell .plan-review-ai-error,
body.app-shell .route-diagnose-error{
  background:#fff7ed !important;
  border:1px solid #fed7aa !important;
  color:#7c2d12 !important;
  border-radius:14px !important;
  box-shadow:none !important;
}
body.app-shell .route-diagnose-result{
  background:#ecfdf5 !important;
  border:1px solid #a7f3d0 !important;
  color:#065f46 !important;
  border-radius:14px !important;
}

body.app-shell .quick-intake-dialog input:not([type="checkbox"]):not([type="radio"]),
body.app-shell .quick-intake-dialog textarea,
body.app-shell .quick-intake-dialog select,
body.app-shell .route-diagnose-manual-row input,
body.app-shell .series-pattern-picker__dates input{
  min-height:40px !important;
  border-radius:12px !important;
  background:#ffffff !important;
  color:#0f172a !important;
  border:1px solid #cbd5e1 !important;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.04) !important;
}
body.app-shell .quick-intake-dialog input:focus,
body.app-shell .quick-intake-dialog textarea:focus,
body.app-shell .quick-intake-dialog select:focus,
body.app-shell .route-diagnose-manual-row input:focus,
body.app-shell .series-pattern-picker__dates input:focus{
  border-color:#2563eb !important;
  box-shadow:0 0 0 3px rgba(37,99,235,.16), inset 0 1px 2px rgba(15,23,42,.04) !important;
  outline:none !important;
}

body.app-shell .plan-review-actions,
body.app-shell .quick-intake-actions,
body.app-shell .route-diagnose-actions{
  display:flex !important;
  justify-content:flex-end !important;
  gap:10px !important;
  margin-top:18px !important;
  padding-top:14px !important;
  border-top:1px solid rgba(15,23,42,.10) !important;
  background:transparent !important;
}
body.app-shell .route-diagnose-actions{
  padding:16px 24px 22px !important;
  margin-top:0 !important;
}
body.app-shell .plan-review-actions button,
body.app-shell .quick-intake-actions button,
body.app-shell .quick-intake-actions .nav-chip,
body.app-shell .route-diagnose-actions button{
  min-height:38px !important;
  border-radius:12px !important;
  font-weight:850 !important;
  box-shadow:0 8px 18px rgba(15,23,42,.10) !important;
}
body.app-shell .plan-review-rides button{
  border-radius:12px !important;
  background:#eff6ff !important;
  border-color:#bfdbfe !important;
  color:#1e3a8a !important;
}
body.app-shell .plan-review-rides button:hover,
body.app-shell .plan-review-rides button:focus-visible{
  background:#dbeafe !important;
  border-color:#93c5fd !important;
  outline:none !important;
}

@media (max-width:760px){
  body.app-shell .plan-review-dialog,
  body.app-shell .quick-intake-dialog,
  body.app-shell .series-pattern-picker,
  body.app-shell .clock-picker{
    padding:16px !important;
    border-radius:20px !important;
  }
  body.app-shell .route-diagnose-head,
  body.app-shell .route-diagnose-body,
  body.app-shell .route-diagnose-actions{
    padding-left:16px !important;
    padding-right:16px !important;
  }
  body.app-shell .plan-review-actions,
  body.app-shell .quick-intake-actions,
  body.app-shell .route-diagnose-actions{
    justify-content:stretch !important;
  }
  body.app-shell .plan-review-actions button,
  body.app-shell .quick-intake-actions button,
  body.app-shell .quick-intake-actions .nav-chip,
  body.app-shell .route-diagnose-actions button{
    flex:1 1 auto !important;
  }
}

/* 895: Dashboard-nahe Dialogoptik: dunkle Popups mit klarer Abhebung und gesicherter Lesbarkeit.
   Begrenzt auf die aufgelisteten Popup-/Dialogkomponenten; keine Dashboard-Flächen, Karten oder Navigation. */
body.app-shell .plan-review-overlay,
body.app-shell .quick-intake-overlay,
body.app-shell .route-diagnose-backdrop,
body.app-shell .series-pattern-picker-overlay,
body.app-shell .clock-picker-backdrop,
body.app-theme .clock-picker-backdrop,
body.subpage-shell .clock-picker-backdrop{
  background:rgba(2,6,23,.78) !important;
  backdrop-filter:blur(8px) saturate(115%);
}

body.app-shell .plan-review-dialog,
body.app-shell .quick-intake-dialog,
body.app-shell .route-diagnose-modal,
body.app-shell .series-pattern-picker,
body.app-shell .clock-picker,
body.app-theme .clock-picker,
body.subpage-shell .clock-picker{
  background:linear-gradient(180deg,#172033 0%,#101827 100%) !important;
  color:#f8fbff !important;
  border:1px solid rgba(148,163,184,.26) !important;
  box-shadow:0 30px 90px rgba(0,0,0,.56), 0 0 0 1px rgba(255,255,255,.04) inset !important;
}

body.app-shell .plan-review-dialog,
body.app-shell .plan-review-dialog *,
body.app-shell .quick-intake-dialog,
body.app-shell .quick-intake-dialog *,
body.app-shell .route-diagnose-modal,
body.app-shell .route-diagnose-modal *,
body.app-shell .series-pattern-picker,
body.app-shell .series-pattern-picker *,
body.app-shell .clock-picker,
body.app-shell .clock-picker *,
body.app-theme .clock-picker,
body.app-theme .clock-picker *,
body.subpage-shell .clock-picker,
body.subpage-shell .clock-picker *{
  color:#f8fbff;
}

body.app-shell .plan-review-head,
body.app-shell .route-diagnose-head{
  background:linear-gradient(135deg,rgba(96,165,250,.16),rgba(15,23,42,.18)) !important;
  border-bottom:1px solid rgba(148,163,184,.24) !important;
}
body.app-shell .plan-review-head h2,
body.app-shell .quick-intake-head h2,
body.app-shell .route-diagnose-head h3,
body.app-shell .series-pattern-picker__head h2,
body.app-shell .clock-picker__head h3{
  color:#ffffff !important;
}
body.app-shell .plan-review-head p,
body.app-shell .quick-intake-head p,
body.app-shell .route-diagnose-head p,
body.app-shell .series-pattern-picker__head p,
body.app-shell .plan-review-summary span,
body.app-shell .plan-review-suggestion-select small,
body.app-shell .quick-intake-dialog label span,
body.app-shell .quick-intake-dialog legend,
body.app-shell .quick-suggestion-card span,
body.app-shell .quick-suggestion-card small,
body.app-shell .route-diagnose-line span,
body.app-shell .route-diagnose-addresses span,
body.app-shell .route-diagnose-manual p,
body.app-shell .route-diagnose-manual-row label,
body.app-shell .series-pattern-picker__dates,
body.app-shell .series-pattern-card span{
  color:#b9c7d8 !important;
}

body.app-shell .plan-review-summary,
body.app-shell .plan-review-item,
body.app-shell .plan-review-note,
body.app-shell .quick-intake-suggestions,
body.app-shell .quick-suggestion-card,
body.app-shell .quick-copay-choice,
body.app-shell .route-diagnose-card,
body.app-shell .route-diagnose-section,
body.app-shell .route-diagnose-addresses>div,
body.app-shell .route-diagnose-loading,
body.app-shell .series-pattern-card{
  background:rgba(15,23,42,.72) !important;
  color:#f8fbff !important;
  border:1px solid rgba(148,163,184,.22) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.22) !important;
}
body.app-shell .plan-review-section h3,
body.app-shell .plan-review-summary strong,
body.app-shell .plan-review-item strong,
body.app-shell .quick-suggestion-card strong,
body.app-shell .route-diagnose-card h4,
body.app-shell .route-diagnose-section h4,
body.app-shell .route-diagnose-line strong,
body.app-shell .route-diagnose-addresses strong,
body.app-shell .route-diagnose-manual h4,
body.app-shell .series-pattern-card strong{
  color:#ffffff !important;
}
body.app-shell .route-diagnose-section ul,
body.app-shell .route-diagnose-section li{
  color:#e7eef8 !important;
}

body.app-shell .plan-review-ai-error,
body.app-shell .route-diagnose-error,
body.app-shell .quick-intake-state.error{
  background:rgba(127,29,29,.26) !important;
  border:1px solid rgba(248,113,113,.46) !important;
  color:#fecaca !important;
}
body.app-shell .plan-review-ai-error *,
body.app-shell .route-diagnose-error *{
  color:#fee2e2 !important;
}
body.app-shell .route-diagnose-result{
  background:rgba(6,78,59,.30) !important;
  border:1px solid rgba(52,211,153,.42) !important;
  color:#bbf7d0 !important;
}
body.app-shell .route-diagnose-result *{
  color:#dcfce7 !important;
}
body.app-shell .route-diagnose-card.is-ok{border-color:rgba(52,211,153,.48) !important;}
body.app-shell .route-diagnose-card.is-bad{background:rgba(127,29,29,.22) !important;border-color:rgba(248,113,113,.46) !important;}

body.app-shell .quick-intake-dialog input:not([type="checkbox"]):not([type="radio"]),
body.app-shell .quick-intake-dialog textarea,
body.app-shell .quick-intake-dialog select,
body.app-shell .route-diagnose-manual-row input,
body.app-shell .series-pattern-picker__dates input{
  background:rgba(2,6,23,.72) !important;
  color:#f8fbff !important;
  border:1px solid rgba(148,163,184,.32) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}
body.app-shell .quick-intake-dialog input::placeholder,
body.app-shell .quick-intake-dialog textarea::placeholder,
body.app-shell .series-pattern-picker__dates input::placeholder{
  color:#94a3b8 !important;
  opacity:1;
}
body.app-shell .quick-intake-dialog input:focus,
body.app-shell .quick-intake-dialog textarea:focus,
body.app-shell .quick-intake-dialog select:focus,
body.app-shell .route-diagnose-manual-row input:focus,
body.app-shell .series-pattern-picker__dates input:focus{
  border-color:rgba(125,211,252,.72) !important;
  box-shadow:0 0 0 3px rgba(14,165,233,.18), inset 0 1px 0 rgba(255,255,255,.05) !important;
  outline:none !important;
}

body.app-shell .plan-review-rides button{
  background:rgba(37,99,235,.22) !important;
  border-color:rgba(96,165,250,.34) !important;
  color:#dbeafe !important;
}
body.app-shell .plan-review-rides button *,
body.app-shell .plan-review-rides button strong{
  color:#eaf2ff !important;
}
body.app-shell .plan-review-rides button:hover,
body.app-shell .series-pattern-card:hover,
body.app-shell .series-pattern-card:focus-visible,
body.app-shell .quick-suggestion-card:hover,
body.app-shell .quick-suggestion-card:focus-visible{
  background:rgba(30,64,175,.30) !important;
  border-color:rgba(125,211,252,.48) !important;
}

body.app-shell .quick-intake-close,
body.app-shell .route-diagnose-close,
body.app-shell .series-pattern-picker__close{
  background:rgba(255,255,255,.08) !important;
  color:#f8fbff !important;
  border:1px solid rgba(148,163,184,.26) !important;
  box-shadow:none !important;
}
body.app-shell .quick-intake-close:hover,
body.app-shell .route-diagnose-close:hover,
body.app-shell .series-pattern-picker__close:hover{
  background:rgba(255,255,255,.14) !important;
}
body.app-shell .series-pattern-delete{
  background:rgba(127,29,29,.28) !important;
  color:#fecaca !important;
  border-color:rgba(248,113,113,.45) !important;
}
body.app-shell .series-pattern-delete:hover,
body.app-shell .series-pattern-delete:focus-visible{
  background:rgba(153,27,27,.42) !important;
}

body.app-shell .route-diagnose-actions,
body.app-shell .plan-review-actions{
  border-top:1px solid rgba(148,163,184,.22) !important;
  background:rgba(2,6,23,.26) !important;
}

body.app-shell .clock-picker__digital,
body.app-theme .clock-picker__digital,
body.subpage-shell .clock-picker__digital{
  color:#ffffff !important;
}
body.app-shell .clock-picker__digital-part,
body.app-theme .clock-picker__digital-part,
body.subpage-shell .clock-picker__digital-part{
  color:#ffffff !important;
}
body.app-shell .clock-picker__digital-part.is-active,
body.app-theme .clock-picker__digital-part.is-active,
body.subpage-shell .clock-picker__digital-part.is-active{
  background:rgba(125,211,252,.16) !important;
}
body.app-shell .clock-picker__face,
body.app-theme .clock-picker__face,
body.subpage-shell .clock-picker__face{
  background:radial-gradient(circle at center, rgba(125,211,252,.15) 0, rgba(125,211,252,.09) 34px, rgba(15,23,42,.82) 35px, rgba(15,23,42,.92) 100%) !important;
  border-color:rgba(148,163,184,.24) !important;
}
body.app-shell .clock-picker__center,
body.app-shell .clock-picker__hand,
body.app-theme .clock-picker__center,
body.app-theme .clock-picker__hand,
body.subpage-shell .clock-picker__center,
body.subpage-shell .clock-picker__hand{
  background:#7dd3fc !important;
}
body.app-shell .clock-picker__tick,
body.app-theme .clock-picker__tick,
body.subpage-shell .clock-picker__tick{
  color:#e7eef8 !important;
}
body.app-shell .clock-picker__tick--inner,
body.app-theme .clock-picker__tick--inner,
body.subpage-shell .clock-picker__tick--inner{
  color:#b9c7d8 !important;
}
body.app-shell .clock-picker__tick.is-selected,
body.app-theme .clock-picker__tick.is-selected,
body.subpage-shell .clock-picker__tick.is-selected{
  background:#38bdf8 !important;
  color:#082f49 !important;
  box-shadow:0 12px 24px rgba(56,189,248,.26) !important;
}
body.app-shell .clock-picker__tick.is-selected *,
body.app-theme .clock-picker__tick.is-selected *,
body.subpage-shell .clock-picker__tick.is-selected *{
  color:#082f49 !important;
}

body.app-shell .time-wheel-dialog,
body.app-shell .time-wheel-status,
body.app-shell .time-wheel-board,
body.app-shell .time-wheel-mode{
  color:#f8fbff;
}

/* 896: Plan speichern / Plan anwenden final an Dashboard-Dialogoptik angepasst. */
body.app-shell .series-pattern-picker-overlay,
body.app-shell .series-pattern-save-overlay{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:24px !important;
  background:rgba(2,6,23,.82) !important;
  backdrop-filter:blur(10px) saturate(118%) !important;
}
body.app-shell .series-pattern-picker,
body.app-shell .series-pattern-save-dialog{
  width:min(640px, calc(100vw - 32px)) !important;
  max-height:calc(100vh - 48px) !important;
  overflow:auto !important;
  background:linear-gradient(180deg,#182235 0%,#101827 100%) !important;
  color:#f8fbff !important;
  border:1px solid rgba(148,163,184,.32) !important;
  border-radius:24px !important;
  box-shadow:0 34px 100px rgba(0,0,0,.62), 0 0 0 1px rgba(255,255,255,.045) inset !important;
}
body.app-shell .series-pattern-picker__head{
  align-items:flex-start !important;
  gap:18px !important;
  padding:0 0 16px !important;
  margin:0 0 18px !important;
  border-bottom:1px solid rgba(148,163,184,.24) !important;
}
body.app-shell .series-pattern-picker__head h2{
  color:#ffffff !important;
  font-weight:900 !important;
  letter-spacing:-.025em !important;
}
body.app-shell .series-pattern-picker__head p{
  color:#b9c7d8 !important;
  max-width:52ch !important;
}
body.app-shell .series-pattern-picker__dates{
  color:#dbe7f5 !important;
}
body.app-shell .series-pattern-picker__dates > span,
body.app-shell .series-pattern-save-dialog__field > span{
  color:#eef6ff !important;
  font-weight:850 !important;
}
body.app-shell .series-pattern-picker__dates input,
body.app-shell .series-pattern-save-dialog__field input{
  width:100% !important;
  min-height:44px !important;
  border-radius:14px !important;
  background:rgba(2,6,23,.72) !important;
  color:#ffffff !important;
  border:1px solid rgba(148,163,184,.36) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05) !important;
}
body.app-shell .series-pattern-picker__dates input::placeholder,
body.app-shell .series-pattern-save-dialog__field input::placeholder{
  color:#94a3b8 !important;
  opacity:1 !important;
}
body.app-shell .series-pattern-picker__dates input:focus,
body.app-shell .series-pattern-save-dialog__field input:focus{
  border-color:rgba(125,211,252,.76) !important;
  box-shadow:0 0 0 3px rgba(14,165,233,.20), inset 0 1px 0 rgba(255,255,255,.06) !important;
  outline:none !important;
}
body.app-shell .series-pattern-picker__list{
  gap:10px !important;
}
body.app-shell .series-pattern-row{
  grid-template-columns:minmax(0,1fr) 42px !important;
  gap:10px !important;
}
body.app-shell .series-pattern-card{
  background:rgba(15,23,42,.78) !important;
  color:#f8fbff !important;
  border:1px solid rgba(148,163,184,.24) !important;
  border-radius:16px !important;
  box-shadow:0 14px 34px rgba(0,0,0,.24) !important;
}
body.app-shell .series-pattern-card strong{
  color:#ffffff !important;
}
body.app-shell .series-pattern-card span{
  color:#b9c7d8 !important;
}
body.app-shell .series-pattern-card:hover,
body.app-shell .series-pattern-card:focus-visible{
  background:rgba(30,64,175,.30) !important;
  border-color:rgba(125,211,252,.52) !important;
  outline:none !important;
}
body.app-shell .series-pattern-delete,
body.app-shell .series-pattern-delete *{
  color:#fecaca !important;
}
body.app-shell .series-pattern-delete{
  background:rgba(127,29,29,.30) !important;
  border:1px solid rgba(248,113,113,.48) !important;
  border-radius:16px !important;
}
body.app-shell .series-pattern-delete:hover,
body.app-shell .series-pattern-delete:focus-visible{
  background:rgba(153,27,27,.44) !important;
  outline:none !important;
}
body.app-shell .series-pattern-picker__close{
  flex:0 0 auto !important;
  background:rgba(255,255,255,.08) !important;
  color:#f8fbff !important;
  border:1px solid rgba(148,163,184,.28) !important;
  box-shadow:none !important;
}
body.app-shell .series-pattern-picker__close:hover,
body.app-shell .series-pattern-picker__close:focus-visible{
  background:rgba(255,255,255,.14) !important;
  outline:none !important;
}
body.app-shell .series-pattern-save-dialog__hint{
  margin:12px 0 0 !important;
  padding:12px 14px !important;
  border-radius:14px !important;
  background:rgba(14,165,233,.12) !important;
  border:1px solid rgba(125,211,252,.22) !important;
  color:#dbeafe !important;
  line-height:1.42 !important;
}
body.app-shell .series-pattern-dialog-actions{
  display:flex !important;
  justify-content:flex-end !important;
  gap:10px !important;
  margin-top:18px !important;
  padding-top:16px !important;
  border-top:1px solid rgba(148,163,184,.24) !important;
}
body.app-shell .series-pattern-dialog-actions button{
  min-height:40px !important;
  border-radius:13px !important;
  font-weight:850 !important;
}
body.app-shell .series-pattern-dialog-actions .secondary{
  background:rgba(255,255,255,.08) !important;
  color:#e7eef8 !important;
  border:1px solid rgba(148,163,184,.28) !important;
}
body.app-shell .series-pattern-dialog-actions .primary{
  background:linear-gradient(135deg,#2563eb,#1d4ed8) !important;
  color:#ffffff !important;
  border:1px solid rgba(147,197,253,.38) !important;
  box-shadow:0 12px 28px rgba(37,99,235,.28) !important;
}
@media (max-width:760px){
  body.app-shell .series-pattern-picker-overlay,
  body.app-shell .series-pattern-save-overlay{
    padding:14px !important;
  }
  body.app-shell .series-pattern-picker,
  body.app-shell .series-pattern-save-dialog{
    width:calc(100vw - 28px) !important;
    border-radius:20px !important;
  }
  body.app-shell .series-pattern-dialog-actions{
    flex-direction:column-reverse !important;
  }
  body.app-shell .series-pattern-dialog-actions button{
    width:100% !important;
  }
}

/* 897 – Verwaltungsseiten: Tabellen, Listen und Formulare veredeln; Dashboard bleibt ausgenommen */
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .overview-main,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .split-layout,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .cards-stack,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .worktime-layout{
  max-width:1440px;
  margin:0 auto;
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .card,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .panel-card,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .admin-setting-card,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .worktime-panel,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .worktime-sidebar{
  border-color:rgba(148,163,184,.18);
  background:linear-gradient(180deg, rgba(18,31,49,.96), rgba(13,24,38,.97));
  box-shadow:0 18px 44px rgba(0,0,0,.24);
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .section-head,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .driver-admin-list__head,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .shift-plan-toolbar,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .worktime-sidebar .section-head{
  align-items:center;
  padding-bottom:12px;
  margin-bottom:16px;
  border-bottom:1px solid rgba(148,163,184,.14);
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .section-head h2,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .admin-setting-card h3,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .panel-card h2,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .worktime-panel h2{
  letter-spacing:.01em;
  color:#f8fbff;
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .simple-list,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .enterprise-list,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .stack-list,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .preset-list,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .driver-admin-list__items,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .worktime-driver-compact-list{
  gap:10px;
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .list-item,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .match-item,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .preset-item,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .driver-admin-account,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .worktime-driver-chip,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .stack-list > article,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .stack-list > div{
  border-radius:16px;
  border:1px solid rgba(148,163,184,.18);
  background:rgba(255,255,255,.045);
  color:#edf5ff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .list-item:hover,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .match-item:hover,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .preset-item:hover,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .driver-admin-account:hover,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .worktime-driver-chip:hover{
  border-color:rgba(125,211,252,.34);
  background:rgba(125,211,252,.07);
  transform:translateY(-1px);
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) label{
  color:#cbd7e6;
  font-weight:750;
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) input,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) select,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) textarea{
  background:rgba(255,255,255,.055);
  border-color:rgba(148,163,184,.22);
  color:#f3f8ff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) input:hover,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) select:hover,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) textarea:hover{
  border-color:rgba(148,163,184,.36);
  background:rgba(255,255,255,.075);
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) input:focus,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) select:focus,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) textarea:focus{
  outline:none;
  border-color:rgba(125,211,252,.72);
  box-shadow:0 0 0 3px rgba(56,189,248,.16), inset 0 1px 0 rgba(255,255,255,.05);
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) input::placeholder,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) textarea::placeholder{
  color:#8ba0b7;
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .primary,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .primary-button{
  border:1px solid rgba(147,197,253,.36);
  background:linear-gradient(135deg,#2563eb,#0ea5e9);
  color:#ffffff;
  font-weight:850;
  box-shadow:0 14px 30px rgba(14,165,233,.20);
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .ghost,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .ghost-button,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .secondary-button,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .small-link{
  border:1px solid rgba(148,163,184,.22);
  background:rgba(255,255,255,.055);
  color:#eaf2fb;
  font-weight:750;
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .ghost:hover,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .ghost-button:hover,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .secondary-button:hover,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .small-link:hover{
  background:rgba(125,211,252,.09);
  border-color:rgba(125,211,252,.34);
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .table-wrap,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .shift-overview-table-wrap{
  overflow:auto;
  border:1px solid rgba(148,163,184,.18);
  border-radius:18px;
  background:rgba(255,255,255,.035);
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  color:#edf5ff;
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) th{
  position:sticky;
  top:0;
  z-index:1;
  background:rgba(15,23,42,.96);
  color:#cbd7e6;
  text-align:left;
  font-size:.78rem;
  letter-spacing:.05em;
  text-transform:uppercase;
  border-bottom:1px solid rgba(148,163,184,.22);
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) td,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) th{
  padding:11px 12px;
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) td{
  border-bottom:1px solid rgba(148,163,184,.10);
  color:#eef6ff;
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) tr:hover td{
  background:rgba(125,211,252,.055);
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .feedback,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .small-feedback{
  border-radius:14px;
  line-height:1.4;
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .feedback.success,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .small-feedback.success{
  background:rgba(22,163,74,.14);
  border:1px solid rgba(74,222,128,.28);
  color:#bbf7d0;
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .feedback.error,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .small-feedback.error{
  background:rgba(220,38,38,.14);
  border:1px solid rgba(248,113,113,.30);
  color:#fecaca;
}
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .muted-pill,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .module-badge,
body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .subtle-tag{
  background:rgba(125,211,252,.10);
  border:1px solid rgba(125,211,252,.20);
  color:#bae6fd;
}
@media (max-width:760px){
  body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .section-head,
  body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .driver-admin-list__head,
  body.app-shell.app-theme:not(.dashboard-shell):not(.wizard-shell) .shift-plan-toolbar{
    align-items:flex-start;
  }
}

/* 898 – Formularfelder systemweit dunkler und ruhiger; keine Logikänderung */
:root{
  --form-surface-dark:#0f1b2b;
  --form-surface-dark-hover:#132237;
  --form-surface-dark-focus:#172942;
  --form-border-dark:rgba(148,163,184,.30);
  --form-border-dark-hover:rgba(148,163,184,.44);
  --form-border-dark-focus:rgba(125,211,252,.72);
  --form-text-dark:#eef6ff;
  --form-placeholder-dark:#8fa4ba;
}
body.app-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
body.app-shell select,
body.app-shell textarea,
body.subpage-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
body.subpage-shell select,
body.subpage-shell textarea,
body.app-theme input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
body.app-theme select,
body.app-theme textarea,
body.login-body input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
body.login-body select,
body.login-body textarea,
body.app-shell .quick-intake-dialog input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
body.app-shell .quick-intake-dialog select,
body.app-shell .quick-intake-dialog textarea,
body.app-shell .series-pattern-picker__dates input,
body.app-shell .route-diagnose-manual-row input,
body.app-shell .plan-save-dialog input,
body.app-shell .planning-preset-card textarea,
body.app-shell .dashboard-presetbar select{
  background:linear-gradient(180deg,var(--form-surface-dark),#0c1725) !important;
  color:var(--form-text-dark) !important;
  border-color:var(--form-border-dark) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045) !important;
  color-scheme:dark;
}
body.app-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):hover,
body.app-shell select:hover,
body.app-shell textarea:hover,
body.subpage-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):hover,
body.subpage-shell select:hover,
body.subpage-shell textarea:hover,
body.app-theme input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):hover,
body.app-theme select:hover,
body.app-theme textarea:hover,
body.login-body input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):hover,
body.login-body select:hover,
body.login-body textarea:hover,
body.app-shell .quick-intake-dialog input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):hover,
body.app-shell .quick-intake-dialog select:hover,
body.app-shell .quick-intake-dialog textarea:hover,
body.app-shell .series-pattern-picker__dates input:hover,
body.app-shell .route-diagnose-manual-row input:hover,
body.app-shell .plan-save-dialog input:hover,
body.app-shell .planning-preset-card textarea:hover,
body.app-shell .dashboard-presetbar select:hover{
  background:linear-gradient(180deg,var(--form-surface-dark-hover),#0f1d2f) !important;
  border-color:var(--form-border-dark-hover) !important;
}
body.app-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):focus,
body.app-shell select:focus,
body.app-shell textarea:focus,
body.subpage-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):focus,
body.subpage-shell select:focus,
body.subpage-shell textarea:focus,
body.app-theme input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):focus,
body.app-theme select:focus,
body.app-theme textarea:focus,
body.login-body input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):focus,
body.login-body select:focus,
body.login-body textarea:focus,
body.app-shell .quick-intake-dialog input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):focus,
body.app-shell .quick-intake-dialog select:focus,
body.app-shell .quick-intake-dialog textarea:focus,
body.app-shell .series-pattern-picker__dates input:focus,
body.app-shell .route-diagnose-manual-row input:focus,
body.app-shell .plan-save-dialog input:focus,
body.app-shell .planning-preset-card textarea:focus,
body.app-shell .dashboard-presetbar select:focus{
  outline:none !important;
  background:linear-gradient(180deg,var(--form-surface-dark-focus),#102033) !important;
  border-color:var(--form-border-dark-focus) !important;
  box-shadow:0 0 0 3px rgba(56,189,248,.16), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
body.app-shell input::placeholder,
body.app-shell textarea::placeholder,
body.subpage-shell input::placeholder,
body.subpage-shell textarea::placeholder,
body.app-theme input::placeholder,
body.app-theme textarea::placeholder,
body.login-body input::placeholder,
body.login-body textarea::placeholder,
body.app-shell .quick-intake-dialog input::placeholder,
body.app-shell .quick-intake-dialog textarea::placeholder{
  color:var(--form-placeholder-dark) !important;
  opacity:1 !important;
}
body.app-shell input:disabled,
body.app-shell select:disabled,
body.app-shell textarea:disabled,
body.subpage-shell input:disabled,
body.subpage-shell select:disabled,
body.subpage-shell textarea:disabled,
body.app-theme input:disabled,
body.app-theme select:disabled,
body.app-theme textarea:disabled{
  background:rgba(15,27,43,.58) !important;
  color:rgba(238,246,255,.52) !important;
  border-color:rgba(148,163,184,.18) !important;
  cursor:not-allowed;
}
body.app-shell input[type="file"]::file-selector-button,
body.subpage-shell input[type="file"]::file-selector-button,
body.app-theme input[type="file"]::file-selector-button{
  background:rgba(125,211,252,.12) !important;
  color:#dff4ff !important;
  border:1px solid rgba(125,211,252,.28) !important;
}
body.app-shell select option,
body.app-shell select optgroup,
body.subpage-shell select option,
body.subpage-shell select optgroup,
body.app-theme select option,
body.app-theme select optgroup,
body.login-body select option,
body.login-body select optgroup{
  background:#0f1b2b !important;
  color:#eef6ff !important;
}
body.app-shell input[type="date"]::-webkit-calendar-picker-indicator,
body.app-shell input[type="time"]::-webkit-calendar-picker-indicator,
body.subpage-shell input[type="date"]::-webkit-calendar-picker-indicator,
body.subpage-shell input[type="time"]::-webkit-calendar-picker-indicator,
body.app-theme input[type="date"]::-webkit-calendar-picker-indicator,
body.app-theme input[type="time"]::-webkit-calendar-picker-indicator,
body.login-body input[type="date"]::-webkit-calendar-picker-indicator,
body.login-body input[type="time"]::-webkit-calendar-picker-indicator{
  filter:invert(1) brightness(1.35) !important;
  opacity:.82 !important;
}
body.app-shell label,
body.subpage-shell label,
body.app-theme label,
body.login-body label{
  color:#cdd9e8;
}
body.app-shell .inline-label,
body.subpage-shell .inline-label,
body.app-theme .inline-label,
body.login-body .inline-label{
  color:#dce8f5;
}

/* 899 – Formularoptik nach dunklem Premium-Formstil; reine CSS-Anpassung, keine Logikänderung */
:root{
  --tkba-form-bg:#151f2e;
  --tkba-form-bg-2:#101827;
  --tkba-form-bg-hover:#192538;
  --tkba-form-bg-focus:#1b2a40;
  --tkba-form-border:rgba(148,163,184,.22);
  --tkba-form-border-hover:rgba(148,163,184,.36);
  --tkba-form-border-focus:rgba(96,165,250,.78);
  --tkba-form-text:#f4f8ff;
  --tkba-form-muted:#9fb0c4;
  --tkba-form-label:#d9e4f2;
  --tkba-form-radius:16px;
  --tkba-form-shadow:inset 0 1px 0 rgba(255,255,255,.055), 0 10px 26px rgba(0,0,0,.08);
}
body.app-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
body.app-shell select,
body.app-shell textarea,
body.subpage-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
body.subpage-shell select,
body.subpage-shell textarea,
body.app-theme input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
body.app-theme select,
body.app-theme textarea,
body.login-body input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
body.login-body select,
body.login-body textarea{
  min-height:44px;
  border-radius:var(--tkba-form-radius) !important;
  border:1px solid var(--tkba-form-border) !important;
  background:linear-gradient(180deg,var(--tkba-form-bg),var(--tkba-form-bg-2)) !important;
  color:var(--tkba-form-text) !important;
  box-shadow:var(--tkba-form-shadow) !important;
  font-weight:650;
  letter-spacing:.005em;
  transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease;
  color-scheme:dark;
}
body.app-shell textarea,
body.subpage-shell textarea,
body.app-theme textarea,
body.login-body textarea{
  min-height:92px;
  line-height:1.45;
  resize:vertical;
}
body.app-shell select,
body.subpage-shell select,
body.app-theme select,
body.login-body select{
  cursor:pointer;
}
body.app-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):hover,
body.app-shell select:hover,
body.app-shell textarea:hover,
body.subpage-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):hover,
body.subpage-shell select:hover,
body.subpage-shell textarea:hover,
body.app-theme input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):hover,
body.app-theme select:hover,
body.app-theme textarea:hover,
body.login-body input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):hover,
body.login-body select:hover,
body.login-body textarea:hover{
  background:linear-gradient(180deg,var(--tkba-form-bg-hover),#121d2d) !important;
  border-color:var(--tkba-form-border-hover) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.065), 0 12px 30px rgba(0,0,0,.12) !important;
}
body.app-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):focus,
body.app-shell select:focus,
body.app-shell textarea:focus,
body.subpage-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):focus,
body.subpage-shell select:focus,
body.subpage-shell textarea:focus,
body.app-theme input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):focus,
body.app-theme select:focus,
body.app-theme textarea:focus,
body.login-body input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):focus,
body.login-body select:focus,
body.login-body textarea:focus{
  outline:none !important;
  background:linear-gradient(180deg,var(--tkba-form-bg-focus),#142137) !important;
  border-color:var(--tkba-form-border-focus) !important;
  box-shadow:0 0 0 4px rgba(59,130,246,.18), 0 18px 38px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.075) !important;
}
body.app-shell input::placeholder,
body.app-shell textarea::placeholder,
body.subpage-shell input::placeholder,
body.subpage-shell textarea::placeholder,
body.app-theme input::placeholder,
body.app-theme textarea::placeholder,
body.login-body input::placeholder,
body.login-body textarea::placeholder{
  color:var(--tkba-form-muted) !important;
  opacity:.88 !important;
  font-weight:560;
}
body.app-shell label,
body.subpage-shell label,
body.app-theme label,
body.login-body label,
body.app-shell .field-label,
body.subpage-shell .field-label,
body.app-theme .field-label,
body.login-body .field-label,
body.app-shell .inline-label,
body.subpage-shell .inline-label,
body.app-theme .inline-label,
body.login-body .inline-label{
  color:var(--tkba-form-label) !important;
  font-weight:750;
  letter-spacing:.01em;
}
body.app-shell input:disabled,
body.app-shell select:disabled,
body.app-shell textarea:disabled,
body.subpage-shell input:disabled,
body.subpage-shell select:disabled,
body.subpage-shell textarea:disabled,
body.app-theme input:disabled,
body.app-theme select:disabled,
body.app-theme textarea:disabled{
  background:linear-gradient(180deg,rgba(21,31,46,.58),rgba(16,24,39,.58)) !important;
  color:rgba(244,248,255,.48) !important;
  border-color:rgba(148,163,184,.14) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
  opacity:1;
  cursor:not-allowed;
}
body.app-shell select option,
body.app-shell select optgroup,
body.subpage-shell select option,
body.subpage-shell select optgroup,
body.app-theme select option,
body.app-theme select optgroup,
body.login-body select option,
body.login-body select optgroup{
  background:#151f2e !important;
  color:#f4f8ff !important;
}
body.app-shell input[type="date"]::-webkit-calendar-picker-indicator,
body.app-shell input[type="time"]::-webkit-calendar-picker-indicator,
body.subpage-shell input[type="date"]::-webkit-calendar-picker-indicator,
body.subpage-shell input[type="time"]::-webkit-calendar-picker-indicator,
body.app-theme input[type="date"]::-webkit-calendar-picker-indicator,
body.app-theme input[type="time"]::-webkit-calendar-picker-indicator,
body.login-body input[type="date"]::-webkit-calendar-picker-indicator,
body.login-body input[type="time"]::-webkit-calendar-picker-indicator{
  filter:invert(1) brightness(1.55) saturate(.95) !important;
  opacity:.74 !important;
}
body.app-shell input[type="file"]::file-selector-button,
body.subpage-shell input[type="file"]::file-selector-button,
body.app-theme input[type="file"]::file-selector-button{
  border-radius:12px;
  background:rgba(96,165,250,.14) !important;
  border:1px solid rgba(96,165,250,.32) !important;
  color:#dcecff !important;
  font-weight:800;
  padding:8px 12px;
  margin-right:10px;
}
/* Formulargruppen erhalten eine ruhige Premium-Anmutung ohne HTML-/JS-Änderung */
body.app-shell .form-grid,
body.subpage-shell .form-grid,
body.app-theme .form-grid,
body.login-body .form-grid,
body.app-shell .quick-intake-form,
body.app-shell .plan-save-form,
body.app-shell .route-diagnose-manual-row,
body.app-shell .series-pattern-picker__dates{
  gap:14px;
}
/* Kleine Dashboard-Steuerfelder bleiben kompakt, übernehmen aber den neuen dunklen Stil */
body.dashboard-shell .dashboard-presetbar select,
body.dashboard-shell .dashboard-date-input,
body.dashboard-shell .open-orders-search input,
body.dashboard-shell .plan-save-dialog input,
body.dashboard-shell .quick-intake-dialog input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
body.dashboard-shell .quick-intake-dialog select,
body.dashboard-shell .quick-intake-dialog textarea,
body.dashboard-shell .route-diagnose-manual-row input,
body.dashboard-shell .planning-preset-card textarea{
  border-radius:14px !important;
  background:linear-gradient(180deg,#172235,#111b2c) !important;
  border-color:rgba(148,163,184,.24) !important;
  color:#f4f8ff !important;
}
/* Lesbarkeit in helleren Spezialcontainern erzwingen, ohne Logik oder Layout zu verändern */
body.app-shell .field-error,
body.subpage-shell .field-error,
body.app-theme .field-error{
  color:#fecaca !important;
}
body.app-shell .field-hint,
body.subpage-shell .field-hint,
body.app-theme .field-hint,
body.app-shell .form-hint,
body.subpage-shell .form-hint,
body.app-theme .form-hint{
  color:#aebed0 !important;
}

/* 900 – Lesbarkeit Such-/Autocomplete-Ergebnisse in dunklen Formularen
   Nur Darstellung: keine Logik-, Layout- oder Eventänderung. */
body.app-shell .match-list,
body.app-theme .match-list,
body.subpage-shell .match-list,
body.app-shell .overlay-match-list,
body.app-theme .overlay-match-list,
body.subpage-shell .overlay-match-list,
body.app-shell .order-search-results,
body.app-theme .order-search-results,
body.subpage-shell .order-search-results,
body.app-shell .quick-intake-suggestions,
body.app-theme .quick-intake-suggestions,
body.subpage-shell .quick-intake-suggestions{
  color:#eef6ff !important;
}

body.app-shell .search-overlay-field .overlay-match-list,
body.app-theme .search-overlay-field .overlay-match-list,
body.subpage-shell .search-overlay-field .overlay-match-list,
body.app-shell .overlay-match-list,
body.app-theme .overlay-match-list,
body.subpage-shell .overlay-match-list{
  background:linear-gradient(180deg,rgba(17,27,43,.99),rgba(10,18,30,.99)) !important;
  border:1px solid rgba(148,163,184,.30) !important;
  box-shadow:0 24px 56px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.045) !important;
}

body.app-shell .match-item,
body.app-theme .match-item,
body.subpage-shell .match-item,
body.app-shell .search-overlay-field .overlay-match-list .match-item,
body.app-theme .search-overlay-field .overlay-match-list .match-item,
body.subpage-shell .search-overlay-field .overlay-match-list .match-item,
body.app-shell .order-search-result,
body.app-theme .order-search-result,
body.subpage-shell .order-search-result,
body.app-shell .quick-suggestion-card,
body.app-theme .quick-suggestion-card,
body.subpage-shell .quick-suggestion-card{
  background:linear-gradient(180deg,rgba(24,36,55,.96),rgba(15,25,40,.98)) !important;
  border:1px solid rgba(148,163,184,.24) !important;
  color:#eef6ff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045), 0 10px 24px rgba(0,0,0,.16) !important;
}

body.app-shell .match-item *,
body.app-theme .match-item *,
body.subpage-shell .match-item *,
body.app-shell .search-overlay-field .overlay-match-list .match-item *,
body.app-theme .search-overlay-field .overlay-match-list .match-item *,
body.subpage-shell .search-overlay-field .overlay-match-list .match-item *,
body.app-shell .order-search-result *,
body.app-theme .order-search-result *,
body.subpage-shell .order-search-result *,
body.app-shell .quick-suggestion-card *,
body.app-theme .quick-suggestion-card *,
body.subpage-shell .quick-suggestion-card *{
  color:inherit !important;
}

body.app-shell .match-item strong,
body.app-theme .match-item strong,
body.subpage-shell .match-item strong,
body.app-shell .order-search-result strong,
body.app-theme .order-search-result strong,
body.subpage-shell .order-search-result strong,
body.app-shell .quick-suggestion-card strong,
body.app-theme .quick-suggestion-card strong,
body.subpage-shell .quick-suggestion-card strong{
  color:#ffffff !important;
  font-weight:850 !important;
}

body.app-shell .match-item .order-meta,
body.app-theme .match-item .order-meta,
body.subpage-shell .match-item .order-meta,
body.app-shell .match-item span,
body.app-theme .match-item span,
body.subpage-shell .match-item span,
body.app-shell .match-item small,
body.app-theme .match-item small,
body.subpage-shell .match-item small,
body.app-shell .order-search-result span,
body.app-theme .order-search-result span,
body.subpage-shell .order-search-result span,
body.app-shell .order-search-result small,
body.app-theme .order-search-result small,
body.subpage-shell .order-search-result small,
body.app-shell .quick-suggestion-card span,
body.app-theme .quick-suggestion-card span,
body.subpage-shell .quick-suggestion-card span,
body.app-shell .quick-suggestion-card small,
body.app-theme .quick-suggestion-card small,
body.subpage-shell .quick-suggestion-card small,
body.app-shell .quick-suggestion-card em,
body.app-theme .quick-suggestion-card em,
body.subpage-shell .quick-suggestion-card em{
  color:#b8c7da !important;
}

body.app-shell .match-item:hover,
body.app-theme .match-item:hover,
body.subpage-shell .match-item:hover,
body.app-shell .match-item:focus-visible,
body.app-theme .match-item:focus-visible,
body.subpage-shell .match-item:focus-visible,
body.app-shell .search-overlay-field .overlay-match-list .match-item:hover,
body.app-theme .search-overlay-field .overlay-match-list .match-item:hover,
body.subpage-shell .search-overlay-field .overlay-match-list .match-item:hover,
body.app-shell .order-search-result:hover,
body.app-theme .order-search-result:hover,
body.subpage-shell .order-search-result:hover,
body.app-shell .order-search-result:focus-visible,
body.app-theme .order-search-result:focus-visible,
body.subpage-shell .order-search-result:focus-visible,
body.app-shell .quick-suggestion-card:hover,
body.app-theme .quick-suggestion-card:hover,
body.subpage-shell .quick-suggestion-card:hover,
body.app-shell .quick-suggestion-card:focus-visible,
body.app-theme .quick-suggestion-card:focus-visible,
body.subpage-shell .quick-suggestion-card:focus-visible{
  background:linear-gradient(180deg,rgba(37,56,82,.98),rgba(24,39,61,.99)) !important;
  border-color:rgba(125,211,252,.48) !important;
  color:#ffffff !important;
  outline:none !important;
  box-shadow:0 0 0 3px rgba(14,165,233,.16), 0 14px 30px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.06) !important;
}

body.app-shell .quick-suggestion-group,
body.app-theme .quick-suggestion-group,
body.subpage-shell .quick-suggestion-group{
  background:rgba(9,16,28,.78) !important;
  border:1px solid rgba(148,163,184,.22) !important;
  color:#eef6ff !important;
}
body.app-shell .quick-suggestion-group h3,
body.app-theme .quick-suggestion-group h3,
body.subpage-shell .quick-suggestion-group h3{
  color:#f8fbff !important;
}

/* TKBA906: gezielte Layout-Demo/Produktseite für Arbeitszeit · Pausenregeln */
body.worktime-rules-page{
  --rule-bg:#07111f;
  --rule-panel:#0d1a2b;
  --rule-panel-soft:#101f33;
  --rule-border:rgba(148,163,184,.18);
  --rule-border-strong:rgba(125,211,252,.28);
  --rule-text:#eef6ff;
  --rule-muted:#9fb0c6;
  --rule-subtle:#718096;
  --rule-accent:#38bdf8;
  --rule-accent-2:#5eead4;
}
body.worktime-rules-page .worktime-rules-topbar{
  align-items:flex-start;
  gap:24px;
}
body.worktime-rules-page .worktime-rules-topbar h1{color:var(--rule-text)}
body.worktime-rules-page .worktime-rules-topbar p{max-width:760px;color:var(--rule-muted)}
body.worktime-rules-page .worktime-rule-shell{
  width:min(1480px,calc(100% - 44px));
  margin:22px auto 92px;
  display:grid;
  grid-template-columns:minmax(280px,340px) minmax(0,1fr);
  gap:22px;
  align-items:start;
}
body.worktime-rules-page .worktime-rule-sidebar{
  position:sticky;
  top:22px;
  display:grid;
  gap:16px;
}
body.worktime-rules-page .worktime-rule-main,
body.worktime-rules-page .worktime-rule-panel,
body.worktime-rules-page .worktime-rule-section,
body.worktime-rules-page .worktime-rule-stage-card{
  border:1px solid var(--rule-border);
  background:linear-gradient(180deg,rgba(16,31,51,.96),rgba(9,19,34,.98));
  box-shadow:0 18px 46px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.04);
}
body.worktime-rules-page .worktime-rule-main{
  border-radius:28px;
  overflow:hidden;
}
body.worktime-rules-page .worktime-rule-heading{
  padding:24px 28px 22px;
  border-bottom:1px solid var(--rule-border);
  background:linear-gradient(135deg,rgba(56,189,248,.10),rgba(94,234,212,.055) 45%,rgba(15,23,42,.20));
}
body.worktime-rules-page .worktime-rule-heading h2,
body.worktime-rules-page .worktime-rule-section h3,
body.worktime-rules-page .worktime-rule-stage-card h4,
body.worktime-rules-page .worktime-rule-panel h2{
  margin:0;
  color:var(--rule-text);
  letter-spacing:-.02em;
}
body.worktime-rules-page .worktime-rule-heading h2{font-size:1.42rem}
body.worktime-rules-page .worktime-rule-heading p,
body.worktime-rules-page .worktime-rule-section-head p,
body.worktime-rules-page .worktime-rule-stage-card p,
body.worktime-rules-page .worktime-rule-panel p{
  margin:7px 0 0;
  color:var(--rule-muted);
  line-height:1.55;
}
body.worktime-rules-page .worktime-rule-kicker{
  display:inline-flex;
  align-items:center;
  width:max-content;
  margin-bottom:8px;
  padding:5px 9px;
  border-radius:999px;
  background:rgba(56,189,248,.10);
  border:1px solid rgba(56,189,248,.20);
  color:#b7ecff;
  font-size:.72rem;
  font-weight:850;
  letter-spacing:.075em;
  text-transform:uppercase;
}
body.worktime-rules-page .worktime-rule-form{
  display:grid;
  gap:18px;
  padding:22px;
}
body.worktime-rules-page .worktime-rule-section,
body.worktime-rules-page .worktime-rule-stage-card,
body.worktime-rules-page .worktime-rule-panel{
  border-radius:22px;
  padding:20px;
}
body.worktime-rules-page .worktime-rule-section-head{
  display:grid;
  gap:4px;
  max-width:820px;
  margin-bottom:16px;
}
body.worktime-rules-page .worktime-rule-fields{
  display:grid;
  gap:14px;
  align-items:start;
}
body.worktime-rules-page .worktime-rule-fields--mode{
  grid-template-columns:minmax(260px,420px) minmax(280px,460px);
}
body.worktime-rules-page .worktime-rule-fields--two{
  grid-template-columns:repeat(2,minmax(160px,220px));
}
body.worktime-rules-page .worktime-rule-fields--three{
  grid-template-columns:repeat(3,minmax(170px,220px));
  margin-top:16px;
}
body.worktime-rules-page .worktime-rule-fields--narrow{
  max-width:560px;
}
body.worktime-rules-page .worktime-rule-stage-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
body.worktime-rules-page .worktime-rule-stage-card{
  background:linear-gradient(180deg,rgba(18,34,55,.94),rgba(12,24,40,.97));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
body.worktime-rules-page .rule-field{
  display:grid;
  gap:7px;
  max-width:420px;
}
body.worktime-rules-page .rule-field--wide{max-width:420px}
body.worktime-rules-page .rule-field > span{
  color:#dcecff;
  font-size:.84rem;
  font-weight:800;
}
body.worktime-rules-page .rule-field small{
  color:var(--rule-subtle);
  font-size:.76rem;
}
body.worktime-rules-page .rule-field input,
body.worktime-rules-page .rule-field select{
  width:100%;
  height:44px;
  border-radius:14px;
  border:1px solid rgba(148,163,184,.24);
  background:linear-gradient(180deg,rgba(6,15,28,.96),rgba(9,20,36,.98));
  color:var(--rule-text);
  padding:0 13px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04), 0 8px 20px rgba(0,0,0,.12);
}
body.worktime-rules-page .rule-field input:focus,
body.worktime-rules-page .rule-field select:focus{
  outline:none;
  border-color:var(--rule-border-strong);
  box-shadow:0 0 0 3px rgba(56,189,248,.13), inset 0 1px 0 rgba(255,255,255,.05);
}
body.worktime-rules-page .worktime-rule-toggle-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(180px,1fr));
  gap:12px;
}
body.worktime-rules-page .rule-toggle{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:12px;
  align-items:flex-start;
  min-height:76px;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(148,163,184,.18);
  background:rgba(6,15,28,.42);
  color:var(--rule-text);
}
body.worktime-rules-page .rule-toggle input{
  margin-top:3px;
  accent-color:var(--rule-accent);
}
body.worktime-rules-page .rule-toggle strong{
  display:block;
  color:var(--rule-text);
  font-weight:850;
}
body.worktime-rules-page .rule-toggle small{
  display:block;
  margin-top:3px;
  color:var(--rule-muted);
  line-height:1.4;
}
body.worktime-rules-page .worktime-rule-panel--summary{padding:22px}
body.worktime-rules-page .worktime-rule-metrics{
  display:grid;
  gap:10px;
  margin-top:16px;
}
body.worktime-rules-page .worktime-rule-metrics article{
  display:grid;
  gap:3px;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(148,163,184,.16);
  background:rgba(6,15,28,.46);
}
body.worktime-rules-page .worktime-rule-metrics span{
  color:var(--rule-muted);
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
body.worktime-rules-page .worktime-rule-metrics strong{
  color:#ffffff;
  font-size:1.5rem;
  line-height:1.05;
}
body.worktime-rules-page .worktime-rule-metrics small{color:var(--rule-subtle)}
body.worktime-rules-page .worktime-rule-preview{
  margin-top:14px;
  padding:13px 14px;
  border-radius:16px;
  border:1px solid rgba(94,234,212,.20);
  background:rgba(20,184,166,.08);
  color:#cffafe;
  font-weight:800;
  line-height:1.45;
}
body.worktime-rules-page .worktime-rule-section--recommendation{
  border-color:rgba(94,234,212,.22);
  background:linear-gradient(180deg,rgba(20,184,166,.10),rgba(9,19,34,.96));
}
body.worktime-rules-page .worktime-rule-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
  padding-top:2px;
}
body.worktime-rules-page #breakRulesState{
  margin:0 22px 22px;
}
@media (max-width: 1180px){
  body.worktime-rules-page .worktime-rule-shell{grid-template-columns:1fr}
  body.worktime-rules-page .worktime-rule-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 860px){
  body.worktime-rules-page .worktime-rule-shell{width:min(100% - 28px,1480px);margin-top:16px}
  body.worktime-rules-page .worktime-rule-sidebar,
  body.worktime-rules-page .worktime-rule-stage-grid,
  body.worktime-rules-page .worktime-rule-fields--mode,
  body.worktime-rules-page .worktime-rule-fields--two,
  body.worktime-rules-page .worktime-rule-fields--three,
  body.worktime-rules-page .worktime-rule-toggle-grid{grid-template-columns:1fr}
  body.worktime-rules-page .rule-field,
  body.worktime-rules-page .rule-field--wide{max-width:none}
  body.worktime-rules-page .worktime-rule-heading{padding:22px 20px}
  body.worktime-rules-page .worktime-rule-form{padding:16px}
  body.worktime-rules-page .worktime-rule-actions{justify-content:stretch}
  body.worktime-rules-page .worktime-rule-actions .primary-button,
  body.worktime-rules-page .worktime-rule-actions .ghost-button{width:100%}
}

/* === 907: Strukturierte Konfigurationsseite · Dispo-Regeln === */
body.dispo-rules-page{
  --rule-bg:#07111f;
  --rule-panel:#0f1b2d;
  --rule-panel-soft:#121f33;
  --rule-border:rgba(148,163,184,.18);
  --rule-border-strong:rgba(148,163,184,.28);
  --rule-text:#f8fafc;
  --rule-muted:#cbd5e1;
  --rule-subtle:#94a3b8;
  --rule-accent:#38bdf8;
  --rule-accent-soft:rgba(56,189,248,.13);
  background:
    radial-gradient(circle at top left,rgba(56,189,248,.16),transparent 32rem),
    linear-gradient(135deg,#07111f 0%,#0b1220 45%,#101827 100%);
  color:var(--rule-text);
}
body.dispo-rules-page .dispo-rules-topbar h1{color:var(--rule-text)}
body.dispo-rules-page .dispo-rules-topbar p{max-width:780px;color:var(--rule-muted)}
body.dispo-rules-page .dispo-rule-shell{
  width:min(100% - 44px,1480px);
  margin:24px auto 96px;
  display:grid;
  grid-template-columns:minmax(260px,340px) minmax(0,1fr);
  gap:22px;
  align-items:start;
}
body.dispo-rules-page .dispo-rule-sidebar{position:sticky;top:18px;display:grid;gap:16px}
body.dispo-rules-page .dispo-rule-main,
body.dispo-rules-page .dispo-rule-panel,
body.dispo-rules-page .dispo-rule-section{
  border:1px solid var(--rule-border);
  background:linear-gradient(180deg,rgba(15,27,45,.98),rgba(11,18,32,.96));
  box-shadow:0 24px 70px rgba(0,0,0,.26);
  border-radius:26px;
}
body.dispo-rules-page .dispo-rule-main{overflow:hidden}
body.dispo-rules-page .dispo-rule-heading{
  padding:26px 28px 22px;
  border-bottom:1px solid var(--rule-border);
  background:linear-gradient(135deg,rgba(56,189,248,.13),rgba(15,23,42,.18));
}
body.dispo-rules-page .dispo-rule-heading h2,
body.dispo-rules-page .dispo-rule-section h3,
body.dispo-rules-page .dispo-rule-panel h2{
  margin:5px 0 0;
  color:var(--rule-text);
  letter-spacing:-.02em;
}
body.dispo-rules-page .dispo-rule-heading h2{font-size:1.42rem}
body.dispo-rules-page .dispo-rule-heading p,
body.dispo-rules-page .dispo-rule-section-head p,
body.dispo-rules-page .dispo-rule-panel p{
  margin:7px 0 0;
  color:var(--rule-muted);
  line-height:1.55;
}
body.dispo-rules-page .dispo-rule-kicker{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:24px;
  padding:3px 9px;
  border-radius:999px;
  border:1px solid rgba(56,189,248,.28);
  background:rgba(56,189,248,.10);
  color:#bae6fd;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
body.dispo-rules-page .dispo-rule-form{display:grid;gap:16px;padding:18px}
body.dispo-rules-page .dispo-rule-section{
  padding:20px;
  background:linear-gradient(180deg,rgba(15,27,45,.92),rgba(15,23,42,.88));
  box-shadow:none;
}
body.dispo-rules-page .dispo-rule-section-head{max-width:760px;margin-bottom:16px}
body.dispo-rules-page .dispo-rule-fields{display:grid;gap:14px;align-items:start}
body.dispo-rules-page .dispo-rule-fields--base{grid-template-columns:minmax(220px,320px) minmax(340px,560px)}
body.dispo-rules-page .dispo-rule-fields--mixed{grid-template-columns:minmax(150px,190px) minmax(160px,210px) minmax(320px,1fr) minmax(150px,190px) minmax(180px,220px)}
body.dispo-rules-page .rule-field{display:grid;gap:7px;max-width:360px;color:var(--rule-text)}
body.dispo-rules-page .rule-field--wide{max-width:580px}
body.dispo-rules-page .rule-field--compact{max-width:220px}
body.dispo-rules-page .rule-field > span{color:var(--rule-muted);font-size:.82rem;font-weight:800;letter-spacing:.02em}
body.dispo-rules-page .rule-field small{color:var(--rule-subtle);font-size:.76rem}
body.dispo-rules-page .rule-field input,
body.dispo-rules-page .rule-field select,
body.dispo-rules-page .rule-toggle select{
  width:100%;
  min-height:44px;
  border-radius:14px;
  border:1px solid rgba(148,163,184,.26);
  background:linear-gradient(180deg,rgba(15,23,42,.98),rgba(2,6,23,.96));
  color:var(--rule-text);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 12px 28px rgba(0,0,0,.18);
}
body.dispo-rules-page .rule-field input:focus,
body.dispo-rules-page .rule-field select:focus,
body.dispo-rules-page .rule-toggle select:focus{
  border-color:rgba(56,189,248,.74);
  box-shadow:0 0 0 3px rgba(56,189,248,.16),inset 0 1px 0 rgba(255,255,255,.05);
  outline:none;
}
body.dispo-rules-page .dispo-rule-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,420px));gap:14px}
body.dispo-rules-page .rule-toggle{
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  gap:13px;
  align-items:center;
  padding:14px;
  border-radius:18px;
  border:1px solid var(--rule-border);
  background:rgba(15,23,42,.58);
  color:var(--rule-text);
}
body.dispo-rules-page .rule-toggle select{min-height:42px;padding:0 34px 0 12px}
body.dispo-rules-page .rule-toggle strong{display:block;color:var(--rule-text);font-size:.94rem}
body.dispo-rules-page .rule-toggle small{display:block;margin-top:3px;color:var(--rule-subtle);font-size:.78rem;line-height:1.35}
body.dispo-rules-page .dispo-rule-panel{padding:22px}
body.dispo-rules-page .dispo-rule-metrics{display:grid;gap:12px;margin-top:18px}
body.dispo-rules-page .dispo-rule-metrics article{
  padding:15px;
  border-radius:18px;
  border:1px solid var(--rule-border);
  background:rgba(2,6,23,.34);
}
body.dispo-rules-page .dispo-rule-metrics span{display:block;color:var(--rule-subtle);font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
body.dispo-rules-page .dispo-rule-metrics strong{display:block;margin-top:5px;color:var(--rule-text);font-size:1rem}
body.dispo-rules-page .dispo-rule-metrics small{display:block;margin-top:4px;color:var(--rule-subtle);line-height:1.35}
body.dispo-rules-page .dispo-rule-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:12px;
  padding:4px 2px 0;
}
body.dispo-rules-page #dispoRulesState{min-height:24px;color:var(--rule-muted)}
@media (max-width:1180px){
  body.dispo-rules-page .dispo-rule-shell{grid-template-columns:1fr}
  body.dispo-rules-page .dispo-rule-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
  body.dispo-rules-page .dispo-rule-fields--mixed{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  body.dispo-rules-page .dispo-rule-shell{width:min(100% - 28px,1480px);margin-top:16px}
  body.dispo-rules-page .dispo-rule-sidebar,
  body.dispo-rules-page .dispo-rule-fields--base,
  body.dispo-rules-page .dispo-rule-fields--mixed,
  body.dispo-rules-page .dispo-rule-toggle-grid{grid-template-columns:1fr}
  body.dispo-rules-page .rule-field,
  body.dispo-rules-page .rule-field--wide,
  body.dispo-rules-page .rule-field--compact{max-width:none}
  body.dispo-rules-page .dispo-rule-heading{padding:22px 20px}
  body.dispo-rules-page .dispo-rule-form{padding:16px}
  body.dispo-rules-page .rule-toggle{grid-template-columns:1fr}
  body.dispo-rules-page .dispo-rule-actions{justify-content:stretch}
  body.dispo-rules-page .dispo-rule-actions .primary-button{width:100%}
}

/* === 908: Sauberes CI-Grundsystem für Unterseiten/Module ===
   Aktiv nur auf Seiten mit body.module-ci-v2. Keine Dashboard-, Druck- oder Fahrer-App-Regeln.
   Ziel: konsistente dunkle Moduloptik, bündige und begrenzte Feldbreiten, keine erzwungene globale Split-Struktur. */
body.module-ci-v2{
  --ci-page-bg:#07111f;
  --ci-surface:#0f1b2d;
  --ci-surface-2:#111f34;
  --ci-surface-3:#14243b;
  --ci-border:rgba(148,163,184,.18);
  --ci-border-strong:rgba(148,163,184,.30);
  --ci-text:#f8fafc;
  --ci-muted:#cbd5e1;
  --ci-subtle:#94a3b8;
  --ci-accent:#38bdf8;
  --ci-accent-2:#14b8a6;
  --ci-danger:#fb7185;
  --ci-warning:#fbbf24;
  --ci-radius-lg:26px;
  --ci-radius-md:18px;
  --ci-field-w:360px;
  --ci-field-wide:620px;
  min-height:100vh;
  background:
    radial-gradient(circle at 10% -10%,rgba(56,189,248,.14),transparent 34rem),
    radial-gradient(circle at 92% 8%,rgba(20,184,166,.10),transparent 30rem),
    linear-gradient(135deg,#07111f 0%,#0b1220 48%,#101827 100%);
  color:var(--ci-text);
}
body.module-ci-v2 .topbar{
  width:min(100% - 44px,1480px);
  margin:18px auto 0;
  border:1px solid var(--ci-border);
  border-radius:var(--ci-radius-lg);
  background:linear-gradient(135deg,rgba(15,27,45,.96),rgba(15,23,42,.90));
  box-shadow:0 24px 70px rgba(0,0,0,.24);
  padding:22px 26px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:22px;
}
body.module-ci-v2 .topbar h1{margin:0;color:var(--ci-text);letter-spacing:-.025em;line-height:1.1}
body.module-ci-v2 .topbar p{margin:6px 0 0;color:var(--ci-muted);max-width:780px;line-height:1.55}
body.module-ci-v2 .topbar-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;align-items:center}
body.module-ci-v2 main,
body.module-ci-v2 .content-wrap,
body.module-ci-v2 .overview-main,
body.module-ci-v2 .split-layout,
body.module-ci-v2 .page-stack,
body.module-ci-v2 .worktime-layout{
  width:min(100% - 44px,1480px);
  margin-left:auto;
  margin-right:auto;
}
body.module-ci-v2 main{margin-top:22px;margin-bottom:104px}
body.module-ci-v2 .page-stack{display:grid;gap:20px}
body.module-ci-v2 .overview-main{display:grid;gap:20px;align-items:start}
body.module-ci-v2 .split-layout,
body.module-ci-v2 .patient-layout{
  display:grid;
  grid-template-columns:minmax(280px,360px) minmax(0,1fr);
  gap:20px;
  align-items:start;
}
body.module-ci-v2 .split-layout > .card:nth-child(3),
body.module-ci-v2 .patient-layout > .panel-card:nth-child(3){grid-column:1 / -1}
body.module-ci-v2 .card,
body.module-ci-v2 .panel,
body.module-ci-v2 .panel-card,
body.module-ci-v2 .hero-card,
body.module-ci-v2 .subsection,
body.module-ci-v2 .enterprise-subsection{
  border:1px solid var(--ci-border);
  border-radius:var(--ci-radius-lg);
  background:linear-gradient(180deg,rgba(15,27,45,.97),rgba(11,18,32,.94));
  color:var(--ci-text);
  box-shadow:0 22px 64px rgba(0,0,0,.24);
}
body.module-ci-v2 .card,
body.module-ci-v2 .panel,
body.module-ci-v2 .panel-card{padding:22px}
body.module-ci-v2 .panel-card{overflow:hidden;padding:0}
body.module-ci-v2 .panel-card__head,
body.module-ci-v2 .section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:0 0 16px;
  border-bottom:1px solid var(--ci-border);
  margin-bottom:16px;
}
body.module-ci-v2 .panel-card__head{padding:22px 24px 18px;margin:0;background:linear-gradient(135deg,rgba(56,189,248,.10),rgba(15,23,42,.10))}
body.module-ci-v2 .panel-card__body{padding:22px 24px}
body.module-ci-v2 .section-head h2,
body.module-ci-v2 .panel-card h2,
body.module-ci-v2 .card h2{margin:0;color:var(--ci-text);letter-spacing:-.015em}
body.module-ci-v2 .section-head p,
body.module-ci-v2 .panel-card p,
body.module-ci-v2 .card p,
body.module-ci-v2 .muted{color:var(--ci-muted);line-height:1.55}
body.module-ci-v2 .small,
body.module-ci-v2 small{color:var(--ci-subtle)}
body.module-ci-v2 .hero-card{padding:26px 28px;display:flex;align-items:center;justify-content:space-between;gap:22px;background:linear-gradient(135deg,rgba(56,189,248,.13),rgba(20,184,166,.08) 45%,rgba(15,23,42,.92))}
body.module-ci-v2 .hero-card h1{margin:6px 0 0;color:var(--ci-text);letter-spacing:-.03em}
body.module-ci-v2 .hero-card p{max-width:820px;margin:8px 0 0;color:var(--ci-muted)}
body.module-ci-v2 .eyebrow{display:inline-flex;align-items:center;min-height:24px;padding:3px 9px;border-radius:999px;border:1px solid rgba(56,189,248,.30);background:rgba(56,189,248,.10);color:#bae6fd;font-size:.72rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}

/* Formulare: nicht überbreit, aber bündig innerhalb sinnvoller Raster */
body.module-ci-v2 form,
body.module-ci-v2 .form-stack{display:grid;gap:16px;align-items:start;max-width:980px}
body.module-ci-v2 label{color:var(--ci-muted);font-weight:750;letter-spacing:.01em}
body.module-ci-v2 form > label,
body.module-ci-v2 .form-stack > label{display:grid;gap:7px;max-width:var(--ci-field-wide)}
body.module-ci-v2 .grid,
body.module-ci-v2 .form-grid,
body.module-ci-v2 .form-section-grid,
body.module-ci-v2 .inline-grid,
body.module-ci-v2 .settings-grid{
  display:grid;
  gap:14px;
  align-items:start;
}
body.module-ci-v2 .grid.two,
body.module-ci-v2 .form-section-grid--two,
body.module-ci-v2 .form-grid.two{grid-template-columns:repeat(2,minmax(220px,var(--ci-field-w)));justify-content:start}
body.module-ci-v2 .grid.three,
body.module-ci-v2 .form-section-grid--three,
body.module-ci-v2 .form-grid.three{grid-template-columns:repeat(3,minmax(150px,260px));justify-content:start}
body.module-ci-v2 .grid.four,
body.module-ci-v2 .form-grid.four{grid-template-columns:repeat(4,minmax(130px,220px));justify-content:start}
body.module-ci-v2 .grid label,
body.module-ci-v2 .form-grid label,
body.module-ci-v2 .form-section-grid label{display:grid;gap:7px;min-width:0;max-width:var(--ci-field-w)}
body.module-ci-v2 .grid label:has(textarea),
body.module-ci-v2 .form-grid label:has(textarea),
body.module-ci-v2 .form-section-grid label:has(textarea),
body.module-ci-v2 label:has(textarea){max-width:var(--ci-field-wide)}
body.module-ci-v2 input,
body.module-ci-v2 select,
body.module-ci-v2 textarea{
  width:100%;
  min-height:44px;
  border-radius:15px;
  border:1px solid rgba(148,163,184,.28);
  background:linear-gradient(180deg,rgba(17,31,52,.98),rgba(10,18,32,.98));
  color:var(--ci-text);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 12px 28px rgba(0,0,0,.16);
}
body.module-ci-v2 textarea{min-height:104px;resize:vertical;line-height:1.5}
body.module-ci-v2 input::placeholder,
body.module-ci-v2 textarea::placeholder{color:rgba(203,213,225,.58)}
body.module-ci-v2 input:focus,
body.module-ci-v2 select:focus,
body.module-ci-v2 textarea:focus{
  outline:none;
  border-color:rgba(56,189,248,.78);
  box-shadow:0 0 0 3px rgba(56,189,248,.16),inset 0 1px 0 rgba(255,255,255,.05);
}
body.module-ci-v2 input[type="checkbox"],
body.module-ci-v2 input[type="radio"]{width:auto;min-height:auto;box-shadow:none}
body.module-ci-v2 select option{background:#0f1b2d;color:#f8fafc}
body.module-ci-v2 input:disabled,
body.module-ci-v2 select:disabled,
body.module-ci-v2 textarea:disabled{opacity:.62;background:#0b1220;color:#94a3b8}

/* Buttons und Aktionen */
body.module-ci-v2 .primary,
body.module-ci-v2 .primary-button,
body.module-ci-v2 .btn--primary{
  border:1px solid rgba(56,189,248,.42);
  background:linear-gradient(135deg,#0ea5e9,#14b8a6);
  color:#03111f;
  font-weight:900;
  box-shadow:0 14px 34px rgba(14,165,233,.20);
}
body.module-ci-v2 .secondary-button,
body.module-ci-v2 .ghost,
body.module-ci-v2 .ghost-button,
body.module-ci-v2 .btn--ghost,
body.module-ci-v2 .small-link{
  border:1px solid rgba(148,163,184,.24);
  background:rgba(15,23,42,.58);
  color:#e2e8f0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
body.module-ci-v2 .danger,
body.module-ci-v2 .danger-button{border-color:rgba(251,113,133,.36);background:rgba(127,29,29,.32);color:#fecdd3}
body.module-ci-v2 .inline-actions,
body.module-ci-v2 .form-actions,
body.module-ci-v2 .hero-card__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}

/* Listen und Tabellen */
body.module-ci-v2 .simple-list,
body.module-ci-v2 .stack-list{display:grid;gap:10px}
body.module-ci-v2 .simple-list > *,
body.module-ci-v2 .stack-list > *,
body.module-ci-v2 .list-item{
  border:1px solid rgba(148,163,184,.16);
  border-radius:18px;
  background:rgba(15,23,42,.58);
  color:var(--ci-text);
}
body.module-ci-v2 .simple-list > *:hover,
body.module-ci-v2 .stack-list > *:hover{border-color:rgba(56,189,248,.26);background:rgba(20,36,59,.78)}
body.module-ci-v2 .table-wrap{border:1px solid var(--ci-border);border-radius:20px;overflow:auto;background:rgba(2,6,23,.20)}
body.module-ci-v2 table{width:100%;border-collapse:separate;border-spacing:0;color:var(--ci-text)}
body.module-ci-v2 th{background:rgba(15,23,42,.90);color:#cbd5e1;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}
body.module-ci-v2 td{color:#e5e7eb;border-top:1px solid rgba(148,163,184,.13)}
body.module-ci-v2 th,
body.module-ci-v2 td{padding:12px 14px;text-align:left;vertical-align:top}
body.module-ci-v2 code{border:1px solid rgba(148,163,184,.18);border-radius:10px;background:rgba(2,6,23,.45);color:#bae6fd;padding:.12rem .38rem}
body.module-ci-v2 .small-feedback{color:var(--ci-muted);min-height:22px}
body.module-ci-v2 .hidden{display:none!important}

/* Seitentypen: Konfiguration/Listen bekommen keine erzwungene Split-Struktur. */
body.module-ci-v2:not(.patient-page) .overview-main,
body.module-ci-v2:not(.patient-page) .content-wrap.page-stack{max-width:1480px}
body.module-ci-v2 .worktime-layout,
body.module-ci-v2 .page-grid{max-width:1480px}

@media (max-width:1180px){
  body.module-ci-v2 .split-layout,
  body.module-ci-v2 .patient-layout{grid-template-columns:1fr}
  body.module-ci-v2 .topbar{align-items:stretch;flex-direction:column}
  body.module-ci-v2 .topbar-actions{justify-content:flex-start}
}
@media (max-width:820px){
  body.module-ci-v2 .topbar,
  body.module-ci-v2 main,
  body.module-ci-v2 .content-wrap,
  body.module-ci-v2 .overview-main,
  body.module-ci-v2 .split-layout,
  body.module-ci-v2 .page-stack,
  body.module-ci-v2 .worktime-layout{width:min(100% - 28px,1480px)}
  body.module-ci-v2 .grid.two,
  body.module-ci-v2 .grid.three,
  body.module-ci-v2 .grid.four,
  body.module-ci-v2 .form-grid.two,
  body.module-ci-v2 .form-grid.three,
  body.module-ci-v2 .form-grid.four,
  body.module-ci-v2 .form-section-grid--two,
  body.module-ci-v2 .form-section-grid--three{grid-template-columns:1fr}
  body.module-ci-v2 .grid label,
  body.module-ci-v2 .form-grid label,
  body.module-ci-v2 .form-section-grid label,
  body.module-ci-v2 form > label,
  body.module-ci-v2 .form-stack > label{max-width:none}
  body.module-ci-v2 .card,
  body.module-ci-v2 .panel,
  body.module-ci-v2 .panel-card__body{padding:18px}
  body.module-ci-v2 .panel-card__head{padding:20px 18px 16px;flex-direction:column}
  body.module-ci-v2 .hero-card{padding:22px 20px;align-items:flex-start;flex-direction:column}
}

/* v909: Premium-Tourkacheln im Dashboard – stärkere Produktwirkung ohne Logikänderung */
body.app-shell .ride-chip-v2,
body.app-shell .order-card{
  --ride-accent:#38bdf8;
  --ride-accent-soft:rgba(56,189,248,.16);
  --ride-card-bg-1:#122033;
  --ride-card-bg-2:#0a1624;
  --ride-card-border:rgba(180,207,238,.18);
  isolation:isolate;
  position:relative !important;
  border:1px solid var(--ride-card-border) !important;
  border-left:0 !important;
  border-radius:18px !important;
  background:
    radial-gradient(circle at 14px 0, var(--ride-accent-soft) 0, rgba(255,255,255,0) 76px),
    linear-gradient(180deg, var(--ride-card-bg-1) 0%, var(--ride-card-bg-2) 100%) !important;
  box-shadow:
    0 16px 34px rgba(0,0,0,.27),
    0 2px 0 rgba(255,255,255,.035) inset,
    0 0 0 1px rgba(255,255,255,.035) inset !important;
  color:#f8fafc !important;
  padding:12px 12px 10px 15px !important;
  transform:translateZ(0);
}
body.app-shell .ride-chip-v2::after,
body.app-shell .order-card::after{
  content:'';
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:5px;
  border-radius:18px 0 0 18px;
  background:linear-gradient(180deg, color-mix(in srgb, var(--ride-accent) 92%, #fff) 0%, var(--ride-accent) 48%, color-mix(in srgb, var(--ride-accent) 72%, #020617) 100%);
  box-shadow:0 0 24px color-mix(in srgb, var(--ride-accent) 46%, transparent);
  z-index:2;
  pointer-events:none;
}
body.app-shell .ride-chip-v2:hover,
body.app-shell .order-card:hover{
  border-color:color-mix(in srgb, var(--ride-accent) 34%, rgba(180,207,238,.20)) !important;
  box-shadow:
    0 20px 42px rgba(0,0,0,.33),
    0 0 0 1px color-mix(in srgb, var(--ride-accent) 20%, transparent) inset,
    0 2px 0 rgba(255,255,255,.045) inset !important;
}
body.app-shell .ride-chip-v2--ok{--ride-accent:#22c55e;--ride-accent-soft:rgba(34,197,94,.14);}
body.app-shell .ride-chip-v2--tight{--ride-accent:#f59e0b;--ride-accent-soft:rgba(245,158,11,.16);}
body.app-shell .ride-chip-v2--late{--ride-accent:#ef4444;--ride-accent-soft:rgba(239,68,68,.17);}
body.app-shell .ride-chip-v2--done{--ride-accent:#94a3b8;--ride-accent-soft:rgba(148,163,184,.13);opacity:.86;}
body.app-shell .ride-chip-v2--held,
body.app-shell .ride-chip-v2--locked{--ride-accent:#60a5fa;--ride-accent-soft:rgba(96,165,250,.15);}
body.app-shell .ride-chip-v2--review{--ride-accent:#e879f9;--ride-accent-soft:rgba(232,121,249,.19);}

body.app-shell .ride-main-fields{
  grid-template-columns:62px minmax(0,1fr) !important;
  gap:8px 10px !important;
  align-items:start !important;
}
body.app-shell .ride-main-fields .chip-v2-time-block{
  width:62px !important;
  min-width:62px !important;
  max-width:62px !important;
  display:grid !important;
  gap:4px !important;
  justify-items:start !important;
}
body.app-shell .ride-main-fields .chip-v2-time-pill{
  width:62px !important;
  min-width:62px !important;
  height:34px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 7px !important;
  border-radius:13px !important;
  border:1px solid color-mix(in srgb, var(--ride-accent) 36%, rgba(255,255,255,.20)) !important;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--ride-accent) 22%, rgba(255,255,255,.12)) 0%, rgba(15,23,42,.62) 100%) !important;
  color:#ffffff !important;
  font-size:.95rem !important;
  font-weight:950 !important;
  letter-spacing:-.02em !important;
  box-shadow:0 8px 16px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.13) !important;
}
body.app-shell .ride-main-fields .chip-v2-time-label{
  width:62px !important;
  color:#b6c6d8 !important;
  font-size:.58rem !important;
  line-height:1 !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.07em !important;
  text-align:center !important;
  opacity:.92 !important;
}
body.app-shell .ride-chip-v2--review .chip-v2-time-pill,
body.app-shell .ride-chip-v2--review .chip-v2-patient,
body.app-shell .order-card.ride-chip-v2--review .chip-v2-patient{
  color:#f5d0fe !important;
}

body.app-shell .ride-chip-v2 .chip-v2-head,
body.app-shell .order-card .chip-v2-head{
  padding:2px 24px 0 0 !important;
}
body.app-shell .ride-chip-v2 .chip-v2-name-row,
body.app-shell .order-card .chip-v2-name-row{
  min-height:34px !important;
  align-items:center !important;
}
body.app-shell .ride-chip-v2 .chip-v2-patient,
body.app-shell .order-card .chip-v2-patient,
body.app-shell .ride-main-fields .chip-v2-patient{
  color:#f8fbff !important;
  font-size:clamp(.82rem, 1.08vw, 1.06rem) !important;
  font-weight:950 !important;
  letter-spacing:-.025em !important;
  text-shadow:0 1px 0 rgba(0,0,0,.32) !important;
}
body.app-shell .ride-chip-v2 .driver-state-badge,
body.app-shell .order-card .driver-state-badge{
  flex:0 0 auto !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.16) !important;
  background:rgba(255,255,255,.07) !important;
  color:#e5f2ff !important;
  box-shadow:none !important;
}

body.app-shell .ride-chip-v2 .chip-v2-route,
body.app-shell .order-card .chip-v2-route{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:7px !important;
  margin-top:1px !important;
}
body.app-shell .ride-chip-v2 .chip-v2-addr,
body.app-shell .order-card .chip-v2-addr{
  display:grid !important;
  grid-template-columns:38px minmax(0,1fr) !important;
  gap:8px !important;
  align-items:center !important;
  min-height:38px !important;
  padding:7px 9px !important;
  border-radius:14px !important;
  border:1px solid rgba(148,163,184,.14) !important;
  background:linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.035)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055) !important;
}
body.app-shell .ride-chip-v2 .chip-v2-addr-lbl,
body.app-shell .order-card .chip-v2-addr-lbl{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:22px !important;
  min-width:34px !important;
  padding:0 5px !important;
  border-radius:999px !important;
  background:color-mix(in srgb, var(--ride-accent) 18%, rgba(15,23,42,.72)) !important;
  color:#dcecff !important;
  font-size:.58rem !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.05em !important;
  margin:0 !important;
}
body.app-shell .ride-chip-v2 .chip-v2-addr-content,
body.app-shell .order-card .chip-v2-addr-content{
  min-width:0 !important;
  display:grid !important;
  gap:1px !important;
}
body.app-shell .ride-chip-v2 .chip-v2-addr-name,
body.app-shell .order-card .chip-v2-addr-name{
  color:#f1f5f9 !important;
  font-weight:850 !important;
  font-size:.75rem !important;
  line-height:1.15 !important;
}
body.app-shell .ride-chip-v2 .chip-v2-addr-street,
body.app-shell .order-card .chip-v2-addr-street,
body.app-shell .ride-chip-v2 .chip-v2-addr-content span,
body.app-shell .order-card .chip-v2-addr-content span{
  color:#c7d5e4 !important;
}
body.app-shell .ride-chip-v2 .chip-v2-addr-street,
body.app-shell .order-card .chip-v2-addr-street{
  font-size:.72rem !important;
  line-height:1.2 !important;
}

body.app-shell .ride-expanded-fields{
  margin-top:9px !important;
  padding-top:8px !important;
  border-top:1px solid rgba(148,163,184,.13) !important;
  gap:7px !important;
}
body.app-shell .chip-v2-expanded-transport{
  justify-content:flex-start !important;
  margin:0 !important;
}
body.app-shell .chip-v2-expanded-transport .transport-chip,
body.app-shell .chip-v2-expanded-transport .chip-v2-transport,
body.app-shell .chip-v2-expanded-transport .transport-chip--mode,
body.app-shell .ride-kind-line .transport-chip--kind{
  border:1px solid rgba(255,255,255,.16) !important;
  background:rgba(255,255,255,.08) !important;
  color:#f4f8ff !important;
  font-weight:900 !important;
  letter-spacing:.015em !important;
}
body.app-shell .ride-kind-line{
  overflow:hidden !important;
  margin:9px -6px -4px -9px !important;
  padding:5px 34px 5px 9px !important;
  border-radius:0 0 14px 14px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12) !important;
}
body.app-shell .chip-v2-detail,
body.app-shell .ride-plan-box{
  border-color:rgba(148,163,184,.15) !important;
  background:rgba(2,6,23,.28) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}
body.app-shell .chip-v2-detail-summary,
body.app-shell .chip-v2-detail-val{color:#f8fafc !important;}
body.app-shell .chip-v2-detail-lbl{color:#bac8d8 !important;}

body.app-shell .ride-compact-toggle{
  top:9px !important;
  right:9px !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  border:0 !important;
  background:transparent !important;
  color:#c5d6e8 !important;
  opacity:.62 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}
body.app-shell .ride-compact-toggle:hover,
body.app-shell .ride-compact-toggle:focus-visible{
  background:rgba(255,255,255,.08) !important;
  color:#ffffff !important;
  opacity:1 !important;
  outline:1px solid rgba(255,255,255,.16) !important;
  outline-offset:1px !important;
}
body.app-shell .collective-select span{
  border-color:color-mix(in srgb, var(--ride-accent) 42%, rgba(255,255,255,.20)) !important;
  background:rgba(15,23,42,.82) !important;
}
body.app-shell .collective-select input:checked + span{
  background:var(--ride-accent) !important;
  border-color:color-mix(in srgb, var(--ride-accent) 70%, #fff) !important;
}

/* Kompaktzustand bleibt schnell erfassbar, aber hochwertiger und weniger spielzeughaft. */
body.app-shell .ride-chip-v2.is-ride-collapsed,
body.app-shell .order-card.is-ride-collapsed{
  padding:9px 34px 8px 14px !important;
  border-radius:17px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-main-fields,
body.app-shell .order-card.is-ride-collapsed .ride-main-fields{
  grid-template-columns:56px minmax(0,1fr) !important;
  gap:5px 9px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-time-block,
body.app-shell .order-card.is-ride-collapsed .chip-v2-time-block{
  width:56px !important;
  min-width:56px !important;
  max-width:56px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-time-pill,
body.app-shell .order-card.is-ride-collapsed .chip-v2-time-pill{
  width:56px !important;
  min-width:56px !important;
  height:30px !important;
  border-radius:12px !important;
  font-size:.88rem !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-patient,
body.app-shell .order-card.is-ride-collapsed .chip-v2-patient{
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  font-size:clamp(.72rem,.92vw,.94rem) !important;
  letter-spacing:-.025em !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-route,
body.app-shell .order-card.is-ride-collapsed .chip-v2-route{
  gap:4px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr{
  grid-template-columns:34px minmax(0,1fr) !important;
  min-height:30px !important;
  padding:4px 7px !important;
  border-radius:12px !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr-lbl,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr-lbl{
  min-width:30px !important;
  height:19px !important;
  font-size:.54rem !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .chip-v2-addr-street,
body.app-shell .order-card.is-ride-collapsed .chip-v2-addr-street{
  color:#d7e1ec !important;
  font-size:.67rem !important;
}
body.app-shell .ride-chip-v2.is-ride-collapsed .ride-kind-line,
body.app-shell .order-card.is-ride-collapsed .ride-kind-line{
  margin:6px -6px -4px -9px !important;
  padding:4px 34px 4px 9px !important;
}

/* v910: Premium-Verlauf fuer unteren Fahrtart-/Richtungsstreifen der Tourkachel.
   Nur Optik des bestehenden Balkens, keine Layout- oder Logikaenderung. */
body.app-shell .ride-chip-v2 .ride-kind-line,
body.app-shell .order-card .ride-kind-line{
  position:relative !important;
  overflow:hidden !important;
  isolation:isolate !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -1px 0 rgba(0,0,0,.18),
    0 -1px 12px rgba(2,6,23,.16) !important;
}
body.app-shell .ride-chip-v2 .ride-kind-line::before,
body.app-shell .order-card .ride-kind-line::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    radial-gradient(120% 180% at 18% 0%, rgba(255,255,255,.26) 0%, rgba(255,255,255,.10) 30%, rgba(255,255,255,0) 58%),
    linear-gradient(180deg, rgba(255,255,255,.16) 0%, rgba(255,255,255,.045) 42%, rgba(0,0,0,.16) 100%);
}
body.app-shell .ride-chip-v2 .ride-kind-line::after,
body.app-shell .order-card .ride-kind-line::after{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.14) 48%, rgba(255,255,255,0) 100%);
  opacity:.42;
  transform:skewX(-14deg) translateX(-18%);
}
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip,
body.app-shell .order-card .ride-kind-line .transport-chip,
body.app-shell .ride-chip-v2 .ride-kind-line .transport-chip--kind,
body.app-shell .order-card .ride-kind-line .transport-chip--kind{
  position:relative !important;
  z-index:1 !important;
  letter-spacing:.065em !important;
  text-shadow:0 1px 2px rgba(0,0,0,.52), 0 0 12px rgba(255,255,255,.10) !important;
}

/* v913: Rückfahrzeit-Editor in Tourkacheln – dunkle Premium-Optik + Uhrzeit-Picker-Trigger */
body.app-shell .ride-return-time-line{
  display:grid !important;
  grid-template-columns:auto minmax(92px, auto) 30px !important;
  align-items:center !important;
  gap:7px !important;
  width:max-content !important;
  max-width:100% !important;
  margin:8px 0 4px !important;
  padding:5px 6px 5px 9px !important;
  border:1px solid rgba(125,211,252,.22) !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,rgba(15,23,42,.94),rgba(30,41,59,.92) 52%,rgba(14,116,144,.34)) !important;
  color:#e5f4ff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09), 0 10px 22px rgba(2,6,23,.26) !important;
}
body.app-shell .ride-return-time-label{
  font-size:.71rem !important;
  font-weight:900 !important;
  color:#bae6fd !important;
  letter-spacing:.045em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}
body.app-shell .ride-return-time-picker{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:5px !important;
  min-width:92px !important;
  height:30px !important;
  padding:0 8px !important;
  border:1px solid rgba(125,211,252,.24) !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,rgba(15,118,160,.58),rgba(12,74,110,.88)) !important;
  color:#ffffff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16), 0 5px 12px rgba(8,47,73,.24) !important;
  cursor:pointer !important;
}
body.app-shell .ride-return-time-picker:hover,
body.app-shell .ride-return-time-picker:focus-visible{
  border-color:rgba(186,230,253,.58) !important;
  background:linear-gradient(180deg,rgba(14,165,233,.7),rgba(7,89,133,.92)) !important;
  outline:2px solid rgba(56,189,248,.24) !important;
  outline-offset:2px !important;
}
body.app-shell .ride-return-time-clock{
  font-size:.86rem !important;
  line-height:1 !important;
  color:#e0f2fe !important;
  opacity:.95 !important;
}
body.app-shell .ride-return-time-input{
  width:58px !important;
  min-width:58px !important;
  height:auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#ffffff !important;
  font-size:.86rem !important;
  font-weight:950 !important;
  line-height:1 !important;
  text-align:center !important;
  cursor:pointer !important;
  box-shadow:none !important;
  appearance:none !important;
  -webkit-appearance:none !important;
}
body.app-shell .ride-return-time-input::placeholder{color:rgba(224,242,254,.72) !important;}
body.app-shell .ride-return-time-input:focus{outline:none !important;}
body.app-shell .ride-return-time-save{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  min-height:28px !important;
  padding:0 !important;
  border-radius:999px !important;
  border:1px solid rgba(134,239,172,.34) !important;
  background:linear-gradient(180deg,rgba(34,197,94,.74),rgba(21,128,61,.9)) !important;
  color:#ffffff !important;
  font-size:.9rem !important;
  font-weight:1000 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 5px 12px rgba(20,83,45,.22) !important;
}
body.app-shell .ride-return-time-save:hover,
body.app-shell .ride-return-time-save:focus-visible{
  background:linear-gradient(180deg,rgba(74,222,128,.82),rgba(22,163,74,.94)) !important;
  outline:2px solid rgba(74,222,128,.26) !important;
  outline-offset:2px !important;
}

/* v914: Rückfahrzeit-Editor in Rückfahrt-Tourkacheln – korrigierte Premium-Optik ohne verschachtelte Button/Input-Struktur */
body.app-shell .ride-return-time-line{
  display:grid !important;
  grid-template-columns:minmax(86px,1fr) auto 32px !important;
  align-items:center !important;
  gap:10px !important;
  width:100% !important;
  max-width:100% !important;
  margin:10px 0 5px !important;
  padding:8px 9px 8px 11px !important;
  border:1px solid rgba(125,211,252,.18) !important;
  border-left:3px solid rgba(56,189,248,.82) !important;
  border-radius:16px !important;
  background:
    linear-gradient(135deg, rgba(15,23,42,.78), rgba(30,41,59,.88) 58%, rgba(8,47,73,.64)),
    radial-gradient(circle at 18% 0%, rgba(56,189,248,.16), transparent 44%) !important;
  color:#e5f4ff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 10px 22px rgba(2,6,23,.22) !important;
}
body.app-shell .ride-return-time-copy{
  display:flex !important;
  flex-direction:column !important;
  gap:2px !important;
  min-width:0 !important;
}
body.app-shell .ride-return-time-label{
  display:block !important;
  font-size:.78rem !important;
  font-weight:950 !important;
  color:#f8fafc !important;
  letter-spacing:.045em !important;
  text-transform:uppercase !important;
  line-height:1.05 !important;
  text-shadow:0 1px 2px rgba(0,0,0,.45) !important;
  white-space:nowrap !important;
}
body.app-shell .ride-return-time-hint{
  display:block !important;
  font-size:.66rem !important;
  font-weight:800 !important;
  color:rgba(186,230,253,.76) !important;
  letter-spacing:.02em !important;
  line-height:1.1 !important;
  white-space:nowrap !important;
}
body.app-shell .ride-return-time-picker{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  min-width:108px !important;
  height:36px !important;
  padding:0 10px !important;
  border:1px solid rgba(125,211,252,.30) !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,rgba(14,116,144,.72),rgba(12,74,110,.94)) !important;
  color:#ffffff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.17), 0 7px 16px rgba(8,47,73,.28) !important;
  cursor:pointer !important;
  user-select:none !important;
}
body.app-shell .ride-return-time-picker:hover,
body.app-shell .ride-return-time-picker:focus-visible{
  border-color:rgba(186,230,253,.68) !important;
  background:linear-gradient(180deg,rgba(14,165,233,.72),rgba(7,89,133,.96)) !important;
  outline:2px solid rgba(56,189,248,.26) !important;
  outline-offset:2px !important;
}
body.app-shell .ride-return-time-clock{
  font-size:.95rem !important;
  line-height:1 !important;
  color:#e0f2fe !important;
  opacity:.96 !important;
}
body.app-shell .ride-return-time-input{
  width:61px !important;
  min-width:61px !important;
  height:22px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#ffffff !important;
  font-size:.96rem !important;
  font-weight:950 !important;
  line-height:22px !important;
  text-align:center !important;
  cursor:pointer !important;
  box-shadow:none !important;
  appearance:none !important;
  -webkit-appearance:none !important;
}
body.app-shell .ride-return-time-input::placeholder{color:rgba(224,242,254,.70) !important;}
body.app-shell .ride-return-time-input:focus{outline:none !important;}
body.app-shell .ride-return-time-save{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:32px !important;
  height:32px !important;
  min-width:32px !important;
  min-height:32px !important;
  padding:0 !important;
  border-radius:999px !important;
  border:1px solid rgba(134,239,172,.38) !important;
  background:linear-gradient(180deg,rgba(34,197,94,.82),rgba(21,128,61,.96)) !important;
  color:#ffffff !important;
  font-size:.98rem !important;
  font-weight:1000 !important;
  line-height:1 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.20),0 7px 16px rgba(20,83,45,.24) !important;
}
body.app-shell .ride-return-time-save:hover,
body.app-shell .ride-return-time-save:focus-visible{
  background:linear-gradient(180deg,rgba(74,222,128,.86),rgba(22,163,74,.98)) !important;
  outline:2px solid rgba(74,222,128,.28) !important;
  outline-offset:2px !important;
}
@media (max-width:720px){
  body.app-shell .ride-return-time-line{
    grid-template-columns:1fr auto !important;
  }
  body.app-shell .ride-return-time-save{
    grid-column:2 !important;
    grid-row:1 / span 2 !important;
  }
  body.app-shell .ride-return-time-picker{
    justify-self:start !important;
  }
}

/* v915: Rückfahrzeit in Tourkachel bewusst minimal, lesbar und innerhalb der Karte */
body.app-shell .ride-return-time-line{
  display:grid !important;
  grid-template-columns:auto 72px 30px !important;
  align-items:center !important;
  justify-content:start !important;
  gap:8px !important;
  width:max-content !important;
  max-width:100% !important;
  margin:8px 0 3px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#e5edf7 !important;
}
body.app-shell .ride-return-time-copy,
body.app-shell .ride-return-time-hint,
body.app-shell .ride-return-time-picker,
body.app-shell .ride-return-time-clock{
  display:none !important;
}
body.app-shell .ride-return-time-label{
  display:inline-flex !important;
  align-items:center !important;
  height:28px !important;
  margin:0 !important;
  padding:0 !important;
  color:#f8fafc !important;
  font-size:.74rem !important;
  font-weight:850 !important;
  letter-spacing:.015em !important;
  text-transform:none !important;
  line-height:1 !important;
  text-shadow:none !important;
  white-space:nowrap !important;
}
body.app-shell .ride-return-time-input{
  display:inline-flex !important;
  width:72px !important;
  min-width:72px !important;
  max-width:72px !important;
  height:28px !important;
  margin:0 !important;
  padding:0 8px !important;
  border:1px solid rgba(148,163,184,.34) !important;
  border-radius:8px !important;
  background:rgba(15,23,42,.72) !important;
  color:#ffffff !important;
  font-size:.88rem !important;
  font-weight:850 !important;
  line-height:28px !important;
  text-align:center !important;
  letter-spacing:.02em !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
  cursor:pointer !important;
  appearance:none !important;
  -webkit-appearance:none !important;
}
body.app-shell .ride-return-time-input::placeholder{
  color:rgba(203,213,225,.72) !important;
}
body.app-shell .ride-return-time-input:hover,
body.app-shell .ride-return-time-input:focus{
  border-color:rgba(125,211,252,.62) !important;
  background:rgba(15,23,42,.88) !important;
  color:#ffffff !important;
  outline:none !important;
}
body.app-shell .ride-return-time-save{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:30px !important;
  height:28px !important;
  min-width:30px !important;
  min-height:28px !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid rgba(74,222,128,.42) !important;
  border-radius:8px !important;
  background:rgba(22,163,74,.82) !important;
  color:#ffffff !important;
  font-size:.86rem !important;
  font-weight:900 !important;
  line-height:1 !important;
  box-shadow:none !important;
  cursor:pointer !important;
}
body.app-shell .ride-return-time-save:hover,
body.app-shell .ride-return-time-save:focus-visible{
  border-color:rgba(134,239,172,.70) !important;
  background:rgba(34,197,94,.92) !important;
  color:#ffffff !important;
  outline:2px solid rgba(74,222,128,.24) !important;
  outline-offset:2px !important;
}
@media (max-width:720px){
  body.app-shell .ride-return-time-line{
    grid-template-columns:auto 72px 30px !important;
    width:max-content !important;
  }
  body.app-shell .ride-return-time-save{
    grid-column:auto !important;
    grid-row:auto !important;
  }
}

/* v918: Fahrerstatus in Tourkacheln klar sichtbar über dem Kachelinhalt */
body.app-shell.dashboard-shell .ride-driver-status{
  --driver-status-accent:#60a5fa;
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:"kicker meta" "title meta";
  align-items:center;
  gap:2px 10px;
  margin:0 26px 9px 0;
  padding:8px 10px 8px 12px;
  border-radius:14px;
  border:1px solid color-mix(in srgb, var(--driver-status-accent) 38%, rgba(255,255,255,.16));
  background:
    radial-gradient(circle at 10% 0%, color-mix(in srgb, var(--driver-status-accent) 18%, transparent) 0, transparent 58%),
    linear-gradient(180deg, color-mix(in srgb, var(--driver-status-accent) 14%, rgba(15,23,42,.92)) 0%, rgba(3,10,24,.82) 100%);
  box-shadow:0 10px 22px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.075);
  color:#f8fafc;
}
body.app-shell.dashboard-shell .ride-driver-status::before{
  content:'';
  position:absolute;
  left:0;
  top:8px;
  bottom:8px;
  width:3px;
  border-radius:999px;
  background:linear-gradient(180deg, color-mix(in srgb, var(--driver-status-accent) 82%, #fff), var(--driver-status-accent));
  box-shadow:0 0 16px color-mix(in srgb, var(--driver-status-accent) 45%, transparent);
}
body.app-shell.dashboard-shell .ride-driver-status__kicker{
  grid-area:kicker;
  color:#b8c7d9;
  font-size:.56rem;
  line-height:1;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.09em;
}
body.app-shell.dashboard-shell .ride-driver-status__title{
  grid-area:title;
  min-width:0;
  color:#ffffff;
  font-size:.82rem;
  line-height:1.16;
  font-weight:950;
  letter-spacing:-.015em;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.app-shell.dashboard-shell .ride-driver-status__meta{
  grid-area:meta;
  justify-self:end;
  display:inline-flex;
  align-items:center;
  gap:5px;
  max-width:148px;
  min-height:26px;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(2,6,23,.34);
  color:#c8d7e8;
  font-size:.62rem;
  line-height:1.1;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.app-shell.dashboard-shell .ride-driver-status__meta b{
  color:#ffffff;
  font-size:.72rem;
  font-weight:950;
  letter-spacing:-.01em;
}
body.app-shell.dashboard-shell .ride-driver-status--confirmed{--driver-status-accent:#60a5fa;}
body.app-shell.dashboard-shell .ride-driver-status--en_route{--driver-status-accent:#2dd4bf;}
body.app-shell.dashboard-shell .ride-driver-status--in_progress{--driver-status-accent:#34d399;}
body.app-shell.dashboard-shell .ride-driver-status--completed{--driver-status-accent:#94a3b8;}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .ride-driver-status{
  margin:0 24px 6px 0;
  padding:6px 9px 6px 11px;
  border-radius:12px;
  grid-template-columns:minmax(0,1fr) auto;
}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .ride-driver-status__kicker{
  display:none;
}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .ride-driver-status__title{
  font-size:.74rem;
}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .ride-driver-status__meta{
  min-height:22px;
  max-width:118px;
  font-size:.56rem;
  padding:3px 7px;
}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .ride-driver-status__meta b{
  font-size:.64rem;
}
@media (max-width:720px){
  body.app-shell.dashboard-shell .ride-driver-status{
    grid-template-columns:1fr;
    grid-template-areas:"kicker" "title" "meta";
    margin-right:24px;
  }
  body.app-shell.dashboard-shell .ride-driver-status__meta{
    justify-self:start;
    max-width:100%;
  }
}

/* v919: Fahrerstatus aus Disponenten-Sicht im sichtbaren Kopf der geschlossenen Tourkachel */
body.app-shell.dashboard-shell .ride-main-fields{
  grid-template-areas:
    "time head"
    "status status"
    "route route" !important;
}
body.app-shell.dashboard-shell .ride-driver-status{
  grid-area:status !important;
  --driver-status-accent:#60a5fa;
  position:relative !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  grid-template-areas:"title meta" !important;
  align-items:center !important;
  column-gap:10px !important;
  width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
  margin:1px 0 0 !important;
  padding:7px 9px 7px 12px !important;
  border-radius:13px !important;
  border:1px solid color-mix(in srgb, var(--driver-status-accent) 42%, rgba(255,255,255,.13)) !important;
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--driver-status-accent) 30%, rgba(15,23,42,.96)) 0%, rgba(15,23,42,.88) 42%, rgba(3,7,18,.78) 100%),
    radial-gradient(circle at 8% 0%, color-mix(in srgb, var(--driver-status-accent) 30%, transparent) 0, transparent 60%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09), 0 8px 18px rgba(0,0,0,.18) !important;
  color:#f8fafc !important;
  overflow:visible !important;
}
body.app-shell.dashboard-shell .ride-driver-status::before{
  content:'' !important;
  position:absolute !important;
  left:0 !important;
  top:7px !important;
  bottom:7px !important;
  width:3px !important;
  border-radius:999px !important;
  background:linear-gradient(180deg, color-mix(in srgb, var(--driver-status-accent) 86%, #fff), var(--driver-status-accent)) !important;
  box-shadow:0 0 14px color-mix(in srgb, var(--driver-status-accent) 48%, transparent) !important;
}
body.app-shell.dashboard-shell .ride-driver-status__kicker{
  display:none !important;
}
body.app-shell.dashboard-shell .ride-driver-status__title{
  grid-area:title !important;
  min-width:0 !important;
  color:#ffffff !important;
  font-size:.78rem !important;
  line-height:1.18 !important;
  font-weight:950 !important;
  letter-spacing:-.01em !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
}
body.app-shell.dashboard-shell .ride-driver-status__meta{
  grid-area:meta !important;
  justify-self:end !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:5px !important;
  max-width:none !important;
  min-height:24px !important;
  padding:4px 8px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.16) !important;
  background:rgba(2,6,23,.42) !important;
  color:#dbeafe !important;
  font-size:.58rem !important;
  line-height:1.1 !important;
  font-weight:850 !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
}
body.app-shell.dashboard-shell .ride-driver-status__meta b{
  color:#ffffff !important;
  font-size:.66rem !important;
  font-weight:950 !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .ride-driver-status{
  margin:1px 0 0 !important;
  padding:7px 9px 7px 12px !important;
  border-radius:13px !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .ride-driver-status__title{
  font-size:.78rem !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .ride-driver-status__meta{
  max-width:none !important;
  min-height:24px !important;
  font-size:.58rem !important;
  padding:4px 8px !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .ride-driver-status__meta b{
  font-size:.66rem !important;
}
body.app-shell.dashboard-shell .ride-chip--state-confirmed{
  box-shadow:0 16px 34px rgba(2,6,23,.34), 0 0 0 1px rgba(96,165,250,.22), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body.app-shell.dashboard-shell .ride-chip--state-en_route{
  box-shadow:0 16px 34px rgba(2,6,23,.34), 0 0 0 1px rgba(45,212,191,.24), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body.app-shell.dashboard-shell .ride-chip--state-in_progress{
  box-shadow:0 16px 34px rgba(2,6,23,.34), 0 0 0 1px rgba(52,211,153,.24), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body.app-shell.dashboard-shell .ride-chip--state-completed{
  box-shadow:0 16px 34px rgba(2,6,23,.28), 0 0 0 1px rgba(148,163,184,.22), inset 0 1px 0 rgba(255,255,255,.07) !important;
}
@media (max-width:720px){
  body.app-shell.dashboard-shell .ride-driver-status{
    grid-template-columns:1fr !important;
    grid-template-areas:"title" "meta" !important;
    row-gap:5px !important;
  }
  body.app-shell.dashboard-shell .ride-driver-status__meta{
    justify-self:start !important;
  }
}

/* v920: Fahrerstatus sichtbar im geschlossenen Tourkachel-Kopf, nicht im Detailbereich */
body.app-shell.dashboard-shell .ride-main-fields{
  grid-template-columns:62px minmax(0,1fr) !important;
  grid-template-areas:
    "time head"
    "status status"
    "route route" !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .ride-main-fields,
body.app-shell.dashboard-shell .order-card.is-ride-collapsed .ride-main-fields{
  grid-template-columns:62px minmax(0,1fr) !important;
  grid-template-areas:
    "time head"
    "status status"
    "route route" !important;
  gap:5px 8px !important;
}
body.app-shell.dashboard-shell .chip-v2-status-bar{
  --driver-status-accent:#60a5fa;
  grid-area:status !important;
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
  margin:1px 0 1px 0 !important;
  padding:7px 10px 7px 12px !important;
  border-radius:13px !important;
  border:1px solid color-mix(in srgb, var(--driver-status-accent) 42%, rgba(255,255,255,.14)) !important;
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--driver-status-accent) 30%, rgba(15,23,42,.96)) 0%, rgba(15,23,42,.88) 45%, rgba(3,7,18,.78) 100%),
    radial-gradient(circle at 8% 0%, color-mix(in srgb, var(--driver-status-accent) 26%, transparent) 0, transparent 62%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10), 0 8px 18px rgba(0,0,0,.18) !important;
  color:#f8fafc !important;
  overflow:visible !important;
  z-index:1 !important;
}
body.app-shell.dashboard-shell .chip-v2-status-bar__dot{
  flex:0 0 8px !important;
  width:8px !important;
  height:8px !important;
  border-radius:999px !important;
  background:linear-gradient(180deg, color-mix(in srgb, var(--driver-status-accent) 88%, #fff), var(--driver-status-accent)) !important;
  box-shadow:0 0 14px color-mix(in srgb, var(--driver-status-accent) 55%, transparent) !important;
}
body.app-shell.dashboard-shell .chip-v2-status-bar__label{
  display:block !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  color:#ffffff !important;
  font-size:.78rem !important;
  line-height:1.22 !important;
  font-weight:900 !important;
  letter-spacing:-.012em !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  word-break:normal !important;
}
body.app-shell.dashboard-shell .driver-bar--confirmed{--driver-status-accent:#60a5fa;}
body.app-shell.dashboard-shell .driver-bar--en_route{--driver-status-accent:#2dd4bf;}
body.app-shell.dashboard-shell .driver-bar--in_progress{--driver-status-accent:#34d399;}
body.app-shell.dashboard-shell .driver-bar--completed{--driver-status-accent:#94a3b8;}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .chip-v2-status-bar,
body.app-shell.dashboard-shell .order-card.is-ride-collapsed .chip-v2-status-bar{
  margin:1px 0 1px !important;
  padding:6px 9px 6px 11px !important;
  border-radius:12px !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .chip-v2-status-bar__label,
body.app-shell.dashboard-shell .order-card.is-ride-collapsed .chip-v2-status-bar__label{
  font-size:.74rem !important;
  line-height:1.2 !important;
  white-space:normal !important;
  overflow:visible !important;
}

/* v921: Fahrerstatus als oberes Vollbreitenband und komplette Status-Tönung der Tourkachel.
   Nur Dashboard-Tourkacheln; keine Logikänderung. */
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-confirmed,
body.app-shell.dashboard-shell .order-card.ride-chip--state-confirmed{
  --driver-status-accent:#60a5fa;
  --ride-accent:#60a5fa;
  --ride-accent-soft:rgba(96,165,250,.22);
  --ride-card-bg-1:#142843;
  --ride-card-bg-2:#071626;
}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-en_route,
body.app-shell.dashboard-shell .order-card.ride-chip--state-en_route{
  --driver-status-accent:#2dd4bf;
  --ride-accent:#2dd4bf;
  --ride-accent-soft:rgba(45,212,191,.23);
  --ride-card-bg-1:#12363a;
  --ride-card-bg-2:#06191e;
}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-in_progress,
body.app-shell.dashboard-shell .order-card.ride-chip--state-in_progress{
  --driver-status-accent:#34d399;
  --ride-accent:#34d399;
  --ride-accent-soft:rgba(52,211,153,.23);
  --ride-card-bg-1:#143423;
  --ride-card-bg-2:#07190f;
}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-completed,
body.app-shell.dashboard-shell .order-card.ride-chip--state-completed{
  --driver-status-accent:#94a3b8;
  --ride-accent:#94a3b8;
  --ride-accent-soft:rgba(148,163,184,.18);
  --ride-card-bg-1:#1d2633;
  --ride-card-bg-2:#0b111a;
}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-confirmed,
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-en_route,
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-in_progress,
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-completed,
body.app-shell.dashboard-shell .order-card.ride-chip--state-confirmed,
body.app-shell.dashboard-shell .order-card.ride-chip--state-en_route,
body.app-shell.dashboard-shell .order-card.ride-chip--state-in_progress,
body.app-shell.dashboard-shell .order-card.ride-chip--state-completed{
  border-color:color-mix(in srgb, var(--driver-status-accent) 34%, rgba(180,207,238,.18)) !important;
  background:
    radial-gradient(120% 85% at 0% 0%, color-mix(in srgb, var(--driver-status-accent) 24%, transparent) 0%, transparent 46%),
    linear-gradient(180deg,
      color-mix(in srgb, var(--driver-status-accent) 13%, var(--ride-card-bg-1)) 0%,
      var(--ride-card-bg-2) 100%) !important;
  box-shadow:
    0 18px 36px rgba(0,0,0,.31),
    0 0 0 1px color-mix(in srgb, var(--driver-status-accent) 13%, transparent) inset,
    0 1px 0 rgba(255,255,255,.055) inset !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-confirmed::after,
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-en_route::after,
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-in_progress::after,
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-completed::after,
body.app-shell.dashboard-shell .order-card.ride-chip--state-confirmed::after,
body.app-shell.dashboard-shell .order-card.ride-chip--state-en_route::after,
body.app-shell.dashboard-shell .order-card.ride-chip--state-in_progress::after,
body.app-shell.dashboard-shell .order-card.ride-chip--state-completed::after{
  opacity:.95 !important;
  box-shadow:0 0 28px color-mix(in srgb, var(--driver-status-accent) 48%, transparent) !important;
}
body.app-shell.dashboard-shell .ride-main-fields,
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .ride-main-fields,
body.app-shell.dashboard-shell .order-card.is-ride-collapsed .ride-main-fields{
  grid-template-areas:none !important;
  grid-template-columns:62px minmax(0,1fr) !important;
}
body.app-shell.dashboard-shell .chip-v2-status-bar{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
  width:auto !important;
  min-width:0 !important;
  box-sizing:border-box !important;
  margin:-12px -12px 10px -15px !important;
  padding:9px 38px 9px 16px !important;
  border-radius:18px 18px 12px 12px !important;
  border:0 !important;
  border-bottom:1px solid color-mix(in srgb, var(--driver-status-accent) 40%, rgba(255,255,255,.14)) !important;
  background:
    linear-gradient(90deg,
      color-mix(in srgb, var(--driver-status-accent) 78%, #0f172a) 0%,
      color-mix(in srgb, var(--driver-status-accent) 42%, #111827) 48%,
      rgba(15,23,42,.86) 100%),
    radial-gradient(circle at 14% -35%, rgba(255,255,255,.34) 0, transparent 46%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 10px 22px rgba(0,0,0,.20) !important;
  color:#ffffff !important;
  overflow:visible !important;
  z-index:3 !important;
}
body.app-shell.dashboard-shell .chip-v2-status-bar::after{
  content:'';
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:46%;
  pointer-events:none;
  border-radius:18px 18px 0 0;
  background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,0));
  opacity:.72;
}
body.app-shell.dashboard-shell .chip-v2-status-bar__dot{
  flex:0 0 9px !important;
  width:9px !important;
  height:9px !important;
  border-radius:999px !important;
  background:#ffffff !important;
  box-shadow:0 0 0 4px rgba(255,255,255,.13), 0 0 16px rgba(255,255,255,.48) !important;
  position:relative !important;
  z-index:1 !important;
}
body.app-shell.dashboard-shell .chip-v2-status-bar__label{
  position:relative !important;
  z-index:1 !important;
  display:block !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  color:#ffffff !important;
  font-size:.78rem !important;
  line-height:1.24 !important;
  font-weight:950 !important;
  letter-spacing:-.01em !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  word-break:normal !important;
  text-shadow:0 1px 2px rgba(0,0,0,.45) !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .chip-v2-status-bar,
body.app-shell.dashboard-shell .order-card.is-ride-collapsed .chip-v2-status-bar{
  margin:-9px -34px 8px -14px !important;
  padding:8px 38px 8px 15px !important;
  border-radius:17px 17px 12px 12px !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed .chip-v2-status-bar__label,
body.app-shell.dashboard-shell .order-card.is-ride-collapsed .chip-v2-status-bar__label{
  font-size:.74rem !important;
  line-height:1.2 !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-confirmed .chip-v2-time-pill,
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-en_route .chip-v2-time-pill,
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-in_progress .chip-v2-time-pill,
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-completed .chip-v2-time-pill,
body.app-shell.dashboard-shell .order-card.ride-chip--state-confirmed .chip-v2-time-pill,
body.app-shell.dashboard-shell .order-card.ride-chip--state-en_route .chip-v2-time-pill,
body.app-shell.dashboard-shell .order-card.ride-chip--state-in_progress .chip-v2-time-pill,
body.app-shell.dashboard-shell .order-card.ride-chip--state-completed .chip-v2-time-pill{
  background:linear-gradient(180deg, color-mix(in srgb, var(--driver-status-accent) 30%, rgba(255,255,255,.13)) 0%, rgba(15,23,42,.66) 100%) !important;
  border-color:color-mix(in srgb, var(--driver-status-accent) 42%, rgba(255,255,255,.18)) !important;
}

/* v933 mirror: Tourkachel-Fahrtartfooter als Vollbreitenabschluss.
   Muss nach alten Dashboard-Chip-Regeln stehen, damit der innere Chip nicht wieder als Pill erscheint. */
body.app-shell.dashboard-shell .ride-chip-v2 .chip-v2-kind-footer,
body.app-shell.dashboard-shell .order-card .chip-v2-kind-footer{
  position:relative !important;
  z-index:20 !important;
  flex:0 0 auto !important;
  align-self:stretch !important;
  display:block !important;
  box-sizing:border-box !important;
  width:calc(100% + 36px) !important;
  min-width:calc(100% + 36px) !important;
  max-width:none !important;
  margin:0 -18px 0 -18px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 0 16px 16px !important;
  overflow:hidden !important;
  background:transparent !important;
  box-shadow:none !important;
}
body.app-shell.dashboard-shell .ride-chip-v2 .chip-v2-kind-footer .ride-kind-line,
body.app-shell.dashboard-shell .order-card .chip-v2-kind-footer .ride-kind-line{
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:100% !important;
  max-width:none !important;
  min-height:30px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-top:1px solid rgba(255,255,255,.22) !important;
  border-radius:0 0 16px 16px !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18), inset 0 -1px 0 rgba(0,0,0,.24), 0 -1px 12px rgba(0,0,0,.16) !important;
}
body.app-shell.dashboard-shell .ride-chip-v2 .chip-v2-kind-footer .ride-kind-line.ride-kind-line--outbound,
body.app-shell.dashboard-shell .order-card .chip-v2-kind-footer .ride-kind-line.ride-kind-line--outbound,
body.app-shell.dashboard-shell .ride-chip-v2 .chip-v2-kind-footer .ride-kind-line[data-ride-direction="outbound"],
body.app-shell.dashboard-shell .order-card .chip-v2-kind-footer .ride-kind-line[data-ride-direction="outbound"]{
  background:linear-gradient(90deg,#1e3a8a 0%,#315bdc 54%,#5d78ff 100%) !important;
}
body.app-shell.dashboard-shell .ride-chip-v2 .chip-v2-kind-footer .ride-kind-line.ride-kind-line--return,
body.app-shell.dashboard-shell .order-card .chip-v2-kind-footer .ride-kind-line.ride-kind-line--return,
body.app-shell.dashboard-shell .ride-chip-v2 .chip-v2-kind-footer .ride-kind-line[data-ride-direction="return"],
body.app-shell.dashboard-shell .order-card .chip-v2-kind-footer .ride-kind-line[data-ride-direction="return"]{
  background:linear-gradient(90deg,#075985 0%,#0e7490 52%,#14b8a6 100%) !important;
}
body.app-shell.dashboard-shell .ride-chip-v2 .chip-v2-kind-footer .ride-kind-line::after,
body.app-shell.dashboard-shell .order-card .chip-v2-kind-footer .ride-kind-line::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  z-index:1 !important;
  background:linear-gradient(180deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,.07) 44%, rgba(0,0,0,.10) 100%), linear-gradient(100deg, transparent 0%, rgba(255,255,255,.12) 56%, transparent 72%) !important;
  opacity:.82 !important;
}
body.app-shell.dashboard-shell .ride-chip-v2 .chip-v2-kind-footer .ride-kind-line .transport-chip,
body.app-shell.dashboard-shell .order-card .chip-v2-kind-footer .ride-kind-line .transport-chip,
body.app-shell.dashboard-shell .ride-chip-v2 .chip-v2-kind-footer .ride-kind-line .transport-chip--kind,
body.app-shell.dashboard-shell .order-card .chip-v2-kind-footer .ride-kind-line .transport-chip--kind,
body.app-shell.dashboard-shell .ride-chip-v2 .chip-v2-kind-footer .ride-kind-line [class*="transport-chip"],
body.app-shell.dashboard-shell .order-card .chip-v2-kind-footer .ride-kind-line [class*="transport-chip"]{
  position:relative !important;
  z-index:2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:7px 46px 7px 22px !important;
  box-sizing:border-box !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  color:#ffffff !important;
  text-align:center !important;
  text-transform:uppercase !important;
  font-size:.66rem !important;
  font-weight:900 !important;
  letter-spacing:.045em !important;
  line-height:1.18 !important;
  text-shadow:0 1px 2px rgba(0,0,0,.42) !important;
}


/* v939: Fahrtarten-Verwaltung - Farbauswahl für Tourkachel-Balken */
body.app-shell.module-ci-v2 #rideTypeForm input[type="color"]{
  width:72px;
  min-width:72px;
  height:42px;
  padding:4px;
  border-radius:14px;
  cursor:pointer;
}
body.app-shell.module-ci-v2 #rideTypeForm .field-hint{
  display:block;
  margin-top:6px;
  color:#9fb0c9;
  font-size:.78rem;
  line-height:1.35;
}
body.app-shell.module-ci-v2 .ride-type-color-dot{
  display:inline-block;
  width:14px;
  height:14px;
  margin-right:8px;
  border-radius:999px;
  vertical-align:-2px;
  border:1px solid rgba(255,255,255,.34);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28);
}

/* v51: Fahreransicht Fahrten – CI-Veredelung ohne Layout-/Tablet-Formatbruch */
body.driver-fahrten-ci.driver-app-shell{
  background:
    radial-gradient(circle at 18% 0%, rgba(45,212,191,.16), transparent 34%),
    radial-gradient(circle at 85% 18%, rgba(96,165,250,.13), transparent 32%),
    linear-gradient(180deg,#071723 0%,#0a1d2b 46%,#071824 100%) !important;
  color:#eef7fb;
}
body.driver-fahrten-ci .driver-workspace.driver-workspace--fast{
  background:rgba(5,18,29,.54) !important;
  border-left:1px solid rgba(125,211,252,.10);
  border-right:1px solid rgba(125,211,252,.10);
  box-shadow:0 24px 70px rgba(0,0,0,.26);
}
body.driver-fahrten-ci .driver-workspace__sidebar.driver-workspace__sidebar--fast{
  background:
    linear-gradient(180deg, rgba(15,45,61,.96) 0%, rgba(8,27,40,.98) 58%, rgba(6,22,34,.99) 100%) !important;
  border-right:1px solid rgba(125,211,252,.16) !important;
  box-shadow:inset -1px 0 0 rgba(255,255,255,.04), 18px 0 42px rgba(0,0,0,.18);
}
body.driver-fahrten-ci .driver-workspace__topBlock{
  background:linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.038)) !important;
  border:1px solid rgba(170,219,255,.16) !important;
  border-radius:20px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 14px 34px rgba(0,0,0,.16);
}
body.driver-fahrten-ci .driver-workspace__topLine{
  color:rgba(238,247,251,.82);
}
body.driver-fahrten-ci .driver-workspace__topLine strong{
  color:#ffffff;
}
body.driver-fahrten-ci .driver-workspace__nav.driver-workspace__nav--full{
  gap:9px !important;
}
body.driver-fahrten-ci .driver-workspace__link{
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.028)) !important;
  border:1px solid rgba(170,219,255,.12) !important;
  color:rgba(238,247,251,.86) !important;
  border-radius:16px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
  transition:background .15s ease, border-color .15s ease, transform .15s ease, color .15s ease;
}
body.driver-fahrten-ci .driver-workspace__link:hover{
  background:linear-gradient(180deg, rgba(45,212,191,.12), rgba(59,130,246,.075)) !important;
  border-color:rgba(125,211,252,.28) !important;
  color:#ffffff !important;
}
body.driver-fahrten-ci .driver-workspace__link.is-active{
  background:linear-gradient(135deg, rgba(45,212,191,.88), rgba(59,130,246,.72)) !important;
  border-color:rgba(188,240,255,.48) !important;
  color:#04131d !important;
  box-shadow:0 12px 30px rgba(45,212,191,.19), inset 0 1px 0 rgba(255,255,255,.32);
}
body.driver-fahrten-ci .driver-workspace__actions .secondary-button{
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.035)) !important;
  border:1px solid rgba(170,219,255,.16) !important;
  color:#eef7fb !important;
  box-shadow:none !important;
}
body.driver-fahrten-ci .driver-workspace__content.driver-workspace__content--fast{
  background:
    radial-gradient(circle at 70% 0%, rgba(45,212,191,.08), transparent 34%),
    linear-gradient(180deg, rgba(12,34,48,.96) 0%, rgba(8,27,40,.99) 100%) !important;
}
body.driver-fahrten-ci .driver-workspace__contentHead{
  background:linear-gradient(180deg, rgba(14,40,56,.96), rgba(9,29,43,.94)) !important;
  border-bottom:1px solid rgba(125,211,252,.14) !important;
  box-shadow:0 16px 38px rgba(0,0,0,.16);
}
body.driver-fahrten-ci .driver-workspace__frameWrap--fahrten .driver-fahrten-scroll{
  background:
    linear-gradient(180deg, rgba(255,255,255,.018), rgba(255,255,255,0) 120px) !important;
}
body.driver-fahrten-ci .driver-ride-panel.driver-ride-panel--fit{
  background:
    linear-gradient(180deg, rgba(18,52,69,.94), rgba(10,33,48,.98)) !important;
  border:1px solid rgba(125,211,252,.20) !important;
  border-radius:30px !important;
  box-shadow:0 22px 54px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.055) !important;
  color:#eef7fb !important;
}
body.driver-fahrten-ci .driver-ride-panel--muted{
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03)) !important;
}
body.driver-fahrten-ci .driver-ride-panel-head{
  padding-bottom:12px;
  border-bottom:1px solid rgba(125,211,252,.12);
}
body.driver-fahrten-ci .driver-stage-head{
  color:#ffffff;
  font-weight:850;
  letter-spacing:.01em;
}
body.driver-fahrten-ci .driver-kicker,
body.driver-fahrten-ci .driver-kicker--state{
  color:#82e6d8 !important;
  font-weight:850;
  letter-spacing:.075em;
}
body.driver-fahrten-ci .driver-hero-stack{
  padding:18px;
  border-radius:24px;
  background:
    radial-gradient(circle at 12% 15%, rgba(45,212,191,.16), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
  border:1px solid rgba(170,219,255,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.065);
}
body.driver-fahrten-ci .driver-hero-topline{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:8px 12px;
}
body.driver-fahrten-ci .driver-time-label--hero{
  color:rgba(238,247,251,.72);
  font-size:.78rem;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.08em;
}
body.driver-fahrten-ci .driver-time-large--hero{
  display:inline-flex;
  align-items:center;
  min-height:52px;
  padding:0 18px;
  border-radius:18px;
  background:linear-gradient(135deg, rgba(45,212,191,.30), rgba(59,130,246,.22));
  border:1px solid rgba(125,211,252,.28);
  color:#ffffff !important;
  text-shadow:0 1px 10px rgba(0,0,0,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10);
}
body.driver-fahrten-ci .driver-patient-name{
  color:#ffffff !important;
  text-shadow:0 1px 16px rgba(0,0,0,.20);
  margin-top:14px !important;
}
body.driver-fahrten-ci .driver-phone-drop__summary{
  color:#dff9ff;
}
body.driver-fahrten-ci .driver-transport-line--hero{
  display:inline-flex;
  align-self:flex-start;
  padding:9px 14px;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(96,165,250,.20), rgba(45,212,191,.14));
  border:1px solid rgba(125,211,252,.18);
  color:#eef7fb;
}
body.driver-fahrten-ci .driver-facts--focus{
  gap:12px !important;
}
body.driver-fahrten-ci .driver-fact,
body.driver-fahrten-ci .driver-address-block{
  background:linear-gradient(180deg, rgba(255,255,255,.064), rgba(255,255,255,.032)) !important;
  border:1px solid rgba(170,219,255,.14) !important;
  border-radius:20px !important;
}
body.driver-fahrten-ci .driver-fact span,
body.driver-fahrten-ci .driver-address-block span,
body.driver-fahrten-ci .driver-address-block small{
  color:rgba(190,230,246,.76) !important;
}
body.driver-fahrten-ci .driver-fact strong,
body.driver-fahrten-ci .driver-address-block strong,
body.driver-fahrten-ci .driver-summary-line strong{
  color:#ffffff !important;
}
body.driver-fahrten-ci .driver-plan-box{
  background:linear-gradient(180deg, rgba(3,17,27,.40), rgba(3,17,27,.18)) !important;
  border:1px solid rgba(125,211,252,.13) !important;
  border-radius:22px !important;
  overflow:hidden;
}
body.driver-fahrten-ci .driver-summary-line{
  border-bottom-color:rgba(170,219,255,.10) !important;
}
body.driver-fahrten-ci .driver-summary-line span{
  color:rgba(190,230,246,.74) !important;
}
body.driver-fahrten-ci .driver-late-banner{
  background:linear-gradient(135deg, rgba(239,68,68,.28), rgba(251,146,60,.16));
  border:1px solid rgba(248,113,113,.32);
  color:#fee2e2;
  border-radius:16px;
}
body.driver-fahrten-ci .driver-workspace__bottomBar{
  background:linear-gradient(180deg, rgba(8,27,40,0), rgba(8,27,40,.92) 24%, rgba(8,27,40,.99)) !important;
  border-top:1px solid rgba(125,211,252,.13) !important;
  box-shadow:0 -18px 42px rgba(0,0,0,.18) !important;
}
body.driver-fahrten-ci .driver-workspace__contentActions .primary-button{
  background:linear-gradient(135deg,#35e2b2,#2aa8ff) !important;
  color:#04131d !important;
  border:1px solid rgba(220,252,255,.35) !important;
  box-shadow:0 18px 38px rgba(45,212,191,.22), inset 0 1px 0 rgba(255,255,255,.36) !important;
}
body.driver-fahrten-ci .driver-workspace__contentActions .secondary-button{
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04)) !important;
  border:1px solid rgba(170,219,255,.17) !important;
  color:#eef7fb !important;
  box-shadow:none !important;
}
body.driver-fahrten-ci input,
body.driver-fahrten-ci select,
body.driver-fahrten-ci textarea{
  background:rgba(4,18,29,.72) !important;
  border:1px solid rgba(170,219,255,.18) !important;
  color:#eef7fb !important;
}
body.driver-fahrten-ci input::placeholder,
body.driver-fahrten-ci textarea::placeholder{
  color:rgba(190,230,246,.46) !important;
}
body.driver-fahrten-ci input:focus,
body.driver-fahrten-ci select:focus,
body.driver-fahrten-ci textarea:focus{
  outline:none !important;
  border-color:rgba(45,212,191,.58) !important;
  box-shadow:0 0 0 3px rgba(45,212,191,.13) !important;
}
@media (max-width:1100px){
  body.driver-fahrten-ci .driver-workspace.driver-workspace--fast{
    width:100% !important;
    border-left:0;
    border-right:0;
    box-shadow:none;
  }
  body.driver-fahrten-ci .driver-workspace__sidebar.driver-workspace__sidebar--fast{
    border-right:0 !important;
    border-bottom:1px solid rgba(125,211,252,.14) !important;
    box-shadow:0 14px 34px rgba(0,0,0,.18) !important;
  }
  body.driver-fahrten-ci .driver-ride-panel.driver-ride-panel--fit{
    border-radius:24px !important;
  }
  body.driver-fahrten-ci .driver-hero-stack{
    padding:14px;
    border-radius:20px;
  }
  body.driver-fahrten-ci .driver-time-large--hero{
    min-height:48px;
    padding:0 14px;
  }
}

/* v52: Fahrerverbund-Seiten und Fahrerhinweise an aktuelles CI angepasst – ohne Tablet-Layoutbruch */
body.driver-fahrten-ci .driver-step-card,
body.driver-fahrten-ci .driver-followup-card,
body.driver-fahrten-ci .driver-menu-content-card,
body.driver-fahrten-ci .driver-today-item,
body.driver-fahrten-ci .driver-collective-tour,
body.driver-fahrten-ci .driver-collective-row,
body.driver-fahrten-ci .driver-phone-drop,
body.driver-fahrten-ci .driver-plan-box,
body.driver-fahrten-ci .driver-basis-note{
  background:linear-gradient(180deg, rgba(18,52,69,.92), rgba(9,31,46,.96)) !important;
  border:1px solid rgba(125,211,252,.18) !important;
  color:#eef7fb !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055), 0 14px 34px rgba(0,0,0,.18) !important;
}
body.driver-fahrten-ci .driver-step-card--notice-blue,
body.driver-fahrten-ci .driver-basis-note,
body.driver-fahrten-ci .driver-workflow-card{
  background:
    linear-gradient(135deg, rgba(59,130,246,.20), rgba(45,212,191,.10)),
    linear-gradient(180deg, rgba(17,48,66,.96), rgba(8,29,43,.98)) !important;
  border-color:rgba(125,211,252,.28) !important;
}
body.driver-fahrten-ci .driver-step-card--alert,
body.driver-fahrten-ci .driver-removed-minimal-card,
body.driver-fahrten-ci .driver-workflow-card--critical,
body.driver-fahrten-ci .driver-workflow-card--alert{
  background:
    linear-gradient(135deg, rgba(239,68,68,.22), rgba(251,146,60,.12)),
    linear-gradient(180deg, rgba(55,24,34,.96), rgba(30,19,30,.98)) !important;
  border-color:rgba(248,113,113,.32) !important;
  color:#fff1f2 !important;
}
body.driver-fahrten-ci .driver-step-card--notice-blue .driver-alert__title,
body.driver-fahrten-ci .driver-step-card--alert .driver-alert__title,
body.driver-fahrten-ci .driver-basis-note .driver-alert__title,
body.driver-fahrten-ci .driver-workflow-card__title,
body.driver-fahrten-ci .driver-removed-minimal-card .driver-alert__title{
  color:#ffffff !important;
  font-weight:900 !important;
  letter-spacing:.01em;
}
body.driver-fahrten-ci .driver-alert__text,
body.driver-fahrten-ci .order-meta,
body.driver-fahrten-ci .driver-removed-card__meta,
body.driver-fahrten-ci .driver-file-hint,
body.driver-fahrten-ci .driver-followup-selected__meta,
body.driver-fahrten-ci .driver-collective-tour__hint{
  color:rgba(220,241,250,.84) !important;
  line-height:1.42;
}
body.driver-fahrten-ci .driver-followup-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px !important;
}
body.driver-fahrten-ci .driver-followup-grid__full{
  grid-column:1 / -1;
}
body.driver-fahrten-ci .driver-followup-search{
  grid-column:1 / -1;
  display:grid;
  gap:8px;
  max-height:220px;
  overflow:auto;
  padding:8px;
  border-radius:18px;
  background:rgba(3,17,27,.50) !important;
  border:1px solid rgba(125,211,252,.14) !important;
}
body.driver-fahrten-ci .driver-followup-search__item{
  display:grid;
  gap:3px;
  width:100%;
  text-align:left;
  padding:10px 12px;
  border-radius:14px;
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.035));
  border:1px solid rgba(170,219,255,.13);
  color:#eef7fb;
}
body.driver-fahrten-ci .driver-followup-search__item strong{color:#ffffff;font-weight:850;}
body.driver-fahrten-ci .driver-followup-search__item span{color:rgba(190,230,246,.74);}
body.driver-fahrten-ci .driver-followup-search__item:hover,
body.driver-fahrten-ci .driver-followup-search__item:focus{
  outline:none;
  background:linear-gradient(135deg, rgba(45,212,191,.18), rgba(59,130,246,.12));
  border-color:rgba(125,211,252,.34);
}
body.driver-fahrten-ci .driver-followup-selected,
body.driver-fahrten-ci .driver-followup-saved,
body.driver-fahrten-ci .driver-file-hint{
  padding:12px 14px;
  border-radius:16px;
  background:rgba(3,17,27,.36) !important;
  border:1px solid rgba(125,211,252,.13) !important;
  color:#eef7fb !important;
}
body.driver-fahrten-ci .driver-followup-selected strong,
body.driver-fahrten-ci .driver-followup-saved strong{color:#ffffff;}
body.driver-fahrten-ci .driver-check--dark{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(3,17,27,.34);
  border:1px solid rgba(125,211,252,.13);
  color:#eef7fb;
}
body.driver-fahrten-ci .driver-check--dark input{width:20px;height:20px;accent-color:#35e2b2;}
body.driver-fahrten-ci .driver-today-list{gap:12px !important;}
body.driver-fahrten-ci .driver-today-item{
  border-radius:20px !important;
  padding:14px !important;
}
body.driver-fahrten-ci .driver-today-item__top strong,
body.driver-fahrten-ci .driver-today-item__patient,
body.driver-fahrten-ci .driver-today-item__addr strong,
body.driver-fahrten-ci .driver-collective-row__top strong,
body.driver-fahrten-ci .driver-collective-row__addr strong{
  color:#ffffff !important;
}
body.driver-fahrten-ci .driver-today-item__top span,
body.driver-fahrten-ci .driver-today-item__meta,
body.driver-fahrten-ci .driver-today-item__addr span,
body.driver-fahrten-ci .driver-collective-row__meta,
body.driver-fahrten-ci .driver-collective-row__addr span{
  color:rgba(190,230,246,.76) !important;
}
body.driver-fahrten-ci .driver-collective-tour{
  border-radius:22px !important;
  padding:14px !important;
}
body.driver-fahrten-ci .driver-collective-row{
  border-radius:18px !important;
  padding:12px !important;
}
body.driver-fahrten-ci .driver-collective-row.is-current{
  border-color:rgba(45,212,191,.42) !important;
  background:linear-gradient(135deg, rgba(45,212,191,.18), rgba(59,130,246,.10)) !important;
}
body.driver-fahrten-ci .driver-inline-actions,
body.driver-fahrten-ci .driver-photo-actions,
body.driver-fahrten-ci .driver-basis-note__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
body.driver-fahrten-ci .driver-inline-actions .primary-button,
body.driver-fahrten-ci .driver-inline-actions .secondary-button,
body.driver-fahrten-ci .driver-photo-actions .secondary-button,
body.driver-fahrten-ci .driver-basis-note__actions .primary-button,
body.driver-fahrten-ci .driver-basis-note__actions .secondary-button{
  min-height:46px;
  border-radius:15px;
  font-weight:850;
}
body.driver-fahrten-ci .driver-confirm-backdrop,
body.driver-app-shell.driver-app-shell--dark .driver-confirm-backdrop{
  background:rgba(2,8,16,.72) !important;
  backdrop-filter:blur(10px) saturate(118%) !important;
}
body.driver-fahrten-ci .driver-confirm-modal,
body.driver-app-shell.driver-app-shell--dark .driver-confirm-modal{
  background:
    radial-gradient(circle at 12% 0%, rgba(45,212,191,.15), transparent 34%),
    linear-gradient(180deg, rgba(18,52,69,.98), rgba(8,27,40,.99)) !important;
  border:1px solid rgba(125,211,252,.24) !important;
  color:#eef7fb !important;
  border-radius:26px !important;
  box-shadow:0 30px 90px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
body.driver-fahrten-ci .driver-confirm-modal .driver-stage-head,
body.driver-app-shell.driver-app-shell--dark .driver-confirm-modal .driver-stage-head{
  color:#ffffff !important;
  font-weight:900 !important;
}
body.driver-fahrten-ci .driver-confirm-modal .driver-alert__text,
body.driver-app-shell.driver-app-shell--dark .driver-confirm-modal .driver-alert__text{
  color:rgba(220,241,250,.86) !important;
}
body.driver-fahrten-ci .driver-confirm-modal__actions .primary-button{
  background:linear-gradient(135deg,#35e2b2,#2aa8ff) !important;
  color:#04131d !important;
  border-color:rgba(220,252,255,.35) !important;
}
body.driver-fahrten-ci .driver-confirm-modal__actions .secondary-button{
  background:rgba(255,255,255,.07) !important;
  color:#eef7fb !important;
  border-color:rgba(170,219,255,.18) !important;
}
body.driver-app-shell:not(.driver-fahrten-ci) .driver-phone.driver-phone--dark,
body.driver-app-shell:not(.driver-fahrten-ci) .driver-phone.driver-login-shell{
  background:
    radial-gradient(circle at 18% 0%, rgba(45,212,191,.13), transparent 34%),
    linear-gradient(180deg, rgba(10,31,45,.98), rgba(7,20,32,.99)) !important;
  color:#eef7fb;
}
body.driver-app-shell:not(.driver-fahrten-ci) .driver-menu-button,
body.driver-app-shell:not(.driver-fahrten-ci) .driver-step-card--dark,
body.driver-app-shell:not(.driver-fahrten-ci) .driver-shell-card{
  background:linear-gradient(180deg, rgba(18,52,69,.92), rgba(9,31,46,.96)) !important;
  border:1px solid rgba(125,211,252,.18) !important;
  color:#eef7fb !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055), 0 14px 34px rgba(0,0,0,.18) !important;
}
body.driver-app-shell:not(.driver-fahrten-ci) .driver-brand,
body.driver-app-shell:not(.driver-fahrten-ci) .driver-stage-head,
body.driver-app-shell:not(.driver-fahrten-ci) .driver-alert__title{
  color:#ffffff !important;
}
body.driver-app-shell:not(.driver-fahrten-ci) .driver-subline,
body.driver-app-shell:not(.driver-fahrten-ci) .driver-alert__text{
  color:rgba(220,241,250,.84) !important;
}
body.driver-app-shell:not(.driver-fahrten-ci) .driver-menu-button:hover,
body.driver-app-shell:not(.driver-fahrten-ci) .driver-menu-button:focus{
  outline:none;
  background:linear-gradient(135deg, rgba(45,212,191,.18), rgba(59,130,246,.12)) !important;
  border-color:rgba(125,211,252,.32) !important;
}
body.dienst-morgen-app-body,
body.driver-next-shell{
  background:
    radial-gradient(circle at 16% 0%, rgba(45,212,191,.13), transparent 34%),
    radial-gradient(circle at 86% 18%, rgba(96,165,250,.12), transparent 30%),
    linear-gradient(180deg,#071723 0%,#0a1d2b 52%,#071824 100%) !important;
  color:#eef7fb !important;
}
body.dienst-morgen-app-body .dienst-morgen-app-card,
body.driver-next-shell .driver-next-card,
body.dienst-morgen-app-body .driver-next-grid > *,
body.driver-next-shell .driver-next-grid > *{
  background:linear-gradient(180deg, rgba(18,52,69,.92), rgba(9,31,46,.96)) !important;
  border:1px solid rgba(125,211,252,.18) !important;
  color:#eef7fb !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055), 0 16px 38px rgba(0,0,0,.20) !important;
}
body.dienst-morgen-app-body h1,
body.dienst-morgen-app-body h2,
body.dienst-morgen-app-body .dienst-morgen-app-brand,
body.driver-next-shell h1,
body.driver-next-shell h2{
  color:#ffffff !important;
}
body.dienst-morgen-app-body p,
body.dienst-morgen-app-body label,
body.driver-next-shell p,
body.driver-next-shell .driver-next-state{
  color:rgba(220,241,250,.84) !important;
}
body.dienst-morgen-app-body input,
body.dienst-morgen-app-body select,
body.dienst-morgen-app-body textarea{
  background:rgba(4,18,29,.72) !important;
  border:1px solid rgba(170,219,255,.18) !important;
  color:#eef7fb !important;
  border-radius:16px !important;
}
@media (max-width: 900px){
  body.driver-fahrten-ci .driver-followup-grid{grid-template-columns:1fr;}
  body.driver-fahrten-ci .driver-inline-actions,
  body.driver-fahrten-ci .driver-photo-actions,
  body.driver-fahrten-ci .driver-basis-note__actions{display:grid;grid-template-columns:1fr;}
}


/* v942: Fahreransicht Zahlungshinweise je Patient (Eigenanteil / Privatfahrt) */
body.driver-fahrten-ci .driver-payment-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 16px;
  border-radius:20px;
  border:1px solid rgba(125,211,252,.22);
  background:linear-gradient(135deg, rgba(45,212,191,.18), rgba(59,130,246,.12)), linear-gradient(180deg, rgba(13,47,62,.96), rgba(6,27,42,.98));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 14px 28px rgba(0,0,0,.18);
  color:#eef7fb;
}
body.driver-fahrten-ci .driver-payment-card--private{
  border-color:rgba(251,191,36,.34);
  background:linear-gradient(135deg, rgba(251,191,36,.20), rgba(245,158,11,.10)), linear-gradient(180deg, rgba(52,39,15,.96), rgba(25,24,28,.98));
}
body.driver-fahrten-ci .driver-payment-card__eyebrow{
  color:rgba(220,241,250,.72);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.10em;
  text-transform:uppercase;
}
body.driver-fahrten-ci .driver-payment-card__title{
  color:#ffffff;
  font-size:1rem;
  font-weight:900;
  line-height:1.14;
  margin-top:3px;
}
body.driver-fahrten-ci .driver-payment-card__meta{
  color:rgba(220,241,250,.78);
  font-size:.82rem;
  font-weight:700;
  margin-top:4px;
}
body.driver-fahrten-ci .driver-payment-card > strong{
  flex:0 0 auto;
  min-width:96px;
  text-align:center;
  padding:10px 12px;
  border-radius:16px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  color:#ffffff;
  font-size:1.08rem;
  font-weight:950;
  white-space:nowrap;
}
body.driver-fahrten-ci .driver-payment-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  max-width:100%;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(125,211,252,.20);
  background:linear-gradient(135deg, rgba(45,212,191,.16), rgba(59,130,246,.10));
  color:#eef7fb;
  font-size:.78rem;
  font-weight:850;
  line-height:1;
}
body.driver-fahrten-ci .driver-payment-pill--private{
  border-color:rgba(251,191,36,.30);
  background:linear-gradient(135deg, rgba(251,191,36,.20), rgba(245,158,11,.10));
}
body.driver-fahrten-ci .driver-payment-pill span{
  color:rgba(220,241,250,.72);
  font-size:.68rem;
  letter-spacing:.07em;
  text-transform:uppercase;
}
body.driver-fahrten-ci .driver-payment-pill strong{
  color:#ffffff;
  font-size:.84rem;
  white-space:nowrap;
}
body.driver-fahrten-ci .driver-transport-line--hero{
  flex-wrap:wrap;
  gap:8px;
}
body.driver-fahrten-ci .driver-today-item .driver-payment-pill,
body.driver-fahrten-ci .driver-collective-row .driver-payment-pill{
  margin-top:2px;
}
@media (max-width:760px){
  body.driver-fahrten-ci .driver-payment-card{
    align-items:flex-start;
    flex-direction:column;
  }
  body.driver-fahrten-ci .driver-payment-card > strong{
    min-width:0;
  }
}

/* 943: Dunkles Popup zur Betragsanpassung aus der Tourkachel */
.payment-edit-overlay{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(2,6,23,.74);backdrop-filter:blur(8px)}
.payment-edit-dialog{position:relative;width:min(440px,96vw);border:1px solid rgba(148,163,184,.28);border-radius:24px;background:linear-gradient(145deg,#0f172a,#111c31 58%,#0b1220);box-shadow:0 28px 90px rgba(0,0,0,.54),inset 0 1px 0 rgba(255,255,255,.08);padding:24px;color:#e5eefc}
.payment-edit-close{position:absolute;top:12px;right:14px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(148,163,184,.24);background:rgba(15,23,42,.74);color:#e2e8f0;font-size:1.25rem;cursor:pointer}
.payment-edit-head{display:grid;gap:4px;margin-right:36px;margin-bottom:18px}.payment-edit-head span{font-size:.74rem;text-transform:uppercase;letter-spacing:.1em;color:#8fb2e8;font-weight:900}.payment-edit-head strong{font-size:1.45rem;color:#fff}.payment-edit-head small{color:#aebbd0;font-weight:700}
.payment-edit-field{display:grid;gap:8px;margin:0 0 12px}.payment-edit-field span{font-size:.82rem;font-weight:900;color:#cbd5e1}.payment-edit-field input{width:100%;box-sizing:border-box;border:1px solid rgba(148,163,184,.28);border-radius:16px;background:linear-gradient(180deg,#101827,#0b1220);color:#fff;font-size:1.2rem;font-weight:900;padding:13px 14px;outline:none}.payment-edit-field input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px rgba(96,165,250,.18)}
.payment-edit-hint{border:1px solid rgba(148,163,184,.18);border-radius:16px;background:rgba(15,23,42,.55);padding:10px 12px;color:#b9c6d8;font-size:.86rem;line-height:1.4}.payment-edit-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}

/* TKBA 945: Zahlungsbeträge in planungsrelevanten Übersichten */
body.app-shell .summary-pill--warn{
  border-color:rgba(251,191,36,.36)!important;
  background:rgba(251,191,36,.12)!important;
  color:#fde68a!important;
}
body.app-shell .summary-pill--private{
  border-color:rgba(56,189,248,.34)!important;
  background:rgba(14,165,233,.12)!important;
  color:#bae6fd!important;
}

/* 952: Bewusste Bearbeitungsauswahl für Serien-/Hin-Rückfahrten */
.ride-edit-choice-overlay{
  position:fixed;
  inset:0;
  z-index:10050;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(2,6,23,.72);
  backdrop-filter:blur(12px);
}
.ride-edit-choice-dialog{
  width:min(680px,96vw);
  color:#f8fafc;
  background:linear-gradient(145deg,rgba(15,23,42,.98),rgba(15,31,54,.96));
  border:1px solid rgba(148,163,184,.28);
  border-radius:28px;
  box-shadow:0 28px 80px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.08);
  padding:22px;
}
.ride-edit-choice__head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px;}
.ride-edit-choice__eyebrow{display:block;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#7dd3fc;margin-bottom:5px;}
.ride-edit-choice__head h2{margin:0;color:#fff;font-size:1.32rem;line-height:1.2;}
.ride-edit-choice__close{width:36px;height:36px;border-radius:14px;border:1px solid rgba(148,163,184,.28);background:rgba(15,23,42,.78);color:#e5eefb;font-size:1.3rem;line-height:1;cursor:pointer;}
.ride-edit-choice__intro{margin:0 0 16px;color:#cbd5e1;line-height:1.5;}
.ride-edit-choice__list{display:grid;gap:12px;}
.ride-edit-choice__option{display:block;width:100%;text-align:left;padding:16px 18px;border-radius:20px;border:1px solid rgba(148,163,184,.22);background:linear-gradient(145deg,rgba(30,41,59,.94),rgba(15,23,42,.86));color:#f8fafc;box-shadow:inset 0 1px 0 rgba(255,255,255,.06);cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease;}
.ride-edit-choice__option:hover{transform:translateY(-1px);border-color:rgba(125,211,252,.55);background:linear-gradient(145deg,rgba(30,64,100,.96),rgba(15,23,42,.9));}
.ride-edit-choice__option strong{display:block;color:#fff;font-size:1rem;margin-bottom:4px;}
.ride-edit-choice__option span{display:block;color:#cbd5e1;font-size:.9rem;line-height:1.42;}
.ride-edit-choice__option--accent{border-color:rgba(168,85,247,.44);background:linear-gradient(145deg,rgba(59,7,100,.64),rgba(15,23,42,.9));}
.ride-edit-choice__footer{display:flex;justify-content:flex-end;margin-top:18px;}
.review-edit-scope-notice{max-width:1120px;margin:18px auto 0;border-radius:18px;padding:14px 18px;background:linear-gradient(135deg,rgba(14,116,144,.24),rgba(15,23,42,.92));border:1px solid rgba(125,211,252,.3);color:#dff7ff;box-shadow:0 14px 36px rgba(0,0,0,.22)}
.review-edit-scope-notice strong{color:#fff}
.module-card--focus-series{border-color:rgba(125,211,252,.72)!important;box-shadow:0 0 0 1px rgba(125,211,252,.35),0 24px 60px rgba(8,145,178,.18)!important;}

/* Serienfahrten: klare Status- und Verwaltungsansicht */
.series-admin-card {
  position: relative;
  overflow: hidden;
  display: grid;
  gap: 1rem;
  border-color: rgba(148, 163, 184, .22);
  background: linear-gradient(145deg, rgba(15, 23, 42, .96), rgba(11, 18, 32, .98));
}
.series-admin-card--active { box-shadow: 0 22px 50px rgba(15, 23, 42, .34), inset 4px 0 0 rgba(34, 197, 94, .85); }
.series-admin-card--paused { box-shadow: 0 22px 50px rgba(15, 23, 42, .34), inset 4px 0 0 rgba(245, 158, 11, .9); }
.series-admin-card--ended,
.series-admin-card--inactive { box-shadow: 0 22px 50px rgba(15, 23, 42, .34), inset 4px 0 0 rgba(148, 163, 184, .75); opacity: .96; }
.series-admin-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(230px, auto);
  gap: 1rem;
  align-items: start;
}
.series-admin-title {
  display: block;
  color: #f8fafc;
  font-size: 1.08rem;
  line-height: 1.25;
  letter-spacing: .01em;
}
.series-admin-subline {
  margin-top: .28rem;
  color: #cbd5e1;
  font-size: .9rem;
}
.series-admin-status {
  border-radius: 18px;
  padding: .72rem .85rem;
  border: 1px solid rgba(255,255,255,.12);
  color: #f8fafc;
  text-align: right;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 14px 26px rgba(0,0,0,.18);
}
.series-admin-status span {
  display: block;
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: rgba(248,250,252,.76);
}
.series-admin-status strong {
  display: block;
  margin-top: .18rem;
  color: #fff;
  font-size: .95rem;
  line-height: 1.25;
}
.series-admin-status--active { background: linear-gradient(135deg, rgba(22, 163, 74, .92), rgba(20, 83, 45, .86)); }
.series-admin-status--paused { background: linear-gradient(135deg, rgba(217, 119, 6, .95), rgba(120, 53, 15, .88)); }
.series-admin-status--ended,
.series-admin-status--inactive { background: linear-gradient(135deg, rgba(71, 85, 105, .95), rgba(30, 41, 59, .9)); }
.series-admin-overview,
.series-admin-statebox {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .75rem;
}
.series-admin-statebox { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.series-admin-overview > div,
.series-admin-statebox > div {
  min-width: 0;
  border: 1px solid rgba(148, 163, 184, .18);
  border-radius: 16px;
  background: rgba(15, 23, 42, .62);
  padding: .72rem .78rem;
}
.series-admin-overview span,
.series-admin-statebox span {
  display: block;
  color: #94a3b8;
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  margin-bottom: .24rem;
}
.series-admin-overview strong,
.series-admin-statebox strong {
  display: block;
  color: #f8fafc;
  font-size: .9rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
}
.series-admin-edit {
  max-width: 540px;
}
.series-admin-notes textarea {
  min-height: 82px;
  max-width: 760px;
}
.series-admin-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  justify-content: flex-end;
  align-items: center;
  border-top: 1px solid rgba(148, 163, 184, .16);
  padding-top: .85rem;
}
.series-admin-actions .danger,
.series-modal .danger {
  background: linear-gradient(135deg, #dc2626, #7f1d1d);
  color: #fff;
  border: 1px solid rgba(248, 113, 113, .35);
}
.series-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 6000;
  display: grid;
  place-items: center;
  padding: 1.2rem;
  background: rgba(2, 6, 23, .74);
  backdrop-filter: blur(8px);
}
.series-modal {
  width: min(620px, 100%);
  border-radius: 24px;
  border: 1px solid rgba(148, 163, 184, .22);
  background: linear-gradient(145deg, #111827, #0b1220);
  box-shadow: 0 28px 80px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.08);
  color: #f8fafc;
  overflow: hidden;
}
.series-modal header,
.series-modal footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.15rem;
  border-bottom: 1px solid rgba(148, 163, 184, .16);
}
.series-modal footer {
  border-top: 1px solid rgba(148, 163, 184, .16);
  border-bottom: 0;
  justify-content: flex-end;
}
.series-modal h2 {
  margin: 0;
  color: #f8fafc;
  font-size: 1.05rem;
}
.series-modal-close {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, .22);
  background: rgba(15, 23, 42, .72);
  color: #e2e8f0;
  font-size: 1.2rem;
}
.series-modal-body { padding: 1.15rem; }
.series-modal-form { display: grid; gap: .9rem; }
.series-modal-form label { color: #dbeafe; }
.series-modal-form input,
.series-modal-form textarea {
  width: 100%;
  box-sizing: border-box;
}
@media (max-width: 900px) {
  .series-admin-head,
  .series-admin-overview,
  .series-admin-statebox {
    grid-template-columns: 1fr;
  }
  .series-admin-status { text-align: left; }
  .series-admin-actions { justify-content: flex-start; }
}

/* TKBA956: Sticky-Tourköpfe stärker vom Tourkartenbereich abheben – royaler Vollflächenverlauf */
body.app-shell.dashboard-shell .vehicle-head-wrap{
  background:
    radial-gradient(circle at 14% 0%, rgba(96,165,250,.42), transparent 34%),
    linear-gradient(135deg, #0a2458 0%, #0f3f9d 42%, #123a88 68%, #081d49 100%) !important;
  border:1px solid rgba(155,196,255,.38) !important;
  border-bottom-color:rgba(79,140,255,.46) !important;
  box-shadow:
    0 18px 36px rgba(2,10,30,.42),
    0 0 0 1px rgba(255,255,255,.035) inset,
    0 1px 0 rgba(255,255,255,.14) inset !important;
  color:#f7fbff !important;
}
body.app-shell.dashboard-shell .vehicle-head-wrap::before{
  height:5px !important;
  opacity:.98 !important;
  box-shadow:0 1px 12px rgba(255,255,255,.18) !important;
}
body.app-shell.dashboard-shell .vehicle-head-shell{
  background:
    linear-gradient(135deg, rgba(255,255,255,.095), rgba(255,255,255,.025)) !important;
}
body.app-shell.dashboard-shell .vehicle-head-toggle{
  color:#f8fbff !important;
}
body.app-shell.dashboard-shell .vehicle-head-toggle:hover{
  background:rgba(255,255,255,.08) !important;
}
body.app-shell.dashboard-shell .vehicle-name,
body.app-shell.dashboard-shell .vehicle-plate-line strong,
body.app-shell.dashboard-shell .vehicle-crew-value,
body.app-shell.dashboard-shell .vehicle-tail-meta strong,
body.app-shell.dashboard-shell .vehicle-roster strong{
  color:#ffffff !important;
  text-shadow:0 1px 1px rgba(0,0,0,.28) !important;
}
body.app-shell.dashboard-shell .vehicle-shift-line,
body.app-shell.dashboard-shell .vehicle-plate-line,
body.app-shell.dashboard-shell .vehicle-crew-label,
body.app-shell.dashboard-shell .vehicle-tail-meta,
body.app-shell.dashboard-shell .vehicle-support-meta,
body.app-shell.dashboard-shell .vehicle-meta-line,
body.app-shell.dashboard-shell .vehicle-tools__hint,
body.app-shell.dashboard-shell .vehicle-roster-state{
  color:#d6e7ff !important;
}
body.app-shell.dashboard-shell .vehicle-roster .roster-field,
body.app-shell.dashboard-shell .vehicle-head-drop,
body.app-shell.dashboard-shell .vehicle-card-toolbar--sticky .mini-lock-all{
  background:rgba(6,19,48,.30) !important;
  border-color:rgba(185,214,255,.22) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body.app-shell.dashboard-shell .vehicle-card-toolbar--sticky{
  border-top-color:rgba(205,225,255,.18) !important;
}
body.app-shell.dashboard-shell .vehicle-card-toolbar--sticky .mini-lock-all:hover,
body.app-shell.dashboard-shell .vehicle-card-toolbar--sticky .mini-lock-all:focus-visible{
  background:rgba(255,255,255,.12) !important;
  border-color:rgba(205,225,255,.34) !important;
}

/* TKBA957: Sticky-Tourköpfe – dunklerer königsblauer Verlauf, Verlauf bleibt erhalten */
body.app-shell.dashboard-shell .vehicle-head-wrap{
  background:
    radial-gradient(circle at 14% 0%, rgba(59,130,246,.28), transparent 34%),
    linear-gradient(135deg, #061637 0%, #0a2a6f 42%, #0b245d 68%, #041128 100%) !important;
  border-color:rgba(96,165,250,.30) !important;
  border-bottom-color:rgba(59,130,246,.36) !important;
  box-shadow:
    0 18px 36px rgba(2,8,24,.50),
    0 0 0 1px rgba(255,255,255,.028) inset,
    0 1px 0 rgba(255,255,255,.10) inset !important;
  color:#f7fbff !important;
}
body.app-shell.dashboard-shell .vehicle-head-shell{
  background:linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.018)) !important;
}
body.app-shell.dashboard-shell .vehicle-head-toggle:hover{
  background:rgba(255,255,255,.065) !important;
}

/* tkba959 Sticky Head Crew: Fahrer/Beifahrer sauber zweizeilig */
body.app-shell.dashboard-shell .vehicle-head-main{
  grid-template-columns:minmax(0,1fr) minmax(160px,0.95fr) !important;
  gap:12px !important;
  align-items:start !important;
}
body.app-shell.dashboard-shell .vehicle-crew-summary{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:7px !important;
  min-width:0 !important;
  align-self:start !important;
}
body.app-shell.dashboard-shell .vehicle-crew-line{
  display:block !important;
  min-width:0 !important;
  line-height:1.08 !important;
  padding:0 !important;
  margin:0 !important;
}
body.app-shell.dashboard-shell .vehicle-crew-line br{
  display:block !important;
}
body.app-shell.dashboard-shell .vehicle-crew-label{
  display:block !important;
  margin:0 0 2px !important;
  font-size:.62rem !important;
  line-height:1.05 !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
  font-weight:850 !important;
  color:#cfe3ff !important;
}
body.app-shell.dashboard-shell .vehicle-crew-value{
  display:block !important;
  max-width:100% !important;
  min-width:0 !important;
  font-size:.78rem !important;
  line-height:1.08 !important;
  font-weight:900 !important;
  color:#ffffff !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}
@media (max-width: 1360px){
  body.app-shell.dashboard-shell .vehicle-head-main{
    grid-template-columns:minmax(0,.9fr) minmax(150px,1.1fr) !important;
    gap:10px !important;
  }
  body.app-shell.dashboard-shell .vehicle-crew-value{
    font-size:.74rem !important;
  }
}

/* TKBA960: Sticky Head Teamdaten sauber ausrichten, keine Überlappung/kein Kennzeichen-Umbruch */
body.app-shell.dashboard-shell .vehicle-head-main{
  display:grid !important;
  grid-template-columns:minmax(215px,1.05fr) minmax(210px,.95fr) !important;
  gap:14px !important;
  align-items:start !important;
}
body.app-shell.dashboard-shell .vehicle-head-left,
body.app-shell.dashboard-shell .vehicle-head-right,
body.app-shell.dashboard-shell .vehicle-crew-summary{
  min-width:0 !important;
}
body.app-shell.dashboard-shell .vehicle-head-shell .vehicle-plate-line strong,
body.app-shell.dashboard-shell .vehicle-plate-line,
body.app-shell.dashboard-shell .vehicle-shift-line{
  white-space:nowrap !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}
body.app-shell.dashboard-shell .vehicle-crew-summary{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:5px !important;
  align-self:start !important;
  justify-items:stretch !important;
  text-align:left !important;
}
body.app-shell.dashboard-shell .vehicle-crew-line{
  display:grid !important;
  grid-template-columns:72px minmax(0,1fr) !important;
  gap:8px !important;
  align-items:baseline !important;
  min-width:0 !important;
  line-height:1.18 !important;
  padding:0 !important;
  margin:0 !important;
}
body.app-shell.dashboard-shell .vehicle-crew-line br{
  display:none !important;
}
body.app-shell.dashboard-shell .vehicle-crew-label{
  display:block !important;
  margin:0 !important;
  font-size:.68rem !important;
  line-height:1.1 !important;
  letter-spacing:.045em !important;
  text-transform:uppercase !important;
  font-weight:850 !important;
  color:#cfe3ff !important;
  white-space:nowrap !important;
}
body.app-shell.dashboard-shell .vehicle-crew-value{
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  font-size:.78rem !important;
  line-height:1.16 !important;
  font-weight:900 !important;
  color:#fff !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}
@media (max-width: 1360px){
  body.app-shell.dashboard-shell .vehicle-head-main{
    grid-template-columns:minmax(195px,1fr) minmax(190px,1fr) !important;
    gap:12px !important;
  }
  body.app-shell.dashboard-shell .vehicle-crew-line{
    grid-template-columns:68px minmax(0,1fr) !important;
    gap:7px !important;
  }
  body.app-shell.dashboard-shell .vehicle-crew-value{
    font-size:.74rem !important;
  }
}

/* TKBA961: Sticky Head stabil als Zwei-Spalten-Layout ohne Überlauf */
body.app-shell.dashboard-shell .vehicle-head-toggle{
  grid-template-columns:minmax(0,1fr) 18px !important;
  gap:6px !important;
  align-items:start !important;
  padding:8px 8px 7px !important;
  overflow:hidden !important;
}
body.app-shell.dashboard-shell .vehicle-head-toggle::after{
  justify-self:end !important;
  align-self:start !important;
  margin-top:2px !important;
  line-height:1 !important;
}
body.app-shell.dashboard-shell .vehicle-head-core,
body.app-shell.dashboard-shell .vehicle-head-core--compact{
  min-width:0 !important;
  width:100% !important;
  overflow:hidden !important;
}
body.app-shell.dashboard-shell .vehicle-head-main{
  display:grid !important;
  grid-template-columns:minmax(0,0.92fr) minmax(0,1.08fr) !important;
  gap:12px !important;
  align-items:start !important;
  width:100% !important;
  min-width:0 !important;
  overflow:hidden !important;
}
body.app-shell.dashboard-shell .vehicle-head-left,
body.app-shell.dashboard-shell .vehicle-head-right,
body.app-shell.dashboard-shell .vehicle-crew-summary{
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
}
body.app-shell.dashboard-shell .vehicle-head-left{
  display:grid !important;
  gap:3px !important;
  align-content:start !important;
}
body.app-shell.dashboard-shell .vehicle-name-line{
  display:block !important;
  min-width:0 !important;
  overflow:hidden !important;
}
body.app-shell.dashboard-shell .vehicle-name{
  display:block !important;
  max-width:100% !important;
  font-size:1rem !important;
  line-height:1.12 !important;
  font-weight:900 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body.app-shell.dashboard-shell .vehicle-shift-line,
body.app-shell.dashboard-shell .vehicle-plate-line{
  display:block !important;
  max-width:100% !important;
  font-size:.72rem !important;
  line-height:1.18 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}
body.app-shell.dashboard-shell .vehicle-head-shell .vehicle-plate-line strong,
body.app-shell.dashboard-shell .vehicle-plate-line strong{
  display:inline !important;
  font-size:.78rem !important;
  line-height:1.18 !important;
  white-space:nowrap !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}
body.app-shell.dashboard-shell .vehicle-crew-summary{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:6px !important;
  align-content:start !important;
  justify-items:stretch !important;
  text-align:left !important;
}
body.app-shell.dashboard-shell .vehicle-crew-line{
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  padding:0 !important;
  margin:0 !important;
  line-height:1.12 !important;
  overflow:hidden !important;
}
body.app-shell.dashboard-shell .vehicle-crew-line br{
  display:block !important;
  content:"" !important;
}
body.app-shell.dashboard-shell .vehicle-crew-label{
  display:block !important;
  margin:0 0 1px !important;
  padding:0 !important;
  font-size:.66rem !important;
  line-height:1.05 !important;
  letter-spacing:.045em !important;
  text-transform:uppercase !important;
  font-weight:850 !important;
  color:#cfe3ff !important;
  white-space:nowrap !important;
}
body.app-shell.dashboard-shell .vehicle-crew-value{
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  font-size:.79rem !important;
  line-height:1.14 !important;
  font-weight:900 !important;
  color:#fff !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}
@media (max-width: 1360px){
  body.app-shell.dashboard-shell .vehicle-head-main{
    grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr) !important;
    gap:10px !important;
  }
  body.app-shell.dashboard-shell .vehicle-name{font-size:.94rem !important;}
  body.app-shell.dashboard-shell .vehicle-crew-value{font-size:.74rem !important;}
}
@media (max-width: 1120px){
  body.app-shell.dashboard-shell .vehicle-head-main{
    grid-template-columns:1fr !important;
    gap:7px !important;
  }
  body.app-shell.dashboard-shell .vehicle-crew-summary{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
  }
}

/* v963: Offene Fahrten gezielt in den Plan einfügen */
body.app-shell.dashboard-shell .open-panel .open-panel-actions{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
  margin:0 0 14px !important;
}
body.app-shell.dashboard-shell .open-panel .open-auto-insert-btn{
  width:100% !important;
  min-height:48px !important;
  padding:10px 14px !important;
  border-radius:16px !important;
  border:1px solid rgba(96,165,250,.40) !important;
  background:linear-gradient(180deg, rgba(37,99,235,.38), rgba(30,64,175,.26)) !important;
  color:#f8fbff !important;
  font-size:.86rem !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  letter-spacing:.005em !important;
  text-align:center !important;
  box-shadow:0 14px 30px rgba(15,23,42,.22), inset 0 1px 0 rgba(255,255,255,.10) !important;
  cursor:pointer !important;
}
body.app-shell.dashboard-shell .open-panel .open-auto-insert-btn:hover,
body.app-shell.dashboard-shell .open-panel .open-auto-insert-btn:focus-visible{
  border-color:rgba(147,197,253,.58) !important;
  background:linear-gradient(180deg, rgba(59,130,246,.46), rgba(30,64,175,.32)) !important;
  outline:2px solid rgba(96,165,250,.28) !important;
  outline-offset:2px !important;
}
body.app-shell.dashboard-shell .open-panel .open-auto-insert-btn:disabled{
  opacity:.68 !important;
  cursor:wait !important;
}
body.app-shell.dashboard-shell .board-floating-resort{display:none !important;}

/* v964: optische Drop-Zonen-Verlängerung für lange Dashboard-Schichten */
body.app-shell.dashboard-shell .vehicle-card{
  min-height:var(--vehicle-drop-min-height, calc(100vh - 132px)) !important;
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
}
body.app-shell.dashboard-shell .vehicle-card > .ride-list{
  min-height:var(--vehicle-drop-list-min-height, 320px) !important;
  flex:1 1 auto !important;
  position:relative !important;
  padding-bottom:18px !important;
}
body.app-shell.dashboard-shell .vehicle-card > .ride-list::before{
  content:'';
  position:absolute;
  left:5px;
  right:5px;
  top:4px;
  bottom:5px;
  border:1px dashed rgba(148,170,205,.22);
  border-radius:18px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,.008)),
    repeating-linear-gradient(135deg, rgba(148,170,205,.028) 0 1px, transparent 1px 14px);
  pointer-events:none;
  z-index:0;
}
body.app-shell.dashboard-shell .vehicle-card > .ride-list::after{
  content:attr(data-drop-label);
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  max-width:78%;
  padding:8px 15px;
  border-radius:999px;
  border:1px solid rgba(148,170,205,.14);
  color:rgba(203,213,225,.16);
  background:rgba(15,23,42,.18);
  font-weight:950;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-size:clamp(1.1rem, 2.2vw, 2.25rem);
  line-height:1;
  white-space:nowrap;
  pointer-events:none;
  z-index:0;
}
body.app-shell.dashboard-shell .vehicle-card > .ride-list > *{
  position:relative;
  z-index:1;
}
body.app-shell.dashboard-shell .vehicle-card.is-drop-ready > .ride-list::before{
  border-color:rgba(96,165,250,.38);
  background:
    linear-gradient(180deg, rgba(37,99,235,.055), rgba(15,23,42,.025)),
    repeating-linear-gradient(135deg, rgba(96,165,250,.05) 0 1px, transparent 1px 14px);
}
body.app-shell.dashboard-shell .vehicle-card.is-drop-ready > .ride-list::after{
  color:rgba(147,197,253,.22);
  border-color:rgba(96,165,250,.18);
}
body.app-shell.dashboard-shell .vehicle-card.is-over > .ride-list::before{
  border-color:rgba(96,165,250,.78);
  border-style:solid;
  background:
    linear-gradient(180deg, rgba(37,99,235,.14), rgba(15,23,42,.05)),
    repeating-linear-gradient(135deg, rgba(96,165,250,.09) 0 1px, transparent 1px 12px);
  box-shadow:inset 0 0 0 2px rgba(96,165,250,.12), 0 0 28px rgba(37,99,235,.12);
}
body.app-shell.dashboard-shell .vehicle-card.is-over > .ride-list::after{
  content:attr(data-drop-label);
  color:rgba(219,234,254,.56);
  background:rgba(30,64,175,.18);
  border-color:rgba(147,197,253,.32);
}
body.app-shell.dashboard-shell .vehicle-card .empty-state.small{
  position:relative;
  z-index:2;
}
@media (max-width:900px){
  body.app-shell.dashboard-shell .vehicle-card{
    min-height:auto !important;
  }
  body.app-shell.dashboard-shell .vehicle-card > .ride-list{
    min-height:220px !important;
  }
}

/* v965: Drop-Zonen nur als Hintergrund verlängern – Tourkacheln bleiben im normalen Fluss */
body.app-shell.dashboard-shell .vehicle-card > .ride-list{
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  align-items:stretch !important;
  align-content:flex-start !important;
  flex:0 0 auto !important;
  min-height:var(--vehicle-drop-list-min-height, 320px) !important;
  height:auto !important;
  position:relative !important;
  padding:0 0 18px !important;
  gap:8px !important;
  isolation:isolate !important;
}
body.app-shell.dashboard-shell .vehicle-card > .ride-list > .ride-chip-v2,
body.app-shell.dashboard-shell .vehicle-card > .ride-list > .collective-tour-block,
body.app-shell.dashboard-shell .vehicle-card > .ride-list > .drop-slot,
body.app-shell.dashboard-shell .vehicle-card > .ride-list > .empty-state{
  flex:0 0 auto !important;
  align-self:stretch !important;
  position:relative !important;
  z-index:2 !important;
}
body.app-shell.dashboard-shell .vehicle-card > .ride-list::before{
  z-index:0 !important;
  inset:0 2px 6px !important;
  border-color:rgba(148,170,205,.18) !important;
  background:
    linear-gradient(180deg, rgba(20,34,56,.30), rgba(20,34,56,.12)),
    repeating-linear-gradient(135deg, rgba(148,170,205,.024) 0 1px, transparent 1px 16px) !important;
}
body.app-shell.dashboard-shell .vehicle-card > .ride-list::after{
  z-index:0 !important;
  top:auto !important;
  bottom:28px !important;
  transform:translateX(-50%) !important;
  color:rgba(203,213,225,.105) !important;
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  font-size:clamp(1.05rem, 1.75vw, 1.75rem) !important;
  pointer-events:none !important;
}
body.app-shell.dashboard-shell .vehicle-card > .ride-list.ride-list--empty::after{
  bottom:18px !important;
  color:rgba(203,213,225,.075) !important;
  font-size:clamp(.95rem, 1.45vw, 1.35rem) !important;
}
body.app-shell.dashboard-shell .vehicle-card > .ride-list.ride-list--empty .empty-state.small{
  margin:8px 8px 0 !important;
  background:rgba(15,23,42,.48) !important;
  border-color:rgba(148,170,205,.20) !important;
  color:#cbd5e1 !important;
}
body.app-shell.dashboard-shell .vehicle-card.is-drop-ready > .ride-list::before{
  border-color:rgba(96,165,250,.32) !important;
  background:
    linear-gradient(180deg, rgba(37,99,235,.06), rgba(15,23,42,.03)),
    repeating-linear-gradient(135deg, rgba(96,165,250,.045) 0 1px, transparent 1px 16px) !important;
}
body.app-shell.dashboard-shell .vehicle-card.is-over > .ride-list::before{
  border-color:rgba(96,165,250,.70) !important;
  border-style:solid !important;
  background:
    linear-gradient(180deg, rgba(37,99,235,.13), rgba(15,23,42,.055)),
    repeating-linear-gradient(135deg, rgba(96,165,250,.085) 0 1px, transparent 1px 14px) !important;
  box-shadow:inset 0 0 0 2px rgba(96,165,250,.10), 0 0 26px rgba(37,99,235,.10) !important;
}
body.app-shell.dashboard-shell .vehicle-card.is-over > .ride-list::after{
  content:attr(data-drop-label) !important;
  bottom:30px !important;
  color:rgba(219,234,254,.34) !important;
  background:transparent !important;
  border:0 !important;
}


/* v966: scrollsichtbare, gleichmäßige Dropzonen-Wasserzeichen ohne Layout-Einfluss */
body.app-shell.dashboard-shell .vehicle-card > .ride-list::before{
  inset:0 2px 6px !important;
  border-color:rgba(148,170,205,.16) !important;
  background:
    linear-gradient(180deg, rgba(18,31,52,.28) 0%, rgba(18,31,52,.20) 48%, rgba(18,31,52,.24) 100%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025) !important;
}
body.app-shell.dashboard-shell .vehicle-card > .ride-list::after{
  content:attr(data-drop-label) !important;
  position:absolute !important;
  left:50% !important;
  top:var(--vehicle-drop-watermark-top, 52%) !important;
  bottom:auto !important;
  transform:translate(-50%,-50%) !important;
  max-width:78% !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:rgba(203,213,225,.115) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.025), 0 10px 28px rgba(15,23,42,.20) !important;
  font-weight:950 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  font-size:clamp(1.05rem, 1.75vw, 1.75rem) !important;
  line-height:1 !important;
  white-space:nowrap !important;
  pointer-events:none !important;
  z-index:0 !important;
}
body.app-shell.dashboard-shell .vehicle-card > .ride-list.ride-list--empty::after{
  top:var(--vehicle-drop-watermark-top-empty, var(--vehicle-drop-watermark-top, 58%)) !important;
  color:rgba(203,213,225,.105) !important;
  font-size:clamp(1.05rem, 1.75vw, 1.75rem) !important;
}
body.app-shell.dashboard-shell .vehicle-card.is-drop-ready > .ride-list::before{
  border-color:rgba(96,165,250,.30) !important;
  background:
    linear-gradient(180deg, rgba(37,99,235,.065) 0%, rgba(18,31,52,.20) 48%, rgba(18,31,52,.25) 100%) !important;
}
body.app-shell.dashboard-shell .vehicle-card.is-drop-ready > .ride-list::after{
  color:rgba(147,197,253,.18) !important;
}
body.app-shell.dashboard-shell .vehicle-card.is-over > .ride-list::before{
  border-color:rgba(96,165,250,.72) !important;
  border-style:solid !important;
  background:
    linear-gradient(180deg, rgba(37,99,235,.145) 0%, rgba(15,23,42,.065) 50%, rgba(18,31,52,.16) 100%) !important;
  box-shadow:inset 0 0 0 2px rgba(96,165,250,.10), 0 0 26px rgba(37,99,235,.10) !important;
}
body.app-shell.dashboard-shell .vehicle-card.is-over > .ride-list::after{
  content:attr(data-drop-label) !important;
  color:rgba(219,234,254,.42) !important;
}


/* v967: Dropzone-Wasserzeichen einheitlich und ohne Zusatztext */
body.app-shell.dashboard-shell .vehicle-card > .ride-list::after,
body.app-shell.dashboard-shell .vehicle-card > .ride-list.ride-list--empty::after,
body.app-shell.dashboard-shell .vehicle-card.is-drop-ready > .ride-list::after,
body.app-shell.dashboard-shell .vehicle-card.is-over > .ride-list::after{
  content:attr(data-drop-label) !important;
  font-size:clamp(1.05rem, 1.75vw, 1.75rem) !important;
  line-height:1 !important;
  letter-spacing:.18em !important;
  max-width:72% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
}
body.app-shell.dashboard-shell .vehicle-card.is-over > .ride-list::after{
  color:rgba(219,234,254,.34) !important;
}

/* Fahreransicht Schritt 2: Zwischenstatus Am Ziel angekommen */
body.driver-fahrten-ci .driver-destination-hold{
  margin:0 0 14px;
  padding:18px 20px;
  border-radius:22px;
  border:1px solid rgba(56,189,248,.42);
  background:
    radial-gradient(circle at 18% 0%, rgba(56,189,248,.28), transparent 34%),
    linear-gradient(135deg, rgba(8,47,73,.96), rgba(15,23,42,.94) 54%, rgba(30,64,175,.84));
  box-shadow:0 18px 42px rgba(2,8,23,.36), inset 0 1px 0 rgba(255,255,255,.10);
  color:#f8fafc;
}
body.driver-fahrten-ci .driver-destination-hold__eyebrow{
  display:block;
  margin:0 0 8px;
  font-size:.78rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#bae6fd;
  font-weight:900;
}
body.driver-fahrten-ci .driver-destination-hold strong{
  display:block;
  font-size:clamp(1.55rem, 3.2vw, 2.35rem);
  line-height:1.08;
  color:#fff;
  margin:0 0 8px;
  letter-spacing:-.03em;
}
body.driver-fahrten-ci .driver-destination-hold span{
  display:block;
  color:#dbeafe;
  font-size:1.02rem;
  line-height:1.35;
}

/* Fahrerstatus: Am Ziel angekommen */
body.app-shell .ride-chip--state-arrived_dest{border-color:rgba(56,189,248,.34)!important}
body.app-shell .ride-chip--state-arrived_dest .driver-state-badge{background:rgba(56,189,248,.16);color:#e0f2fe}
body.app-shell.dashboard-shell .ride-driver-status--arrived_dest{--driver-status-accent:#38bdf8;}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-arrived_dest,
body.app-shell.dashboard-shell .order-card.ride-chip--state-arrived_dest{
  --driver-status-accent:#38bdf8;
  --driver-status-strong:#0284c7;
  --driver-status-deep:#082f49;
  border-color:rgba(56,189,248,.45)!important;
}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-arrived_dest .chip-v2-time-pill,
body.app-shell.dashboard-shell .order-card.ride-chip--state-arrived_dest .chip-v2-time-pill{
  background:linear-gradient(135deg, rgba(56,189,248,.92), rgba(14,165,233,.72));
  color:#f8fafc;
}


/* v973: Fahreransicht Zahlungsentscheidung vor Fahrtabschluss */
body.driver-fahrten-ci .driver-payment-decision{
  margin:0 0 16px;
  padding:22px 22px 20px;
  border-radius:26px;
  border:1px solid rgba(251,191,36,.52);
  background:
    radial-gradient(circle at 18% 0%, rgba(251,191,36,.32), transparent 36%),
    linear-gradient(135deg, rgba(120,53,15,.98), rgba(146,64,14,.90) 42%, rgba(15,23,42,.96));
  box-shadow:0 24px 58px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.14);
  color:#fff7ed;
  display:grid;
  gap:12px;
}
body.driver-fahrten-ci .driver-payment-decision--copay{
  border-color:rgba(45,212,191,.52);
  background:
    radial-gradient(circle at 18% 0%, rgba(45,212,191,.30), transparent 36%),
    linear-gradient(135deg, rgba(19,78,74,.98), rgba(14,116,144,.86) 44%, rgba(15,23,42,.96));
}
body.driver-fahrten-ci .driver-payment-decision__head{display:grid;gap:4px;}
body.driver-fahrten-ci .driver-payment-decision__head span{
  color:rgba(255,247,237,.78);
  font-size:.78rem;
  font-weight:950;
  letter-spacing:.16em;
  text-transform:uppercase;
}
body.driver-fahrten-ci .driver-payment-decision__head strong{
  color:#ffffff;
  font-size:clamp(1.35rem, 3vw, 2rem);
  line-height:1.05;
  letter-spacing:-.03em;
}
body.driver-fahrten-ci .driver-payment-decision__amount{
  width:100%;
  box-sizing:border-box;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.20);
  background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.08));
  color:#ffffff;
  text-align:center;
  font-size:clamp(2.45rem, 7vw, 4.4rem);
  font-weight:1000;
  line-height:1;
  padding:18px 16px 20px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
}
body.driver-fahrten-ci .driver-payment-decision p{
  margin:0;
  color:rgba(255,255,255,.86);
  font-size:1rem;
  line-height:1.35;
  font-weight:800;
}
body.driver-fahrten-ci .driver-payment-action{
  min-height:58px;
  font-size:1.05rem;
}
@media (max-width:760px){
  body.driver-fahrten-ci .driver-payment-decision{padding:18px 16px;border-radius:22px;}
}

/* v974: Fahreransicht Befreiungsdaten vor Ort ändern */
body.driver-fahrten-ci .driver-exemption-panel{
  margin:0 0 16px;
  padding:18px;
  border-radius:24px;
  border:1px solid rgba(125,211,252,.26);
  background:linear-gradient(145deg, rgba(15,35,54,.96), rgba(8,23,38,.98));
  box-shadow:0 18px 44px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08);
  color:#eef7fb;
  display:grid;
  gap:14px;
}
body.driver-fahrten-ci .driver-exemption-panel__head{display:grid;gap:4px;}
body.driver-fahrten-ci .driver-exemption-panel__head span{
  color:#7dd3fc;
  font-size:.78rem;
  font-weight:950;
  letter-spacing:.13em;
  text-transform:uppercase;
}
body.driver-fahrten-ci .driver-exemption-panel__head strong{color:#fff;font-size:1.28rem;line-height:1.1;}
body.driver-fahrten-ci .driver-exemption-panel p{margin:0;color:rgba(226,245,252,.82);font-weight:750;line-height:1.38;}
body.driver-fahrten-ci .driver-exemption-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
body.driver-fahrten-ci .driver-exemption-photo{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  align-items:center;
}
body.driver-fahrten-ci .driver-exemption-photo span{
  grid-column:1 / -1;
  color:rgba(226,245,252,.74);
  font-size:.86rem;
  font-weight:800;
}
body.driver-fahrten-ci .driver-payment-action[data-action="SHOW_EXEMPTION_STEP"]{
  border-color:rgba(125,211,252,.28);
}
.terminlist-photo-card__empty{
  width:100%;height:100%;min-height:150px;display:flex;align-items:center;justify-content:center;
  border-radius:18px;border:1px dashed rgba(148,163,184,.28);color:#94a3b8;font-weight:900;
  background:rgba(15,23,42,.55);
}
@media (max-width:760px){
  body.driver-fahrten-ci .driver-exemption-grid,
  body.driver-fahrten-ci .driver-exemption-photo{grid-template-columns:1fr;}
}

/* TKBA977: Sticky Head kompakt korrigiert – Kennzeichen-Hinweis kontrolliert umbrechen, Fahrer/Beifahrer ohne Leerzeile */
body.app-shell.dashboard-shell .vehicle-head-main{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:12px !important;
  align-items:start !important;
}
body.app-shell.dashboard-shell .vehicle-head-left,
body.app-shell.dashboard-shell .vehicle-head-right{
  min-width:0 !important;
  overflow:hidden !important;
}
body.app-shell.dashboard-shell .vehicle-plate-line--pending,
body.app-shell.dashboard-shell .vehicle-plate-line--pending strong{
  display:block !important;
  white-space:pre-line !important;
  overflow:visible !important;
  text-overflow:clip !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  line-height:1.06 !important;
  font-size:.72rem !important;
}
body.app-shell.dashboard-shell .vehicle-plate-line--plate,
body.app-shell.dashboard-shell .vehicle-plate-line--plate strong{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}
body.app-shell.dashboard-shell .vehicle-crew-summary{
  gap:5px !important;
  align-content:start !important;
}
body.app-shell.dashboard-shell .vehicle-crew-line{
  display:block !important;
  line-height:1.08 !important;
  margin:0 !important;
  padding:0 !important;
}
body.app-shell.dashboard-shell .vehicle-crew-line br{
  display:none !important;
}
body.app-shell.dashboard-shell .vehicle-crew-label{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1.05 !important;
}
body.app-shell.dashboard-shell .vehicle-crew-value{
  display:block !important;
  margin:1px 0 0 !important;
  padding:0 !important;
  line-height:1.12 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
@media (max-width: 1360px){
  body.app-shell.dashboard-shell .vehicle-head-main{
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr) !important;
    gap:10px !important;
  }
  body.app-shell.dashboard-shell .vehicle-plate-line--pending,
  body.app-shell.dashboard-shell .vehicle-plate-line--pending strong{
    font-size:.68rem !important;
  }
}


/* TKBA978: Sticky Head Kennzeichen-Hinweis vollständig und kontrolliert lesbar */
body.app-shell.dashboard-shell .vehicle-plate-line--pending,
body.app-shell.dashboard-shell .vehicle-head-shell .vehicle-plate-line--pending,
body.app-shell.dashboard-shell .vehicle-head-shell .vehicle-plate-line--pending strong,
body.app-shell.dashboard-shell .vehicle-plate-line--pending strong{
  display:block !important;
  white-space:pre-line !important;
  overflow:visible !important;
  text-overflow:clip !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  line-height:1.08 !important;
  font-size:.68rem !important;
  max-height:none !important;
}
body.app-shell.dashboard-shell .vehicle-head-left:has(.vehicle-plate-line--pending){
  overflow:visible !important;
}
body.app-shell.dashboard-shell .vehicle-head-main:has(.vehicle-plate-line--pending),
body.app-shell.dashboard-shell .vehicle-head-core:has(.vehicle-plate-line--pending),
body.app-shell.dashboard-shell .vehicle-head-toggle:has(.vehicle-plate-line--pending){
  overflow:visible !important;
}
body.app-shell.dashboard-shell .vehicle-head-toggle:has(.vehicle-plate-line--pending){
  padding-top:7px !important;
  padding-bottom:8px !important;
}
body.app-shell.dashboard-shell .vehicle-plate-line--plate,
body.app-shell.dashboard-shell .vehicle-plate-line--plate strong{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}


/* v991: Fahreransicht Full-HD-Tablet ohne Scrollen in der aktiven Fahrtenroutine */
@media (min-width:1101px){
  body.driver-fahrten-ci,
  body.driver-fahrten-ci.driver-app-shell,
  body.driver-fahrten-ci #driverFlow,
  body.driver-fahrten-ci .driver-app{
    height:100dvh !important;
    min-height:100dvh !important;
    max-height:100dvh !important;
    overflow:hidden !important;
  }
  body.driver-fahrten-ci .driver-workspace.driver-workspace--fast{
    width:100vw !important;
    max-width:1920px !important;
    height:100dvh !important;
    min-height:100dvh !important;
    max-height:100dvh !important;
    grid-template-columns:300px minmax(0,1fr) !important;
    margin:0 auto !important;
    overflow:hidden !important;
  }
  body.driver-fahrten-ci .driver-workspace__sidebar.driver-workspace__sidebar--fast{
    height:100dvh !important;
    min-height:100dvh !important;
    max-height:100dvh !important;
    padding:12px 12px 14px !important;
    gap:10px !important;
    overflow:hidden !important;
  }
  body.driver-fahrten-ci .driver-workspace__topBlock{
    padding:8px 9px !important;
    gap:4px !important;
    border-radius:16px !important;
  }
  body.driver-fahrten-ci .driver-workspace__topLine{
    gap:6px 10px !important;
    font-size:.82rem !important;
    line-height:1.18 !important;
  }
  body.driver-fahrten-ci .driver-workspace__nav.driver-workspace__nav--full{
    gap:6px !important;
    overflow:hidden !important;
  }
  body.driver-fahrten-ci .driver-workspace__link{
    min-height:40px !important;
    padding:8px 10px !important;
    border-radius:12px !important;
    font-size:.86rem !important;
    line-height:1.12 !important;
  }
  body.driver-fahrten-ci .driver-workspace__actions{
    gap:8px !important;
    margin-top:auto !important;
    padding-top:6px !important;
  }
  body.driver-fahrten-ci .driver-workspace__actions .secondary-button{
    min-height:42px !important;
    padding:8px 10px !important;
    border-radius:13px !important;
    font-size:.82rem !important;
    line-height:1.12 !important;
  }
  body.driver-fahrten-ci .driver-workspace__content.driver-workspace__content--fast{
    height:100dvh !important;
    min-height:100dvh !important;
    max-height:100dvh !important;
    display:flex !important;
    flex-direction:column !important;
    overflow:hidden !important;
  }
  body.driver-fahrten-ci .driver-workspace__contentHead{
    flex:0 0 auto !important;
    padding:8px 14px 6px !important;
    max-height:86px !important;
    overflow:hidden !important;
  }
  body.driver-fahrten-ci .driver-workspace__contentHead:empty{
    display:none !important;
  }
  body.driver-fahrten-ci .driver-workspace__frameWrap.driver-workspace__frameWrap--fahrten{
    flex:1 1 auto !important;
    min-height:0 !important;
    height:auto !important;
    padding:0 !important;
    overflow:hidden !important;
    display:block !important;
  }
  body.driver-fahrten-ci .driver-workspace__frameWrap--fahrten .driver-fahrten-shell{
    height:100% !important;
    min-height:0 !important;
    display:block !important;
    overflow:hidden !important;
  }
  body.driver-fahrten-ci .driver-workspace__frameWrap--fahrten .driver-fahrten-scroll{
    height:100% !important;
    min-height:0 !important;
    overflow:hidden !important;
    padding:12px 14px !important;
    box-sizing:border-box !important;
  }
  body.driver-fahrten-ci .driver-ride-panel.driver-ride-panel--fit{
    height:100% !important;
    min-height:0 !important;
    padding:12px 14px !important;
    gap:8px !important;
    border-radius:22px !important;
    overflow:hidden !important;
  }
  body.driver-fahrten-ci .driver-ride-panel-head{
    flex:0 0 auto !important;
    padding-bottom:6px !important;
  }
  body.driver-fahrten-ci .driver-stage-head{
    font-size:.86rem !important;
    line-height:1.05 !important;
  }
  body.driver-fahrten-ci .driver-ride-main.driver-ride-main--focus{
    min-height:0 !important;
    display:grid !important;
    gap:7px !important;
    overflow:hidden !important;
  }
  body.driver-fahrten-ci .driver-kicker,
  body.driver-fahrten-ci .driver-kicker--state{
    font-size:.66rem !important;
    line-height:1 !important;
  }
  body.driver-fahrten-ci .driver-hero-stack{
    padding:10px 12px !important;
    border-radius:18px !important;
    display:grid !important;
    gap:6px !important;
  }
  body.driver-fahrten-ci .driver-hero-topline{
    gap:6px 10px !important;
  }
  body.driver-fahrten-ci .driver-time-label--hero{
    font-size:.68rem !important;
    line-height:1 !important;
  }
  body.driver-fahrten-ci .driver-time-large--hero{
    min-height:38px !important;
    padding:0 12px !important;
    border-radius:14px !important;
    font-size:clamp(1.15rem,1.8vw,1.55rem) !important;
  }
  body.driver-fahrten-ci .driver-patient-name{
    margin:2px 0 0 !important;
    font-size:clamp(1.2rem,1.9vw,1.7rem) !important;
    line-height:1.06 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }
  body.driver-fahrten-ci .driver-phone-drop{
    margin-top:2px !important;
  }
  body.driver-fahrten-ci .driver-phone-drop__summary{
    padding:7px 10px !important;
    font-size:.76rem !important;
  }
  body.driver-fahrten-ci .driver-phone-drop__body{
    padding:0 10px 8px !important;
  }
  body.driver-fahrten-ci .driver-transport-line--hero{
    padding:6px 10px !important;
    font-size:.78rem !important;
  }
  body.driver-fahrten-ci .driver-facts.driver-facts--focus{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }
  body.driver-fahrten-ci .driver-fact,
  body.driver-fahrten-ci .driver-address-block{
    padding:8px 10px !important;
    border-radius:15px !important;
    min-height:0 !important;
  }
  body.driver-fahrten-ci .driver-fact span,
  body.driver-fahrten-ci .driver-address-block span,
  body.driver-fahrten-ci .driver-address-block small{
    font-size:.65rem !important;
    line-height:1.05 !important;
    margin-bottom:2px !important;
  }
  body.driver-fahrten-ci .driver-fact strong,
  body.driver-fahrten-ci .driver-address-block strong,
  body.driver-fahrten-ci .driver-facts--focus small{
    font-size:.82rem !important;
    line-height:1.14 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }
  body.driver-fahrten-ci .driver-plan-box.driver-plan-box--compact{
    padding:6px 8px !important;
    border-radius:16px !important;
  }
  body.driver-fahrten-ci .driver-summary-line{
    gap:8px !important;
    padding:4px 0 !important;
  }
  body.driver-fahrten-ci .driver-summary-line span,
  body.driver-fahrten-ci .driver-summary-line strong{
    font-size:.76rem !important;
    line-height:1.08 !important;
  }
  body.driver-fahrten-ci .driver-destination-hold{
    margin:0 !important;
    padding:9px 12px !important;
    border-radius:16px !important;
  }
  body.driver-fahrten-ci .driver-destination-hold__eyebrow{
    margin:0 0 3px !important;
    font-size:.62rem !important;
    line-height:1 !important;
  }
  body.driver-fahrten-ci .driver-destination-hold strong{
    margin:0 0 3px !important;
    font-size:clamp(1rem,1.7vw,1.35rem) !important;
    line-height:1.04 !important;
  }
  body.driver-fahrten-ci .driver-destination-hold span{
    font-size:.78rem !important;
    line-height:1.18 !important;
  }
  body.driver-fahrten-ci .driver-payment-decision{
    margin:0 !important;
    padding:10px 12px !important;
    border-radius:18px !important;
    gap:7px !important;
    grid-template-columns:minmax(0,1.1fr) minmax(180px,.9fr) !important;
    align-items:center !important;
  }
  body.driver-fahrten-ci .driver-payment-decision__head{
    gap:3px !important;
  }
  body.driver-fahrten-ci .driver-payment-decision__head span{
    font-size:.62rem !important;
    line-height:1 !important;
  }
  body.driver-fahrten-ci .driver-payment-decision__head strong{
    font-size:clamp(1rem,1.7vw,1.35rem) !important;
    line-height:1.04 !important;
  }
  body.driver-fahrten-ci .driver-payment-decision__amount{
    padding:8px 10px !important;
    border-radius:16px !important;
    font-size:clamp(1.8rem,3.5vw,3.15rem) !important;
  }
  body.driver-fahrten-ci .driver-payment-decision p{
    grid-column:1 / -1 !important;
    font-size:.78rem !important;
    line-height:1.18 !important;
  }
  body.driver-fahrten-ci .driver-exemption-panel{
    margin:0 !important;
    padding:10px 12px !important;
    border-radius:18px !important;
    gap:8px !important;
  }
  body.driver-fahrten-ci .driver-exemption-panel__head strong{
    font-size:1rem !important;
  }
  body.driver-fahrten-ci .driver-exemption-panel__head span,
  body.driver-fahrten-ci .driver-exemption-panel p,
  body.driver-fahrten-ci .driver-exemption-photo span{
    font-size:.72rem !important;
    line-height:1.16 !important;
  }
  body.driver-fahrten-ci .driver-exemption-grid,
  body.driver-fahrten-ci .driver-exemption-photo{
    gap:8px !important;
  }
  body.driver-fahrten-ci .driver-field.driver-field--dark{
    gap:4px !important;
  }
  body.driver-fahrten-ci .driver-field.driver-field--dark span{
    font-size:.68rem !important;
  }
  body.driver-fahrten-ci .driver-field.driver-field--dark input,
  body.driver-fahrten-ci .driver-field.driver-field--dark textarea,
  body.driver-fahrten-ci .driver-field.driver-field--dark select{
    min-height:36px !important;
    padding:7px 9px !important;
    border-radius:12px !important;
    font-size:.84rem !important;
  }
  body.driver-fahrten-ci .driver-workspace__bottomBar{
    flex:0 0 auto !important;
    padding:8px 14px 10px !important;
    background:linear-gradient(180deg, rgba(8,27,40,.70), rgba(8,27,40,.99)) !important;
  }
  body.driver-fahrten-ci .driver-workspace__bottomBar .driver-workspace__contentActions{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:8px !important;
    margin:0 !important;
    padding:0 !important;
    position:static !important;
    background:transparent !important;
  }
  body.driver-fahrten-ci .driver-workspace__contentActions .primary-button,
  body.driver-fahrten-ci .driver-workspace__contentActions .secondary-button,
  body.driver-fahrten-ci .driver-payment-action{
    flex:1 1 0 !important;
    width:auto !important;
    min-height:44px !important;
    padding:8px 10px !important;
    border-radius:14px !important;
    font-size:.84rem !important;
    line-height:1.12 !important;
    white-space:normal !important;
  }
}
@media (min-width:1500px) and (min-height:900px){
  body.driver-fahrten-ci .driver-workspace.driver-workspace--fast{
    grid-template-columns:320px minmax(0,1fr) !important;
  }
  body.driver-fahrten-ci .driver-workspace__frameWrap--fahrten .driver-fahrten-scroll{
    padding:16px 18px !important;
  }
  body.driver-fahrten-ci .driver-ride-panel.driver-ride-panel--fit{
    padding:14px 16px !important;
    gap:9px !important;
  }
}
@media (max-width:1100px){
  body.driver-fahrten-ci .driver-workspace__nav.driver-workspace__nav--full{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    display:grid !important;
  }
}

/* v992: Fahreransicht - kompakte Abfahrtwarnung und lesbare Storno-Begründung */
body.driver-fahrten-ci .driver-advice-line{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  min-width:0 !important;
  white-space:nowrap !important;
  overflow:visible !important;
  font-size:.9rem !important;
  line-height:1.15 !important;
  font-weight:800 !important;
  color:#ffffff !important;
}
body.driver-fahrten-ci .driver-advice-line strong,
body.driver-fahrten-ci .driver-advice-line span{
  display:inline !important;
  color:#ffffff !important;
}
body.driver-fahrten-ci .driver-advice-line span{
  font-weight:700 !important;
}
body.driver-fahrten-ci .driver-step-card--alert .driver-field--dark span{
  color:#ffffff !important;
}
body.driver-fahrten-ci .driver-step-card--alert .driver-field--dark textarea,
body.driver-fahrten-ci .driver-step-card--alert .driver-field--dark input{
  background:#ffffff !important;
  color:#183244 !important;
  border-color:rgba(255,255,255,.52) !important;
}


/* v993: Dashboard-Tourkachel Status ARRIVED_DEST an vorherige Fahrerstatus-Bänder angleichen */
body.app-shell.dashboard-shell .driver-bar--arrived_dest{
  --driver-status-accent:#38bdf8 !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-arrived_dest,
body.app-shell.dashboard-shell .order-card.ride-chip--state-arrived_dest{
  --driver-status-accent:#38bdf8 !important;
  --ride-accent:#38bdf8 !important;
  --ride-accent-soft:rgba(56,189,248,.23) !important;
  --ride-card-bg-1:#123140 !important;
  --ride-card-bg-2:#061722 !important;
  border-color:color-mix(in srgb, var(--driver-status-accent) 34%, rgba(180,207,238,.18)) !important;
  background:
    radial-gradient(120% 85% at 0% 0%, color-mix(in srgb, var(--driver-status-accent) 24%, transparent) 0%, transparent 46%),
    linear-gradient(180deg,
      color-mix(in srgb, var(--driver-status-accent) 13%, var(--ride-card-bg-1)) 0%,
      var(--ride-card-bg-2) 100%) !important;
  box-shadow:
    0 18px 36px rgba(0,0,0,.31),
    0 0 0 1px color-mix(in srgb, var(--driver-status-accent) 13%, transparent) inset,
    0 1px 0 rgba(255,255,255,.055) inset !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-arrived_dest::after,
body.app-shell.dashboard-shell .order-card.ride-chip--state-arrived_dest::after{
  opacity:.95 !important;
  box-shadow:0 0 28px color-mix(in srgb, var(--driver-status-accent) 48%, transparent) !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-arrived_dest .chip-v2-status-bar,
body.app-shell.dashboard-shell .order-card.ride-chip--state-arrived_dest .chip-v2-status-bar{
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
  margin:-12px -12px 10px -15px !important;
  padding:9px 38px 9px 16px !important;
  border-radius:18px 18px 12px 12px !important;
  border:0 !important;
  border-bottom:1px solid color-mix(in srgb, var(--driver-status-accent) 40%, rgba(255,255,255,.14)) !important;
  overflow:visible !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-arrived_dest .chip-v2-status-bar__dot,
body.app-shell.dashboard-shell .order-card.ride-chip--state-arrived_dest .chip-v2-status-bar__dot{
  flex:0 0 9px !important;
  width:9px !important;
  height:9px !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-arrived_dest .chip-v2-status-bar__label,
body.app-shell.dashboard-shell .order-card.ride-chip--state-arrived_dest .chip-v2-status-bar__label{
  font-size:.78rem !important;
  line-height:1.24 !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  transform:none !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.is-ride-collapsed.ride-chip--state-arrived_dest .chip-v2-status-bar,
body.app-shell.dashboard-shell .order-card.is-ride-collapsed.ride-chip--state-arrived_dest .chip-v2-status-bar{
  margin:-9px -34px 8px -14px !important;
  padding:8px 38px 8px 15px !important;
  border-radius:17px 17px 12px 12px !important;
}
body.app-shell.dashboard-shell .ride-chip-v2.ride-chip--state-arrived_dest .chip-v2-time-pill,
body.app-shell.dashboard-shell .order-card.ride-chip--state-arrived_dest .chip-v2-time-pill{
  background:linear-gradient(180deg, color-mix(in srgb, var(--driver-status-accent) 30%, rgba(255,255,255,.13)) 0%, rgba(15,23,42,.66) 100%) !important;
  border-color:color-mix(in srgb, var(--driver-status-accent) 42%, rgba(255,255,255,.18)) !important;
}
