:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#f8f4ff;background:radial-gradient(circle at 16% 8%,#ffd8672e 0 9%,#0000 28%),radial-gradient(circle at 86% 14%,#9ee6c51f 0 10%,#0000 30%),linear-gradient(135deg,#151638 0%,#241f52 48%,#43295d 100%);min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:0}body{min-height:100vh;margin:0;overflow-x:hidden}button{font:inherit}button,.button{color:#21173b;letter-spacing:.01em;cursor:pointer;touch-action:manipulation;background:#ffd867;border:0;border-radius:999px;padding:.86rem 1.12rem;font-weight:850;transition:transform .15s,box-shadow .15s,filter .15s,background .15s;box-shadow:0 12px 28px #00000038}button:hover,.button:hover{filter:brightness(1.03);transform:translateY(-1px)}button:active,.button:active{transform:translateY(1px)scale(.99)}button:focus-visible,.cell:focus-visible{outline-offset:3px;outline:3px solid #fff}button.primary{color:#21173b;background:#ffd867}button.secondary{color:#14263a;background:#9ee6c5}button.ghost{color:#fff;box-shadow:none;background:#ffffff1f;border:1px solid #ffffff3d}button.small{padding:.56rem .88rem;font-size:.92rem}.shell{place-items:center;width:min(1120px,100%);min-height:100vh;margin:0 auto;padding:clamp(1rem,4vw,2.5rem);display:grid}.card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#ffffff29,#ffffff14);border:1px solid #ffffff38;border-radius:28px;box-shadow:0 24px 70px #09051f75}.hero{text-align:center;max-width:820px;padding:clamp(1.4rem,5vw,4rem)}.eyebrow{color:#9ee6c5;letter-spacing:.09em;text-transform:uppercase;margin:0 0 .55rem;font-size:.78rem;font-weight:850}h1{margin:.2rem 0 1rem;font-size:clamp(3rem,10vw,6.5rem);line-height:.95}h1 span{color:#ffd867;letter-spacing:.08em;font-size:.42em;display:block}.lead{color:#eee8ff;max-width:680px;margin:0 auto 2rem;font-size:clamp(1.1rem,3vw,1.45rem)}.actions{flex-wrap:wrap;justify-content:center;gap:.85rem;display:flex}.actions.compact{margin-top:1.1rem}.status-strip{flex-wrap:wrap;justify-content:center;gap:.7rem;margin-top:2rem;display:flex}.status-strip span{background:#0000002e;border:1px solid #ffffff29;border-radius:999px;padding:.55rem .8rem}.tutorial .card{max-width:760px;padding:clamp(1.3rem,4vw,3rem)}.tutorial h1{font-size:clamp(2.2rem,7vw,4rem)}.rules{color:#f4efff;gap:1rem;margin:1.5rem 0 2rem;padding-left:1.4rem;font-size:1.08rem;display:grid}.game-shell{width:min(1180px,100%);display:block}.topbar{grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;margin-bottom:1rem;display:grid}.level-title{text-align:center;gap:.14rem;display:grid}.level-title strong{font-size:clamp(1.22rem,2.2vw,1.65rem)}.level-title span{color:#d8d2f6;font-size:.9rem}.game-layout{grid-template-columns:minmax(420px,680px) minmax(260px,360px);justify-content:center;align-items:start;gap:clamp(1rem,3vw,1.4rem);display:grid}.game-layout:not(.debug-layout){max-width:1060px;margin:0 auto}.board-card{padding:clamp(1rem,3vw,1.55rem)}.board-meta{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.9rem;display:flex}.board-meta div{gap:.18rem;display:grid}.board-meta strong{color:#fff;font-size:clamp(1.18rem,2.5vw,1.55rem)}.board-meta small{color:#d9d4ef;font-weight:700}.meta-label{color:#21173b;text-transform:uppercase;letter-spacing:.08em;background:#ffd867;border-radius:999px;width:fit-content;padding:.22rem .58rem;font-size:.78rem;font-weight:900}.hint-box,.notice-box{color:#c6ffd6;overflow-wrap:anywhere;background:#00000038;border:1px solid #ffffff26;border-radius:16px;padding:.75rem}.notice-box{color:#fff6ba;border-color:#ffd8679e;font-weight:850}.path-legend{color:#eee8ff;flex-wrap:wrap;justify-content:center;gap:.6rem;margin:0 0 .85rem;font-size:.92rem;display:flex}.path-legend span{background:#0000002b;border:1px solid #ffffff24;border-radius:999px;padding:.45rem .7rem}.path-legend b{color:#ffd867}.board{grid-template-columns:40px repeat(var(--size), minmax(50px, 1fr));gap:.46rem;max-width:600px;margin:0 auto;display:grid}.corner,.row-hint,.col-hint{color:#ffd867c7;min-height:40px;box-shadow:none;pointer-events:none;-webkit-user-select:none;user-select:none;background:#06061833;border:1px solid #ffd8671f;border-radius:12px;place-items:center;font-weight:900;display:grid}.corner{color:#ffffff85}.cell{aspect-ratio:1;color:#33235b;background:linear-gradient(145deg,#fbf8ff,#c8c3f4);border-radius:18px;width:100%;min-width:0;padding:0;font-size:clamp(1rem,4.2vw,1.85rem);position:relative;box-shadow:inset 0 -8px #00000014,0 10px 20px #00000040}.cell:hover{transform:translateY(-2px);box-shadow:inset 0 -8px #00000014,0 14px 28px #0000004d,0 0 0 3px #ffffff38}.cell.open{background:linear-gradient(145deg,#fff5a8,#9ee6c5)}.cell.path{box-shadow:inset 0 -8px #00000014,0 0 0 3px #ffffff52,0 0 24px #9ee6c5b3}.cell.flagged{color:#fff;background:linear-gradient(145deg,#b8d7ff,#8178df)}.cell.goal:not(.open){outline-offset:-3px;color:#21173b;outline:3px solid #ffd867;font-size:clamp(.72rem,2.6vw,1rem);font-weight:950}.cell.goal:not(.open):after{content:"";pointer-events:none;border:1px dashed #52300d6b;border-radius:12px;position:absolute;inset:7px}.cell.start{outline-offset:-3px;outline:3px solid #9ee6c5;font-size:clamp(.66rem,2.6vw,.95rem);font-weight:950}.cell.danger{color:#ff8fac;background:linear-gradient(145deg,#3b214f,#120c24);box-shadow:inset 0 -8px #0003,0 0 0 3px #ff8fac47,0 0 28px #ff487857}.side-stack{gap:1rem;display:grid}.side-card,.log-card{padding:clamp(1rem,3vw,1.45rem)}.side-card h2{margin:0 0 1rem;font-size:clamp(1.34rem,2.8vw,1.9rem);line-height:1.08}.goal-pair{grid-template-columns:1fr 1fr;gap:.7rem;margin:0 0 1rem;display:grid}.goal-pair span{background:#0000002e;border:1px solid #ffffff26;border-radius:18px;gap:.22rem;padding:.78rem;display:grid}.goal-pair b{color:#9ee6c5;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.goal-pair strong{color:#ffd867;font-size:1.25rem}.mini-rules{color:#ebe6fb;gap:.68rem;margin:0 0 1.1rem;padding-left:1.1rem;line-height:1.35;display:grid}.panel-actions{gap:.7rem;display:grid}.log-card h2{margin:0 0 .3rem}.log-card p{color:#d7d1ef;margin-top:0}.log-card ul{gap:.65rem;max-height:360px;padding:0;list-style:none;display:grid;overflow:auto}.log-card li{background:#0000002e;border:1px solid #ffffff1f;border-radius:16px;padding:.65rem}.log-card strong{color:#ffd867;display:block}.log-card span{color:#e9e2ff;overflow-wrap:anywhere;font-size:.78rem;display:block}code{color:#9ee6c5}.modal-backdrop{z-index:10;background:#080414ab;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal{text-align:center;width:min(460px,100%);padding:2rem}.modal h2{color:#ffd867;margin:0 0 .7rem;font-size:2rem}.modal p{color:#f1ecff}@media (width<=900px){.game-layout{grid-template-columns:minmax(0,680px)}.side-stack{grid-template-columns:1fr}.board{grid-template-columns:34px repeat(var(--size), minmax(42px, 1fr));gap:.34rem}.corner,.row-hint,.col-hint{border-radius:10px;min-height:34px}.cell{border-radius:14px}}@media (width<=560px){.shell{padding:.78rem}.topbar{grid-template-columns:auto 1fr auto;gap:.46rem}.level-title strong{font-size:1.02rem}.level-title span{font-size:.72rem}button{padding:.76rem .88rem}button.small{padding:.5rem .66rem;font-size:.82rem}.board-card,.side-card{border-radius:21px;padding:.82rem}.board-meta strong{font-size:1.08rem}.board-meta small,.path-legend{font-size:.82rem}.board{grid-template-columns:28px repeat(var(--size), minmax(0, 1fr));gap:.22rem;width:100%}.corner,.row-hint,.col-hint{border-radius:8px;min-height:28px;font-size:.78rem}.cell{border-radius:10px;font-size:clamp(.9rem,6.2vw,1.35rem)}.cell.goal:not(.open),.cell.start{font-size:clamp(.55rem,3.4vw,.75rem)}.goal-pair,.panel-actions{grid-template-columns:1fr}}@media (width<=380px){.shell{padding:.55rem}.board-card{padding:.62rem}.board{grid-template-columns:24px repeat(var(--size), minmax(0, 1fr));gap:.18rem}.corner,.row-hint,.col-hint{min-height:24px;font-size:.7rem}.cell{border-radius:8px}}
