body{margin:0;background:var(--ink);color:var(--paper);font-family:Manrope,system-ui,sans-serif;line-height:1.6}.game-page{min-height:calc(100vh - 76px);padding:clamp(54px,7vw,96px) clamp(20px,5vw,76px) clamp(60px,8vw,110px)}.game-page>*{position:relative;z-index:1}.game-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.54fr);gap:clamp(28px,5vw,72px);align-items:center;max-width:var(--content-max);margin:0 auto clamp(34px,6vw,72px)}.game-copy h1{max-width:920px;margin:18px 0 22px;color:var(--paper);font-size:clamp(2.7rem,7vw,6.5rem);line-height:.9;letter-spacing:-.075em}.game-copy p:not(.page-kicker){max-width:760px;color:rgba(241,240,234,.82);font-size:clamp(1.02rem,1.8vw,1.22rem);line-height:1.72}.hero-actions,.game-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:13px 18px;border:1px solid var(--line);font:800 11px DM Mono,monospace;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:transform .22s ease,filter .22s ease,border-color .22s ease}.button.primary{background:var(--lime);border-color:var(--lime);color:var(--ink)}.button.ghost,.button.secondary{background:transparent;color:var(--paper)}.button.secondary{border-color:rgba(8,11,16,.18);color:var(--ink)}.button:hover{transform:translateY(-2px);filter:brightness(1.03)}.lesson-card{padding:30px;border:1px solid rgba(200,255,61,.35);background:linear-gradient(150deg,rgba(200,255,61,.12),rgba(241,240,234,.04));box-shadow:0 24px 80px rgba(0,0,0,.32)}.lesson-card span,.section-tag{display:block;margin-bottom:14px;color:var(--lime);font:800 11px DM Mono,monospace;letter-spacing:.12em;text-transform:uppercase}.lesson-card strong{display:block;color:var(--paper);font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.08;letter-spacing:-.045em}.lesson-card p{margin:18px 0 0;color:rgba(241,240,234,.74);line-height:1.7}.game-shell{display:grid;grid-template-columns:minmax(300px,1fr) minmax(280px,420px);gap:22px;max-width:var(--content-max);margin:0 auto}.play-panel,.score-panel{border:1px solid var(--line);background:rgba(241,240,234,.05);backdrop-filter:blur(10px)}.play-panel{padding:clamp(22px,4vw,42px)}.score-panel{padding:clamp(22px,3vw,30px)}.panel-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:26px}.panel-top h2{margin:0;color:var(--paper);font-size:clamp(1.8rem,3.4vw,3.6rem);line-height:.98;letter-spacing:-.06em}.turn-badge{flex:0 0 auto;padding:12px 14px;border:1px solid rgba(200,255,61,.35);background:rgba(200,255,61,.1);color:var(--lime);font:800 12px DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.turn-badge[data-state=done]{border-color:rgba(255,92,77,.45);background:rgba(255,92,77,.13);color:#ffb0a8}.board-wrap{display:grid;place-items:center;padding:clamp(16px,3vw,28px);background:rgba(8,11,16,.56);border:1px solid rgba(241,240,234,.12)}.board{width:min(100%,450px);aspect-ratio:1;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.cell{display:grid;place-items:center;border:1px solid rgba(241,240,234,.18);background:rgba(241,240,234,.06);color:var(--paper);font:800 clamp(3rem,9vw,6rem)/1 Manrope,system-ui,sans-serif;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease}.cell:hover:not(:disabled),.cell:focus-visible:not(:disabled){transform:translateY(-3px);border-color:var(--lime);background:rgba(200,255,61,.12);outline:none}.cell:disabled{cursor:default}.cell[data-player=X]{color:var(--lime)}.cell[data-player=O]{color:#ffffff}.cell.winner{background:var(--lime);color:var(--ink);border-color:var(--lime);box-shadow:0 0 0 1px var(--lime),0 18px 45px rgba(200,255,61,.18)}.status-card{margin-top:18px;padding:18px 20px;border-left:5px solid var(--lime);background:rgba(200,255,61,.08);color:rgba(241,240,234,.9);font-weight:800}.score-panel .section-tag{color:var(--lime)}.score-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}.score-grid article{padding:18px 14px;border:1px solid rgba(241,240,234,.13);background:rgba(8,11,16,.38)}.score-grid span{display:block;color:rgba(241,240,234,.66);font:800 10px DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.score-grid strong{display:block;margin-top:10px;color:var(--lime);font-size:clamp(2rem,4vw,3.4rem);line-height:1;letter-spacing:-.06em}.history-box,.rules-box{margin-top:16px;padding:20px;border:1px solid rgba(241,240,234,.13);background:rgba(8,11,16,.38)}.history-box h3,.rules-box h3{margin:0 0 12px;color:var(--paper);font-size:1.15rem;letter-spacing:-.025em}.history-box ol{max-height:190px;margin:0;padding-left:20px;overflow:auto;color:rgba(241,240,234,.72);line-height:1.7}.rules-box p{margin:0;color:rgba(241,240,234,.72)}.page-footer{display:flex;justify-content:space-between;gap:20px;padding:26px clamp(22px,5vw,76px);background:var(--ink);border-top:1px solid var(--line);color:rgba(241,240,234,.72);font:800 11px DM Mono,monospace;letter-spacing:.08em;text-transform:uppercase}.page-footer a{text-decoration:none;color:var(--lime)}@media(max-width:1050px){.game-hero,.game-shell{grid-template-columns:1fr}.lesson-card{max-width:720px}.score-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.game-page{min-height:auto;padding:44px 18px 58px}.game-copy h1{font-size:clamp(2.4rem,15vw,4rem);letter-spacing:-.06em}.hero-actions,.game-actions{display:grid}.button{width:100%}.panel-top{display:grid}.turn-badge{width:max-content}.play-panel,.score-panel{padding:20px 16px}.board{gap:7px}.score-grid{grid-template-columns:1fr}.page-footer{display:grid;text-align:center}}@media(prefers-reduced-motion:reduce){.cell,.button{transition:none}}
