:root{color:#f3f1e8;font-synthesis:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#09141e;font-family:DM Sans,Arial,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:4px;outline:2px solid #c6e6e6}button svg{flex:none}button{transition:background .18s,transform .18s}button:active:not(:disabled){transform:translateY(1px)}input[type=checkbox]{accent-color:#d9b676;width:20px;height:20px}input[type=range]{accent-color:#dfb978;cursor:pointer;width:100%;height:22px}.app{background:#09141e;height:100dvh;min-height:580px;position:relative;overflow:hidden}.scene{touch-action:none;transition:inset .6s;position:absolute;inset:136px 12px 105px}.scene canvas{filter:saturate(1.1)contrast(1.05);width:100%;height:100%;display:block}.phase-lobby .scene,.phase-matchmaking .scene,.phase-versus .scene{opacity:.95;inset:0 0 0 22%}.phase-ended .scene{inset:80px 0 50px}.lobby-header{z-index:2;justify-content:space-between;align-items:center;padding:28px 42px;display:flex;position:relative}.wordmark{letter-spacing:.23em;color:#e1c69d;font-size:23px;font-weight:700;line-height:1.1}.wordmark span{color:#aab8bd;letter-spacing:.45em;margin-top:9px;font-size:9px;display:block}.wallet{color:#e1c69d;align-items:center;gap:12px;font-size:15px;display:flex}.wallet>span:not(.avatar){color:#b3c5cb;border-left:1px solid #ffffff28;padding-left:16px;font-size:12px}.avatar{color:#c6e8ed;background:linear-gradient(145deg,#245568,#142d3d);border:1px solid #6692a37a;border-radius:15px;flex-shrink:0;place-items:center;width:46px;height:46px;font-family:Georgia,serif;font-size:25px;display:grid;box-shadow:inset 0 0 20px #86c9cf14}.bot-avatar{color:#f0d69c;background:linear-gradient(145deg,#70593a,#342d22);border-color:#b194567a}.nav{z-index:2;gap:4px;display:flex;position:absolute;top:121px;left:42px}.nav button{color:#829ca9;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:11px 14px;font-size:13px;display:flex}.nav button.selected{color:#e0bf86;background:#1b303d}.nav button:hover{background:#213744}.lobby-card{z-index:2;width:365px;position:absolute;top:28%;left:56px}.eyebrow{color:#a9bcc3;letter-spacing:.2em;font-size:10px;font-weight:700}.lobby-card h1{letter-spacing:-.04em;color:#eae9e1;margin:22px 0;font-size:clamp(34px,3.8vw,53px);font-weight:400;line-height:1.13}.lobby-card h1 em{color:#d9be92;font-family:Georgia,serif;font-weight:400}.lobby-card p{color:#a2b3bc;margin-bottom:28px;font-size:15px;line-height:1.65}.lobby-card label{color:#bfcbd0;margin:18px 0 10px;font-size:12px;display:block}.difficulty{gap:6px;margin-bottom:20px;display:flex}.difficulty button{color:#99aebc;text-transform:capitalize;background:#122631db;border:1px solid #385261;border-radius:6px;padding:9px 16px;font-size:12px}.difficulty button.chosen{color:#e9c993;background:#57472a55;border-color:#c5a66c}.primary,.secondary{border-radius:7px;justify-content:center;align-items:center;gap:10px;min-height:46px;padding:14px 20px;font-size:14px;font-weight:600;display:flex}.primary{color:#162530;background:linear-gradient(120deg,#e8cc9c,#c39a5d);border:1px solid #f6dbad6b;box-shadow:0 6px 22px #0003}.primary:hover:not(:disabled){background:#edcfa0}.secondary{color:#d6e1e6;background:#182e3bd9;border:1px solid #496271}.secondary:hover{background:#244354}.play-now{letter-spacing:.12em;justify-content:space-between;width:100%;padding:17px 20px}.match-note{color:#7f9aa8;justify-content:space-between;margin-top:12px;font-size:11px;display:flex}.lobby-footer{z-index:1;color:#8195a0;letter-spacing:.14em;justify-content:space-between;font-size:10px;display:flex;position:absolute;bottom:23px;left:42px;right:42px}.menu-page{z-index:3;background:linear-gradient(120deg,#142b39f7,#0d1c29f7);border:1px solid #60778957;border-radius:16px;width:min(840px,90vw);max-height:75vh;padding:30px;position:absolute;top:51%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 40px 100px #0009}.menu-page.compact{width:min(480px,92vw)}.menu-page h1{margin:14px 0 24px;font-family:Georgia,serif;font-size:31px;font-weight:400;line-height:1.15}.menu-page label{color:#bdcdd5;margin:15px 0 8px;font-size:13px;display:block}.menu-page input[type=text],.menu-page input:not([type]){color:#fff;background:#102330;border:1px solid #526a78;border-radius:6px;width:100%;padding:11px}.muted{color:#99adba;font-size:12px;line-height:1.6}.cue-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.cue-card{background:#172e3a;border:1px solid #526a784d;border-radius:10px;padding:18px}.cue-card.equipped{border-color:#d8ba83}.cue-name{justify-content:space-between;align-items:center;gap:6px;display:flex}.cue-name h2{margin:7px 0 20px;font-size:17px;font-weight:500}.cue-card dl{margin:10px 0 22px}.cue-card dl>div{color:#b1c4ce;justify-content:space-between;align-items:center;margin:12px 0;font-size:12px;display:flex}.cue-card dd{width:60%;margin:0}meter{accent-color:#d9b775;width:100%;height:6px}.cue-card button{width:100%;font-size:11px}.stat-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0;display:grid}.stat-grid>div{text-align:center;background:#16303b;border:1px solid #526a784d;border-radius:8px;padding:17px 8px}.stat-grid strong{color:#f2d3a0;font-size:25px;font-weight:500;display:block}.stat-grid span{color:#a5bac6;margin-top:5px;font-size:11px;display:block}.reward-amount{color:#eed097;align-items:center;gap:10px;margin:24px 0;font-size:30px;display:flex}.gold{color:#e2bd7b}.settings-grid label{border-bottom:1px solid #45627244;justify-content:space-between;align-items:center;padding:8px 0;display:flex}.settings-grid select{color:#c9d8df;background:#10232f;border:1px solid #526a78;border-radius:5px;padding:7px;font-size:12px}.settings-grid input{margin:0}.stage-overlay,.loading-screen{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#06111bbd;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.loading-screen{background:#09151f;flex-direction:column;gap:26px}.loading-screen p{color:#96aeba;font-size:14px}.loading-bar{background:#314552;border-radius:10px;width:200px;height:3px;margin:25px auto;overflow:hidden}.loading-bar:after{content:"";background:#dfc393;width:45%;height:100%;animation:1.6s ease-in-out infinite loading;display:block}@keyframes loading{0%{transform:translate(-100%)}to{transform:translate(330%)}}.matchmaking-card{text-align:center;width:min(660px,90vw)}.matchmaking-card h1{font-family:Georgia,serif;font-size:32px;font-weight:400}.versus{grid-template-columns:1fr 60px 1fr;align-items:center;margin:50px 0;display:grid}.versus>div{flex-direction:column;align-items:center;animation:.7s both appear;display:flex}.versus .avatar{border-radius:26px;width:90px;height:90px;font-size:48px}.versus h2{margin:20px 0 7px;font-size:19px;font-weight:500}.versus p{color:#98adba;text-transform:capitalize;font-size:12px}.versus>strong{color:#dfc28f;font-family:Georgia,serif;font-size:28px;font-style:italic}@keyframes appear{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.match-hud{grid-template-columns:1fr 84px 1fr;align-items:center;gap:15px;width:min(810px,85vw);display:grid;position:absolute;top:20px;left:50%;transform:translate(-50%)}.player-card{background:#102632da;border:1px solid #385363;border-radius:12px;align-items:center;gap:13px;min-width:0;padding:12px 16px;display:flex}.player-card.active{border-color:#c4a672;box-shadow:0 0 22px #d0b38016}.player-card small{color:#a7b9c2;text-transform:capitalize;font-size:10px}.player-name{color:#e1e4de;white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-size:14px;overflow:hidden}.ai-tag{vertical-align:middle;background:#ae8b4e38;border:1px solid #927d58;border-radius:3px;margin-left:7px;padding:2px 5px;font-size:8px}.remaining{gap:4px;margin-top:8px;display:flex}.tiny-ball{color:#fff;text-shadow:0 1px 2px #000;background:#dfad38;border:1px solid #fff5;border-radius:50%;place-items:center;width:16px;height:16px;font-family:Arial,sans-serif;font-size:8px;font-style:normal;font-weight:700;display:grid}.b2{background:#385fb1}.b3{background:#cb4339}.b4{background:#8040a4}.b5{background:#da812d}.b6{background:#368360}.b7{background:#8a4036}.match-center{flex-direction:column;align-items:center;gap:8px;display:flex}.eight-emblem{color:#fff;background:radial-gradient(circle at 36% 25%,#4b5358,#0b1014 65%);border:1px solid #5c6670;border-radius:50%;place-items:center;width:43px;height:43px;font-size:24px;font-weight:700;display:grid;box-shadow:0 4px 14px #0008}.match-center small{letter-spacing:.17em;color:#c5ac7e;font-size:8px}.turn-banner{z-index:2;pointer-events:none;background:#091722d9;border:1px solid #34536466;border-radius:40px;align-items:center;gap:10px;max-width:65vw;padding:7px 18px 7px 7px;display:flex;position:absolute;top:124px;left:50%;transform:translate(-50%)}.turn-time{color:#e6c998;border:2px solid #c4ab79;border-radius:50%;place-items:center;min-width:34px;height:34px;font-size:12px;display:grid}.turn-time.warning{color:#ff9f8c;border-color:#de6b56}.turn-banner strong{letter-spacing:.16em;color:#d5dacf;font-size:10px;display:block}.turn-banner span:not(.turn-time){color:#8fabb7;font-size:10px}.match-tools{flex-direction:column;gap:8px;display:flex;position:absolute;top:25px;left:22px}.match-tools button,.voice-button,.spin-popover button{color:#adc2cd;background:#142d3bd9;border:1px solid #375969;border-radius:9px;place-items:center;width:36px;height:36px;display:grid}.bottom-controls{background:#132a36f2;border:1px solid #46617077;border-radius:14px;align-items:center;gap:15px;width:min(780px,90vw);padding:14px 20px;display:flex;position:absolute;bottom:25px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #0005}.spin-button{color:#d9e3df;text-align:left;background:0 0;border:0;grid-template-columns:26px 1fr;align-items:center;column-gap:8px;min-width:98px;display:grid}.spin-button svg{color:#d9b87e;grid-row:1/3}.spin-button span{font-size:13px}.spin-button small{color:#97acb8;font-size:9px}.power-control{border-left:1px solid #ffffff18;flex:1;min-width:50px;padding-left:17px}.power-control label{letter-spacing:.1em;color:#8ea6b5;justify-content:space-between;font-size:10px;display:flex}.power-control label strong{color:#dfc296;letter-spacing:0;font-size:12px}.shot-button{white-space:nowrap;width:157px;padding:13px;font-size:11px}.voice-button{flex:none}.spin-popover{z-index:5;background:#112b39f7;border:1px solid #56788a;border-radius:14px;width:245px;padding:17px;position:absolute;bottom:130px;left:calc(50% - 350px);box-shadow:0 20px 60px #0008}.spin-popover>div:first-child{justify-content:space-between;align-items:center;font-size:13px;display:flex}.spin-popover>div:first-child button{background:0 0;border:0;width:26px;height:26px}.spin-pad{touch-action:none;background:radial-gradient(circle at 35% 28%,#fffdf4,#d7d9d8 55%,#8997a3);border:1px solid #cad9de;border-radius:50%;width:145px;height:145px;margin:20px auto;position:relative;box-shadow:0 8px 24px #0007}.spin-pad:before,.spin-pad:after{content:"";background:#62758466;position:absolute}.spin-pad:before{width:1px;height:90%;top:5%;left:50%}.spin-pad:after{width:90%;height:1px;top:50%;left:5%}.spin-pad>span{background:#d8806188;border:2px solid #a94836;border-radius:50%;width:14px;height:14px;position:absolute;transform:translate(-50%,-50%)}.spin-labels{justify-content:center;gap:7px;display:flex}.spin-labels button{width:auto;height:auto;padding:7px;font-size:10px}.spin-popover small{text-align:center;color:#91afbe;margin:14px 0 0;font-size:10px;display:block}.voice-menu{z-index:5;background:#132d3df2;border:1px solid #456576;border-radius:10px;grid-template-columns:1fr 1fr;gap:7px;padding:10px;display:grid;position:absolute;bottom:130px;right:8%}.voice-menu button{background:#254253;border:1px solid #4d6d7d;border-radius:6px;padding:10px;font-size:12px}.voice-bubble{color:#173043;z-index:5;background:#d7c8ad;border-radius:10px 10px 10px 0;padding:10px 15px;font-size:13px;position:absolute;top:113px;left:23%}.placement-hint{color:#c7eadf;white-space:nowrap;background:#143443ed;border:1px solid #679083;border-radius:25px;padding:10px 17px;font-size:12px;position:absolute;bottom:128px;left:50%;transform:translate(-50%)}.pause-card,.result-card{text-align:center;background:linear-gradient(140deg,#183440,#0e2330);border:1px solid #56708477;border-radius:20px;width:min(450px,94vw);padding:35px;box-shadow:0 30px 100px #0008}.pause-card h1,.result-card h1{margin:19px 0;font-family:Georgia,serif;font-size:32px;font-weight:400;line-height:1.1}.pause-card p,.result-card p{color:#a8bcc8;margin-bottom:25px;font-size:13px}.pause-card button,.result-card button{width:100%;margin-top:12px}.quiet{color:#8ba7b7;background:0 0;border:0;padding:10px;font-size:13px}.result-card>.gold{margin-bottom:19px}.result-card>.eyebrow{display:block}.result-rewards{color:#efcd90;justify-content:center;gap:25px;display:flex}.result-rewards span{align-items:center;gap:6px;display:flex}.result-card .stat-grid{grid-template-columns:repeat(4,1fr)}.result-card .stat-grid strong{font-size:21px}.debug{z-index:20;color:#7ffaac;pointer-events:none;background:#000d;padding:10px;font-size:10px;position:absolute;bottom:125px;left:8px}@media (max-width:950px){.lobby-card{width:310px;left:34px}.lobby-header{padding:24px 30px}.nav{top:105px;left:23px}.phase-lobby .scene{opacity:.7;inset:0 0 0 18%}.match-hud{grid-template-columns:1fr 45px 1fr;gap:8px;width:83vw;top:14px}.player-card{gap:8px;padding:9px}.player-name{max-width:135px;font-size:12px}.avatar{border-radius:10px;width:37px;height:37px;font-size:21px}.remaining{gap:3px}.tiny-ball{width:13px;height:13px;font-size:7px}.match-center small{display:none}.match-tools{top:17px;left:10px}.turn-banner{top:109px}.scene{inset:120px 4px 115px}.menu-page{max-height:68vh;top:56%}.spin-popover{left:6%}}@media (max-width:650px){.app{min-height:620px}.lobby-header{padding:23px 21px}.wordmark{font-size:17px}.wordmark span{font-size:7px}.wallet{gap:7px;font-size:12px}.wallet>.avatar{display:none}.nav{background:#122936e8;border:1px solid #385766;border-radius:12px;justify-content:space-around;gap:0;width:calc(100% - 30px);padding:5px;top:auto;bottom:18px;left:50%;transform:translate(-50%)}.nav button{flex-direction:column;gap:6px;padding:8px 9px;font-size:10px}.phase-lobby .scene{opacity:.7;inset:60px -10% 27%}.lobby-card{background:linear-gradient(#0b1b25db,#091722fa);border:1px solid #34566666;border-radius:15px;width:auto;padding:20px;inset:auto 23px 106px}.lobby-card h1{margin:12px 0;font-size:30px}.lobby-card h1 br{display:none}.lobby-card h1 em{display:block}.lobby-card p{display:none}.lobby-card label{margin-top:16px}.difficulty{margin-bottom:14px}.difficulty button{flex:1;padding:9px}.play-now{min-height:45px;padding:13px 17px}.lobby-footer{display:none}.menu-page{max-height:72vh;padding:23px;top:48%}.cue-grid{grid-template-columns:1fr}.cue-card{padding:15px}.cue-card dl{grid-template-columns:1fr 1fr;gap:10px;margin:0 0 15px;display:grid}.cue-card dl>div{margin:0}.cue-name h2{margin:0 0 12px}.match-hud{grid-template-columns:1fr 30px 1fr;gap:5px;width:auto;top:12px;left:12px;right:12px;transform:none}.player-card{gap:6px;padding:8px 6px}.player-card .avatar{width:29px;height:32px;font-size:19px}.player-name{max-width:101px;font-size:11px}.player-card small{font-size:8px}.remaining{gap:2px}.tiny-ball{width:11px;height:11px;font-size:6px}.eight-emblem{width:27px;height:27px;font-size:16px}.turn-banner{width:max-content;max-width:90vw;padding:6px 14px 6px 6px;top:100px}.turn-banner span:not(.turn-time){font-size:9px}.match-tools{flex-direction:row;gap:6px;top:160px;left:12px}.match-tools button{width:32px;height:32px}.scene{inset:195px 0 184px}.bottom-controls{grid-template-columns:80px 1fr 36px;gap:13px;width:calc(100% - 28px);padding:15px;display:grid;bottom:22px}.power-control{grid-area:1/2/auto/4}.spin-button{grid-area:1/1;column-gap:4px;min-width:0}.shot-button{grid-area:2/1/auto/3;width:100%;font-size:12px}.voice-button{grid-area:2/3}.spin-popover{bottom:175px;left:20px}.voice-menu{bottom:175px;right:20px}.placement-hint{white-space:normal;text-align:center;width:88%;font-size:11px;bottom:168px}.voice-bubble{top:153px;left:45%}.versus{grid-template-columns:1fr 35px 1fr;margin:35px 0}.versus h2{font-size:15px}.versus .avatar{width:65px;height:65px;font-size:35px}.matchmaking-card h1{font-size:26px}.result-card,.pause-card{padding:28px 22px}.result-card h1{font-size:29px}.result-card .stat-grid{gap:5px}.result-card .stat-grid>div{padding:12px 4px}.result-card .stat-grid span{font-size:9px}}@media (max-height:600px) and (min-width:650px){.app{min-height:400px}.lobby-header{padding:15px 27px}.nav{top:76px}.lobby-card{width:320px;top:128px}.lobby-card h1{margin:12px 0;font-size:30px}.lobby-card p{display:none}.lobby-card label{margin-top:12px}.lobby-footer{display:none}.match-hud{top:7px}.scene{inset:95px 45px 85px}.turn-banner{top:95px}.bottom-controls{padding:10px 15px;bottom:8px}.player-card{padding:7px 10px}.menu-page{max-height:70vh;top:58%}.result-card{padding:20px}.result-card h1{font-size:24px}.result-card .stat-grid{margin:12px 0}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation-duration:.01ms!important}}@media (min-width:951px){.menu-page.cue-collection{width:370px;max-height:calc(100vh - 235px);padding:24px;top:185px;left:42px;transform:none}.cue-collection .cue-grid{grid-template-columns:1fr}.cue-collection .cue-card dl{grid-template-columns:1fr 1fr;gap:10px;margin:10px 0 15px;display:grid}.cue-collection .cue-card dl>div{margin:0}.cue-collection .cue-card{padding:14px}.cue-collection .cue-name h2{margin:0 0 8px}.cue-collection h1{font-size:27px}}.phase-aiming,.phase-bot,.phase-moving,.phase-ballInHand{background:#101929}.phase-aiming .scene,.phase-bot .scene,.phase-moving .scene,.phase-ballInHand .scene{inset:192px 12px 100px}.match-hud{background:radial-gradient(circle at 1px 1px,#3e4056 1px,#303045 1.6px 3px) 0 0/6px 6px;border-bottom:3px solid #797d91;grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr);gap:20px;width:100%;height:160px;padding:19px 190px 19px 155px;top:0;left:0;transform:none;box-shadow:0 5px 22px #0008}.player-card{box-shadow:none;background:0 0;border:0;gap:15px;max-width:none;min-height:112px;padding:0 8px}.player-card.active{box-shadow:none;border:0}.player-card .avatar{color:#087dbc;background:radial-gradient(circle at 35% 28%,#93ddff,#3caae2 62%,#135c90);border:6px solid #6f7180;border-radius:18px;width:104px;height:104px;box-shadow:inset 0 0 8px #e5ffff72,0 5px 10px #151829bb}.player-card.active .avatar{border-color:#53cc55;box-shadow:0 0 0 3px #277e2d,0 0 15px #71ed6788}.player-card .avatar svg{stroke:#0877b5;fill:#0877b5;width:57px;height:57px;transform:translateY(10px)}.player-card .player-detail{flex:1;min-width:0}.player-card.left-card{flex-direction:row-reverse}.left-card .player-detail{text-align:right}.right-card .player-detail{text-align:left}.player-name{color:#f0eef2;letter-spacing:.025em;text-shadow:0 2px 2px #000;background:#11111caa;border:1px solid #41465d;border-radius:5px;max-width:none;padding:6px 11px;font-size:15px;font-weight:700}.player-card small{color:#c7bdaa;margin:5px 0 4px;font-size:10px;font-weight:700;display:block}.remaining{gap:5px;min-height:26px;margin-top:5px;display:flex}.left-card .remaining{justify-content:flex-end}.right-card .remaining{justify-content:flex-start}.tiny-ball{background:#1c1b28;border:2px solid #696b82;width:25px;height:25px;font-size:10px;box-shadow:0 2px 4px #000b}.tiny-ball.empty{color:#0000;background:#171723}.tiny-ball.striped,.tray-ball.striped{background:linear-gradient(180deg,#f9f9ed 0 20%,var(--ball-color,#ee9c2e) 20% 72%,#faf9ed 72%);color:#12161c;text-shadow:none}.tiny-ball.b1,.tray-ball.b1{--ball-color:#e6b02e;background:#e6b02e}.tiny-ball.b2,.tray-ball.b2{--ball-color:#3a6daf;background:#3a6daf}.tiny-ball.b3,.tray-ball.b3{--ball-color:#d43738;background:#d43738}.tiny-ball.b4,.tray-ball.b4{--ball-color:#7e4cae;background:#7e4cae}.tiny-ball.b5,.tray-ball.b5{--ball-color:#e37d25;background:#e37d25}.tiny-ball.b6,.tray-ball.b6{--ball-color:#248647;background:#248647}.tiny-ball.b7,.tray-ball.b7{--ball-color:#743d30;background:#743d30}.tiny-ball.b8,.tray-ball.b8{--ball-color:#12141b;background:#12141b}.tiny-ball.striped,.tray-ball.striped{background:linear-gradient(180deg,#f9f9ed 0 20%,var(--ball-color) 20% 72%,#faf9ed 72%)}.match-center{gap:4px}.eight-emblem{background:radial-gradient(circle at 38% 26%,#ecfaf5 0 8%,#237b50 15%,#182b26 60%,#101822 78%);border:4px solid #a4a8a7;width:65px;height:65px;font-size:35px;box-shadow:0 4px 12px #111a27}.match-center small{color:#d4cfb7;font-size:10px}.turn-banner{background:#142333b5;border:1px solid #6685a06b;padding:4px 12px 4px 5px;top:167px;box-shadow:0 3px 10px #0004}.turn-banner strong,.turn-banner span:not(.turn-time){font-size:10px}.turn-time{color:#e7faff;border-color:#83c4e2;min-width:29px;height:29px}.match-tools{top:47px;left:38px}.match-tools button:first-child{color:#fff;background:linear-gradient(#38d35c,#008b2d);border:3px solid #a9a9bb;border-radius:13px;width:67px;height:67px;box-shadow:0 0 0 5px #141620,0 5px 12px #0009}.match-tools button:first-child svg{width:25px;height:25px}.match-tools button:not(:first-child){background:#182935dc;width:32px;height:32px;position:absolute;top:80px;left:0}.match-tools button:last-child{left:39px}.spin-control-top{z-index:4;background:radial-gradient(circle at 34% 26%,#fff,#dadde2 69%,#7b848e);border:5px solid #343a50;border-radius:50%;width:79px;height:79px;position:absolute;top:43px;right:44px;box-shadow:0 0 0 3px #a9aab4,0 7px 13px #0009}.spin-dot{background:#ffffffad;border:2px solid #d33d44;border-radius:50%;width:14px;height:14px;position:absolute;transform:translate(-50%,-50%)}.pocket-tray{z-index:3;background:linear-gradient(90deg,#182333,#384354,#182333);border:4px double #adb7c3;border-radius:30px;flex-direction:column;justify-content:flex-end;align-items:center;gap:1px;width:39px;min-height:240px;max-height:43vh;padding:8px 3px;display:flex;position:absolute;top:38%;right:20px;overflow:hidden;box-shadow:inset 0 0 8px #050b11,0 3px 11px #0007}.tray-ball{color:#fff;border:1px solid #d5e0e8;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:11px;font-weight:800;display:grid;box-shadow:0 2px 4px #0009}.bottom-controls{background:#202b38ee;border-color:#425869a5;width:min(620px,72vw);min-height:65px;padding:10px 17px;bottom:12px}.bottom-controls .spin-button{display:none}.bottom-controls .power-control{border:0;padding-left:0}.bottom-controls .voice-button{border-color:#6a7487}.spin-popover{bottom:94px;left:auto;right:26px}.placement-hint{bottom:95px}.voice-menu{bottom:94px}.voice-bubble{top:170px}.phase-versus .stage-overlay,.phase-matchmaking .stage-overlay{background:radial-gradient(ellipse at 50% 50%,#b97934df,#8d421fbf 44%,#2d1a1cd9 80%,#11151cf0),repeating-conic-gradient(from 0deg at 50% 76%,#ffe59b22 0 4deg,transparent 4deg 13deg);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.phase-versus .matchmaking-card,.phase-matchmaking .matchmaking-card{max-width:780px}.matchmaking-card>.eyebrow{color:#ecdcab;font-size:13px}.matchmaking-card h1{color:#f8f0d3;letter-spacing:.015em;text-shadow:0 5px 12px #21110d;font-family:Georgia,serif;font-size:clamp(35px,4vw,58px)}.versus{grid-template-columns:1fr 100px 1fr;gap:24px;max-width:720px;margin:45px auto 28px}.versus-player{background:linear-gradient(135deg,#53596c,#35364b);border:2px solid #9ea1b0;border-radius:14px;min-height:250px;padding:18px 16px 14px;position:relative;box-shadow:0 18px 35px #16101a99}.versus-player .avatar{color:#0875ae;background:radial-gradient(circle at 50% 25%,#7cd2ff,#2c9bd4 68%,#0c507e);border:4px solid #404963;border-radius:12px;width:145px;height:145px}.versus-player .avatar svg{stroke:#0877ae;fill:#0877ae;width:79px;height:79px;transform:translateY(19px)}.versus-player h2{color:#f5f0de;text-overflow:ellipsis;white-space:nowrap;background:#171926;border-radius:8px;width:100%;margin:12px 0 5px;padding:8px 10px;font-size:17px;overflow:hidden}.versus-player p{color:#c8c9d5;margin:0;font-size:12px}.versus-level{z-index:2;color:#1e2735;background:#e6c77e;border:2px solid #fff2c1;border-radius:50%;place-items:center;width:39px;height:39px;font-weight:800;display:grid;position:absolute;top:10px;right:20px;box-shadow:0 3px 8px #0006}.versus>strong{color:#b9e77b;text-shadow:0 3px 8px #1a2c0e;font-size:49px}@media (max-width:1050px){.match-hud{gap:8px;padding:14px 115px 14px 96px}.player-card .avatar{width:77px;height:77px}.player-card .avatar svg{width:46px;height:46px}.player-name{font-size:12px}.tiny-ball{width:19px;height:19px;font-size:8px}.match-tools{left:16px}.match-tools button:first-child{width:52px;height:52px}.match-tools button:not(:first-child){top:64px}.spin-control-top{width:62px;height:62px;right:20px}.pocket-tray{right:7px}}@media (max-width:650px){.match-hud{grid-template-columns:minmax(0,1fr) 29px minmax(0,1fr);gap:2px;height:112px;padding:10px 59px 10px 48px}.player-card{gap:4px;min-height:80px;padding:0}.player-card .avatar{border-width:3px;border-radius:8px;width:37px;height:48px}.player-card .avatar svg{width:27px;height:27px;transform:translateY(6px)}.player-name{padding:3px 4px;font-size:9px}.player-card small{margin:3px 0;font-size:7px}.remaining{gap:1px;min-height:12px}.tiny-ball{border-width:1px;width:11px;height:11px;font-size:5px}.eight-emblem{border-width:2px;width:27px;height:27px;font-size:16px}.match-center small{display:none}.match-tools{top:22px;left:7px}.match-tools button:first-child{border-width:2px;border-radius:7px;width:34px;height:34px;box-shadow:0 0 0 2px #141620}.match-tools button:first-child svg{width:15px;height:15px}.match-tools button:not(:first-child){width:25px;height:25px;top:41px}.match-tools button:last-child{left:26px}.spin-control-top{border-width:2px;width:41px;height:41px;top:20px;right:6px;box-shadow:0 0 0 2px #969aa1}.spin-dot{border-width:1px;width:8px;height:8px}.turn-banner{top:117px}.phase-aiming .scene,.phase-bot .scene,.phase-moving .scene,.phase-ballInHand .scene{inset:165px 0 164px}.pocket-tray{border-width:2px;width:25px;min-height:130px;max-height:25vh;padding:4px 1px;top:38%;right:3px}.tray-ball{width:18px;height:18px;font-size:8px}.bottom-controls{width:calc(100% - 24px);min-height:112px;bottom:14px}.spin-popover{bottom:145px;right:9px}.placement-hint{bottom:146px}.voice-menu{bottom:145px}.voice-bubble{top:145px}.matchmaking-card h1{font-size:28px}.versus{grid-template-columns:1fr 42px 1fr;gap:5px}.versus-player{min-height:175px;padding:10px}.versus-player .avatar{width:78px;height:78px}.versus-player .avatar svg{width:50px;height:50px}.versus-player h2{font-size:11px}.versus-player p{font-size:9px}.versus-level{width:25px;height:25px;font-size:11px;top:5px;right:7px}.versus>strong{font-size:26px}}
