:root{color:#f4f0e8;font-synthesis:none;text-rendering:geometricprecision;background:#0b0d10;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#0b0d10}body{background:#0b0d10;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.page-shell{background:radial-gradient(circle at 88% 4%,#c1ff5614,#0000 28rem),#0b0d10;min-height:100vh;position:relative;overflow:hidden}.noise{pointer-events:none;opacity:.18;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E");position:fixed;inset:0}.topbar,.hero,.games-section,footer{width:min(1240px,100% - 48px);margin:0 auto}.topbar{border-bottom:1px solid #24282f;justify-content:space-between;align-items:center;height:88px;display:flex}.brand{letter-spacing:.16em;align-items:center;gap:12px;font-size:14px;font-weight:800;display:inline-flex}.brand-mark{color:#0b0d10;letter-spacing:0;background:#c1ff56;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:950;display:grid}.status-pill{color:#8f969f;letter-spacing:.14em;align-items:center;gap:9px;font-size:11px;font-weight:800;display:flex}.pulse{background:#c1ff56;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 5px #c1ff5614}.hero{grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);align-items:end;gap:84px;padding:92px 0 82px;display:grid}.eyebrow,.panel-label,.card-topline,.game-copy p,footer{letter-spacing:.18em;text-transform:uppercase;font-size:10px;font-weight:800}.eyebrow{color:#8c939b;margin:0 0 22px}.hero h1{letter-spacing:-.065em;max-width:820px;margin:0;font-size:clamp(58px,7.4vw,112px);font-weight:900;line-height:.88}.hero h1 span{color:#c1ff56}.hero-note{color:#999fa7;max-width:630px;margin:34px 0 0;font-size:16px;line-height:1.7}.quick-room{background:#111418d6;border:1px solid #2a2f36;padding:28px;position:relative;box-shadow:12px 12px #050607}.quick-room:before{content:"";background:#c1ff56;width:8px;height:8px;position:absolute;top:-1px;left:-1px}.panel-label{color:#747b84}.quick-room-glyph{letter-spacing:-.25em;margin-top:42px;font-family:Georgia,serif;font-size:68px}.quick-room-glyph span{color:#c1ff56}.quick-room h2{letter-spacing:-.04em;margin:18px 0 10px;font-size:32px}.quick-room p{color:#8f969e;margin:0 0 28px;font-size:14px;line-height:1.65}.primary-button,.card-action{color:#0b0d10;letter-spacing:.12em;background:#c1ff56;border:0;justify-content:space-between;align-items:center;width:100%;padding:16px 18px;font-size:12px;font-weight:900;display:flex}.primary-button:hover,.card-action:hover{transform:translate(-2px,-2px);box-shadow:4px 4px #f4f0e8}.join-row{border:1px solid #30353d;grid-template-columns:1fr 48px;margin-top:10px;display:grid}.join-row input{color:#f4f0e8;letter-spacing:.18em;text-transform:uppercase;background:0 0;border:0;outline:none;min-width:0;padding:15px 16px;font-size:12px;font-weight:800}.join-row button{color:#f4f0e8;background:#181b20;border:0;border-left:1px solid #30353d;font-size:20px}.games-section{border-top:1px solid #24282f;padding:76px 0 90px}.section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px;display:flex}.section-heading h2{letter-spacing:-.055em;margin:0;font-size:clamp(36px,4vw,58px)}.section-heading>p{color:#777f88;text-align:right;max-width:320px;margin:0 0 8px;font-size:13px;line-height:1.6}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.game-card{background:#111419;border:1px solid #252a31;flex-direction:column;min-height:360px;padding:22px;transition:transform .18s,border-color .18s;display:flex}.game-card:hover{border-color:#444b55;transform:translateY(-4px)}.game-card.active{background:#141914;border-color:#4c5f2d}.card-topline{color:#676e77;justify-content:space-between;display:flex}.game-card.active .card-topline span:last-child{color:#c1ff56}.game-glyph{letter-spacing:-.12em;flex:1;place-items:center;font-family:Georgia,serif;font-size:clamp(64px,8vw,110px);display:grid}.tetris .game-glyph{letter-spacing:0}.snake .game-glyph{letter-spacing:-.2em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.chess .game-glyph{font-size:110px}.game-copy p{color:#676e77;margin:0 0 8px}.game-copy h3{letter-spacing:-.035em;margin:0 0 22px;font-size:30px}.card-action{margin-top:auto}.card-action.disabled{color:#5e656d;background:0 0;border-top:1px solid #2a2f35;padding-left:0;padding-right:0}footer{color:#555c65;border-top:1px solid #24282f;justify-content:space-between;align-items:center;gap:18px;min-height:84px;display:flex}@media (width<=900px){.hero{grid-template-columns:1fr;gap:48px;padding-top:64px}.quick-room{max-width:520px}.section-heading{flex-direction:column;align-items:start}.section-heading>p{text-align:left}}@media (width<=680px){.topbar,.hero,.games-section,footer{width:min(100% - 28px,1240px)}.topbar{height:72px}.status-pill{font-size:0}.hero{padding:58px 0 64px}.hero h1{font-size:clamp(52px,17vw,78px)}.game-grid{grid-template-columns:1fr}.game-card{min-height:310px}footer{flex-direction:column;align-items:flex-start;padding:24px 0}}.home .library,.home .game-picker{scrollbar-width:none;-ms-overflow-style:none}.home .library::-webkit-scrollbar{width:0;height:0;display:none}.home .game-picker::-webkit-scrollbar{width:0;height:0;display:none}@media (width>=651px){.home .library{overscroll-behavior:contain;overflow-y:auto}.home .library .game-picker{flex:none;min-height:auto;overflow:visible}}.room-shell{background:radial-gradient(circle at 50% -10%,#c1ff5614,#0000 32rem),#0b0d10;min-height:100vh;position:relative}.room-topbar,.room-main,.room-footer{width:min(1280px,100% - 48px);margin:0 auto}.room-topbar{border-bottom:1px solid #24282f;justify-content:space-between;align-items:center;height:82px;display:flex}.room-meta{color:#747b84;letter-spacing:.16em;align-items:center;gap:22px;font-size:10px;font-weight:800;display:flex}.room-meta strong{color:#f4f0e8}.live-badge{color:#c1ff56;align-items:center;gap:8px;display:inline-flex}.live-badge i{background:currentColor;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 5px #c1ff5614}.live-badge.offline{color:#ff7e6b}.room-main{padding:42px 0 72px}.match-head{grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;margin-bottom:30px;display:grid}.player-card{align-items:center;gap:14px;min-width:0;display:flex}.player-card.right{text-align:right;justify-content:flex-end}.player-card span,.match-status span,.match-status p,.room-facts span,.code-display small,.room-footer{color:#666e77;letter-spacing:.17em;font-size:9px;font-weight:800}.player-card strong{letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;margin-top:5px;font-size:14px;display:block;overflow:hidden}.player-stone{border-radius:50%;flex:none;width:34px;height:34px}.player-stone.black{background:#050607;border:1px solid #3a3f46;box-shadow:inset -7px -7px 12px #ffffff0d,0 8px 20px #0000004d}.player-stone.white{background:#ece8de;border:1px solid #fff;box-shadow:inset -6px -6px 12px #0000001f,0 8px 20px #00000038}.match-status{text-align:center}.match-status h1{color:#c1ff56;letter-spacing:-.035em;margin:6px 0 5px;font-size:24px;line-height:1}.match-status p{margin:0}.board-stage{grid-template-columns:minmax(0,1fr) 290px;align-items:start;gap:28px;display:grid}.board-frame{background:#111419;border:1px solid #313740;padding:clamp(18px,2.6vw,34px);box-shadow:14px 14px #050607}.gomoku-board{aspect-ratio:1;background:#c8a56f;border:1px solid #d8b982;grid-template-rows:repeat(15,1fr);grid-template-columns:repeat(15,1fr);width:min(100%,760px);margin:0 auto;padding:3.2%;display:grid;box-shadow:inset 0 0 0 5px #37241314,inset 0 20px 40px #ffffff0f}.board-cell{background:linear-gradient(90deg,#0000 calc(50% - .5px),#362618b8 calc(50% - .5px) calc(50% + .5px),#0000 calc(50% + .5px)),linear-gradient(#0000 calc(50% - .5px),#362618b8 calc(50% - .5px) calc(50% + .5px),#0000 calc(50% + .5px));border:0;min-width:0;padding:0;position:relative}.board-cell:nth-child(-n+15){background-image:linear-gradient(90deg,#0000 calc(50% - .5px),#362618b8 calc(50% - .5px) calc(50% + .5px),#0000 calc(50% + .5px)),linear-gradient(#0000 50%,#362618b8 50% calc(50% + .5px),#0000 calc(50% + .5px))}.stone,.ghost-stone{aspect-ratio:1;z-index:2;border-radius:50%;width:78%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.stone-black{background:radial-gradient(circle at 34% 28%,#41454a 0,#17191c 36%,#030405 76%);box-shadow:0 5px 8px #2a180859}.stone-white{background:radial-gradient(circle at 34% 28%,#fff 0,#eee9df 44%,#c9c3b8 100%);box-shadow:0 5px 8px #2a180840}.ghost-stone{opacity:0;background:#12141633;transition:opacity .1s}.board-cell.playable:hover .ghost-stone{opacity:1}.board-cell.last:after{content:"";z-index:3;background:#ff604f;border-radius:50%;width:7px;height:7px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.room-panel{background:#111418f0;border:1px solid #2a2f36;padding:24px}.code-display{padding:34px 0 24px}.code-display span{color:#f4f0e8;letter-spacing:.16em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:34px;font-weight:900;display:block}.code-display small{margin-top:8px;display:block}.room-facts{border-top:1px solid #2a2f36;margin-top:22px}.room-facts div{border-bottom:1px solid #22272d;justify-content:space-between;gap:12px;padding:14px 0;display:flex}.room-facts strong{letter-spacing:.09em;font-size:10px}.room-error{color:#ff9b8e;background:#ff5a4614;border:1px solid #ff5a4638;margin-top:16px;padding:12px;font-size:12px;line-height:1.5}.secondary-button{color:#f4f0e8;letter-spacing:.13em;background:0 0;border:1px solid #3a4048;width:100%;margin-top:10px;padding:13px 16px;font-size:11px;font-weight:900}.room-footer{border-top:1px solid #24282f;justify-content:space-between;align-items:center;gap:20px;min-height:74px;display:flex}@media (width<=980px){.board-stage{grid-template-columns:1fr}.room-panel{grid-template-columns:1fr 1fr;align-items:end;gap:18px;display:grid}.room-facts,.room-error,.secondary-button{grid-column:1/-1}}@media (width<=720px){.room-topbar,.room-main,.room-footer{width:min(100% - 28px,1280px)}.room-topbar{height:72px}.room-meta>span:first-child{display:none}.match-head{grid-template-columns:1fr 1fr;gap:18px}.match-status{grid-area:1/1/auto/-1}.player-card{grid-row:2}.board-frame{padding:12px;box-shadow:8px 8px #050607}.room-panel{display:block}.room-footer{flex-direction:column;align-items:flex-start;padding:22px 0}.player-card strong{font-size:11px}}.arcade-top-nav.svelte-12jie2o{height:calc(44px + env(safe-area-inset-top));box-sizing:border-box;padding:env(safe-area-inset-top) 18px 0;color:#f4f0e8;z-index:100;background:#0b0d10;border-bottom:1px solid #272c33;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;column-gap:16px;display:grid;position:relative}.brand.svelte-12jie2o{color:#f4f0e8;letter-spacing:.15em;white-space:nowrap;grid-column:1;justify-self:start;align-items:center;gap:9px;min-width:0;font-size:10px;font-weight:900;text-decoration:none;display:inline-flex}.brand-mark.svelte-12jie2o{color:#0b0d10;letter-spacing:0;background:#c1ff56;flex:none;place-items:center;width:24px;height:24px;font-size:11px;display:grid}.context.svelte-12jie2o{color:#727b85;letter-spacing:.13em;white-space:nowrap;text-transform:uppercase;pointer-events:none;grid-column:2;justify-self:center;align-items:center;gap:7px;min-width:0;max-width:min(460px,42vw);font:800 9px ui-monospace,SFMono-Regular,Menlo,monospace;display:flex}.context.svelte-12jie2o span:where(.svelte-12jie2o){text-overflow:ellipsis;overflow:hidden}.context.svelte-12jie2o i:where(.svelte-12jie2o){color:#3f4650;font-style:normal}.context.svelte-12jie2o strong:where(.svelte-12jie2o){color:#f4f0e8;font:inherit}.right-tools.svelte-12jie2o{white-space:nowrap;grid-column:3;justify-content:flex-end;justify-self:end;align-items:center;gap:10px;min-width:0;display:flex}.replay-status.svelte-12jie2o{text-overflow:ellipsis;color:#8b949e;letter-spacing:.11em;font:800 8px ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden}.replay-status.active.svelte-12jie2o{color:#c1ff56}.replay-status.error.svelte-12jie2o{color:#ff7b72}.language-switch.svelte-12jie2o{color:#3f4650;white-space:nowrap;flex:none;align-items:center;gap:4px;font:800 9px ui-monospace,SFMono-Regular,Menlo,monospace;display:flex}.language-switch.svelte-12jie2o button:where(.svelte-12jie2o){color:#737b85;height:28px;font:inherit;cursor:pointer;background:0 0;border:0;padding:0 6px}.language-switch.svelte-12jie2o button.active:where(.svelte-12jie2o){color:#c1ff56}@media (width<=640px){.arcade-top-nav.svelte-12jie2o{height:calc(40px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 10px 0;grid-template-columns:minmax(0,1fr) auto;column-gap:8px}.brand.svelte-12jie2o{grid-column:1;gap:7px;font-size:9px}.brand-mark.svelte-12jie2o{width:22px;height:22px}.context.svelte-12jie2o{display:none}.right-tools.svelte-12jie2o{grid-column:2;justify-self:end;gap:6px}.replay-status.svelte-12jie2o{max-width:68px;font-size:7px}.language-switch.svelte-12jie2o button:where(.svelte-12jie2o){height:26px;padding:0 5px}}@media (width<=420px){.replay-status.svelte-12jie2o{display:none}}@media (width<=360px){.brand-copy.svelte-12jie2o{display:none}}.arcade-shell.svelte-12qhfyh{grid-template-rows:calc(44px + env(safe-area-inset-top)) minmax(0,1fr);background:#0b0d10;height:100dvh;min-height:0;display:grid;overflow:hidden}.arcade-content.svelte-12qhfyh{overscroll-behavior:contain;min-height:0;overflow:auto}.arcade-content>.home{grid-template-rows:minmax(0,1fr)!important;height:100%!important;min-height:0!important}.arcade-content>.home>.home-nav{display:none!important}.arcade-content>.room-shell{min-height:100%!important}.arcade-content .room-topbar{display:none!important}.arcade-content .room-main{padding-top:24px}.arcade-content>.page{height:100%!important;min-height:0!important}.arcade-content>.page>.topbar{z-index:90;position:relative;height:0!important;min-height:0!important}.arcade-content>.page>.topbar .title-copy,.arcade-content>.page>.topbar .actions,.arcade-content>.page>header:not(.topbar)>div:first-child>a,.arcade-content>.page>header:not(.topbar) .players button:first-of-type{display:none!important}@media (width<=640px){.arcade-shell.svelte-12qhfyh{grid-template-rows:calc(40px + env(safe-area-inset-top)) minmax(0,1fr)}.arcade-content .room-main{padding-top:16px}}
