:root{color:#153e3a;font-synthesis:none;--ink:#153e3a;--paper:#f9f8eb;--lime:#e2f2a4;--coral:#fc886f;--muted:#6b8176;background:#a5dce0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border:0}button:disabled{cursor:default}button:focus-visible{outline-offset:4px;outline:3px solid #ed8b6f}input:focus-visible{outline-offset:4px;outline:3px solid #ed8b6f}#world{touch-action:none;width:100%;height:100%;position:fixed;top:0;bottom:0;left:0;right:0}#app{z-index:1;pointer-events:none;height:100dvh;min-height:100%;position:relative}#app button,#app input,#content>section,#modal,.joystick{pointer-events:auto}.masthead{z-index:10;padding:max(25px, env(safe-area-inset-top)) max(36px, env(safe-area-inset-right)) 15px max(36px, env(safe-area-inset-left));justify-content:space-between;align-items:center;gap:20px;display:flex;position:fixed;top:0;left:0;right:0}.wordmark{letter-spacing:-.7px;text-align:left;white-space:nowrap;padding-left:43px;font-size:19px;font-weight:950;line-height:1.2;position:relative}.brand-dot{color:#f87561;font-size:36px;font-weight:400;position:absolute;top:2px;left:0}.brand-small{letter-spacing:2px;margin-top:4px;font-size:7.5px;font-weight:700;display:block}.top-tools{align-items:center;gap:10px;display:flex}.icon-button{background:#f8faedb3;border:1px solid #143f3d25;border-radius:50%;place-items:center;min-width:38px;height:38px;font-size:20px;font-weight:650;transition:all .2s;display:grid}.icon-button:hover{background:#fffcec;transform:translateY(-2px)}.connection{letter-spacing:1.3px;align-items:center;gap:8px;margin-right:13px;font-size:9px;font-weight:700;display:flex}.connection i{background:#2d8b64;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #fff5}.connection.offline{background:#fff0d7;border-radius:10px;padding:9px}.connection.offline i{background:#d0773f}.welcome-panel{width:430px;max-width:40vw;position:absolute;top:19vh;left:7vw}.eyebrow{letter-spacing:1.8px;align-items:center;gap:8px;font-size:9px;font-weight:850;display:flex}.eyebrow>span{background:#fc886f;border-radius:50%;width:6px;height:6px;display:inline-block}h1,h2,p{margin:0}h1{letter-spacing:-3.8px;margin:21px 0 22px;font-size:clamp(42px,4.8vw,68px);font-weight:900;line-height:.99}h1 em,h2 em{color:#f06f57;font-style:normal}p.intro{color:#466a61;letter-spacing:-.1px;font-size:15px;line-height:1.6}.entry-card{background:#faf9efeb;border:1px solid #ffffffa1;border-radius:23px;max-width:372px;margin-top:27px;padding:10px 22px 18px;box-shadow:0 20px 60px #20524d0b}.tabs{background:#e8eddf;border-radius:12px;margin:3px 0 20px;padding:4px;display:flex}.tabs button{color:#6a7c71;border-radius:9px;flex:1;padding:10px;font-size:12px;font-weight:750}.tabs button.active{color:var(--ink);background:#fffef4;box-shadow:0 2px 5px #1542320c}label{letter-spacing:1.5px;margin:0 0 8px;font-size:8px;font-weight:800;display:block}input{width:100%;height:45px;color:var(--ink);background:#fffef6;border:1px solid #c6d3bf;border-radius:9px;outline:none;margin:0 0 14px;padding:0 13px;font-size:14px;transition:all .15s}input:focus{border-color:#5b9f87;box-shadow:0 0 0 3px #7ba38a17}input::placeholder{color:#9aa795}.code-input{text-transform:uppercase;letter-spacing:5px;font-weight:800}.primary{background:var(--ink);color:#f4f5df;text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-height:47px;padding:12px 17px;font-size:13px;font-weight:750;transition:background .2s,transform .2s;display:flex;box-shadow:0 4px #0e312e}.primary:hover{background:#236052;transform:translateY(-1px)}.primary:active{transform:translateY(2px);box-shadow:0 1px #0e312e}.primary span{font-size:21px;font-weight:300}.primary:disabled{color:#87947e;box-shadow:none;background:#d5ddc9;transform:none}.wide{width:100%}.form-note{color:#8a9983;text-align:center;margin-top:13px;font-size:9px;line-height:1.5}.welcome-bottom{color:#4c7466;align-items:center;gap:19px;margin-top:25px;font-size:9px;display:flex}.welcome-bottom>span{align-items:center;gap:6px;display:flex}.welcome-bottom b{color:#1d4b40;font-size:20px;font-weight:850}.welcome-bottom button{text-underline-offset:4px;margin-left:auto;padding:0 10px 0 0;font-size:10px;text-decoration:underline}.welcome-bottom button span{margin-left:7px}.scene-caption{color:#255d56;align-items:center;gap:13px;display:flex;position:absolute;bottom:11%;right:12%}.mini-sun{color:#f7f4d0;font-size:44px;line-height:1}.scene-caption>span:nth-child(2){letter-spacing:2px;font-size:8px;line-height:1.8}.scene-caption b{letter-spacing:1.5px;font-size:10px}.scene-caption i{margin-left:20px;font-family:Georgia,serif;font-size:12px;transform:rotate(-9deg)}.home-footer{color:#407269;font-size:9px;position:absolute;bottom:25px;left:36px}.lobby-panel{scrollbar-width:thin;scrollbar-color:#b6cbaa transparent;background:#f7f8edec;border:1px solid #ffffffb0;border-radius:25px;width:415px;padding:25px;position:absolute;top:105px;bottom:25px;left:5vw;overflow-y:auto;box-shadow:0 20px 80px #134c4310}.lobby-heading{justify-content:space-between;align-items:center;display:flex}.lobby-heading h1{letter-spacing:-1.9px;margin:16px 0 22px;font-size:39px}.text-button{text-underline-offset:4px;padding:12px 0;font-size:10px;font-weight:600;text-decoration:underline}.room-ticket{background:#e2edcf;border:1px dashed #acc598;border-radius:12px;flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:20px;padding:12px 15px;display:flex}.room-ticket small{letter-spacing:1.4px;font-size:7px;font-weight:800;display:block}.room-ticket strong{letter-spacing:6px;margin:3px 0;font-size:31px;font-weight:850;line-height:1.2;display:block}.room-ticket>.icon-button{background:0 0;min-width:31px;height:31px;margin-left:auto;font-size:19px}.room-ticket p{color:#6c8361;border-left:1px solid #bbcdae;margin-left:6px;padding-left:12px;font-size:9px;line-height:1.5}.character-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.character-card{background:#fffef4;border:1px solid #dbe2cc;border-radius:11px;flex-direction:column;align-items:center;padding:9px 3px 8px;transition:all .18s;display:flex;position:relative;overflow:hidden}.character-card:hover:not(:disabled){border-color:#7b9f7d;transform:translateY(-3px);box-shadow:0 5px 12px #143f3d14}.character-card.selected{background:#e7efd7;border:2px solid #2c705e;padding:8px 2px 7px}.character-card.taken{opacity:.43}.character-icon{background:var(--char);border-radius:50%;place-items:center;width:43px;height:43px;margin-bottom:5px;font-size:29px;display:grid;box-shadow:inset 0 0 0 5px #ffffff35}.character-card strong{font-size:10px;line-height:1.4}.character-card small{color:#92a082;white-space:nowrap;margin:2px 0 8px;font-size:7px}.pick-status{letter-spacing:.7px;color:#51755b;font-size:6px;font-weight:800}.crew-header{letter-spacing:1.4px;justify-content:space-between;align-items:center;margin:21px 0 10px;font-size:8px;display:flex}.crew-header strong{letter-spacing:2px;font-size:11px}.crew-list{grid-template-columns:1fr 1fr;gap:6px;display:grid}.crew-person{background:#e9efdf8a;border-radius:8px;align-items:center;gap:6px;min-width:0;padding:6px 7px;display:flex}.crew-avatar{font-size:18px}.crew-person>strong{white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.crew-person small{color:#8a9c80;font-size:6px}.crew-status{letter-spacing:.3px;color:#89977c;white-space:nowrap;margin-left:auto;font-size:5.5px}.crew-status.ready{color:#4c8963}.lobby-actions{margin-top:19px}.practice-button{text-align:center;text-underline-offset:4px;color:#6d8765;width:100%;padding:16px 0 0;font-size:9px;text-decoration:underline;display:block}.is-ready{background:#54866b}.lobby-aside{text-align:center;position:absolute;bottom:10%;right:12%}.lobby-aside h2{letter-spacing:-1px;margin-top:10px;font-size:30px;line-height:1.1}.lobby-aside p{color:#447568;margin-top:12px;font-size:10px;line-height:1.7}.game-top{width:min(900px,100% - 64px);position:absolute;top:91px;left:50%;transform:translate(-50%)}.match-status{letter-spacing:1.6px;justify-content:center;align-items:center;gap:21px;font-size:8px;font-weight:700;display:flex}.match-status strong{background:var(--ink);color:#eef3d8;letter-spacing:1.8px;border-radius:20px;padding:8px 16px;font-size:10px}.scoreboard{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:13px;display:grid}.score-card{background:#fcfbf0e6;border:1px solid #ffffff75;border-radius:12px;align-items:center;gap:8px;min-width:0;padding:11px 10px;transition:opacity .3s;display:flex;box-shadow:0 4px 12px #164e3810}.score-card.mine{outline:2px solid #e9f3b9;box-shadow:0 0 0 3px #2b715640}.score-avatar{background:var(--char);border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;font-size:22px;display:grid}.score-info{flex:1;min-width:0}.score-info strong{white-space:nowrap;text-overflow:ellipsis;font-size:9px;font-weight:750;display:block;overflow:hidden}.score-info strong em{color:#8b9a7c;margin-left:3px;font-size:5px;font-style:normal}.win-dots{gap:4px;margin-top:6px;display:flex}.win-dots i{background:#dce5cb;border-radius:50%;width:7px;height:7px}.win-dots i.won{background:#f6975d;box-shadow:0 0 0 1px #d5764420}.player-state{letter-spacing:.4px;font-size:5px;font-weight:800}.score-card.out{opacity:.55}.arena-notice{text-align:center;color:#4a6d53;white-space:nowrap;background:#f6f3d2b3;border-radius:20px;padding:8px 15px;font-size:10px;font-weight:700;position:absolute;top:195px;left:50%;transform:translate(-50%)}.arena-notice:empty{display:none}.game-bottom{text-align:center;align-items:center;gap:36px;display:flex;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.controls-hint{flex-direction:column;align-items:center;gap:7px;display:flex}.keyboard-keys{letter-spacing:5px;font-size:10px;font-weight:800}.keyboard-keys i{letter-spacing:0;color:#4e877e;margin:0 5px;font-size:8px;font-style:normal}.controls-hint b{letter-spacing:1.6px;font-size:8px}.round-clock{text-align:left;border-left:1px solid #2d6d5f38;padding-left:22px}.round-clock small{letter-spacing:1.5px;font-size:6px;display:block}.round-clock b{letter-spacing:-1px;font-size:27px;font-weight:800;line-height:1.2}.touch-tip{display:none}.game-exit{text-underline-offset:4px;color:#507b6e;font-size:8px;text-decoration:underline;position:absolute;bottom:33px;left:36px}.nameplate{color:#385a48;white-space:nowrap;background:#f9f8eeed;border-radius:10px;padding:4px 8px;font-size:8px;font-weight:750;position:absolute;top:0;left:0;box-shadow:0 2px 3px #164e3810}.nameplate.me{color:#eaf1ba;letter-spacing:1px;background:#153e3a;font-size:9px;box-shadow:0 0 0 2px #f5f4da95}.round-overlay{text-align:center;pointer-events:none;z-index:4;min-width:270px;position:absolute;top:49%;left:50%;transform:translate(-50%,-50%)}.round-overlay .eyebrow{justify-content:center}.countdown-overlay h2{color:#fff8d9;letter-spacing:-9px;text-shadow:0 6px #215e5060;font-size:126px;font-weight:950;line-height:1.1}.round-overlay p{margin-top:4px;font-size:13px}.result-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#faf9ecf0;border-radius:25px;min-width:345px;padding:25px 34px;box-shadow:0 18px 80px #123c4325}.result-overlay h2{letter-spacing:-1.2px;max-width:440px;font-size:29px;line-height:1.08}.result-overlay p{color:#698065;margin-top:14px;font-size:11px}.winner-icon{margin:14px 0;font-size:62px;line-height:1;display:block}.result-overlay .eyebrow{font-size:7px}.spectating{background:#fff9e8d9;border-radius:12px;padding:10px 17px;font-size:12px;font-weight:750;display:none}.spectating.visible{display:block}.spectating span{white-space:nowrap;margin-top:5px;font-size:8px;font-weight:400;display:block}.match-scrim{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:6;pointer-events:auto;background:#28534335;place-items:center;padding:80px 20px 20px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0;overflow:auto}.match-card{text-align:center;background:#f9f8eb;border-radius:25px;width:420px;max-width:100%;padding:28px 38px;box-shadow:0 25px 100px #193f4130}.match-card .eyebrow{justify-content:center;font-size:7px}.match-card .winner-icon{margin:12px 0;font-size:49px}.match-card h2{letter-spacing:-2px;font-size:41px;line-height:.98}.match-subtitle{color:#849174;margin:14px 0 20px;font-size:10px}.final-scores{flex-direction:column;gap:6px;margin-bottom:19px;display:flex}.final-scores>div{text-align:left;background:#e8eedb;border-radius:9px;align-items:center;gap:10px;padding:8px 12px;font-size:12px;display:flex}.final-scores>div:first-child{background:#e0eeb8}.final-scores .rank{color:#8c9c76;width:12px;font-size:8px}.final-scores strong{flex:1;font-size:10px}.final-scores b{font-size:12px}.final-scores small{letter-spacing:.7px;font-size:6px}.match-card>p:last-child{font-size:10px}.joystick{bottom:max(38px, env(safe-area-inset-bottom));left:max(32px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);touch-action:none;-webkit-user-select:none;user-select:none;background:#e9f7ed32;border:1px solid #ffffffb0;border-radius:50%;width:130px;height:130px;display:none;position:absolute;box-shadow:inset 0 0 0 12px #ffffff18,0 7px 35px #20504a0b}.joystick-cross{color:#ffffff45;font-size:76px;font-weight:200;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.joystick #stick{background:#f2f6dbeb;border:3px solid #fffff099;border-radius:50%;width:52px;height:52px;position:absolute;top:calc(50% - 26px);left:calc(50% - 26px);box-shadow:0 4px 12px #19584028}#toast{color:#f5f6dc;text-align:center;opacity:0;z-index:30;pointer-events:none;background:#153e3af5;border-radius:13px;max-width:min(510px,100% - 30px);padding:14px 20px;font-size:12px;line-height:1.45;transition:all .25s;position:fixed;bottom:26px;left:50%;transform:translate(-50%,20px);box-shadow:0 5px 25px #173e3e25}#toast.shown{opacity:1;transform:translate(-50%)}.modal-backdrop{z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto;background:#214f4666;place-items:center;padding:20px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.help-card{background:#fbf9ec;border-radius:25px;width:460px;max-width:100%;max-height:calc(100dvh - 40px);padding:35px;position:relative;overflow:auto;box-shadow:0 20px 80px #173e3e35}.close-button{font-size:26px;position:absolute;top:15px;right:17px}.help-card h2{letter-spacing:-1.8px;margin:19px 0;font-size:41px;line-height:1.05}.help-card ol{color:#5f7969;flex-direction:column;gap:15px;margin:20px 0;padding-left:17px;font-size:12px;line-height:1.6;display:flex}.help-card li{padding-left:4px}.help-card b{color:#254e41}.help-note{color:#789175;margin:0 0 20px;font-size:10px;line-height:1.6}.webgl-error{pointer-events:auto;background:#fff8e8;border-radius:20px;width:90%;max-width:550px;margin:10vh auto;padding:25px}.webgl-error h1{letter-spacing:-1px;font-size:32px}body[data-phase=playing] .masthead,body[data-phase=countdown] .masthead,body[data-phase=result] .masthead{padding-top:max(20px, env(safe-area-inset-top))}@media (min-width:1600px){.welcome-panel{max-width:450px;left:10vw}.lobby-panel{left:8vw}.scene-caption{right:17%}}@media (max-height:790px) and (min-width:851px){.welcome-panel{top:16vh}.welcome-panel h1{margin:15px 0;font-size:53px}.entry-card{margin-top:18px;padding-bottom:14px}.welcome-bottom{margin-top:20px}.lobby-panel{padding:19px;top:87px;bottom:18px}.lobby-heading h1{margin:12px 0 15px;font-size:34px}.room-ticket{margin-bottom:14px;padding:9px 13px}.character-card{padding-top:6px;padding-bottom:5px}.character-icon{width:35px;height:35px;font-size:25px}.character-card small{margin-bottom:5px}.crew-header,.lobby-actions{margin-top:15px}.match-card{padding:23px 30px}.match-card h2{font-size:35px}.final-scores>div{padding:6px 12px}.game-top{top:75px}}@media (max-width:1100px) and (min-width:851px){.welcome-panel{width:380px;left:4vw}.welcome-panel h1{font-size:52px}.lobby-panel{width:380px;left:3vw}.room-ticket p{padding-left:9px;font-size:8px}.lobby-aside{right:7%}.score-card{gap:5px;padding:10px 6px}.score-avatar{width:26px;height:26px;font-size:19px}.score-info strong{font-size:8px}}@media (max-width:850px){.masthead{gap:10px;padding:20px 21px}.wordmark{padding-left:34px;font-size:16px}.brand-dot{font-size:29px}.brand-small{letter-spacing:1.6px;font-size:6px}.top-tools{gap:7px}.icon-button{width:33px;min-width:33px;height:33px;font-size:17px}.connection{display:none}.welcome-panel{width:345px;max-width:45vw;top:125px;left:26px}.welcome-panel h1{letter-spacing:-2.5px;font-size:44px}.welcome-panel p.intro{font-size:12px}.entry-card{margin-top:21px;padding:10px 15px 15px}.welcome-bottom{gap:11px;font-size:7px}.welcome-bottom b{font-size:17px}.welcome-bottom button{font-size:8px}.scene-caption{gap:8px;bottom:17%;right:5%}.scene-caption i{display:none}.scene-caption>span:nth-child(2){font-size:7px}.scene-caption b{font-size:8px}.lobby-panel{width:360px;padding:20px;top:85px;bottom:22px;left:22px}.lobby-heading h1{font-size:34px}.room-ticket p{font-size:8px}.lobby-aside{max-width:34vw;bottom:13%;right:4%}.lobby-aside h2{font-size:24px}.lobby-aside p{font-size:9px}.game-top{width:calc(100% - 32px);top:80px}.scoreboard{gap:5px}.score-card{border-radius:9px;flex-direction:column;gap:4px;padding:8px 5px}.score-avatar{width:25px;height:25px;font-size:18px}.score-info{text-align:center;width:100%}.score-info strong{font-size:7px}.win-dots{justify-content:center;gap:3px;margin-top:5px}.win-dots i{width:6px;height:6px}.player-state,.score-info em{display:none}.arena-notice{top:202px}.game-bottom{gap:20px;bottom:26px}.controls-hint b{font-size:7px}.round-clock{padding-left:16px}.game-exit{bottom:25px;left:22px}.spectating{width:240px;position:absolute;bottom:52px;left:50%;transform:translate(-50%)}.spectating span{white-space:normal}.home-footer{bottom:21px;left:24px}}@media (any-pointer:coarse){.joystick{display:block}.keyboard-keys{display:none}.touch-tip{color:#4a7768;font-size:9px;display:block}.game-bottom{text-align:right;flex-direction:column;align-items:flex-end;gap:10px;bottom:55px;left:auto;right:30px;transform:none}.controls-hint{align-items:flex-end}.round-clock{text-align:right;border-left:0;align-items:center;gap:10px;padding:0;display:flex}.spectating{text-align:center;bottom:120px;left:auto;right:0;transform:none}.game-exit{bottom:25px;left:auto;right:30px}.result-overlay{min-width:280px;max-width:calc(100% - 50px)}.game-bottom .round-clock b{font-size:32px}}@media (max-width:600px){.masthead{padding:max(19px, env(safe-area-inset-top)) 18px 12px}.wordmark{padding-left:31px;font-size:14px}.brand-dot{font-size:27px}.brand-small{letter-spacing:1.4px;font-size:5.5px}.welcome-panel{scrollbar-width:none;width:auto;max-width:none;padding:0 0 20px;top:94px;bottom:25px;left:19px;right:19px;overflow-y:auto}.welcome-panel .eyebrow{letter-spacing:1.2px;font-size:7px}.welcome-panel h1{letter-spacing:-2.8px;margin:17px 0;font-size:48px}.welcome-panel p.intro{font-size:12px;line-height:1.55}.entry-card{background:#faf9eff5;border-radius:18px;width:min(355px,100%);max-width:none;margin-top:170px;padding:8px 17px 15px}.entry-card .tabs{margin-bottom:14px}.entry-card .tabs button{padding:9px;font-size:11px}.entry-card input{height:40px;margin-bottom:12px;font-size:16px}.entry-card .primary{min-height:42px}.welcome-bottom{gap:17px;max-width:355px;margin-top:19px;font-size:8px}.welcome-bottom button{font-size:9px}.scene-caption,.home-footer{display:none}.lobby-panel{background:#f8f8eef4;border-radius:19px;width:auto;padding:20px;top:79px;bottom:15px;left:14px;right:14px}.lobby-panel .eyebrow{font-size:7px}.lobby-heading h1{letter-spacing:-1.8px;margin:14px 0 19px;font-size:35px}.lobby-aside{display:none}.room-ticket{margin-bottom:18px;padding:10px 13px}.room-ticket strong{font-size:29px}.room-ticket p{font-size:8px}.character-grid{gap:7px}.character-icon{width:43px;height:43px;font-size:29px}.character-card strong{font-size:10px}.character-card small{font-size:7px}.crew-header{margin-top:18px}.crew-person{padding:7px}.crew-person strong{font-size:9px}.crew-status{font-size:5px}.lobby-actions{margin-top:17px}.game-top{width:calc(100% - 24px);top:76px}.match-status{letter-spacing:1.1px;gap:13px;font-size:6px}.match-status strong{padding:7px 12px;font-size:8px}.scoreboard{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:10px}.score-card{flex-direction:row;gap:7px;min-height:41px;padding:7px 8px}.score-info{text-align:left}.score-info strong{font-size:8px}.win-dots{justify-content:flex-start;margin-top:5px}.win-dots i{width:5px;height:5px}.arena-notice{padding:6px 12px;font-size:8px;top:216px}.nameplate{padding:3px 6px;font-size:7px}.nameplate.me{font-size:7px}.game-bottom{right:22px;bottom:max(60px, calc(env(safe-area-inset-bottom) + 40px))}.controls-hint b{letter-spacing:1px;font-size:6px}.touch-tip{font-size:8px}.game-exit{right:23px;bottom:max(22px, env(safe-area-inset-bottom))}.joystick{left:24px;bottom:max(45px, calc(env(safe-area-inset-bottom) + 25px));width:123px;height:123px}.round-overlay{top:49%}.countdown-overlay h2{font-size:104px}.round-overlay .eyebrow{letter-spacing:1.1px;font-size:7px}.round-overlay p{font-size:10px}.result-overlay{min-width:270px;padding:20px 23px}.result-overlay h2{font-size:25px}.winner-icon{font-size:48px}.match-scrim{padding:78px 15px 18px}.match-card{border-radius:20px;padding:25px 24px}.match-card h2{font-size:36px}.match-card .winner-icon{font-size:45px}.match-subtitle{font-size:9px}.final-scores{gap:5px}.final-scores>div{padding:8px 10px}.spectating{width:190px;font-size:10px;bottom:103px}.spectating span{font-size:7px}.help-card{padding:27px 25px}.help-card h2{font-size:35px}.help-card ol{gap:12px;font-size:11px}.help-card .eyebrow{font-size:7px}#toast{bottom:max(20px, env(safe-area-inset-bottom));font-size:11px}body[data-phase=home] #world{transform-origin:50% 55%;transform:none}}@media (max-width:850px) and (max-height:520px){.masthead{padding:12px 20px}.brand-small{display:none}.welcome-panel{max-width:48vw;top:72px;bottom:18px;overflow:auto}.welcome-panel h1{margin:10px 0;font-size:35px}.welcome-panel .eyebrow{font-size:6px}.welcome-panel .intro{display:none}.entry-card{margin-top:14px;padding:5px 12px 10px}.tabs{margin-bottom:11px}input{height:36px}.primary{min-height:38px}.welcome-bottom,.home-footer,.scene-caption{display:none}.lobby-panel{width:350px;padding:16px;top:58px;bottom:14px;left:18px}.lobby-heading h1{font-size:27px}.lobby-aside{bottom:15%}.game-top{width:70%;top:51px}.scoreboard{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:5px}.match-status{font-size:6px}.match-status strong{padding:5px 12px;font-size:7px}.score-card{flex-direction:column;gap:3px;padding:5px}.score-avatar{width:21px;height:21px;font-size:15px}.score-info{text-align:center}.score-info strong{font-size:6px}.win-dots{justify-content:center;gap:2px;margin-top:3px}.win-dots i{width:4px;height:4px}.game-bottom{bottom:32px;right:24px}.game-exit{bottom:13px;right:25px}.joystick{width:106px;height:106px;bottom:25px;left:25px}.joystick #stick{width:42px;height:42px;top:calc(50% - 21px);left:calc(50% - 21px)}.arena-notice{font-size:7px;top:140px}.round-overlay{top:55%}.countdown-overlay h2{font-size:85px}.result-overlay{min-width:270px;padding:18px 25px}.result-overlay h2{font-size:24px}.winner-icon{margin:9px 0;font-size:39px}.round-overlay .eyebrow{font-size:6px}.match-scrim{place-items:start center;padding-top:60px}.match-card{width:410px;padding:20px}.match-card .winner-icon{font-size:31px}.match-card h2{font-size:28px}.match-subtitle{margin:10px 0}.final-scores>div{padding:5px 10px}.spectating{bottom:92px}.controls-hint b{font-size:6px}.touch-tip{font-size:7px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}body[data-phase=home] .joystick,body[data-phase=lobby] .joystick,body[data-phase=match] .joystick{display:none}body[data-phase=home] #content:before{content:"";pointer-events:none;background:linear-gradient(90deg,#edf4d6a3,#edf4d647 30%,#0000 52%);position:fixed;top:0;bottom:0;left:0;right:0}.brand-dot svg{width:33px;height:33px;display:block}.arrow-icon{vertical-align:middle;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.arrow-icon svg{width:100%;height:100%;display:block}.welcome-bottom .arrow-icon{width:13px;height:13px}@media (max-width:850px){.brand-dot svg{width:28px;height:28px}}@media (max-width:600px){body[data-phase=home] #content:before{background:linear-gradient(#eff7e0a1,#0000 47%)}.brand-dot svg{width:26px;height:26px}}.result-overlay{animation:.42s cubic-bezier(.16,1,.3,1) both result-arrive}.match-card{animation:.58s cubic-bezier(.16,1,.3,1) both match-arrive}@keyframes result-arrive{0%{opacity:0;transform:translate(-50%,-45%)scale(.92)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes match-arrive{0%{opacity:0;transform:translateY(25px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.result-overlay,.match-card{animation:none}}.sound-settings{border-top:1px solid #cbd8b7;margin:18px 0 21px;padding-top:16px}.sound-settings label{letter-spacing:1.3px;justify-content:space-between;display:flex}.sound-settings label span{letter-spacing:0;font-size:10px}.sound-settings input{accent-color:#326755;cursor:pointer;background:0 0;border:0;height:24px;margin:4px 0 9px;padding:0}.sound-settings p{color:#788e72;font-size:9px;line-height:1.55}.icon-button[aria-pressed=true]{color:#255744;background:#e3efd1}@media (any-pointer:coarse){.top-tools .icon-button{width:42px;min-width:42px;height:42px}.sound-settings input{height:32px}}.win-count{color:#153f37;margin-top:4px;font-size:14px;font-weight:850;line-height:1;display:block}.win-count small{color:#466553;font-size:9px;font-weight:650}.win-dots{display:none}.score-info strong{color:#274f41}.score-card.out .win-count{color:#567064}.game-exit{color:#17463d;background:#fcfae9ed;border:1px solid #d6e1c8;border-radius:20px;padding:10px 13px;font-size:10px;font-weight:700;text-decoration:none;box-shadow:0 2px 9px #15443b12}.nameplate{border-left:3px solid var(--mate,#d6e4b5);z-index:1;max-width:104px}.nameplate:after{content:"";z-index:-1;width:1px;height:var(--tether-length,0px);transform-origin:top;transform:rotate(var(--tether-angle,0deg));pointer-events:none;background:#194b4770;position:absolute;top:50%;left:50%}.nameplate.me{z-index:2}.joystick.is-steering{background:#e8f4c24a;border-color:#e4f49a;box-shadow:inset 0 0 0 10px #ffffff1a,0 0 0 3px #fff9d926}.joystick.is-steering #stick{background:#eafaad;border-color:#fff}body[data-phase=result] .game-bottom,body[data-phase=match] .game-bottom,body[data-phase=result] .joystick,body[data-phase=match] .game-top,body[data-phase=match] .game-exit{display:none}.result-overlay{top:auto;bottom:max(32px, calc(env(safe-area-inset-bottom) + 18px));text-align:left;border-radius:18px;align-items:center;gap:14px;width:min(510px,100% - 36px);min-width:0;padding:16px 20px;animation:.35s ease-out both ribbon-arrive;display:flex;transform:translate(-50%);box-shadow:0 10px 40px #103c3926}.result-overlay .eyebrow{letter-spacing:1.1px;justify-content:flex-start;margin-bottom:5px;font-size:7px}.result-overlay h2{letter-spacing:-.8px;font-size:23px;line-height:1.05}.result-symbol{font-size:32px}.result-overlay p{text-align:center;border-left:1px solid #cbd8b5;flex-shrink:0;margin:0 0 0 auto;padding-left:15px;font-size:8px}.result-overlay p b{color:#204e3f;margin-top:3px;font-size:25px;display:block}@keyframes ribbon-arrive{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.match-scrim{-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(90deg,#153f3820,#0000 50%,#d6ebc530);grid-template-columns:minmax(0,1fr) minmax(0,1fr);place-items:center;gap:24px;padding:80px 5vw 24px;display:grid;overflow:hidden}#winner-stage{pointer-events:none;width:100%;height:100%;min-height:200px;position:relative}.champion-tag{color:#215144;letter-spacing:2px;white-space:nowrap;background:#fbf8e0e8;border-radius:30px;padding:9px 18px;font-size:10px;font-weight:850;position:absolute;bottom:6%;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #16463e14}.match-card{width:410px;max-width:100%;max-height:calc(100dvh - 110px);padding:26px 30px;overflow:auto;box-shadow:0 18px 70px #183d412b}.match-card h2{overflow-wrap:anywhere;margin-top:16px;font-size:clamp(28px,3.5vw,40px)}.match-card .final-scores strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;overflow:hidden}.match-card .primary{min-height:47px}.match-card .text-button{padding:13px 0 0;font-size:11px}@media (max-width:600px) and (min-height:501px){.win-count{margin-top:4px;font-size:12px}.win-count small{font-size:8px}.score-info strong{font-size:9px}.result-overlay{bottom:max(72px, calc(env(safe-area-inset-bottom) + 54px));gap:10px;width:calc(100% - 28px);padding:13px 14px}.result-overlay h2{font-size:19px}.result-overlay .eyebrow{letter-spacing:.5px;font-size:6px}.result-symbol{font-size:25px}.result-overlay p{padding-left:10px;font-size:7px}.match-scrim{padding:65px 16px max(16px, env(safe-area-inset-bottom));grid-template-rows:minmax(150px,30dvh) minmax(0,1fr);grid-template-columns:1fr;gap:0}#winner-stage{min-height:0}.champion-tag{padding:6px 12px;font-size:8px;bottom:3%}.match-card{border-radius:20px;align-self:start;max-height:100%;padding:19px 20px 15px}.match-card h2{margin-top:11px;font-size:29px}.match-subtitle{margin:9px 0 13px}.final-scores{grid-template-columns:1fr 1fr;gap:5px;margin-bottom:13px;display:grid}.final-scores>div{gap:5px;padding:8px}.final-scores .rank{width:auto;font-size:7px}.final-scores small{display:none}.match-card .final-scores strong{font-size:9px}.match-card .primary{min-height:43px}}@media (max-height:500px) and (min-width:601px){.score-info strong{font-size:8px}.win-count{margin-top:2px;font-size:11px}.win-count small{font-size:7px}.game-exit{padding:7px 11px;font-size:9px;bottom:12px}.result-overlay{width:400px;padding:11px 17px;bottom:16px}.result-overlay h2{font-size:20px}.result-symbol{font-size:26px}.match-scrim{gap:18px;padding:51px 25px 12px}.match-card{max-height:calc(100dvh - 64px);padding:15px 20px}.match-card h2{margin-top:9px;font-size:27px}.match-subtitle{margin:8px 0 11px}.final-scores{grid-template-columns:1fr 1fr;gap:4px;margin-bottom:11px;display:grid}.final-scores>div{gap:5px;padding:7px}.final-scores small{display:none}.final-scores .rank{width:auto}.match-card .final-scores strong{font-size:9px}.match-card .primary{min-height:40px}.match-card .text-button{padding-top:10px}}@media (prefers-reduced-motion:reduce){.result-overlay{animation:none}}.nameplate{max-width:none}.plate-text{text-overflow:ellipsis;max-width:92px;display:block;overflow:hidden}.match-secondary{justify-content:center;gap:24px;display:flex}.waiting-rematch{color:#5d7567;font-size:11px;line-height:1.5}.match-card,#winner-stage,.final-scores>div{min-width:0}@media (max-width:600px) and (min-height:501px){.match-scrim{grid-template-columns:minmax(0,1fr)}.final-scores{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-height:500px) and (min-width:601px){.final-scores{grid-template-columns:repeat(2,minmax(0,1fr))}}.modal-backdrop{grid-template-columns:minmax(0,1fr)}.help-card{width:min(460px,100%);min-width:0}.sound-settings input{width:100%;min-width:0;display:block}html,body{overscroll-behavior:none}body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-text-size-adjust:100%;position:fixed;top:0;bottom:0;left:0;right:0}input{-webkit-user-select:text;user-select:text}#app button{touch-action:manipulation}.thumbstick{z-index:6;opacity:0;pointer-events:none;will-change:transform, opacity;background:radial-gradient(circle,#ffffff3d 0%,#ffffff1a 62%,#ffffff40 100%);border:2px solid #ffffffd9;border-radius:50%;width:108px;height:108px;margin:-54px 0 0 -54px;transition:opacity .14s;position:fixed;top:0;left:0;box-shadow:0 8px 26px #0f3f3a30,inset 0 0 0 9px #ffffff14}.thumbknob{will-change:transform;background:#fbffe9;border:3px solid #fff;border-radius:50%;width:46px;height:46px;margin:-23px 0 0 -23px;position:absolute;top:50%;left:50%;box-shadow:0 4px 14px #0f3f3a45}.thumbstick.is-steering{opacity:1}.thumbstick.is-hint:not(.is-steering){opacity:.62}.thumbstick.is-hint:not(.is-steering) .thumbknob{animation:2.2s ease-in-out infinite stick-hint}@keyframes stick-hint{0%,to{transform:translate(0)}25%{transform:translate(22px,-8px)}50%{transform:translateY(-24px)}75%{transform:translate(-22px,-8px)}}.hud{z-index:11;padding:max(18px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) 0 max(14px, env(safe-area-inset-left));pointer-events:none;grid-template-rows:42px auto;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);justify-items:center;gap:12px 16px;display:grid;position:fixed;top:0;left:0;right:0}.hud-top{grid-area:1/1;justify-self:end;align-items:center;gap:8px;height:42px;display:flex}.hud-round{background:var(--ink);color:#eef3d8;letter-spacing:1.3px;white-space:nowrap;border-radius:999px;align-items:center;gap:8px;height:38px;padding:0 15px 0 14px;font-size:11px;font-weight:800;display:flex;box-shadow:0 5px 16px #0f3f3a24}.hud-round i{letter-spacing:0;font-size:15px;font-style:normal}.hud-twist{color:#e2f2a4;letter-spacing:.4px;font-size:12px}.hud-clock{background:var(--ink);color:#fffdf2;border-radius:18px;grid-area:1/2;justify-content:center;align-self:center;align-items:center;gap:7px;min-width:104px;height:52px;padding:0 18px 0 14px;transition:scale .3s cubic-bezier(.2,.9,.3,1.25),background-color .3s;display:flex;box-shadow:0 0 0 3px #fffdf2,0 10px 24px #0f3f3a4d}.clock-icon{width:19px;height:19px;color:var(--lime);flex:none}.hud-clock b{letter-spacing:-1px;text-align:center;font-variant-numeric:tabular-nums;min-width:2ch;font-size:31px;font-weight:950;line-height:1}.hud-clock.urgent{background:#e8573a;scale:1.2;box-shadow:0 0 0 3px #fffdf2,0 0 0 6px #e8573a59,0 10px 26px #a3301a66}.hud-clock.urgent .clock-icon{color:#fffdf2}.hud-clock.final{background:#d23a22;box-shadow:0 0 0 3px #fffdf2,0 0 26px 8px #ff6a44a6,0 10px 26px #a3301a66}.hud-clock.rush{color:#3d2a03;background:linear-gradient(135deg,#fff3c4,#ffd65e 55%,#f4b52c);box-shadow:0 0 0 3px #fff6d0,0 0 0 5px #c98a12,0 0 22px 5px #ffc93a99}.hud-clock.rush .clock-icon{color:#7a5410}.hud-clock.rush.urgent{background:linear-gradient(135deg,#ffe066,#ffbf1f 55%,#f09a00);box-shadow:0 0 0 3px #fff6d0,0 0 0 6px #c98a12,0 0 30px 9px #ffc93acc}.hud-count{z-index:4;left:var(--play-x,50%);top:var(--play-y,50%);letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:#fffdf2;text-shadow:0 6px #e8573a,0 0 3px #e8573a,0 20px 44px #0f3f3a66;opacity:0;pointer-events:none;font-size:clamp(120px,36vmin,280px);font-weight:950;line-height:1;display:none;position:fixed;transform:translate(-50%,-50%)}body[data-phase=playing] .hud-count{display:block}#app.golden-rush .hud-count{color:#ffe27a;text-shadow:0 6px #b8800c,0 0 3px #b8800c,0 0 36px #ffc93acc}.hud-chips{grid-area:2/1/auto/-1;justify-content:center;gap:7px;max-width:100%;display:flex}.hud-chip{background:#fcfbf0ee;border:1px solid #ffffffa0;border-radius:999px;align-items:center;gap:8px;min-width:0;padding:5px 13px 5px 5px;transition:opacity .3s,transform .3s;display:flex;box-shadow:0 4px 12px #164e3814}.chip-avatar{background:var(--char);border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:19px;line-height:1;display:grid}.chip-body{gap:4px;min-width:0;display:grid}.chip-name{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.2px;color:#274f41;max-width:84px;font-size:10px;font-weight:800;overflow:hidden}.chip-wins{gap:3px;display:flex}.chip-wins i{background:#d6ddc5;border-radius:50%;width:7px;height:7px}.chip-wins i.won{background:var(--coral);box-shadow:0 0 0 1.5px #fc886f40}.hud-chip.mine{box-shadow:0 0 0 2px var(--ink), 0 4px 12px #164e3824;background:#fff}.hud-chip.mine .chip-name{letter-spacing:1.2px}.hud-chip.out{opacity:.5;transform:scale(.94)}.hud-chip.out .chip-avatar{filter:grayscale(.9)}#hud-stack{z-index:5;top:var(--hud-bottom,150px);pointer-events:none;justify-items:center;gap:8px;width:max-content;max-width:calc(100% - 24px);display:none;position:fixed;left:50%;transform:translate(-50%)}body[data-phase=playing] #hud-stack,body[data-phase=countdown] #hud-stack,body[data-phase=result] #hud-stack{display:grid}.coach{background:var(--ink);color:#fffdf2;letter-spacing:-.2px;white-space:nowrap;border-radius:999px;align-items:center;gap:10px;min-height:50px;padding:5px 22px 5px 5px;font-size:21px;font-weight:900;line-height:1.1;display:flex;box-shadow:0 0 0 3px #fffdf2,0 10px 26px #0f3f3a59}.coach:before{content:attr(data-icon);background:var(--lime);border-radius:50%;flex:none;place-items:center;width:40px;height:40px;font-size:20px;line-height:1;display:grid}.coach:empty{display:none}.hud-notice{background:#d9482f;animation:.7s ease-in-out infinite alternate coach-alarm;box-shadow:0 0 0 3px #fffdf2,0 10px 26px #7a1f1059}.hud-notice:before{content:"⚠️";background:#fff1e4}@keyframes coach-alarm{to{box-shadow:0 0 0 3px #fffdf2,0 0 0 7px #ff6a4466,0 10px 26px #7a1f1059}}.hud-swim{background:#1d7f9f}.hud-swim:before{content:"💦";background:#e3f6fb}.hud-swim span{color:#d8f3fb}.hud-swim b{color:#fffdf2;font-variant-numeric:tabular-nums}#feed{z-index:5;top:calc(var(--hud-bottom,150px) + 66px);left:max(16px, env(safe-area-inset-left));pointer-events:none;justify-items:start;gap:4px;width:max-content;max-width:min(320px,40vw);display:none;position:fixed}body[data-phase=playing] #feed,body[data-phase=countdown] #feed,body[data-phase=result] #feed{display:grid}.feed-line{color:#eef5dd;text-wrap:balance;background:#0f3f3ab3;border-radius:9px;max-width:100%;padding:4px 10px;font-size:11px;font-weight:700;line-height:1.3;animation:2.6s both feed-line}.feed-line.mine{color:var(--lime)}.feed-line.me{color:#ffc4b4}@keyframes feed-line{0%{opacity:0;transform:translateY(-5px)}7%,78%{opacity:1;transform:none}to{opacity:0}}.round-overlay.countdown-overlay{justify-items:center;gap:4px;display:grid;top:46%}.twist-card{text-align:left;background:#fcfbf0f5;border:1px solid #ffffffb0;border-radius:20px;align-items:center;gap:13px;padding:12px 20px 12px 14px;animation:.5s cubic-bezier(.16,1.2,.3,1) both twist-in;display:flex;box-shadow:0 12px 36px #0f3f3a33}.twist-icon{background:var(--lime);letter-spacing:-3px;border-radius:16px;flex:none;place-items:center;width:52px;height:52px;font-size:26px;line-height:1;display:grid}.twist-card .eyebrow{color:var(--muted);justify-content:flex-start;font-size:8px}.twist-card strong{letter-spacing:-.6px;white-space:nowrap;margin-top:3px;font-size:21px;font-weight:900;line-height:1.1;display:block}.round-overlay .twist-card p{color:#456757;max-width:250px;margin:4px 0 0;font-size:11px;line-height:1.35}.twist-card.plain .twist-icon{background:#fde9b8}@keyframes twist-in{0%{opacity:0;transform:translateY(14px)scale(.9)}}.round-overlay.countdown-overlay h2{text-shadow:0 6px #215e5066,0 14px 40px #0f3f3a40;margin:0}.countdown-overlay.holding h2{visibility:hidden}.twist-card.is-new{position:relative}.new-game-tag{background:var(--coral);color:var(--ink);letter-spacing:1.8px;white-space:nowrap;pointer-events:none;border-radius:999px;padding:5px 9px 5px 11px;font-size:8px;font-weight:850;line-height:1;animation:.55s cubic-bezier(.16,1.4,.3,1) .25s both new-game-pop;position:absolute;top:-12px;right:16px;transform:rotate(4deg);box-shadow:0 4px 12px #b8452e38}@keyframes new-game-pop{0%{opacity:0;transform:rotate(-10deg)scale(.4)}}.hud-foot{z-index:5;left:50%;bottom:max(18px, calc(env(safe-area-inset-bottom) + 8px));pointer-events:none;text-align:center;justify-items:center;gap:8px;display:grid;position:fixed;transform:translate(-50%)}.hud-hint{color:#f1f6dc;letter-spacing:.9px;white-space:nowrap;background:#153e3a9e;border-radius:999px;padding:7px 14px;font-size:10px;font-weight:700;transition:opacity .5s}body.has-steered .hud-hint,body[data-phase=result] .hud-hint,body[data-phase=match] .hud-hint{opacity:0}.hud-out{background:#fff9e8ee;border-radius:14px;padding:10px 17px;font-size:12px;font-weight:750;display:none;box-shadow:0 6px 18px #164e381c}.hud-out.visible{display:block}.hud-out span{color:#56705f;margin-top:4px;font-size:9px;font-weight:500;display:block}.hud-out.visible~.hud-hint,.leave-button{display:none}body[data-phase=countdown] .leave-button,body[data-phase=playing] .leave-button,body[data-phase=result] .leave-button{display:grid}.music-toggle{background:#f8faed;border:1px solid #143f3d30;border-radius:999px;margin-top:10px;padding:9px 15px;font-size:11px;font-weight:650}.music-toggle[aria-pressed=true]{color:#255744;background:#e3efd1}.mode-goal{color:var(--muted)}.mode-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mode-option{color:#51695c;text-align:center;background:#fffef4;border:1px solid #dbe2cc;border-radius:12px;flex-direction:column;align-items:center;min-width:0;min-height:76px;padding:10px 6px 9px;transition:transform .18s,box-shadow .18s,background .18s,opacity .18s;display:flex;position:relative}button.mode-option:hover:not(.selected){border-color:#7b9f7d;transform:translateY(-2px);box-shadow:0 5px 12px #143f3d14}button.mode-option:focus-visible{outline-offset:3px}.mode-icon{font-size:23px;line-height:1.2}.mode-option strong{white-space:nowrap;margin-top:3px;font-size:11px;font-weight:800;line-height:1.25}.mode-option small{color:var(--muted);margin-top:3px;font-size:8px;line-height:1.35}.mode-option.selected{background:var(--lime);color:var(--ink);box-shadow:0 0 0 2px var(--ink), 0 6px 14px #164e3822;border-color:#0000}.mode-option.selected small{color:#3f6353}.mode-tick{background:var(--ink);color:#f4f5df;border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;font-style:normal;font-weight:900;line-height:1;display:grid;position:absolute;top:-7px;right:-5px;box-shadow:0 0 0 2px #f7f8ed}.mode-picker.locked .mode-option:not(.selected){opacity:.5}.mode-note{margin-top:10px}.lobby-actions{z-index:1;position:sticky;bottom:0}.lobby-panel{scroll-padding-bottom:100px}.lobby-panel.more-below .lobby-actions{background:#f7f8ed;box-shadow:0 25px #f7f8ed,-25px 0 #f7f8ed,25px 0 #f7f8ed,-25px 25px #f7f8ed,25px 25px #f7f8ed}.lobby-panel.more-below .lobby-actions:before{content:"";pointer-events:none;background:linear-gradient(#f7f8ed00,#f7f8ed);height:16px;position:absolute;bottom:100%;left:-25px;right:-25px}@media (min-width:901px) and (max-width:1060px){body[data-phase=countdown] .wordmark,body[data-phase=playing] .wordmark,body[data-phase=result] .wordmark{display:none}body[data-phase=countdown] .masthead,body[data-phase=playing] .masthead,body[data-phase=result] .masthead{justify-content:flex-end}}@media (max-width:900px){body[data-phase=countdown] .wordmark,body[data-phase=playing] .wordmark,body[data-phase=result] .wordmark{display:none}body[data-phase=countdown] .masthead,body[data-phase=playing] .masthead,body[data-phase=result] .masthead{padding-top:max(18px, env(safe-area-inset-top));justify-content:flex-end}.hud{justify-items:start}.hud-top{justify-self:start}.hud-clock{justify-self:center}.hud-chips{justify-content:flex-start;justify-self:start;gap:5px}.hud-chip{flex:0 auto}}@media (max-width:600px){.hud-round{grid-template-columns:auto auto;align-content:center;gap:2px 7px;padding:0 13px 0 10px;display:grid}.hud-round i{grid-row:1/span 2;align-self:center;font-size:16px}.hud-round b{letter-spacing:1.4px;color:#b9cdb4;font-size:7px;line-height:1}.hud-twist{letter-spacing:.1px;font-size:11px;line-height:1.1}.top-tools .icon-button{width:38px;min-width:38px;height:38px}body[data-phase=countdown] .top-tools,body[data-phase=playing] .top-tools,body[data-phase=result] .top-tools{gap:6px}.hud-chips{gap:4px}.hud-chip{gap:5px;min-width:0;padding:4px 6px 4px 4px}.chip-avatar{width:26px;height:26px;font-size:16px}.chip-name{display:none}.chip-wins{grid-template-columns:repeat(2,6px);gap:3px;display:grid}.chip-wins i{width:6px;height:6px}.twist-card strong{font-size:18px}.feed-line{font-size:10.5px}.coach{gap:8px;min-height:42px;padding:4px 17px 4px 4px;font-size:17px}.coach:before{width:32px;height:32px;font-size:18px}.mode-picker{gap:7px}}@media (max-width:600px) and (min-height:521px){.hud{grid-template-rows:42px auto auto;grid-template-columns:minmax(0,1fr);row-gap:9px}.hud-chips{grid-column:1}.hud-clock{grid-area:3/1;justify-self:center;min-width:100px;height:50px;margin-top:3px}.hud-clock b{font-size:30px}.hud-clock{transform-origin:50% 62%}#feed{--foot:max(18px, calc(env(safe-area-inset-bottom) + 8px));top:auto;left:50%;bottom:calc(var(--foot) + 36px);justify-items:center;max-width:calc(100% - 48px);transform:translate(-50%)}body.has-steered #feed{bottom:var(--foot)}body.foot-card #feed{bottom:calc(var(--foot) + 64px)}.feed-line{text-align:center}body[data-phase=result] #feed{display:none}}@media (max-width:600px) and (min-height:521px) and (max-height:720px){#feed .feed-line:nth-last-child(n+3){display:none}}@media (max-width:380px){.hud-chips{gap:3px}.hud-chip{gap:4px;padding:3px 5px 3px 3px}.chip-avatar{width:23px;height:23px;font-size:14px}.chip-wins{grid-template-columns:repeat(2,5px);gap:2px}.chip-wins i{width:5px;height:5px}.mode-picker{gap:6px}.mode-option{padding:9px 3px 8px}.mode-icon{font-size:21px}.mode-option strong{font-size:10px}}@media (orientation:landscape) and (max-height:520px){body[data-phase=countdown] .wordmark,body[data-phase=playing] .wordmark,body[data-phase=result] .wordmark{display:none}body[data-phase=countdown] .masthead,body[data-phase=playing] .masthead,body[data-phase=result] .masthead{padding:max(8px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) 0 0;justify-content:flex-end}.hud{padding-top:max(8px, env(safe-area-inset-top));grid-template-rows:38px auto;justify-items:start;gap:6px 14px}.hud-top{height:38px}.hud-round{height:34px}.hud-clock{border-radius:15px;justify-self:center;min-width:90px;height:44px;padding:0 15px 0 12px}.hud-clock b{font-size:27px}.clock-icon{width:17px;height:17px}.hud-clock{transform-origin:50% 15%}.hud-clock.urgent{scale:1.12}.hud-chips{justify-self:start;gap:4px;display:grid}.coach{gap:7px;min-height:36px;padding:3px 15px 3px 3px;font-size:15px;box-shadow:0 0 0 2px #fffdf2,0 8px 20px #0f3f3a59}.coach:before{width:28px;height:28px;font-size:16px}#feed{left:auto;right:max(14px, env(safe-area-inset-right));top:calc(var(--hud-bottom,60px) + 2px);justify-items:end;max-width:min(210px,50vw - 160px)}#feed .feed-line:nth-last-child(n+3){display:none}.feed-line{font-size:10px}.hud-chip{justify-content:flex-start;gap:6px;max-width:none;padding:3px 9px 3px 3px}.chip-avatar{width:25px;height:25px;font-size:15px}.chip-name{display:none}.hud-chip.mine .chip-name{letter-spacing:.8px;font-size:7px;display:block}.chip-wins i{width:5px;height:5px}.round-overlay.countdown-overlay{grid-auto-flow:column;align-items:center;gap:22px;top:50%}.hud-foot{bottom:max(8px, env(safe-area-inset-bottom))}.top-tools .icon-button{width:36px;min-width:36px;height:36px}.mode-option{min-height:0;padding:7px 5px 6px}.mode-icon{font-size:19px}}@media (prefers-reduced-motion:reduce){.hud-notice,.twist-card,.new-game-tag,.feed-line,.thumbstick.is-hint .thumbknob{animation:none}}body[data-weather=rain] .wordmark,body[data-weather=rain] .connection{color:#eef3d8;transition:color .8s}@media (max-width:600px){.welcome-panel{flex-direction:column;display:flex}.welcome-panel .entry-card{flex:none;margin-top:auto}.welcome-panel p.intro{margin-bottom:14px}.welcome-panel .welcome-bottom{flex:none}}@media (max-width:600px) and (max-height:720px){.welcome-panel h1{margin:12px 0;font-size:40px}.welcome-panel p.intro{display:none}.welcome-panel .welcome-bottom{margin-top:12px}}:root{--gold:#f8c94a;--gold-deep:#c98a12;--gold-fill:linear-gradient(135deg, #fff3c4, #ffd65e 55%, #f4b52c)}body[data-game=crown] .hud-chip,body[data-game=crown] .chip-avatar{position:relative}.chip-score{place-items:center;display:grid;position:relative}.chip-score b{letter-spacing:-.3px;text-align:center;font-variant-numeric:tabular-nums;min-width:calc(2ch + 12px);color:var(--ink);border-radius:999px;padding:2px 6px;font-size:17px;font-weight:900;line-height:1.1}.hud-chip.leading .chip-score b{background:var(--ink);color:var(--lime)}.hud-chip.leading .chip-score:after{content:"★";color:var(--coral);text-shadow:0 0 2px #fffdf2,0 0 2px #fffdf2;font-size:10px;line-height:1;position:absolute;top:-7px;right:-5px}body[data-game=crown] .hud-chip.wearing{background:var(--gold-fill);box-shadow:0 0 0 2px var(--gold-deep), 0 0 18px 3px #ffc93a99, 0 4px 12px #8a5a0a30;border-color:#fff6d0}body[data-game=crown] .hud-chip.mine.wearing{box-shadow:0 0 0 2px var(--ink), 0 0 0 4px var(--gold), 0 0 20px 4px #ffc93aaa}.hud-chip.wearing .chip-name{color:#4a3205}.hud-chip.wearing .chip-avatar:after{content:"👑";filter:drop-shadow(0 1px 1px #6b450080);font-size:15px;line-height:1;animation:.45s cubic-bezier(.16,1.4,.3,1) both crown-on;position:absolute;top:-11px;left:50%;transform:translate(-50%)rotate(-12deg)}@keyframes crown-on{0%{opacity:0;transform:translate(-50%,-10px)rotate(-40deg)scale(.4)}}body[data-game=crown] .hud-chip.swimming{opacity:.55}.hud-prompt.is-mine{background:var(--gold-fill);color:#3d2a03;box-shadow:0 0 0 3px #fff6d0, 0 0 0 5px var(--gold-deep), 0 10px 24px #8a5a0a4d}.hud-prompt.is-mine:before{background:#fffdf2}.hud-prompt.is-rush{clip-path:inset(50%);width:1px;height:1px;min-height:0;box-shadow:none;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes rush-glow{to{box-shadow:0 0 0 2px var(--gold-deep), 0 0 24px 6px #ffc93acc}}.rush-moment{z-index:8;left:var(--play-x,50%);top:var(--play-y,50%);background:var(--gold-fill);color:#3d2a03;text-align:center;white-space:nowrap;max-width:calc(100vw - 32px);box-shadow:0 0 0 4px #fff6d0, 0 0 0 7px var(--gold-deep), 0 0 60px 14px #ffc93acc, 0 20px 44px #6b450066;opacity:0;pointer-events:none;border-radius:26px;justify-items:center;gap:4px;padding:14px 28px 16px;display:grid;position:fixed;overflow:hidden;transform:translate(-50%,-50%)}.rush-moment:empty{display:none}.rush-moment strong{letter-spacing:-.02em;text-transform:uppercase;text-shadow:0 3px #fff3c4;font-size:clamp(30px,9.5vmin,64px);font-weight:950;line-height:1}.rush-moment span{color:#6b4708;font-size:clamp(14px,4vmin,22px);font-weight:900}.rush-shine{background:linear-gradient(100deg,#0000,#ffffffd9 50%,#0000);width:34%;position:absolute;top:-20%;bottom:-20%;left:0;transform:translate(-140%)skew(-20deg)}#app.golden-rush .hud-round{color:#4a3205;background:linear-gradient(135deg,#ffe58a,#f8c94a 50%,#e9a823);animation:.9s ease-in-out infinite alternate rush-glow;box-shadow:0 0 0 2px #fff2b8,0 0 22px 4px #ffc93a99}#app.golden-rush .hud-round b{color:#7a5410}#app.golden-rush .hud-twist{color:#3d2a03;font-weight:900}body[data-game=crown] .result-overlay{flex-wrap:wrap;row-gap:9px}.crown-result{flex:1 1 0;min-width:0}.crown-why{color:#8a6510;margin-top:4px;font-size:10px;font-weight:800;display:block}.crown-ranks{border-top:1px solid #cbd8b5;flex:1 0 100%;order:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 6px;margin:0;padding:10px 0 0;list-style:none;display:grid}.crown-rank{color:#274f41;background:#edf0dd;border-radius:999px;align-items:center;gap:5px;min-width:0;padding:3px 8px 3px 5px;display:flex}.crown-rank .rank{text-align:center;width:9px;color:var(--muted);flex:none;font-size:9px;font-weight:850}.rank-who{flex:none;font-size:16px;line-height:1;position:relative}.rank-crown{font-size:11px;font-style:normal;position:absolute;top:-9px;left:50%;transform:translate(-50%)rotate(-12deg)}.crown-rank strong{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:10px;font-weight:800;overflow:hidden}.crown-rank.mine strong{letter-spacing:.8px}.crown-rank b{text-align:right;font-variant-numeric:tabular-nums;flex:none;min-width:2ch;font-size:14px;font-weight:900}.crown-rank.first{background:var(--gold-fill);color:#3d2a03;box-shadow:inset 0 0 0 1.5px var(--gold-deep)}.crown-rank.first .rank{color:#7a5410}.crown-rank.gone{opacity:.5}@media (min-width:601px){body[data-game=crown] .result-overlay{width:min(660px,100% - 36px)}.crown-rank strong{font-size:11px}}@media (max-width:900px){body[data-game=crown] .hud-chip{grid-template-columns:auto auto auto;grid-template-areas:"face name name""face score wins";align-items:center;gap:1px 5px;padding:4px 11px 4px 4px;display:grid}body[data-game=crown] .chip-avatar{grid-area:face}body[data-game=crown] .chip-body{display:contents}body[data-game=crown] .chip-name{grid-area:name;min-width:0}body[data-game=crown] .chip-wins{grid-area:wins}body[data-game=crown] .chip-wins i{width:6px;height:6px}body[data-game=crown] .chip-score{grid-area:score;justify-self:start}.chip-score b{min-width:calc(2ch + 8px);padding:0 4px;font-size:15px;line-height:1.2}}@media (max-width:600px){body[data-game=crown] .hud-chips{gap:3px}body[data-game=crown] .hud-chip{grid-template-columns:auto auto;grid-template-areas:"face score""face wins";align-items:center;gap:2px;padding:3px 4px 3px 3px;display:grid}body[data-game=crown] .chip-avatar{grid-area:face;width:23px;height:23px;font-size:14px}body[data-game=crown] .chip-body{display:contents}body[data-game=crown] .chip-wins{grid-area:wins;grid-template-columns:repeat(4,3px);justify-self:center;gap:1.5px}body[data-game=crown] .chip-wins i{width:3px;height:3px;box-shadow:none}body[data-game=crown] .chip-score{grid-area:score}.chip-score b{min-width:calc(2ch + 4px);padding:0 2px;font-size:13px;line-height:1.15}.hud-chip.leading .chip-score:after{font-size:9px;top:-6px;right:-6px}.hud-chip.wearing .chip-avatar:after{font-size:13px;top:-10px}body[data-game=crown] .result-overlay{row-gap:8px;padding-inline-start:10px;padding-inline-end:10px}.crown-why{font-size:9px}.crown-ranks{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding-top:9px}.crown-rank{gap:2px;padding:3px 6px 3px 3px}.crown-rank .rank{width:8px}.rank-who{font-size:15px}.crown-rank strong{margin-left:1px;font-size:10px}.crown-rank.mine strong{letter-spacing:.5px}.crown-rank b{font-size:13px}}@media (max-width:380px){body[data-game=crown] .chip-avatar{width:22px;height:22px;font-size:14px}.chip-score b{font-size:12px}.crown-rank strong{font-size:10px}}@media (max-width:360px){body[data-game=crown] .hud-chips{gap:2px}body[data-game=crown] .hud-chip{column-gap:1px;padding:2px 3px 2px 2px}body[data-game=crown] .chip-avatar{width:20px;height:20px;font-size:12px}.chip-score b{min-width:calc(2ch + 2px);padding:0 1px}body[data-game=crown] .hud-round{grid-template-columns:auto;padding:0 10px}body[data-game=crown] .hud-round i{display:none}body[data-game=crown] .hud-twist{font-size:10px}.coach{font-size:15px}}@media (orientation:landscape) and (max-height:520px){body[data-game=crown] .hud-chip{gap:5px;padding:3px 5px 3px 3px;display:flex}body[data-game=crown] .chip-avatar{width:25px;height:25px;font-size:15px}body[data-game=crown] .chip-body{display:grid}body[data-game=crown] .chip-avatar,body[data-game=crown] .chip-name,body[data-game=crown] .chip-wins,body[data-game=crown] .chip-score{grid-area:auto}body[data-game=crown] .chip-wins{gap:2px;display:flex}body[data-game=crown] .chip-wins i{width:4px;height:4px}.chip-score b{min-width:calc(2ch + 8px);padding:1px 4px;font-size:14px}.hud-chip.wearing .chip-avatar:after{font-size:12px;top:-6px;left:-2px;transform:rotate(-24deg)}body[data-game=crown] .result-overlay{row-gap:7px;width:min(600px,100% - 230px)}.crown-ranks{flex-wrap:wrap;justify-content:center;gap:4px;padding-top:8px;display:flex}.crown-rank{flex:auto;gap:2px;max-width:120px;padding:2px 6px 2px 2px}.crown-rank .rank{width:8px}.rank-who{font-size:14px}.crown-rank:not(.mine) strong{display:none}.crown-rank.mine strong{letter-spacing:0;flex:none;margin:0 2px}.crown-rank b{margin-left:auto;font-size:13px}}@media (orientation:landscape) and (max-height:520px) and (max-width:700px){body[data-game=crown] .result-overlay h2{font-size:17px}}@media (prefers-reduced-motion:reduce){.hud-chip.wearing .chip-avatar:after,#app.golden-rush .hud-round{animation:none}}.match-last-round{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:4px 10px;margin:-4px 0 12px;font-size:12.5px;display:flex}.match-last-round em{letter-spacing:.12em;text-transform:uppercase;color:#b8860b;flex-basis:100%;font-size:10.5px;font-style:normal;font-weight:800}.match-last-round b{color:var(--ink);font-variant-numeric:tabular-nums}
