/* Unified blue/silver navigation; action priority never masquerades as selection. */
:root{--gold:#b8dcf2;--ice:#dcefff;--blue:#56baff}
body{color:#edf6ff}
button:not(.color-choice),#botModal button,#addBot,.intro-actions button.secondary-start,.menu-actions .primary{
 background:linear-gradient(145deg,#193d60,#0a1d32)!important;color:#e2f1ff!important;border:1px solid #779dbb!important;box-shadow:inset 0 1px #e2f4ff30,0 4px 10px #0005!important;outline:none!important;text-shadow:none!important;
}
button:disabled{opacity:.45!important;cursor:default}
button:not(:disabled):focus-visible,[role="button"]:focus-visible,input:focus-visible,select:focus-visible{
 outline:3px solid #8fd7ff!important;outline-offset:4px!important;border-color:#d3efff!important;background:linear-gradient(145deg,#246ea4,#10385f)!important;box-shadow:0 0 0 2px #08213c,0 0 22px #40afff66!important;
}
.agebtn.on,.color-choice.selected{border-color:#b5e8ff!important;box-shadow:0 0 0 2px #78d1ff!important}
.agebtn.on{background:#174f7a!important}
.choice.selected{border-color:#bbe9ff!important;background:#174e7a!important}
.choice.correct{background:#154d40!important;border-color:#73d9b9!important}.choice.wrong{background:#592d40!important;border-color:#ee9bac!important}
.intro-box,.intro-connect,.phonehead,.phonecard,.menu-box,.route-choice,.agepick{border-color:#8bb9d066!important}
.intro-box h2,.menu-box h2,.menu-box h3,.phonecard h2,.turntext b,.intro-kicker,.intro-brandline>span,.intro-points,.phone-rollresult,.qnumber{color:#d6eaff!important}
.header-divider{background:linear-gradient(transparent,#b6d8eb,transparent)}
.ww-mark{object-fit:contain;filter:drop-shadow(0 4px 8px #0007)}
.intro-main>.ww-mark{width:min(480px,100%);max-height:32vh;height:auto;margin:0 auto 12px}
.logo .ww-mark{width:clamp(170px,19vw,280px);max-height:18vh}
.phonebrand .ww-mark{width:clamp(130px,43vw,215px);height:auto;max-height:125px}
.settings-open{position:fixed;right:22px;top:22px;z-index:60;font-size:18px;padding:13px 21px;border-radius:12px}
.menu-modal{z-index:100}.menu-box{max-height:calc(100dvh - 48px);overflow:auto}
#settingsPanel .game-menu{position:static;transform:none;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:16px 0}
#settingsPanel button{min-height:44px;font-size:16px;padding:10px 14px;border-radius:10px}
#settingsPanel .audio-settings{display:grid;gap:12px;border-top:1px solid #7ca6c655;padding-top:12px}
.audio-settings h3{font-size:16px;margin:0}.audio-settings label{font-size:14px;color:#c8e1f4}.audio-settings input{width:100%;accent-color:#66c8ff}
.music-toggle{display:none!important}
.is-phone .settings-open{top:9px;right:10px;font-size:14px;padding:9px 12px}
.is-phone .phone-company-logo{display:none}.is-phone .phonebrand{padding-right:80px}
#settingsPanel[hidden]{display:none}.menu-box [hidden],.game-menu [hidden]{display:none!important}
@media(max-height:650px){.intro-main>.ww-mark{max-height:26vh;width:360px}.logo .ww-mark{max-height:16vh}#settingsPanel .menu-box{padding:18px}}

/* TV controls occupy their own compact corner, leaving the board readable. */
body.is-tv .settings-open{right:12px;top:10px;padding:7px 10px;font-size:14px;min-height:32px;border-radius:7px}
body.is-tv .categories{padding-right:74px}
body.is-tv .menu-box{width:min(560px,82vw);padding:18px 22px;border-radius:16px;max-height:calc(100dvh - 32px)}
body.is-tv .menu-box h2{font-size:22px;margin:0 0 12px}
body.is-tv .menu-box p{font:14px/1.45 system-ui;margin:8px 0}
body.is-tv .menu-box button,body.is-tv .menu-box select{font-size:14px!important;min-height:34px!important;padding:7px 11px!important;border-radius:7px!important}
body.is-tv #settingsPanel .game-menu{padding:10px 0;gap:8px}
body.is-tv #settingsPanel .audio-settings{grid-template-columns:1fr 1fr;gap:6px 14px;padding-top:10px}
body.is-tv .audio-settings h3,body.is-tv #settingsFullscreen{grid-column:1/-1}
body.is-tv #settingsMusic{grid-column:1;grid-row:2}body.is-tv #settingsSound{grid-column:2;grid-row:2}
body.is-tv label[for=musicVolume]{grid-column:1;grid-row:3}body.is-tv label[for=effectsVolume]{grid-column:2;grid-row:3}
body.is-tv #musicVolume{grid-column:1;grid-row:4}body.is-tv #effectsVolume{grid-column:2;grid-row:4}
body.is-tv .bot-add{gap:8px;margin:12px 0}body.is-tv .bot-row{padding:5px 0}body.is-tv .bot-row span{font-size:14px}
body.is-tv button:not(:disabled):focus,body.is-tv select:focus,body.is-tv input:focus{outline:3px solid #a9e4ff!important;outline-offset:2px!important;border-color:#eefaff!important;background:linear-gradient(145deg,#287caf,#16486a)!important;box-shadow:0 0 0 2px #08213c,0 0 15px #40afff66!important}
body.is-tv .intro-box{padding:24px 28px;gap:24px}body.is-tv .intro-actions{gap:10px}

/* Menu beside the legend, with a restrained keyboard focus. */
body.is-tv .settings-open{right:calc(29vw + 24px);top:28px;min-height:32px;padding:7px 12px;font-size:14px}
body.is-tv #settingsOpen:focus{outline:none!important;border-color:#779dbb!important;background:linear-gradient(145deg,#193d60,#0a1d32)!important;box-shadow:inset 0 1px #e2f4ff30,0 3px 8px #0004!important}
body.is-tv #settingsOpen:focus-visible{outline:1px solid #a9e4ff!important;outline-offset:3px!important;border-color:#a9e4ff!important}
@media(max-height:760px){body.is-tv .settings-open{top:18px}}

/* Answer feedback remains readable after the answer controls are locked. */
#choices .choice:disabled{opacity:1!important;color:#d4e4ef!important;-webkit-text-fill-color:currentColor}
#choices .choice.correct:disabled{background:linear-gradient(135deg,#197e62,#0b4d3e)!important;color:#fff!important;border:2px solid #83ffd0!important;box-shadow:inset 0 1px #ffffff50,0 0 18px #39e6b044!important}
#choices .choice.correct .letter{background:#afffe1!important;color:#074b36!important;border-color:#ddfff3!important}
#choices .choice.wrong:disabled{background:linear-gradient(135deg,#663043,#3b1c30)!important;color:#ffe1e9!important;border-color:#e697ab!important}
#choices .choice:not(.correct):not(.wrong):disabled{background:#0c2338!important;color:#b3c6d5!important}
/* Lobby controls share one aligned panel; game menu keeps its legend anchor. */
body.is-tv.lobby-open .settings-open{position:static;margin-left:auto;flex-shrink:0;min-height:34px;font-size:13px;z-index:60}
body.is-tv .intro-points{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 16px;padding:12px 0;border-top:1px solid #a9d3ee35;border-bottom:1px solid #a9d3ee35}
body.is-tv .intro-points span{display:flex;gap:8px;align-items:center;border:0;background:none;border-radius:0;padding:0;color:#d0e5f5;font-size:clamp(12px,1.05vw,17px);letter-spacing:0}
body.is-tv .intro-points span:before{content:'✦';color:#82cfff;font-size:17px}
body.is-tv .intro-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:12px}
body.is-tv .intro-actions button{width:100%;min-width:0;min-height:54px;border-radius:12px;padding:12px 16px;background:linear-gradient(165deg,#275174,#102740)!important;border-color:#9ac2df!important;box-shadow:inset 0 1px #d8f0ff55,0 4px 0 #07182d,0 8px 20px #0005!important}
body.is-tv .intro-actions button:focus{background:linear-gradient(165deg,#387caa,#184d77)!important;border-color:#e4f7ff!important;outline:2px solid #a9e4ff!important;box-shadow:inset 0 1px #fff7,0 4px 0 #082944,0 0 20px #40afff55!important}
body.is-tv .intro-presence{width:100%;margin-top:16px;padding:11px 13px;border-radius:12px;background:linear-gradient(100deg,#0a293eaa,#10243e66);border-color:#83b8d066;color:#d3e8f8}
