:root{color-scheme:dark;--ink:#f5f6ee;--muted:#a9b4ad;--night:#08100d;--panel:#121c17;--line:#2d4137;--lime:#c9f45b;--mint:#70d7aa;--display:"Arial Black","Helvetica Neue",Arial,sans-serif;--body:Inter,system-ui,sans-serif}*{box-sizing:border-box}html{min-width:280px;background:var(--night)}body{margin:0;color:var(--ink);background:radial-gradient(circle at 80% 5%,rgba(112,215,170,.12),transparent 30rem),var(--night);font-family:var(--body);line-height:1.5}a{color:inherit}button,select{font:inherit}.site-header,main,footer{width:min(980px,calc(100% - 36px));margin:auto}.site-header{display:flex;align-items:center;justify-content:space-between;min-height:78px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-weight:850;text-decoration:none}.brand span{display:grid;width:34px;aspect-ratio:1;place-items:center;color:var(--night);background:var(--lime);border-radius:9px;font-family:var(--display)}.site-header p{margin:0;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.intro{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end;padding:50px 0 30px}.intro>p{margin:0;color:var(--muted)}.eyebrow{margin:0 0 8px;color:var(--mint);font-size:.72rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:0;font:clamp(3.8rem,10vw,6.4rem)/.84 var(--display);letter-spacing:-.07em}.game-shell{padding:14px;background:var(--panel);border:1px solid var(--line);border-radius:18px}.toolbar{display:grid;grid-template-columns:1fr auto auto auto auto;gap:12px;align-items:center}.toolbar label,.toolbar>div{display:grid;color:var(--muted);font-size:.58rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.toolbar select,.toolbar button{min-height:40px;padding:0 12px;color:var(--ink);background:#0d1511;border:1px solid #506157;border-radius:8px;font-weight:800}.toolbar button{cursor:pointer}.toolbar button:hover,.toolbar button:focus-visible{color:var(--night);background:var(--lime)}.toolbar strong{color:var(--lime);font:850 1.1rem/1 ui-monospace,monospace}.status{min-height:24px;margin:10px 0;color:var(--muted);font-size:.78rem;text-align:center}.play{display:grid;grid-template-columns:minmax(280px,680px) 130px;gap:18px;align-items:center;justify-content:center}.maze{--columns:17;display:grid;grid-template-columns:repeat(var(--columns),1fr);width:min(680px,100%);aspect-ratio:1;padding:5px;background:#d8e1da;border:5px solid #263a31;border-radius:9px;touch-action:none}.cell{position:relative;background:#102019;border-color:#92ad9e;border-style:solid;border-width:0}.cell.start{background:#315846}.cell.finish{background:var(--lime)}.cell.player::after{content:"";position:absolute;inset:18%;background:#fff;border:2px solid var(--mint);border-radius:50%;box-shadow:0 0 10px 2px rgba(255,255,255,.75)}.cell.finish::before{content:"";position:absolute;inset:29%;background:#0b1510;transform:rotate(45deg)}.controls{display:grid;grid-template-columns:repeat(3,42px);gap:7px;justify-content:center;touch-action:none}.controls button{display:grid;height:48px;padding:3px;place-items:center;color:var(--ink);background:#1c2b24;border:1px solid #50665b;border-radius:9px;font-size:1.1rem;font-weight:900;touch-action:none}.controls button:first-child{grid-column:2}.controls button:nth-child(2){grid-column:1;grid-row:2}.controls button:nth-child(3){grid-column:2;grid-row:2}.controls button:nth-child(4){grid-column:3;grid-row:2}.controls span{font-size:.44rem;letter-spacing:.06em;text-transform:uppercase}.controls button:active{color:var(--night);background:var(--lime)}.rules{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;padding:70px 0}.rules h2{font:clamp(2rem,5vw,3.5rem)/.95 var(--display);letter-spacing:-.05em}.rules>p{color:var(--muted)}footer{display:flex;justify-content:space-between;padding:24px 0 38px;border-top:1px solid var(--line);color:var(--muted);font-size:.78rem}footer a{font-weight:800;text-decoration:none}footer p{margin:0}@media(max-width:680px){.intro{display:block;padding:36px 0 24px}.intro>p{margin-top:16px}.toolbar{grid-template-columns:1fr auto auto;gap:8px}.toolbar button{grid-column:1/-1}.play{display:flex;flex-direction:column}.maze{padding:3px;border-width:3px}.controls{grid-template-columns:repeat(3,64px)}.controls button{height:50px}.rules{display:block;padding:46px 0}.rules>p{margin-top:22px}footer{display:block}footer p{margin-top:8px}}
