/* v12: one continuous learning page. */
.learning-intro{padding:18px 0 8px}.learning-intro h1{font-size:clamp(24px,3vw,38px);line-height:1.15;margin:6px 0 10px}.learning-intro>p:last-child{font-size:15px;color:#53616b;margin:0}.learning-topics{position:sticky;top:0;z-index:70;display:flex;gap:7px;padding:10px 0;background:#f6f5f1f5;backdrop-filter:blur(10px);overflow-x:auto;scrollbar-width:thin}.learning-topics a{padding:10px 16px;white-space:nowrap;border:1px solid #dce1e3;border-radius:24px;background:#fff;color:#28343b;text-decoration:none;font-size:14px;font-weight:700}.learning-topics a[aria-current=true]{background:#172c28;color:#fff;border-color:#172c28}.drive-entry-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:10px 0}.drive-entry-actions button{padding:11px 16px;min-height:44px}.drive-entry-actions button:first-child{background:#bb1127;color:white}.drive-entry-actions p{margin:0;font-size:12px;color:#60706a}.training-choices{margin:20px 0;background:#fff;border:1px solid #dce1e3;border-radius:16px;padding:16px}.training-choices>summary{font-size:16px;font-weight:750;cursor:pointer;min-height:30px}.training-hub{border:0;padding:16px 0}.academy-inline{width:100%;min-width:0}.academy-inline .lw-section{scroll-margin-top:80px;margin:24px 0;padding:24px 18px;background:#fff;border:1px solid #dce1e3;border-radius:20px}.academy-inline .wrap{width:100%;max-width:100%;margin-left:0;margin-right:0;box-sizing:border-box}.academy-inline .studio-header h2,.academy-inline h2{font-size:clamp(24px,3vw,36px)}.academy-inline .studio-header{gap:16px}.academy-inline .studio-quickinfo{box-shadow:none}.academy-inline #pruefung{margin-top:24px}.academy-inline .studio-vehicle-bar{position:static}.stage,.topic-panel,#plan-hub,.academy-inline section{scroll-margin-top:82px}#plan-hub{margin-top:24px}.stage,.stage *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.stage button,.stage canvas,.stage [role=slider]{touch-action:none}.stage img{-webkit-user-drag:none}.stage button:focus-visible,.learning-topics a:focus-visible{outline:3px solid #0879d4;outline-offset:3px}.stage .compact-actions button{min-height:44px}.below{margin-top:24px}.drive-menu button{min-height:48px}.drive-header{padding-top:12px;padding-bottom:12px}.drive-header nav{display:flex;gap:8px}.drive-header nav button{font-size:12px;padding:8px}.drive-entry-actions #resume-training{background:#fff;color:#172b24}.academy-inline .studio-v8-panel{max-width:100%}
@media(max-width:700px), (max-width:1000px) and (max-height:500px){
 body:has(#drive-stage:not([hidden])){overflow:auto;overscroll-behavior:auto}
 body:has(#drive-stage:not([hidden])) .drive-header,body:has(#drive-stage:not([hidden])) .below,body:has(#drive-stage:not([hidden])) footer{display:flex}
 body:has(#drive-stage:not([hidden])) .below{display:block}
 body:has(#drive-stage.is-expanded){overflow:hidden;overscroll-behavior:none}
 body:has(#drive-stage.is-expanded) .drive-header,body:has(#drive-stage.is-expanded) .below,body:has(#drive-stage.is-expanded) footer{display:none}
 #drive-stage.stage:not(.is-expanded){position:relative;inset:auto;height:65svh;min-height:470px;max-height:660px;margin:0;border:1px solid #d9dedc;border-radius:18px;z-index:1}
 #drive-stage.stage.is-expanded{position:fixed;inset:0;width:100%;height:100dvh;max-height:none;min-height:0;border-radius:0;z-index:1000}
 #drive-stage .drive-expand{display:block;top:76px;right:12px;font-size:11px;min-height:38px;padding:8px 10px}
 #drive-stage .gas-pedal{width:82px;height:118px}#drive-stage .brake-pedal{width:84px;height:90px}#drive-stage .pedal-controls{gap:10px}
 #drive-stage .gear-picker button{min-width:44px;min-height:44px}#drive-stage #drive-parking{min-width:112px;max-width:145px;min-height:44px;padding:6px;font-size:10px}
 #drive-stage .hud-signals button{width:44px;height:44px;min-height:44px}#drive-stage .hud{max-width:calc(100% - 90px);gap:4px;padding:6px}.learning-topics{gap:6px}.learning-topics a{font-size:12px;padding:10px 13px}.learning-intro{padding-top:5px}.learning-intro .eyebrow{font-size:10px;margin:6px 0}.learning-intro h1{font-size:25px}.learning-intro>p:last-child{font-size:12px}.drive-entry-actions button{font-size:12px;padding:9px 12px}.drive-entry-actions p{width:100%}.academy-inline .lw-section{padding:20px 12px}.academy-inline .studio-toolbar{gap:8px}.academy-inline .studio-v7-tools label{min-width:0}.academy-inline .studio-detail{padding:16px}
}
@media(max-width:359px){#drive-stage .gas-pedal{width:72px}#drive-stage .brake-pedal{width:74px}#drive-stage .pedal-controls{gap:8px}#drive-stage #drive-steer{width:70px;height:70px}#drive-stage .steer-arrows button{width:44px;min-height:44px}#drive-stage .quick-drive-actions{left:8px;right:8px;gap:5px}#drive-stage .gear-picker button{padding:5px;min-width:42px}#drive-stage .speed strong{font-size:22px}#drive-stage .gear-display{padding:0 3px}}
@media(max-height:500px) and (max-width:1000px){#drive-stage.stage:not(.is-expanded){height:360px;min-height:360px}#drive-stage .gas-pedal{height:100px}#drive-stage .brake-pedal{height:74px}#drive-stage .drive-expand{top:70px}#drive-stage .quick-drive-actions{left:112px;right:190px;bottom:15px;flex-wrap:wrap}#drive-stage .quick-drive-actions button{min-height:42px}#drive-stage .gear-picker button{min-width:40px}#drive-stage #drive-parking{min-width:130px}#drive-stage .motion-help,#drive-stage .mobile-driving-hint{left:110px;right:190px;bottom:120px}}
.learning-path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:24px 0}.learning-step{font-size:13px;padding:16px;text-align:left;border-radius:14px;line-height:1.5;background:#f1f7ef}.learning-path>.fine{grid-column:1/-1}.sign-catalog,.route-coverage{margin:16px 0;border:1px solid #dce4dd;border-radius:14px;padding:16px}.sign-catalog input{width:100%;padding:12px;border:1px solid #c8d4cb;border-radius:10px;margin:12px 0}.sign-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sign-results article{padding:16px;background:#f5f7f3;border-radius:12px;font-size:13px}.sign-results p{font-size:13px}.sign-results a{font-size:12px}.route-coverage button{font-size:13px;padding:8px}.route-coverage p{font-size:13px}#trace-map svg{max-height:65dvh;width:100%}
@media(max-width:700px){.learning-path,.sign-results{grid-template-columns:1fr 1fr}.learning-step{font-size:12px;padding:12px}}
@media(prefers-reduced-motion:no-preference){.stage:has(#drive-result:not([hidden])) #result-title{animation:result-arrives .3s ease-out}@keyframes result-arrives{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}}
.drive-vehicle-label{display:flex;align-items:center;gap:10px;font-size:12px}.drive-vehicle-label select{padding:10px;border:1px solid #d4ded7;border-radius:10px;min-height:44px;font-size:12px;max-width:220px}#manual-gears{display:flex;align-items:center;gap:6px;font-size:11px;background:#fff;padding:5px 10px;border-radius:10px;color:#17322a}#manual-gears select{min-height:38px;padding:6px;border:1px solid #ced7cf;border-radius:6px}#manual-gears[hidden],#automatic-gears[hidden],#drive-clutch[hidden]{display:none}.clutch-pedal{height:108px;width:76px;background:#1c5682;color:#fff;align-self:flex-end}.has-clutch .brake-pedal{width:76px}.has-clutch .gas-pedal{width:76px}
@media(max-width:700px){#drive-stage .has-clutch .clutch-pedal,#drive-stage .has-clutch .brake-pedal,#drive-stage .has-clutch .gas-pedal{width:68px;font-size:10px}#drive-stage .has-clutch{gap:7px}.drive-vehicle-label{width:100%}.drive-vehicle-label select{flex:1;max-width:none}}
@media(max-width:359px){#drive-stage .has-clutch .clutch-pedal,#drive-stage .has-clutch .brake-pedal,#drive-stage .has-clutch .gas-pedal{width:58px;font-size:9px}}
#manual-gears{gap:5px;padding:3px}#manual-gears button{min-width:44px;min-height:44px;padding:4px;text-align:center}#manual-gears label{font-size:9px;display:flex;align-items:center;gap:4px}#manual-gears select{width:44px;min-height:44px}#manual-gears[hidden]{display:none}
.sign-results img{width:80px;height:80px;object-fit:contain;background:white;border-radius:8px;margin-bottom:10px;display:block}.framework-tasks{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.framework-tasks button{font-size:12px;padding:9px 12px}

.exercise-filters{display:grid;gap:6px;margin:18px 0}.exercise-filters input,.exercise-filters select{min-height:48px;width:100%;border:1px solid #c9d1d4;border-radius:12px;padding:10px;font:inherit;background:white;color:#18292c}.exercise-filters p{margin:4px 0;color:#55656b}.exercise-choice[hidden]{display:none!important}
@media(max-width:700px){
 #drive-stage .pedal-controls button{padding:4px;white-space:nowrap;text-align:center}
 #drive-stage #manual-gears{height:48px;min-height:48px;align-items:center}
 #drive-stage #manual-gears label{display:flex;flex-direction:row;align-items:center;gap:4px;margin:0;line-height:1}
 #drive-stage #manual-gears label>span{display:none}
 #drive-stage #manual-gears button,#drive-stage #manual-gears select{height:44px;min-height:44px;margin:0;padding:4px}
 #drive-stage #drive-parking{align-self:center;height:48px}
 #drive-stage .drive-expand{left:auto}
}
@media(max-width:400px){.sign-results{grid-template-columns:minmax(0,1fr)}.sign-results article{min-width:0;overflow-wrap:anywhere}.learning-path{grid-template-columns:1fr 1fr}}
@media(max-width:359px){#drive-stage .drive-expand{font-size:0!important;width:44px;height:44px;padding:0}#drive-stage #manual-gears label{font-size:0}#drive-stage #manual-gears select{font-size:12px}#drive-stage .has-clutch button{font-size:9px;padding:3px}}

.studio-name-label{position:absolute;z-index:9;transform:translate(-70%,-125%);border:1px solid #dce5e0;background:#fff;color:#193b30;border-radius:10px;padding:8px 12px;min-height:40px;max-width:180px;font-size:13px;box-shadow:0 4px 20px #0002}
/* Photo explanations stay inside their own learning section at every breakpoint. */
.academy-inline #studio-quickinfo{position:relative!important;inset:auto!important;transform:none!important;width:100%!important;max-width:100%!important;max-height:none!important;margin:12px 0!important;z-index:2!important;box-sizing:border-box}
.academy-inline #studio-quickinfo[hidden]{display:none!important}
@media(max-height:500px) and (max-width:1000px){
 #drive-stage .quick-drive-actions,#drive-stage.is-expanded .quick-drive-actions{top:auto!important;bottom:16px!important;left:190px;right:190px;flex-wrap:nowrap;justify-content:center;gap:8px}
 #drive-stage .motion-help,#drive-stage.is-expanded .motion-help{top:auto!important;bottom:78px!important;left:190px;right:190px}
 #drive-stage .steer-arrows button{width:44px;min-height:44px;height:44px}
}
@media(max-width:650px) and (max-height:500px){
 #drive-stage .quick-drive-actions,#drive-stage.is-expanded .quick-drive-actions{top:90px!important;bottom:auto!important;left:12px;right:auto}
 #drive-stage .motion-help,#drive-stage.is-expanded .motion-help{left:190px;right:170px;bottom:115px!important}
 #drive-stage .motion-help .motion-hint{display:none}
 #drive-stage .quick-drive-actions .gear-picker button{min-width:40px}
}
.learning-motivation{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:20px;border:1px solid #d8e2db;border-radius:16px;background:#f5f8f2;margin:20px 0}.learning-motivation h3{font-size:18px;margin:0 0 12px}.learning-motivation label{font-size:13px;display:flex;gap:8px;align-items:center}.learning-motivation select{display:block;margin:8px 0;padding:10px;min-height:44px;border:1px solid #c7d6cc;border-radius:8px;background:white}.learning-motivation progress{width:100%;height:12px;accent-color:#28634a}.learning-motivation p{font-size:13px}.learning-badge{display:inline-block;border:1px solid #d1dad3;border-radius:20px;padding:8px 10px;font-size:12px;margin:0 5px 6px 0}.learning-badge.earned{background:#d4ead8;border-color:#91b89a;color:#124529}.learning-badge.locked{color:#59695f;background:#fff}.reward-motion input{width:20px;height:20px}.no-reward-motion #result-title{animation:none!important}@media(max-width:650px){.learning-motivation{grid-template-columns:1fr;padding:16px}}
@media(max-width:359px){.drive-header{gap:8px}.drive-header nav a{display:none}.drive-header nav button{padding:7px 9px;font-size:11px}.drive-header .brand{min-width:0}}
.pause-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}.pause-actions button{min-height:48px;text-align:left;font-size:13px}.pause-settings{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px;background:#f1f5f0;border-radius:12px}.pause-settings label{display:flex;flex-direction:column;gap:6px;font-size:12px}.pause-settings select{min-height:44px;border:1px solid #bbcbbf;border-radius:8px;padding:8px;max-width:100%;min-width:0;background:white}.pause-settings input[type=checkbox]{width:22px;height:22px}.rule-help{display:flex;align-items:center;gap:8px;font-size:13px;margin:16px 0}.rule-help input{width:22px;height:22px}#drive-debug pre{white-space:pre-wrap;font-size:11px;background:#14222a;color:#d7f6df;padding:12px;border-radius:10px}#drive-debug p{font-size:11px}@media(max-width:420px){.pause-actions,.pause-settings{grid-template-columns:1fr}}
.catalog-row{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:8px;align-items:stretch}.catalog-row .exercise-choice{width:100%;text-align:left}.catalog-favorite{font-size:26px;padding:0;min-width:48px;min-height:48px;border-radius:14px;align-self:stretch}.catalog-favorite[aria-pressed=true]{color:#a22331;background:#fff0e8}.catalog-remember{display:flex;align-items:center;gap:10px;margin:12px 0}.catalog-remember input{width:20px;height:20px}.free-map .map-starts{flex-wrap:wrap}.free-map{max-height:calc(100% - 20px);overflow-y:auto;overscroll-behavior:contain}.free-map svg{max-height:35vh;width:100%}
@media(max-width:700px){.catalog-row .exercise-choice{grid-template-columns:32px minmax(0,1fr);padding:12px}.catalog-row .exercise-choice-start{grid-column:2}.catalog-row .exercise-choice small{line-height:1.5}.free-map .map-starts button{min-height:44px}.free-map svg{max-height:26vh}}
#exercise-dialog[open]{display:flex;flex-direction:column;height:min(88dvh,900px);overflow:hidden;box-sizing:border-box}#exercise-dialog .exercise-dialog-head{flex-shrink:0}#exercise-dialog .exercise-dialog-head h2{font-size:25px;margin:5px 0}#exercise-dialog .exercise-dialog-head p{margin:4px 0;font-size:13px}#exercise-dialog .free-start{flex-shrink:0;min-height:44px;padding:10px 14px;margin:12px 0 0}#exercise-dialog .exercise-filters{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0;flex-shrink:0}#exercise-dialog .exercise-filters label{margin:0;font-size:12px;line-height:1.35;display:flex;flex-direction:column;gap:4px}#exercise-dialog .exercise-filters select,#exercise-dialog .exercise-filters input[type=search]{margin:0;min-height:44px;padding:8px;font-size:14px}#exercise-dialog .catalog-search{grid-column:1/-1}#exercise-dialog .exercise-filters .catalog-remember{flex-direction:row;align-items:center;grid-column:1/-1;min-height:28px;gap:8px}#exercise-dialog .catalog-remember input{width:20px;min-height:20px;height:20px;flex-shrink:0}#exercise-found{grid-column:1/-1;font-size:12px}#exercise-dialog .exercise-dialog-list{overflow-y:auto;min-height:80px;flex:1;align-content:start;overscroll-behavior:contain;padding-right:4px}#exercise-dialog>.fine{font-size:11px;margin:10px 0 0;line-height:1.4;flex-shrink:0}
@media(max-width:700px){#exercise-dialog{padding:16px;max-height:94dvh;width:calc(100% - 20px)}#exercise-dialog[open]{height:94dvh}#exercise-dialog .exercise-dialog-head h2{font-size:22px}#exercise-dialog .free-start small{display:none}#exercise-dialog .exercise-filters{gap:8px;margin:10px 0}#exercise-dialog .catalog-row .exercise-choice strong{font-size:14px}#exercise-dialog .catalog-row .exercise-choice small{font-size:11px;line-height:1.4}#exercise-dialog .catalog-row .exercise-choice{padding:10px;gap:7px}.catalog-row{gap:6px}}
@media(max-width:700px){#exercise-dialog .exercise-dialog-head p:not(.eyebrow){display:none}#exercise-dialog .exercise-dialog-head .eyebrow{font-size:10px}}
.camera-view-panel{position:absolute;top:calc(var(--compact-height,44px) + 26px);right:12px;z-index:22;display:grid;gap:6px;width:220px;padding:12px;background:#fffffff7;color:#173026;border:1px solid #cbd8d0;border-radius:14px;box-shadow:0 8px 28px #0003}.camera-view-panel[hidden]{display:none}.camera-view-panel strong{font-size:13px;padding:4px}.camera-view-panel button{min-height:44px;text-align:left;padding:10px 12px;border-radius:9px;font-size:13px}.camera-view-panel button[aria-pressed=true]{background:#173d32;color:#fff}#drive-camera-compact{white-space:nowrap}
@media(max-width:700px),(max-width:1000px) and (max-height:500px){#drive-stage .compact-actions,#drive-stage.is-expanded .compact-actions{flex-direction:column;align-items:flex-end;max-width:170px}#drive-stage #drive-tools-toggle{order:-1}#drive-stage #drive-camera-compact{min-height:44px;font-size:11px;padding:8px 10px}#drive-stage .camera-view-panel{top:116px;max-width:calc(100% - 24px)}#drive-stage .drive-expand{top:114px!important}#drive-stage .hud,#drive-stage.is-expanded .hud{max-width:calc(100% - 104px)}}
@media(max-width:700px),(max-width:1000px) and (max-height:500px){#drive-stage .compact-actions,#drive-stage.is-expanded .compact-actions{gap:20px}#drive-stage .camera-view-panel{top:134px}#drive-stage .drive-expand{top:134px!important}}
/* One driving layout across devices: road first, settings in the pause menu. */
#drive-stage .compact-actions,#drive-stage.is-expanded .compact-actions{top:12px;right:12px;left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:20px;max-width:170px;width:auto;z-index:12}#drive-stage #drive-tools-toggle{order:-1;min-height:44px;max-width:96px;font-size:11px;text-align:center;padding:8px 10px}#drive-stage #drive-camera-compact{min-height:44px;font-size:11px;background:#fff;padding:8px 10px}#drive-stage #drive-pause-compact{display:none}#drive-stage .hud,#drive-stage.is-expanded .hud{top:12px;left:12px;right:auto;max-width:calc(100% - 120px);padding:7px 9px;gap:5px}#drive-stage .hud-small,#drive-stage .gear-display span,#drive-stage .scene-label{display:none!important}#drive-stage .speed strong{font-size:27px}#drive-stage .gear-display strong{font-size:23px}#drive-stage .hud-signals button{width:33px;min-height:38px;height:38px;font-size:19px}#drive-stage .camera-view-panel{top:134px;background:#fff;z-index:22}#drive-stage .quick-drive-actions,#drive-stage.is-expanded .quick-drive-actions{top:auto;bottom:157px;left:12px;right:12px;justify-content:center;gap:8px}#drive-stage .quick-drive-actions button{min-height:44px;font-size:12px}#drive-stage .motion-help,#drive-stage.is-expanded .motion-help{top:auto;bottom:211px;left:12px;right:12px;max-width:none;display:flex;justify-content:center;font-size:12px;padding:0;background:none;border:0;box-shadow:none}#drive-stage .motion-help>span{display:none}#drive-stage .motion-help button{min-height:44px;border-radius:22px;background:#fff;color:#19382a}#drive-stage .mobile-driving-hint{bottom:211px}#drive-stage .lesson-limit{display:none}#drive-stage .camera-view-panel button{min-height:44px}.drive-menu #drive-expand{display:block!important;position:static;width:auto;max-width:none;min-height:44px;font-size:13px;padding:10px}.drive-menu #drive-expand::after{content:none}.drive-menu #drive-camera{display:none}.drive-menu .session-controls{display:grid!important}
@media(max-width:360px){#drive-stage .hud{padding:6px;max-width:calc(100% - 110px);gap:4px}#drive-stage .hud-signals button{width:29px;font-size:18px}#drive-stage .gear-display{padding:0 3px}}
@media(max-width:1000px) and (max-height:500px){#drive-stage .quick-drive-actions,#drive-stage.is-expanded .quick-drive-actions{bottom:12px;left:120px;right:170px}#drive-stage .motion-help,#drive-stage.is-expanded .motion-help{bottom:68px;left:120px;right:170px}}

/* Duplicate shortcuts are already represented by the primary pause actions. */
.drive-menu #drive-reset-stage,.drive-menu #drive-exit-stage,.drive-menu #drive-pause{display:none!important}
/* Touch targets remain usable even on narrow phones. */
#drive-stage .hud-signals button{width:44px;min-height:44px;height:44px}
@media(max-width:360px){#drive-stage .hud{max-width:180px;flex-wrap:wrap}#drive-stage .hud-signals{flex-basis:100%}#drive-stage .hud-signals button{width:44px;min-height:44px;height:44px}}
@media(max-width:360px){#drive-stage .hud,#drive-stage.is-expanded .hud{box-sizing:border-box;width:170px;max-width:170px}}
/* Temporary teaching notices never cover gear or pedal controls. */
#drive-stage .inline-teacher,#drive-stage.is-expanded .inline-teacher{top:142px!important;bottom:auto!important;left:12px!important;right:auto!important;width:min(340px,calc(100% - 24px));max-width:calc(100% - 24px);pointer-events:none}

#drive-steer span{width:100%;height:100%;font-size:0;display:block}#drive-steer svg{display:block;width:100%;height:100%}
/* Small north-up map sits above the two direct driving actions. */
#drive-stage{--mini-size:136px}.drive-minimap{position:absolute;top:12px;right:12px;width:var(--mini-size);height:var(--mini-size);border:3px solid #fffffff2;border-radius:16px;overflow:hidden;background:#d9e4d4;box-shadow:0 4px 18px #142e252e;z-index:10;pointer-events:none}.drive-minimap svg{display:block;width:100%;height:100%}
#drive-stage .compact-actions,#drive-stage.is-expanded .compact-actions{top:calc(28px + var(--mini-size));display:flex;flex-direction:row;align-items:center;gap:8px;max-width:260px}#drive-stage #drive-tools-toggle{order:1}#drive-stage .camera-view-panel{top:calc(84px + var(--mini-size))}
@media(max-width:700px){#drive-stage{--mini-size:104px}}
@media(max-width:1000px) and (max-height:500px){#drive-stage{--mini-size:92px}}
@media(max-width:1000px) and (max-height:500px){#drive-stage .camera-view-panel{width:400px;max-width:calc(100% - 24px);grid-template-columns:1fr 1fr}#drive-stage .camera-view-panel strong{grid-column:1/-1}}
@media(max-width:360px) and (max-height:500px){#drive-stage{--mini-size:104px}}

/* v13.2: focus on one action and a clear view of the street. */
.drive-entry-actions #resume-training{background:#173d32;color:#fff;font-weight:750;order:-1}.drive-entry-actions #entry-training{background:white;color:#173d32}.learning-save{border:1px solid #ccd9d2;border-radius:14px;padding:16px;margin:16px 0;background:#f2f7f3}.learning-save label{display:flex;gap:10px;align-items:center;font-weight:700}.learning-save input{width:22px;height:22px}.learning-save p{font-size:13px;margin:8px 0 0}.framework-details{margin:16px 0}.framework-details>summary{cursor:pointer;padding:16px;background:white;border:1px solid #dce1e3;border-radius:12px;font-weight:700;min-height:48px;box-sizing:border-box}
.academy-inline .studio-direct-views{display:flex;gap:8px;flex-wrap:wrap;padding:12px;background:#18252e}.academy-inline .studio-direct-views button{min-height:44px;padding:9px 14px;background:#fff;color:#173d32;border:1px solid #c3d3ca;border-radius:10px}.studio-annotations [hidden],.studio-annotations svg[hidden]{display:none!important}
#minimap-toggle{position:absolute;right:12px;top:153px;min-height:36px;z-index:15;font-size:11px;padding:7px 10px;border-radius:10px}#drive-stage.map-collapsed .compact-actions{top:56px!important}#drive-stage.map-collapsed #minimap-toggle{top:10px}
@media(max-width:700px){#drive-stage .compact-actions,#drive-stage.is-expanded .compact-actions{top:122px!important;left:12px!important;right:12px!important;max-width:none;flex-direction:row;justify-content:space-between;gap:8px}#drive-stage #drive-tools-toggle{order:0;max-width:none;white-space:nowrap}#drive-stage #minimap-toggle{top:84px;right:12px;min-height:36px;max-width:104px;font-size:10px;padding:5px}#drive-stage.map-collapsed .compact-actions{top:84px!important}#drive-stage .camera-view-panel{top:178px!important;width:calc(100% - 24px);box-sizing:border-box;grid-template-columns:1fr 1fr}#drive-stage.map-collapsed .camera-view-panel{top:140px!important}.camera-view-panel strong{grid-column:1/-1}.academy-inline .studio-direct-views{padding:8px;gap:6px}.academy-inline .studio-direct-views button{font-size:12px;padding:8px 10px;flex:1}.drive-entry-actions{gap:8px}.drive-entry-actions #resume-training{width:100%}}
@media(max-height:500px) and (max-width:1000px){#drive-stage .compact-actions,#drive-stage.is-expanded .compact-actions{top:12px!important;right:115px!important;left:auto!important;flex-direction:row;max-width:none;gap:8px}#drive-stage #minimap-toggle{top:105px;right:12px}#drive-stage .camera-view-panel{top:66px!important;right:115px!important;width:270px;grid-template-columns:1fr 1fr}#drive-stage.map-collapsed .compact-actions{top:12px!important;right:12px!important}#drive-stage.map-collapsed #minimap-toggle{top:68px}#drive-stage.map-collapsed .camera-view-panel{top:116px!important;right:12px!important}}

#drive-stage #minimap-toggle{top:104px;right:12px;min-width:44px;min-height:44px;width:44px;height:44px;padding:4px;font-size:24px;background:#fff;color:#173d32}#drive-stage.map-collapsed #minimap-toggle{top:10px;width:70px;font-size:12px}#drive-stage #drive-minimap[hidden]{display:none!important}.academy-inline .studio-annotations button{font-size:14px;min-height:38px;padding:8px 12px}
@media(max-width:700px){#drive-stage #minimap-toggle{top:72px;max-width:none;min-width:44px;height:44px;font-size:24px}#drive-stage.map-collapsed #minimap-toggle{top:12px;font-size:12px}#drive-stage.map-collapsed .compact-actions{top:92px!important}}
@media(max-width:360px){#drive-stage.map-collapsed .compact-actions{top:126px!important}#drive-stage.map-collapsed .camera-view-panel{top:180px!important}}
@media(max-height:500px) and (max-width:1000px){#drive-stage #minimap-toggle{top:60px}#drive-stage.map-collapsed #minimap-toggle{top:66px}#drive-stage.map-collapsed .compact-actions{top:12px!important}}

#drive-stage .drive-return{position:absolute;top:45%;left:50%;transform:translate(-50%,-50%);width:min(360px,calc(100% - 40px));box-sizing:border-box;padding:22px;border-radius:18px;background:#fffffff5;color:#17382c;z-index:45;box-shadow:0 12px 48px #07120f40;pointer-events:auto}#drive-stage .drive-return[hidden]{display:none!important}.drive-return strong{font-size:22px}.drive-return p{font-size:14px;line-height:1.5}.drive-return button{min-height:48px;width:100%;background:#173d32;color:#fff;font-weight:750}.drive-return button:disabled{opacity:.6}@media(max-height:500px){#drive-stage .drive-return{top:45%;padding:14px;width:330px}.drive-return p{margin:6px 0}.drive-return strong{font-size:18px}}

.graphics-dialog{width:min(420px,calc(100% - 28px));box-sizing:border-box;max-height:90dvh;overflow:auto;border:1px solid #d5e0da;border-radius:20px;padding:22px;background:#fff;color:#173d32}.graphics-dialog::backdrop{background:#10251d70}.graphics-dialog>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.graphics-dialog h2{font-size:24px;margin:0}.graphics-dialog p{font-size:14px;line-height:1.5}.graphics-dialog #graphics-close{min-width:44px;min-height:44px}.graphics-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.graphics-choices button{min-height:80px;text-align:left;padding:14px;border:1px solid #d3ddd6;border-radius:12px}.graphics-choices button[aria-pressed=true]{background:#173d32;color:white}.graphics-choices small{display:block;font-weight:400;font-size:12px;margin-top:5px}#drive-stage #graphics-compact{min-height:44px;padding:8px 10px;font-size:11px;order:2}#drive-stage .compact-actions{max-width:340px}
@media(max-width:700px){#drive-stage .compact-actions,#drive-stage.is-expanded .compact-actions{justify-content:space-between;gap:6px}#drive-stage #drive-tools-toggle{font-size:11px;padding:8px}#drive-stage #graphics-compact{padding:8px 10px}.graphics-dialog{padding:18px}}
@media(max-height:500px) and (max-width:1000px){.graphics-dialog{padding:12px;width:520px}.graphics-dialog h2{font-size:20px}.graphics-dialog p{margin:6px 0}.graphics-choices button{min-height:60px;padding:9px}}

/* Clickable navigation, with a visible action and keyboard focus. */
#drive-minimap{cursor:pointer}#drive-minimap::after{content:"Karte öffnen ↗";position:absolute;bottom:3px;left:4px;right:4px;text-align:center;font-size:10px;background:#fff;color:#123c2d;border-radius:4px;padding:3px;font-weight:700}#drive-minimap:focus-visible{outline:3px solid #e20b2d;outline-offset:3px}
#free-map-panel [data-free-start]{min-height:44px}#free-map-panel svg [data-free-start]{cursor:pointer}#free-map-panel svg [data-free-start]:hover,#free-map-panel svg [data-free-start]:focus{stroke:#e20b2d;stroke-width:18;outline:none}

#drive-stage #free-map-panel{position:absolute;inset:12px;width:auto;max-height:none;z-index:30;box-shadow:0 12px 60px #12262966;border-radius:20px;padding:18px;overflow:auto;background:#f8faf7}
#drive-stage #free-map-panel svg{display:block;width:100%;height:42vh;min-height:160px;max-height:460px;background:#d8e2d1;border-radius:12px}
#free-map-panel .map-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}#free-map-panel .map-heading strong{font-size:22px}#free-map-panel .map-starts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}#free-map-panel .map-starts>span{grid-column:1/-1}#free-map-panel .map-starts button{font-size:14px;padding:10px}
@media(max-width:700px){#drive-stage #free-map-panel{inset:8px;padding:12px}#drive-stage #free-map-panel svg{height:32vh;max-height:32vh}#free-map-panel .map-starts{grid-template-columns:1fr 1fr}#free-map-panel .map-heading strong{font-size:19px}}

#speed-feedback{position:absolute;top:106px;left:16px;right:190px;z-index:12;background:#fff2da;color:#572600;border-left:5px solid #c74c09;border-radius:10px;padding:12px;font-size:15px;font-weight:700;pointer-events:none}#speed-feedback[hidden]{display:none}@media(max-width:700px){#speed-feedback{top:100px;left:8px;right:8px;font-size:12px;padding:8px}}

#drive-stage #drive-minimap{pointer-events:auto}#drive-minimap-svg{pointer-events:none}

@media(max-width:700px){#drive-stage .lesson-limit{padding:4px 6px;font-size:9px;line-height:1.25}#drive-stage .lesson-limit b{font-size:15px}#drive-stage .lesson-limit small{display:none}}

/* v13.3: show actions when needed, keep the road centre open. */
#drive-stage.is-driving .quick-drive-actions{visibility:hidden;pointer-events:none}.pov-settings{border:1px solid #dce3df;border-radius:14px;margin:16px 0;padding:14px}.pov-settings label{display:grid;grid-template-columns:90px 1fr;gap:12px;align-items:center;margin:12px 0}.pov-settings input{width:100%}.pov-settings p{font-size:12px;color:#596b64;line-height:1.5}
.lesson-steps{position:absolute;left:16px;top:104px;z-index:10;max-width:270px;color:#17372e;background:#f9fcf7ed;border:1px solid #cbd8d1;border-radius:12px;font-size:13px;box-shadow:0 3px 12px #162a2317}.lesson-steps[hidden]{display:none}.lesson-steps summary{padding:10px 12px;min-height:40px;cursor:pointer;font-weight:700}.lesson-steps ol{margin:0;padding:6px 18px 12px 30px;list-style:none}.lesson-steps li{padding:5px 0;line-height:1.4}.lesson-steps .done{color:#267052}.preview-steps{padding:16px 16px 16px 36px;border-radius:12px;background:#eff5f0;font-size:14px;line-height:1.8}#result-more{margin:14px 0;border-top:1px solid #dde5df;padding-top:12px}#result-more>summary{cursor:pointer;font-weight:600;padding:8px}#result-more>button{margin-top:8px;width:100%}
.gas-pedal small{display:block;font-size:9px;font-weight:400;margin-top:5px}.gas-pedal.held{background:linear-gradient(to top,#34715e calc(var(--pedal-pressure,1)*100%),#193b31 0)}
@media(max-width:700px),(max-width:1000px) and (max-height:500px){#drive-stage .lesson-steps{top:140px;left:12px;max-width:220px;font-size:11px}#drive-stage.is-driving #graphics-compact{display:none}#drive-stage.is-driving .lesson-steps:not([open]){opacity:.9}#drive-stage .result{max-height:calc(100dvh - 24px);overflow:auto;padding:20px}#drive-stage .result h2{font-size:25px}}
@media(min-width:701px) and (max-height:500px){#drive-stage .lesson-steps{top:88px;max-width:230px}}

/* Keep exit, camera and menu within viewport after adding direct navigation. */
#drive-stage .compact-actions,#drive-stage.is-expanded .compact-actions{left:auto!important;right:12px!important;width:max-content!important;max-width:calc(100% - 24px)!important;flex-wrap:wrap!important;justify-content:flex-end;box-sizing:border-box}
#drive-stage #drive-tools-toggle{white-space:nowrap;min-width:86px;min-height:44px}
@media(max-width:700px){#drive-stage .compact-actions,#drive-stage.is-expanded .compact-actions{left:12px!important;right:12px!important;width:auto!important;justify-content:flex-end;gap:5px}#drive-stage #graphics-compact{display:none!important}#drive-stage #drive-camera-compact{max-width:130px;min-height:44px}#drive-stage #drive-tools-toggle{min-width:84px}#drive-stage .driver-look{bottom:140px}.drive-stage:not(.is-driving) .driver-look{bottom:205px}}
/* Pedal labels must stay inside the touch target on narrow screens. */
#drive-stage .gas-pedal small{display:block;max-width:100%;white-space:normal;overflow-wrap:normal;line-height:1.25;font-size:10px}
@media(max-width:700px){#drive-stage .gas-pedal small{display:none}#drive-stage .driver-look{bottom:140px}#drive-stage:not(.is-driving) .driver-look{bottom:205px}}

/* v13.4.4: use the window width and keep transmission at the lower edge. */
#drive-stage.stage:not(.is-expanded){width:calc(100vw - 32px)!important;max-width:none!important;margin-left:calc(50% - 50vw + 16px)!important;margin-right:0!important;box-sizing:border-box}
#drive-stage .quick-drive-actions,#drive-stage.is-expanded .quick-drive-actions{top:auto!important;bottom:max(12px,env(safe-area-inset-bottom))!important;left:180px!important;right:190px!important;justify-content:center;flex-wrap:nowrap;gap:6px}
#drive-stage .quick-drive-actions button{min-height:44px;font-size:12px}
#drive-stage .driver-look{bottom:72px!important}
@media(max-width:700px){
 #drive-stage.stage:not(.is-expanded){width:calc(100vw - 12px)!important;margin-left:calc(50% - 50vw + 6px)!important;border-radius:16px}
 #drive-stage .quick-drive-actions,#drive-stage.is-expanded .quick-drive-actions{left:8px!important;right:8px!important;bottom:max(10px,env(safe-area-inset-bottom))!important;gap:5px}
 #drive-stage .gear-picker button{min-width:38px;padding:6px}
 #drive-stage #drive-parking{min-width:0;padding:7px 9px;flex:0 1 155px}
 #drive-stage .steering-controls,#drive-stage .pedal-controls{bottom:76px!important}
 #drive-stage .driver-look{bottom:76px!important;left:102px;right:102px;max-width:none;flex-wrap:wrap;padding:3px;gap:3px}
 #drive-stage .driver-look>span{display:none}
 #drive-stage .driver-look button{min-height:36px;min-width:40px;padding:5px;font-size:10px;flex:1 1 44%}
 #drive-stage .compact-actions,#drive-stage.is-expanded .compact-actions{gap:4px!important}
 #drive-stage #drive-close-view,#drive-stage #drive-home{min-width:40px;width:40px;padding:6px}
 #drive-stage #drive-camera-compact{font-size:10px;padding:6px;max-width:115px}
 #drive-stage #drive-tools-toggle{font-size:10px;min-width:76px;padding:6px}
 #drive-stage .motion-help,#drive-stage .mobile-driving-hint{bottom:214px!important}
}
@media(max-width:359px){#drive-stage .driver-look{left:86px;right:90px}#drive-stage .gear-picker button{min-width:34px;padding:5px}#drive-stage #drive-parking{font-size:10px}}
@media(max-width:1000px) and (max-height:500px){
 #drive-stage .quick-drive-actions,#drive-stage.is-expanded .quick-drive-actions{left:140px!important;right:180px!important;bottom:max(10px,env(safe-area-inset-bottom))!important}
 #drive-stage .steering-controls,#drive-stage .pedal-controls{bottom:12px!important}
 #drive-stage .driver-look{bottom:68px!important;left:140px;right:180px;flex-wrap:nowrap}
}
@media(max-width:700px){
 #drive-stage .touch-controls,#drive-stage.is-expanded .touch-controls{bottom:calc(76px + env(safe-area-inset-bottom,0px))!important}
 #drive-stage .driver-look{left:100px;right:190px;bottom:76px!important;flex-direction:column;flex-wrap:nowrap}
 #drive-stage .driver-look button{flex:0 0 auto;width:100%;min-width:0;min-height:36px;font-size:9px;padding:4px}
}
@media(max-width:359px){#drive-stage .driver-look{left:86px;right:178px}}
@media(max-width:1000px) and (max-height:500px){
 #drive-stage .touch-controls,#drive-stage.is-expanded .touch-controls{bottom:calc(12px + env(safe-area-inset-bottom,0px))!important}
 #drive-stage .driver-look{left:140px;right:180px;flex-direction:row;bottom:68px!important}
 #drive-stage .driver-look button{flex:1;width:auto}
}
@media(max-width:700px){#drive-stage .driver-look{transform:none!important;width:auto!important}}
@media(max-width:1000px) and (max-height:500px){#drive-stage .driver-look{transform:none!important;width:auto!important}}

#drive-stage.is-driving .quick-drive-actions{visibility:visible;pointer-events:auto}
/* v13.4.8: compact phone controls; keep the central road and horizon visible. */
@media(max-width:700px), (max-width:1000px) and (max-height:500px){
 #drive-stage .hud,#drive-stage.is-expanded .hud{top:calc(env(safe-area-inset-top,0px) + 8px)!important;left:calc(env(safe-area-inset-left,0px) + 8px)!important;gap:3px!important;padding:5px 6px!important;max-width:190px!important;min-height:44px;box-sizing:border-box}
 #drive-stage .speed strong{font-size:22px!important}#drive-stage .speed span{font-size:8px!important}#drive-stage .gear-display{padding:0 4px!important}#drive-stage .gear-display strong{font-size:18px!important}
 #drive-stage .hud-signals{gap:3px!important}#drive-stage .hud-signals button{width:34px!important;height:36px!important;min-height:36px!important;padding:0!important;font-size:19px!important}
 #drive-stage .compact-actions,#drive-stage.is-expanded .compact-actions{top:calc(env(safe-area-inset-top,0px) + 8px)!important;right:calc(env(safe-area-inset-right,0px) + 8px)!important;left:auto!important;gap:4px!important;max-width:110px!important;width:auto!important;flex-wrap:nowrap!important}
 #drive-stage #drive-close-view,#drive-stage #drive-home,#drive-stage #graphics-compact{display:none!important}
 #drive-stage #drive-camera-compact,#drive-stage #drive-tools-toggle{width:50px!important;min-width:50px!important;max-width:50px!important;min-height:44px!important;padding:4px!important;font-size:0!important;overflow:hidden}
 #drive-stage #drive-camera-compact::after{content:'POV ▾';font-size:11px;font-weight:700}#drive-stage #drive-tools-toggle::after{content:'Menü';font-size:11px;font-weight:700}
 #drive-stage #minimap-toggle{top:calc(env(safe-area-inset-top,0px) + 60px)!important;right:calc(env(safe-area-inset-right,0px) + 8px)!important;min-width:44px!important;min-height:40px!important;padding:5px!important;font-size:11px!important}
 #drive-stage .quick-drive-actions,#drive-stage.is-expanded .quick-drive-actions{top:auto!important;bottom:calc(env(safe-area-inset-bottom,0px) + 8px)!important;left:8px!important;right:8px!important;gap:5px!important;justify-content:center!important;flex-wrap:nowrap!important}
 #drive-stage .gear-picker button{min-width:34px!important;min-height:40px!important;padding:5px!important;font-size:11px!important}
 #drive-stage #drive-parking{min-width:110px!important;max-width:130px!important;min-height:40px!important;padding:4px 6px!important;font-size:10px!important}#drive-stage #drive-parking-state{font-size:7px!important}
 #drive-stage .touch-controls,#drive-stage.is-expanded .touch-controls{bottom:calc(env(safe-area-inset-bottom,0px) + 58px)!important;left:8px!important;right:8px!important}
 #drive-stage #drive-steer{width:62px!important;height:62px!important;border-width:5px!important}#drive-stage .steering-controls{gap:4px!important}
 #drive-stage .steer-arrows button{width:36px!important;min-height:40px!important;font-size:20px!important;padding:2px!important}
 #drive-stage .gas-pedal{width:58px!important;height:92px!important;min-height:92px!important;font-size:12px!important}#drive-stage .brake-pedal{width:68px!important;height:64px!important;min-height:64px!important;font-size:11px!important}#drive-stage .pedal-controls{gap:6px!important}#drive-stage .clutch-pedal{width:52px!important;height:64px!important;min-height:64px!important;font-size:9px!important}
 #drive-stage .driver-look{left:50%!important;right:auto!important;bottom:calc(env(safe-area-inset-bottom,0px) + 172px)!important;transform:translateX(-50%)!important;width:210px!important;max-width:calc(100% - 16px)!important;flex-direction:row!important;gap:3px!important;padding:3px!important;flex-wrap:nowrap!important}
 #drive-stage .driver-look>span{display:none!important}#drive-stage .driver-look button{flex:1!important;width:auto!important;min-width:0!important;min-height:36px!important;font-size:9px!important;padding:3px!important}
 #drive-stage .mobile-driving-hint{top:calc(env(safe-area-inset-top,0px) + 110px)!important;bottom:auto!important;left:8px!important;right:60px!important;max-height:100px!important;padding:0 8px!important;font-size:10px!important;box-shadow:none!important;background:#ffffffe0!important}
 #drive-stage .mobile-driving-hint summary{min-height:28px!important}#drive-stage .mobile-driving-hint p{font-size:11px!important}
}
@media(max-width:1000px) and (max-height:500px){
 #drive-stage .quick-drive-actions,#drive-stage.is-expanded .quick-drive-actions{left:130px!important;right:155px!important}
 #drive-stage .touch-controls,#drive-stage.is-expanded .touch-controls{bottom:calc(env(safe-area-inset-bottom,0px) + 8px)!important}
 #drive-stage .steering-controls{flex-direction:row!important;align-items:flex-end!important}
 #drive-stage .driver-look{bottom:calc(env(safe-area-inset-bottom,0px) + 54px)!important}
 #drive-stage .mobile-driving-hint{top:calc(env(safe-area-inset-top,0px) + 106px)!important;max-width:245px!important}
}
@media(max-width:700px), (max-width:1000px) and (max-height:500px){
 #drive-stage .hud,#drive-stage.is-expanded .hud{display:flex!important;flex-wrap:nowrap!important;width:auto!important;max-width:calc(100% - 120px)!important}
 #drive-stage .hud-signals{width:auto!important;flex:none!important;flex-wrap:nowrap!important}
 #drive-stage .gas-pedal small{display:none!important}
}
@media(max-width:700px), (max-width:1000px) and (max-height:500px){
 #drive-stage.stage:not(.is-expanded) .compact-actions{top:calc(env(safe-area-inset-top,0px) + 8px)!important;right:calc(env(safe-area-inset-right,0px) + 8px)!important;left:auto!important;max-width:110px!important}
}

/* Immediate restart, outside the road center and independent of the menu. */
#drive-stage #drive-respawn{position:absolute;top:110px;left:12px;z-index:18;min-width:44px;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #d7e0dc;border-radius:12px;background:#fffffff0;color:#193b32;font-size:27px;line-height:1;box-shadow:0 2px 5px #173d3214}
#drive-stage.is-driving #drive-respawn{top:auto;bottom:calc(env(safe-area-inset-bottom,0px) + 146px)}
@media(max-width:700px), (max-width:1000px) and (max-height:500px){
 #drive-stage #drive-respawn,#drive-stage.is-driving #drive-respawn{top:calc(env(safe-area-inset-top,0px) + 60px);bottom:auto;left:auto;right:calc(env(safe-area-inset-right,0px) + 86px);border-radius:10px;font-size:25px}
}

#manual-gears button small{display:block;font-size:9px;line-height:1.1}#manual-key-help{font-size:10px;line-height:1.4;white-space:nowrap;padding:0 5px}#drive-clutch small{display:block;font-size:10px;margin-top:5px;font-weight:500}
@media(pointer:coarse){#manual-key-help{display:none}#manual-gears button small,#drive-clutch small{display:none}}
@media(max-width:700px) and (pointer:fine){#manual-key-help{font-size:8px;padding:0 2px}}

.pc-key{display:block;font-size:9px!important;line-height:1.1!important;opacity:.7;margin-top:3px}.keyboard-settings{grid-column:1/-1;text-align:left;border-top:1px solid #d8e3dc;padding-top:12px}.keyboard-settings summary{cursor:pointer;font-weight:700;padding:8px 0}.keyboard-settings p{font-size:12px;line-height:1.5}#keyboard-bindings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#keyboard-bindings label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}#keyboard-bindings select{max-width:75px;min-height:44px}#keyboard-binding-status{min-height:1.5em}
@media(pointer:coarse){.pc-key{display:none!important}}

#drive-stage #drive-wiper{position:absolute;left:12px;bottom:calc(env(safe-area-inset-bottom,0px) + 202px);z-index:17;min-height:36px;padding:7px 10px;font-size:11px;background:#fffffff0;color:#193b32;border:1px solid #d7e0dc;border-radius:10px}
@media(max-width:700px), (max-width:1000px) and (max-height:500px){#drive-stage #drive-wiper{left:8px;bottom:auto;top:calc(env(safe-area-inset-top,0px) + 60px);min-height:40px;max-width:132px;font-size:10px}}
@media(min-width:701px) and (min-height:501px){#drive-stage #drive-respawn{top:auto;bottom:calc(env(safe-area-inset-bottom,0px) + 146px)}#drive-stage #drive-wiper{left:auto;right:12px;bottom:calc(env(safe-area-inset-bottom,0px) + 146px)}}
@media(max-width:359px){#learning-path{grid-template-columns:minmax(0,1fr)!important;min-width:0;max-width:100%}#learning-path>*{min-width:0;max-width:100%;overflow-wrap:anywhere}.learning-topics [data-learning-coco]{left:0;right:auto}}
@media(min-width:360px) and (max-width:700px){.learning-topics [data-learning-coco]{left:0;right:auto}}

/* v13.4.28: iOS selection protection and a compact, bottom-aligned driving dock. */
body[data-learning-layout] #drive-stage.stage,body[data-learning-layout] #drive-stage.stage *{-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important;-webkit-tap-highlight-color:transparent}
body[data-learning-layout] #drive-stage.stage input,body[data-learning-layout] #drive-stage.stage textarea,body[data-learning-layout] #drive-stage.stage [contenteditable=true]{-webkit-user-select:text!important;user-select:text!important;-webkit-touch-callout:default!important}
body[data-learning-layout] #drive-stage.stage button,body[data-learning-layout] #drive-stage.stage [role=slider],body[data-learning-layout] #drive-stage.stage canvas{touch-action:none!important}
@media(max-width:700px), (max-width:1000px) and (max-height:500px){
 html:has(#drive-stage:not([hidden])),body:has(#drive-stage:not([hidden])){-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important}
 body[data-learning-layout] #drive-stage.stage button{font-family:inherit}
 body[data-learning-layout] #drive-stage.stage .driver-look,body[data-learning-layout] #drive-stage.stage.is-expanded .driver-look{top:auto!important;bottom:calc(env(safe-area-inset-bottom,0px) + 62px)!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:max-content;max-width:calc(100% - 16px);gap:4px;padding:4px;z-index:18;border-radius:12px;background:#142a32d9}
 body[data-learning-layout] #drive-stage.stage .driver-look>span{display:none}
 body[data-learning-layout] #drive-stage.stage .driver-look button{min-height:40px;min-width:53px;padding:6px 8px;font-size:11px;touch-action:none}
 body[data-learning-layout] #drive-stage.stage .quick-drive-actions,body[data-learning-layout] #drive-stage.stage.is-expanded .quick-drive-actions{top:auto!important;bottom:calc(env(safe-area-inset-bottom,0px) + 8px)!important;left:8px!important;right:8px!important;gap:6px;justify-content:center;z-index:19}
 body[data-learning-layout] #drive-stage.stage .quick-drive-actions button{min-height:44px}
 body[data-learning-layout] #drive-stage.stage .touch-controls,body[data-learning-layout] #drive-stage.stage.is-expanded .touch-controls{bottom:calc(env(safe-area-inset-bottom,0px) + 117px)!important;left:8px;right:8px;z-index:17}
 body[data-learning-layout] #drive-stage.stage #drive-steer{width:64px;height:64px;border-width:5px}
 body[data-learning-layout] #drive-stage.stage .steer-arrows button{width:44px;min-height:44px}
 body[data-learning-layout] #drive-stage.stage .gas-pedal{height:96px;width:60px}
 body[data-learning-layout] #drive-stage.stage .brake-pedal{height:70px;width:74px}
 body[data-learning-layout] #drive-stage.stage .pedal-controls{gap:7px}
 body[data-learning-layout] #drive-stage.stage .compact-actions,body[data-learning-layout] #drive-stage.stage.is-expanded .compact-actions{top:calc(env(safe-area-inset-top,0px) + 8px)!important;right:8px!important;gap:4px!important;max-width:150px!important;flex-wrap:wrap!important}
 body[data-learning-layout] #drive-stage.stage .compact-actions>button{min-width:44px;min-height:44px;padding:7px!important;font-size:11px}
 body[data-learning-layout] #drive-stage.stage #drive-fullscreen-compact{width:44px;min-height:44px;font-size:0!important;line-height:1}
 body[data-learning-layout] #drive-stage.stage #drive-fullscreen-compact::before{content:'⛶';font-size:22px;color:currentColor}
 body[data-learning-layout] #drive-stage.stage #drive-fullscreen-compact::after{display:none!important}
 body[data-learning-layout] #drive-stage.stage .hud,body[data-learning-layout] #drive-stage.stage.is-expanded .hud{top:calc(env(safe-area-inset-top,0px) + 8px)!important;left:8px!important;padding:7px;gap:5px;max-width:calc(100% - 166px)}
 body[data-learning-layout] #drive-stage.stage .hud-signals button{min-width:29px!important;width:29px!important;min-height:36px!important;height:36px!important;font-size:0!important}
 body[data-learning-layout] #drive-stage.stage #drive-signal-left::before{content:'←';font-size:17px}
 body[data-learning-layout] #drive-stage.stage #drive-signal-right::before{content:'→';font-size:17px}
 body[data-learning-layout] #drive-stage.stage #drive-signal-hazard::before{content:'△';font-size:17px}
 body[data-learning-layout] #drive-stage.stage .speed strong{font-size:24px}body[data-learning-layout] #drive-stage.stage .gear-display{padding:0 4px}body[data-learning-layout] #drive-stage.stage .gear-display strong{font-size:20px}
 body[data-learning-layout] #drive-stage.stage .motion-help,body[data-learning-layout] #drive-stage.stage.is-expanded .motion-help,body[data-learning-layout] #drive-stage.stage .mobile-driving-hint{bottom:calc(env(safe-area-inset-bottom,0px) + 231px)!important}
 body[data-learning-layout] #drive-stage.stage .mobile-driving-hint{top:auto!important;height:fit-content!important;font-size:11px;left:8px;right:8px;max-height:110px}
}
@media(max-width:360px){body[data-learning-layout] #drive-stage.stage .compact-actions>button{min-width:40px!important;padding:5px!important}body[data-learning-layout] #drive-stage.stage #drive-fullscreen-compact{width:40px!important;min-width:40px!important}body[data-learning-layout] #drive-stage.stage .compact-actions{max-width:136px!important}body[data-learning-layout] #drive-stage.stage .hud{max-width:calc(100% - 151px)!important;gap:3px!important;padding:5px!important}body[data-learning-layout] #drive-stage.stage #manual-gears{max-width:158px!important}body[data-learning-layout] #drive-stage.stage #drive-parking{min-width:120px!important;font-size:10px!important}body[data-learning-layout] #drive-stage.stage .driver-look button{min-width:50px;font-size:10px}}
@media(max-width:1000px) and (max-height:500px){
 body[data-learning-layout] #drive-stage.stage .driver-look,body[data-learning-layout] #drive-stage.stage.is-expanded .driver-look{bottom:calc(env(safe-area-inset-bottom,0px) + 61px)!important}
 body[data-learning-layout] #drive-stage.stage .quick-drive-actions,body[data-learning-layout] #drive-stage.stage.is-expanded .quick-drive-actions{left:160px!important;right:170px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 8px)!important}
 body[data-learning-layout] #drive-stage.stage .touch-controls,body[data-learning-layout] #drive-stage.stage.is-expanded .touch-controls{bottom:calc(env(safe-area-inset-bottom,0px) + 8px)!important}
 body[data-learning-layout] #drive-stage.stage .steering-controls{flex-direction:row}
 body[data-learning-layout] #drive-stage.stage .mobile-driving-hint,body[data-learning-layout] #drive-stage.stage .motion-help{left:170px!important;right:180px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 112px)!important}
}
@media(max-width:700px), (max-width:1000px) and (max-height:500px){
 body[data-learning-layout] #drive-stage.stage .compact-actions{flex-wrap:nowrap!important;max-width:none!important;width:auto!important}
 body[data-learning-layout] #drive-stage.stage .hud-signals #drive-signal-left,body[data-learning-layout] #drive-stage.stage .hud-signals #drive-signal-right,body[data-learning-layout] #drive-stage.stage .hud-signals #drive-signal-hazard{font-size:0!important;overflow:hidden}
 body[data-learning-layout] #drive-stage.stage .hud-signals button::before{color:#c1d1d5!important}
 body[data-learning-layout] #drive-stage.stage #drive-tools-toggle{min-width:47px!important;width:47px!important}
}
