:root{--bg:#0a0e1a;--card:rgba(20,27,46,.72);--card-solid:#141b2e;--line:rgba(148,163,199,.14);--line-strong:rgba(148,163,199,.28);--txt:#eef2fb;--mute:#8d97b5;--x:#ff9f43;--x2:#ff6b6b;--o:#38bdf8;--o2:#818cf8;--ok:#34d399;--err:#ff7b7b;--radius:20px;--ease:cubic-bezier(.22,1,.36,1);--spring:cubic-bezier(.34,1.56,.64,1);--shadow:0 16px 48px -16px rgba(0,0,0,.65)}*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;min-height:100dvh;overflow-x:hidden;color:var(--txt);font:16px/1.5 var(--font-sans),system-ui,sans-serif;-webkit-font-smoothing:antialiased;background:radial-gradient(1100px 600px at 0 -10%,rgba(255,159,67,.11),transparent 60%),radial-gradient(1000px 640px at 110% 0,rgba(56,189,248,.13),transparent 60%),radial-gradient(900px 600px at 50% 120%,rgba(129,140,248,.1),transparent 60%),var(--bg)}button,input{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--o);outline-offset:3px}::selection{background:rgba(56,189,248,.35)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.mute{color:var(--mute)}.small{font-size:.85rem}.grow{flex:1 1;min-width:0}.X{color:var(--x)}.O{color:var(--o)}.icon{width:18px;height:18px;flex-shrink:0}.grad{background:linear-gradient(90deg,var(--x),var(--x2),var(--o2),var(--o),var(--x));background-size:300% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 8s linear infinite}.mark{display:block;width:100%;height:100%;fill:none;stroke-linecap:round;stroke-width:12;overflow:visible}.mark-x{stroke:url(#gx) var(--x)}.mark-o{stroke:url(#go) var(--o)}.mark.draw circle,.mark.draw line{stroke-dasharray:1;stroke-dashoffset:1;animation:draw .32s var(--ease) forwards}.mark.draw line:nth-child(2){animation-delay:.14s}.mark.draw circle{animation-duration:.5s}.mark.draw{animation:markPop .45s var(--spring)}.logo{position:relative;display:inline-block;flex-shrink:0;width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#1d2745,#10162a);border:1px solid var(--line-strong);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 6px 18px -6px rgba(0,0,0,.6);transition:transform .45s var(--spring)}.logo .mark{position:absolute;width:58%;height:58%;stroke-width:15}.logo .mark-x{left:4%;top:4%}.logo .mark-o{right:4%;bottom:4%}.bg{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.bg-grid{position:absolute;inset:-64px;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:64px 64px;opacity:.45;-webkit-mask-image:radial-gradient(ellipse at 50% 40%,#000 10%,transparent 70%);mask-image:radial-gradient(ellipse at 50% 40%,#000 10%,transparent 70%);animation:gridMove 24s linear infinite}.bg-shape{position:absolute;width:var(--s);height:var(--s);opacity:.09;animation:float var(--d) ease-in-out var(--delay) infinite}.bg-shape .mark{stroke-width:9}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;padding:10px 18px;border-radius:12px;border:1px solid var(--line-strong);background:rgba(255,255,255,.05);color:var(--txt);font-weight:600;transition:transform .25s var(--spring),background .2s,border-color .2s,box-shadow .25s,color .2s}.btn:hover:not(:disabled){transform:translateY(-2px);background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.32)}.btn:active:not(:disabled){transform:translateY(0) scale(.96)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{position:relative;overflow:hidden;border:0;color:#1d1006;background:linear-gradient(135deg,#ffb547,var(--x) 40%,var(--x2));box-shadow:0 10px 30px -10px rgba(255,107,107,.75)}.btn-primary:after{content:"";position:absolute;inset:0;transform:translateX(-120%);background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.5) 50%,transparent 70%);transition:transform .75s var(--ease)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#ffb547,var(--x) 40%,var(--x2));box-shadow:0 16px 36px -10px rgba(255,107,107,.95)}.btn-primary:hover:not(:disabled):after{transform:translateX(120%)}.btn-lg{padding:14px 26px;font-size:1.05rem;border-radius:14px}.btn-sm{padding:6px 12px;font-size:.88rem}.btn-ghost{background:none;border-color:transparent;color:var(--mute)}.btn-ghost:hover:not(:disabled){color:var(--txt);background:rgba(255,255,255,.06);border-color:transparent}.btn-accept{color:var(--ok);border-color:rgba(52,211,153,.4);background:rgba(52,211,153,.08)}.btn-accept:hover:not(:disabled){background:rgba(52,211,153,.18);border-color:var(--ok);box-shadow:0 8px 24px -10px rgba(52,211,153,.8)}.pulse:not(:disabled){animation:pulse 2.4s infinite}.icon-btn{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.04);transition:background .2s,transform .3s var(--spring)}.icon-btn:hover{background:rgba(255,255,255,.09);transform:rotate(90deg)}.input{width:100%;padding:14px 16px;border-radius:14px;font-size:1.05rem;border:1px solid var(--line-strong);background:rgba(5,8,15,.55);color:var(--txt);transition:border-color .2s,box-shadow .25s}.input::placeholder{color:#66708c}.input:focus{outline:none;border-color:var(--o);box-shadow:0 0 0 4px rgba(56,189,248,.18)}.header{position:-webkit-sticky;position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line);background:rgba(10,14,26,.62);backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);animation:slideDown .6s var(--ease) backwards}.header-inner{max-width:1000px;margin:0 auto;padding:12px 20px;gap:16px}.brand,.header-inner{display:flex;align-items:center}.brand{gap:10px;padding:0;border:0;background:none;font-weight:800;font-size:1.2rem;letter-spacing:-.02em;border-radius:12px}.brand:hover .logo{transform:rotate(-12deg) scale(1.08)}.nav{position:relative;display:flex;gap:2px;margin-left:auto;padding:4px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid var(--line)}.nav-pill{position:absolute;top:4px;bottom:4px;border-radius:999px;background:linear-gradient(135deg,#ffb547,var(--x) 45%,var(--x2));box-shadow:0 6px 20px -6px rgba(255,107,107,.7);transition:left .5s var(--spring),width .5s var(--spring)}.nav-btn{position:relative;z-index:1;display:flex;align-items:center;gap:8px;padding:8px 16px;border:0;border-radius:999px;background:none;color:var(--mute);font-weight:600;font-size:.92rem;transition:color .3s}.nav-btn:hover{color:var(--txt)}.nav-btn.active{color:#1d1006}.nav-btn .icon{transition:transform .4s var(--spring)}.nav-btn:hover .icon{transform:rotate(-10deg) scale(1.15)}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--ok);animation:ring 1.6s infinite}.nav-btn.active .live-dot{background:#1d1006}.user{position:relative}.user-chip{display:flex;align-items:center;gap:10px;padding:4px 12px 4px 4px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.04);transition:background .2s,border-color .2s}.user-chip:hover,.user.open .user-chip{background:rgba(255,255,255,.08);border-color:var(--line-strong)}.user-meta{display:grid;text-align:left;line-height:1.15}.user-name{font-weight:700;font-size:.92rem;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-pts{font-size:.78rem;color:var(--mute)}.user-pts b{color:var(--x)}.chev{color:var(--mute);transition:transform .35s var(--spring)}.user.open .chev{transform:rotate(180deg)}.dropdown{position:absolute;right:0;top:calc(100% + 10px);min-width:230px;padding:8px;z-index:45;background:var(--card-solid);border:1px solid var(--line-strong);border-radius:16px;box-shadow:var(--shadow);transform-origin:top right;opacity:0;transform:scale(.9) translateY(-8px);pointer-events:none;transition:opacity .2s var(--ease),transform .35s var(--spring)}.dropdown.show{opacity:1;transform:none;pointer-events:auto}.dropdown-head{gap:12px;padding:10px 10px 14px;margin-bottom:6px;border-bottom:1px solid var(--line)}.dropdown-head,.dropdown-item{display:flex;align-items:center}.dropdown-item{width:100%;gap:10px;padding:10px 12px;border:0;border-radius:10px;background:none;text-align:left;transition:background .15s,padding-left .25s var(--ease)}.dropdown-item:hover{background:rgba(255,255,255,.06);padding-left:16px}.drawer-item.danger,.dropdown-item.danger{color:var(--err)}.burger{display:none;position:relative;width:42px;height:42px;margin-left:auto;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.04)}.burger span{position:absolute;left:11px;right:11px;height:2px;border-radius:2px;background:var(--txt);transition:transform .4s var(--spring),opacity .2s,top .3s var(--ease)}.burger span:first-child{top:13px}.burger span:nth-child(2){top:19px}.burger span:nth-child(3){top:25px}.burger.open span:first-child{top:19px;transform:rotate(45deg)}.burger.open span:nth-child(2){opacity:0;transform:scaleX(0)}.burger.open span:nth-child(3){top:19px;transform:rotate(-45deg)}.drawer-backdrop{position:fixed;inset:0;z-index:50;background:rgba(5,8,15,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:opacity .35s}.drawer-backdrop.show{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;bottom:0;z-index:51;width:min(320px,86vw);padding:20px;display:flex;flex-direction:column;gap:6px;background:var(--card-solid);border-left:1px solid var(--line-strong);box-shadow:-20px 0 60px -20px rgba(0,0,0,.7);transform:translateX(105%);transition:transform .5s var(--ease)}.drawer.show{transform:none}.drawer-head{padding-bottom:16px;margin-bottom:8px;border-bottom:1px solid var(--line)}.drawer-head,.drawer-item{display:flex;align-items:center;gap:12px}.drawer-item{padding:14px 16px;border:1px solid transparent;border-radius:14px;background:none;font-weight:600;font-size:1.02rem;text-align:left;opacity:0;transform:translateX(30px);transition:opacity .3s,transform .45s var(--ease),background .2s,border-color .2s}.drawer.show .drawer-item{opacity:1;transform:none;transition-delay:calc(var(--i) * 60ms + .12s),calc(var(--i) * 60ms + .12s),0s,0s}.drawer-item:hover{background:rgba(255,255,255,.05)}.drawer-item.active{background:rgba(255,159,67,.12);border-color:rgba(255,159,67,.35);color:var(--x)}.drawer-spacer{flex:1 1}.main{max-width:1000px;margin:0 auto;padding:28px 20px 40px}.view{grid-gap:20px;animation:viewIn .5s var(--ease) backwards}.grid-2,.view{display:grid;gap:20px}.grid-2{grid-template-columns:1.35fr 1fr;grid-gap:20px;align-items:start}.footer{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 20px 36px;color:var(--mute);font-size:.85rem}.footer .logo{width:24px;height:24px;border-radius:8px}.card{display:grid;grid-gap:16px;gap:16px;padding:22px;border-radius:var(--radius);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);animation:cardIn .6s var(--ease) var(--delay,0s) backwards}.card-head{justify-content:space-between;gap:12px}.card-head,.card-title{display:flex;align-items:center}.card-title{margin:0;gap:10px;font-size:1.05rem;font-weight:700}.card-title .icon{color:var(--mute);width:20px;height:20px}.count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;font-size:.75rem;font-weight:800;background:var(--ok);color:#052016}.splash{min-height:100dvh;display:grid;place-items:center;align-content:center;grid-gap:16px;gap:16px}.splash.inline{min-height:50vh}.splash .logo{width:72px;height:72px;border-radius:20px}.spin{animation:flip 1.6s var(--ease) infinite}.login{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{width:min(440px,100%);padding:40px 30px 30px;gap:20px;text-align:center;justify-items:center}.login-logo{width:88px;height:88px;border-radius:26px;animation:bob 4s ease-in-out infinite}.title{margin:0;font-size:clamp(2.4rem,8vw,3.2rem);font-weight:900;line-height:1;letter-spacing:-.045em}.title .word{display:inline-block;animation:wordIn .8s var(--spring) calc(var(--i) * .12s + .1s) backwards}.login-sub{margin:0;max-width:320px}.login-form{width:100%;display:grid;grid-gap:12px;gap:12px}.login-top{align-items:center;gap:12px;font-size:.85rem;animation:viewIn .6s var(--ease) .5s backwards}.avatar-stack,.login-top{display:flex}.avatar-stack .avatar{width:28px;height:28px;font-size:.68rem;margin-left:-8px;box-shadow:0 0 0 2px var(--card-solid)}.avatar-stack .avatar:first-child{margin-left:0}.avatar{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:50%;font-weight:800;font-size:.8rem;color:#0a0e1a;background:linear-gradient(135deg,hsl(var(--h) 90% 72%),hsl(calc(var(--h) + 40) 80% 60%))}.avatar.lg{width:44px;height:44px;font-size:1rem}.avatar.xl{width:64px;height:64px;font-size:1.35rem}.hero{overflow:hidden;grid-template-columns:1fr auto;align-items:center;gap:24px;padding:30px}.hero,.hero-text{position:relative}.hero-text{display:grid;grid-gap:8px;gap:8px}.hero h1{margin:0;font-size:clamp(1.5rem,3.4vw,2.1rem);line-height:1.15;letter-spacing:-.03em}.hero p{margin:0}.hero .btn{position:relative}.eyebrow{display:inline-flex;align-items:center;gap:6px;width:-moz-fit-content;width:fit-content;padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--x);background:rgba(255,159,67,.1);border:1px solid rgba(255,159,67,.25)}.eyebrow .icon{width:14px;height:14px}.hero-deco{position:absolute;right:-30px;top:-40px;width:220px;height:220px;opacity:.12;pointer-events:none;animation:spinSlow 40s linear infinite}.hero-deco .mark{position:absolute;width:60%;height:60%}.hero-deco .mark-o{right:0;bottom:0}.hero:after{content:"";position:absolute;inset:auto -20% -60% auto;width:60%;height:140%;background:radial-gradient(closest-side,rgba(255,159,67,.18),transparent);pointer-events:none;animation:glow 6s ease-in-out infinite}.live{display:inline-flex;align-items:center;gap:7px;padding:4px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ok);background:rgba(52,211,153,.1);border:1px solid rgba(52,211,153,.25)}.live:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ok);animation:ring 1.6s infinite}.list{display:grid;grid-gap:8px;gap:8px}.row-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid var(--line);animation:itemIn .45s var(--ease) calc(var(--i, 0) * 60ms) backwards;transition:background .2s,transform .3s var(--ease),border-color .2s}.row-item:hover{background:rgba(255,255,255,.06);border-color:var(--line-strong);transform:translateX(4px)}.row-item.me{background:rgba(255,159,67,.08);border-color:rgba(255,159,67,.4)}.name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sub{font-size:.8rem;color:var(--mute)}.you-tag{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;vertical-align:middle;background:rgba(255,255,255,.1);color:var(--txt)}.rank-pos{width:26px;text-align:center;font-weight:800;color:var(--mute);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rank-pts{font-weight:800;font-size:1.05rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rank-pts small{color:var(--mute);font-weight:600;font-size:.75rem}.empty{display:grid;justify-items:center;grid-gap:8px;gap:8px;padding:22px 10px;text-align:center;color:var(--mute)}.empty strong{color:var(--txt)}.empty-board{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:5px;gap:5px;width:78px;height:78px;margin-bottom:6px}.empty-board i{border-radius:6px;background:rgba(255,255,255,.06);animation:tile 2.7s ease-in-out calc(var(--i) * .15s) infinite}.podium{display:grid;grid-template-columns:repeat(3,1fr);align-items:end;grid-gap:12px;gap:12px;padding:18px 0 4px}.podium-col{display:grid;justify-items:center;grid-gap:6px;gap:6px;min-width:0;text-align:center;animation:viewIn .6s var(--ease) var(--delay) backwards}.podium-col .name{max-width:100%}.podium-col .avatar{width:54px;height:54px;font-size:1.1rem;box-shadow:0 0 0 3px var(--medal),0 10px 30px -6px var(--medal)}.podium-col.p1 .avatar{width:70px;height:70px;font-size:1.4rem}.podium-col.me .name{color:var(--x)}.crown{font-size:1.5rem;line-height:1;animation:bob 2.6s ease-in-out infinite}.podium-block{width:100%;display:grid;place-items:center;margin-top:6px;border-radius:14px 14px 6px 6px;font-size:2rem;font-weight:900;color:var(--medal);background:linear-gradient(180deg,color-mix(in srgb,var(--medal) 30%,transparent),rgba(255,255,255,.02));border:1px solid color-mix(in srgb,var(--medal) 45%,transparent);transform-origin:bottom;animation:rise .9s var(--spring) calc(var(--delay) + .15s) backwards}.p1 .podium-block{height:130px}.p2 .podium-block{height:96px}.p3 .podium-block{height:70px}.steps{display:grid;grid-gap:14px;gap:14px;margin:0;padding:0;list-style:none;counter-reset:s}.steps li{display:flex;gap:14px;align-items:flex-start;counter-increment:s}.steps li:before{content:counter(s);flex-shrink:0;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-weight:800;font-size:.85rem;color:#06101f;background:linear-gradient(135deg,var(--o),var(--o2))}.points-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}.point-card{display:grid;grid-gap:2px;gap:2px;padding:20px 12px;text-align:center;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.03);animation:cardIn .6s var(--spring) var(--delay) backwards;transition:transform .35s var(--spring),border-color .2s}.point-card:hover{transform:translateY(-5px) rotate(-1.5deg);border-color:var(--line-strong)}.point-card b{font-size:2.2rem;font-weight:900;line-height:1.1}.point-card span{color:var(--mute);font-weight:600}.point-card.win b{color:var(--ok)}.point-card.draw b{color:var(--o)}.point-card.lose b{color:var(--mute)}.match{justify-items:center;gap:22px;padding:26px 22px 30px}.players{width:100%;display:grid;grid-template-columns:1fr auto 1fr;grid-gap:12px}.player,.players{align-items:center;gap:12px}.player{display:flex;min-width:0;padding:12px 14px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.03);transition:border-color .35s,box-shadow .35s,transform .4s var(--spring),opacity .3s}.player.right{flex-direction:row-reverse;text-align:right}.player.right .you-tag{margin:0 8px 0 0}.player-sym{width:42px;height:42px;flex-shrink:0;padding:6px;border-radius:12px;background:rgba(255,255,255,.05)}.player.active{transform:translateY(-3px)}.player.active.px{border-color:rgba(255,159,67,.65);box-shadow:0 0 0 4px rgba(255,159,67,.12),0 12px 30px -12px rgba(255,159,67,.7)}.player.active.po{border-color:rgba(56,189,248,.65);box-shadow:0 0 0 4px rgba(56,189,248,.12),0 12px 30px -12px rgba(56,189,248,.7)}.player.active .player-sym{animation:bob 1.8s ease-in-out infinite}.player.waiting .name{color:var(--mute);font-style:italic}.player.winner{border-color:rgba(52,211,153,.6);box-shadow:0 0 0 4px rgba(52,211,153,.12)}.vs{font-weight:900;font-size:.85rem;letter-spacing:.12em;color:var(--mute)}.board{position:relative;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;width:min(360px,100%);aspect-ratio:1;padding:10px;border-radius:24px;background:rgba(5,8,15,.5);border:1px solid var(--line);animation:boardIn .7s var(--spring) backwards;transition:border-color .4s,box-shadow .4s}.board.my-turn{border-color:rgba(255,159,67,.35);box-shadow:0 0 0 6px rgba(255,159,67,.06),0 20px 50px -20px rgba(255,159,67,.45)}.cell{position:relative;display:grid;place-items:center;padding:16%;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.04);animation:cellIn .45s var(--spring) calc(var(--i) * 40ms + .18s) backwards;transition:background .2s,border-color .2s,transform .25s var(--spring)}.cell:disabled{cursor:default}.cell:not(:disabled):hover{background:rgba(255,255,255,.08);border-color:var(--line-strong);transform:scale(1.05)}.cell:not(:disabled):active{transform:scale(.94)}.ghost{position:absolute;inset:16%;opacity:0;transform:scale(.7) rotate(-10deg);transition:opacity .2s,transform .3s var(--spring)}.cell:not(:disabled):hover .ghost{opacity:.3;transform:none}.cell.win{background:color-mix(in srgb,var(--wc) 18%,transparent);border-color:color-mix(in srgb,var(--wc) 60%,transparent);animation:winPop .6s var(--spring) .35s backwards}.cell.dim .mark{opacity:.28;transition:opacity .6s .3s}.winline{position:absolute;inset:10px;width:calc(100% - 20px);height:calc(100% - 20px);overflow:visible;pointer-events:none}.winline line{stroke:#fff;stroke-width:7;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;filter:drop-shadow(0 0 8px var(--wc));animation:draw .55s var(--ease) .3s forwards}.status{display:inline-flex;align-items:center;gap:10px;padding:10px 20px;border-radius:999px;font-weight:700;border:1px solid var(--line);background:rgba(255,255,255,.04);animation:popIn .45s var(--spring) backwards}.status.mine{color:var(--x);border-color:rgba(255,159,67,.4);background:rgba(255,159,67,.08)}.status.theirs{color:var(--mute)}.status-sym{width:22px;height:22px}.dots{display:inline-flex;gap:4px;margin-left:4px;vertical-align:middle}.dots span{width:5px;height:5px;border-radius:50%;background:currentColor;animation:dot 1.2s infinite}.dots span:nth-child(2){animation-delay:.15s}.dots span:nth-child(3){animation-delay:.3s}.result{display:grid;justify-items:center;grid-gap:10px;gap:10px;text-align:center;animation:resultIn .7s var(--spring) .4s backwards}.result h2{margin:0;font-size:clamp(1.8rem,5vw,2.5rem);font-weight:900;letter-spacing:-.035em;line-height:1.1}.result.win h2{background:linear-gradient(90deg,var(--x),var(--x2),var(--o2),var(--x));background-size:300% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 4s linear infinite}.result.draw h2{color:var(--o)}.result.lose h2{color:var(--mute);animation:shake .5s .9s}.result .pts{padding:4px 14px;border-radius:999px;font-weight:800;font-size:.9rem}.pts.win{background:rgba(52,211,153,.12);color:var(--ok)}.pts.draw{background:rgba(56,189,248,.12);color:var(--o)}.pts.lose{background:rgba(255,255,255,.06);color:var(--mute)}.waiting{display:grid;justify-items:center;grid-gap:10px;gap:10px;padding:6px 0;text-align:center}.radar{position:relative;display:grid;place-items:center;width:210px;height:210px;margin-bottom:6px;border-radius:50%}.radar i,.radar:after,.radar:before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid rgba(56,189,248,.5);animation:ripple 2.4s var(--ease) infinite}.radar:after{animation-delay:.8s}.radar i{animation-delay:1.6s}.radar-sweep{position:absolute;inset:0;border-radius:50%;animation:spinSlow 2.6s linear infinite;background:conic-gradient(from 0deg,rgba(56,189,248,.35),transparent 28%);-webkit-mask-image:radial-gradient(circle,transparent 28%,#000 29%);mask-image:radial-gradient(circle,transparent 28%,#000 29%)}.radar .logo{width:76px;height:76px;border-radius:22px;z-index:1;animation:bob 3s ease-in-out infinite}.confetti{position:fixed;inset:0;z-index:60;overflow:hidden;pointer-events:none}.confetti i{position:absolute;top:-20px;left:var(--x);width:var(--w);height:calc(var(--w) * 1.6);border-radius:2px;background:var(--c);opacity:0;animation:fall var(--d) cubic-bezier(.3,.6,.5,1) var(--delay) forwards}.toast{position:fixed;left:50%;bottom:24px;z-index:70;transform:translateX(-50%);max-width:calc(100vw - 32px);display:flex;align-items:center;gap:10px;padding:12px 18px;border-radius:14px;background:#2a1620;color:#ffd4d4;border:1px solid rgba(255,123,123,.45);box-shadow:var(--shadow);animation:toastIn .5s var(--spring) backwards}.toast .icon{color:var(--err)}.bump{display:inline-block;animation:bump .5s var(--spring)}@media (max-width:820px){.grid-2{grid-template-columns:1fr}}@media (max-width:720px){.nav,.user{display:none}.burger{display:block}.hero{grid-template-columns:1fr;padding:24px}.hero .btn{width:100%}.main{padding:20px 14px 32px}}@media (max-width:480px){.player-sym{width:34px;height:34px;padding:5px}.player{padding:10px;gap:8px}.player .you-tag{display:none}.podium-col .avatar{width:44px;height:44px}.podium-col.p1 .avatar{width:56px;height:56px}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes markPop{0%{transform:scale(.6) rotate(-8deg)}}@keyframes shine{to{background-position:300%}}@keyframes gridMove{to{transform:translate(64px,64px)}}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-34px) rotate(22deg)}}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}}@keyframes viewIn{0%{opacity:0;transform:translateY(14px)}}@keyframes cardIn{0%{opacity:0;transform:translateY(20px) scale(.98)}}@keyframes itemIn{0%{opacity:0;transform:translateX(-16px)}}@keyframes wordIn{0%{opacity:0;transform:translateY(26px) rotate(-8deg) scale(.7)}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes flip{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(.82)}to{transform:rotate(1turn) scale(1)}}@keyframes spinSlow{to{transform:rotate(1turn)}}@keyframes glow{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,159,67,.55),0 10px 30px -10px rgba(255,107,107,.75)}70%{box-shadow:0 0 0 16px rgba(255,159,67,0),0 10px 30px -10px rgba(255,107,107,.75)}to{box-shadow:0 0 0 0 rgba(255,159,67,0),0 10px 30px -10px rgba(255,107,107,.75)}}@keyframes ring{0%{box-shadow:0 0 0 0 rgba(52,211,153,.6)}70%{box-shadow:0 0 0 8px rgba(52,211,153,0)}to{box-shadow:0 0 0 0 rgba(52,211,153,0)}}@keyframes tile{0%,to{opacity:.35;transform:scale(.82)}50%{opacity:1;transform:scale(1);background:rgba(56,189,248,.28)}}@keyframes rise{0%{transform:scaleY(0);opacity:0}}@keyframes boardIn{0%{opacity:0;transform:scale(.85) rotate(-4deg)}}@keyframes cellIn{0%{opacity:0;transform:scale(.5)}}@keyframes winPop{0%{transform:scale(1)}50%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}}@keyframes resultIn{0%{opacity:0;transform:scale(.5) translateY(10px)}}@keyframes shake{0%,to{transform:translateX(0)}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}@keyframes dot{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}@keyframes ripple{0%{transform:scale(.3);opacity:1}to{transform:scale(1);opacity:0}}@keyframes fall{0%{opacity:1;transform:translateZ(0) rotate(0)}to{opacity:0;transform:translate3d(var(--dx),105vh,0) rotate(var(--r))}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,24px) scale(.9)}}@keyframes bump{0%{transform:scale(1)}40%{transform:scale(1.35)}to{transform:scale(1)}}.hero-actions{display:flex;flex-direction:column;gap:10px;min-width:220px}.btn-link-challenge{background:rgba(56,189,248,.12);border-color:rgba(56,189,248,.35);color:var(--o)}.btn-link-challenge:hover:not(:disabled){background:rgba(56,189,248,.22);border-color:var(--o);box-shadow:0 8px 24px -10px rgba(56,189,248,.8)}.challenge-banner-list{display:grid;grid-gap:10px;gap:10px;margin-bottom:20px;animation:slideDown .4s var(--spring)}.challenge-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;border-radius:16px;background:linear-gradient(135deg,rgba(255,159,67,.12),rgba(20,27,46,.92));border:1px solid rgba(255,159,67,.4);box-shadow:0 10px 30px -10px rgba(255,159,67,.4)}.challenge-banner-info{display:flex;align-items:center;gap:14px}.challenge-banner-title{font-size:1rem}.challenge-banner-actions{display:flex;align-items:center;gap:10px}.share-box{width:100%;max-width:480px;margin:12px 0 16px;display:grid;grid-gap:10px;gap:10px}.share-input-wrap{display:flex;align-items:center;gap:8px;background:rgba(5,8,15,.65);border:1px solid var(--line-strong);border-radius:14px;padding:6px 6px 6px 14px;transition:border-color .2s}.share-input-wrap:focus-within{border-color:var(--o)}.share-link-icon{color:var(--mute);flex-shrink:0}.share-input{flex:1 1;background:transparent;border:none;color:var(--txt);font-size:.88rem;outline:none;min-width:0;text-overflow:ellipsis}.share-actions{display:flex;justify-content:center;gap:10px}.modal-backdrop{position:fixed;inset:0;z-index:80;background:rgba(5,8,15,.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px;animation:viewIn .25s var(--ease)}.modal-card{width:min(440px,100%);padding:28px;gap:18px;border-radius:20px;background:var(--card-solid);border:1px solid var(--line-strong);box-shadow:0 24px 64px -16px rgba(0,0,0,.8);animation:cardIn .35s var(--spring)}.modal-head{justify-content:space-between;gap:12px}.modal-head,.modal-title{display:flex;align-items:center}.modal-title{margin:0;gap:10px;font-size:1.2rem;font-weight:800}.modal-body{display:grid;grid-gap:12px;gap:12px}.modal-foot{display:flex;justify-content:flex-end;gap:10px}.btn-challenge-action{opacity:.85;padding:4px 10px;font-size:.8rem;border:1px solid rgba(255,159,67,.3);color:var(--x);background:rgba(255,159,67,.06);border-radius:999px;transition:all .2s;display:inline-flex;align-items:center;gap:6px}.btn-challenge-action:hover{opacity:1;background:rgba(255,159,67,.18);border-color:var(--x);transform:translateY(-1px)}.invite-notice{width:100%;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;background:rgba(56,189,248,.1);border:1px solid rgba(56,189,248,.3);color:var(--o);font-size:.88rem;font-weight:600;text-align:left}@media (max-width:720px){.hero-actions{width:100%}.challenge-banner{flex-direction:column;align-items:flex-start}.challenge-banner-actions{width:100%;justify-content:flex-end}}@media (max-width:480px){.btn-challenge-text{display:none}.btn-challenge-action{padding:4px 8px}}@media (prefers-reduced-motion:reduce){.bg-grid,.bg-shape,.empty-board i,.hero-deco,.hero:after,.live-dot,.live:before,.pulse:not(:disabled),.radar .spin,.radar i,.radar:after,.radar:before{animation:none!important}.confetti{display:none}}.setup{display:grid;grid-gap:8px;gap:8px;margin-top:6px}.seg{display:inline-flex;flex-wrap:wrap;gap:4px;width:-moz-fit-content;width:fit-content;max-width:100%;padding:4px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--line)}.seg-btn{padding:7px 14px;border:0;border-radius:10px;background:none;color:var(--mute);font-weight:700;font-size:.88rem;transition:color .2s,background .2s,transform .25s var(--spring)}.seg-btn:hover:not(.active){color:var(--txt);background:rgba(255,255,255,.06)}.seg-btn:active{transform:scale(.96)}.seg-btn.active{color:#1d1006;background:linear-gradient(135deg,#ffb547,var(--x) 45%,var(--x2));box-shadow:0 6px 18px -8px rgba(255,107,107,.7)}.game-tag{padding:4px 12px;border-radius:999px;font-size:.78rem;font-weight:700;color:var(--o);background:rgba(56,189,248,.1);border:1px solid rgba(56,189,248,.3)}.points-grid.two{grid-template-columns:repeat(2,1fr)}.rps-score{display:grid;place-items:center;padding:0;font-weight:900;font-size:1.3rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rps-meta{color:var(--mute);font-size:.85rem;font-weight:600;text-align:center}.rps-arena{width:100%;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;padding:6px 0}.rps-arena,.rps-hand-wrap{display:grid;justify-items:center}.rps-hand{display:grid;place-items:center;width:clamp(104px,28vw,160px);aspect-ratio:1;border-radius:30px;font-size:clamp(3.6rem,14vw,5.8rem);line-height:1;overflow:hidden;background:rgba(5,8,15,.5);border:1px solid var(--line);transition:border-color .3s,box-shadow .3s,opacity .4s,background .3s}.hand-flip{display:block}.rps-hand.r .hand-flip{transform:scaleX(-1)}.hand-move{display:block;transform-origin:50% 85%}.rps-hand.idle .hand-move{animation:bob 2.4s ease-in-out infinite}.rps-hand.shake .hand-move{animation:rpsShake .55s ease-in-out 3}.rps-hand.show .hand-move{animation:rpsReveal .55s var(--spring)}.rps-hand.win{border-color:rgba(52,211,153,.7);box-shadow:0 0 0 5px rgba(52,211,153,.12),0 16px 40px -14px rgba(52,211,153,.7);background:rgba(52,211,153,.08)}.rps-hand.lose{opacity:.5}.rps-hand.tie{border-color:rgba(56,189,248,.6);box-shadow:0 0 0 5px rgba(56,189,248,.1)}.rps-picks{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;width:min(460px,100%)}.rps-pick{display:grid;justify-items:center;grid-gap:4px;gap:4px;padding:16px 8px;border-radius:18px;font-weight:700;border:1px solid var(--line-strong);background:rgba(255,255,255,.04);transition:transform .3s var(--spring),background .2s,border-color .2s,opacity .3s,box-shadow .3s}.rps-pick .emo{font-size:2.6rem;line-height:1.1}.rps-pick:hover:not(:disabled){transform:translateY(-5px) scale(1.04);background:rgba(255,255,255,.09);border-color:var(--x);box-shadow:0 12px 28px -14px rgba(255,159,67,.8)}.rps-pick:active:not(:disabled){transform:scale(.95)}.rps-pick:disabled{cursor:default}.rps-pick:disabled:not(.chosen){opacity:.4}.rps-pick.chosen{border-color:var(--ok);background:rgba(52,211,153,.12);box-shadow:0 0 0 4px rgba(52,211,153,.1)}@keyframes rpsShake{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-26px) rotate(-14deg)}50%{transform:translateY(10px) rotate(6deg)}75%{transform:translateY(-14px) rotate(-8deg)}}@keyframes rpsReveal{0%{transform:scale(.3) rotate(-25deg);opacity:0}60%{transform:scale(1.25) rotate(4deg)}}@media (max-width:480px){.rps-score{font-size:1.1rem}.rps-pick .emo{font-size:2.2rem}}.naval-place{display:grid;grid-gap:12px;gap:12px;justify-items:center;width:100%}.naval-place .center{text-align:center}.naval-place kbd{display:inline-block;padding:1px 6px;border-radius:6px;font-size:.75rem;font-weight:700;border:1px solid var(--line-strong);background:rgba(255,255,255,.06)}.naval-ships,.naval-toolbar{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.naval-ship-chip{display:grid;justify-items:center;grid-gap:4px;gap:4px;padding:8px 10px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--mute);font-size:.75rem;font-weight:700;transition:border-color .2s,background .2s,color .2s}.naval-ship-chip:disabled:not(.placed){opacity:.45;cursor:default}.naval-ship-chip.next{border-color:var(--o);color:var(--txt);background:rgba(56,189,248,.1)}.naval-ship-chip.placed{border-color:rgba(52,211,153,.45);color:var(--txt)}.naval-ship-chip.selected{border-color:var(--x);box-shadow:0 0 0 3px rgba(255,159,67,.15)}.naval-ship-bars{display:flex;gap:2px}.naval-ship-bars i{width:10px;height:10px;border-radius:2px;background:linear-gradient(135deg,#7dd3fc,#0284c7)}.naval-wait{padding:24px 0}.naval-battle{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;width:100%;align-items:start}.naval-board-wrap{display:grid;grid-gap:6px;gap:6px;justify-items:center;min-width:0}.naval-board-title{font-size:.8rem;font-weight:700;color:var(--mute);text-align:center}.naval-grid{display:grid;grid-template-columns:18px repeat(8,minmax(0,1fr));grid-template-rows:18px repeat(8,minmax(0,1fr));grid-gap:2px;gap:2px;width:min(100%,280px);aspect-ratio:1;padding:6px;border-radius:14px;background:rgba(5,8,15,.55);border:1px solid var(--line)}.naval-grid.fireable{border-color:rgba(255,159,67,.35);box-shadow:0 0 0 4px rgba(255,159,67,.06)}.naval-label{display:grid;place-items:center;font-size:.65rem;font-weight:700;color:var(--mute);-webkit-user-select:none;-moz-user-select:none;user-select:none}.naval-cell{position:relative;border:0;border-radius:4px;padding:0;min-width:0;min-height:0;background:rgba(14,116,144,.22);transition:background .15s,transform .15s,box-shadow .15s}.naval-cell:disabled{cursor:default}.naval-cell.ship{background:linear-gradient(135deg,#64748b,#334155)}.naval-cell.ship.selected{box-shadow:inset 0 0 0 2px var(--x)}.naval-cell.ship-reveal{background:rgba(100,116,139,.55)}.naval-cell.preview-ok{background:rgba(52,211,153,.35)}.naval-cell.preview-bad{background:rgba(248,113,113,.4)}.naval-cell.miss{background:rgba(56,189,248,.15)}.naval-cell.miss:after{content:"";position:absolute;inset:35%;border-radius:50%;background:rgba(148,163,184,.85)}.naval-cell.hit{background:rgba(248,113,113,.35)}.naval-cell.hit:after{content:"";position:absolute;inset:22%;border-radius:50%;background:radial-gradient(circle at 40% 35%,#fecaca,#ef4444 55%,#991b1b);box-shadow:0 0 8px rgba(239,68,68,.5)}.naval-cell.sunk{background:rgba(127,29,29,.55)}.naval-cell.sunk:after{content:"";position:absolute;inset:18%;border-radius:3px;background:linear-gradient(135deg,#7f1d1d,#450a0a);box-shadow:inset 0 0 0 1px rgba(254,202,202,.25)}.naval-cell.target:not(:disabled):hover{background:rgba(255,159,67,.28);transform:scale(1.06);box-shadow:0 0 0 1px rgba(255,159,67,.5)}@media (max-width:640px){.naval-battle{grid-template-columns:1fr;justify-items:center}.naval-grid{width:min(100%,320px)}}@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit Fallback;src:local("Arial");ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.00%;size-adjust:99.82%}.__className_a80a2d{font-family:Outfit,Outfit Fallback;font-style:normal}.__variable_a80a2d{--font-sans:"Outfit","Outfit Fallback"}