/* One control family across all public pages. Layout and control sizes remain responsive. */
:root{--ui-cyan:#00ffff;--ui-pink:#ff66ff;--ui-face:#050a13;--ui-font:'Press Start 2P',monospace}
.high-score-dialog,.high-score-dialog *{box-sizing:border-box}
body.home-page,body.arcade-page{display:flex;flex-direction:column;height:100dvh;overflow:hidden}body.home-page #home{flex:1;min-height:0;height:auto;width:100%}body.home-page #hero{height:100%;width:100%}body.arcade-page .play-wrapper{flex:1;min-height:0;padding:0;container-type:size}body.arcade-page .arcade-stage{width:min(100cqw,100cqh)}body.arcade-page .game-select{height:auto;min-height:38.83%}body.arcade-page .game-select-inner{gap:8px}body.arcade-page .game-select a{padding:8px 2px;font-size:clamp(7px,1vw,12px)}.runner-shell .topbar{justify-content:space-between}
@media(max-width:600px){body.arcade-page .game-select{left:18%;width:64%;top:34%}body.arcade-page .game-select-inner{gap:5px}body.arcade-page .game-select h1{margin-bottom:0}body.arcade-page .game-select a{font-size:8px;padding:8px 2px}}
body :is(button,.retro-btn,.nav-btn,.main-nav a,.game-site-header a,.game-select a,.arcade-link,.game-links a,.connections a,.arcade-links a,summary,.faction-tabs a){border:2px solid var(--ui-cyan)!important;border-radius:24px!important;background:var(--ui-face)!important;color:var(--ui-cyan)!important;box-shadow:0 0 9px #00ffff60,inset 0 0 8px #00ffff25!important;font-family:var(--ui-font)!important;font-size:clamp(9px,.85vw,11px);line-height:1.6;text-decoration:none!important;text-transform:uppercase;cursor:pointer;min-height:44px;padding:10px 14px}
body :is(button,.retro-btn,.nav-btn,.main-nav a,.game-site-header a,.game-select a,.arcade-link,.game-links a,.connections a,.arcade-links a,summary,.faction-tabs a):hover:not(:disabled),body :is([aria-selected=true],[aria-current=page]){border-color:var(--ui-pink)!important;color:var(--ui-pink)!important;box-shadow:0 0 12px #ff66ff60,inset 0 0 8px #ff66ff25!important}
body :is(button,a,summary):focus-visible{outline:3px solid white!important;outline-offset:3px!important}body button:disabled{opacity:.45;cursor:default;box-shadow:none!important}body .character-tile{border:2px solid var(--ui-cyan);box-shadow:0 0 7px #00ffff30;background:var(--ui-face)}body .character-tile:hover{border-color:var(--ui-pink)}body .faction-tabs a strong{font:inherit;font-size:clamp(10px,1.2vw,14px)}body .faction-tabs a span{font:12px/1.4 Arial,sans-serif;text-transform:none}body .faction-tabs a{padding:14px 18px!important}body .game-links{gap:10px}body .arcade-link{display:inline-flex;align-items:center;gap:8px}body .connections a{display:inline-flex;align-items:center}body .stories summary{padding:15px!important}body .page-controls button{padding:8px;font-size:10px}body .reader-help button{padding:6px 12px;min-height:36px;font-size:9px}body .game-site-header a{font-size:11px;padding:12px 18px}body .profile-top .close-profile{font-size:9px}body .game-select a{display:block;font-size:clamp(7px,1vw,12px)}
.high-score-dialog{width:min(92vw,440px);max-height:90dvh;overflow:auto;padding:24px 20px;color:white;background:#050505;border:2px solid #00ffff;border-radius:16px;text-align:center;box-shadow:0 0 35px #00ffff70}.high-score-dialog::backdrop{background:#000c}.high-score-dialog h2{font:16px/1.8 var(--ui-font);color:#ff66ff;text-shadow:0 0 12px #ff66ff;margin:0 0 14px}.high-score-dialog p{font:14px/1.5 Arial,sans-serif}.high-score-dialog label{display:block;font:11px/1.6 var(--ui-font);margin:14px 0 8px}.high-score-dialog input{width:100%;padding:12px;background:#101018;color:#fff;border:2px solid #00ffff;border-radius:8px;font:16px/1.5 var(--ui-font);text-transform:uppercase}.high-score-actions{display:flex;justify-content:center;gap:12px}.high-score-dialog [hidden]{display:none!important}#sharedScoreValue{font:20px/1.5 var(--ui-font);color:#00ffff}#sharedScoreStatus{min-height:42px}
@media(prefers-reduced-motion:no-preference){.score-celebration{animation:score-glow .8s ease-in-out 3}@keyframes score-glow{50%{color:#fff;text-shadow:0 0 22px #ff66ff,0 0 36px #00ffff}}}
@media(max-width:680px){body .game-site-header a{font-size:10px;padding:11px 8px}body .high-score-dialog{padding:18px 14px}body .high-score-dialog h2{font-size:14px}}
