:root{--bg:#0d1117;--panel:#151b23;--panel2:#1b2430;--text:#eef3f8;--muted:#9aa8b6;--line:#2a3543;--accent:#f2a43b;--accent2:#ffcc73;--good:#70d49b;--route:#73a8ff;--danger:#ff7777}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:linear-gradient(180deg,#0d1117,#111923);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input{font:inherit}.app-shell{max-width:1800px;margin:auto;padding:14px;display:flex;flex-direction:column;gap:12px}.card{background:rgba(21,27,35,.97);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 35px rgba(0,0,0,.22)}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:4px 4px 0}.topbar h1{margin:2px 0 0;font-size:30px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent2);font-weight:800}.version-badge{font-size:12px;vertical-align:middle;background:var(--accent);color:#151515;padding:4px 7px;border-radius:999px}.icon-btn,.text-btn,.chip,.primary-btn,.secondary-btn,.catalog-tab{cursor:pointer}.icon-btn{width:42px;height:42px;border-radius:12px;background:var(--panel2);color:var(--text);font-size:20px;border:1px solid var(--line)}
.planner{padding:14px}.planner-title,.route-head,.detail-title-row,.sidebar-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.planner-title h2,.route-panel h2,.details h2{margin:4px 0}.planner-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;gap:10px;margin-top:12px}.field{display:flex;flex-direction:column;gap:6px}.field span{font-size:12px;color:var(--muted);font-weight:700}.field input,.toolbar input{padding:12px 14px;border-radius:12px;background:#0e141b;border:1px solid var(--line);color:var(--text);outline:none;min-width:0}.field input:focus,.toolbar input:focus{border-color:var(--accent)}.primary-btn{border:0;padding:10px 13px;border-radius:11px;background:var(--accent);color:#19130b;font-weight:900}.big-btn{align-self:end;min-height:46px}.planner-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}.route-metrics{display:flex;gap:14px;color:var(--muted)}.route-metrics strong{color:var(--text)}
.toolbar{padding:12px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.toolbar input{flex:1;min-width:220px}.catalog-tabs{display:flex;gap:6px}.catalog-tab{border:1px solid var(--line);background:#0e141b;color:var(--muted);padding:10px 12px;border-radius:11px;font-weight:800}.catalog-tab.active{background:var(--accent);color:#151515;border-color:var(--accent)}.country-filters{display:flex;gap:8px;flex-wrap:wrap}.chip{padding:10px 12px;border-radius:999px;background:#0e141b;color:var(--muted);border:1px solid var(--line)}.chip.active{background:var(--accent);color:#151515;border-color:var(--accent);font-weight:800}.country-note{width:100%;color:#8fa0af;font-size:13px;line-height:1.45}
.dataset-bar{padding:10px 14px;display:flex;justify-content:space-between;align-items:center;gap:12px}.dataset-bar>div:first-child{display:flex;flex-direction:column;gap:2px}.dataset-actions{display:flex;gap:8px;flex-wrap:wrap}.secondary-btn{border:1px solid var(--line);background:#0f161e;color:var(--text);padding:9px 12px;border-radius:11px;font-weight:800}.secondary-btn:disabled{opacity:.5;cursor:not-allowed}.secondary-btn.wide{width:100%}
.workspace{display:grid;grid-template-columns:minmax(270px,340px) 1fr minmax(320px,400px);gap:12px;min-height:610px}.sidebar,.details{padding:14px;overflow:hidden}.sidebar-head strong{display:block;font-size:24px}.muted{color:var(--muted)}.text-btn{border:0;background:none;color:var(--accent2);padding:6px}.pass-list{margin-top:10px;display:flex;flex-direction:column;gap:8px;max-height:540px;overflow:auto;padding-right:3px}.pass-item{padding:12px;border:1px solid var(--line);background:#111821;border-radius:13px;cursor:pointer;transition:.15s}.pass-item:hover,.pass-item.active{border-color:var(--accent);transform:translateY(-1px)}.pass-name{font-weight:800;font-size:15px}.pass-meta{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:12px;margin-top:6px}.poi-source{font-size:10px;color:var(--good);margin-top:4px}
.map-card{position:relative;overflow:hidden;min-height:610px}.map-card.fullscreen{position:fixed;inset:10px;z-index:9999;min-height:auto}.map-card.fullscreen #map{height:100%}#map{height:100%;min-height:610px;background:#0f171f}.map-legend{position:absolute;z-index:500;left:12px;bottom:12px;background:rgba(13,17,23,.9);padding:8px 10px;border-radius:10px;border:1px solid var(--line);font-size:12px}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin:0 4px 0 8px}.dot.pass{background:var(--accent)}.dot.poi{background:var(--good)}.dot.route{background:var(--route)}.map-fallback{position:absolute;inset:0;z-index:450;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:30px;background:radial-gradient(circle at center,#182532,#0f171f);color:var(--muted)}.map-fallback div{font-size:48px}.map-fallback strong{color:var(--text);font-size:18px}.map-fallback.hidden,.hidden{display:none}
.empty-state{height:100%;display:grid;place-content:center;text-align:center;color:var(--muted);padding:30px}.mountain,.poi-hero{font-size:52px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.stats-grid.one-row{grid-template-columns:1fr 1fr}.stats-grid>div{background:#0f161e;border:1px solid var(--line);padding:10px;border-radius:12px}.stats-grid span{display:block;color:var(--muted);font-size:11px}.stats-grid strong{font-size:15px}.description{color:#cad3dc;line-height:1.5}.section-title{font-weight:900;margin:16px 0 8px}.profile-wrap{height:185px;background:#0c131a;border:1px solid var(--line);border-radius:12px;overflow:hidden;padding:8px}.profile-wrap canvas{width:100%;height:100%}.poi-list{display:flex;flex-direction:column;gap:8px}.poi-card{background:#0f161e;border:1px solid var(--line);border-radius:11px;padding:10px;display:flex;justify-content:space-between;gap:10px;align-items:center}.poi-card strong{display:block}.poi-card span{font-size:12px;color:var(--muted)}.mini-add{border:1px solid var(--line);background:#111821;color:var(--accent2);border-radius:9px;padding:7px 9px;cursor:pointer;white-space:nowrap}
.route-panel{padding:14px}.route-summary{display:flex;gap:16px;color:var(--muted)}.route-list.ordered{display:flex;flex-direction:column;gap:8px;margin:12px 0}.route-stop{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;background:#0f161e;border:1px solid var(--line);border-radius:13px;padding:9px}.route-num{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#1c2734;color:var(--accent2);font-weight:900}.route-stop-main strong{display:block}.route-stop-main span{font-size:12px;color:var(--muted)}.route-stop-actions{display:flex;gap:5px}.route-stop-actions button{width:34px;height:34px;border-radius:9px;border:1px solid var(--line);background:#111821;color:var(--text);cursor:pointer}.route-stop-actions .remove{color:var(--danger)}.route-panel small{color:#748391;line-height:1.45}
@media(max-width:1150px){.workspace{grid-template-columns:300px 1fr}.details{grid-column:1/-1}.map-card{min-height:520px}#map{min-height:520px}.pass-list{max-height:460px}.planner-grid{grid-template-columns:1fr 1fr}.big-btn{grid-column:1/-1}}
@media(max-width:760px){.app-shell{padding:8px}.planner-title,.route-head{align-items:flex-start;flex-direction:column}.route-metrics{width:100%;justify-content:space-between}.planner-grid{grid-template-columns:1fr}.big-btn{grid-column:auto}.toolbar{align-items:stretch}.catalog-tabs{width:100%}.catalog-tab{flex:1}.country-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.chip{white-space:nowrap}.workspace{grid-template-columns:1fr}.sidebar{order:2}.map-card{order:1;min-height:440px}#map{min-height:440px}.details{order:3}.pass-list{max-height:340px}.dataset-bar{align-items:stretch;flex-direction:column}.dataset-actions{display:grid;grid-template-columns:1fr}.secondary-btn{min-height:44px}.stats-grid.one-row{grid-template-columns:1fr}.route-stop{grid-template-columns:34px 1fr}.route-stop-actions{grid-column:2;justify-content:flex-end}}

.scenic-planner{display:grid;grid-template-columns:minmax(260px,360px) auto 1fr;gap:10px;align-items:end;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.scenic-style-field select{padding:12px 14px;border-radius:12px;background:#0e141b;border:1px solid var(--line);color:var(--text);outline:none;min-height:46px}.scenic-btn{min-height:46px;white-space:nowrap}.scenic-hint{color:var(--muted);font-size:12px;line-height:1.45;align-self:center}.scenic-suggestions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.scenic-card{background:#0f161e;border:1px solid var(--line);border-radius:14px;padding:13px;min-width:0}.scenic-card.preferred{border-color:var(--accent);box-shadow:inset 0 0 0 1px rgba(242,164,59,.25)}.scenic-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.scenic-card h3{margin:4px 0 0;font-size:16px}.scenic-tag{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent2);font-weight:900}.scenic-score{color:var(--good);white-space:nowrap}.scenic-card p{color:#c8d2dc;font-size:13px;line-height:1.45;min-height:55px}.scenic-via{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px}.scenic-via span{background:#151f2a;border:1px solid var(--line);border-radius:999px;padding:6px 8px}.scenic-via b{color:var(--muted)}.scenic-card-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:12px}.scenic-card-actions span{color:var(--muted);font-size:11px}.scenic-empty{padding:14px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);background:#0f161e}
@media(max-width:1000px){.scenic-suggestions{grid-template-columns:1fr}.scenic-card p{min-height:0}}
@media(max-width:760px){.scenic-planner{grid-template-columns:1fr}.scenic-btn{width:100%}}

.scenic-region-banner{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.035);margin-bottom:10px}.scenic-region-banner strong{color:var(--text)}.scenic-region-banner span{color:var(--muted);font-size:13px;text-align:right}@media(max-width:700px){.scenic-region-banner{align-items:flex-start;flex-direction:column}.scenic-region-banner span{text-align:left}}
.pass-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0 12px}.pass-info-grid>div,.info-block{background:#0f161e;border:1px solid var(--line);padding:10px;border-radius:12px}.pass-info-grid span,.info-block>span{display:block;color:var(--muted);font-size:11px;margin-bottom:4px}.pass-info-grid strong{font-size:13px;line-height:1.4}.info-block{margin-top:8px}.info-block strong,.info-block p{margin:0;color:#d8e0e8;line-height:1.5;font-size:13px}.detail-links{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 8px}.link-btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.detail-disclaimer{display:block;color:#7f8d9a;line-height:1.45;margin-top:8px}.search-fuzzy-note{font-size:11px;color:var(--accent2);margin-top:5px}.pass-known-badge{display:inline-flex;align-items:center;gap:5px;margin-top:7px;padding:4px 7px;border-radius:999px;background:rgba(112,212,155,.1);border:1px solid rgba(112,212,155,.3);color:var(--good);font-size:10px;font-weight:800}
@media(max-width:760px){.pass-info-grid{grid-template-columns:1fr}.detail-links{display:grid;grid-template-columns:1fr}.link-btn{min-height:44px}}


/* V8 Live-Fahrmodus */
.drive-panel{padding:14px;position:relative}.drive-head{display:flex;justify-content:space-between;gap:14px;align-items:center}.drive-head h2{margin:4px 0}.drive-head-actions{display:flex;gap:8px;flex-wrap:wrap}.drive-grid{display:grid;grid-template-columns:minmax(230px,310px) 1fr;gap:12px;margin-top:12px}.altitude-card{background:linear-gradient(145deg,#0d141c,#172332);border:1px solid var(--line);border-radius:16px;padding:16px;display:flex;flex-direction:column;justify-content:center;min-height:142px}.metric-label{font-size:11px;letter-spacing:.14em;color:var(--accent2);font-weight:900}.altitude-value{display:flex;align-items:baseline;gap:8px}.altitude-value strong{font-size:58px;line-height:1;font-variant-numeric:tabular-nums}.altitude-value span{font-size:22px;color:var(--muted);font-weight:800}.altitude-card small{color:var(--muted);margin-top:8px}.drive-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.drive-metrics>div{background:#0f161e;border:1px solid var(--line);border-radius:13px;padding:11px;min-width:0}.drive-metrics span{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}.drive-metrics strong{display:block;font-size:15px;line-height:1.25;overflow-wrap:anywhere}.gps-connect-row{display:grid;grid-template-columns:minmax(260px,1fr) auto auto auto;gap:8px;align-items:end;margin-top:12px}.gps-endpoint-field input{padding:10px 12px;border-radius:11px;background:#0e141b;border:1px solid var(--line);color:var(--text);outline:none}.gps-status{margin-top:8px;font-size:12px}.gps-live{color:var(--good)}.gps-warning{color:var(--danger)}.danger-text{color:var(--danger)}.off-route-warning{margin-top:10px;padding:10px 12px;border-radius:11px;border:1px solid rgba(255,119,119,.5);background:rgba(255,119,119,.1);color:#ffb0b0;font-weight:900}.pass-reached-banner{margin-top:10px;padding:12px 14px;border-radius:12px;border:1px solid rgba(112,212,155,.5);background:rgba(112,212,155,.12);color:#b8f1d0;font-size:17px;font-weight:900}.danger-metric{color:var(--danger)!important}.tour-profile-head{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-top:8px}.tour-profile-head .section-title{margin-bottom:2px}.tour-profile-head small{color:var(--muted)}.profile-legend{display:flex;gap:12px;color:var(--muted);font-size:12px}.profile-line{display:inline-block;width:24px;height:3px;border-radius:3px;vertical-align:middle;margin-right:4px}.profile-line.planned{background:var(--route)}.profile-line.driven{background:var(--accent)}.tour-profile-wrap{height:245px;background:#0c131a;border:1px solid var(--line);border-radius:14px;overflow:hidden;padding:8px;margin-top:8px}.tour-profile-wrap canvas{width:100%;height:100%}.drive-note{display:block;color:#748391;line-height:1.45;margin-top:8px}.gps-live-marker{background:transparent;border:none}.gps-arrow{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#111827;border:4px solid var(--accent);font-size:21px;line-height:1;box-shadow:0 3px 13px #000a;transform-origin:center center}.drive-hud{position:fixed;left:50%;top:8px;transform:translateX(-50%);z-index:10050;display:flex;gap:8px;padding:8px;background:rgba(9,14,20,.94);border:1px solid var(--line);border-radius:15px;box-shadow:0 10px 30px #0008;max-width:calc(100vw - 16px)}.drive-hud>div{min-width:110px;padding:6px 10px;border-radius:10px;background:#121c27}.drive-hud span{display:block;color:var(--muted);font-size:9px;letter-spacing:.1em;font-weight:900}.drive-hud strong{font-size:17px;white-space:nowrap}.drive-hud .hud-next{min-width:250px}.drive-hud.hidden{display:none}
body.drive-mode .planner,body.drive-mode .toolbar,body.drive-mode .dataset-bar,body.drive-mode .sidebar,body.drive-mode .details,body.drive-mode .route-panel{display:none}body.drive-mode .topbar{padding-top:62px}body.drive-mode .drive-panel{position:sticky;top:4px;z-index:750}body.drive-mode .drive-panel .gps-connect-row,body.drive-mode .drive-panel .gps-status,body.drive-mode .drive-panel .drive-note{display:none}body.drive-mode .workspace{display:block;min-height:0}body.drive-mode .map-card{min-height:55vh}body.drive-mode #map{min-height:55vh}body.drive-mode .app-shell{max-width:none}
@media(max-width:900px){.drive-grid{grid-template-columns:1fr}.drive-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.gps-connect-row{grid-template-columns:1fr 1fr}.gps-endpoint-field{grid-column:1/-1}.drive-hud .hud-next{display:none}.drive-hud>div{min-width:95px}.altitude-value strong{font-size:52px}}
@media(max-width:600px){.drive-head{align-items:flex-start;flex-direction:column}.drive-head-actions{width:100%}.drive-head-actions button{flex:1}.drive-metrics{grid-template-columns:1fr 1fr}.gps-connect-row{grid-template-columns:1fr}.gps-endpoint-field{grid-column:auto}.tour-profile-head{align-items:flex-start;flex-direction:column}.tour-profile-wrap{height:210px}.drive-hud{width:calc(100vw - 12px);justify-content:space-between}.drive-hud>div{min-width:0;flex:1;padding:6px}.drive-hud strong{font-size:15px}.altitude-value strong{font-size:48px}body.drive-mode .topbar{padding-top:58px}}

/* V9 Tourplanung, Zwischenziele, Rast-/Ladepunkte und Navi-Karte */
.topbar-actions{display:flex;align-items:center;gap:8px}.planner-toggle{min-height:42px}.planner.planner-hidden{display:none}.planner.planner-visible{display:block}.manual-via-box{margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#0f161e}.manual-via-entry{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:end}.planner-via-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.planner-via-chip{display:flex;align-items:center;gap:7px;padding:7px 8px;border:1px solid var(--line);border-radius:999px;background:#151f2a;max-width:100%}.planner-via-num{display:grid;place-items:center;min-width:22px;height:22px;border-radius:50%;background:#263649;color:#fff;font-size:11px;font-weight:900}.planner-via-name{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:310px}.planner-via-chip button{border:0;background:transparent;color:var(--danger);font-size:18px;line-height:1;cursor:pointer;padding:0 3px}.dot.charge{background:#c684ff}.route-charge-marker{background:transparent;border:none}.charge-dot{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#7a3db9;color:white;border:2px solid white;box-shadow:0 2px 9px #0009;font-size:12px}.charge-popup{display:flex;flex-direction:column;gap:5px;min-width:220px;color:#15202b}.charge-popup strong{font-size:14px}.charge-popup span{font-size:12px;line-height:1.35}.charge-add-btn{margin-top:5px;border:0;border-radius:8px;padding:8px 10px;background:#f2a43b;color:#1b1409;font-weight:900;cursor:pointer}.hud-action{width:38px;height:38px;align-self:center;border-radius:10px;border:1px solid var(--line);background:#1a2430;color:#fff;font-size:18px;cursor:pointer}.drive-toast{position:fixed;z-index:10060;left:50%;top:76px;transform:translateX(-50%);max-width:calc(100vw - 24px);padding:11px 15px;border-radius:12px;border:1px solid rgba(112,212,155,.55);background:rgba(12,30,23,.95);color:#b8f1d0;font-weight:900;box-shadow:0 8px 28px #0008}.drive-toast.hidden{display:none}
body.drive-mode .drive-panel{display:none}body.drive-mode .planner.planner-visible{display:block}body.drive-mode .planner.planner-hidden{display:none}body.drive-mode .workspace{display:block;min-height:0}body.drive-mode .map-card{min-height:calc(100vh - 142px);height:calc(100vh - 142px)}body.drive-mode #map{min-height:calc(100vh - 142px);height:100%}body.drive-mode .topbar{padding-top:62px}.map-card.fullscreen{z-index:10020}
@media(max-width:760px){.topbar{gap:8px}.topbar-actions{gap:5px}.planner-toggle{font-size:12px;padding:8px 9px}.manual-via-entry{grid-template-columns:1fr}.manual-via-entry .secondary-btn{width:100%}.planner-via-name{max-width:220px}body.drive-mode .map-card{min-height:calc(100vh - 132px);height:calc(100vh - 132px)}body.drive-mode #map{min-height:calc(100vh - 132px)}.drive-toast{top:70px}.hud-action{width:34px;height:34px}.drive-hud{gap:5px}}
@media(max-width:520px){.planner-toggle{font-size:0;width:42px;padding:0}.planner-toggle:before{content:'🧭';font-size:18px}.planner-via-name{max-width:170px}.drive-hud .hud-next{display:none}}

/* V10 – klare Bereiche, Pi-Track und Tourrückblick */
.main-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:7px;position:sticky;top:5px;z-index:900}
.main-tab{border:1px solid var(--line);background:#0f161e;color:var(--muted);padding:11px 12px;border-radius:12px;font-weight:900;cursor:pointer;min-height:44px}
.main-tab.active{background:var(--accent);color:#17110a;border-color:var(--accent)}

/* Standardansichten */
body.view-drive .planner,body.view-drive .toolbar,body.view-drive .dataset-bar,body.view-drive .sidebar,body.view-drive .details,body.view-drive .route-panel,body.view-drive .replay-panel{display:none}
body.view-drive .workspace{display:block;min-height:0}
body.view-drive .map-card{min-height:62vh;height:62vh}
body.view-drive #map{min-height:62vh;height:100%}

body.view-passes .planner,body.view-passes .drive-panel,body.view-passes .route-panel,body.view-passes .replay-panel,body.view-passes .map-card{display:none}
body.view-passes .workspace{display:grid;grid-template-columns:minmax(330px,.8fr) minmax(420px,1.2fr);min-height:600px}
body.view-passes .sidebar,body.view-passes .details{display:block}
body.view-passes .details{grid-column:auto}
body.view-passes .pass-list{max-height:68vh}

body.view-planning .drive-panel,body.view-planning .toolbar,body.view-planning .dataset-bar,body.view-planning .workspace,body.view-planning .replay-panel{display:none}
body.view-planning .planner,body.view-planning .route-panel{display:block}

body.view-replay .planner,body.view-replay .drive-panel,body.view-replay .toolbar,body.view-replay .dataset-bar,body.view-replay .sidebar,body.view-replay .details,body.view-replay .route-panel{display:none}
body.view-replay .workspace{display:block;min-height:0}
body.view-replay .map-card{display:block;min-height:56vh;height:56vh}
body.view-replay #map{min-height:56vh;height:100%}
body.view-replay .replay-panel{display:block}

.next-pass-card{margin-top:12px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:14px 16px;border-radius:15px;border:1px solid rgba(242,164,59,.55);background:linear-gradient(135deg,rgba(242,164,59,.15),rgba(20,31,43,.96))}
.next-pass-card.hidden{display:none}.next-pass-card strong{display:block;font-size:25px;margin-top:3px}.next-pass-card small{display:block;color:#d7e0e8;margin-top:4px}.next-pass-height{text-align:right}.next-pass-height span{display:block;color:var(--muted);font-size:10px;letter-spacing:.1em}.next-pass-height strong{font-size:30px;color:var(--accent2)}
body.pass-near .next-pass-card{border-color:#ffe08a;box-shadow:0 0 0 2px rgba(242,164,59,.18),0 12px 35px rgba(0,0,0,.25)}

.pi-record-row{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:9px;align-items:center;margin-top:10px;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:#0f161e}.pi-record-row strong,.pi-record-row small{display:block}.pi-record-row strong{margin-top:3px}.pi-record-row small{color:var(--muted);margin-top:3px}.record-live{color:var(--good)!important}.record-off{color:var(--muted)!important}.record-error{color:var(--danger)!important}

.replay-panel{padding:14px}.replay-head{display:flex;justify-content:space-between;gap:14px;align-items:center}.replay-head h2{margin:4px 0}.replay-actions{display:flex;gap:8px;flex-wrap:wrap}.replay-session-row{display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:9px;align-items:end;margin-top:12px}.replay-session-row select{padding:11px 12px;border-radius:11px;background:#0e141b;border:1px solid var(--line);color:var(--text)}.replay-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.replay-stats>div{background:#0f161e;border:1px solid var(--line);border-radius:12px;padding:10px}.replay-stats span{display:block;color:var(--muted);font-size:11px}.replay-stats strong{font-size:16px}.replay-controls{display:grid;grid-template-columns:auto 1fr minmax(220px,auto);gap:10px;align-items:center;margin-top:12px}.replay-controls input[type=range]{width:100%}.replay-controls strong{font-size:12px;text-align:right}.replay-track-marker{background:transparent;border:none}.replay-dot{width:22px;height:22px;border-radius:50%;background:#c684ff;border:3px solid white;box-shadow:0 3px 10px #0009}

/* V10 überschreibt die alten V8/V9 Fahrmodus-Regeln bewusst */
body.drive-mode .main-tabs{display:none}
body.drive-mode .topbar{display:none;padding-top:0}
body.drive-mode .drive-panel{display:none!important}
body.drive-mode .planner,body.drive-mode .toolbar,body.drive-mode .dataset-bar,body.drive-mode .sidebar,body.drive-mode .details,body.drive-mode .route-panel,body.drive-mode .replay-panel{display:none!important}
body.drive-mode .workspace{display:block!important;min-height:0}
body.drive-mode .map-card{display:block!important;min-height:100vh!important;height:100vh!important;border-radius:0}
body.drive-mode #map{min-height:100vh!important;height:100%!important}
body.drive-mode .app-shell{max-width:none;padding:0;gap:0}
body.drive-mode .drive-hud{top:8px}

@media(max-width:900px){
  .main-tabs{grid-template-columns:1fr 1fr}
  body.view-passes .workspace{grid-template-columns:1fr}
  .pi-record-row{grid-template-columns:1fr 1fr}.pi-record-row>div{grid-column:1/-1}
  .replay-stats{grid-template-columns:repeat(3,1fr)}
  .replay-controls{grid-template-columns:auto 1fr}.replay-controls strong{grid-column:1/-1;text-align:left}
}
@media(max-width:600px){
  .main-tabs{position:static;grid-template-columns:1fr 1fr}.main-tab{font-size:12px;padding:9px 7px}
  .pi-record-row{grid-template-columns:1fr}.pi-record-row>div{grid-column:auto}
  .replay-head{align-items:flex-start;flex-direction:column}.replay-actions{display:grid;grid-template-columns:1fr;width:100%}
  .replay-session-row{grid-template-columns:1fr}.replay-stats{grid-template-columns:1fr 1fr}.replay-controls{grid-template-columns:1fr}.replay-controls strong{text-align:left}
  .next-pass-card{grid-template-columns:1fr}.next-pass-height{text-align:left}
  .drive-hud>div:nth-child(4){display:none}
}
/* iPad: nächster Pass bleibt wichtiger als technische Nebenwerte */
@media(max-width:900px){
  .drive-hud .hud-next{display:block;min-width:230px;flex:1.5}
  .drive-hud>div:nth-child(4),.drive-hud>div:nth-child(5){display:none}
}
@media(max-width:620px){
  .drive-hud .hud-next{display:none}
  .drive-hud>div:nth-child(3){display:none}
}
body.view-passes #mapToggle,body.view-planning #mapToggle{display:none}
