:root{--bg:#262b52;--card:#fff9ee;--ink:#2a2350;--ink-soft:#2a2350a8;--thin:#fff3;--shadow:#080a1e73;--gold:#ffc84a;--gold-dark:#c98a12;--leaf:#3fc75a;--leaf-dark:#23913a;color-scheme:dark}@media (prefers-color-scheme:dark){:root{--bg:#262b52;--card:#fff9ee;--ink:#2a2350;--ink-soft:#2a2350a8;--thin:#fff3;--shadow:#080a1e73}}html,body{overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body{color:#fff;background:linear-gradient(#2d3360,#1e2244);min-height:100dvh}.screen{color:#fff;background:radial-gradient(120% 80% at 50% 30%,#3a4280,#262b52 60%,#171a36)}.home-card{gap:14px;padding-bottom:20px}.logo{width:240px;height:150px;position:relative}.pix{grid-template-columns:repeat(7,15px);gap:1px;display:grid;position:absolute;top:20px;left:6px;transform:rotate(-6deg)}.pix i{background:linear-gradient(150deg,#ff8a95,#f23d4c 55%,#c9283a);border-radius:4px;width:15px;height:15px;box-shadow:inset 0 -2px #00000040,0 2px #00000040}.pix i.y{background:linear-gradient(150deg,#fff3b0,#ffc928 60%,#d9a000)}.pix i.e{visibility:hidden}.logo-ant{color:#f23d4c;filter:drop-shadow(0 3px #0000004d);width:46px;height:28px;position:absolute}.logo-ant.a1{animation:1.6s ease-in-out infinite march;top:118px;left:4px}.logo-ant.a2{color:#ffc928;animation:1.6s ease-in-out .4s infinite march;top:124px;left:64px}@keyframes march{50%{transform:translate(4px,-3px)rotate(-6deg)}}.logo .home-mascot{width:136px;height:136px;margin:0;position:absolute;top:6px;right:-6px}.wordmark{color:#fff;text-shadow:0 4px #0000004d;margin:0;font-size:clamp(2.6rem,12vw,3.3rem);font-weight:700;line-height:1}.wordmark span{color:var(--gold)}.btn-play{background:linear-gradient(#ffdd80, var(--gold));color:#4a2a00;width:100%;box-shadow:0 6px 0 var(--gold-dark), inset 0 2px 0 #ffffff80;flex-direction:column;align-items:center;padding:14px;font-size:1.45rem;line-height:1.1;display:flex}.btn-play small{opacity:.85;font-size:.85rem;font-weight:500}.btn-play:active{box-shadow:0 2px 0 var(--gold-dark)}.screen .btn-ghost{color:#fff}.btn-alt{background:var(--leaf);color:#fff;box-shadow:0 5px 0 var(--leaf-dark)}.btn-alt:active{box-shadow:0 1px 0 var(--leaf-dark)}.hub{color:#fff9;letter-spacing:.06em;font-size:.85rem;text-decoration:none}#app{padding:calc(6px + env(safe-area-inset-top)) 4px calc(12px + env(safe-area-inset-bottom));gap:4px;max-width:600px;min-height:100dvh}.hudbar{grid-template-columns:1fr auto 1fr;align-items:center;padding:0 8px;display:grid}.hudbar .icon-btn{color:#fff;background:#ffffff1f;box-shadow:0 4px #0000004d}.hudbar #restart{justify-self:end}.lvlbox{flex-direction:column;align-items:center;gap:5px;display:flex}.lvl{color:#fff;font-size:1.15rem;font-weight:600}.lvl #label{font-size:inherit;color:var(--gold);font-weight:700;display:inline}.progress{background:#00000059;border-radius:5px;width:132px;height:9px;overflow:hidden;box-shadow:inset 0 1px #0000004d}.progress i{background:linear-gradient(#ffe28a, var(--gold));border-radius:5px;width:0;height:100%;transition:width .3s;display:block}.board-wrap{flex:1;place-items:start center;display:grid;position:relative}#board{touch-action:none;-webkit-tap-highlight-color:transparent;border-radius:16px;display:block}.toast{color:#ffe08a;-webkit-text-stroke:6px #1a1e3c;top:30%}.loading{color:#ffffffb3;font-weight:600;position:absolute;top:30%;left:50%;translate:-50%}.tools{grid-template-columns:repeat(3,74px);justify-content:center;gap:22px;width:auto;margin-top:4px}.tool{width:74px;height:74px;color:var(--ink);box-shadow:0 5px 0 #0e1028, inset 0 0 0 3px var(--gold);background:radial-gradient(circle at 40% 30%,#fff,#e4e2f5 70%);border-radius:50%;justify-content:center;gap:2px;padding:8px 0 4px;font-size:.64rem}.tool svg{color:#4b3fa8;width:28px;height:28px}.tool:active{box-shadow:0 1px 0 #0e1028, inset 0 0 0 3px var(--gold)}.tool.armed{background:radial-gradient(circle at 40% 30%, #fff4c2, var(--gold) 75%)}.badge{background:#f23d4c;top:-4px;right:-4px;box-shadow:0 2px #9a1a2c}dialog{background:var(--card);color:var(--ink);box-shadow:0 10px 0 var(--shadow), inset 0 0 0 3px var(--gold);overflow:visible}dialog .big{color:#4b3fa8;font-size:2rem}.rule-list li{background:#f1eefa}.rule-list li>b:first-child{background:#4b3fa8}dialog .btn-ghost{color:var(--ink);box-shadow:inset 0 0 0 2px #2a235029}#rules{overflow:auto}
