.player-area{margin-left:auto;position:relative;flex-shrink:0}
.player-button{position:relative;width:48px;height:48px;padding:5px;background:#251c33;border:2px solid #66517e;box-shadow:3px 3px #09080d;display:block}
.player-button svg,.profile-avatar svg{width:100%;height:100%;image-rendering:pixelated}
.connection-dot{position:absolute;right:-4px;bottom:-4px;width:10px;height:10px;background:#756581;border:2px solid #101018}
.connected .connection-dot{background:var(--lime)}
.player-menu{position:absolute;right:0;top:60px;width:300px;max-width:calc(100vw - 24px);z-index:1200;background:#211a2c;border:2px solid #735b91;box-shadow:6px 6px #08060dbb;padding:18px}
.player-menu .eyebrow{font-size:7px}
.player-menu strong{display:block;font-family:Pixel,monospace;font-size:10px;color:var(--yellow);margin:15px 0}
.player-menu p{font-size:22px;line-height:1.25;color:#b8a7cc;margin:12px 0 18px}
.player-menu button{display:block;width:100%;text-align:left;font-family:Pixel,monospace;font-size:8px;padding:14px 10px;min-height:44px;border-top:1px solid #493652;background:transparent;line-height:1.7}
.player-menu button:hover{background:#352641}
.player-menu button:active{background:#513864;transform:translate(1px,1px)}
.account-note{font:20px/1.3 ArcadeText,monospace;color:#ad9bbd}
.footer #sound-toggle{margin-left:auto;min-height:44px}
.footer .sound-label{display:inline;font-family:Pixel,monospace;font-size:7px}
.footer-legal{display:flex;gap:14px;font:19px ArcadeText,monospace}
.footer-legal a,.signin-links a{color:var(--purple);text-decoration:underline;text-underline-offset:4px}
#pause-actions{display:flex;flex-direction:column;gap:12px;margin-top:14px}
#pause-actions button{min-height:44px;font-size:8px}
#run-actions{width:min(320px,100%);display:flex;flex-direction:column;gap:12px;margin:12px auto 0}
#run-actions button{min-height:44px;font-size:8px}
#run-sync-status{font:19px/1.2 ArcadeText,monospace;margin:0;color:#ac9abf}
.game-overlay:has(#run-actions:not([hidden])){overflow-y:auto;max-height:100%;padding:20px}
.game-overlay:has(#run-actions:not([hidden])) h2{font-size:17px;line-height:1.5;margin:12px 0}
.game-overlay:has(#run-actions:not([hidden])) #overlay-copy{font-size:21px;line-height:1.25;margin:10px auto 18px}
.profile-view{padding-bottom:50px}
.profile-hero{display:flex;align-items:center;gap:24px;padding:28px;background:repeating-linear-gradient(0deg,#ae8aff05 0 1px,transparent 1px 4px),#241b33;border:2px solid #6c5189;box-shadow:5px 5px #09060e;margin:20px 0 28px}
.profile-avatar{width:88px;height:88px;padding:8px;background:#17121f;border:2px solid #82609f;flex-shrink:0}
.profile-hero>div:nth-child(2){min-width:0}
.profile-hero h1{font:18px/1.8 Pixel,monospace;color:var(--yellow);margin:12px 0;overflow-wrap:anywhere}
.profile-hero p{font:23px/1.3 ArcadeText,monospace;color:#bbaacd;margin:0;overflow-wrap:anywhere}
.profile-local{margin-left:auto;color:var(--lime);font:7px/1.8 Pixel,monospace;white-space:nowrap}
.profile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 30px}
.profile-stats>div{padding:23px;background:#1c1826;border:2px solid #534162;box-shadow:inset 2px 2px #ffffff08,3px 3px #09070f;min-width:0}
.profile-stats span{display:block;font:8px/1.8 Pixel,monospace;color:#b7a6c8}
.profile-stats strong{display:block;font:25px/1.8 Pixel,monospace;color:var(--lime);margin-top:12px;overflow-wrap:anywhere}
.profile-stats>div:nth-child(2) strong{color:var(--purple)}
.profile-stats>div:nth-child(3) strong{color:var(--yellow)}
.profile-actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin:0 0 24px}
.profile-actions button{width:auto;max-width:100%;min-width:160px}
#profile-status{font:22px/1.3 ArcadeText,monospace;color:var(--yellow);flex-basis:100%;margin:0}
.profile-section h2{font:16px/1.8 Pixel,monospace;margin:14px 0}
.profile-section>p{font-size:23px;color:#a797b9;margin:12px 0 22px}
.run-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;background:#1c1826;border:2px solid #48364f;padding:20px;margin-bottom:14px;box-shadow:3px 3px #09070f}
.run-row h3{font:11px/1.7 Pixel,monospace;margin:0 0 9px;color:#e8ddf7}
.run-row p{font:20px/1.25 ArcadeText,monospace;margin:0;color:#a797b9}
.run-score{font:18px/1.8 Pixel,monospace;color:var(--yellow);overflow-wrap:anywhere;max-width:220px}
.run-badge{grid-column:1/-1;font:7px/1.8 Pixel,monospace;color:#b19dca}
.run-badge.confirmed{color:var(--lime)}
.empty-runs{background:#1c1826;border:1px dashed #665078;padding:32px;color:#c1afd4;font:25px/1.3 ArcadeText,monospace;text-align:center}
.profile-best{margin-top:36px;border:2px solid #51405f;background:#1b1724}
.profile-best summary{padding:18px;min-height:44px;cursor:pointer;font:8px/1.8 Pixel,monospace;color:#c6b1dd}
.profile-best-row{display:flex;justify-content:space-between;gap:20px;padding:12px 18px;border-top:1px solid #33293e;font:23px ArcadeText,monospace}
.profile-best-row strong{color:var(--lime);min-width:0;overflow-wrap:anywhere;text-align:right}.profile-best-row span{min-width:0;overflow-wrap:anywhere}
#profile-load-more{margin-top:18px;max-width:320px}
#signin-dialog{width:min(460px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;background:#21192e;color:#f2eafa;border:3px solid #9170b3;box-shadow:7px 7px #08050e;overflow-y:auto}
#signin-dialog::backdrop{background:#080611dd}
.signin-inner{padding:26px}
#signin-dialog h2{font:16px/1.8 Pixel,monospace;color:var(--yellow);margin:17px 0 12px}
#signin-dialog .eyebrow{font-size:7px}
.signin-inner>p{font:23px/1.3 ArcadeText,monospace;color:#beacd0}
#google-signin-button{display:flex;justify-content:center;min-height:44px;margin:22px 0}
#signin-dialog #signin-status{color:var(--yellow)}
#signin-dialog button{min-height:44px;width:100%;margin:12px 0 0;font-size:8px}
#signin-dialog .account-note{font-size:20px}
.legal-page{max-width:800px;padding-top:32px;padding-bottom:48px}
.legal-page h1{font-size:22px;color:var(--yellow);margin-bottom:28px}
.legal-page h2{font-size:13px;color:var(--purple);margin-top:28px}
.legal-page p,.legal-page li{font:24px/1.4 ArcadeText,monospace;color:#c2b5d1}
.legal-page a{color:var(--lime);text-decoration:underline}
@media(max-width:640px){
.header-inner{gap:14px}.header-inner .brand{font-size:8px;gap:6px}.brand-mark{font-size:24px}nav{gap:12px}.nav-link{font-size:6px}.player-button{width:44px;height:44px}
.profile-hero{padding:18px;gap:14px;align-items:flex-start;flex-wrap:wrap}.profile-avatar{width:60px;height:60px}.profile-hero>div:nth-child(2){flex:1 1 calc(100% - 74px)}.profile-hero .eyebrow{font-size:6px;line-height:1.8}.profile-hero h1{font-size:11px;margin:10px 0}.profile-hero p{font-size:21px}.profile-local{flex-basis:100%;width:100%;margin-left:0;text-align:right;font-size:6px}
.profile-stats{gap:8px;margin-bottom:23px}.profile-stats>div{padding:14px 9px}.profile-stats span{font-size:6px;min-height:32px}.profile-stats strong{font-size:16px;margin-top:6px}.profile-section h2{font-size:13px}.run-row{gap:12px;padding:16px 12px}.run-row h3{font-size:9px}.run-badge{font-size:6px}.run-score{font-size:15px;max-width:150px}.footer{flex-wrap:wrap;padding-top:18px;padding-bottom:18px}.footer #sound-toggle{margin:0}.footer .sound-label{display:inline}.footer-legal{flex-basis:100%;justify-content:center}
.immersive-machine .game-overlay:has(#run-actions:not([hidden])){justify-content:flex-start;padding:18px}#run-sync-status{font-size:18px}.signin-inner{padding:20px 16px}#signin-dialog h2{font-size:13px}.legal-page h1{font-size:17px}
}
@media(max-width:360px){.header-inner{gap:10px;padding:0 12px}.header-inner .brand{font-size:7px}.nav-link{font-size:6px}nav{gap:8px}}
