@import url("https://fonts.googleapis.com/css2?family=DM+Mono&family=Fraunces:opsz,wght@9..144,700;9..144,800&family=Outfit:wght@400;600;700;800&display=swap");
:root{--ink:#eef4ff;--muted:#a9b9d8;--navy:#162342;--panel:#1c2d50;--line:rgba(185,211,255,.25);--gold:#ffd766;font-family:Outfit,system-ui,sans-serif;color:var(--ink);background:#101a32}*{box-sizing:border-box}body{min-height:100vh;margin:0;background:radial-gradient(circle at 14% 9%,rgba(255,215,102,.34),transparent 24%),radial-gradient(circle at 92% 76%,rgba(70,160,255,.28),transparent 32%),linear-gradient(145deg,#101a32,#192b4f 55%,#263966);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.light-nav,.light-app{width:min(900px,100%);margin:auto}.light-nav{height:74px;display:flex;justify-content:space-between;align-items:center;padding:0 24px}.light-nav a{color:#f8f1d8;text-decoration:none;font-weight:800}.light-nav a:last-child{padding:9px 14px;border:1px solid var(--line);border-radius:999px}.light-app{padding:5vh 24px 76px}.light-hero{max-width:620px}.light-hero p,.card-kicker,.level-card p{margin:0;color:var(--gold);font:800 .72rem "DM Mono",monospace;letter-spacing:.13em;text-transform:uppercase}.light-hero h1{margin:8px 0;font:800 clamp(2.8rem,8vw,5.5rem)/.9 Fraunces,Georgia,serif;letter-spacing:-.07em}.light-hero>span{display:block;max-width:560px;color:#dbe5fb;font-size:1.08rem;line-height:1.45}.light-game{display:grid;grid-template-columns:minmax(170px,.72fr) minmax(0,1.28fr);gap:18px;margin-top:34px}.target-card,.play-card,.level-card{border:1px solid var(--line);border-radius:24px;background:rgba(12,26,51,.72);box-shadow:0 20px 45px rgba(0,4,18,.25)}.target-card{align-self:start;padding:18px}.card-kicker{margin-bottom:14px}.light-grid{display:grid;grid-template-columns:repeat(var(--light-size),1fr);gap:7px}.light-cell{display:block;aspect-ratio:1;border-radius:9px;background:#314567;box-shadow:inset 0 0 0 1px rgba(221,237,255,.12)}.light-cell.lit{background:#ffe17e;box-shadow:0 0 13px rgba(255,224,110,.72),inset 0 0 0 2px rgba(255,255,255,.58)}.play-card{padding:18px}.play-heading{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:17px}.play-heading div{display:grid;gap:3px}.play-heading div span{color:#fff5d0;font:800 1.65rem Fraunces,Georgia,serif}.play-heading b,.play-heading>span{color:var(--muted);font:700 .72rem "DM Mono",monospace;text-transform:uppercase;letter-spacing:.05em}.play-grid{gap:8px}.play-grid .light-cell{border:0;cursor:pointer;transition:transform .1s ease,background .12s ease,box-shadow .12s ease;touch-action:manipulation}.play-grid .light-cell:active{transform:scale(.9)}.play-grid .light-cell:hover{box-shadow:inset 0 0 0 2px rgba(255,255,255,.4)}.message{min-height:23px;margin:15px 0 0;color:#c9d8f5;font-weight:800;text-align:center}.message.solved{color:#ffe17e}.play-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:9px;margin-top:8px}.play-actions button,.level-dot{border:0;border-radius:13px;padding:13px;color:#17233f;background:#ffda68;font:800 .92rem Outfit,sans-serif;cursor:pointer;box-shadow:0 5px 0 #bd862a;touch-action:manipulation}.play-actions .quiet{color:#dce8ff;background:#31486f;box-shadow:0 5px 0 #17243e}.play-actions button:active,.level-dot:active{transform:translateY(3px);box-shadow:0 2px 0 #bd862a}.play-actions .quiet:active{box-shadow:0 2px 0 #17243e}.level-card{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px}.level-card p{margin-bottom:5px}.level-card span{display:block;max-width:410px;color:#c2d0e9;font-size:.9rem;line-height:1.3}.level-picker{display:grid;grid-template-columns:repeat(6,34px);gap:7px}.level-dot{width:34px;height:34px;padding:0;border-radius:10px;background:#2c4266;color:#dbe9ff;box-shadow:none}.level-dot.selected{background:#ffda68;color:#17233f;box-shadow:0 0 0 2px rgba(255,218,104,.3)}.level-dot:disabled{opacity:.35;cursor:not-allowed}@media(max-width:650px){.light-nav{height:65px;padding:0 17px}.light-app{padding:4vh 15px 50px}.light-game{grid-template-columns:1fr;margin-top:26px}.target-card{display:grid;grid-template-columns:1fr minmax(116px,42%);align-items:center;gap:16px}.card-kicker{margin:0}.play-card{padding:14px}.light-cell{border-radius:7px}.level-card{align-items:flex-start;flex-direction:column;gap:14px}.level-picker{grid-template-columns:repeat(6,1fr);width:100%}.level-dot{width:auto}.target-grid{max-width:190px;justify-self:end}}@media(max-width:350px){.light-grid{gap:5px}.target-card{grid-template-columns:1fr 106px}.light-nav{padding:0 13px}.play-heading>span{font-size:.62rem}}
