/* GP022 — a quick vehicle confirmation, not another mandatory setup maze. */
#first-lap{--fl-line:#8bb1da3b;display:grid;grid-template-columns:minmax(360px,.95fr) minmax(300px,1.05fr);gap:clamp(24px,4vw,72px);max-width:1440px;margin:auto;padding:30px clamp(24px,3.5vw,56px) 34px;position:relative;pointer-events:auto;color:#f5f4ef}
body.quick-setup #intro{overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;touch-action:pan-y;height:100dvh;padding:0!important;background:linear-gradient(90deg,#07152bed 0%,#081b31ee 40%,#08172880 74%,#08172d8c)!important;pointer-events:auto}
body.quick-setup #intro>.intro-copy,body.quick-setup #intro>.car-caption,body.quick-setup #intro>.launch-panel,body.quick-setup #intro>.intro-footer{display:none!important}
body.quick-setup #intro>.topline{position:sticky;top:0;z-index:12;margin:0!important;padding:16px clamp(24px,3.5vw,56px)!important;min-height:66px;background:#081b34f7;border-bottom:1px solid #8bb1da30;box-shadow:none;flex-wrap:nowrap}
body.quick-setup #intro .topline-actions{width:auto;display:flex;gap:16px;align-items:center}body.quick-setup #intro .topline .buildtag{display:none}body.quick-setup #intro .topline .quiet{min-height:40px;font-size:10px}body.quick-setup #intro .topline #purpose-button,body.quick-setup #intro .topline #course-map-button{display:none}
body.quick-setup.garage-empty-vehicle:after{display:none!important}
.fl-kicker{font-size:10px;letter-spacing:2px;font-weight:700;color:#a9c7ea;line-height:1.5}.fl-copy{min-width:0}#first-lap h1{display:block;width:auto;margin:12px 0 12px;letter-spacing:-1.3px;font-size:clamp(28px,3.1vw,44px);font-style:normal;line-height:1.1}#first-lap h1 em{color:#a9ccfa;font-style:normal}.fl-tagline{font-size:15px;line-height:1.5;color:#ccdcee;margin:0 0 20px}
.fl-car{border-block:1px solid var(--fl-line);padding:14px 0;margin-bottom:15px}.fl-car>.fl-kicker{display:flex;justify-content:space-between}.fl-selector{display:flex;align-items:center;gap:16px;padding:8px 0}.fl-selector>div{flex:1;min-width:0}.fl-selector>button{flex:0 0 46px;height:46px;border:1px solid #8bb1da55;background:#142e52;color:white;font-size:23px;border-radius:8px}.fl-selector>button:hover{background:#244d79}.fl-selector h2{margin:0;font-size:23px;letter-spacing:.1px;line-height:1.12}.fl-selector p{font-size:11px;line-height:1.5;color:#b9cce4;margin:5px 0 0}.fl-car #fl-model-status{font-size:10px;letter-spacing:1px;color:#cfd8e9}.fl-car #fl-model-status.fl-ready{color:#9de0c4}.fl-car #fl-model-status.fl-error{color:#ffb5b5}
.fl-course{display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:1.2px;font-weight:bold;margin:0 0 14px}#fl-course{flex:1;min-width:0;height:46px;background:#0a1e37;border:1px solid #8bb1da70;border-radius:5px;color:#f4f2ea;padding:8px 10px;font-size:13px;letter-spacing:0;color-scheme:dark}#fl-course option{background:#08172d;color:#f7f2e8}#fl-course option:checked{background:#2f5f96;color:#fff}
.fl-launch{display:grid;grid-template-columns:1.3fr 1fr;gap:10px}.fl-launch>button{min-width:0;min-height:52px;border-radius:5px;font-size:11px;line-height:1.4;letter-spacing:1px;padding:12px 14px}.fl-launch .primary{background:#c62539;color:#fff;border-color:#f77986;box-shadow:0 4px 18px #c6253920;gap:10px}.fl-launch .secondary{background:#183856;color:#f3f5fa;border-color:#718daa}.fl-launch>button:disabled{opacity:.65;cursor:wait;box-shadow:none}
#fl-status{min-height:30px;font-size:12px;line-height:1.4;color:#b3c8e1;margin:10px 0 4px}.fl-links{display:flex;flex-wrap:wrap;gap:2px 18px;align-items:center}.fl-links>button{min-height:44px;font-size:10px;letter-spacing:.7px;padding:8px 0;color:#e3ecf8}.fl-links #fl-practice{color:#f6d187}.fl-links button:hover{color:white;text-decoration:underline}
.fl-preview{min-width:0;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.fl-preview button{pointer-events:auto}.fl-preview-top{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--fl-line)}.fl-preview-top>span{font-size:10px;letter-spacing:2px;color:#afc7df}.fl-preview-top .quiet{font-size:10px;min-height:44px}.fl-stage-space{flex:1;min-height:210px}.fl-punchline{display:flex;align-items:center;gap:18px;max-width:520px;background:#091d37e0;border:1px solid #8bb1da3b;border-left:3px solid #c62839;border-radius:6px;padding:14px}.fl-punchline>div{min-width:0}.fl-punchline b{font-size:17px;line-height:1.4}.fl-punchline p{font-size:12px;line-height:1.5;color:#bdd0e5;margin:6px 0 0}.fl-punchline>button{background:none;min-width:112px;padding:0;display:grid;justify-items:center;gap:8px}.fl-bubble{display:block;background:#f5f2e8;color:#14243c;border-radius:8px;font-size:9px;font-weight:900;padding:8px 6px;line-height:1.2}.fl-robed-figure{display:block;width:48px;height:46px;position:relative;background:#060d19;clip-path:polygon(25% 0,75% 0,100% 100%,0 100%)}.fl-face{position:absolute;left:10px;top:0;width:28px;height:25px;border-radius:50%;background:#efd5af;border:2px solid #f8f3e7;font:bold 17px/12px Arial;color:#0d192d;font-style:normal;letter-spacing:2px;text-align:center}.fl-face>i{position:absolute;bottom:3px;left:5px;right:5px;height:2px;background:#14253d;animation:fl-talk 1.1s ease-in-out infinite}.fl-admonished .fl-bubble{background:#f4cf72}.fl-disclaimer{font-size:11px;color:#b2c9e0;line-height:1.5;margin:12px 0 0}.fl-preview>#fl-purpose{align-self:flex-start;font-size:10px;letter-spacing:1px;line-height:1.5;min-height:44px;text-align:left;color:#e6edfa}
#fl-practice-options{margin:-2px 0 14px;background:#102c43;border-radius:6px;padding:12px;border:1px solid #83bbae42}#fl-practice-options label{font-size:13px;line-height:1.5;display:block;min-height:42px;cursor:pointer}#fl-practice-options small{display:block;font-size:11px;color:#c4d4e9;margin-left:26px}#fl-practice-options input{margin-right:8px;accent-color:#c62539;width:17px;height:17px}#fl-practice-options p{font-size:11px;line-height:1.5;color:#c0d4ea;margin:8px 0 0}
#fl-return{position:relative;z-index:7;margin:10px 24px;min-height:44px;font-size:12px;background:#142d4f;border-color:#789ac0}.fl-options{font-size:13px;border-top:1px solid #8bb1da44;margin-top:14px}.fl-options summary{min-height:48px;cursor:pointer;padding:14px 0;font-weight:bold}.fl-options label{display:flex;align-items:center;justify-content:space-between;min-height:48px;gap:18px}.fl-options input{width:20px;height:20px;accent-color:#c62539}.fl-options p,.fl-options output{font-size:12px;line-height:1.6;color:#bdd2ec}.fl-options output{display:block;margin-bottom:14px}.fl-options button{min-height:44px;margin-bottom:10px}
#fl-feedback,#fl-coach{position:fixed;z-index:8;pointer-events:none;background:#081a30f2;border:1px solid #b5d2f14d;border-left:3px solid #f1cc79;border-radius:5px;padding:8px 12px;max-width:300px;box-shadow:0 4px 20px #0003}#fl-feedback{left:50%;transform:translateX(-50%);bottom:66px}#fl-coach{left:24px;bottom:285px;max-width:265px}#fl-feedback b,#fl-coach b{font-size:11px;letter-spacing:.5px;color:#f4d790;display:block;line-height:1.3}#fl-feedback span,#fl-coach span{font-size:12px;color:#edf4fd;display:block;line-height:1.4;margin-top:3px}.first-lap-practice #fl-feedback{display:none!important}
body.touch #fl-feedback{width:240px;bottom:59px;padding:6px 10px}body.touch #fl-feedback b{font-size:10px}body.touch #fl-feedback span{font-size:11px}body.touch #fl-coach{width:186px;max-width:calc(50vw - 46px);left:14px;bottom:auto;top:58px;padding:8px}body.touch #fl-coach span{font-size:11px}body.touch #fl-coach b{font-size:10px}.first-lap-practice #result-card:disabled{display:none}
@keyframes fl-talk{50%{height:5px}}@media(prefers-reduced-motion:reduce){.fl-face>i{animation:none}}body.fl-reduced .fl-face>i{animation:none}
@media(min-width:1000px) and (pointer:fine){body:not(.quick-setup)[data-state=menu] #intro .launch-panel{top:142px}body:not(.quick-setup)[data-state=menu] #intro .car-caption{top:148px}}
@media(max-width:1000px){#first-lap{gap:24px;padding:24px;grid-template-columns:1.1fr .9fr}.fl-selector h2{font-size:20px}.fl-punchline{padding:10px;gap:8px}.fl-punchline>button{min-width:92px}.fl-punchline b{font-size:14px}.fl-punchline p{font-size:11px}body.quick-setup #intro>.topline{padding:8px 20px!important;min-height:56px}body.quick-setup #intro .topline .brand{margin:0}body.quick-setup #intro .topline .brand span{font-size:8px;letter-spacing:1px}body.quick-setup #intro .topline-actions{gap:10px}.fl-stage-space{min-height:170px}}
@media(max-width:620px) and (orientation:portrait){#first-lap{display:flex;flex-direction:column;padding:20px 18px 28px;gap:14px}#first-lap h1{font-size:29px}.fl-preview-top,.fl-stage-space{display:none}.fl-preview{justify-content:start}.fl-tagline{font-size:13px;margin-bottom:14px}.fl-car{margin-bottom:12px;padding:10px 0}.fl-links{gap:0 14px}.fl-selector{gap:10px}.fl-selector h2{font-size:20px}.fl-launch{grid-template-columns:1fr}.fl-launch>button{min-height:48px}.fl-punchline{max-width:none}.fl-preview>#fl-purpose{font-size:10px}.fl-course{margin-bottom:12px}.fl-disclaimer{margin-top:10px}.fl-preview{background:#08182bdd;border-radius:6px}body.quick-setup #intro .topline .brand span{display:none}body.quick-setup #intro .topline-actions .quiet{font-size:9px}.fl-selector p{font-size:11px}}
@media(orientation:landscape) and (max-height:540px){#first-lap{padding:12px 18px 24px;gap:26px;grid-template-columns:1.1fr .9fr}#first-lap h1{font-size:24px;letter-spacing:-.6px;margin:6px 0 8px}.fl-kicker{font-size:9px;letter-spacing:1px}.fl-tagline{display:none}.fl-car{padding:8px 0;margin-bottom:8px}.fl-selector{padding:4px 0;gap:10px}.fl-selector h2{font-size:17px}.fl-selector p{font-size:10px}.fl-selector>button{width:44px;flex-basis:44px;height:44px}.fl-course{margin-bottom:8px;gap:8px}#fl-course{font-size:11px;height:44px}.fl-launch>button{min-height:46px;font-size:10px;padding:8px}.fl-launch{gap:6px}#fl-status{font-size:10px;margin:6px 0 0;min-height:24px}.fl-links{gap:0 12px}.fl-links>button{font-size:9px;min-height:44px}.fl-preview-top>span{font-size:9px}.fl-stage-space{min-height:100px}.fl-preview{justify-content:flex-start}.fl-punchline{margin-top:auto}.fl-punchline p{font-size:10px}.fl-preview>#fl-purpose{font-size:9px}.fl-disclaimer{font-size:10px}.fl-bubble{font-size:8px}.fl-robed-figure{height:34px}body.quick-setup #intro>.topline{min-height:50px;padding:3px 18px!important}body.quick-setup #intro .topline .brand b{font-size:25px}.fl-punchline>button{min-width:88px}.fl-launch .primary>span{font-size:18px}}
@media(max-height:600px) and (pointer:fine) and (min-width:1000px){#first-lap{padding-top:16px}#first-lap h1{font-size:30px}.fl-tagline{margin-bottom:12px}.fl-car{padding:10px 0}.fl-stage-space{min-height:140px}}
/* A practice result is a short handoff, not a second full race dashboard. */
body.first-lap-practice #result .result-modal{width:min(620px,100%);padding:22px}
body.first-lap-practice #result h2{font-size:clamp(25px,4vw,36px);line-height:1.12;letter-spacing:-.8px}
body.first-lap-practice #result-stats,body.first-lap-practice #result-echo,
body.first-lap-practice #result-boss,body.first-lap-practice #result-map,
body.first-lap-practice #result-championship,body.first-lap-practice #race-replay,
body.first-lap-practice #ghost-export,body.first-lap-practice #result-card{display:none!important}
body.first-lap-practice #result .modal-buttons{gap:8px;margin-top:12px}
body.first-lap-practice #fl-result-downtown{flex-basis:100%;order:-2;min-height:48px}
body.first-lap-practice #retry{background:#193856;border-color:#789bbd;min-height:44px;font-size:11px;flex:1;min-width:120px}
body.first-lap-practice #result-copy{font-size:13px;line-height:1.5;margin:12px 0}

/* CTH64 — DANTE'S ROAD earns a distinct grid presentation without adding a render pass. */
body.dante-preview.quick-setup #intro{background:radial-gradient(circle at 77% 43%,rgba(98,11,77,.36),transparent 34%),linear-gradient(112deg,#090514 0%,#18091f 38%,#3a0918 72%,#090714 100%)!important}
body.dante-preview #first-lap{--fl-line:#ffb25a52}
body.dante-preview #first-lap h1 em{color:transparent;background:linear-gradient(90deg,#ff4868,#ff9a3d,#ffe260,#5bea84,#52dfff,#7184ff,#d66cff);-webkit-background-clip:text;background-clip:text}
body.dante-preview .fl-kicker{color:#ffd77e}
body.dante-preview .fl-tagline{color:#f7e5dc}
body.dante-preview #fl-course{border-color:#ffbe6c80;background:linear-gradient(110deg,#25091d,#171033);box-shadow:inset 0 0 0 1px rgba(95,213,255,.12)}
body.dante-preview .fl-launch .primary{color:#100b18;border-color:#ffe692;background:linear-gradient(100deg,#ff3f63,#ff963c 18%,#ffe35f 35%,#58e982 52%,#49ddff 69%,#6c79ff 84%,#d764ff);text-shadow:0 1px rgba(255,255,255,.35);box-shadow:0 0 24px rgba(255,84,68,.22),0 0 32px rgba(76,216,255,.12)}
body.dante-preview .fl-punchline{background:linear-gradient(120deg,rgba(61,5,31,.92),rgba(21,12,58,.92));border-color:#ffbd6b55;border-left-color:#59ddff}
body.dante-preview .fl-bubble{background:#ffe49a;color:#351023}
body.dante-preview #fl-map{color:#ffd778}
