:root{--ink:#eef8ff;--muted:#a9c2cf;--panel:rgba(3,15,24,.78);--line:rgba(132,230,255,.28);--accent:#62d9ff;--warm:#ffcf6b;--danger:#ff7b82;--ok:#91ffa9;--bg:#02070c;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--ink)}#renderCanvas{width:100%;height:100%;display:block;outline:none;background:#050b12}.boot{position:fixed;inset:0;z-index:20;display:grid;place-items:center;background:radial-gradient(circle at 50% 20%,rgba(52,156,205,.28),rgba(0,0,0,.88) 58%),#03070c}.boot-card{width:min(780px,92vw);border:1px solid var(--line);border-radius:28px;padding:28px;background:linear-gradient(140deg,rgba(9,28,43,.92),rgba(4,8,14,.94));box-shadow:0 30px 90px rgba(0,0,0,.55)}.boot-card img{width:84px;height:84px;object-fit:contain;float:right;margin-left:20px}.kicker{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;color:var(--accent);font-weight:800}.boot-card h1{font-size:clamp(2rem,5vw,4.2rem);line-height:.92;margin:.2rem 0 1rem}.lead{font-size:1.05rem;color:#d8ecf4;max-width:54ch}.boot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:18px 0}.boot-grid span{border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.06);padding:10px}.primary,.secondary,button{font:inherit;border:1px solid var(--line);border-radius:14px;padding:11px 14px;background:rgba(98,217,255,.16);color:var(--ink);cursor:pointer}.primary{background:linear-gradient(135deg,#40cfff,#0d7894);color:#021019;font-weight:900}.secondary{background:rgba(255,255,255,.06);margin-left:8px}.note{font-size:.85rem;color:var(--muted)}.hidden{display:none!important}.engine-warning{position:fixed;inset:auto 18px 18px 18px;z-index:30;background:#2b0b10;border:1px solid #ff7b82;color:white;padding:14px;border-radius:16px}.hud{position:fixed;inset:12px 12px auto 12px;z-index:5;pointer-events:none;transition:opacity .15s}.hud.clear{opacity:0}.hud .hud-row{display:flex;gap:8px;flex-wrap:wrap}.hud span,.prompt,.active-dock{display:inline-flex;align-items:center;min-height:28px;padding:6px 10px;border-radius:999px;background:var(--panel);border:1px solid var(--line);box-shadow:0 8px 24px rgba(0,0,0,.28);backdrop-filter:blur(10px);font-size:.86rem}.meters{margin-top:8px;display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px;max-width:720px}.hud.minimal .meters{display:none}.hud.training .meters,.hud.standard .meters{display:grid}.meters label{font-size:.72rem;color:var(--muted);padding:8px 10px;border-radius:14px;background:var(--panel);border:1px solid var(--line)}meter{display:block;width:100%;height:8px}.prompt{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);max-width:min(780px,90vw);justify-content:center;font-weight:800}.active-dock{position:fixed;left:14px;bottom:18px;border-radius:16px;max-width:360px;min-height:0}.reticle{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:6;color:white;text-shadow:0 0 8px #000;font-size:14px;pointer-events:none}.body-state{position:fixed;right:14px;bottom:14px;z-index:6;padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--ink);font-size:.85rem}.mini-map{position:fixed;right:14px;top:78px;z-index:6;border:1px solid var(--line);border-radius:18px;padding:8px;background:var(--panel);box-shadow:0 20px 40px rgba(0,0,0,.35)}.dialogue,.panel{position:fixed;left:50%;bottom:74px;transform:translateX(-50%);z-index:10;width:min(760px,92vw);max-height:min(70vh,620px);overflow:auto;padding:18px;border:1px solid var(--line);border-radius:24px;background:rgba(4,13,20,.93);box-shadow:0 30px 90px rgba(0,0,0,.55);backdrop-filter:blur(18px)}.panel{top:50%;bottom:auto;transform:translate(-50%,-50%)}.dialogue h2,.panel h2{margin:.1rem 0 .6rem}.choices{display:grid;gap:8px;margin-top:12px}.choices button{text-align:left;background:rgba(255,255,255,.08)}.choices button.safe{border-color:rgba(145,255,169,.5)}.choices button.risk{border-color:rgba(255,123,130,.55)}.toast{position:fixed;left:50%;top:70px;transform:translateX(-50%);z-index:25;padding:10px 14px;border-radius:999px;background:rgba(3,15,24,.92);border:1px solid var(--line);box-shadow:0 10px 30px rgba(0,0,0,.45);max-width:90vw}.cutscene-bars{position:fixed;inset:0;z-index:8;pointer-events:none}.cutscene-bars div:first-child{position:absolute;left:0;right:0;top:0;height:12vh;background:#000}.cutscene-bars div:last-child{position:absolute;left:0;right:0;bottom:0;height:12vh;background:#000}.sensory-overlay{position:fixed;inset:0;z-index:4;pointer-events:none;opacity:0;mix-blend-mode:screen;background:radial-gradient(circle at 50% 45%,transparent 0 35%,rgba(120,220,255,.12) 56%,rgba(255,255,255,.22)),repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 8px)}@media(max-width:760px){.meters{grid-template-columns:repeat(2,1fr)}.boot-card{padding:20px}.boot-card img{float:none;width:64px;height:64px}.secondary{margin:8px 0 0}.hud span{font-size:.75rem}.prompt{font-size:.8rem}}

.debug-panel{position:fixed;left:14px;top:120px;z-index:7;max-width:min(620px,92vw);padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:rgba(3,15,24,.88);font:12px/1.35 ui-monospace,SFMono-Regular,Consolas,monospace;color:#d8f6ff;pointer-events:none}.panel textarea{width:100%;min-height:88px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--ink);padding:10px;font:inherit}.boot-grid{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}

.mission-list{display:grid;gap:6px;margin:12px 0;padding:10px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.045)}.mission-list div{padding:4px 0;color:#eafaff}.panel p,.dialogue p{line-height:1.45}.choices button:hover{background:rgba(98,217,255,.18)}

.access-note{border-left:3px solid var(--accent);padding:8px 10px;background:rgba(98,217,255,.08);border-radius:10px}.life-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:10px 0}.life-grid span{padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.06)}


/* Public game readability and play polish */
.panel h3{margin:.8rem 0 .35rem;color:#dff9ff}.mission-list{max-height:220px;overflow:auto}.choices button:focus,.primary:focus,.secondary:focus{outline:2px solid var(--warm);outline-offset:2px}.active-dock{font-weight:700;line-height:1.3}.hud.training .active-dock,.hud.standard .active-dock{max-width:min(520px,92vw)}.panel .choices{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.dialogue .access-note{margin:.75rem 0}.toast{font-weight:800}.life-grid span b{color:white}.mini-map canvas{display:block;border-radius:12px}.boot-card{max-height:94vh;overflow:auto}
@media(max-width:760px){.panel,.dialogue{bottom:48px;width:94vw;max-height:76vh}.active-dock{right:14px;max-width:calc(100vw - 28px)}.boot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.boot-card .public-note{font-size:12px;color:#a8c1cc;margin-top:10px}.life-grid span{min-height:2.2em}.choices button.safe{border-color:rgba(128,255,189,.35)}.choices button.risk{border-color:rgba(255,94,122,.45)}


/* V48 public startup and home/companion polish */
.startup-console{margin:10px 0 16px;border:1px solid rgba(98,217,255,.32);border-radius:16px;background:rgba(0,7,11,.52);padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#d8fbff;clear:both}.console-title{letter-spacing:.16em;color:#62d9ff;font-weight:900;font-size:.74rem;margin-bottom:6px}.boot-progress{height:8px;border:1px solid rgba(255,255,255,.14);border-radius:999px;overflow:hidden;margin:8px 0;background:rgba(255,255,255,.05)}.boot-progress span{display:block;height:100%;width:12%;background:linear-gradient(90deg,#62d9ff,#91ffa9);transition:width .3s}.boot-status{font-size:.78rem;color:#a9c2cf}.boot-card h1{letter-spacing:-.055em}.primary,.secondary{touch-action:manipulation}.life-grid span.warn{border-color:rgba(255,123,130,.6);background:rgba(255,123,130,.12)}.life-grid span.ok{border-color:rgba(145,255,169,.5);background:rgba(145,255,169,.09)}.panel .subtle{color:#a9c2cf;font-size:.9rem}.engine-warning{white-space:normal}.boot-card .primary{margin-top:6px}


/* V49 startup and onboarding polish */
.boot-shell{width:min(1080px,94vw);display:grid;place-items:center}.boot-console-card{position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(5,18,28,.96),rgba(2,7,12,.97));box-shadow:0 0 0 1px rgba(98,217,255,.16),0 35px 110px rgba(0,0,0,.68)}.boot-console-card:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.035),rgba(255,255,255,.035) 1px,transparent 2px,transparent 7px);pointer-events:none;opacity:.32}.startup-console{position:relative;margin:8px 0 18px;border:1px solid rgba(98,217,255,.34);border-radius:18px;background:rgba(0,10,17,.72);padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#bff4ff}.console-title{font-weight:900;color:#68e5ff;letter-spacing:.14em;font-size:.78rem;margin-bottom:8px}.boot-progress{height:10px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;margin:10px 0}.boot-progress span{display:block;height:100%;width:12%;border-radius:999px;background:linear-gradient(90deg,#78e7ff,#ffd166);box-shadow:0 0 18px rgba(98,217,255,.58);transition:width .22s ease}.boot-status{font-size:.82rem;color:#ffd166}.console-menu{position:relative;display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 10px}.compact-controls{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));opacity:.92}.setup-overlay{position:fixed;inset:0;z-index:35;display:grid;place-items:center;background:radial-gradient(circle at 50% 20%,rgba(54,161,210,.24),rgba(0,0,0,.86) 58%),rgba(0,0,0,.78);padding:18px}.setup-card{width:min(1060px,94vw);max-height:92vh;overflow:auto;border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,rgba(6,23,35,.96),rgba(2,7,12,.98));box-shadow:0 35px 120px rgba(0,0,0,.68);padding:24px}.setup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.setup-head h2{font-size:clamp(1.8rem,4vw,3.4rem);line-height:.95;margin:.1rem 0 1rem}.setup-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.setup-steps article{border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.055);padding:15px}.setup-steps p{color:var(--muted);font-size:.92rem}.choice-grid,.avatar-setup-grid{display:grid;gap:8px}.choice-grid{grid-template-columns:1fr}.avatar-setup-grid{grid-template-columns:repeat(2,1fr)}.choice-grid button,.avatar-setup-grid button{background:rgba(255,255,255,.075);text-align:left}.choice-grid button.selected,.avatar-setup-grid button.selected{border-color:#ffd166;box-shadow:0 0 0 1px rgba(255,209,102,.28) inset;background:rgba(255,209,102,.14)}.setup-summary{margin-top:10px;border:1px solid rgba(98,217,255,.18);border-radius:14px;background:rgba(98,217,255,.08);padding:10px;color:#dff8ff;font-size:.88rem}.setup-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}@media(max-width:850px){.setup-steps{grid-template-columns:1fr}.boot-card img{float:none;margin:0 0 10px 0}.console-menu button,.setup-actions button{width:100%;margin-left:0}.secondary{margin-left:0}.boot-card{padding:20px}.setup-card{padding:18px}.hud .hud-row{font-size:.8rem}.prompt{bottom:14px}}

/* V51 driving and agency polish */
.prompt{letter-spacing:.01em}.dialogue h2:after{content:'';display:block;width:44px;height:2px;background:var(--accent);margin-top:6px}.engine-warning{z-index:60}.setup-card button.selected{border-color:#ffd166;background:rgba(255,209,102,.16)}

/* Public-game polish */
.setup-card, .panel { max-width: min(1120px, 94vw); }
.choices button.selected, .choice-grid button.selected { outline: 2px solid #74dfff; background: rgba(116,223,255,.18); }
.startup-console { box-shadow: inset 0 0 22px rgba(116,223,255,.12); }
.engine-warning { z-index: 9999; }

/* V53 movement and public-play polish */
#prompt{max-width:min(760px,86vw)}
.boot-title small{display:block;color:var(--muted);font-size:13px;margin-top:8px;letter-spacing:.04em}.choices button.selected{outline:2px solid var(--cyan);box-shadow:0 0 18px rgba(94,231,255,.22)}

/* V54 public-facing game polish */
.startup-console{border:1px solid rgba(98,217,255,.28);border-radius:18px;background:rgba(0,0,0,.28);padding:14px;margin:10px 0 16px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.console-title{color:#6ee7ff;font-weight:900;letter-spacing:.08em}.boot-progress{height:8px;background:rgba(255,255,255,.09);border-radius:99px;overflow:hidden;margin:10px 0}.boot-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#5ee7ff,#ffd166);transition:width .25s}.boot-status{font-size:.76rem;color:#b9d4df}.setup-summary{border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.06);padding:9px;margin-top:9px}.ok{color:#91ffa9}.warn{color:#ffcf6b}.risk{border-color:rgba(255,123,130,.5)!important;background:rgba(255,123,130,.12)!important}.active-dock{max-width:68vw}.panel .life-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin:12px 0}.panel .life-grid span{border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.06);padding:8px}.panel .choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:9px;margin-top:12px}.minimal .prompt{backdrop-filter:blur(12px)}

.dog-profile-panel{margin-top:14px;border:1px solid rgba(94,231,255,.22);border-radius:16px;padding:12px;background:rgba(255,255,255,.045)}.dog-profile-panel h4{margin:0 0 8px;color:#e9f7ff}.choice-grid button.selected{outline:2px solid rgba(94,231,255,.75);background:rgba(94,231,255,.20)}
/* V56 public game refinements */
.drum-pad-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin:.8rem 0}
.drum-pad-grid button{min-height:58px;border-radius:14px;border:1px solid rgba(126,229,255,.38);background:linear-gradient(180deg,rgba(12,38,48,.92),rgba(5,18,25,.92));color:#effbff;font-weight:800;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}
.drum-pad-grid button:active{transform:translateY(2px);filter:brightness(1.25)}
.startup-console{border:1px solid rgba(115,225,255,.32);background:rgba(2,10,15,.82);border-radius:18px;padding:1rem;margin:.8rem 0;box-shadow:0 0 22px rgba(0,190,255,.08)}
.console-menu button.selected,.choice-grid button.selected,.avatar-setup-grid button.selected{outline:2px solid #7ce8ff;box-shadow:0 0 0 4px rgba(124,232,255,.12)}
.boot-progress{height:8px;background:rgba(255,255,255,.08);border-radius:20px;overflow:hidden;margin:.65rem 0}.boot-progress span{display:block;height:100%;background:linear-gradient(90deg,#7ce8ff,#ffd166);width:0;transition:width .25s}.boot-status,.console-title{color:#bdeeff;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:760px){.drum-pad-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V61 stable-detail evolution */
.service-animal-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.texture-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(116,223,255,.25);border-radius:999px;padding:5px 9px;background:rgba(116,223,255,.08);font-size:.82rem;margin:3px;}
.online-pill{display:inline-block;border-radius:999px;padding:4px 8px;background:rgba(128,255,189,.12);border:1px solid rgba(128,255,189,.32);font-size:.82rem;}
.online-pill.off{background:rgba(255,94,122,.12);border-color:rgba(255,94,122,.32);}
@media(max-width:850px){.service-animal-grid{grid-template-columns:1fr;}}


/* V62 stable deep systems: compact public UI and readable playable panels */
.panel.compact-panel{width:min(640px,88vw);max-height:min(58vh,520px);padding:13px 14px;border-radius:18px;background:rgba(4,13,20,.90)}
.panel.compact-panel h2{font-size:1.15rem;margin:.1rem 0 .35rem;line-height:1.1}.panel.compact-panel .panel-brief{font-size:.86rem;line-height:1.28;color:#bdd6df;margin:.25rem 0 .55rem}.panel.compact-panel .life-grid{grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:6px;margin:7px 0}.panel.compact-panel .life-grid span{padding:6px 8px;font-size:.78rem}.panel.compact-panel .choices{grid-template-columns:repeat(auto-fit,minmax(138px,1fr));gap:6px;margin-top:8px}.panel.compact-panel .choices button{padding:8px 9px;border-radius:11px;font-size:.86rem}.panel.compact-panel textarea{min-height:58px}.dialogue{width:min(640px,88vw);padding:14px;border-radius:18px}.dialogue p{font-size:.88rem;line-height:1.3}.hud .hud-row span{font-size:.78rem}.active-dock{font-size:.78rem;max-width:min(470px,72vw)}.prompt{font-size:.84rem;max-width:min(680px,86vw);padding:7px 10px}.toast{font-size:.84rem;padding:8px 12px}.mini-map{opacity:.96}.setup-card{max-width:min(980px,94vw)}.setup-steps p{font-size:.82rem;line-height:1.3}.boot-card .lead{font-size:.95rem;line-height:1.35}button{transition:transform .07s ease, background .12s ease}button:active{transform:translateY(1px)}
@media(max-width:760px){.panel.compact-panel{bottom:58px;top:auto;transform:translateX(-50%);max-height:62vh}.active-dock{display:none}.hud .hud-row span:nth-child(2){display:none}}


/* V63 public game polish: compact actions, less giant panel feel, clearer prompts */
.panel.compact-panel{max-width:min(760px,92vw);font-size:14px;line-height:1.35;padding:14px 16px;border-radius:18px;}
.panel.compact-panel h2{font-size:20px;margin:0 0 8px;}
.panel.compact-panel p{margin:.35rem 0 .55rem;}
.panel-brief{font-size:13px;line-height:1.35;color:rgba(235,247,255,.86);}
.compact-actions{grid-template-columns:repeat(auto-fit,minmax(142px,1fr));gap:8px;}
.compact-actions button,.choices button{min-height:38px;}
.prompt{max-width:min(760px,90vw);}
.boot .lead{max-width:760px;}
.hud.minimal .meters{backdrop-filter:blur(10px);}

/* V64 world logic polish */
.compact-actions button{min-width:unset;padding:8px 10px;font-size:13px;}
.mission-list div{margin:.35rem 0;}
#activeDock{max-width:min(900px,86vw);}

/* V65 World Coherence Pass: less giant public text, smaller context prompts, cleaner action UI. */
.panel p { max-width: 82ch; }
.panel .mission-list { max-height: 44vh; overflow:auto; }
.compact-actions button { min-height: 38px; padding: 8px 10px; }
.toast { max-width: min(560px, 82vw); }
.prompt { font-size: 13px; padding: 8px 12px; border-radius: 999px; }
.hud.clear .quest-chip, .hud.clear .lens-chip { display:none !important; }


/* V66 Start + Stability Pass: cleaner title screen and loading presentation. */
.boot{background:radial-gradient(circle at 18% 14%,rgba(98,217,255,.22),transparent 28%),radial-gradient(circle at 80% 18%,rgba(255,209,102,.16),transparent 26%),linear-gradient(180deg,#07131b 0%,#041017 58%,#02070c 100%)}
.v66-title-stage{position:relative;margin:-8px -4px 14px;padding:18px 16px;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,rgba(10,32,48,.92),rgba(3,12,20,.86));border:1px solid rgba(116,223,255,.22);box-shadow:inset 0 0 45px rgba(116,223,255,.08)}
.v66-title-stage:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent);transform:translateX(-100%);animation:v66Sweep 3.2s infinite ease-in-out;pointer-events:none}.v66-title-stage.ready:before{animation-duration:5.5s;opacity:.5}
@keyframes v66Sweep{0%{transform:translateX(-100%)}55%,100%{transform:translateX(120%)}}
.v66-title{font-size:clamp(2.4rem,7vw,6rem);line-height:.82;font-weight:1000;letter-spacing:-.07em;margin:0;text-transform:uppercase;text-shadow:0 8px 35px rgba(0,0,0,.55)}
.v66-subtitle{margin:.35rem 0 0;color:#d9f5ff;max-width:64ch;font-weight:700}.v66-mode-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.v66-mode-row span{border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:6px 10px;background:rgba(255,255,255,.07);font-size:.82rem;color:#d9f5ff}.boot-card{width:min(940px,94vw)}.boot-card h1{font-size:clamp(1.65rem,3.8vw,3.4rem);line-height:.98}.boot-grid.compact-controls{margin-top:12px}.startup-console{border-color:rgba(116,223,255,.28);background:rgba(0,8,14,.64)}.console-menu .primary{min-width:150px}.console-menu .secondary{min-width:135px}.boot-status{font-weight:800}.boot-progress span{width:0}.engine-warning{background:#251016;border-color:#ffcf6b;color:#fff3d1}.setup-overlay{background:radial-gradient(circle at 35% 18%,rgba(98,217,255,.18),transparent 32%),rgba(0,0,0,.82)}
@media(max-width:760px){.v66-title-stage{padding:14px}.v66-title{font-size:3rem}.v66-mode-row span{font-size:.74rem}.boot-card h1{font-size:1.9rem}.console-menu button{width:100%}}

/* V67 Start UX: full-screen game startup, power-on flow, and step-by-step onboarding. */
.boot{display:block;overflow:hidden;background:radial-gradient(circle at 18% 12%,rgba(98,217,255,.24),transparent 28%),radial-gradient(circle at 78% 18%,rgba(255,209,102,.18),transparent 32%),linear-gradient(180deg,#061a25 0%,#041119 58%,#02070c 100%)}
.boot-shell{width:100vw;height:100svh;min-height:100vh;display:block;margin:0;padding:0}
.boot-card.v67-fullscreen-start{width:100vw;max-width:none;height:100svh;min-height:100vh;max-height:none;border:0;border-radius:0;padding:0;overflow:hidden;background:linear-gradient(135deg,rgba(5,18,28,.98),rgba(2,7,12,.985));display:grid;place-items:center}
.v67-menu-stage{width:min(1120px,94vw);max-height:94svh;overflow:auto;border:1px solid rgba(116,223,255,.25);border-radius:28px;background:rgba(2,10,16,.74);padding:clamp(18px,3vw,34px);box-shadow:0 34px 120px rgba(0,0,0,.68)}
.v67-power-stage{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;background:radial-gradient(circle at center,rgba(93,219,255,.18),transparent 34%),linear-gradient(180deg,#061923,#02070c)}
.v67-power-orb{width:clamp(100px,16vw,170px);height:clamp(100px,16vw,170px);border-radius:50%;display:grid;place-items:center;font-size:clamp(48px,8vw,84px);color:#021019;background:radial-gradient(circle at 30% 25%,#ffffff,#84eeff 42%,#1593b3 72%,#023746);box-shadow:0 0 0 1px rgba(255,255,255,.22),0 0 70px rgba(98,217,255,.42),inset 0 -18px 42px rgba(0,0,0,.24);margin-bottom:20px;animation:v67Pulse 2.2s infinite ease-in-out}
@keyframes v67Pulse{0%,100%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.035);filter:brightness(1.12)}}
.v67-power-stage h1{margin:.2rem 0 0;font-size:clamp(2.4rem,7vw,6.8rem);line-height:.86;letter-spacing:-.07em;text-transform:uppercase}.v67-power-stage p{max-width:720px;color:#d6f5ff;font-weight:700;line-height:1.45}.v67-power-button{margin-top:16px;font-size:clamp(1rem,2vw,1.35rem);padding:15px 28px;border-radius:999px}.v67-power-help{margin-top:18px;color:#a9c2cf;font-size:.9rem}.v67-setup-progress{margin:8px 0 16px;border:1px solid rgba(116,223,255,.24);background:rgba(116,223,255,.07);border-radius:16px;padding:10px 12px}.v67-setup-progress span{font-weight:900;color:#dffbff}.v67-stepbar{margin-top:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.10);overflow:hidden}.v67-stepbar i{display:block;width:20%;height:100%;border-radius:999px;background:linear-gradient(90deg,#78e7ff,#ffd166);transition:width .18s ease}.v67-wizard .setup-card{width:min(1120px,96vw);height:min(900px,94svh);max-height:94svh;display:flex;flex-direction:column;overflow:hidden}.v67-wizard-steps{display:block;flex:1;overflow:auto}.v67-setup-page{display:none;min-height:360px}.v67-setup-page.active{display:block;animation:v67Fade .16s ease-out}.v67-setup-page .life-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}@keyframes v67Fade{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.v67-setup-nav{display:flex;gap:10px;justify-content:space-between;margin-top:12px}.v67-setup-nav button{min-width:120px}.v67-setup-nav button:disabled{opacity:.45;cursor:not-allowed}.setup-actions{border-top:1px solid rgba(255,255,255,.12);padding-top:12px}.hud.minimal{inset:10px 10px auto 10px}.hud.minimal .hud-row span{background:rgba(3,15,24,.62);border-color:rgba(116,223,255,.20);font-size:.78rem}.prompt{background:rgba(3,15,24,.72);border-color:rgba(116,223,255,.26);box-shadow:0 10px 40px rgba(0,0,0,.32)}
@media(max-width:760px){.v67-menu-stage{width:100vw;height:100svh;max-height:none;border:0;border-radius:0;padding:16px}.v67-power-stage h1{font-size:3rem}.v67-power-stage p{font-size:.95rem}.v67-wizard .setup-card{width:100vw;height:100svh;max-height:none;border-radius:0}.v67-setup-nav button,.setup-actions button{flex:1;min-width:0}.v67-mode-row span{font-size:.72rem}.compact-controls{display:none}}

/* V69: more game-like compact action UI, drum builder, music shop, and physical-action affordances */
.panel h2{letter-spacing:-.025em}
.compact-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-top:10px}
.compact-actions button,.drum-pad-grid button{min-height:44px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.055));color:#fff;font-weight:750;cursor:pointer}
.compact-actions button:hover,.drum-pad-grid button:hover{border-color:rgba(94,231,255,.62);box-shadow:0 0 0 2px rgba(94,231,255,.10) inset;background:rgba(94,231,255,.14)}
.drum-pad-grid{display:grid;grid-template-columns:repeat(4,minmax(84px,1fr));gap:8px;margin:10px 0}
.drum-pad-grid button{font-family:ui-monospace,Menlo,Consolas,monospace;background:linear-gradient(180deg,rgba(255,209,102,.20),rgba(94,231,255,.08))}
#v68UploadSlot input,#v68AudioFile{width:100%;padding:10px;border-radius:12px;border:1px solid rgba(255,255,255,.20);background:rgba(0,0,0,.25);color:#fff;margin-top:8px}
.life-grid span{border-radius:10px}
@media(max-width:760px){.drum-pad-grid{grid-template-columns:repeat(2,1fr)}.compact-actions{grid-template-columns:1fr}.panel{width:calc(100vw - 20px);max-height:calc(100vh - 20px)}}


/* V69 cartographic driving HUD and full-screen startup polish */
.boot{inset:0;width:100vw;height:100vh;min-height:100vh;display:flex;align-items:stretch;justify-content:center;padding:0;background:radial-gradient(circle at 50% 20%,rgba(35,93,130,.32),rgba(4,9,15,.94) 62%,#01040a 100%)}
.boot-shell{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:clamp(14px,3vw,38px)}
.boot-card{width:min(1180px,96vw);height:min(820px,94vh);overflow:auto;border-radius:32px;box-shadow:0 24px 100px rgba(0,0,0,.55)}
.v67-power-stage{min-height:calc(94vh - 80px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px}.v67-power-orb{font-size:clamp(58px,10vw,112px)}
.setup-overlay{position:fixed;inset:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(12px,3vw,32px);background:rgba(4,8,14,.86);backdrop-filter:blur(16px);z-index:55}.setup-overlay.hidden{display:none}.setup-card{width:min(1120px,96vw);max-height:94vh;overflow:auto;border-radius:28px}
.drive-hud-v69{position:fixed;right:18px;bottom:88px;z-index:16;width:min(260px,42vw);padding:12px 14px;border-radius:20px;background:rgba(4,12,18,.72);border:1px solid rgba(110,220,255,.32);backdrop-filter:blur(12px);box-shadow:0 14px 40px rgba(0,0,0,.35);pointer-events:none;color:#f2fbff}.drive-hud-v69.hidden{display:none}.drive-hud-v69 .dh-speed{font-size:52px;line-height:.9;font-weight:900;letter-spacing:-.05em}.drive-hud-v69 .dh-label{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#9dc3cf}.drive-hud-v69 .dh-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.drive-hud-v69 .dh-row span{font-size:11px;padding:5px 7px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10)}.drive-hud-v69 .dh-course{margin-top:8px;font-size:12px;color:#ffd166}.v69-menu-row{border-top:1px solid rgba(255,255,255,.12);padding-top:10px;margin-top:10px}
.hud.minimal #activeDock{max-width:min(680px,78vw);white-space:normal;line-height:1.25}.panel .choices.compact-actions button{min-height:42px}.panel .life-grid{gap:7px}

/* V70 research-backed polish: cleaner cinematic startup, compact action HUD, and more game-like panels */
.boot { align-items: stretch; justify-content: stretch; padding: 0; background: radial-gradient(circle at 70% 25%, rgba(34,94,128,.36), transparent 34%), linear-gradient(135deg,#07131b 0%,#101822 52%,#081014 100%); }
.boot-shell { width: 100vw; height: 100vh; display: grid; place-items: center; padding: clamp(12px,2vw,28px); }
.boot-card { width: min(1180px,96vw); min-height: min(820px,94vh); display: grid; align-content: center; border-radius: clamp(18px,3vw,42px); box-shadow: 0 30px 110px rgba(0,0,0,.55), inset 0 0 0 1px rgba(255,255,255,.08); }
.v70-cinematic-strip { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin:16px 0; }
.v70-cinematic-strip span { border:1px solid rgba(255,255,255,.12); border-radius:16px; padding:10px; background:rgba(255,255,255,.055); min-height:76px; display:flex; align-items:end; color:var(--muted); font-size:12px; }
.v70-ui-chip { display:inline-flex; align-items:center; gap:6px; border:1px solid rgba(255,255,255,.13); border-radius:999px; padding:6px 10px; background:rgba(255,255,255,.07); font-size:12px; }
.v70-action-radial { position: fixed; right: 18px; top: 88px; z-index: 20; display:flex; gap:8px; flex-wrap:wrap; max-width:420px; pointer-events:none; }
.v70-action-radial span { pointer-events:auto; padding:8px 10px; border-radius:999px; background:rgba(9,18,24,.72); border:1px solid rgba(94,231,255,.22); font-size:12px; color:#eaf8ff; backdrop-filter: blur(8px); }
.panel.compact-v70, .panel.v70-panel { max-width: min(760px, 92vw); border-radius: 22px; }
.v70-mini-map { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.v70-mini-map button, .v70-system-grid button { text-align:left; min-height:54px; }
.v70-system-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:8px; }
@media(max-width:720px){ .v70-cinematic-strip{grid-template-columns:1fr 1fr}.boot-card{min-height:96vh}.v70-action-radial{left:10px;right:10px;top:auto;bottom:78px;max-width:none} }


/* V71 Systems Development Pass */
.boot{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;min-height:100vh;background:radial-gradient(circle at 45% 20%,rgba(23,95,128,.35),rgba(4,8,14,.96) 58%,#010409);z-index:40}
.boot-shell{width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(14px,3vw,32px)}
.boot-card{width:min(1180px,96vw);min-height:min(760px,92vh);display:flex;flex-direction:column;justify-content:center}
.v67-power-stage{text-align:center;display:grid;place-items:center;gap:16px}.v67-power-orb{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;border:2px solid rgba(94,231,255,.45);box-shadow:0 0 42px rgba(94,231,255,.32);font-size:48px;background:rgba(94,231,255,.09)}
.setup-overlay{position:fixed;inset:0;z-index:45;background:rgba(3,7,12,.92);display:flex;align-items:center;justify-content:center;padding:20px}.setup-card{width:min(1120px,96vw);max-height:94vh;overflow:auto;border-radius:26px;background:rgba(8,18,27,.96);border:1px solid rgba(94,231,255,.22);box-shadow:0 32px 120px rgba(0,0,0,.55);padding:22px}.setup-card button,.panel button{min-height:42px}.v67-setup-page{display:none}.v67-setup-page.active,.v67-setup-page:first-child{display:block}.v71-catalog{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.v71-catalog button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;border-radius:14px}.v71-catalog span{opacity:.75;font-size:12px}.active-dock{position:fixed;left:50%;bottom:86px;transform:translateX(-50%);background:rgba(4,12,19,.78);border:1px solid rgba(94,231,255,.25);padding:9px 14px;border-radius:999px;backdrop-filter:blur(10px);font-size:13px;pointer-events:none}.panel{max-width:min(760px,92vw)}.panel p{line-height:1.35}.choices.compact-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.life-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:8px}.life-grid span{padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.10)}
