:root{--ink:#2b1d14;--cream:#f8efd9;--blue:#2453b8;--red:#d8402c;--brass:#e2b33c;--felt:#5e9e4f;--panel:#f3e2c0;color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:manipulation;overscroll-behavior:none;background:#6b3f1f;height:100%;margin:0;overflow:hidden}.bg{background:#c98a3f var(--bg-img,none) center / cover no-repeat;transition:filter .4s;position:fixed;inset:0}#game{justify-content:center;display:flex;position:fixed;inset:0}.screen{padding:max(6px, env(safe-area-inset-top)) 4px max(6px, env(safe-area-inset-bottom));justify-content:center;display:flex;position:absolute;inset:0;overflow-y:auto}.screen[hidden]{display:none}.col{flex-direction:column;align-items:center;gap:6px;width:100%;max-width:560px;display:flex}.muted{color:#5b4634;margin:0;font-size:14px}.center{text-align:center}.btn{border:3px solid var(--ink);cursor:pointer;min-height:48px;color:var(--ink);border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:8px 18px;font:800 16px/1.1 inherit;transition:transform 80ms;display:inline-flex}.btn:active{transform:scale(.95)translateY(1px)}.btn:focus-visible,.icon-btn:focus-visible,.lvl:focus-visible{outline-offset:2px;outline:3px solid #fff}.btn:disabled{opacity:.45;cursor:default}.primary{color:#fff;text-shadow:0 2px #7a1a0e;background:linear-gradient(#ef5a3e,#c2321f)}.secondary{border-color:var(--blue);background:linear-gradient(#fbf5e6,#e1d5b4)}.skinned .btn.primary,.skinned .btn.secondary{background:0 0;border:0 solid #0000;border-width:0 20px;padding:8px 4px}.skinned .btn.primary{border-image:var(--skin-primary) 49% 22.6% fill / 24px stretch}.skinned .btn.secondary{border-image:var(--skin-secondary) 49% 22.6% fill / 24px stretch}.big{min-width:240px;min-height:64px;font-size:22px}.icon-btn{color:#fff;cursor:pointer;background:#2b1d148c;border:0;border-radius:12px;flex:none;place-items:center;width:44px;height:44px;display:grid}.icon-btn svg{fill:currentColor;width:26px;height:26px}.ico,.ico-slot .ico{flex:none;width:24px;height:24px;display:inline-block}.ico-slot:empty{display:none}.topbar{align-items:center;gap:8px;width:100%;min-height:48px;padding-right:104px;display:flex}.bar-title{color:#fff;text-shadow:0 2px #2b1d14cc;flex-direction:column;flex:1;min-width:0;display:flex}.bar-title b{white-space:nowrap;text-overflow:ellipsis;font-size:17px;overflow:hidden}.bar-title span{opacity:.95;font-size:13px}.coins{color:#ffe08a;background:#2b1d1499;border-radius:999px;flex:none;align-items:center;gap:4px;padding:4px 10px 4px 6px;font-size:15px;font-weight:800;display:inline-flex}.coins .ico{width:20px;height:20px}.turnbar{flex-wrap:wrap;justify-content:center;gap:6px;font-size:13px;font-weight:800;display:flex}.turnbar span{border:2px solid var(--ink);background:#f8efd9eb;border-radius:999px;padding:3px 10px}.turnbar .warn{background:#ffd23f}.board-wrap{background:linear-gradient(#8a5a2e,#5e3a1a);border-radius:14px;padding:6px;position:relative;box-shadow:0 10px 24px #0006,inset 0 2px #ffffff40}canvas.board{touch-action:none;border-radius:8px;display:block}.panel{border:3px solid var(--blue);background:#f8efd9f2;border-radius:14px;width:100%;max-width:520px;min-height:64px;padding:8px 12px;font-size:14px;line-height:1.35}.skinned .panel,.skinned .sheet,.skinned .perk,.skinned .daily-card{border:22px solid #0000;border-image:var(--skin-panel) 22% fill / 22px stretch;background:0 0}.skinned .panel{padding:0 2px}.panel b{font-size:15px}.panel .row{align-items:center;gap:8px;display:flex}.panel .pips{color:#2f8a4a;margin-left:auto;font-weight:800}.panel ul{margin:2px 0 0;padding-left:18px}.panel .bad{color:#b3261e;font-weight:800}.panel .good{color:#1d6b34;font-weight:800}.tools{grid-template-columns:1fr 1fr 1.5fr;gap:6px;width:100%;max-width:520px;display:grid}.tool{padding-left:4px;padding-right:4px;font-size:15px}.tool.main.pulse{animation:1s ease-in-out infinite alternate pulse}@keyframes pulse{to{transform:scale(1.05)}}.finger{z-index:3;pointer-events:none;filter:drop-shadow(0 3px 3px #00000073);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M18 4c2 0 4 2 4 4v14l2-1c2-1 4 0 5 1l1 2 2-1c2-1 4 0 5 2l1 1c2-1 4 1 4 3v9c0 6-5 10-11 10h-6c-4 0-7-2-9-5L8 30c-1-2 0-4 2-5s4 0 5 1l1 2V8c0-2 0-4 2-4z' fill='%23fff' stroke='%232b1d14' stroke-width='2.5' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat;width:44px;height:44px;margin:-6px 0 0 -10px;transition:left .25s,top .25s;animation:.9s ease-in-out infinite tapme;position:absolute}.finger.fixed{position:fixed}@keyframes tapme{0%,to{transform:translate(0)scale(1)}50%{transform:translate(2px,8px)scale(.9)}}.banner{z-index:4;background:var(--ink);color:#ffd23f;pointer-events:none;white-space:nowrap;border-radius:999px;padding:10px 22px;font-size:22px;font-weight:900;animation:1.1s ease-out forwards banner;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}@keyframes banner{0%{opacity:0;transform:translate(-50%,-50%)scale(.6)}20%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}80%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-60%)scale(1)}}.menu-col{flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;max-width:460px;min-height:100%;padding:24px 8px;display:flex}.key-art{aspect-ratio:256/208;filter:drop-shadow(0 8px 10px #00000059);width:min(300px,80vw);animation:3s ease-in-out infinite alternate bob}@keyframes bob{to{transform:translateY(-6px)}}.title{color:#fff;letter-spacing:.5px;text-shadow:0 3px 0 var(--blue), 0 6px 0 var(--ink);text-align:center;margin:0;font-size:40px;font-weight:900}.tagline{color:#fff;text-shadow:0 2px #2b1d14cc;text-align:center;margin:0;font-weight:700}.menu-row{grid-template-columns:repeat(3,1fr);gap:8px;width:100%;display:grid}.menu-row .btn{flex-direction:column;min-height:72px;font-size:14px}.menu-row .ico{width:30px;height:30px}#m-stats{color:#fff;text-shadow:0 1px #000;font-weight:700}.tabs{grid-template-columns:repeat(3,1fr);gap:6px;width:100%;display:grid}.tab{min-height:48px;font-size:13px}.tab[aria-selected=true]{outline:3px solid #ffd23f}.level-grid{grid-template-columns:repeat(5,1fr);gap:8px;width:100%;max-width:420px;display:grid}.lvl{aspect-ratio:1;border:3px solid var(--ink);min-height:56px;color:var(--ink);cursor:pointer;background:linear-gradient(#fbf5e6,#e1d5b4);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:3px;font:900 20px/1 inherit;display:flex}.lvl.next{background:linear-gradient(#ffe07a,#e2b33c);animation:1s ease-in-out infinite alternate pulse}.lvl:disabled{color:#fff9;cursor:default;background:#3c28198c;border-color:#0006}.lvl .s{letter-spacing:1px;color:#c98a00;font-size:11px}.lvl .s .off{color:#2b1d1440}.perks{gap:8px;width:100%;max-width:480px;display:grid}.perk{border:3px solid var(--blue);background:#f8efd9f2;border-radius:14px;align-items:center;gap:10px;padding:10px 12px;display:flex}.skinned .perk{padding:0 4px}.perk div{flex:1}.perk p{margin:2px 0 0;font-size:13px}.perk .btn{min-width:96px}.perk.owned .btn{opacity:.6}.overlay{z-index:8;background:#1e12088c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.overlay[hidden]{display:none}.sheet{background:var(--panel);border:4px solid var(--blue);text-align:center;border-radius:18px;width:min(380px,100%);padding:18px 16px;animation:.35s ease-out rise}.skinned .sheet{padding:4px 6px}@keyframes rise{0%{opacity:0;transform:translateY(40px)scale(.9)}}.sheet h2{color:var(--blue);margin:0 0 6px;font-size:30px;font-weight:900}.stars{justify-content:center;gap:6px;height:64px;display:flex}.stars .star{opacity:.2;filter:grayscale();width:60px;height:60px}.stars .star.on{opacity:1;filter:none;animation:.4s cubic-bezier(.3,1.6,.5,1) both starpop}.stars .star.fallback{background:radial-gradient(circle,#ffd23f 55%,#0000 56%)}@keyframes starpop{0%{transform:scale(.2)rotate(-40deg)}}.r-lines{margin:8px 0 2px;font-weight:700}.r-coins{color:#a06a00;justify-content:center;align-items:center;gap:6px;margin:4px 0;font-size:20px;font-weight:900;display:flex}.r-extra{color:var(--red);margin:6px 0;font-weight:800}.r-actions{gap:8px;margin-top:10px;display:grid}.r-actions[data-locked]{pointer-events:none}.toast{left:50%;bottom:max(90px, env(safe-area-inset-bottom));z-index:9;background:var(--ink);color:#fff;text-align:center;border-radius:12px;max-width:90vw;padding:10px 16px;font-weight:700;position:fixed;transform:translate(-50%)}.toast[hidden]{display:none}.confetti{z-index:9;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti i{width:9px;height:14px;animation:fall var(--d,1.6s) cubic-bezier(.2, .6, .4, 1) forwards;border-radius:2px;position:absolute;top:-20px}@keyframes fall{to{transform:translate(var(--x,0), 105vh) rotate(var(--r,540deg))}}@media (prefers-reduced-motion:reduce){.key-art,.lvl.next,.tool.main.pulse{animation:none}}[hidden]{display:none!important}.tool{white-space:nowrap}.tool .ico{width:22px;height:22px}.col.play-col{margin:auto 0}.locking{pointer-events:none}@media (width<=400px){#play.screen{padding-left:0;padding-right:0}.board-wrap{border-radius:10px;padding:4px}#play .topbar,#play .panel,#play .tools{padding-left:4px}#play .tools{padding-right:4px}.tools .tool{gap:4px;min-width:0;font-size:14px}.tools .tool .ico{width:18px;height:18px}.skinned .tools .btn.primary,.skinned .tools .btn.secondary{border-width:0 13px;border-image-width:13px}}.topbar{padding-right:118px}.bar-title{background:#2b1d149e;border-radius:12px;flex:0 auto;margin-right:auto;padding:3px 12px 4px}.bar-title span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.plate{color:#fff;background:#2b1d149e;border-radius:12px;padding:4px 12px}#play .panel{min-height:116px}@media (width<=400px){.bar-title .opt{display:none}}@media (height<=700px){#play .panel{min-height:88px}}@media (width<=400px){#p-coins{display:none}}
