:root{--ink:#0e1a2b;--ink2:#1b2b42;--paper:#fff6e5;--coral:#ff5b45;--violet:#8b6cff;--gold:#ffc23d;--sea:#1982b4;--muted:#a9b6c8;--panel:#0c1626cc;--line:#ffffff1f;--spring:cubic-bezier(.2, .9, .25, 1.15);--hand:"Caveat", "Bradley Hand", cursive;--display:"Bowlby One", "Arial Black", system-ui, sans-serif;--ui:"Figtree", system-ui, -apple-system, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--ink);height:100%;color:var(--paper);font-family:var(--ui);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;font-weight:600}body{overscroll-behavior:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.hub{-webkit-tap-highlight-color:transparent;white-space:nowrap;min-width:44px;max-width:44px;height:44px;color:var(--paper);font:800 14px var(--ui);-webkit-backdrop-filter:blur(10px);background:#0c16268c;border-radius:999px;align-items:center;gap:0;padding:0 10px;text-decoration:none;transition:max-width .5s cubic-bezier(.2,.9,.25,1.15),gap .3s,background .2s,transform .2s;display:inline-flex;overflow:hidden;box-shadow:0 6px 20px -6px #0009}.oftr-mark{flex:none;width:24px;height:24px}.hub-label{opacity:0;transition:opacity .2s}@media (hover:hover){.hub:hover{background:#0c1626d1;gap:8px;max-width:240px}.hub:hover .hub-label{opacity:1}}.hub:focus-visible{outline:2px solid var(--gold);outline-offset:3px;gap:8px;max-width:240px}.hub:focus-visible .hub-label{opacity:1}.hub:active{transform:scale(.94)}.home>.hub{top:max(12px, env(safe-area-inset-top));z-index:30;position:absolute;left:12px}.sheet .hub{max-width:none;box-shadow:none;color:var(--muted);background:#ffffff0f;justify-self:center;gap:8px;padding:0 16px}.sheet .hub .hub-label{opacity:1}.topbar{z-index:3;top:max(12px, env(safe-area-inset-top));gap:8px;display:flex;position:absolute;left:12px}.back{-webkit-tap-highlight-color:transparent;cursor:pointer;height:44px;color:var(--paper);font:800 14px var(--ui);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .2s var(--spring), background .2s;background:#0c16268c;border:0;border-radius:999px;align-items:center;padding:0 16px;display:inline-flex;box-shadow:0 6px 20px -6px #0009}@media (hover:hover){.back:hover{background:#0c1626d1;transform:translateY(-1px)}}.back:active{transform:scale(.94)}h1,h2{margin:0}.muted{color:var(--muted)}.row{gap:10px;display:flex}.btn{isolation:isolate;background:linear-gradient(160deg, #ff9a7a, var(--coral) 45%, #e8402b);color:#fff;letter-spacing:.01em;text-shadow:0 1px #78140059;min-height:52px;transition:transform .22s var(--spring), box-shadow .2s, filter .2s;border:0;border-radius:18px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:17px;font-weight:900;text-decoration:none;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 4px #b8321f,0 12px 30px -6px #ff5b458c,inset 0 1px #ffffff73}.btn:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(105deg,#0000 35%,#ffffff80 50%,#0000 65%);transition:transform .7s;position:absolute;inset:0;transform:translate(-120%)}@media (hover:hover){.btn:not(:disabled):hover{filter:brightness(1.06);transform:translateY(-2px)}.btn:not(:disabled):hover:after{transform:translate(120%)}}.btn:active:not(:disabled){transition-duration:80ms;transform:translateY(3px)scale(.97);box-shadow:0 1px #b8321f,0 4px 12px -4px #ff5b4580}.btn:disabled{opacity:.45}.btn.big{width:100%;min-height:60px;font-size:19px}.btn.huge{width:100%;min-height:78px;font-family:var(--display);letter-spacing:.02em;border-radius:24px;place-content:center;gap:2px;font-size:26px;font-weight:400;display:grid;box-shadow:0 5px #b8321f,0 18px 44px -8px #ff5b45bf,inset 0 1px #ffffff80}.btn.huge small{font-family:var(--ui);letter-spacing:0;opacity:.9;font-size:13.5px;font-weight:800}.btn.small{border-radius:99px;min-height:44px;padding:0 16px;font-size:15px;box-shadow:0 3px #b8321f}.btn.ghost,.btn.soft{color:var(--paper);text-shadow:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#8fd3ff29;box-shadow:0 4px #0000004d,0 10px 24px -10px #0009}@media (hover:hover){.btn.ghost:not(:disabled):hover,.btn.soft:not(:disabled):hover{background:#8fd3ff42}}.btn.ghost:active:not(:disabled),.btn.soft:active:not(:disabled){box-shadow:0 1px #0000004d}.btn.wide{width:100%}.btn.wa{color:#0b2e1a;text-shadow:none;background:linear-gradient(160deg,#6ef0a0,#25d366 50%,#1bb457);width:100%;box-shadow:0 4px #128c4a,0 12px 28px -8px #25d36699}.btn.wa:active:not(:disabled){box-shadow:0 1px #128c4a}.linkish{color:var(--muted);background:0 0;border:0;min-height:44px;padding:10px;font-size:14px;text-decoration:underline}.field{width:100%;min-height:52px;color:var(--paper);font:inherit;background:#ffffff1a;border:0;border-radius:14px;padding:0 16px;font-size:18px;font-weight:800;box-shadow:inset 0 2px 6px #0000004d}.field:focus{box-shadow:inset 0 2px 6px #0000004d, 0 0 0 3px var(--gold);background:#ffffff24;outline:none}.field-wrap{text-align:left;gap:6px;display:grid}.field-wrap span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:13px}.mute,.homebtn{top:max(12px, env(safe-area-inset-top));z-index:30;width:44px;height:44px;color:var(--paper);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c162699;border:0;border-radius:50%;place-items:center;display:grid;position:fixed}.mute{right:12px}.homebtn{left:12px}.logo{font-family:var(--display);letter-spacing:.02em;color:var(--paper);flex-direction:column;align-items:center;font-weight:400;line-height:.9;display:flex}.logo span{text-shadow:0 .06em 0 var(--coral), 0 .12em 0 var(--ink), 0 .2em .4em #0006}.logo-crab{width:1.6em;height:auto;margin-bottom:.04em;animation:3s ease-in-out infinite bob}@keyframes bob{50%{transform:translateY(-4px)rotate(-2deg)}}.home{min-height:100dvh;position:relative;overflow-x:hidden}.backdrop{width:100%;height:100%;display:block;position:fixed;inset:0}.home:before{content:"";pointer-events:none;z-index:1;background:linear-gradient(#0e1a2b59 0%,#0e1a2b00 26% 52%,#0e1a2bd9 82%,#0e1a2bf5 100%);position:fixed;inset:0}.hero{z-index:2;max-width:460px;min-height:calc(100dvh - 40px);padding:max(70px, calc(env(safe-area-inset-top) + 58px)) 16px 18px;text-align:center;flex-direction:column;align-items:center;gap:14px;margin:0 auto;display:flex;position:relative}.hero .logo{filter:drop-shadow(0 10px 30px #00000073)}.tag{text-shadow:0 2px 12px #000000bf;text-wrap:balance;margin:0;font-size:17px;font-weight:800;line-height:1.35}.hero-go{gap:12px;width:100%;margin-top:auto;display:grid}.home-more{grid-template-columns:1fr 1fr;gap:10px;display:grid}.home-more>.btn{border-radius:99px;min-height:52px;font-size:15px}.joinpill{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#060c16c7;border-radius:99px;align-items:center;gap:4px;min-width:0;padding:4px;display:flex;box-shadow:inset 0 2px 10px #0009}.codefield{min-width:0;height:44px;color:var(--paper);font:400 17px var(--display);letter-spacing:.2em;text-transform:uppercase;text-align:center;background:0 0;border:0;border-radius:99px;flex:1}.codefield::placeholder{color:#a9b6c880}.codefield:focus{outline:none}.joinpill .btn:disabled{opacity:1;color:var(--muted);text-shadow:none;box-shadow:none;background:#ffffff14}.joinpill:focus-within{box-shadow:inset 0 2px 10px #0009,0 0 0 3px #ffc23d80}.peek{color:var(--gold);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#060c1699;border-radius:99px;padding:12px 18px;font-size:14px;font-weight:900;text-decoration:none;animation:2.2s ease-in-out infinite nudge}@keyframes nudge{50%{transform:translateY(4px)}}.board{z-index:2;background:radial-gradient(120% 60% at 50% 0,#ffdca029,#0000 60%),repeating-linear-gradient(#0000 0 62px,#2814068c 62px 65px),repeating-linear-gradient(97deg,#ffffff08 0 3px,#0000 3px 11px),linear-gradient(#8c5a33,#6e4424);border-radius:22px;width:calc(100% - 24px);max-width:780px;margin:10px auto 48px;padding:56px 16px 26px;position:relative;box-shadow:0 30px 70px -20px #000c,inset 0 2px #ffdcaa40,inset 0 -6px #28140680}.sign{white-space:nowrap;font-family:var(--display);letter-spacing:.03em;color:var(--paper);text-shadow:0 2px #00000059;background:linear-gradient(#1d5f86,#134461);border-radius:12px;align-items:center;gap:10px;padding:10px 22px;font-size:22px;font-weight:400;display:flex;position:absolute;top:-18px;left:50%;transform:translate(-50%)rotate(-1.5deg);box-shadow:0 10px 24px #00000080,inset 0 1px #ffffff40}.count{font-family:var(--ui);background:var(--gold);color:var(--ink);text-shadow:none;border-radius:99px;padding:3px 9px;font-size:12px;font-weight:900}.board-note{text-align:center;color:#f3dcbf;margin:8px 0}.board ul{gap:18px;margin:0;padding:0;list-style:none;display:grid}.board li{animation:pin-in .6s var(--spring) both;animation-delay:var(--d)}@keyframes pin-in{0%{opacity:0;transform:translateY(-18px)rotate(-6deg)scale(.92)}}.card{text-align:left;width:100%;color:var(--ink);transform:rotate(var(--tilt,0deg));transition:transform .25s var(--spring), box-shadow .25s;background:linear-gradient(#fffaf0,#f6e9cf);border:0;border-radius:6px;grid-template-columns:1fr auto;grid-template-areas:"vs stamp""mini mini""badge badge";align-items:center;gap:10px 12px;padding:18px 16px 14px;display:grid;position:relative;box-shadow:0 2px #0000001f,0 14px 26px -10px #000000a6}.card:before{content:"";background:radial-gradient(circle at 35% 30%, #ffb3a6, var(--coral) 45%, #8f2414);border-radius:50%;width:16px;height:16px;margin-left:-8px;position:absolute;top:-7px;left:50%;box-shadow:0 3px 4px #00000073}@media (hover:hover){button.card:hover{transform:rotate(0)translateY(-3px)scale(1.015);box-shadow:0 2px #0000001f,0 22px 34px -12px #000000b3}}button.card:active{transform:rotate(0)scale(.98)}.card.hot{background:linear-gradient(#fff6d6,#ffe7a3);animation:3.2s ease-in-out infinite wiggle;box-shadow:0 0 #0000,0 0 30px #ffc23d8c,0 14px 26px -10px #000000a6}@keyframes wiggle{0%,86%,to{transform:rotate(var(--tilt))}90%{transform:rotate(calc(var(--tilt) - 2deg))}94%{transform:rotate(calc(var(--tilt) + 2deg))}}.card.done{filter:sepia(.35)saturate(.8);opacity:.86}.vs{grid-area:vs;gap:2px;min-width:0;display:grid}.vs b{font-family:var(--hand);text-overflow:ellipsis;white-space:nowrap;color:#17324d;font-size:32px;font-weight:700;line-height:1;overflow:hidden}.vs small{color:#6d6253;font-size:13px;font-weight:700}.stamp{color:#fff6e5;border-radius:3px;grid-area:stamp;justify-items:center;gap:2px;padding:9px 10px 7px;display:grid;transform:rotate(4deg);box-shadow:0 2px 4px #00000040}.stamp svg{width:34px;height:20px}.stamp b{font-family:var(--display);letter-spacing:.12em;font-size:12px;font-weight:400}.mini{grid-area:mini;grid-template-columns:1fr 1fr;gap:8px;display:grid}.mini i,.hp,.tag i,.fuel{background:#ffffff24;border-radius:9px;height:6px;display:block;overflow:hidden}.card .mini i{background:#0e1a2b1f}.mini s,.hp s,.tag s,.fuel s{background:var(--c,var(--coral));border-radius:9px;height:100%;transition:width .5s cubic-bezier(.2,.8,.2,1);display:block}.badge{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;color:#3b6d8c;white-space:nowrap;background:#3b6d8c21;border-radius:6px;grid-area:badge;justify-self:start;padding:4px 10px;font-size:13px;font-weight:400;transform:rotate(-2deg)}.badge.go{color:#b8321f;background:#ff5b4529;animation:1.6s ease-in-out infinite pulse}.badge.end{color:#6d6253;background:#6d625324}@keyframes pulse{50%{box-shadow:0 0 18px 4px #ffc23d73}}.card.blank{text-align:center;--tilt:-1.2deg;grid-template-columns:1fr;grid-template-areas:"stamp""vs""note";justify-items:center;gap:6px;max-width:420px;margin:0 auto}.card.blank>b{font-family:var(--hand);color:#17324d;font-size:34px}.card.blank>small{color:#6d6253;text-wrap:balance;font-size:14px;font-weight:700;line-height:1.4}@media (width>=720px){.board ul{grid-template-columns:1fr 1fr}.board{padding:60px 26px 30px}}.scrim{z-index:35;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#060c168c;animation:.25s both fade;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.help-home{position:fixed}.steps{gap:12px;margin:0;padding:0;list-style:none;display:grid}.steps li{background:#ffffff0f;border-radius:18px;justify-items:center;gap:2px;padding:12px 14px;display:grid}.steps i{font-style:normal;font-family:var(--display);background:var(--gold);width:32px;height:32px;color:var(--ink);border-radius:50%;place-items:center;margin-bottom:4px;display:grid}.steps b{color:var(--paper)}.steps span{color:var(--muted);text-wrap:balance;line-height:1.4}.enter>*{animation:rise-in .7s var(--spring) both}.enter>:nth-child(2){animation-delay:70ms}.enter>:nth-child(3){animation-delay:.14s}.enter>:nth-child(4){animation-delay:.21s}.enter>:nth-child(5){animation-delay:.28s}.enter>:nth-child(6){animation-delay:.35s}.enter>:nth-child(7){animation-delay:.42s}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}}::view-transition-old(root){animation:.3s ease-in both vt-out}::view-transition-new(root){animation:.5s var(--spring) both vt-in}@keyframes vt-out{to{opacity:0;filter:blur(6px);transform:scale(1.06)}}@keyframes vt-in{0%{opacity:0;filter:blur(6px);transform:scale(.94)}}.newmatch:before{display:none}.select-wrap{z-index:25;animation:.35s both fade;position:fixed;inset:0;overflow-y:auto}.select{min-height:100dvh;padding:0 16px max(22px, env(safe-area-inset-bottom));background:radial-gradient(38% 26% at 50% 36%, color-mix(in srgb, var(--paint) 30%, transparent), transparent 70%), conic-gradient(from 180deg at 50% -8%, transparent 168deg, #fff1d621 174deg, #fff1d633 180deg, #fff1d621 186deg, transparent 192deg), radial-gradient(70% 30% at 50% 100%, #1982b459, transparent 70%), linear-gradient(180deg, #071324, #0c2238 55%, #0e3150);flex-direction:column;align-items:center;transition:background .4s;display:flex;position:relative;overflow:hidden}.select:after{content:"";pointer-events:none;opacity:.5;background:repeating-linear-gradient(176deg,#0000 0 18px,#8fd3ff12 18px 20px);height:36%;animation:6s ease-in-out infinite alternate swell;position:absolute;bottom:0;left:0;right:0}@keyframes swell{to{transform:translateY(10px)}}.spot{width:100%;max-width:560px;height:min(44dvh,420px);margin-top:max(40px, env(safe-area-inset-top));flex:none;position:relative}.spot.duo{max-width:720px;height:min(40dvh,380px)}.studio{width:100%;height:100%;display:block}.vs-badge{font-family:var(--display);color:var(--gold);text-shadow:0 4px #8f5b00,0 0 30px #ffc23d99;animation:vs-pop .7s .3s var(--spring) both;font-size:40px;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)rotate(-6deg)}@keyframes vs-pop{0%{opacity:0;transform:translate(-50%,-50%)rotate(-6deg)scale(2.2)}}.select-in{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:440px;margin-top:-8px;display:flex;position:relative}.select-in h2{font-family:var(--display);text-wrap:balance;font-size:30px;font-weight:400;line-height:1.05}.select-in .eyebrow{margin:0}.blurb-sel{color:var(--muted);text-wrap:balance;margin:-4px 0 2px;line-height:1.4}.plank{background:repeating-linear-gradient(90deg,#ffffff0a 0 3px,#0000 3px 14px),linear-gradient(#a06a3c,#7c4f2a);border-radius:20px;align-items:center;gap:6px;width:100%;padding:6px;display:flex;transform:rotate(-1deg);box-shadow:0 12px 26px -8px #000000b3,inset 0 2px #ffdcaa59,inset 0 -4px #32190873}.plank-name{color:#fff3dc;min-width:0;height:52px;font:400 23px var(--display);letter-spacing:.02em;text-align:center;text-shadow:0 2px #28120499;background:#32190852;border:0;border-radius:14px;flex:1;box-shadow:inset 0 2px 8px #1e0e048c}.plank-name:focus{box-shadow:inset 0 2px 8px #1e0e048c, 0 0 0 3px var(--gold);outline:none}.dice{width:52px;height:52px;transition:transform .3s var(--spring);background:linear-gradient(160deg,#fff6e5,#f0d9ad);border:0;border-radius:14px;flex:none;font-size:26px;box-shadow:0 3px #9a7a4c}.dice:active{transform:rotate(-30deg)scale(.9)}@media (hover:hover){.dice:hover{transform:rotate(14deg)scale(1.06)}}.paints{grid-template-columns:repeat(8,1fr);gap:6px;width:100%;padding:4px 0;display:grid}.blob{aspect-ratio:1;background:radial-gradient(circle at 34% 28%, #fffffff2 0 9%, color-mix(in srgb, var(--c) 65%, white) 18%, var(--c) 48%, color-mix(in srgb, var(--c) 60%, black) 100%);opacity:.62;width:100%;max-width:46px;transition:transform .3s var(--spring), opacity .2s, box-shadow .3s;border:0;border-radius:50% 50% 46% 54%/56% 50% 50% 44%;justify-self:center;padding:0;transform:scale(.86);box-shadow:0 6px 12px -4px #0009}.blob:nth-child(odd){border-radius:54% 46% 52% 48%/46% 56% 44% 54%}@media (hover:hover){.blob:not(:disabled):hover{opacity:.95;transform:scale(.96)translateY(-2px)}}.blob.on{opacity:1;box-shadow:0 10px 22px -6px #000000b3, 0 0 22px color-mix(in srgb, var(--c) 70%, transparent);animation:wobble .5s var(--spring);transform:scale(1.12)translateY(-5px)}@keyframes wobble{30%{transform:scale(1.25,.95)translateY(-5px)}60%{transform:scale(1.02,1.18)translateY(-7px)}}.blob:disabled{opacity:.18;cursor:not-allowed;transform:scale(.7)}.blob:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.btn.go{font-family:var(--display);letter-spacing:.03em;min-height:66px;color:var(--ink);text-shadow:0 1px #ffffff59;background:linear-gradient(160deg, color-mix(in srgb, var(--paint) 45%, white), var(--paint) 50%, color-mix(in srgb, var(--paint) 78%, black));box-shadow:0 5px 0 color-mix(in srgb, var(--paint) 55%, black), 0 16px 40px -8px color-mix(in srgb, var(--paint) 80%, transparent), inset 0 1px 0 #ffffff80;transition:transform .22s var(--spring), box-shadow .2s, filter .2s, background .35s;border-radius:22px;margin-top:4px;font-size:24px;font-weight:400}.btn.go:active:not(:disabled){box-shadow:0 1px 0 color-mix(in srgb, var(--paint) 55%, black)}.match{position:fixed;inset:0;overflow:hidden}.arena{touch-action:none;position:absolute;inset:0}.stage{width:100%;height:100%;display:block}.layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.layer .tag{will-change:transform;background:#0c1626b8;border-radius:10px;justify-items:center;gap:3px;min-width:64px;padding:4px 8px 6px;display:grid;position:absolute;top:0;left:0}.layer .tag b{white-space:nowrap;font-size:12px;font-weight:900}.layer .tag i{width:52px;height:5px}.layer .tag.low s{background:#ff3030}.layer .tag.dead{opacity:.55}.pop{font-family:var(--display);color:#fff;-webkit-text-stroke:1.5px var(--ink);text-shadow:0 3px 0 var(--ink);white-space:nowrap;font-size:30px;position:absolute;top:0;left:0}.pop.seat0{color:#ffd0c8}.pop.seat1{color:#e2d9ff}.pop.fall{font-size:22px}.hud{z-index:10;padding:max(10px, env(safe-area-inset-top)) 64px 0;pointer-events:none;grid-template-columns:1fr 1fr;grid-template-areas:"p0 p1""mid mid";gap:8px;display:grid;position:absolute;top:0;left:0;right:0}.pcard{background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:4px 8px;min-width:0;padding:8px 10px;display:grid;box-shadow:0 6px 18px #00000040}.pcard.seat0{grid-area:p0}.pcard.seat1{grid-area:p1}.pcard.up{background:color-mix(in srgb, var(--c) 30%, #0c1626d9);box-shadow:0 0 20px color-mix(in srgb, var(--c) 45%, transparent)}.pcard.up b{color:#fff}.pcard b{white-space:nowrap;text-overflow:ellipsis;color:var(--c);font-size:14px;font-weight:900;overflow:hidden}.pcard b small{color:var(--muted);font-weight:700}.pcard .hp{grid-column:1}.hpn{color:var(--muted);font-variant-numeric:tabular-nums;grid-area:1/2/span 2;font-size:12px;font-weight:900}.mid{flex-direction:column;grid-area:mid;align-items:center;gap:4px;display:flex}.turnno{color:var(--paper);opacity:.85;text-shadow:0 1px 4px #000000b3;font-size:12px}.wpill{background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:99px;align-items:center;gap:8px;padding:5px 12px 5px 8px;font-size:14px;font-weight:900;display:inline-flex;box-shadow:0 6px 18px #00000040}.wpill.small{padding:4px 10px 4px 6px;font-size:13px}.wpill.wx-bg-storm{background:#6e500ad9;box-shadow:0 0 18px #ffc23d59}.wx{color:#e9eef5}.wind{color:#8fd3ff;align-items:center;gap:3px;display:inline-flex}.wind b{font-variant-numeric:tabular-nums;min-width:1.2em}.banner{z-index:20;font-family:var(--display);color:#fff;white-space:nowrap;-webkit-text-stroke:2px var(--ink);text-shadow:0 5px 0 var(--ink), 0 10px 30px #00000080;pointer-events:none;font-size:clamp(34px,11vw,64px);animation:1.5s cubic-bezier(.2,1.4,.3,1) both slam;position:absolute;top:32%;left:50%;transform:translate(-50%,-50%)}.banner.good{color:var(--gold)}.banner.bad{color:#ff9b8c}.banner.big{color:var(--coral);font-size:clamp(40px,13vw,76px)}.banner.bolt{color:#cfe0ff}.banner.tide{color:#8fd3ff;font-size:clamp(28px,9vw,52px)}.banner.you{color:var(--gold)}@keyframes slam{0%{opacity:0;transform:translate(-50%,-50%)scale(2.4)rotate(-6deg)}14%{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(-3deg)}80%{opacity:1;transform:translate(-50%,-50%)scale(1.04)rotate(-3deg)}to{opacity:0;transform:translate(-50%,-60%)scale(1.04)rotate(-3deg)}}.toast{z-index:40;color:#fff;background:#b8321f;border-radius:14px;max-width:calc(100% - 32px);padding:12px 18px;font-weight:800;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.sheet{z-index:15;max-width:480px;padding:22px 18px max(18px, env(safe-area-inset-bottom));background:var(--panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);text-align:center;border-radius:26px 26px 0 0;gap:12px;margin:0 auto;animation:.45s cubic-bezier(.2,.9,.3,1) both rise;display:grid;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -10px 40px #00000059}.sheet.center{background:var(--ink);border-radius:0;place-content:center;max-width:none;top:0}.sheet h2{font-family:var(--display);font-size:28px;font-weight:400;line-height:1.05}.sheet p{color:var(--muted);margin:0;line-height:1.4}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:var(--gold)!important;font-weight:900!important}@keyframes rise{0%{opacity:0;transform:translateY(40px)}}.incoming{justify-items:center;gap:14px}.incoming .btn{margin-top:4px}.share{gap:10px;width:100%;display:grid}.share .row>*{flex:1}.stamp,.pc-stamp{--hole:radial-gradient(circle, #fbf1dc 2.6px, transparent 3px);background:var(--hole) 0 -4px / 8px 8px repeat-x, var(--hole) 0 calc(100% + 4px) / 8px 8px repeat-x, var(--hole) -4px 0 / 8px 8px repeat-y, var(--hole) calc(100% + 4px) 0 / 8px 8px repeat-y, var(--c,#1982b4)}.postcard{color:var(--ink);text-align:left;animation:pin-in .6s .15s var(--spring) both;background:linear-gradient(#fffaf0,#f3e4c5);border-radius:8px;grid-template-columns:1.25fr 1fr;gap:12px;padding:14px;display:grid;transform:rotate(-1deg);box-shadow:0 16px 30px -12px #000000b3}.pc-msg{align-content:start;gap:6px;display:grid}.pc-msg small{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;color:#b8321f;font-size:11px}.sheet .pc-msg p{color:#26384d;font-family:var(--hand);font-size:21px;font-weight:700;line-height:1.1}.pc-addr{align-content:space-between;justify-items:end;gap:8px;display:grid}.pc-stamp{color:#fff6e5;justify-items:center;padding:9px 12px 7px;display:grid;transform:rotate(5deg);box-shadow:0 2px 4px #00000040}.pc-stamp b{font-family:var(--display);letter-spacing:.14em;font-size:19px;font-weight:400}.pc-stamp small{text-transform:uppercase;letter-spacing:.16em;opacity:.85;font-size:10px;font-weight:900}.postcard .qr{width:96px;height:96px;box-shadow:none}.qr-wrap{color:var(--muted);justify-content:center;align-items:center;gap:14px;display:flex}.qr{background:#fff;border-radius:10px;width:92px;height:92px;padding:4px}.qr svg{width:100%;height:100%;display:block}.qr-wrap b{color:var(--paper);letter-spacing:.15em;font-size:18px}.over .result{letter-spacing:.01em;font-size:52px}.over.won .result{color:var(--gold);text-shadow:0 4px #a3700b}.over.lost .result{color:#8fd3ff;text-shadow:0 4px #0d4a6b}.over{overflow:visible}.over .result{animation:.8s cubic-bezier(.2,1.4,.3,1) .1s both slam-in}@keyframes slam-in{0%{opacity:0;transform:scale(2)rotate(-4deg)}}.over.won{background:radial-gradient(90% 60% at 50% 0%, #ffc23d47, transparent 70%), var(--panel)}.over.won .result{text-shadow:0 4px #a3700b,0 0 40px #ffc23da6}.over.lost{background:radial-gradient(90% 60% at 50% 0%, #8fd3ff33, transparent 70%), var(--panel)}.sheet .champ{background:color-mix(in srgb, var(--c) 22%, transparent);color:var(--paper);border-radius:99px;justify-self:center;padding:6px 14px;font-weight:800}.sheet .champ b{color:var(--c)}.confetti,.bubbles{pointer-events:none;height:60vh;position:absolute;top:-60vh;left:0;right:0;overflow:hidden}.confetti i{top:-20px;left:var(--x);background:var(--c);width:9px;height:14px;transform:rotate(var(--r));animation:fall 3.4s var(--d) cubic-bezier(.3, .6, .5, 1) infinite;border-radius:2px;position:absolute}@keyframes fall{0%{transform:translateY(0) rotate(var(--r));opacity:1}to{transform:translateY(64vh) rotate(calc(var(--r) + 540deg));opacity:.2}}.bubbles{height:70vh;top:auto;bottom:0}.bubbles i{bottom:-20px;left:var(--x);width:var(--s);height:var(--s);animation:bubble 3.2s var(--d) ease-in infinite;background:radial-gradient(circle at 35% 30%,#ffffffb3,#8fd3ff33 60%,#0000 72%);border-radius:50%;position:absolute}@keyframes bubble{0%{opacity:0;transform:translateY(0)}20%{opacity:.9}to{opacity:0;transform:translateY(-70vh)translate(12px)}}.filmcard{z-index:12;background:color-mix(in srgb, var(--c) 24%, #0c1626d1);border-radius:12px;padding:8px 14px 9px;animation:.5s cubic-bezier(.2,.9,.3,1) both slide;display:grid;position:absolute;top:150px;left:16px;box-shadow:0 8px 24px #00000059}.filmcard b{font-family:var(--display);color:var(--c);font-size:22px;font-weight:400;line-height:1}.filmcard span{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:12px}@keyframes slide{0%{transform:translate(-110%)}}.skip{z-index:12;right:16px;bottom:max(20px, env(safe-area-inset-bottom));min-height:44px;position:absolute}.match.phase-replay:after{content:"";pointer-events:none;z-index:5;opacity:.85;background:#000;height:9vh;position:absolute;bottom:0;left:0;right:0}.match.phase-replay:before{content:"";pointer-events:none;z-index:5;background:#000;height:0;position:absolute;top:0;left:0;right:0}.tray{z-index:14;max-width:520px;padding:12px 12px max(12px, env(safe-area-inset-bottom));pointer-events:none;background:linear-gradient(#0c162600 0,#0c1626db 34px);gap:8px;margin:0 auto;display:grid;position:absolute;bottom:0;left:0;right:0}.tray>*{pointer-events:auto}.hint{color:var(--paper);background:#0c1626bf;border-radius:99px;margin:0 auto 4px;padding:6px 12px;font-size:13px;animation:2s infinite pulse;pointer-events:none!important}.weapons{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.wpn{background:#ffffff1a;border:0;border-radius:14px;justify-items:center;gap:2px;min-height:64px;padding:7px 2px 6px;display:grid;position:relative}.wpn span{font-size:11.5px;font-weight:800}.wpn i{color:var(--muted);font-size:11px;font-style:normal;font-weight:900;position:absolute;top:4px;right:6px}.wpn.on{background:var(--gold);color:var(--ink);box-shadow:0 0 18px #ffc23d73}.wpn.on i{color:var(--ink)}.wpn:disabled{opacity:.35}.blurb{text-align:center;color:var(--muted);margin:0;font-size:12.5px}.dials{grid-template-columns:1fr 1fr;gap:8px;display:grid}.dial{background:#ffffff1a;border-radius:14px;grid-template-columns:44px 1fr 44px;align-items:center;display:grid}.dial button{background:0 0;border:0;height:44px;font-size:22px;font-weight:900}.dial output{text-align:center;font-family:var(--display);font-variant-numeric:tabular-nums;font-size:20px}.act{grid-template-columns:1fr 1.1fr;gap:8px;display:grid}.walk{-webkit-user-select:none;user-select:none;background:#ffffff1a;border-radius:16px;grid-template-columns:52px 1fr 52px;align-items:center;gap:6px;padding:0 2px;display:grid}.walk button{touch-action:none;-webkit-touch-callout:none;background:0 0;border:0;height:56px;font-size:20px}.walk button:active{color:var(--gold)}.fuel{height:7px}.fuel s{background:#8fd3ff}.fire{min-height:60px;font-family:var(--display);letter-spacing:.06em;color:#fff;background:radial-gradient(120% 140% at 50% 0%, #ff8a5b, var(--coral) 45%, #d93a24);text-shadow:0 2px #00000040;border:0;border-radius:18px;font-size:26px;box-shadow:0 5px #8f2414,0 12px 30px #ff5b4573}.fire:active{transform:translateY(4px);box-shadow:0 1px #8f2414}.forecast{text-align:center;color:var(--muted);margin:0;font-size:12px}@media (width>=760px){.hero{max-width:540px}.select-in h2{font-size:36px}.spot{height:min(48dvh,470px)}.spot.duo{max-width:960px;height:min(46dvh,450px)}.hud{max-width:760px;margin:0 auto;padding-left:72px;padding-right:72px}.tray{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0c1626d1;border-radius:24px;padding:14px;bottom:16px}.sheet{border-radius:26px;bottom:20px}.filmcard{top:130px;left:32px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.banner{opacity:1;animation:none;transform:translate(-50%,-50%)rotate(-3deg)}.confetti,.bubbles,.select:after{display:none}}.helpbtn{top:calc(max(12px, env(safe-area-inset-top)) + 52px);z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:44px;height:44px;font-family:var(--display);background:#0c162699;border:0;border-radius:50%;font-size:20px;position:fixed;right:12px}.coach{background:var(--paper);color:var(--ink);text-align:left;border-radius:18px;gap:4px;padding:12px 14px 8px;animation:.35s cubic-bezier(.2,.9,.3,1) both rise;display:grid;box-shadow:0 10px 30px #00000059}.coach small{text-transform:uppercase;letter-spacing:.12em;color:#b8321f;font-size:11px;font-weight:900}.coach b{font-family:var(--display);font-size:22px;font-weight:400;line-height:1.05}.coach p{margin:0;font-size:14.5px;line-height:1.35;color:var(--ink2)!important}.coach .row{justify-content:space-between;align-items:center}.coach .linkish{color:#5a6577;padding-left:0}.coach .btn.ghost{background:var(--ink);min-height:40px;color:var(--paper);padding:0 18px}.sheet .coach{margin-bottom:4px}.sheet .coach .btn{justify-self:end}.lit{animation:1.2s ease-in-out infinite lit}@keyframes lit{50%{box-shadow:0 0 28px 6px #ffc23dbf}}.finger{z-index:13;pointer-events:none;position:absolute;top:38%;left:50%}.finger:before,.finger:after{content:"";border-radius:50%;width:34px;height:34px;margin:-17px;position:absolute}.finger:before{background:#ffffff38}.finger:after{background:#ffffffe6;animation:1.8s ease-in-out infinite pull;box-shadow:0 0 0 6px #ffffff40}.finger.seat1{--dx:1}@keyframes pull{0%,15%{opacity:0;transform:none}25%{opacity:1;transform:none}70%{transform:translate(calc(var(--dx,-1) * 70px), 60px);opacity:1}90%,to{transform:translate(calc(var(--dx,-1) * 70px), 60px);opacity:0}}.help{z-index:35;text-align:left;max-height:100dvh;overflow-y:auto}.help ol{color:var(--muted);gap:8px;margin:0;padding-left:22px;line-height:1.4;display:grid}.help ol b{color:var(--paper)}.soundchip{z-index:45;left:50%;top:calc(max(12px, env(safe-area-inset-top)) + 56px);background:var(--gold);color:var(--ink);white-space:nowrap;pointer-events:none;border-radius:99px;padding:10px 16px;font-size:14px;font-weight:900;animation:1.6s ease-in-out infinite chip;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px #00000059}@keyframes chip{50%{box-shadow:0 6px 20px #00000059,0 0 22px 4px #ffc23d8c}}.oftr-badge{vertical-align:middle;flex:none;margin-right:6px;line-height:0;display:inline-grid}.oftr-badge svg{border-radius:50%;display:block}.plank .oftr-badge{margin:0 2px 0 4px}
