/* A full-viewport toy park; the existing shared navigation remains above it. */
#drive-screen{position:fixed!important;inset:0!important;padding:0!important;margin:0!important;max-width:none!important;width:100%;height:100dvh;overflow:hidden;z-index:1;background:#b4dec5}
#drive-screen[hidden]{display:none!important}
#drive-canvas{display:block;width:100%;height:100%;touch-action:none;outline:none}
#drive-canvas:focus-visible{outline:4px solid #fff2a9;outline-offset:-5px}
body.in-star-drive{overflow:hidden}
body.in-star-drive>header{z-index:30}
.drive-hud{position:absolute;top:calc(var(--floating-nav-height,80px) + 10px);left:max(18px,env(safe-area-inset-left));right:max(18px,env(safe-area-inset-right));display:flex;justify-content:space-between;align-items:flex-start;gap:12px;pointer-events:none}
.drive-label{background:#fffaf0ed;box-shadow:0 4px 0 #577c6b33,0 8px 25px #235a4430;border:2px solid #fff;border-radius:23px;padding:12px 18px;color:#315a59;backdrop-filter:blur(12px)}
.drive-label small{display:block;font-size:10px;font-weight:900;letter-spacing:2px;color:#6a8b77;margin-bottom:3px}
.drive-label h1{font-size:24px;line-height:1.2;margin:0;color:#315a59}
.drive-score{background:linear-gradient(#fffbed,#ffe8a3);border:3px solid #fff;border-radius:24px;padding:10px 17px;box-shadow:0 4px #b4974a44;color:#775c26;min-width:105px;font-size:22px;font-weight:900;white-space:nowrap}
.drive-score b{color:#df9f22;font-size:28px;margin-right:7px}
.drive-score.ping{animation:drive-pop .35s ease-out}
.drive-bottom{position:absolute;bottom:max(18px,env(safe-area-inset-bottom));left:18px;right:18px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;pointer-events:none}
.drive-guide{padding:11px 16px;background:#fff9e8ed;border:2px solid #fff;border-radius:20px;color:#416861;font-size:13px;font-weight:800;box-shadow:0 4px 15px #1d4b4630;max-width:280px}
.drive-guide span{display:block;margin-top:4px;color:#7e917d;font-size:11px}
.drive-map-wrap{position:relative;flex:none;width:116px;height:116px;border:4px solid #fff9e9;border-radius:25px;overflow:hidden;background:#a5c997;box-shadow:0 5px 0 #53775c44,0 7px 20px #193f3033}
#drive-map{width:100%;height:100%}
.drive-compass{display:inline-block;color:#da9e28;font-size:20px;margin-right:6px}
.drive-help{position:absolute;inset:0;z-index:5;display:grid;place-items:center;background:#c3dfcbbf;backdrop-filter:blur(8px);padding:24px}
.drive-help[hidden]{display:none}
.drive-help>div{max-width:350px;background:#fffbed;border:4px solid #fff;border-radius:32px;padding:30px;text-align:center;color:#42685d;box-shadow:0 12px 30px #264c4833}
.drive-help button{font:inherit;font-weight:900;padding:14px 22px;border:3px solid white;border-radius:20px;background:#ffe6a1;color:#6e633f;box-shadow:0 4px #bb9c57;min-height:48px}
#home-drive .tile-picture{background:linear-gradient(140deg,#b4d9bd,#e4f1d6);position:relative;overflow:hidden}
#home-drive .tile-picture img{height:100%;width:100%;object-fit:cover}
#home-drive{background:linear-gradient(145deg,#fff1ca,#d9edc9);color:#446d60}
@keyframes drive-pop{50%{transform:scale(1.12)}}
@media(max-width:600px){.drive-hud{left:12px;right:12px;top:calc(var(--floating-nav-height,126px) + 8px)}.drive-label{padding:9px 12px;border-radius:18px}.drive-label h1{font-size:19px}.drive-label small{font-size:8px;letter-spacing:1.5px}.drive-score{font-size:18px;padding:7px 12px;min-width:94px}.drive-bottom{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom))}.drive-guide{font-size:11px;padding:9px 11px;max-width:210px}.drive-map-wrap{width:87px;height:87px;border-radius:19px}}
@media(max-height:500px){.drive-label small{display:none}.drive-label h1{font-size:17px}.drive-label{padding:7px 12px}.drive-hud{top:calc(var(--floating-nav-height,62px) + 5px)}.drive-map-wrap{height:78px;width:78px}.drive-bottom{bottom:8px}.drive-guide span{display:none}}
@media(prefers-reduced-motion:reduce){.drive-score.ping{animation:none}}

/* Soft enamel dash cards leave the driving surface open. */
.drive-label{background:linear-gradient(145deg,#fffdf2f5,#edf3ddeb);border-color:#fffef4;color:#38675a}
.drive-label h1{color:#436f63!important}.drive-label small{color:#79916b}
.drive-score{background:linear-gradient(145deg,#fffceb,#ffe6a0);color:#80602d}
.drive-map-wrap{border-radius:28px;border-color:#fff7df}

.drive-score small{display:block;font-size:10px;margin-top:2px;letter-spacing:.3px;color:#927747}.drive-reward{position:absolute;bottom:max(150px,calc(env(safe-area-inset-bottom) + 135px));right:18px;max-width:220px;min-height:48px;border:3px solid white;border-radius:22px;background:linear-gradient(#fff4b9,#ffdb80);color:#79582e;font:inherit;font-size:13px;font-weight:900;padding:12px 17px;box-shadow:0 4px #bd9d5366;touch-action:manipulation}.drive-reward[hidden]{display:none!important}@media(max-height:500px){.drive-reward{bottom:100px;font-size:11px;padding:8px 12px}}

.drive-goal-label{pointer-events:auto;display:flex;align-items:center;gap:8px;font-size:11px;font-weight:800;margin-top:8px;color:#789070}.drive-goal-label select{font:inherit;font-size:12px;font-weight:900;min-height:44px;padding:5px 8px;border:2px solid white;border-radius:13px;background:#e3eed7;color:#486c5a;touch-action:manipulation}.drive-goal-note{display:block;font-size:10px;line-height:1.35;color:#8c7a4c;max-width:180px;margin-top:2px}.drive-goal-note:empty{display:none}@media(max-height:500px){.drive-goal-label{margin-top:3px}.drive-goal-label select{min-height:36px}}
.drive-world-name{display:block;font-size:12px;font-weight:900;color:#557b79;margin:2px 0 5px}
#drive-screen[data-world=coast] .drive-label{background:#fff7e9ed;border-color:#fff4dc;color:#426f79}
#drive-screen[data-world=coast] .drive-label h1{color:#3e7780}
#drive-screen[data-world=coast] .drive-map{border-color:#fff1d4}
#drive-play-again{font-size:clamp(12px,1.3vw,16px);white-space:normal;max-width:260px}
#celebration #drive-play-again{background:linear-gradient(#e9f8f3,#b7dfd8);box-shadow:0 5px #80afa7;color:#456d73;text-decoration:none;font-weight:900;padding:10px 18px;min-height:60px}
#drive-play-again span,#drive-play-again small{display:block;line-height:1.2}#drive-play-again span{font-size:17px}#drive-play-again small{font-size:12px;margin-top:3px}
@media(max-width:600px){
 #celebration .victory-actions:has(>#drive-play-again:not([hidden])){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:calc(100% - 28px);left:14px;gap:12px;align-items:stretch}
 #celebration .victory-actions:has(>#drive-play-again:not([hidden])) #next,#celebration #drive-play-again{min-width:0;width:100%;max-width:none;font-size:16px;padding:9px 8px}
 #celebration .victory-actions:has(>#drive-play-again:not([hidden])) #party-home{grid-column:1/-1;justify-self:center;min-height:48px;padding:8px 24px}
}

#drive-level{max-width:180px}#drive-screen[data-world=snow] .drive-label{background:#edf7fff2}#drive-screen[data-world=rain] .drive-label{background:#e3f0f4f2}
@media(max-width:600px){#drive-level{max-width:145px;font-size:11px}.drive-label{max-width:220px}.drive-world-name{display:none}}
