:root{color:#183044;background:#7bc9df;font-family:'Trebuchet MS',Arial,sans-serif}
.brand{color:#fff;text-shadow:0 2px 1px #163247}.brand>span:not(.brand-star){color:#ffcb4a}.brand-star{background:#ffcb4a;color:#22374c;border-color:#ffe8a1}.brand b{background:#183448}.topbar{padding:20px 30px}.connection{background:#173449e8;color:#d8f5ef;border:1px solid #ffffff38}.icon-button{background:#19394deb;border-color:#ffffff40;color:#fff}
.panel{background:#142f42f5;color:#f5f6e9;border:1px solid #698496;border-radius:17px;box-shadow:0 14px 50px #071d4d42,0 5px 0 #071c30;backdrop-filter:blur(14px)}
.menu-panel{width:414px;left:4vw;padding:24px 24px 15px;transform:translateY(-45%)}.eyebrow{color:#7ddbcc;font-size:9px;letter-spacing:1.8px}.eyebrow i{background:#66dfb5}.menu-panel h1{font-size:41px;letter-spacing:-1.9px;margin:15px 0 12px;line-height:1}.menu-panel h1 span{color:#ffce4d}.intro{color:#afc9d5;font-size:12px;margin-bottom:17px}.profile{border-color:#385263;padding-top:12px}.profile label,.course-label{color:#d9e6ea}.profile label{font-size:9px}input,select{background:#213f54;border-color:#466173;color:#f4f5ec}input::placeholder{color:#a7bece}.swatch.selected{outline-color:#ffdb65}
.course-label{margin-top:16px}.course-label span{color:#9eb8c8}.course-cards{grid-auto-columns:112px;gap:7px;margin-bottom:8px;scrollbar-color:#6e9eaf #284558}.course-card,.course-card.selected{background:#213e51;border:1px solid #456174;border-radius:8px;color:#f3f4e9;padding-bottom:7px}.course-card.selected{border:2px solid #ffcc49;background:#375360}.course-art{height:53px;background:#293e52}.course-art canvas{width:100%;height:100%;object-fit:cover}.course-card b{font-size:10px;margin:6px 7px 0}.course-card small{color:#b7c8cb;font-size:6.5px}.course-brief{min-height:54px;padding:8px 11px;margin:0 0 11px;background:#0b2536;border-left:3px solid #ffcb4b;border-radius:0 5px 5px 0}.course-brief b{font-size:9px;letter-spacing:1px;color:#ffdc7b}.course-brief p{font-size:10px;line-height:1.4;color:#c0d4dc;margin:4px 0 0}
.primary{background:#ffcd46;color:#263447;box-shadow:0 4px 0 #b68025}.secondary{background:#254b60;border:1px solid #548494;color:#e5f6f3;box-shadow:0 3px 0 #0a2437}.menu-panel>.primary{min-height:43px}.menu-panel>.bot-play-button{background:#18a7a3;color:white;box-shadow:0 4px 0 #087477;border-color:#55d0bc;min-height:42px;font-size:12px;margin:12px 0 0}.join-row{margin-top:11px}.practice-button{color:#b4ddd9!important;margin:10px 0!important;padding:4px 0!important}.menu-meta{border-color:#385465;color:#acc5cc;font-size:6.5px;padding-top:10px}.text-button{color:#b4d9dd}
.scene-caption>span{background:#173346ed;color:#bbebde;border:1px solid #77a2b7;border-radius:5px;font-size:10px}.scene-caption strong{color:#fff7de;text-shadow:0 3px 0 #254c5e,0 8px 25px #142c3d99}.caption-pills span{background:#173346d9;color:#e0f0ea;border-color:#739eac;border-radius:5px}.control-hint{background:#143247ed;color:#d7e6e9;border-radius:7px}.control-hint kbd{background:#456171;border-color:#8caaae;color:#fff}
.race-title,.hud-stats>div{background:#153549ef;color:#fff9e9;border:1px solid #86afbe;border-radius:9px;box-shadow:0 4px 0 #102a40}.race-title small{color:#64dcc2}.race-title>span{color:#d5e7e8}.hud-stats small{color:#acd9df}.hud-stats em{color:#b0d1dd}.hud-stats>div:last-child{background:#ffd24e;color:#173244;border-color:#fff0af}.hud-stats>div:last-child small{color:#48606a}.race-banner{background:#ffcd4a;color:#213b4b;box-shadow:0 6px 0 #936b33;border-color:#fff0b6;border-radius:7px}.standings{background:#163549dc;color:white;border:1px solid #6a95a6;border-radius:8px}.standings-heading{color:#b4dbe5}.standings-heading span{color:#91b5c7}.standings li,.standings li b{color:#bdd2d8}.standings li.self{color:#ffe693}.leave-game-button{background:#173749db;color:#d0e5e8;border:1px solid #779aab;box-shadow:none;min-height:34px;font-size:10px;top:204px}.leave-game-button:hover{background:#36586b}.race-progress{color:#fff;text-shadow:0 1px 2px #153246}.race-progress i{background:#ffcd46}.race-progress b{color:#ffcd46}.stage-guide{position:fixed;left:34px;bottom:108px;z-index:2;width:280px;padding:12px 15px;background:#153549e8;color:#edf6ef;border-left:3px solid #ffcf4d;border-radius:0 8px 8px 0;pointer-events:none}.stage-guide small{display:block;color:#ffda6f;font-size:9px;letter-spacing:2px}.stage-guide strong{display:block;font-size:15px;margin-top:5px;letter-spacing:.5px}.stage-guide p{font-size:11px;color:#bbd4dd;line-height:1.5;margin:6px 0 10px}.stage-guide>span{font-size:8px;letter-spacing:1px;color:#81d9c6}
.invite-card,.roster-member,.results-list li.self,.next-course{background:#213f53;border-color:#527286}.small-copy,.check-label span,.guest-settings,.pause-card p,.result-panel>p{color:#b4cdd7}.invite-card small,.host-settings label,.results-header,.results-list small,.results-list b{color:#b5d1db}.host-settings,.results-header,.results-list li{border-color:#3c596b}.roster-member.ready .member-status{color:#65dfbf}.round-track i{background:#517181}.round-track i.current{background:#ffce4c}.round-track i.done{background:#56d9bb}.loading{background:#16354b;color:#ffdc69}.loading p{color:#c0dadf}.loading-bean{color:#ffce4b;text-shadow:0 5px #bc882b}.toast{background:#16374b;color:#fff;border-color:#72b3c3}
.spectator-controls{background:#15374bea;color:#e5f4ef;border:1px solid #729cab}.spectator-controls button{background:#2c596d;color:#ffe088}.menu-panel{scrollbar-color:#668894 #19384c}
@media(max-width:1000px){.menu-panel{left:24px;width:375px;padding:20px}.menu-panel h1{font-size:35px}.stage-guide{left:23px;width:244px}.scene-caption{right:4%;bottom:115px}.scene-caption strong{font-size:39px}}
@media(max-width:700px){.topbar{padding:14px 16px}.menu-panel{left:12px;right:12px;width:auto;top:82px;bottom:16px;transform:none;padding:20px;max-height:none}.menu-panel h1{font-size:35px}.scene-caption{display:none}.course-cards{grid-auto-columns:104px}.course-art{height:50px}.stage-guide{left:12px;bottom:166px;width:210px;padding:8px 11px}.stage-guide strong{font-size:12px}.stage-guide p{font-size:10px;margin:4px 0 6px}.stage-guide>span{font-size:7px}.leave-game-button{left:12px;top:172px}.hud-stats>div{padding:9px}.control-hint{display:none}.standings{right:12px}}
@media(max-height:650px) and (orientation:landscape){.menu-panel{top:66px;bottom:14px;transform:none;max-height:none;overflow:auto;width:355px}.menu-panel h1{font-size:29px}.intro{display:none}.stage-guide{bottom:55px;padding:8px 12px;width:235px}.stage-guide p{margin-bottom:5px}.stage-guide strong{font-size:12px}}
