:root{--bg:#0f1115;--panel:#171a21;--panel-border:#2a2f3a;--text:#f2f3f5;--text-dim:#9aa1ad;--accent:#5b8cff;--p0:#ef5350;--p1:#42a5f5;--radius:14px}.mobile-choice-stack .campaign-mode-choice{background:linear-gradient(135deg,#8d5d1257,#4a4aa63d);border-color:#ffcf539e;box-shadow:inset 0 0 0 1px #ffde7614,0 10px 24px #0000002e}.mobile-choice-stack .campaign-mode-choice i{color:#ffe17a;background:#ffc73d1f}.mobile-choice-stack .campaign-mode-choice small{color:#d4c69c}.mobile-choice-stack .campaign-mode-choice>b{color:#ffe17a}.campaign-screen{min-height:100dvh;padding:max(12px, env(safe-area-inset-top)) 18px max(16px, env(safe-area-inset-bottom));color:#ecf5ff;background:radial-gradient(circle at 50% -10%,#4dbee930,#0000 42%),radial-gradient(circle at 100% 100%,#895bdc21,#0000 38%),#0d1119;overflow:auto}.campaign-header{grid-template-columns:46px 1fr auto;align-items:center;gap:10px;width:min(940px,100%);min-height:52px;margin:0 auto;display:grid}.campaign-header>button{color:#ddecff;background:#0e1622b8;border:1px solid #8db0e040;border-radius:11px;width:40px;height:38px;font-size:20px}.campaign-header>div b,.campaign-header>div span{display:block}.campaign-header>div b{letter-spacing:.12em;font-size:15px;font-weight:1000}.campaign-header>div span{color:#8fa4bd;text-transform:uppercase;margin-top:2px;font-size:8px;font-weight:850}.campaign-header>strong{color:#fff2bc;background:#6e4b0e3b;border:1px solid #ffd24e4d;border-radius:999px;padding:8px 11px;font-size:10px}.campaign-header>strong i{color:#ffd54d;font-style:normal}.campaign-main{gap:12px;width:min(940px,100%);margin:10px auto 0;display:grid}.campaign-title-row{grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);align-items:end;gap:18px;display:grid}.campaign-title-row span{color:#79e7ff;letter-spacing:.15em;font-size:8px;font-weight:1000}.campaign-title-row h1{color:#fff;letter-spacing:-.045em;margin:4px 0 0;font-size:clamp(28px,4vw,43px);line-height:1}.campaign-title-row p{color:#a5b4c8;margin:0;font-size:11px;line-height:1.45}.campaign-world-nav{background:#121b29b3;border:1px solid #7eaee033;border-radius:14px;grid-template-columns:42px 1fr 42px;align-items:center;gap:8px;padding:7px;display:grid}.campaign-world-nav button{color:#8de9ff;background:#6ebee217;border:0;border-radius:10px;height:38px;font-size:26px}.campaign-world-nav button:disabled{opacity:.2}.campaign-world-nav div{text-align:center}.campaign-world-nav span,.campaign-world-nav strong{display:block}.campaign-world-nav span{color:#7de5ff;letter-spacing:.12em;font-size:7px;font-weight:950}.campaign-world-nav strong{color:#fff;margin-top:2px;font-size:14px}.campaign-stage-grid{grid-template-columns:repeat(10,minmax(0,1fr));gap:7px;display:grid}.campaign-stage-grid button{color:#ecf6ff;background:#121b29b8;border:1px solid #84a4d433;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;min-height:62px;padding:6px 3px;display:flex}.campaign-stage-grid button.selected{background:linear-gradient(155deg,#2c8eb857,#504eb040);border-color:#7ce5ff;transform:translateY(-2px);box-shadow:0 0 0 2px #7ce5ff1c}.campaign-stage-grid button.locked{color:#637086;background:#0f141e8c}.campaign-stage-grid strong{font-size:17px;line-height:1}.campaign-stage-grid span{color:#ffd85b;letter-spacing:-.05em;text-align:center;white-space:nowrap;width:100%;font-size:8px;overflow:hidden}.campaign-stage-grid button.locked span{color:#657184;letter-spacing:.06em;font-size:6px}.campaign-stage-card{background:linear-gradient(145deg,#1e384cc2,#1a1b36c7);border:1px solid #7ad2ef47;border-radius:20px;grid-template-columns:minmax(190px,.72fr) minmax(0,1.28fr);gap:18px;min-height:225px;padding:16px;display:grid;box-shadow:0 18px 44px #00000042}.campaign-stage-card.locked{filter:saturate(.55);border-color:#8293b02b}.campaign-map-preview{place-items:center;min-width:0;display:grid}.campaign-map-preview .map-thumb-canvas{border:2px solid #ffffffa6;border-radius:10px;max-width:100%;max-height:195px;display:block;box-shadow:0 14px 28px #0000004d;width:auto!important;height:auto!important}.campaign-stage-details{flex-direction:column;justify-content:center;min-width:0;display:flex}.campaign-stage-details>span{color:#76e3ff;letter-spacing:.12em;font-size:8px;font-weight:1000}.campaign-stage-details h2{color:#fff;letter-spacing:-.035em;margin:5px 0 8px;font-size:clamp(22px,3.2vw,34px);line-height:1}.campaign-stage-pills{flex-wrap:wrap;gap:5px;display:flex}.campaign-stage-pills b{color:#c5eefa;background:#57badb14;border:1px solid #78dffb2b;border-radius:999px;padding:5px 7px;font-size:8px}.campaign-stage-pills .campaign-wall-badge.walls{color:#bff4ff;background:#2f9fbf33;border-color:#74e5ff75}.campaign-stage-pills .campaign-wall-badge.open{color:#ffe0a1;background:#a1661a33;border-color:#ffc4607a}.campaign-rivals{color:#9babc0;margin:7px 0;font-size:9px}.campaign-star-rules{grid-template-columns:repeat(3,1fr);gap:5px;max-width:330px;display:grid}.campaign-star-rules span{color:#b7c4d5;text-align:center;background:#ffffff0b;border-radius:8px;padding:6px 5px;font-size:8px}.campaign-star-rules i{color:#ffd650;font-style:normal}.campaign-play-button{color:#071722;background:linear-gradient(135deg,#7fe8ff,#9db0ff);border:1px solid #9fedffb8;border-radius:12px;width:min(330px,100%);min-height:44px;margin-top:10px;font-size:12px;font-weight:1000}.campaign-play-button:disabled{color:#78869a;background:#161d29b8;border-color:#8497b533}.campaign-earned-stars{justify-content:center;gap:8px;margin:-2px 0 8px;display:flex}.campaign-earned-stars span{color:#ffffff1f;filter:grayscale();font-size:34px;transform:scale(.9)}.campaign-earned-stars span.earned{color:#ffd54d;filter:none;text-shadow:0 4px 18px #ffc5316b;transform:scale(1)}.campaign-end-actions{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=620px){.campaign-screen{height:100dvh;min-height:0;padding:max(7px, env(safe-area-inset-top)) 10px max(8px, env(safe-area-inset-bottom));overflow:hidden}.campaign-header{grid-template-columns:40px 1fr auto;gap:6px;min-height:42px}.campaign-header>button{width:36px;height:34px}.campaign-header>div b{font-size:12px}.campaign-header>div span{font-size:6px}.campaign-header>strong{padding:6px 8px;font-size:8px}.campaign-main{height:calc(100dvh - 56px - env(safe-area-inset-top) - env(safe-area-inset-bottom));grid-template-rows:auto auto auto minmax(0,1fr);gap:8px;margin-top:4px}.campaign-title-row{display:block}.campaign-title-row h1{font-size:clamp(24px,7vw,30px)}.campaign-title-row p{margin-top:5px;font-size:8px;line-height:1.3}.campaign-world-nav{border-radius:11px;grid-template-columns:36px 1fr 36px;padding:4px}.campaign-world-nav button{height:31px}.campaign-world-nav strong{font-size:11px}.campaign-stage-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.campaign-stage-grid button{border-radius:9px;min-height:42px;padding:4px 2px}.campaign-stage-grid strong{font-size:13px}.campaign-stage-grid span{font-size:6px}.campaign-stage-card{border-radius:15px;grid-template-columns:minmax(112px,.7fr) minmax(0,1.3fr);gap:10px;min-height:0;padding:10px}.campaign-map-preview .map-thumb-canvas{max-height:min(25vh,170px);width:100%!important}.campaign-stage-details h2{text-overflow:ellipsis;white-space:nowrap;margin:3px 0 5px;font-size:19px;overflow:hidden}.campaign-stage-pills{gap:3px}.campaign-stage-pills b{padding:4px 5px;font-size:6px}.campaign-rivals{text-overflow:ellipsis;white-space:nowrap;margin:4px 0;font-size:7px;overflow:hidden}.campaign-star-rules{gap:3px}.campaign-star-rules span{padding:4px 2px;font-size:6px}.campaign-play-button{min-height:38px;margin-top:6px;font-size:9px}.campaign-earned-stars span{font-size:27px}}@media (width<=620px) and (height<=680px){.campaign-title-row p{display:none}.campaign-stage-grid button{min-height:35px}.campaign-stage-card{padding:7px}.campaign-map-preview .map-thumb-canvas{max-height:126px}.campaign-stage-details h2{font-size:16px}.campaign-rivals{display:none}.campaign-play-button{min-height:34px}}*{box-sizing:border-box}body{color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}#root{flex-direction:column;height:100%;display:flex}button{cursor:pointer;font-family:inherit}.home-screen{min-height:100%;padding:24px 18px calc(104px + env(safe-area-inset-bottom));touch-action:pan-y;flex-direction:column;gap:20px;width:100%;max-width:520px;margin:0 auto;display:flex;overflow-y:auto}.home-screen>*{flex-shrink:0}.desktop-setup-flow{display:contents}.mobile-setup-shell{display:none}.home-title{text-align:center;letter-spacing:-.02em;background:linear-gradient(#fff,#9db4ff);color:#0000;-webkit-background-clip:text;background-clip:text;margin:8px 0 0;font-size:40px;font-weight:800}.desktop-site-home{color:#83e5ff;letter-spacing:.04em;width:fit-content;margin:0 auto -8px;font-size:11px;font-weight:850;text-decoration:none}.desktop-site-home:hover,.desktop-site-home:focus-visible{color:#fff}.home-notice{color:#f7d794;background:#92560c24;border:1px solid #f59e0b59;border-radius:11px;padding:11px 13px;font-size:13px;line-height:1.4}.quick-play-guide{background:linear-gradient(145deg,#0e2635f0,#1d1c43f0);border:1px solid #75e8ff57;border-radius:18px;overflow:hidden;box-shadow:0 16px 38px #00000040,0 0 24px #56baff14}.quick-play-guide>header{background:#75e8ff0e;border-bottom:1px solid #75e8ff29;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;display:flex}.quick-play-guide header span,.quick-play-guide header h2{margin:0;display:block}.quick-play-guide header span{color:#83e5ff;letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:950}.quick-play-guide header h2{color:#fff;margin-top:2px;font-size:18px;line-height:1.1}.quick-play-guide header>strong{color:#ffe18a;letter-spacing:.08em;text-transform:uppercase;font-size:9px}.quick-play-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:11px;display:grid}.quick-play-steps article{text-align:center;background:#050b1457;border:1px solid #ffffff1a;border-radius:12px;min-width:0;padding:10px 9px 9px;position:relative}.quick-play-number{color:#062635;background:#82e8ff;border-radius:50%;place-items:center;width:18px;height:18px;font-size:8px;display:grid;position:absolute;top:7px;left:7px}.quick-play-icon{color:#ffe18a;font-size:24px;font-weight:900;line-height:1;display:block}.quick-play-steps h3{color:#fff;margin:7px 0 0;font-size:11px}.quick-play-steps p{color:#aebdce;margin:4px 0 0;font-size:9px;line-height:1.4}.quick-play-rules{flex-wrap:wrap;gap:5px;padding:0 11px 12px;display:flex}.quick-play-rules span{color:#bdc9da;background:#ffffff0b;border-radius:9px;flex:125px;padding:7px 8px;font-size:8px;line-height:1.35}.quick-play-rules b{color:#fff}.create-level-btn{color:#fff;text-align:left;background:linear-gradient(135deg,#5b3eb9d9,#204ea9e6);border:1px solid #8b6eff8c;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:100%;padding:16px;display:grid;box-shadow:0 12px 30px #373eaa40}.create-level-btn strong,.create-level-btn small{display:block}.create-level-btn strong{font-size:16px}.create-level-btn small{color:#ffffffb3;margin-top:3px}.create-level-icon{color:#d9cbff;font-size:25px}.home-section{flex-direction:column;gap:8px;display:flex}.section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);font-size:13px;font-weight:600}.segmented{flex-wrap:wrap;gap:8px;display:flex}.seg{border:1px solid var(--panel-border);background:var(--panel);min-width:72px;color:var(--text);border-radius:10px;flex:1 1 0;padding:12px 10px;font-size:15px;font-weight:600;transition:background .15s,border-color .15s}.seg.active{background:var(--accent);border-color:var(--accent);color:#fff}.seg:disabled{cursor:not-allowed;opacity:.28}.play-mode-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.play-mode-grid .seg{text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;min-height:76px;display:flex}.play-mode-grid .seg strong,.play-mode-grid .seg small{display:block}.play-mode-grid .seg strong{font-size:14px}.play-mode-grid .seg small{color:var(--text-dim);margin-top:4px;font-size:10px}.play-mode-grid .seg.active small{color:#ffffffb8}.online-mode-hint{color:#a8dfd1;background:#279d7e14;border:1px solid #45d6ae33;border-radius:10px;padding:10px 12px;font-size:11px;line-height:1.45}.match-setup-card{background:#171a21c7;border:1px solid #6f9bff4d;border-radius:18px;overflow:hidden;box-shadow:0 16px 42px #0003}.match-setup-heading{background:linear-gradient(135deg,#4167cb3d,#6d4fb921);border-bottom:1px solid #6f9bff33;gap:3px;padding:14px 15px;display:grid}.match-setup-heading>span{color:#94b7ff;letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:900}.match-setup-heading strong{color:#fff;font-size:16px;line-height:1.25}.match-setup-heading small{color:#aeb9cc;font-size:10px;line-height:1.35}.rule-starters{background:linear-gradient(135deg,#192b3894,#221b3494);border-bottom:1px solid #fff1;gap:9px;padding:12px 15px 13px;display:grid}.rule-starters-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.rule-starters-heading span,.rule-starters-heading strong,.rule-starters-heading small{display:block}.rule-starters-heading strong{color:#f4f7fc;font-size:12px}.rule-starters-heading small{color:#98a8bc;margin-top:2px;font-size:9px;line-height:1.35}.rule-starters-heading>b{color:#8de6ff;letter-spacing:.05em;text-transform:uppercase;background:#4bc3e714;border:1px solid #77e1ff3d;border-radius:999px;flex:none;padding:4px 7px;font-size:8px}.rule-starter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.rule-starter{color:#eaf2fd;text-align:left;background:#080d157a;border:1px solid #ffffff21;border-radius:12px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;min-height:62px;padding:8px 9px;display:grid}.rule-starter:hover{transform:translateY(-1px)}.rule-starter.standard{background:linear-gradient(135deg,#308bb73d,#4b5fcb33);border-color:#79dcff61;grid-column:1/-1;min-height:70px}.rule-starter.standard:hover,.rule-starter.standard.active{border-color:#7ee8ffc7}.rule-starter.active{box-shadow:inset 0 0 0 1px #97ebff38,0 8px 24px #1b84b51f}.rule-starter.easy:hover{border-color:#5fe8bf7a}.rule-starter.hard:hover{border-color:#ffb15d80}.rule-starter-icon{color:#071a22;background:#77e3c3;border-radius:50%;place-items:center;width:30px;height:30px;font-size:15px;display:grid}.rule-starter.standard .rule-starter-icon{color:#06223b;background:#85e9ff;box-shadow:0 0 14px #70deff52}.rule-starter.hard .rule-starter-icon{color:#321c00;background:#ffbd65}.rule-starter span,.rule-starter strong,.rule-starter small{min-width:0;display:block}.rule-starter strong{font-size:11px}.rule-starter small{color:#9eadc0;margin-top:3px;font-size:8px;line-height:1.3}.rule-starter em{color:#9de8ff;text-transform:uppercase;font-size:9px;font-style:normal;font-weight:950}.rule-starter.standard em{text-align:right;max-width:76px}.rule-starter.hard em{color:#ffd08c}.match-advanced-toggle{color:#dce9ff;text-align:left;background:#080d1557;border:1px dashed #8faee24d;border-radius:11px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:9px 11px;display:flex}.match-advanced-toggle:hover{background:#142d4170;border-color:#7ee2ff94}.match-advanced-toggle span,.match-advanced-toggle strong,.match-advanced-toggle small{min-width:0;display:block}.match-advanced-toggle strong{font-size:10px}.match-advanced-toggle small{color:#8f9fb4;margin-top:2px;font-size:8px;line-height:1.35}.match-advanced-toggle>b{color:#8de6ff;text-transform:uppercase;flex:none;font-size:9px}.setup-step{border-bottom:1px solid #fff1;gap:8px;padding:13px 15px 14px;display:grid}.setup-step:last-child{border-bottom:0}.setup-step-label{color:#d9e1ef;letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:8px;font-size:11px;font-weight:850;display:flex}.setup-step-label b{color:#092238;background:#78dfff;border-radius:50%;place-items:center;width:21px;height:21px;font-size:10px;display:grid}.timing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.remote-lobby{width:min(100%,520px);min-height:100%;padding:max(64px, calc(28px + env(safe-area-inset-top))) 18px calc(36px + env(safe-area-inset-bottom));background:radial-gradient(circle at 50% -12%, #3e76ff59, transparent 38%), var(--bg);margin:0 auto;position:relative;overflow-y:auto}.remote-back{top:max(18px, env(safe-area-inset-top));border:1px solid var(--panel-border);width:40px;height:40px;color:var(--text);background:#171a21e6;border-radius:50%;font-size:20px;position:absolute;left:18px}.remote-kicker{color:#72dcc1;letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:800}.remote-lobby h1{letter-spacing:-.04em;margin:7px 0 8px;font-size:32px}.remote-intro{color:var(--text-dim);margin:0 0 20px;font-size:14px;line-height:1.5}.remote-entry-tabs{border:1px solid var(--panel-border);background:#11141a;border-radius:13px;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:12px;padding:5px;display:grid}.remote-entry-tabs button{color:#929cab;background:0 0;border:0;border-radius:9px;padding:10px 8px;font-size:12px;font-weight:850}.remote-entry-tabs button.active{color:#fff;background:#5b8cff42;box-shadow:0 0 0 1px #5b8cff66}.remote-card,.room-code-card{border:1px solid var(--panel-border);background:#171a21f0;border-radius:16px;margin-bottom:12px;padding:17px;box-shadow:0 16px 42px #0000002e}.remote-create-card label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.remote-name-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.remote-name-heading label{margin-bottom:0}.remote-name-heading label small{color:#72dcc1;font-size:8px}.remote-name-heading>button{color:#9eeaff;background:#3a9ebe14;border:1px solid #75e8ff38;border-radius:8px;padding:6px 9px;font-size:9px;font-weight:850}.remote-name-heading+input{margin-top:8px}.remote-name-fallback{color:#8694aa;margin:-4px 0 12px;font-size:9px;display:block}.remote-name-fallback b{color:#b9efff}.remote-create-card input{width:100%;color:var(--text);background:#101319;border:1px solid #383e4a;border-radius:11px;outline:none;margin-bottom:12px;padding:13px 14px;font:600 16px inherit}.remote-create-card input:focus{border-color:#5b8cff;box-shadow:0 0 0 3px #5b8cff24}.remote-create-card .play-btn{margin-top:0}.remote-join-card input:last-of-type{margin-bottom:12px}.remote-create-card .remote-code-input{text-transform:uppercase;letter-spacing:.12em;font-weight:850}.remote-optional-name{background:#070c135c;border:1px solid #ffffff1a;border-radius:10px;margin:0 0 10px}.remote-optional-name summary{cursor:pointer;align-content:center;min-height:43px;padding:7px 34px 7px 10px;list-style:none;display:grid;position:relative}.remote-optional-name summary::-webkit-details-marker{display:none}.remote-optional-name summary:after{color:#8ddfff;content:"+";font-size:16px;font-weight:900;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.remote-optional-name[open] summary:after{content:"−"}.remote-optional-name summary span,.remote-optional-name summary small{display:block}.remote-optional-name summary span{color:#e8eef8;font-size:10px;font-weight:900}.remote-optional-name summary small{color:#7f8b9d;margin-top:2px;font-size:8px}.remote-optional-name[open] summary{border-bottom:1px solid #ffffff14}.remote-optional-name>label{margin:9px 10px 6px;font-size:9px}.remote-optional-name>label small{color:#72dcc1;font-size:8px}.remote-optional-name-edit{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;padding:0 10px 10px;display:grid}.remote-create-card .remote-optional-name-edit>input{width:100%;margin:0;padding:9px 10px;font-size:13px}.remote-optional-name-edit>button{color:#9feaff;background:#3593b61a;border:1px solid #75e8ff33;border-radius:8px;min-height:37px;padding:7px 9px;font-size:9px;font-weight:900}.remote-join-guide{border-bottom:1px solid #75e8ff24;margin:-2px 0 18px;padding-bottom:17px}.remote-join-guide>header{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2px 10px;margin-bottom:10px;display:grid}.remote-join-guide>header span,.remote-join-guide>header strong,.remote-join-guide>header small{display:block}.remote-join-guide>header span{color:#72dcc1;letter-spacing:.11em;text-transform:uppercase;font-size:8px;font-weight:950}.remote-join-guide>header strong{color:#f7fbff;grid-column:1;font-size:19px;line-height:1.1}.remote-join-guide>header small{color:#94a2b6;grid-area:1/2/span 2;font-size:9px}.remote-join-guide ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.remote-join-guide li{background:#070d1585;border:1px solid #ffffff17;border-radius:10px;grid-template-columns:24px minmax(0,1fr);align-content:start;gap:7px;min-width:0;padding:9px 8px;display:grid}.remote-join-guide li>b{color:#082e42;background:#78dfff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:11px;display:grid}.remote-join-guide li span,.remote-join-guide li strong,.remote-join-guide li small{min-width:0;display:block}.remote-join-guide li strong{color:#f0f5ff;font-size:10px}.remote-join-guide li small{color:#99a8bb;margin-top:3px;font-size:8px;line-height:1.35}.remote-join-rule-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:7px;display:grid}.remote-join-rule-summary>span{background:#ffd1660e;border:1px solid #ffd16629;border-radius:9px;padding:8px 9px}.remote-join-rule-summary strong,.remote-join-rule-summary small{display:block}.remote-join-rule-summary strong{color:#ffe18a;text-transform:uppercase;font-size:9px}.remote-join-rule-summary small{color:#c5cfdd;margin-top:3px;font-size:8px;line-height:1.35}@media (width<=430px){.remote-join-guide>header{grid-template-columns:1fr}.remote-join-guide>header small{grid-area:auto/1;margin-top:2px}.remote-join-guide ol,.remote-join-rule-summary{grid-template-columns:1fr}.remote-join-guide li{grid-template-columns:27px minmax(0,1fr);padding:8px 9px}}.remote-challenge-card{background:radial-gradient(circle at 92% 8%,#705dff4d,#0000 36%),linear-gradient(145deg,#164b45f7,#181d39fa 63%,#341f4dfa);border:1px solid #72dcc180;border-radius:18px;grid-template-columns:minmax(0,1.1fr) minmax(170px,.9fr);gap:15px;margin-bottom:12px;padding:18px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 46px #0000004d,0 0 28px #54d8b61a}.remote-challenge-copy{min-width:0}.remote-challenge-kicker{color:#92f1d8;letter-spacing:.1em;text-transform:uppercase;font-size:8px;font-weight:950;display:block}.remote-challenge-copy h2{color:#fff;letter-spacing:-.035em;margin:7px 0 6px;font-size:25px;line-height:1.03}.remote-challenge-copy h2 b{color:#ffe18a}.remote-challenge-copy p{color:#c7d2e2;margin:0;font-size:11px;line-height:1.45}.remote-challenge-copy p strong{color:#fff}.remote-challenge-pills{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.remote-challenge-pills span{color:#edf5ff;background:#050c1647;border:1px solid #ffffff21;border-radius:999px;padding:5px 7px;font-size:8px;font-weight:850}.remote-challenge-copy>a{color:#102413;text-transform:uppercase;background:linear-gradient(135deg,#ffe068,#8cf0bd);border-radius:10px;align-items:center;gap:7px;min-height:36px;margin-top:12px;padding:8px 12px;font-size:10px;font-weight:950;text-decoration:none;display:inline-flex;box-shadow:0 8px 20px #050c163d}.remote-challenge-preview{background:#070b13a3;border:1px solid #ffffff38;border-radius:13px;align-self:stretch;min-width:0;position:relative;overflow:hidden;box-shadow:0 12px 24px #0000003d}.remote-challenge-preview .map-thumb-canvas{width:100%!important;height:auto!important}.remote-challenge-preview>span{color:#fff;text-align:center;text-overflow:ellipsis;white-space:nowrap;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#070b13c7;border-radius:7px;padding:5px 7px;font-size:8px;font-weight:900;position:absolute;bottom:7px;left:7px;right:7px;overflow:hidden}.remote-challenge-lineup{grid-column:1/-1;justify-content:center;gap:8px;padding-top:2px;display:flex}.remote-challenge-lineup>span{justify-items:center;gap:4px;min-width:47px;display:grid}.remote-challenge-lineup i{color:#fff;border:2px solid #fffc;border-radius:50%;place-items:center;width:31px;height:31px;font-size:11px;font-style:normal;font-weight:950;display:grid;box-shadow:0 5px 12px #00000042}.remote-challenge-lineup .open i{opacity:.42;filter:saturate(.45)}.remote-challenge-lineup .next i{opacity:1;color:#15231b;filter:none;background:#ffe18a!important}.remote-challenge-lineup small{color:#aebdce;text-overflow:ellipsis;white-space:nowrap;max-width:70px;font-size:8px;font-weight:850;overflow:hidden}.remote-challenge-lineup .next small{color:#ffe18a}.remote-guest-join-card{scroll-margin-top:12px}@media (width<=430px){.remote-challenge-card{grid-template-columns:1fr;gap:11px;padding:15px}.remote-challenge-copy h2{font-size:23px}.remote-challenge-preview{justify-self:stretch;max-height:170px}.remote-challenge-preview .map-thumb-canvas{object-fit:cover;max-height:170px;display:block}.remote-challenge-lineup{grid-column:1}}.room-code-card{background:linear-gradient(145deg,#2c428094,#171a21f5);border-color:#5b8cff7a;grid-template-columns:1fr auto;align-items:center;gap:5px 14px;display:grid}.room-code-card span{color:#b7c6ef;letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:800}.room-code-card strong{letter-spacing:.16em;grid-row:2;font-size:29px}.room-code-card button{color:#fff;background:var(--accent);border:0;border-radius:10px;grid-area:1/2/3;padding:11px 13px;font-weight:700}.remote-invite-card label{color:#a9b4c7;letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px;font-size:9px;font-weight:850;display:block}.remote-invite-card>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.remote-invite-card input{color:#dbe5ff;background:#0e1117;border:1px solid #343a46;border-radius:9px;outline:none;min-width:0;padding:10px 11px;font-size:11px}.remote-invite-card input:focus{border-color:#5b8cff}.remote-invite-card button,.remote-invite-card .remote-text-invite{color:#fff;text-align:center;background:#3d65c7;border:0;border-radius:9px;place-items:center;min-height:38px;padding:8px 9px;font-size:10px;font-weight:850;text-decoration:none;display:grid}.remote-invite-card .remote-text-invite{color:#092017;background:linear-gradient(135deg,#70e8bf,#7edcff)}.remote-invite-card .remote-invite-url{width:100%;margin-top:8px}.remote-invite-card small{color:#8f9bad;margin-top:8px;font-size:10px;line-height:1.35;display:block}.remote-invite-card small.manual{color:#ffd28b}.remote-card-title{color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px;font-weight:800;display:flex}.remote-card-title small{color:#72dcc1}.remote-rules-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.remote-rules-grid>span{background:#11141a;border:1px solid #343a46;border-radius:10px;min-width:0;padding:10px 11px}.remote-rules-grid small,.remote-rules-grid strong{display:block}.remote-rules-grid small{color:#7f8999;letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:800}.remote-rules-grid strong{color:#edf3ff;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;overflow:hidden}.remote-seats{gap:7px;display:grid}.remote-seat{color:#707887;background:#11141a;border:1px dashed #343a46;border-radius:11px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:48px;padding:10px 12px;display:grid}.remote-seat.filled{color:var(--text);border-style:solid}.remote-seat-dot{border-radius:50%;width:11px;height:11px;box-shadow:0 0 12px}.remote-seat strong{font-size:13px}.remote-seat small{color:#72dcc1;text-transform:uppercase;font-size:10px;font-weight:800}.remote-waiting,.remote-error,.remote-storage-warning{text-align:center;border-radius:12px;padding:13px 15px;font-size:13px}.remote-waiting{color:#b8c9f9;background:#5b8cff17}.remote-error{color:#ffb3b3;background:#d83f3f1f;margin-top:10px}.remote-storage-warning{color:#ffe6ad;background:#d89b3f21}.remote-pulse,.remote-status-dot{background:#54d8b6;border-radius:50%;width:8px;height:8px;margin-right:6px;animation:1.6s infinite remote-pulse;display:inline-block;box-shadow:0 0 #54d8b680}@keyframes remote-pulse{60%{box-shadow:0 0 0 7px #54d8b600}to{box-shadow:0 0 #54d8b600}}.remote-game-chip{z-index:5;color:#b8eadf;letter-spacing:.04em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-overflow:ellipsis;white-space:nowrap;background:#0c1116d1;border:1px solid #54d8b638;border-radius:999px;max-width:calc(100% - 20px);padding:7px 10px;font-size:10px;font-weight:800;position:absolute;top:10px;right:10px;overflow:hidden}.remote-game-chip.error{color:#ffc0c0;border-color:#ff5b5b40}.remote-status-dot{margin-right:5px;animation:none}.remote-status-dot.offline{background:#ff6868}.remote-status-dot.restoring{background:#ffd166;animation:1.2s infinite remote-pulse}.start-position-hint{color:var(--text-dim);background:#5b8cff12;border-left:2px solid #5b8cffa6;padding:9px 11px;font-size:11px;line-height:1.4}.course-library-note{color:#b9c2d2;margin-bottom:2px;font-size:11px;line-height:1.4}.segmented.compact .seg{min-width:48px;padding-left:7px;padding-right:7px}.creator-screen{touch-action:pan-y;width:100%;height:100%;padding:max(18px, env(safe-area-inset-top)) 18px calc(112px + env(safe-area-inset-bottom));background:radial-gradient(circle at 15% -10%, #6f4eff40, transparent 38%), radial-gradient(circle at 95% 18%, #1f84ff26, transparent 28%), var(--bg);overflow-y:auto}.creator-screen>*{width:min(100%,760px);margin-left:auto;margin-right:auto}.creator-header{align-items:center;gap:14px;margin-bottom:18px;display:flex}.creator-header h1{letter-spacing:-.035em;margin:1px 0 0;font-size:30px}.creator-kicker{color:#a99aff;letter-spacing:.13em;text-transform:uppercase;font-size:11px;font-weight:800}.icon-btn{border:1px solid var(--panel-border);width:42px;height:42px;color:var(--text);background:#171a21d9;border-radius:50%;font-size:21px}.creator-card{border:1px solid var(--panel-border);background:#171a21eb;border-radius:18px;margin-bottom:14px;padding:18px;box-shadow:0 16px 50px #0000002e}.visual-design-card h2{letter-spacing:-.025em;margin:4px 0 5px;font-size:23px}.visual-design-intro{color:var(--text-dim);margin:0;font-size:13px;line-height:1.45}.design-choice-group{margin-top:20px}.design-choice-grid{gap:8px;margin-top:8px;display:grid}.design-choice-grid.layouts{grid-template-columns:repeat(4,minmax(0,1fr))}.design-choice-grid.obstacles{grid-template-columns:repeat(5,minmax(0,1fr))}.design-choice{min-width:0;min-height:104px;color:var(--text);text-align:center;background:#11141a;border:1px solid #343946;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:10px 7px;transition:transform .15s,border-color .15s,background .15s;display:flex}.design-choice:hover{border-color:#5a6272;transform:translateY(-1px)}.design-choice.active{background:linear-gradient(145deg,#7157eb42,#232d55b3);border-color:#8f7bff;box-shadow:inset 0 0 0 1px #b4a6ff38,0 8px 22px #2f236e38}.design-choice strong{font-size:12px}.design-choice small{min-height:24px;color:var(--text-dim);font-size:9px;line-height:1.25}.layout-glyph{background:#262d3a;border:1px solid #ffffff52;border-radius:5px;grid-template-columns:1fr 1fr;gap:2px;width:34px;height:31px;padding:3px;display:grid}.layout-glyph i{background:#6f8eff;border-radius:1px;display:block}.layout-glyph.lanes{grid-template-columns:repeat(4,1fr)}.layout-glyph.grid{grid-template-columns:repeat(2,1fr)}.layout-glyph.crossfire{transform:rotate(45deg)scale(.8)}.layout-glyph.crossfire i{background:#a576ff}.layout-glyph.triangles{gap:1px;transform:rotate(45deg)scale(.82)}.layout-glyph.triangles i{clip-path:polygon(0 0,100% 50%,0 100%);background:#64d8ff;border-radius:0}.layout-glyph.triangles i:nth-child(2n){background:#a576ff;transform:rotate(180deg)}.layout-glyph.rings,.layout-glyph.plus,.layout-glyph.custom{display:block;position:relative;overflow:hidden}.layout-glyph.rings{background:#31405c;border-radius:50%}.layout-glyph.rings i,.layout-glyph.plus i,.layout-glyph.custom i{display:none}.layout-glyph.rings:before,.layout-glyph.rings:after{content:"";border:3px solid #64d8ff;border-radius:50%;position:absolute;inset:4px}.layout-glyph.rings:after{background:#a576ff;border-width:0;inset:11px}.layout-glyph.plus:before,.layout-glyph.plus:after{content:"";background:linear-gradient(135deg,#6f8eff,#a576ff);border-radius:2px;position:absolute}.layout-glyph.plus:before{width:8px;top:4px;bottom:4px;left:12px}.layout-glyph.plus:after{height:8px;top:11px;left:3px;right:3px}.layout-glyph.custom:before{content:"";clip-path:polygon(4% 72%,22% 12%,58% 28%,94% 4%,82% 88%,42% 96%);background:linear-gradient(135deg,#64d8ff,#a576ff 58%,#ff78b7);position:absolute;inset:4px}.layout-glyph.custom:after{content:"";background:#fff;border-radius:50%;width:4px;height:4px;position:absolute;top:6px;left:7px;box-shadow:13px 5px #fff,22px -2px #fff,19px 19px #fff,7px 21px #fff,-4px 16px #fff}.bumper-glyph{color:#86efff;letter-spacing:2px;text-shadow:0 0 9px #48ddffbf;align-items:center;min-height:31px;font-size:15px;font-weight:900;display:flex}.palette-choice-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.palette-choice{min-width:0;color:var(--text);background:#11141a;border:1px solid #343946;border-radius:11px;flex-direction:column;align-items:center;gap:7px;padding:9px 6px;font-size:10px;display:flex}.palette-choice.active{border-color:#8f7bff;box-shadow:inset 0 0 0 1px #b4a6ff33}.palette-dots{gap:3px;display:flex}.palette-dots i{border-radius:50%;width:13px;height:13px;box-shadow:0 0 0 1px #ffffff29}.ai-quick-start{padding:0;overflow:hidden}.ai-quick-start summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;list-style:none;display:flex}.ai-quick-start summary::-webkit-details-marker{display:none}.ai-quick-start summary strong,.ai-quick-start summary small{display:block}.ai-quick-start summary strong{font-size:15px}.ai-quick-start summary small{color:var(--text-dim);margin-top:3px;font-size:11px}.details-chevron{color:#a99aff;font-size:22px;transition:transform .2s}.ai-quick-start[open] .details-chevron{transform:rotate(180deg)}.ai-quick-start-body{border-top:1px solid var(--panel-border);padding:0 18px 18px}.ai-quick-start-body .section-label{margin-top:16px;display:block}.creator-prompt{resize:vertical;width:100%;min-height:112px;color:var(--text);background:#11141a;border:1px solid #393f4d;border-radius:12px;outline:none;margin-top:8px;padding:14px;font:500 16px/1.45 inherit}.creator-prompt:focus,.creator-controls input:focus,.creator-controls select:focus,.creator-name:focus{border-color:#7d6cff;box-shadow:0 0 0 3px #7d6cff26}.idea-chips{scrollbar-width:none;gap:7px;padding:10px 0 4px;display:flex;overflow-x:auto}.idea-chips button{max-width:230px;color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;background:0 0;border:1px solid #343946;border-radius:999px;flex:none;padding:8px 11px;font-size:12px;overflow:hidden}.creator-generate-row{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.creator-adaptive-note{color:var(--text-dim);font-size:11px;font-weight:700}.mini-segmented{background:#101319;border-radius:10px;padding:3px;display:flex}.mini-segmented button{color:var(--text-dim);background:0 0;border:0;border-radius:8px;padding:8px 10px;font-weight:700}.mini-segmented button.active{color:#fff;background:#34304d}.magic-btn{color:#fff;background:linear-gradient(135deg,#8b5cf6,#4f7cff);border:0;border-radius:11px;min-width:132px;padding:11px 15px;font-weight:800}.magic-btn:disabled{opacity:.45}.creator-note{min-height:17px;color:var(--text-dim);margin:12px 0 0;font-size:12px;line-height:1.4}.creator-generation-status{background:#18754b1f;border:1px solid #5bc89157;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;margin-top:12px;padding:12px 13px;display:flex}.creator-generation-status.local{background:#895b0d1f;border-color:#f5be5357}.creator-generation-status strong{font-size:13px;display:block}.creator-generation-status p{color:var(--text-dim);margin:3px 0 0;font-size:12px;line-height:1.4}.creator-generation-status button{color:#ffe1a3;background:#f5be531a;border:1px solid #f5be536b;border-radius:9px;flex:none;padding:8px 10px;font-weight:800}.creator-preview{grid-template-columns:minmax(0,1fr) 270px;align-items:center;gap:22px;display:grid;overflow:hidden}.creator-preview-copy p{color:var(--text-dim);line-height:1.5}.creator-name{width:100%;color:var(--text);letter-spacing:-.025em;background:0 0;border:0;border-bottom:1px solid #0000;outline:none;padding:4px 0;font:800 24px/1.2 inherit}.creator-map-preview{background:#0d0f14;border-radius:14px;justify-content:center;padding:10px;display:flex}.board-workshop{padding:16px}.workshop-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;display:flex}.workshop-heading h2{margin:2px 0 0;font-size:20px}.workshop-history-actions{gap:5px;display:flex}.workshop-history-actions button{color:#e8eaf2;background:#171b23;border:1px solid #343a49;border-radius:8px;padding:7px 9px;font-size:10px;font-weight:850}.workshop-history-actions button:disabled{cursor:default;opacity:.35}.workshop-tabs{background:#101319;border-radius:11px;padding:3px;display:flex}.workshop-tabs button{color:var(--text-dim);background:0 0;border:0;border-radius:8px;align-items:center;gap:5px;padding:8px 10px;font-size:12px;font-weight:800;display:flex}.workshop-tabs button b{color:#c8c0f5;background:#2b2d38;border-radius:50%;place-items:center;width:17px;height:17px;font-size:9px;display:inline-grid}.workshop-tabs button.active b{color:#4d437e;background:#fff}.workshop-tabs button.active{color:#fff;background:#4d437e}.workshop-body{grid-template-columns:minmax(250px,330px) minmax(0,1fr);align-items:center;gap:18px;display:grid}.workshop-canvas-shell{background:#0d0f14;border:1px solid #292e39;border-radius:15px;justify-content:center;padding:10px;display:flex;position:relative}.workshop-canvas-label{z-index:2;color:#dce3f1;letter-spacing:.05em;text-transform:uppercase;pointer-events:none;background:#080b10c7;border:1px solid #ffffff1f;border-radius:999px;padding:6px 8px;font-size:9px;font-weight:800;position:absolute;top:18px;left:18px}.workshop-canvas{aspect-ratio:300/410;touch-action:none;cursor:crosshair;border-radius:9px;width:min(100%,300px);height:auto;display:block}.workshop-canvas.tool-layout{cursor:default}.workshop-canvas.tool-layout.custom-shape{cursor:crosshair}.workshop-panel{flex-direction:column;justify-content:center;align-self:stretch;min-width:0;display:flex}.workshop-panel h3{letter-spacing:-.02em;margin:0 0 5px;font-size:18px}.workshop-panel>p{color:var(--text-dim);margin:0 0 12px;font-size:13px;line-height:1.45}.workshop-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.workshop-choice-grid button{min-width:0;min-height:66px;color:var(--text);text-align:left;background:#11141a;border:1px solid #343946;border-radius:10px;align-items:center;gap:9px;padding:9px;display:flex}.workshop-choice-grid button>span:last-child{min-width:0}.workshop-choice-grid button strong,.workshop-choice-grid button small{display:block}.workshop-choice-grid button strong{font-size:11px}.workshop-choice-grid button small{color:var(--text-dim);margin-top:3px;font-size:9px}.workshop-choice-grid button.active{background:#6952d633;border-color:#8d78ff}.workshop-choice-grid .layout-glyph{flex:0 0 34px}.workshop-choice-grid .bumper-glyph{flex:0 0 36px;justify-content:center;font-size:11px}.zone-count-editor{background:#4563b41a;border:1px solid #6f9bff52;border-radius:11px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px 12px;margin-top:11px;padding:11px;display:grid}.zone-count-copy strong,.zone-count-copy small{display:block}.zone-count-copy strong{color:#eef3ff;font-size:11px}.zone-count-copy small{color:var(--text-dim);margin-top:3px;font-size:9px;line-height:1.3}.zone-count-stepper{background:#101319;border:1px solid #3a4255;border-radius:10px;grid-template-columns:30px 38px 30px;align-items:center;display:grid;overflow:hidden}.zone-count-stepper button{color:#dce6ff;background:0 0;border:0;height:32px;font-size:18px;font-weight:800}.zone-count-stepper button:disabled{color:#555d6d;cursor:default}.zone-count-stepper output{color:#fff;text-align:center;font-size:17px;font-weight:900}.zone-count-presets{grid-column:1/-1;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.zone-count-presets button{color:var(--text-dim);background:#11141a;border:1px solid #343946;border-radius:7px;padding:6px 3px;font-size:10px;font-weight:850}.zone-count-presets button.active{color:#fff;background:#5b8cff3d;border-color:#7b98ff}.layout-rotation-editor{background:#11141a;border:1px solid #303747;border-radius:11px;gap:8px;margin-top:9px;padding:10px 11px;display:grid}.layout-rotation-editor strong,.layout-rotation-editor small{display:block}.layout-rotation-editor strong{color:#eef3ff;font-size:11px}.layout-rotation-editor small{color:var(--text-dim);margin-top:3px;font-size:9px;line-height:1.3}.layout-rotation-options{grid-template-columns:1.35fr repeat(3,1fr);gap:5px;display:grid}.layout-rotation-options button{min-height:30px;color:var(--text-dim);background:#0d1016;border:1px solid #343946;border-radius:8px;font-size:10px;font-weight:850}.layout-rotation-options button.active{color:#fff;background:#5b8cff3d;border-color:#7b98ff}.custom-shape-editor{background:linear-gradient(145deg,#6952d629,#252d4b2e);border:1px solid #a98fff73;border-radius:12px;gap:9px;margin-top:11px;padding:11px;display:grid}.custom-shape-callout strong,.custom-shape-callout small{display:block}.custom-shape-callout strong{color:#fff;font-size:12px}.custom-shape-callout small{color:#bfc8da;margin-top:3px;font-size:9px;line-height:1.35}.custom-zone-nav{background:#101319;border:1px solid #3b4356;border-radius:9px;grid-template-columns:34px 1fr 34px;align-items:center;display:grid;overflow:hidden}.custom-zone-nav button{color:#e8ecff;background:0 0;border:0;height:33px;font-size:16px}.custom-zone-nav output{color:#fff;text-align:center;font-size:11px;font-weight:900}.custom-shape-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.custom-shape-actions button{color:#dce6ff;background:#151a24;border:1px solid #3d465a;border-radius:8px;min-height:34px;font-size:10px;font-weight:850}.custom-shape-actions button.danger{color:#ffb4bc;border-color:#ff647657}.custom-shape-actions button:disabled{cursor:default;opacity:.35}.custom-shape-editor>p{color:#909aae;margin:0;font-size:9px;line-height:1.4}.bumper-choices{grid-template-columns:repeat(2,minmax(0,1fr));max-height:188px;overflow-y:auto}.workshop-subhead{color:#b8bfd0;letter-spacing:.09em;text-transform:uppercase;margin:11px 0 7px;font-size:9px;font-weight:850}.object-palette{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.object-palette button{min-width:0;min-height:52px;color:var(--text);text-align:left;cursor:grab;touch-action:none;background:#11141a;border:1px solid #343946;border-radius:10px;align-items:center;gap:8px;padding:7px 8px;display:flex}.object-palette button b{color:#d9f9ff;background:#176586;border-radius:50%;flex:0 0 30px;place-items:center;width:30px;height:30px;display:grid;box-shadow:0 0 9px #4adeff59}.object-palette button.object-boost b{color:#4c3600;background:#ffd84d;box-shadow:0 0 11px #ffd84d8c}.object-palette button.object-slow b{color:#fff;background:#8d3d91;box-shadow:0 0 11px #ff5cb466}.object-palette button.object-hazard b{color:#fff;background:#3a0712;box-shadow:0 0 12px #ff4560b3}.object-palette button.object-bumper-soft b{background:#42616f}.object-palette button.object-bumper-super b{background:#0da6ce;box-shadow:0 0 13px #4adeffcc}.object-palette button span{min-width:0}.object-palette button strong,.object-palette button small{display:block}.object-palette button strong{font-size:10px}.object-palette button small{color:var(--text-dim);margin-top:2px;font-size:8px}.object-palette button.active{background:#6952d633;border-color:#8d78ff}.object-palette button:active{cursor:grabbing}.object-editor{background:#6952d61a;border:1px solid #8d78ff6b;border-radius:11px;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px;margin-top:4px;padding:10px;display:grid}.object-editor-title{color:#eeeaff;text-transform:capitalize;grid-column:1/-1;justify-content:space-between;gap:8px;font-size:11px;display:flex}.object-editor-title span{color:var(--text-dim)}.object-editor label{min-width:0;color:var(--text-dim);letter-spacing:.05em;text-transform:uppercase;flex-direction:column;gap:5px;font-size:9px;font-weight:800;display:flex}.object-editor input,.object-editor select{accent-color:#8d78ff;width:100%;min-width:0}.object-size-control{grid-template-columns:34px minmax(70px,1fr) 34px;align-items:center;gap:7px;display:grid}.object-size-control button{color:#fff;background:#20242d;border:1px solid #4a5060;border-radius:8px;min-height:32px;padding:0;font-size:18px;font-weight:800}.course-rules-note{background:linear-gradient(135deg,#354c8a2e,#191c25e0);border-color:#6f9bff57}.course-rules-note h2{margin:5px 0 7px;font-size:18px}.course-rules-note p{color:var(--text-dim);margin:0;font-size:12px;line-height:1.55}.object-editor select{color:#fff;background:#11141a;border:1px solid #424655;border-radius:8px;padding:7px;font-size:11px}.object-editor-actions{grid-column:1/-1;gap:7px;display:flex}.object-editor-actions button{color:#dcd7fa;background:#181a22;border:1px solid #424655;border-radius:8px;flex:1;padding:7px;font-size:10px;font-weight:800}.object-editor-actions button.active{color:#fff2a8;border-color:#ffd84d}.object-editor-actions button.danger{color:#ffc3cb;border-color:#683642}.object-editor-actions button:disabled{cursor:default;opacity:.4}.workshop-next{color:#fff;background:#6252b8;border:0;border-radius:9px;margin-top:11px;padding:10px 12px;font-size:12px;font-weight:800}.workshop-button-row{gap:7px;display:flex}.workshop-button-row>*{flex:1}.zone-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:168px;padding:2px;display:grid;overflow-y:auto}.zone-picker button{color:var(--text-dim);background:#11141a;border:1px solid #343946;border-radius:9px;justify-content:space-between;align-items:center;gap:5px;padding:8px 9px;font-size:10px;display:flex}.zone-picker button strong{color:#fff;font-size:13px}.zone-picker button.active{color:#d8d1ff;background:#6b54e12e;border-color:#8976ff}.workshop-number{color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;flex-direction:column;gap:6px;margin-top:12px;font-size:10px;font-weight:800;display:flex}.workshop-number input{width:100%;color:var(--text);background:#11141a;border:1px solid #343946;border-radius:10px;padding:11px;font-size:16px}.quick-scores{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.quick-scores button{color:var(--text-dim);background:0 0;border:1px solid #343946;border-radius:8px;flex:1 0 36px;padding:7px 5px;font-size:12px;font-weight:800}.quick-scores button.active{color:#fff;background:#4d437e;border-color:#8976ff}.workshop-score-shuffle{color:#eef6ff;text-align:left;background:#3877be24;border:1px solid #7eb7ff80;border-radius:10px;align-items:center;gap:10px;width:100%;margin-top:11px;padding:10px 11px;display:flex}.workshop-score-shuffle>b{color:#87c6ff;font-size:20px;line-height:1}.workshop-score-shuffle span,.workshop-score-shuffle strong,.workshop-score-shuffle small{display:block}.workshop-score-shuffle strong{font-size:11px}.workshop-score-shuffle small{color:var(--text-dim);margin-top:3px;font-size:9px;line-height:1.25}.workshop-score-shuffle:disabled{cursor:default;opacity:.38}.workshop-clear{color:var(--text-dim);background:0 0;border:1px solid #343946;border-radius:9px;margin-top:11px;padding:9px 11px;font-size:12px;font-weight:700}.workshop-clear:disabled{opacity:.35}.compact-style-card{grid-template-columns:minmax(180px,.8fr) minmax(0,1.2fr);align-items:center;gap:20px;display:grid}.compact-style-card h2{margin-top:4px}.peg-count{align-items:baseline;gap:7px;margin:8px 0;display:flex}.peg-count strong{font-size:34px}.peg-count span{color:var(--text-dim);font-size:12px}.workshop-tip{color:#aeb5c2;background:#11141a;border-radius:9px;margin-top:12px;padding:10px;font-size:11px;line-height:1.4}.level-badges{flex-wrap:wrap;gap:7px;display:flex}.level-badges span{color:#c9c1ff;background:#7d6cff1f;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:700}.creator-controls h2{margin:4px 0 12px;font-size:15px}.creator-controls h2:not(:first-child){margin-top:22px}.creator-score-details{background:#11141a;border:1px solid #343946;border-radius:12px;margin-top:18px;overflow:hidden}.creator-score-details summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:62px;padding:12px 13px;list-style:none;display:flex}.creator-score-details summary::-webkit-details-marker{display:none}.creator-score-details summary span{min-width:0}.creator-score-details summary strong,.creator-score-details summary small{display:block}.creator-score-details summary strong{color:#eef2ff;font-size:12px}.creator-score-details summary small{color:var(--text-dim);margin-top:3px;font-size:9px}.creator-score-details summary b{color:#a99aff;flex:none;font-size:10px}.creator-score-details[open] summary{border-bottom:1px solid #343946}.creator-score-details[open] summary b{font-size:0}.creator-score-details[open] summary b:after{content:"Hide values";font-size:10px}.creator-score-details .score-value-grid{padding:13px}.control-grid,.score-value-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.score-value-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.creator-controls label,.creator-controls .creator-control-field{min-width:0;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;flex-direction:column;gap:6px;font-size:11px;font-weight:700;display:flex}.creator-wall-toggle{flex-wrap:nowrap}.creator-wall-toggle .seg{min-width:0;padding:11px 8px;font-size:12px}.creator-controls input,.creator-controls select{width:100%;min-width:0;color:var(--text);background:#11141a;border:1px solid #343946;border-radius:10px;outline:none;padding:11px;font-size:14px}.creator-actions{grid-template-columns:1fr 1.6fr;gap:10px;padding-top:4px;display:grid}.creator-save-dock{right:50%;bottom:max(10px, env(safe-area-inset-bottom));z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#14161ff2;border:1px solid #8d78ff85;border-radius:17px;grid-template-columns:minmax(0,1fr) auto minmax(150px,auto);align-items:center;width:min(100% - 24px,760px);padding:10px 11px 10px 14px;position:fixed;transform:translate(50%);box-shadow:0 18px 48px #00000085,0 0 24px #6952d62b}.creator-save-summary{min-width:0}.creator-save-summary strong,.creator-save-summary span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.creator-save-summary strong{color:#fff;font-size:12px}.creator-save-summary span{color:#a8afbf;margin-top:3px;font-size:9px}.creator-save-dock .btn{padding:11px 14px}.creator-save-dock .play-btn{border-radius:12px;min-width:150px;padding:12px 16px;font-size:14px}.creator-actions .btn,.creator-actions .play-btn{margin:0}.creator-delete-row{color:var(--text-dim);justify-content:flex-end;align-items:center;gap:8px;font-size:12px;display:flex}.creator-delete-row .btn{margin:0;padding:9px 12px}.creator-delete-row .danger-link{color:#d58c96;background:0 0;border-color:#0000}.creator-delete-row .danger-btn{color:#ffd6db;background:#391b22;border-color:#7f3541}.creator-share-card h2{margin:0 0 4px;font-size:16px}.creator-share-card p{color:var(--text-dim);margin:0;font-size:12px;line-height:1.4}.creator-share-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.creator-share-buttons{flex:none;gap:8px;display:flex}.creator-share-buttons .btn{padding:9px 12px;font-size:12px}.creator-share-buttons .share-btn{background:#6e58e62e;border-color:#7767df}.import-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:9px;margin-top:14px;display:grid}.import-row textarea,.share-link-output{width:100%;min-width:0;color:var(--text);background:#11141a;border:1px solid #343946;border-radius:10px;outline:none;padding:11px;font:12px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.import-row textarea{resize:vertical;min-height:68px}.import-row .magic-btn{align-self:stretch}.share-link-output{margin-top:12px}.share-status{color:#bfb4ff;margin-top:10px;font-size:12px}.map-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.selected-course-card{background:linear-gradient(135deg,#6f9bff21,#9a7cff14);border:1px solid #6f9bff6b;border-radius:18px;grid-template-columns:250px minmax(0,1fr);align-items:center;gap:18px;margin-bottom:16px;padding:14px;display:grid;box-shadow:0 14px 36px #0000002e}.course-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.surprise-course-btn{color:#ede9ff;background:#9a7cff21;border:1px solid #9a7cff73;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:850}.selected-course-preview{background:#0d1016;border:1px solid #ffffff1a;border-radius:14px;padding:8px}.selected-course-preview .map-thumb-canvas{width:100%!important;height:auto!important}.selected-course-copy{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}.selected-course-label{color:#9eb8ff;letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:800}.selected-course-copy h3{color:var(--text);margin:0;font-size:23px;line-height:1.1}.selected-course-copy p{color:var(--text-dim);margin:0;font-size:13px;line-height:1.45}.selected-course-meta{flex-wrap:wrap;gap:7px;display:flex}.course-feature-pills{flex-wrap:wrap;gap:5px;display:flex}.course-feature-pills span{color:#aee9da;background:#26977c17;border:1px solid #56dbbe33;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:750}.selected-course-plan{color:#dbe3f2;background:#ffd16612;border-left:2px solid #ffe18a;gap:3px;padding:8px 10px;font-size:10px;line-height:1.35;display:grid}.selected-course-plan b{color:#ffe18a;letter-spacing:.1em;text-transform:uppercase;font-size:8px}.selected-course-meta span,.map-card-meta{color:#cdd7f5;background:#ffffff12;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:700}.selected-course-edit{color:#ede9ff;background:#9a7cff24;border:1px solid #9a7cff73;border-radius:10px;margin-top:2px;padding:8px 11px;font-size:11px;font-weight:800}.course-filter-bar{gap:10px;margin-bottom:9px;display:grid}.course-filter-bar input{border:1px solid var(--panel-border);width:100%;color:var(--text);background:#11141a;border-radius:12px;outline:none;padding:12px 14px;font-size:14px}.course-filter-bar input:focus{border-color:#6f9bff;box-shadow:0 0 0 3px #6f9bff1f}.course-filter-chips{scrollbar-width:none;gap:7px;padding-bottom:3px;display:flex;overflow-x:auto}.course-filter-chips::-webkit-scrollbar{display:none}.course-filter-chips button{border:1px solid var(--panel-border);color:var(--text-dim);background:var(--panel);border-radius:999px;flex:none;padding:8px 11px;font-size:11px;font-weight:750}.course-filter-chips button.active{color:#fff;background:#6f9bff33;border-color:#6f9bff}.course-mechanic-filter{gap:6px;padding-top:1px;display:grid}.course-mechanic-filter>span{color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:850}.mechanic-chips button.active{background:#805be733;border-color:#9b7dff}.course-results-count{color:var(--text-dim);letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px 2px;font-size:10px;font-weight:700}.map-grid.course-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.course-list .map-card{text-align:left;flex-direction:column;align-items:stretch;gap:8px;min-height:100%;padding:8px;display:flex}.course-list .map-card.active{transform:translateY(-3px)}.course-list .map-card-wrap:has(.map-edit-btn) .map-thumb-canvas{margin-top:0}.course-list .map-thumb-canvas{border:1px solid #ffffff17;width:100%!important;height:auto!important}.map-card-copy{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;padding:1px 4px 5px;display:flex}.map-card-features{color:#8fd8c6;text-transform:capitalize;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-size:9px;font-weight:750;display:-webkit-box;overflow:hidden}.advanced-rules{background:#171a21c7;border:1px solid #6f9bff47;border-radius:15px;overflow:hidden}.advanced-rules summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:66px;padding:13px 14px;list-style:none;display:flex}.advanced-rules summary::-webkit-details-marker{display:none}.advanced-rules summary span{min-width:0}.advanced-rules summary strong,.advanced-rules summary small{display:block}.advanced-rules summary strong{color:#edf3ff;font-size:13px}.advanced-rules summary small{color:var(--text-dim);margin-top:3px;font-size:10px}.advanced-rules summary b{color:#9eb8ff;font-size:11px}.advanced-rules[open] summary{border-bottom:1px solid var(--panel-border)}.advanced-rules[open] summary b:after{content:" ↑"}.advanced-rules:not([open]) summary b:after{content:" ↓"}.advanced-rules-body{gap:20px;padding:16px 14px 18px;display:grid}.course-list .map-name{font-size:15px;font-weight:750}.course-list .map-description{text-align:left;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:31px;font-size:11px;line-height:1.4;display:-webkit-box;overflow:hidden}.course-list .map-badge{top:14px;left:14px}.course-empty{border:1px dashed var(--panel-border);min-height:130px;color:var(--text-dim);text-align:center;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:24px;display:flex}.course-empty strong{color:var(--text)}.course-empty button{color:#dfe8ff;background:#1b2230;border:1px solid #46516a;border-radius:9px;margin-top:5px;padding:7px 10px;font-size:10px;font-weight:800}.show-more-courses{color:#cbd7ef;background:#171c26;border:1px solid #3c4658;border-radius:11px;width:100%;padding:12px;font-size:12px;font-weight:800}.map-card-wrap{min-width:0;position:relative}.map-card{border-radius:var(--radius);border:2px solid var(--panel-border);background:var(--panel);flex-direction:column;align-items:center;gap:6px;width:100%;height:100%;padding:10px;transition:transform .16s,border-color .16s,background .16s;display:flex;position:relative;overflow:hidden}.map-card.active{border-color:var(--accent);background:#1c2130;transform:translateY(-2px)}.map-card.showcase{border-color:#393253}.map-card.showcase.active{border-color:#9a7cff}.map-card.custom{border-color:#235449}.map-card.custom.active{border-color:#43d2aa}.map-badge{z-index:1;color:#d7dce8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);letter-spacing:.06em;text-transform:uppercase;background:#0f1115d1;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800;position:absolute;top:8px;left:8px}.map-card.showcase .map-badge{color:#ddd2ff;background:#372768e0}.map-card.custom .map-badge{color:#bff9e8;background:#144f41e6}.map-edit-btn{z-index:2;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);letter-spacing:.03em;text-transform:uppercase;background:#0f1115e0;border:1px solid #ffffff24;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:800;position:absolute;top:7px;right:7px}.map-card-wrap:has(.map-edit-btn) .map-thumb-canvas{margin-top:4px}.map-thumb-canvas{border-radius:8px;display:block}.map-name{color:var(--text);font-size:13px;font-weight:600}.map-description{min-height:30px;color:var(--text-dim);text-align:center;font-size:10px;line-height:1.35}.custom-target-input{border:1px solid var(--panel-border);background:var(--panel);width:100%;color:var(--text);border-radius:10px;margin-top:4px;padding:12px;font-size:16px}.play-btn{color:#fff;letter-spacing:.02em;background:linear-gradient(#6f9bff,#4a72e6);border:none;border-radius:16px;margin-top:8px;padding:18px;font-size:19px;font-weight:800;box-shadow:0 8px 20px #4a72e659}.play-btn:disabled{opacity:.4;box-shadow:none}.setup-play-dock{right:50%;bottom:max(10px, env(safe-area-inset-bottom));z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141821f0;border:1px solid #7091e173;border-radius:17px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;width:min(100% - 24px,520px);padding:10px 11px 10px 14px;display:grid;position:fixed;transform:translate(50%);box-shadow:0 18px 48px #00000080,0 0 24px #4970d324}.setup-play-summary{min-width:0}.setup-play-summary strong,.setup-play-summary span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.setup-play-summary strong{color:#fff;font-size:13px}.setup-play-summary span{color:#9facbf;margin-top:3px;font-size:9px;font-weight:700}.setup-play-dock .play-btn{border-radius:12px;min-width:118px;margin:0;padding:12px 18px;font-size:15px}.game-screen{background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0}.hud{padding:10px 12px 8px;padding-top:max(10px, env(safe-area-inset-top));background:var(--panel);border-bottom:1px solid var(--panel-border);z-index:5;align-items:center;gap:10px;display:flex}.hud-player-list{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px;min-width:0;display:grid}.hud.players-3 .hud-player-list,.hud.players-4 .hud-player-list{grid-template-columns:repeat(2,minmax(0,1fr))}.hud-player-list>div{min-width:0}.hud-player{border-radius:10px;flex:1;align-items:center;gap:8px;min-width:0;padding:6px 8px;transition:background .2s;display:flex}.hud-player.active{background:#ffffff14}.hud-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.hud-player-info{flex-direction:column;min-width:0;line-height:1.15;display:flex}.hud-name{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.hud-score{align-items:baseline;gap:3px;display:flex}.hud-score strong{color:#fff;font-size:20px;font-weight:900}.hud-score small{color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:850}.hud-pucks{gap:3px;margin-left:auto;display:flex}.puck-dot{background:0 0;border:2px solid;border-radius:50%;width:8px;height:8px}.puck-dot.full{background:currentColor}.hud-meta{color:var(--text-dim);flex-direction:column;flex-shrink:0;align-items:center;font-size:11px;display:flex}.hud-round{color:var(--text);font-size:13px;font-weight:700}.hud-exit,.hud-help,.hud-sound{color:var(--text-dim);background:0 0;border:none;flex-shrink:0;padding:4px 8px;font-size:18px}.hud-help,.hud-sound{border:1px solid var(--panel-border);border-radius:50%;width:28px;height:28px;padding:0;font-size:15px}.hud-help{color:#dbe8ff;letter-spacing:.05em;background:#75e8ff14;border-color:#75e8ff59;border-radius:999px;width:38px;font-size:8px;font-weight:950}.game-help-overlay{z-index:20;padding:max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#05080dd6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.game-help-card{color:#eef4ff;background:linear-gradient(150deg,#181e2bfc,#0c1018fc);border:1px solid #75e8ff47;border-radius:20px;width:min(620px,100%);max-height:100%;padding:20px;overflow-y:auto;box-shadow:0 24px 70px #00000094,0 0 30px #5a99ff1f}.game-help-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.game-help-header span{color:#86ddff;letter-spacing:.13em;text-transform:uppercase;font-size:9px;font-weight:950}.game-help-header h2{margin:3px 0 0;font-size:25px;line-height:1.05}.game-help-header button{color:#dbe4f3;background:#171c25;border:1px solid #394252;border-radius:50%;flex:none;width:34px;height:34px;font-size:16px}.game-help-plan{background:#ffd16612;border-left:3px solid #ffe18a;margin-top:15px;padding:12px 13px}.game-help-plan strong{color:#ffe18a;letter-spacing:.09em;text-transform:uppercase;font-size:10px}.game-help-plan p{color:#f1f4fa;margin:4px 0 0;font-size:13px;line-height:1.4}.game-help-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px;display:grid}.game-help-rule-grid>div{background:#ffffff09;border:1px solid #303746;border-radius:11px;padding:10px 11px}.game-help-rule-grid small,.game-help-rule-grid strong{display:block}.game-help-rule-grid small{color:#8fa0b8;letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:900}.game-help-rule-grid strong{margin-top:4px;font-size:11px;line-height:1.35}.game-help-section{margin-top:16px}.game-help-section h3{color:#eef4ff;letter-spacing:.04em;margin:0 0 8px;font-size:12px}.game-help-features{flex-wrap:wrap;gap:5px;display:flex}.game-help-features span{color:#b9f0e2;text-transform:capitalize;background:#26977c1a;border:1px solid #56dbbe38;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:800}.game-help-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding:0;list-style:none;display:grid}.game-help-steps li{background:#ffffff09;border-radius:10px;gap:8px;padding:9px;display:flex}.game-help-steps li>b{color:#082e42;background:#78dfff;border-radius:50%;flex:0 0 21px;place-items:center;width:21px;height:21px;font-size:9px;display:grid}.game-help-steps span,.game-help-steps strong{display:block}.game-help-steps span{color:#aeb9c9;font-size:9px;line-height:1.35}.game-help-steps strong{color:#f2f6ff;margin-bottom:2px;font-size:10px}.game-help-power-note{color:#aeb9c9;margin:8px 0 0;font-size:9px;line-height:1.4}.game-help-styles{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.game-help-styles span{color:#aeb9c9;border:1px solid #303746;border-radius:10px;padding:9px;font-size:9px;line-height:1.35}.game-help-styles b{color:#fff;margin-bottom:3px;font-size:10px;display:block}.game-help-scoring{background:#597bca1a;border-radius:11px;margin-top:16px;padding:10px 12px}.game-help-scoring strong{color:#9ec3ff;letter-spacing:.08em;text-transform:uppercase;font-size:10px}.game-help-scoring p{color:#cbd5e5;margin:4px 0 0;font-size:10px;line-height:1.45}.game-help-done{color:#071622;background:linear-gradient(135deg,#78dfff,#9bb6ff);border:0;border-radius:11px;width:100%;margin-top:16px;padding:12px 14px;font-size:13px;font-weight:950}@media (width<=480px){.quick-play-guide>header{align-items:flex-start}.quick-play-guide header>strong{text-align:right;max-width:90px}.quick-play-steps{grid-template-columns:1fr}.quick-play-steps article{text-align:left;grid-template-columns:28px 1fr;column-gap:8px;padding:9px 10px;display:grid}.quick-play-number{display:none}.quick-play-icon{text-align:center;grid-row:1/span 2;align-self:center}.quick-play-steps h3{margin:0}.quick-play-steps p{margin-top:2px}.rule-starters-heading{align-items:flex-start}.rule-starters-heading>b{margin-top:1px}.rule-starter-grid{grid-template-columns:1fr}.rule-starter{min-height:56px}.game-help-card{border-radius:16px;padding:16px}.game-help-rule-grid,.game-help-steps,.game-help-styles{grid-template-columns:1fr}}.turn-status{z-index:4;color:#eafcff;text-align:center;background:linear-gradient(135deg,#0e1c28f0,#191e3eeb);border-bottom:1px solid #75e8ff38;flex:none;justify-content:center;align-items:center;gap:10px;min-height:43px;padding:7px 12px;display:flex;position:relative}.turn-status strong{letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:950}.turn-status span{color:#aebdce;font-size:10px;line-height:1.25}.turn-status.ready{border-color:#75e8ff73}.turn-status.moving{color:#ffe8a6;border-color:#ffd1666b}.turn-status.waiting{color:#e9ddff;border-color:#b58cff59}.turn-status.first-shot,.volley-status.first-shot{background:linear-gradient(135deg,#0b2a37f7,#202048f2);border-color:#75e8ffb3;box-shadow:inset 0 -2px #75e8ff21,0 8px 24px #0003}.turn-status.first-shot strong,.volley-status.first-shot .volley-status-title{color:#8feaff}.turn-status.first-shot span,.volley-status.first-shot .volley-status-guide{color:#eef8ff}.turn-status.landed,.turn-status.jackpot,.turn-status.penalty,.turn-status.mixed,.volley-status.landing{color:#eafff4;background:linear-gradient(135deg,#0e362bf7,#16273cf2);border-color:#70eaadad;box-shadow:inset 0 -2px #70eaad21,0 8px 24px #0003}.turn-status.jackpot,.volley-status.landing.jackpot{color:#fff0a6;border-color:#ffdd67d1}.turn-status.penalty,.volley-status.landing.penalty{color:#ffd3d3;border-color:#ff7c7cb8}.turn-status.mixed,.volley-status.landing.mixed{color:#f1e7ff;border-color:#be94ffb8}.turn-status.landed span,.turn-status.jackpot span,.turn-status.penalty span,.turn-status.mixed span,.volley-status.landing .volley-status-guide{color:#f1f6ff}.board-container{touch-action:none;flex:1;min-height:0;position:relative}.board-canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.course-intro-toast{z-index:6;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none;background:linear-gradient(145deg,#191d2bf0,#0d131ee8);border:1px solid #8ad2ff59;border-radius:13px;width:min(420px,100% - 24px);padding:13px 14px 12px;animation:2.2s both course-intro-life;position:absolute;top:12px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 12px 28px #0000005c,0 0 18px #5baeff1f}.course-intro-toast:after{content:"";transform-origin:0;background:linear-gradient(90deg,#75e8ff,#9d80ff,#ffd166);height:3px;animation:2.2s linear both course-intro-progress;position:absolute;bottom:0;left:0;right:0}.course-intro-kicker{color:#8fdcff;letter-spacing:.14em;text-transform:uppercase;font-size:8px;font-weight:950;display:block}.course-intro-toast>strong{text-align:center;margin-top:2px;font-size:20px;line-height:1.1;display:block}.course-intro-rules{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:10px;display:grid}.course-intro-rules>span{text-align:center;background:#ffffff0e;border:1px solid #ffffff1f;border-radius:9px;min-width:0;padding:6px 4px}.course-intro-rules small,.course-intro-rules b{display:block}.course-intro-rules small{color:#8fdcff;letter-spacing:.1em;text-transform:uppercase;font-size:7px;font-weight:950}.course-intro-rules b{color:#f6f8fc;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:9px;line-height:1.15;overflow:hidden}.course-intro-features{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.course-intro-features span{color:#e7ecf8;background:#ffffff0f;border:1px solid #ffffff21;border-radius:999px;padding:3px 6px;font-size:8px;font-weight:800}.course-intro-plan{color:#d7deeb;margin:7px 0 2px;font-size:9px;line-height:1.35}.course-intro-plan b{color:#ffe18a;font-weight:950}@keyframes course-intro-life{0%{opacity:0;transform:translate(-50%)translateY(-5px)scale(.98)}9%,84%{opacity:1;transform:translate(-50%)translateY(0)scale(1)}to{opacity:0;transform:translate(-50%)translateY(-3px)scale(.99)}}@keyframes course-intro-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.shot-controls{z-index:5;padding:8px 10px max(8px, env(safe-area-inset-bottom));border-top:1px solid var(--panel-border);background:#14171efa;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:stretch;gap:10px;transition:opacity .2s;display:grid}.shot-controls.disabled{opacity:.55}.shot-position-row{background:linear-gradient(135deg,#141e2cfa,#1b182bfa);border:1px solid #343946;border-radius:11px;grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 10px;padding:7px 8px;display:grid}.launch-position-control{grid-template-columns:minmax(108px,.32fr) minmax(120px,1fr);align-items:center;gap:3px 10px;min-width:0;display:grid}.launch-position-control>span:first-child strong,.launch-position-control>span:first-child small{display:block}.launch-position-control>span:first-child strong{color:#fff;letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:950}.launch-position-control>span:first-child small{color:var(--text-dim);margin-top:2px;font-size:9px}.launch-position-control input[type=range]{accent-color:#74ddff;cursor:ew-resize;width:100%;min-height:28px;margin:0}.launch-position-ends{color:#778497;letter-spacing:.04em;text-transform:uppercase;grid-column:2;justify-content:space-between;margin-top:-5px;font-size:7px;font-style:normal;font-weight:800;display:flex}.launch-position-ends i{font-style:normal}.prepared-shot-actions{grid-template-columns:repeat(2,minmax(86px,1fr));gap:6px;display:grid}.prepared-shot-actions button{color:#d6deeb;white-space:nowrap;background:#11151c;border:1px solid #424958;border-radius:9px;min-height:40px;padding:7px 11px;font-size:10px;font-weight:950}.prepared-shot-actions .submit-shot{color:#082d3b;background:#7be2ff;border-color:#6cd9ff;box-shadow:0 0 18px #4dcbff33}.prepared-shot-actions button:disabled{color:#747d8c;box-shadow:none;cursor:default;background:#171a20;border-color:#30343e}.prepared-shot-hint{color:#8895a7;grid-column:1/-1;font-size:8px;font-weight:750}.prepared-shot-hint.ready{color:#8ee8ff}.shot-control-group{grid-template-columns:minmax(90px,.52fr) minmax(0,1.48fr);align-items:center;gap:8px;min-width:0;display:grid}.shot-control-heading span,.shot-control-heading small{display:block}.shot-control-heading span{color:#fff;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900}.shot-control-heading small{color:var(--text-dim);margin-top:3px;font-size:9px;line-height:1.25}.power-options{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid}.power-options.super{grid-template-columns:repeat(6,minmax(0,1fr))}.power-control-content{gap:5px;min-width:0;display:grid}.power-options button{color:#b6bdc9;background:#101319;border:1px solid #343946;border-radius:9px;min-width:0;min-height:39px;padding:5px 2px;font-size:10px;font-weight:900}.power-options button span,.power-options button small{display:block}.power-options button small{color:#7f8b9e;margin-top:2px;font-size:7px;font-weight:800}.power-options button.active small{color:#241900b3}.power-options button.active{color:#241900;background:#ffd166;border-color:#ffd166;box-shadow:0 0 16px #ffd16633}.power-options button:disabled{cursor:default}.power-fine-tune{grid-template-columns:28px minmax(68px,1fr) 42px 28px;align-items:center;gap:4px;min-width:0;display:grid}.power-fine-tune input[type=range]{accent-color:#ffd166;cursor:ew-resize;width:100%;min-height:25px;margin:0}.power-fine-tune button,.power-fine-tune output{color:#eaf0fa;background:#11151c;border:1px solid #3b414e;border-radius:7px;place-items:center;min-width:0;min-height:27px;font-size:10px;font-weight:950;display:grid}.power-fine-tune output{color:#ffe28d;background:#ffd16614;border-color:#ffd1666b}.throw-style-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.throw-style-options button{color:#b6bdc9;white-space:nowrap;background:#101319;border:1px solid #343946;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:45px;padding:7px 6px;font-size:10px;font-weight:850;display:flex}.throw-style-options button b{color:#d9e5ff;background:#263048;border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;display:grid}.throw-style-options button.active{color:#fff;background:#4b67c247;border-color:#7b98ff;box-shadow:0 0 15px #5b8cff24}.throw-style-options button.burst.active{background:#b1541a40;border-color:#ffae4b}.throw-style-options button.burst.active b{color:#4c2c00;background:#ffbd55}.throw-style-options button.steady.active b{color:#082e42;background:#78dfff}.throw-style-options button.slow.active{background:#6541a647;border-color:#b58cff}.throw-style-options button.slow.active b{color:#32194f;background:#cba8ff}.throw-style-options button:disabled{cursor:default}@media (width<=430px){.course-intro-toast{padding:11px 10px 10px}.course-intro-rules{grid-template-columns:repeat(2,minmax(0,1fr))}.course-intro-rules>span{padding:4px}.course-intro-toast>strong{font-size:18px}.course-intro-plan{margin-top:5px}}.volley-status{z-index:4;color:#eafcff;pointer-events:none;background:linear-gradient(135deg,#0e1c28ed,#191e3ee6);border-top:1px solid #75e8ff47;border-bottom:1px solid #75e8ff47;flex:none;justify-content:center;align-items:center;gap:18px;min-width:0;min-height:56px;padding:8px 14px;display:flex;position:relative;box-shadow:0 8px 24px #0000002e}.volley-status-copy{text-align:left;min-width:0}.volley-status.moving{color:#ffe8a6;border-color:#ffd1668c;animation:.8s ease-in-out infinite alternate volley-status-pulse}.volley-status.reveal{color:#f4eaff;background:linear-gradient(135deg,#341953f5,#1e2658f0);border-color:#be94ffcc;flex-wrap:wrap;gap:6px 14px;animation:2s both volley-reveal-pop;overflow:hidden;box-shadow:0 0 34px #a467ff47,0 12px 30px #00000059}.volley-status.reveal:after{content:"";transform-origin:0;background:linear-gradient(90deg,#d5a6ff,#62dfff);height:3px;animation:2s linear both volley-reveal-timer;position:absolute;bottom:0;left:0;right:0}.volley-status-title{letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:900}.volley-status-guide{color:#aebdce;margin-top:3px;font-size:10px;line-height:1.3}.volley-player-pips{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:0;display:flex}.volley-player-pips span{color:#8d96a6;opacity:.52;background:#0000003d;border:1px solid;border-radius:999px;min-width:45px;padding:4px 7px;font-size:10px;font-weight:900}.volley-player-pips span.locked{color:#fff;opacity:1;background:#3fd9a22e;box-shadow:0 0 12px #3fd9a238}.volley-player-pips span.current{color:#fff;opacity:1;background:#ffffff1f;min-width:76px;animation:.75s ease-in-out infinite alternate volley-current-player;box-shadow:0 0 14px #6fdaff40}.volley-player-pips span strong{max-width:96px;font:inherit;text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.volley-player-pips span.revealed{background:#050a14b3;border-radius:11px;gap:1px;min-width:112px;padding:4px 8px;display:grid;box-shadow:0 0 14px #b98cff33}.volley-player-pips span.revealed small{letter-spacing:.025em;white-space:nowrap;font-size:8px;font-weight:1000}.volley-launch-flash{z-index:7;color:#fff;letter-spacing:.08em;text-align:center;text-shadow:0 0 12px #52dfff,0 0 36px #4977ff,0 4px #0006;pointer-events:none;font-size:clamp(24px,7vw,46px);font-weight:1000;animation:.85s cubic-bezier(.18,.82,.22,1) forwards volley-launch-pop;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.volley-launch-flash span{color:#ffe06b;letter-spacing:.2em;font-size:.56em;display:block}.volley-handoff{z-index:9;color:#fff;text-align:center;touch-action:auto;background:radial-gradient(circle at 50% 32%,#527aff3d,#0000 34%),linear-gradient(155deg,#111827 0%,#090d15 68%,#171027 100%);place-items:center;padding:20px;display:grid;position:absolute;inset:0}.volley-handoff-card{background:#121825e0;border:1px solid #8fdcff57;border-radius:20px;width:min(360px,92%);padding:24px 22px;box-shadow:0 22px 60px #00000080,0 0 34px #6484ff24}.volley-handoff-card span{color:#72efbb;letter-spacing:.13em;text-transform:uppercase;font-size:10px;font-weight:950;display:block}.volley-handoff-card strong{margin-top:7px;font-size:clamp(24px,7vw,36px);line-height:1.05;display:block}.volley-handoff-card p{color:#b8c5d8;margin:10px auto 18px;font-size:13px;line-height:1.45}.volley-handoff-card button{color:#07111d;background:linear-gradient(135deg,#83edff,#a790ff);border:1px solid #8edcff8a;border-radius:13px;width:100%;min-height:52px;padding:12px 16px;font-size:14px;font-weight:950;box-shadow:0 10px 26px #5d97ff40}@keyframes volley-launch-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.55)rotate(-4deg)}22%{opacity:1;transform:translate(-50%,-50%)scale(1.12)rotate(1deg)}72%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-60%)scale(1.08)}}@keyframes volley-status-pulse{0%{box-shadow:0 0 14px #ffd1661f,0 12px 30px #0000004d}to{box-shadow:0 0 28px #ffd1664d,0 12px 30px #0000004d}}@keyframes volley-current-player{0%{transform:scale(1)}to{transform:scale(1.045)}}@keyframes volley-reveal-pop{0%{opacity:.55;transform:scale(.98)}12%,86%{opacity:1;transform:scale(1)}to{opacity:.82;transform:scale(1.01)}}@keyframes volley-reveal-timer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.turn-banner{pointer-events:none;z-index:4;background:#0f1115d9;border:2px solid;border-radius:999px;padding:8px 18px;font-size:14px;font-weight:700;animation:1.2s ease-out forwards turn-flash;position:absolute;top:14px;left:50%;transform:translate(-50%)}@keyframes turn-flash{0%{opacity:0;transform:translate(-50%)translateY(-6px)}15%{opacity:1;transform:translate(-50%)translateY(0)}75%{opacity:1}to{opacity:0}}.overlay{z-index:6;background:#08090cb8;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.overlay-card{background:var(--panel);border:1px solid var(--panel-border);text-align:center;border-radius:18px;min-width:240px;padding:28px 32px}.overlay-title{color:var(--text-dim);margin-bottom:12px;font-size:16px;font-weight:700}.overlay-title.big{color:var(--text);font-size:24px}.overlay-points{flex-wrap:wrap;justify-content:center;gap:8px 16px;margin-bottom:10px;font-size:34px;font-weight:800;display:flex}.overlay-score-list{gap:7px;min-width:min(430px,82vw);margin-bottom:14px;display:grid}.overlay-score-row{text-align:left;background:#ffffff0b;border-radius:10px;grid-template-columns:minmax(92px,1fr) auto;align-items:center;gap:4px 12px;padding:9px 11px;display:grid}.overlay-score-name{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:7px;min-width:0;font-size:13px;font-weight:800;display:flex;overflow:hidden}.overlay-score-name i{border-radius:50%;flex:none;width:9px;height:9px}.overlay-score-row>strong{text-align:right;font-size:24px}.overlay-score-row small{color:var(--text-dim);text-align:right;font-size:11px}.round-end-card{max-width:calc(100vw - 24px)}.round-score-explainer{color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;margin:-4px 0 12px;font-size:10px;font-weight:850}.round-score-explainer span{color:#fff;padding:0 5px}.round-score-math{text-align:right;grid-template-columns:minmax(26px,auto) minmax(38px,auto) minmax(34px,auto);align-items:baseline;gap:7px;display:grid}.round-score-math small{font-size:13px;font-weight:750}.round-score-math b{font-size:18px;font-weight:950}.round-score-math strong{font-size:24px;font-weight:950}.overlay-score-row.gain .round-score-math b{color:#80e6a0}.overlay-score-row.penalty .round-score-math b{color:#ff8d8d}.overlay-score-row.even .round-score-math b{color:#c2c9d6}.round-score-progress{grid-column:1/-1;justify-self:end;margin-top:-3px;font-weight:750}.round-next-player{color:#dce8fb;justify-content:center;align-items:center;gap:8px;margin-top:2px;display:flex}.round-next-player small{color:#79e8ff;letter-spacing:.1em;text-transform:uppercase;background:#59c8e71a;border-radius:999px;padding:3px 6px;font-size:8px;font-weight:950}.round-next-player strong{font-size:12px}.round-next-button{color:#071622;background:linear-gradient(135deg,#79e8ff,#9eafff);border:1px solid #85dfff80;border-radius:11px;width:100%;margin-top:13px;padding:12px 16px;font-size:13px;font-weight:950;box-shadow:0 9px 24px #5193e13d}.round-next-button:focus-visible{outline-offset:2px;outline:3px solid #ffffffd9}.round-auto{color:#becbe0;margin-top:13px;font-size:10px;font-weight:800}.round-auto-progress{background:#ffffff14;border-radius:999px;height:4px;margin-top:7px;overflow:hidden}.round-auto-progress i{border-radius:inherit;transform-origin:0;background:linear-gradient(90deg,#79e8ff,#9eafff);width:100%;height:100%;animation-name:round-auto-countdown;animation-timing-function:linear;animation-fill-mode:both;display:block}@keyframes round-auto-countdown{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (width<=440px){.overlay-card.round-end-card{padding:22px 16px}.overlay-score-list{min-width:min(390px,82vw)}.overlay-score-row{grid-template-columns:minmax(76px,1fr) auto;gap:3px 8px}.round-score-math{gap:5px}}@media (width>=0){.desktop-setup-flow{display:none}.home-screen{touch-action:none;background:radial-gradient(circle at 50% -10%, #4174ff52, transparent 38%), radial-gradient(circle at 90% 92%, #39ddb91f, transparent 32%), var(--bg);gap:0;width:100%;max-width:none;height:100dvh;min-height:100dvh;padding:0;overflow:hidden}.mobile-setup-shell{width:100%;height:100%;min-height:0;padding:max(8px, env(safe-area-inset-top)) 14px max(9px, env(safe-area-inset-bottom));flex-direction:column;display:flex;overflow:hidden}.mobile-setup-header{grid-template-columns:42px 1fr auto;align-items:center;gap:7px;min-height:46px;display:grid}.mobile-setup-header>div{text-align:center;min-width:0}.mobile-setup-header>div b,.mobile-setup-header>div span{display:block}.mobile-setup-header>div b{color:#f8fbff;letter-spacing:.15em;font-size:16px;font-weight:1000}.mobile-setup-header>div span{color:#83e5ff;letter-spacing:.14em;text-transform:uppercase;margin-top:1px;font-size:7px;font-weight:900}.mobile-header-back,.mobile-header-home,.mobile-how-btn{color:#dce9ff;background:#0d141f9e;border:1px solid #87abe73d;border-radius:10px;height:34px;font-weight:900}.mobile-header-back{width:38px;font-size:18px}.mobile-header-home{color:#83e5ff;letter-spacing:.08em;place-items:center;width:38px;font-size:9px;text-decoration:none;display:grid}.mobile-how-btn{color:#94dfff;padding:0 9px;font-size:9px}.mobile-setup-notice{color:#f7d794;text-align:center;background:#92560c24;border:1px solid #f59e0b52;border-radius:9px;margin:3px 0;padding:6px 9px;font-size:8px}.mobile-setup-progress{color:#8ea1bd;letter-spacing:.08em;text-transform:uppercase;justify-content:center;align-items:center;gap:9px;min-height:27px;font-size:8px;font-weight:900;display:flex}.mobile-setup-progress>div{gap:4px;display:flex}.mobile-setup-progress i,.mobile-advanced-dots i{background:#ffffff1f;border-radius:999px;width:18px;height:3px;display:block}.mobile-setup-progress i.active,.mobile-advanced-dots i.active{background:linear-gradient(90deg,#70e0ff,#8aa5ff)}.mobile-setup-stage{flex-direction:column;flex:1;justify-content:center;gap:clamp(9px,1.8vh,15px);min-height:0;padding:4px 2px 2px;animation:.22s ease-out both mobile-stage-in;display:flex;overflow:hidden}@keyframes mobile-stage-in{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.mobile-stage-heading{text-align:center}.mobile-stage-heading>span{color:#79e7ff;letter-spacing:.15em;text-transform:uppercase;font-size:8px;font-weight:1000}.mobile-stage-heading h1,.mobile-stage-heading h2{color:#fff;letter-spacing:-.045em;margin:5px 0 0;font-size:clamp(25px,4.2vh,36px);line-height:1}.mobile-stage-heading p{color:#aebbd0;max-width:330px;margin:7px auto 0;font-size:clamp(10px,1.55vh,13px);line-height:1.35}.mobile-stage-heading.compact h2{font-size:clamp(24px,4vh,32px)}.mobile-welcome-mark{justify-content:center;align-items:center;gap:18px;height:clamp(68px,12vh,96px);font-size:28px;display:flex}.mobile-welcome-mark span{color:#fff;background:radial-gradient(circle at 35% 28%,#ff8b7d,#e23845 60%,#9a1529);border:3px solid #ffffffa3;border-radius:50%;place-items:center;width:clamp(54px,9vh,70px);height:clamp(54px,9vh,70px);display:grid;box-shadow:0 10px 24px #e238454d}.mobile-welcome-mark span:last-child{background:radial-gradient(circle at 35% 28%,#78dfff,#397fe7 60%,#21429c);box-shadow:0 10px 24px #397fe757}.mobile-welcome-mark i{color:#8ce9ff;font-size:23px;font-style:normal}.mobile-standard-card{color:#edfaff;text-align:left;background:linear-gradient(135deg,#2d8db83d,#4d53be33);border:1px solid #77e1ff6b;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;width:100%;max-width:410px;min-height:64px;margin:0 auto;padding:10px 12px;display:flex}.mobile-standard-card span,.mobile-standard-card b,.mobile-standard-card small{display:block}.mobile-standard-card b{font-size:12px}.mobile-standard-card small{color:#9eb3ca;margin-top:4px;font-size:8px;line-height:1.35}.mobile-standard-card strong{color:#8de9ff;text-transform:uppercase;flex:none;font-size:9px}.mobile-welcome-actions,.mobile-course-actions,.mobile-review-actions,.mobile-advanced-actions{grid-template-columns:minmax(0,1.6fr) minmax(100px,.7fr);gap:8px;width:100%;max-width:410px;margin:0 auto;display:grid}.mobile-course-actions{grid-template-columns:minmax(112px,.8fr) minmax(0,1.35fr)}.mobile-review-actions{grid-template-columns:minmax(100px,.65fr) minmax(0,1.4fr)}.mobile-advanced-actions{margin-top:auto}.mobile-primary-action,.mobile-secondary-action{border-radius:13px;min-height:48px;padding:10px 13px;font-size:13px;font-weight:950}.mobile-primary-action{color:#071722;background:linear-gradient(135deg,#7fe8ff,#9db0ff);border:1px solid #95edffb3;box-shadow:0 10px 24px #53a9e538}.mobile-primary-action b{margin-left:6px}.mobile-primary-action:disabled{opacity:.38}.mobile-secondary-action{color:#dce7fa;background:#0f1520b3;border:1px solid #91abe04d}.mobile-builder-link,.mobile-change-course{color:#a8b6cc;background:0 0;border:0;align-self:center;padding:4px 9px;font-size:10px;font-weight:850}.mobile-choice-stack{gap:clamp(7px,1.35vh,11px);width:100%;max-width:410px;margin:0 auto;display:grid}.mobile-choice-stack button{color:#eaf1fb;text-align:left;background:#111824c2;border:1px solid #87a2d340;border-radius:15px;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:clamp(66px,10vh,82px);padding:9px 12px;display:grid}.mobile-choice-stack button.active{background:#2d7ea12e;border-color:#73e2ffad}.mobile-choice-stack button i{color:#8ae9ff;background:#64cded1a;border-radius:12px;place-items:center;width:40px;height:40px;font-size:20px;font-style:normal;display:grid}.mobile-choice-stack button span,.mobile-choice-stack button strong,.mobile-choice-stack button small{min-width:0;display:block}.mobile-choice-stack button strong{font-size:14px}.mobile-choice-stack button small{color:#9caac0;margin-top:3px;font-size:9px}.mobile-choice-stack button>b{color:#7edfff;font-size:17px}.mobile-mode-footnote{color:#8393aa;text-align:center;width:100%;max-width:410px;margin:-2px auto 0;font-size:8px;line-height:1.35}.mobile-player-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;max-width:410px;margin:0 auto;display:grid}.mobile-player-choices button{color:#eef5ff;background:#111824bd;border:1px solid #87a2d340;border-radius:17px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:clamp(112px,18vh,150px);display:flex}.mobile-player-choices button.active{background:linear-gradient(160deg,#3495bf4d,#4d52b838);border-color:#7be4ff}.mobile-player-choices strong{font-size:clamp(38px,7vh,56px);line-height:1}.mobile-player-choices span{color:#fff;text-transform:uppercase;font-size:11px;font-weight:900}.mobile-player-choices small{color:#8fa2bd;font-size:8px}.mobile-ai-difficulty{gap:5px;width:100%;max-width:410px;margin:0 auto;display:grid}.mobile-ai-difficulty>span{color:#91a4bd;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-size:8px;font-weight:950}.mobile-ai-difficulty>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.mobile-ai-difficulty button{color:#b8c7db;text-transform:capitalize;background:#111824b8;border:1px solid #84a2d33d;border-radius:9px;min-height:34px;font-size:9px;font-weight:900}.mobile-ai-difficulty button.active{color:#fff;background:#2e91b947;border-color:#78e3ff}.mobile-player-continue{width:100%;max-width:410px;margin:0 auto}.mobile-timing-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:100%;max-width:410px;margin:0 auto;display:grid}.mobile-timing-choices button{color:#edf5ff;text-align:center;background:#111824c2;border:1px solid #87a2d340;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:clamp(210px,32vh,265px);padding:14px 11px;display:flex;position:relative}.mobile-timing-choices button.active,.mobile-timing-choices button.recommended{background:linear-gradient(160deg,#2887b240,#4648aa33);border-color:#70e1ff8f}.mobile-timing-choices em{color:#061b25;letter-spacing:.08em;background:#7ee7ff;border-radius:999px;padding:4px 6px;font-size:7px;font-style:normal;font-weight:1000;position:absolute;top:10px}.mobile-timing-choices i{color:#86eaff;background:#63cdef1a;border-radius:50%;place-items:center;width:52px;height:52px;font-size:24px;font-style:normal;display:grid}.mobile-timing-choices strong{font-size:16px}.mobile-timing-choices small{color:#9eacc0;font-size:9px;line-height:1.4}.mobile-timing-choices b{color:#8fe9ff;text-transform:uppercase;font-size:9px}.mobile-target-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;max-width:410px;margin:0 auto;display:grid}.mobile-target-choices button{color:#edf5ff;text-align:center;background:#111824c2;border:1px solid #87a2d340;border-radius:17px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:clamp(150px,24vh,195px);padding:18px 8px 12px;display:flex;position:relative}.mobile-target-choices button.active,.mobile-target-choices button.recommended{background:linear-gradient(160deg,#2887b242,#4648aa33);border-color:#70e1ff94}.mobile-target-choices em{color:#061b25;letter-spacing:.06em;background:#7ee7ff;border-radius:999px;padding:4px 5px;font-size:6px;font-style:normal;font-weight:1000;position:absolute;top:9px}.mobile-target-choices strong{color:#fff;font-size:clamp(34px,6vh,48px);line-height:1}.mobile-target-choices span{color:#fff;font-size:10px;font-weight:950}.mobile-target-choices small{color:#93a5bd;font-size:8px}.mobile-target-choices b{color:#8fe9ff;text-transform:uppercase;margin-top:5px;font-size:8px}.mobile-target-note{color:#8597ae;text-align:center;align-self:center;font-size:8px}.mobile-stage-heading.course-heading-mobile{text-align:left;grid-template-columns:1fr auto;align-items:end;gap:3px 8px;display:grid}.course-heading-mobile>span{grid-column:1/-1}.course-heading-mobile h2{margin:0;font-size:clamp(24px,4vh,31px)}.course-heading-mobile select{color:#dff6ff;background:#192536;border:1px solid #78aede4d;border-radius:10px;max-width:150px;height:34px;padding:0 25px 0 9px;font-size:9px;font-weight:850}.mobile-course-browser{flex-direction:column;flex:1;justify-content:center;gap:10px;width:100%;min-height:0;display:flex}.mobile-course-shelf{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:8px;width:100%;display:grid}.mobile-course-card{color:#dce9f8;text-align:left;background:#0f1723b8;border:1px solid #80a5dc3d;border-radius:13px;flex-direction:column;align-items:stretch;gap:7px;min-width:0;padding:6px;transition:border-color .14s,transform .14s,background .14s;display:flex;box-shadow:0 9px 20px #0000002e}.mobile-course-card.selected{background:linear-gradient(160deg,#2e91b952,#4a4dae33);border-color:#83e8ff;transform:translateY(-2px);box-shadow:0 0 0 2px #83e8ff21,0 10px 24px #00000040}.mobile-course-card .map-thumb-canvas{aspect-ratio:112/122;object-fit:contain;border:1px solid #ffffffa6;border-radius:8px;max-width:none;display:block;width:100%!important;height:auto!important}.mobile-course-card span,.mobile-course-card strong,.mobile-course-card small{min-width:0;display:block}.mobile-course-card strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.15;overflow:hidden}.mobile-course-card small{color:#9fb0c5;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;margin-top:3px;font-size:7px;font-weight:750;overflow:hidden}.mobile-course-pager{grid-template-columns:42px 1fr 42px;align-items:center;gap:8px;width:min(230px,100%);margin:0 auto;display:grid}.mobile-course-pager button{color:#8de9ff;background:#0f1723bd;border:1px solid #80a5dc47;border-radius:10px;height:34px;font-size:22px}.mobile-course-pager button:disabled{opacity:.3}.mobile-course-pager span{color:#aebfd2;text-align:center;text-transform:uppercase;font-size:9px;font-weight:850}.mobile-no-course{color:#aebbd0;text-align:center;padding:30px}.mobile-review-card{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;min-height:0;display:flex}.mobile-review-card .map-thumb-canvas{border:2px solid #ffffffad;border-radius:10px;max-width:min(100%,245px);max-height:clamp(190px,33vh,265px);display:block;box-shadow:0 14px 30px #0000004d;width:auto!important;height:auto!important}.mobile-review-pills{flex-wrap:wrap;justify-content:center;gap:5px;max-width:410px;display:flex}.mobile-review-pills span{color:#bceeff;background:#3e9bbc17;border:1px solid #77e1ff2e;border-radius:999px;padding:5px 8px;font-size:8px;font-weight:850}.mobile-how-steps{gap:7px;width:100%;max-width:410px;margin:0 auto;display:grid}.mobile-how-steps article{background:#111824b8;border:1px solid #87a2d338;border-radius:13px;grid-template-columns:24px 34px minmax(0,1fr);align-items:center;gap:8px;min-height:63px;padding:8px 10px;display:grid}.mobile-how-steps article>b{color:#08202c;background:#80e7ff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:9px;display:grid}.mobile-how-steps article>i{color:#ffe18a;text-align:center;font-size:22px;font-style:normal}.mobile-how-steps span,.mobile-how-steps strong,.mobile-how-steps small{display:block}.mobile-how-steps strong{color:#fff;font-size:12px}.mobile-how-steps small{color:#9eaec2;margin-top:3px;font-size:8px;line-height:1.3}.mobile-rule-tip{color:#b9c7d9;text-align:center;background:#ffffff0b;border-radius:10px;max-width:410px;margin:0 auto;padding:8px 10px;font-size:9px}.mobile-rule-tip b{color:#ffe18a}.mobile-setup-stage.howto>.mobile-primary-action{width:100%;max-width:410px;margin:0 auto}.mobile-setup-stage.advanced{justify-content:flex-start;padding-top:9px}.advanced-heading{position:relative}.advanced-heading h2{font-size:clamp(23px,3.7vh,30px)}.mobile-advanced-dots{justify-content:center;gap:4px;margin-top:8px;display:flex}.mobile-advanced-groups{gap:clamp(7px,1.2vh,10px);width:100%;max-width:410px;margin:0 auto;display:grid}.mobile-advanced-groups label{gap:5px;display:grid}.mobile-advanced-groups label>span{color:#9fb0c7;letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:950}.mobile-advanced-groups label>div{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:5px;display:grid}.mobile-advanced-groups label>div.four-up{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row}.mobile-advanced-groups label>div.five-up{grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:row}.mobile-advanced-groups button{color:#ccd8e9;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap;background:#111824b8;border:1px solid #84a2d33d;border-radius:10px;min-width:0;min-height:clamp(37px,5.7vh,46px);padding:6px 5px;font-size:9px;font-weight:850;overflow:hidden}.mobile-advanced-groups button.active{color:#fff;background:linear-gradient(135deg,#2e91b95c,#5155be47);border-color:#78e3ff;box-shadow:inset 0 0 0 1px #80e8ff24}.mobile-advanced-groups .mobile-custom-target{grid-template-columns:1fr 112px;align-items:center;gap:10px;display:grid}.mobile-custom-target input{color:#fff;text-align:center;background:#0e1622e0;border:1px solid #78e3ff6b;border-radius:10px;width:100%;height:40px;padding:0 10px;font-size:14px;font-weight:900}@media (height<=650px){.mobile-setup-shell{padding-top:max(4px, env(safe-area-inset-top));padding-bottom:max(5px, env(safe-area-inset-bottom))}.mobile-setup-header{min-height:39px}.mobile-setup-header>div span{display:none}.mobile-setup-progress{min-height:20px}.mobile-setup-stage{gap:7px}.mobile-stage-heading h1,.mobile-stage-heading h2{font-size:24px}.mobile-welcome-mark{height:58px}.mobile-welcome-mark span{width:48px;height:48px}.mobile-standard-card{min-height:54px}.mobile-choice-stack button{min-height:58px}.mobile-player-choices button{min-height:128px}.mobile-timing-choices button{min-height:180px}.mobile-target-choices button{min-height:135px}.mobile-primary-action,.mobile-secondary-action{min-height:42px}.mobile-review-card .map-thumb-canvas{max-height:195px}.mobile-course-browser{gap:6px}.mobile-course-shelf{gap:5px}.mobile-course-card{gap:4px;padding:4px}}}@media (width<=620px){.shot-controls{grid-template-columns:1fr;gap:6px}.shot-position-row{grid-template-columns:1fr}.prepared-shot-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.shot-control-group{grid-template-columns:minmax(92px,.46fr) minmax(0,1.54fr)}.selected-course-card{grid-template-columns:190px minmax(0,1fr);gap:12px}.design-choice-grid.layouts,.design-choice-grid.obstacles{grid-template-columns:repeat(2,minmax(0,1fr))}.design-choice-grid.obstacles .design-choice:last-child{grid-column:span 2}.palette-choice-row{grid-template-columns:repeat(3,minmax(0,1fr))}.creator-preview{grid-template-columns:1fr}.creator-map-preview{order:-1}.score-value-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.creator-map-preview .map-thumb-canvas{max-width:100%;height:auto!important}.creator-share-heading{flex-direction:column;align-items:flex-start}.creator-share-buttons{width:100%}.creator-share-buttons .btn{flex:1}.import-row{grid-template-columns:1fr}.creator-generation-status{flex-direction:column;align-items:stretch}.creator-generation-status button{width:100%}.workshop-heading{flex-direction:column;align-items:flex-start}.workshop-history-actions{align-self:stretch}.workshop-history-actions button{flex:1}.workshop-tabs{width:100%}.workshop-tabs button{flex:1}.workshop-body{grid-template-columns:1fr;align-items:stretch}.workshop-panel{justify-content:flex-start}.compact-style-card{grid-template-columns:1fr}.creator-save-dock{grid-template-columns:1fr 1.45fr;gap:7px;width:calc(100% - 14px);padding-left:9px}.creator-save-summary{display:none}.creator-save-dock .btn,.creator-save-dock .play-btn{min-width:0;padding-left:9px;padding-right:9px}}@media (width<=520px){.map-grid.course-list{scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 2px 10px;scroll-padding-left:2px;display:flex;overflow-x:auto}.map-grid.course-list::-webkit-scrollbar{display:none}.course-list .map-card-wrap{scroll-snap-align:start;flex:0 0 min(82vw,300px)}.course-list .course-empty{flex:1 0 100%}}@media (width<=390px){.shot-controls{grid-template-columns:1fr;gap:6px}.shot-control-group{grid-template-columns:minmax(86px,.46fr) minmax(0,1.54fr)}.shot-control-heading small{margin-top:2px}.power-options button{min-height:36px;font-size:9px}.throw-style-options button{min-height:41px;padding:5px 4px}.throw-style-options button b{width:20px;height:20px}.throw-style-options button span{font-size:9px}.selected-course-card{grid-template-columns:1fr}.selected-course-preview{max-width:260px}.map-card-copy{padding-right:0}.creator-screen{padding-left:12px;padding-right:12px}.creator-generate-row{flex-direction:column;align-items:stretch}.magic-btn{width:100%}.control-grid{grid-template-columns:1fr}.hud{gap:4px;padding-left:5px;padding-right:5px}.hud-player{gap:4px;padding:4px}.hud-pucks{display:none}.volley-status{gap:8px;padding:7px 9px}.volley-status-guide{max-width:220px}.turn-status{text-align:left;flex-direction:column;align-items:flex-start;gap:1px;padding:6px 9px}.volley-player-pips span{min-width:38px;padding:4px 5px}.setup-play-dock{gap:8px;width:calc(100% - 14px);padding-left:11px}.setup-play-dock .play-btn{min-width:100px;padding-left:13px;padding-right:13px}}@media (width<=620px){.game-screen .hud{padding:4px 5px;padding-top:max(4px, env(safe-area-inset-top));gap:4px}.game-screen .hud-player-list{gap:2px 4px}.game-screen .hud-player{border-radius:7px;gap:4px;padding:2px 3px}.game-screen .hud-name,.game-screen .hud-score small,.game-screen .hud-pucks{display:none}.game-screen .hud-dot{width:8px;height:8px}.game-screen .hud-score strong{font-size:17px;line-height:1}.game-screen .hud-meta{font-size:8px;line-height:1.15}.game-screen .hud-round{font-size:10px}.game-screen .hud-help,.game-screen .hud-sound{width:24px;height:24px;font-size:12px}.game-screen .hud-help{border-radius:999px;width:34px;font-size:7px}.game-screen .hud-exit{padding:3px 4px;font-size:15px}.game-screen .turn-status,.game-screen .volley-status{text-align:center;justify-content:center;gap:4px;min-height:28px;padding:4px 8px}.game-screen .turn-status{flex-direction:row;align-items:center}.game-screen .turn-status strong,.game-screen .volley-status-title{font-size:9px;line-height:1.15}.game-screen .turn-status span,.game-screen .volley-status-guide,.game-screen .volley-player-pips{display:none}.game-screen .turn-status.first-shot,.game-screen .volley-status.first-shot{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;min-height:52px;padding:6px 9px}.game-screen .turn-status.first-shot span,.game-screen .volley-status.first-shot .volley-status-guide{max-width:none;font-size:8px;line-height:1.35;display:block}.game-screen .remote-session-status span{text-overflow:ellipsis;white-space:nowrap;max-width:52vw;font-size:8px;display:block;overflow:hidden}.game-screen .board-container{flex:auto}.game-screen .remote-game-chip{max-width:calc(100% - 12px);padding:4px 7px;font-size:8px;top:6px;right:6px}.game-screen .course-intro-toast{width:calc(100% - 12px);padding:7px 9px 8px;top:6px}.game-screen .course-intro-toast>strong{margin-top:1px;font-size:15px}.game-screen .course-intro-rules,.game-screen .course-intro-features,.game-screen .course-intro-plan{display:none}.game-screen .shot-controls{padding:4px 6px max(4px, env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 6px}.game-screen .shot-position-row{border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:3px 6px;padding:3px 5px}.game-screen .launch-position-control{grid-template-columns:auto minmax(88px,1fr);gap:3px 6px}.game-screen .launch-position-control>span:first-child strong{font-size:8px}.game-screen .launch-position-control>span:first-child small,.game-screen .launch-position-ends,.game-screen .prepared-shot-hint{display:none}.game-screen .launch-position-control input[type=range]{min-height:26px}.game-screen .prepared-shot-actions{grid-template-columns:repeat(2,minmax(68px,1fr));gap:4px}.game-screen .prepared-shot-actions button{border-radius:7px;min-height:30px;padding:4px 6px;font-size:8px}.game-screen .shot-control-group{grid-template-columns:1fr;align-content:start;gap:2px}.game-screen .shot-control-heading span{font-size:8px;line-height:1}.game-screen .shot-control-heading small{display:none}.game-screen .power-options,.game-screen .throw-style-options{gap:3px}.game-screen .power-options button,.game-screen .throw-style-options button{border-radius:7px;min-height:30px;padding:3px 2px;font-size:8px;line-height:1.05}.game-screen .power-options button{min-width:0}.game-screen .power-options button small{margin-top:1px;font-size:6px}.game-screen .power-fine-tune{grid-template-columns:23px minmax(45px,1fr) 34px 23px;gap:2px}.game-screen .power-fine-tune button,.game-screen .power-fine-tune output{min-height:24px;font-size:8px}.game-screen .power-fine-tune input[type=range]{min-height:24px}.game-screen .throw-style-options button{white-space:normal;gap:0}.game-screen .throw-style-options button b{display:none}.game-screen .throw-style-options button span{font-size:8px}}.overlay-points .p0{color:var(--p0)}.overlay-points .p1{color:var(--p1)}.overlay-points .sep{color:var(--text-dim);margin:0 8px;font-weight:400}.overlay-hint{color:var(--text-dim);font-size:13px}.match-end-overlay{overflow:hidden}.match-confetti{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.match-confetti i{opacity:.9;border-radius:2px;width:8px;height:17px;animation:3s linear infinite match-confetti-fall;position:absolute;top:-24px}.match-confetti i.shape-1{border-radius:50%;width:11px;height:11px}.match-confetti i.shape-2{border-radius:5px;width:14px;height:7px}@keyframes match-confetti-fall{0%{transform:translateY(-10vh)rotate(0)}to{transform:translate(34px,112vh)rotate(620deg)}}.match-end-card{z-index:1;background:radial-gradient(circle at 50% -5%, #5b8cff40, transparent 42%), var(--panel);border-color:#ffffff29;width:min(92vw,560px);max-height:calc(100% - 24px);position:relative;overflow-y:auto;box-shadow:0 22px 70px #00000094}.match-end-kicker{color:#bac8ea;letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:900}.match-winner-medallion{color:#fff0a8;background:linear-gradient(145deg,#2d3444,#11141b);border:4px solid;border-radius:50%;place-items:center;width:72px;height:72px;margin:13px auto 10px;animation:.52s cubic-bezier(.2,1.45,.45,1) both match-winner-pop;display:grid;box-shadow:0 0 0 5px #ffffff12,0 10px 30px #00000061}.match-winner-medallion span{filter:drop-shadow(0 3px 5px #00000073);font-size:34px}@keyframes match-winner-pop{0%{opacity:0;transform:scale(.45)rotate(-16deg)}to{opacity:1;transform:scale(1)rotate(0)}}.match-end-card .overlay-title.big{letter-spacing:-.02em;margin-bottom:5px;font-size:30px}.match-finish-summary{color:#cad1de;margin-bottom:16px;font-size:13px;line-height:1.4}.final-standing-list{gap:7px;margin:0 0 18px;padding:0;list-style:none;display:grid}.final-standing-row{text-align:left;background:#ffffff0b;border:1px solid #0000;border-radius:12px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;min-height:54px;padding:7px 11px;display:grid}.final-standing-row.winner{background:linear-gradient(90deg,#f6c44524,#ffffff0e);border-color:#f6c4456b;box-shadow:inset 3px 0 #f6c445}.final-standing-place{color:#9da8bc;text-transform:uppercase;font-size:12px;font-weight:900}.final-standing-row.winner .final-standing-place{color:#ffe080}.final-standing-player{align-items:center;gap:9px;min-width:0;display:flex}.final-standing-player i{border-radius:50%;flex:none;width:11px;height:11px;box-shadow:0 0 0 3px #ffffff12}.final-standing-player b{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.final-standing-result{justify-items:end;min-width:66px;display:grid}.final-standing-result strong{font-size:22px;font-weight:950;line-height:1}.final-standing-result small{color:var(--text-dim);text-transform:uppercase;margin-top:3px;font-size:9px;font-weight:800}.final-standing-row.winner .final-standing-result small{color:#ffe080}.match-end-hint{color:var(--text-dim);margin:-5px 0 16px;font-size:12px;line-height:1.4}.match-end-card .overlay-actions{flex-wrap:wrap}.match-end-card .overlay-actions .btn{flex:130px}.match-end-card .surprise-next{color:#f0ebff;background:#6f55da2e;border-color:#9980ffb3}@media (height<=680px),(width<=390px){.overlay-card.match-end-card{padding:18px 16px}.match-winner-medallion{border-width:3px;width:52px;height:52px;margin:8px auto 6px}.match-winner-medallion span,.match-end-card .overlay-title.big{font-size:25px}.match-finish-summary{margin-bottom:11px}.final-standing-list{gap:5px;margin-bottom:12px}.final-standing-row{min-height:46px}.match-end-hint{margin-top:-2px;margin-bottom:11px}}@media (prefers-reduced-motion:reduce){.match-confetti i,.match-winner-medallion{animation:none}}.overlay-actions{justify-content:center;gap:10px;display:flex}.btn{border:1px solid var(--panel-border);color:var(--text);background:0 0;border-radius:12px;padding:12px 20px;font-size:15px;font-weight:700}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.fatal-error{height:100%;color:var(--text);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}@media (width<=620px){.remote-lobby{width:100%;max-width:none;height:100dvh;min-height:100dvh;padding:max(46px, calc(38px + env(safe-area-inset-top))) 12px max(8px, env(safe-area-inset-bottom));touch-action:none;background:radial-gradient(circle at 50% -10%, #3e76ff57, transparent 35%), radial-gradient(circle at 90% 95%, #54d8b61a, transparent 32%), var(--bg);flex-direction:column;display:flex;overflow:hidden}.remote-back{top:max(8px, env(safe-area-inset-top));width:34px;height:34px;font-size:17px;left:12px}.remote-kicker{letter-spacing:.13em;text-align:center;font-size:8px}.remote-lobby h1{text-align:center;margin:3px 0 4px;font-size:clamp(23px,3.7vh,29px);line-height:1}.remote-intro{color:#9eabc0;text-align:center;max-width:410px;margin:0 auto 8px;font-size:9px;line-height:1.3}.remote-entry-tabs{border-radius:11px;margin-bottom:7px;padding:3px}.remote-entry-tabs button{min-height:35px;padding:6px;font-size:10px}.remote-card,.room-code-card{border-radius:13px;margin-bottom:7px;padding:10px;box-shadow:0 10px 28px #0000002b}.remote-create-card label{margin-bottom:5px;font-size:9px}.remote-create-card input{border-radius:9px;margin-bottom:7px;padding:10px 11px;font-size:14px}.remote-name-heading>button{padding:5px 7px;font-size:8px}.remote-name-heading+input{margin-top:6px}.remote-name-fallback{margin:-1px 0 7px;font-size:8px}.remote-create-card .play-btn{border-radius:11px;width:100%;min-height:43px;padding:9px;font-size:13px}.remote-rules-card{display:none}.remote-join-guide{border:0;margin:0 0 7px;padding:0}.remote-join-guide>header,.remote-join-rule-summary{display:none}.remote-join-guide ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.remote-join-guide li{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:52px;padding:5px 3px;display:flex}.remote-join-guide li>b{width:22px;height:22px;font-size:9px}.remote-join-guide li strong{font-size:7px}.remote-join-guide li small{display:none}.remote-optional-name{margin-bottom:7px}.remote-optional-name summary{min-height:38px;padding-top:5px;padding-bottom:5px}.remote-optional-name summary span{font-size:9px}.remote-optional-name summary small{font-size:7px}.remote-optional-name>label{margin:7px 8px 4px;font-size:8px}.remote-optional-name-edit{gap:5px;padding:0 8px 8px}.remote-create-card .remote-optional-name-edit>input{margin:0;padding:7px 8px;font-size:12px}.remote-optional-name-edit>button{min-height:34px;padding:6px 7px;font-size:8px}.remote-challenge-card{border-radius:14px;grid-template-columns:minmax(0,1fr) 112px;gap:8px;margin-bottom:7px;padding:10px}.remote-challenge-kicker{font-size:6px}.remote-challenge-copy h2{margin:4px 0;font-size:19px}.remote-challenge-copy p{font-size:8px;line-height:1.3}.remote-challenge-pills{gap:3px;margin-top:6px}.remote-challenge-pills span{padding:3px 5px;font-size:6px}.remote-challenge-copy>a{display:none}.remote-challenge-preview{justify-self:stretch;max-height:112px}.remote-challenge-preview .map-thumb-canvas{object-fit:contain;max-height:112px;display:block}.remote-challenge-preview>span{padding:3px 4px;font-size:6px;bottom:4px;left:4px;right:4px}.remote-challenge-lineup{grid-column:1/-1;gap:5px;padding-top:0}.remote-challenge-lineup>span{gap:2px;min-width:39px}.remote-challenge-lineup i{width:25px;height:25px;font-size:8px}.remote-challenge-lineup small{max-width:55px;font-size:6px}.room-code-card{grid-template-columns:1fr auto;gap:2px 10px;min-height:69px;padding:9px 11px}.room-code-card span{font-size:7px}.room-code-card strong{font-size:22px}.room-code-card button{min-height:42px;padding:8px 10px;font-size:10px}.remote-invite-card label{margin-bottom:5px;font-size:7px}.remote-invite-card>div{gap:5px}.remote-invite-card button,.remote-invite-card .remote-text-invite{min-height:36px;padding:6px 4px;font-size:8px}.remote-invite-card .remote-invite-url,.remote-invite-card>small{display:none}.remote-card-title{margin-bottom:6px;font-size:9px}.remote-seats{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.remote-seat{border-radius:9px;gap:6px;min-height:37px;padding:6px 7px}.remote-seat-dot{width:8px;height:8px}.remote-seat strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.remote-seat small{font-size:7px}.remote-waiting,.remote-storage-warning{border-radius:9px;padding:8px 9px;font-size:8px}.remote-error{right:12px;bottom:max(8px, env(safe-area-inset-bottom));z-index:5;margin:0;padding:8px 10px;font-size:9px;position:absolute;left:12px;box-shadow:0 8px 24px #00000059}.is-create .remote-create-card,.is-code-join .remote-join-card{margin-top:1px}.is-guest-invite .remote-intro,.is-guest-invite>.remote-card:not(.remote-guest-join-card):not(.remote-rules-card){display:none}.is-guest-invite .remote-guest-join-card{margin-bottom:0}.is-room-waiting .remote-intro{margin-bottom:6px}.is-room-waiting .remote-invite-card,.is-room-waiting>.remote-card:not(.remote-invite-card):not(.remote-rules-card){padding:8px 9px}@media (height<=680px){.remote-lobby{padding-top:max(40px, calc(34px + env(safe-area-inset-top)))}.remote-lobby h1{font-size:21px}.remote-intro{margin-bottom:5px;font-size:8px}.remote-card,.room-code-card,.remote-challenge-card{margin-bottom:5px}.remote-challenge-copy h2{font-size:17px}.remote-challenge-preview,.remote-challenge-preview .map-thumb-canvas{max-height:92px}.remote-join-guide li{min-height:45px}.remote-seats{gap:3px}.remote-seat{min-height:32px;padding-top:4px;padding-bottom:4px}}}.puck-setup-step{background:linear-gradient(145deg,#4570dc14,#714dbe14)}.puck-choice-block{gap:6px;display:grid}.puck-choice-block>span{color:#91a0b8;letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:900}.puck-size-options .seg{text-align:left;align-content:center;gap:3px;min-height:58px;display:grid}.puck-size-options strong,.puck-size-options small{display:block}.puck-size-options strong{font-size:13px}.puck-size-options small{color:var(--text-dim);font-size:9px}.puck-size-options .active small{color:#ffffffb8}.puck-type-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.puck-type-choice{min-width:0;min-height:72px;color:var(--text);text-align:left;background:#11151c;border:1px solid #343b49;border-radius:11px;grid-template-columns:31px minmax(0,1fr);align-items:center;gap:8px;padding:10px;display:grid}.puck-type-choice>b{color:#e8f0ff;background:#293246;border-radius:50%;place-items:center;width:31px;height:31px;font-size:16px;display:grid}.puck-type-choice strong,.puck-type-choice small{display:block}.puck-type-choice strong{font-size:12px}.puck-type-choice small{color:#8f9aab;margin-top:3px;font-size:8px;line-height:1.25}.puck-type-choice.active{background:#4668be45;border-color:#75a0ff;box-shadow:inset 0 0 0 1px #75a0ff2e}.puck-type-choice.active small{color:#becbed}.puck-type-choice.super-bouncy.active>b{color:#bdfcff;background:#20566b;box-shadow:0 0 13px #6bedff6b}.puck-type-choice.ice.active>b{color:#dffaff;background:#28577a}.puck-type-choice.control.active>b{color:#ffe6a6;background:#675329}@media (width<=390px){.puck-type-choice{grid-template-columns:26px minmax(0,1fr);min-height:67px;padding:8px}.puck-type-choice>b{width:26px;height:26px;font-size:14px}}
