:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f4f6ee;--surface:#e8ebdf;--surface-strong:#d8ddcf;--text:#141715;--muted:#5f675f;--line:#cbd1c1;--accent:#57c868;--accent-strong:#246b34;--button-text:#101411;--gomoku-board:#c6d0bd;--gomoku-board-deep:#aebaa5;--gomoku-line:#46584861;--gomoku-line-soft:#46584829;--result-bg:#f7faf2;--result-panel:#e9efe1;--result-border:#a9b99f;--result-text:#101411;--shadow:0 24px 80px #4852402e;font-family:Aptos,Segoe UI,system-ui,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#111512;--surface:#1b211d;--surface-strong:#252d27;--text:#f0f4ed;--muted:#a6b0a6;--line:#364036;--accent:#65d978;--accent-strong:#9bed9f;--button-text:#101411;--gomoku-board:#2a352c;--gomoku-board-deep:#202a23;--gomoku-line:#acbeab47;--gomoku-line-soft:#acbeab1f;--result-bg:#182119;--result-panel:#253025;--result-border:#4b5d4b;--result-text:#f0f4ed;--shadow:0 24px 80px #0408056b}}*{box-sizing:border-box}body{background:radial-gradient(circle at 78% 10%, #57c8682e, transparent 32rem), linear-gradient(135deg, var(--bg), var(--surface));min-width:320px;min-height:100dvh;color:var(--text);margin:0}button,a,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{border:0}a{color:inherit;text-decoration:none}.site-shell{width:min(1180px,100% - 32px);min-height:100dvh;margin:0 auto;padding:20px 0 56px}.topbar{justify-content:space-between;align-items:center;gap:24px;min-height:64px;display:flex}.brand-link,.topbar nav{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.brand-link{letter-spacing:0;font-weight:800}.topbar nav a{border:1px solid var(--line);color:var(--muted);background:#ffffff2e;border-radius:14px;padding:10px 14px}.topbar nav a[aria-current=page]{color:var(--text);border-color:var(--accent)}.hub-hero{grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);align-items:end;gap:48px;min-height:min(680px,100dvh - 120px);padding:64px 0 40px;display:grid}.hub-copy h1,.game-heading h1{letter-spacing:0;margin:0;font-size:clamp(3.7rem,12vw,8.5rem);line-height:.92}.hub-copy p:last-child,.game-heading p{max-width:58ch;color:var(--muted);margin:24px 0 0;font-size:1.08rem;line-height:1.6}.eyebrow,.game-card-kicker{letter-spacing:.14em;color:var(--accent-strong);margin:0 0 14px;font-size:.75rem;font-weight:800}.hub-panel,.game-card,.control-panel,.board-wrap{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff3;border-radius:18px}.hub-panel{gap:22px;padding:24px;display:grid}.panel-stat,.stat,.status-block{gap:6px;display:grid}.panel-stat span,.stat span,.status-block span,.speed-control span,.speed-control output{color:var(--muted);font-size:.84rem}.panel-stat strong{font-size:2.7rem;line-height:1}.game-grid{grid-template-columns:1.25fr .75fr;gap:20px;display:grid}.game-card{flex-direction:column;justify-content:space-between;min-height:260px;padding:28px;display:flex}.game-card h2{margin:0;font-size:clamp(2.8rem,7vw,5.8rem);line-height:.9}.game-card p{max-width:42ch;color:var(--muted);line-height:1.55}.is-reserved{box-shadow:none}.primary-link,.primary-button,.secondary-button,.ghost-button,.icon-button{border-radius:14px;justify-content:center;align-items:center;gap:9px;min-height:44px;font-weight:800;transition:transform .16s,border-color .16s,background .16s;display:inline-flex}.primary-link,.primary-button{width:fit-content;color:var(--button-text);background:var(--accent);padding:0 18px}.secondary-button,.ghost-button,.icon-button{border:1px solid var(--line);color:var(--text);background:#ffffff29}.secondary-button,.ghost-button{padding:0 16px}.primary-link:active,.primary-button:active,.secondary-button:active,.icon-button:active{transform:translateY(1px)scale(.99)}button:disabled{cursor:default;opacity:.45}.game-layout{grid-template-columns:minmax(0,1fr) 320px;gap:28px;padding-top:44px;display:grid}.game-main{min-width:0}.game-heading{gap:18px;display:grid}.game-heading h1{font-size:clamp(4.4rem,13vw,9rem)}.stats-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:26px 0;display:grid}.stat{border:1px solid var(--line);background:#ffffff29;border-radius:16px;padding:16px}.stat strong{font-size:1.55rem}.board-wrap{width:min(100%,560px);padding:14px}.board{aspect-ratio:1;touch-action:none;-webkit-user-select:none;user-select:none;grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.gomoku-layout,.net-layout{grid-template-columns:minmax(0,1fr) 340px}.tetris-layout{grid-template-columns:minmax(0,1fr) 320px}.gomoku-stats{grid-template-columns:1.2fr .8fr 1fr}.net-stats{grid-template-columns:1.2fr .8fr .8fr}.tetris-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.tetris-board-wrap{background:#182019;width:min(100%,440px);padding:12px}.tetris-board{grid-template-columns:repeat(var(--tetris-columns), minmax(0, 1fr));grid-template-rows:repeat(var(--tetris-rows), minmax(0, 1fr));aspect-ratio:1/2;touch-action:manipulation;-webkit-user-select:none;user-select:none;background-color:#101511;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:10% 5%;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:12px;gap:3px;padding:6px;display:grid}.tetris-cell{background:#ffffff0e;border-radius:4px;min-width:0;min-height:0}.tetris-cell[data-piece=I],.next-piece span[data-piece=I]{background:#66d9e8}.tetris-cell[data-piece=T],.next-piece span[data-piece=T]{background:#c084fc}.tetris-cell[data-piece=O],.next-piece span[data-piece=O]{background:#facc15}.tetris-cell[data-piece=J],.next-piece span[data-piece=J]{background:#60a5fa}.tetris-cell[data-piece=L],.next-piece span[data-piece=L]{background:#fb923c}.tetris-cell[data-piece=S],.next-piece span[data-piece=S]{background:#4ade80}.tetris-cell[data-piece=Z],.next-piece span[data-piece=Z]{background:#f87171}.tetris-cell:not([data-piece=empty]){box-shadow:inset 0 1px #ffffff61,inset 0 -6px 12px #00000038,0 0 14px #57c8681a}.tetris-cell[data-kind=locked]{background:#8fa08a;box-shadow:inset 0 1px #ffffff47,inset 0 -7px 12px #1417153d}.tetris-cell[data-ghost=true]{opacity:.36;box-shadow:inset 0 0 0 2px #ffffffb8,inset 0 -6px 12px #0000001f}.tetris-cell[data-clearing=true]{background:#e9f7dc;animation:.26s cubic-bezier(.16,1,.3,1) forwards tetris-line-clear;box-shadow:inset 0 0 0 2px #ffffffe6,0 0 18px #65d9787a}.next-piece{aspect-ratio:2;border:1px solid var(--line);background:#ffffff1f;border-radius:12px;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(4,1fr);gap:5px;padding:8px;display:grid;position:relative}.next-piece span{grid-row:calc(var(--row) + 1);grid-column:calc(var(--column) + 1);border-radius:5px;box-shadow:inset 0 1px #ffffff5c,inset 0 -6px 12px #0003}.tetris-touch-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:min(100%,440px);margin-top:18px;display:grid}.tetris-action{border:1px solid var(--line);min-width:0;min-height:54px;color:var(--text);cursor:pointer;background:#ffffff29;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-weight:850;line-height:1.1;transition:transform .16s,border-color .16s,background .16s;display:inline-flex}.tetris-action:hover,.tetris-action:focus-visible{border-color:var(--accent);background:#57c86829}.tetris-action:active{transform:translateY(1px)scale(.99)}.tetris-action.is-rotate,.tetris-action.is-drop{grid-column:1/-1;min-height:58px}.tetris-action.is-rotate{color:var(--button-text);background:var(--accent)}.tetris-action.is-drop{background:#57c86833;border-color:#57c8686b}.net-board-wrap{background:var(--surface-strong);width:min(100%,620px);padding:12px}.net-board{aspect-ratio:1;touch-action:manipulation;-webkit-user-select:none;user-select:none;gap:8px;display:grid}.net-cell{min-width:0;min-height:0;color:var(--text);cursor:pointer;background:#14171514;border:1px solid #14171524;border-radius:10px;place-items:center;transition:background .16s cubic-bezier(.16,1,.3,1),border-color .16s cubic-bezier(.16,1,.3,1),transform .16s cubic-bezier(.16,1,.3,1);display:grid;position:relative;overflow:hidden}.net-cell:active{transform:scale(.98)}.net-cell[data-lit=true]{background:#57c8682e;border-color:#246b346b}.net-cell[data-locked=true]{border-color:var(--accent)}.net-cell>svg{z-index:3;color:var(--accent-strong);position:absolute;bottom:6px;right:6px}.net-wire{color:#71806f;position:absolute;inset:0}.net-cell[data-lit=true] .net-wire{color:var(--accent-strong)}.net-wire:before,.net-wire:after{content:"";box-sizing:border-box;background:currentColor;display:none;position:absolute}.net-wire.north:before,.net-wire.south:before,.net-wire.east:after,.net-wire.west:after{display:block}.net-wire:before{width:10px;height:100%;top:0;left:calc(50% - 5px)}.net-wire:after{width:100%;height:10px;top:calc(50% - 5px);left:0}.net-wire.north:not(.south):before{height:50%}.net-wire.south:not(.north):before{height:50%;top:50%}.net-wire.east:not(.west):after{width:50%;left:50%}.net-wire.west:not(.east):after{width:50%}.net-wire{border-radius:999px}.net-wire.north.south.east.west{filter:saturate(1.15)}.net-wire.north.east:not(.south):not(.west):before,.net-wire.east.south:not(.north):not(.west):before,.net-wire.south.west:not(.north):not(.east):before,.net-wire.west.north:not(.east):not(.south):before{background:0 0;border:10px solid;width:50%;height:50%;display:block}.net-wire.north.east:not(.south):not(.west):after,.net-wire.east.south:not(.north):not(.west):after,.net-wire.south.west:not(.north):not(.east):after,.net-wire.west.north:not(.east):not(.south):after{display:none}.net-wire.north.east:not(.south):not(.west):before{border-bottom:0;border-left:0;border-radius:0 999px 0 0;top:0;left:50%}.net-wire.east.south:not(.north):not(.west):before{border-top:0;border-left:0;border-radius:0 0 999px;top:50%;left:50%}.net-wire.south.west:not(.north):not(.east):before{border-top:0;border-right:0;border-radius:0 0 0 999px;top:50%;left:0}.net-wire.west.north:not(.east):not(.south):before{border-bottom:0;border-right:0;border-radius:999px 0 0;top:0;left:0}.net-cell:after{content:"";z-index:2;background:0 0;border-radius:50%;width:0;height:0;position:absolute}.net-cell[data-source=true]:after{color:#246b34;background:currentColor;width:30px;height:30px;box-shadow:0 0 0 5px #57c86829}.net-cell[data-source=true][data-lit=true]:after{color:var(--accent-strong);box-shadow:0 0 0 5px #57c8682e,0 0 24px #57c8685c}.net-help{grid-template-columns:auto 1fr;align-items:start;gap:12px;display:grid}.net-help h2,.net-help p{margin:0}.net-help h2{font-size:1.2rem}.net-help p{color:var(--muted);margin-top:4px;line-height:1.45}.difficulty-control{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.difficulty-control button{border:1px solid var(--line);min-width:0;color:var(--muted);cursor:pointer;background:#ffffff29;border-radius:10px;gap:4px;padding:10px 8px;display:grid}.difficulty-control button[aria-pressed=true]{border-color:var(--accent);color:var(--text);background:#57c8682e}.difficulty-control span{font-size:.8rem;font-weight:800}.difficulty-control strong{font-size:.92rem}.toggle-row{border:1px solid var(--line);min-height:48px;color:var(--text);cursor:pointer;background:#ffffff29;border-radius:10px;justify-content:space-between;align-items:center;padding:0 14px;display:flex}.toggle-row[aria-pressed=true]{border-color:var(--accent);background:#57c8682e}.toggle-row span{color:var(--muted);font-size:.9rem}.net-legend{gap:10px;padding-top:2px;display:grid}.net-legend div{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:.9rem;display:flex}.net-legend strong{color:var(--text);font-size:.95rem}.net-tile{aspect-ratio:1;min-width:0;color:var(--text);cursor:pointer;background:#14171514;border:1px solid #46584833;border-radius:14px;place-items:center;transition:transform .16s cubic-bezier(.16,1,.3,1),border-color .16s cubic-bezier(.16,1,.3,1);display:grid;position:relative;overflow:hidden;box-shadow:0 10px 22px #4852401f}.net-tile:hover,.net-tile:focus-visible{border-color:var(--accent);transform:translateY(-1px)}.net-tile:disabled{opacity:1;cursor:default}.net-tile[data-solved=true]{background:#57c8682e;border-color:#57c86873}.net-node{z-index:2;width:34%;height:34%;color:var(--button-text);background:var(--accent);border-radius:999px;place-items:center;display:grid;position:relative;box-shadow:inset 0 1px #ffffff59,0 0 0 4px #57c8682e}.net-tile[data-source=true] .net-node{color:#f7fff5;background:#246b34}.net-line{z-index:1;background:#246b34;position:absolute;box-shadow:0 0 12px #57c86847}.net-line.is-up,.net-line.is-down{width:12%;height:50%;left:50%;transform:translate(-50%)}.net-line.is-up{top:0}.net-line.is-down{bottom:0}.net-line.is-left,.net-line.is-right{width:50%;height:12%;top:50%;transform:translateY(-50%)}.net-line.is-left{left:0}.net-line.is-right{right:0}.gomoku-board-wrap{background:var(--surface-strong);border-color:#576f5857;width:min(100%,680px);padding:10px;box-shadow:0 28px 76px #48524033}.gomoku-board{aspect-ratio:1;border:1px solid var(--gomoku-line);background:linear-gradient(135deg, var(--gomoku-board), var(--gomoku-board-deep));touch-action:manipulation;border-radius:12px;grid-template-columns:repeat(15,minmax(0,1fr));display:grid;position:relative;overflow:hidden;box-shadow:inset 0 -18px 40px #202a2329}.gomoku-board:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(var(--gomoku-line-soft) 1px, transparent 1px), linear-gradient(90deg, var(--gomoku-line-soft) 1px, transparent 1px);background-size:6.66667% 6.66667%;position:absolute;inset:0}.gomoku-star{z-index:1;left:calc((var(--col) + .5) * 100% / 15);top:calc((var(--row) + .5) * 100% / 15);pointer-events:none;background:#28382b70;border-radius:999px;width:5px;height:5px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 2px #fff3}.gomoku-cell{z-index:2;aspect-ratio:1;color:#0000;cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;min-width:0;display:grid;position:relative}.gomoku-cell:before{content:"";opacity:0;border-radius:999px;transition:opacity .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s cubic-bezier(.16,1,.3,1);position:absolute;inset:14%;transform:scale(.72)}.gomoku-cell:not(:disabled):hover:before,.gomoku-cell:focus-visible:before{opacity:.32;background:var(--accent);transform:scale(.38);box-shadow:0 0 0 3px #57c8682e}.gomoku-cell[data-stone=black]:before{opacity:1;background:radial-gradient(circle at 30% 24%,#8c998ff2,#0000 0 14%,#3c443dd1 15%,#0000 38%),radial-gradient(circle at 42% 36%,#3c433d,#171d19 64%,#0d120f 100%);transform:scale(1);box-shadow:inset 0 4px 6px #ffffff14,inset 0 -10px 14px #00000061,0 8px 16px #11161247}.gomoku-cell[data-stone=white]:before{opacity:1;background:radial-gradient(circle at 28% 22%,#fff,#0000 0 20%,#ffffffc7 21%,#0000 46%),radial-gradient(circle at 44% 38%,#f5f8f0,#dce4d7 68%,#c9d2c4 100%);transform:scale(1);box-shadow:inset 0 4px 8px #ffffffb8,inset 0 -9px 12px #74827033,0 8px 16px #1116122e}.gomoku-cell[data-last=true]:after{content:"";z-index:3;background:#65d978e6;border-radius:999px;width:18%;height:18%;position:absolute;box-shadow:0 0 0 2px #10141133,0 0 18px #57c8686b}.gomoku-cell:disabled{opacity:1;cursor:default}.segmented-controls{grid-template-columns:1fr 1fr}.segmented-controls .secondary-button[aria-pressed=true]{border-color:var(--accent);background:#57c8682e}.room-panel{gap:16px;display:grid}.speed-control select,.speed-control input:not([type=range]){border:1px solid var(--line);width:100%;min-height:44px;color:var(--text);background:#ffffff29;border-radius:14px;padding:0 12px}.speed-control select{appearance:none;background:linear-gradient(45deg, transparent 50%, var(--muted) 50%) calc(100% - 23px) 52% / 7px 7px no-repeat, linear-gradient(135deg, var(--muted) 50%, transparent 50%) calc(100% - 18px) 52% / 7px 7px no-repeat, var(--result-bg);border-color:var(--result-border);color:var(--result-text);cursor:pointer;padding-right:42px;font-weight:700}.speed-control select:hover{border-color:var(--accent-strong)}.speed-control select:focus-visible,.speed-control input:not([type=range]):focus-visible{outline-offset:2px;border-color:var(--accent-strong);outline:3px solid #57c86840}.speed-control select:disabled{cursor:default;color:var(--muted);background:linear-gradient(45deg, transparent 50%, var(--muted) 50%) calc(100% - 23px) 52% / 7px 7px no-repeat, linear-gradient(135deg, var(--muted) 50%, transparent 50%) calc(100% - 18px) 52% / 7px 7px no-repeat, #1417150f}.speed-control select option{color:var(--result-text);background:var(--result-bg);font-weight:700}.result-overlay{z-index:20;background:radial-gradient(circle at 50% 42%,#57c86838,#0000 22rem),#0c100dad;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.result-dialog{border:1px solid var(--result-border);width:min(100%,500px);color:var(--result-text);background:var(--result-bg);border-radius:16px;padding:26px;animation:.18s cubic-bezier(.16,1,.3,1) result-in;box-shadow:0 0 0 1px #ffffff2e,0 34px 90px #090d0a7a}.result-kicker{width:fit-content;color:var(--accent-strong);letter-spacing:.12em;text-transform:uppercase;background:#57c8681f;border:1px solid #57c86857;border-radius:8px;margin:0 0 14px;padding:6px 8px;font-size:.76rem;font-weight:800}.result-dialog h2{letter-spacing:0;color:var(--result-text);text-wrap:balance;margin:0;font-size:clamp(2.4rem,10vw,4rem);line-height:.94}.result-dialog p:not(.result-kicker){color:var(--result-text);opacity:.76;margin:16px 0 0;font-weight:600;line-height:1.55}.result-stats{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:10px;margin:22px 0;display:grid}.result-stat{border:1px solid var(--result-border);background:var(--result-panel);border-radius:12px;gap:6px;min-width:0;padding:12px;display:grid}.result-stat span{color:var(--result-text);opacity:.68;font-size:.78rem;font-weight:700}.result-stat strong{min-width:0;color:var(--result-text);font-size:1.18rem;line-height:1.3}.result-action{width:100%}.tile-slot{background:#14171514;border-radius:14px;place-items:center;min-width:0;display:grid}.tile{color:#101411;will-change:transform, opacity;background:#dfe7d6;border-radius:14px;place-items:center;width:100%;height:100%;font-size:clamp(1.4rem,7vw,3.2rem);font-weight:900;animation:.17s cubic-bezier(.16,1,.3,1) tile-in;display:grid}.board[data-move-direction=left] .tile{animation:.17s cubic-bezier(.16,1,.3,1) tile-slide-left,.21s cubic-bezier(.16,1,.3,1) tile-settle}.board[data-move-direction=right] .tile{animation:.17s cubic-bezier(.16,1,.3,1) tile-slide-right,.21s cubic-bezier(.16,1,.3,1) tile-settle}.board[data-move-direction=up] .tile{animation:.17s cubic-bezier(.16,1,.3,1) tile-slide-up,.21s cubic-bezier(.16,1,.3,1) tile-settle}.board[data-move-direction=down] .tile{animation:.17s cubic-bezier(.16,1,.3,1) tile-slide-down,.21s cubic-bezier(.16,1,.3,1) tile-settle}.tile[data-value=mid]{background:#a9dda1}.tile[data-value=high]{background:#73cf7b}.tile[data-value=max]{background:var(--accent)}.direction-pad{grid-template-columns:repeat(4,52px);gap:10px;margin-top:18px;display:grid}.icon-button{width:52px;height:52px}.control-panel{flex-direction:column;gap:18px;height:fit-content;padding:20px;display:flex;position:sticky;top:20px}.status-block strong{font-size:2rem}.bot-card{gap:18px;display:grid}.bot-title{grid-template-columns:auto 1fr;align-items:start;gap:12px;display:grid}.bot-title h2{margin:0;font-size:1.2rem}.bot-title p{color:var(--muted);margin:4px 0 0;line-height:1.45}.button-stack{gap:10px;display:grid}.button-stack .primary-button,.button-stack .secondary-button{width:100%}.speed-control{gap:10px;display:grid}.speed-control input{accent-color:var(--accent)}@keyframes tile-in{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@keyframes tile-slide-left{0%{opacity:.78;transform:translate(22%)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes tile-slide-right{0%{opacity:.78;transform:translate(-22%)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes tile-slide-up{0%{opacity:.78;transform:translateY(22%)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tile-slide-down{0%{opacity:.78;transform:translateY(-22%)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tile-settle{0%{filter:saturate()}70%{filter:saturate(1.16)brightness(1.03)}to{filter:saturate()}}@keyframes result-in{0%{opacity:0;transform:translateY(18px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tetris-line-clear{0%{opacity:1;filter:brightness();transform:scale(1)}45%{opacity:1;filter:brightness(1.45);transform:scale(1.06,.82)}to{opacity:0;filter:brightness(1.8);transform:scale(.18,.72)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important}}@media (width<=860px){.site-shell{width:min(100% - 24px,640px)}.hub-hero,.game-grid,.game-layout,.gomoku-layout,.net-layout,.tetris-layout{grid-template-columns:1fr}.hub-hero{min-height:auto;padding-top:40px}.control-panel{position:static}.board-wrap{width:100%}}@media (width<=520px){.stats-row{grid-template-columns:1fr}.direction-pad{grid-template-columns:repeat(4,1fr)}.gomoku-stats,.net-stats{grid-template-columns:1fr}.tetris-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.gomoku-board-wrap{padding:8px}.icon-button,.tetris-touch-controls{width:100%}.hub-copy h1,.game-heading h1{font-size:3.8rem}}
