@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:500;src:url(./baloo-2-latin-500-normal-CmLZ27r7.woff2)format("woff2"),url(./baloo-2-latin-500-normal-BSdEhq8m.woff)format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(./baloo-2-latin-600-normal-tIfxVoAe.woff2)format("woff2"),url(./baloo-2-latin-600-normal-B4tNaogw.woff)format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(./baloo-2-latin-700-normal-CqTg7A15.woff2)format("woff2"),url(./baloo-2-latin-700-normal-Ld3Zm3l2.woff)format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(./baloo-2-latin-800-normal-BbF3Etk1.woff2)format("woff2"),url(./baloo-2-latin-800-normal-B8BXfZF7.woff)format("woff")}:root{--font:"Baloo 2", ui-rounded, "SF Pro Rounded", "Segoe UI", system-ui, sans-serif;--ink:#fff;--ink-soft:#d5e0e8;--ink-dim:#9fb2c1;--cyan:#5fd3ff;--gold:#ffd23f;--green:#8be36e;--orange:#ffb13d;--red:#ff7058;--panel-top:#263a4ef0;--panel-bottom:#142130f0;--panel-edge:#96bedc52;--panel-shadow:0 6px 16px #06140c59;--wood-hi:#b8743a;--wood-lo:#83461d;--wood-edge:#4e2811;--meadow-top:#8cc74b;--meadow-bottom:#5f9c33;--radius-l:18px;--radius-m:13px;--ease-out:cubic-bezier(.2, .8, .25, 1)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font);color:var(--ink);background:linear-gradient(180deg, var(--meadow-top), var(--meadow-bottom)) fixed;overscroll-behavior:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;line-height:1.25}button,input{font:inherit;color:inherit}button{cursor:pointer;-webkit-user-select:none;user-select:none}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}:focus-visible{outline-offset:2px;outline:3px solid #ffe27a}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.scene{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.scene-top{background-position:bottom;background-repeat:no-repeat;background-size:cover;height:max(36vh,260px);position:absolute;top:0;left:0;right:0}.scene-bottom{background-position:top;background-repeat:no-repeat;background-size:cover;height:max(24vh,160px);position:absolute;bottom:0;left:0;right:0}.app{z-index:1;height:100%;position:relative}.panel{background:linear-gradient(180deg, var(--panel-top), var(--panel-bottom));border:1.5px solid var(--panel-edge);border-radius:var(--radius-m);box-shadow:var(--panel-shadow), inset 0 1px 0 #ffffff1f}.wood{background:repeating-linear-gradient(176deg, #fff0 0 9px, #ffdcaa12 9px 11px, #3c190514 11px 13px), linear-gradient(180deg, var(--wood-hi), var(--wood-lo));border:2px solid var(--wood-edge);box-shadow:inset 0 2px #ffd6a073,inset 0 -3px #280f0059,0 5px #3b1d0a,0 9px 16px #0a140566}.btn3d{--b-hi:#4aa6f5;--b-lo:#1f63c9;--b-edge:#0f3d86;--b-base:#0c3272;border:2px solid var(--b-edge);border-radius:var(--radius-l);background:linear-gradient(180deg, var(--b-hi), var(--b-lo));min-height:48px;box-shadow:inset 0 3px 0 #ffffff61, inset 0 -4px 0 #0000002e, 0 5px 0 var(--b-base), 0 9px 14px #050f0a66;color:#fff;letter-spacing:.01em;text-shadow:0 2px #0000004d;touch-action:manipulation;justify-content:center;align-items:center;gap:.45em;padding:.35em 1em;font-weight:800;transition:transform 90ms,box-shadow 90ms,filter .12s;display:inline-flex;position:relative}.btn3d:active:not(:disabled),.btn3d.is-pressed{box-shadow:inset 0 3px 0 #ffffff4d, inset 0 -2px 0 #0000002e, 0 1px 0 var(--b-base), 0 3px 8px #050f0a66;transform:translateY(4px)}.btn3d:disabled{filter:saturate(.4)brightness(.85);cursor:default}.btn3d img{filter:drop-shadow(0 2px #00000040);flex:none;width:1.55em;height:1.55em}.btn3d.wood-btn{--b-hi:#bf773f;--b-lo:#8c4b22;--b-edge:#5a2d11;--b-base:#45210b}.btn3d.green{--b-hi:#63cc53;--b-lo:#2f902c;--b-edge:#1b5e1a;--b-base:#144a14}.btn3d.orange{--b-hi:#ffb444;--b-lo:#e9731c;--b-edge:#9c4309;--b-base:#7a3405}.btn3d.red{--b-hi:#ff7a5c;--b-lo:#d8412b;--b-edge:#8f2414;--b-base:#6e1b0e}.btn3d.slate{--b-hi:#5c7489;--b-lo:#3a4f63;--b-edge:#22313f;--b-base:#1a2631}.btn3d.small{border-radius:13px;min-height:40px;padding:.2em .8em;font-size:.95rem}.btn3d.block{width:100%}.toggle{text-align:left;background:0 0;border:none;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:48px;padding:6px 4px;font-size:1.05rem;font-weight:700;display:flex}.toggle:last-child{border-bottom:none}.switch{background:#4b5d6c;border-radius:99px;flex:none;width:52px;height:30px;transition:background .16s;position:relative;box-shadow:inset 0 2px 4px #00000059}.switch:after{content:"";width:24px;height:24px;transition:transform .16s var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 2px 4px #00000059}.switch.on{background:#3fb24a}.switch.on:after{transform:translate(22px)}.chip{letter-spacing:.04em;text-transform:uppercase;color:var(--ink);background:#ffffff24;border-radius:99px;align-items:center;gap:4px;padding:1px 9px;font-size:.8rem;font-weight:800;display:inline-flex}.chip.easy{background:#3f9f3a}.chip.normal{background:#2f7fd0}.chip.hard{background:#e27a1a}.chip.inferno{background:#d23a26}.text-input{color:#fff;letter-spacing:.06em;text-transform:uppercase;background:#08121c8c;border:2px solid #a0c8e659;border-radius:13px;width:100%;min-height:48px;padding:8px 14px;font-size:1.1rem;font-weight:700}.text-input::placeholder{color:#8ea2b3;text-transform:none;letter-spacing:0;font-weight:600}.text-input:focus{border-color:#ffd23f;outline:none}.modal-backdrop{z-index:50;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(3px);background:#08120c8c;place-items:center;animation:.16s both fade-in;display:grid;position:fixed;inset:0}.modal{width:min(100%,420px);max-height:100%;animation:pop-in .24s var(--ease-out) both;overscroll-behavior:contain;padding:20px 18px 18px;position:relative;overflow:auto}.modal:focus{outline:none}.modal h2{text-align:center;text-shadow:0 2px #0000004d;margin:0 0 12px;font-size:1.6rem;font-weight:800;line-height:1.1}.modal-close{background:#ffffff14;border:none;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:8px;right:8px}.modal-close:active{background:#ffffff2e}.modal-actions{gap:14px;margin-top:16px;display:grid}.modal-actions.row{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(14px)scale(.96)}}.toast{left:50%;bottom:calc(env(safe-area-inset-bottom) + 24px);z-index:80;white-space:nowrap;animation:toast-in .22s var(--ease-out) both;border-radius:99px;padding:8px 18px;font-weight:700;position:fixed;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}}.loading{z-index:40;place-items:center;display:grid;position:fixed;inset:0}.loading-card{flex-direction:column;align-items:center;gap:8px;padding:22px 28px;font-size:1.1rem;font-weight:700;display:flex}.loading-card img{transform-origin:50% 90%;width:64px;height:64px;animation:.7s ease-in-out infinite alternate flicker-a}[data-reduced-motion] *,[data-reduced-motion] :before,[data-reduced-motion] :after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){.modal,.modal-backdrop,.toast{animation:none}}.rules{gap:10px;margin:0;padding:0;list-style:none;display:grid}.rules li{background:#ffffff0f;border-radius:12px;align-items:flex-start;gap:12px;padding:8px 10px;display:flex}.rules img{border-radius:8px;flex:none;width:42px;height:42px}.rules strong{font-size:1.05rem;font-weight:800;line-height:1.15;display:block}.rules span{color:var(--ink-soft);font-size:.92rem;font-weight:500;line-height:1.3;display:block}.stats-modal h3{letter-spacing:.06em;text-transform:uppercase;color:var(--gold);margin:14px 0 8px;font-size:1rem;font-weight:800}.stats-modal h3:first-of-type{margin-top:0}.stat-tiles{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.stat-tiles.small{grid-template-columns:repeat(3,1fr)}.stat-tile{text-align:center;background:#ffffff12;border-radius:12px;flex-direction:column;align-items:center;padding:8px 4px;display:flex}.stat-tile span{font-size:1.6rem;font-weight:800;line-height:1.1}.stat-tile small{color:var(--ink-soft);font-size:.75rem;font-weight:600;line-height:1.1}.stats-note{color:var(--ink-soft);margin:8px 0 0;font-size:.9rem}.stats-table{border-collapse:collapse;width:100%;font-weight:700}.stats-table th,.stats-table td{text-align:center;border-bottom:1px solid #ffffff14;padding:6px 4px}.stats-table thead th{color:var(--ink-dim);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem}.stats-table tbody th{text-align:left}.menu-shell{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;height:100%;overflow-y:auto;container-type:inline-size}.menu{width:100%;max-width:480px;padding:calc(env(safe-area-inset-top) + 10px) 14px calc(env(safe-area-inset-bottom) + 24px);flex-direction:column;gap:14px;margin:0 auto;display:flex}.menu-top{justify-content:flex-start;display:flex}.icon-btn{border-radius:14px;place-items:center;width:46px;height:46px;display:grid}.icon-btn:active{transform:translateY(2px)}.logo{border-radius:22px;align-items:center;gap:12px;margin:0 auto 6px;padding:10px 26px 12px 16px;display:flex;transform:rotate(-1.5deg)}.logo-flame{transform-origin:50% 90%;filter:drop-shadow(0 0 8px #ff8c28b3);flex:none;width:64px;height:64px;animation:.8s ease-in-out infinite alternate flicker-a}.logo h1{color:#fff6e2;letter-spacing:.01em;text-shadow:0 3px #4a2208,0 0 2px #4a2208;margin:0;font-size:min(13cqw,58px);font-weight:800;line-height:.95}.logo p{text-wrap:balance;color:#ffcf6b;text-shadow:0 1px #4a2208;margin:2px 0 0;font-size:min(3.7cqw,16px);font-weight:700}.card{border-radius:18px;flex-direction:column;gap:12px;padding:14px;display:flex}.card-head{align-items:center;gap:10px;display:flex}.card-head>img{flex:none;width:44px;height:44px}.card-title{flex:1;min-width:0}.card-title h2{text-shadow:0 2px #0000004d;margin:0;font-size:1.45rem;font-weight:800;line-height:1.05}.card-title span{color:var(--ink-soft);font-size:.9rem;font-weight:600;display:block}.daily-status{color:var(--ink-soft);background:#00000038;border-radius:12px;align-items:center;gap:8px;padding:6px 12px;font-weight:700;display:flex}.daily-status img{width:24px;height:24px}.daily-status.done{color:var(--green)}.btn3d.big{min-height:56px;font-size:1.35rem}.continue-btn{min-height:44px;font-size:.95rem}.intro-card{flex-flow:wrap;align-items:center;gap:10px}.intro-card>img{width:54px;height:54px}.intro-card>div:nth-child(2){flex:1;min-width:140px}.intro-card strong{font-size:1.15rem;display:block}.intro-card span{color:var(--ink-soft);font-size:.92rem;font-weight:600}.intro-actions{align-items:center;gap:8px;display:flex}.link-btn{min-height:44px;color:var(--ink-dim);background:0 0;border:none;padding:0 10px;font-weight:700;text-decoration:underline}.difficulty-picker{background:#00000040;border-radius:14px;grid-template-columns:repeat(4,1fr);gap:6px;padding:4px;display:grid}.diff-btn{min-height:44px;color:var(--ink-soft);background:0 0;border:none;border-radius:11px;padding:0 2px;font-size:min(4cqw,1rem);font-weight:800;transition:background .14s,color .14s,transform 90ms}.diff-btn:active{transform:scale(.96)}.diff-btn.selected{color:#fff;text-shadow:0 1px #00000059;box-shadow:inset 0 2px #ffffff4d,0 2px #0000004d}.diff-btn.easy.selected{background:#3f9f3a}.diff-btn.normal.selected{background:#2f7fd0}.diff-btn.hard.selected{background:#e27a1a}.diff-btn.inferno.selected{background:#d23a26}.seed-form{gap:10px;display:flex}.seed-form .text-input{flex:1;min-width:0}.seed-error{color:#ffb4a3;margin:-4px 0 0;font-weight:700}.recent-seeds{flex-wrap:wrap;gap:6px;display:flex}.seed-chip{letter-spacing:.03em;background:#ffffff14;border:1px solid #ffffff2e;border-radius:99px;min-height:34px;padding:2px 12px;font-size:.85rem;font-weight:700}.seed-chip:active{background:#ffffff2e}.menu-footer{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.menu-footer .btn3d{padding:.3em .4em;font-size:.98rem}.menu-list{gap:12px;display:grid}.menu-settings{background:#ffffff0f;border-radius:12px;margin-top:16px;padding:2px 12px}.about{color:var(--ink-dim);margin:14px 2px 0;font-size:.88rem;font-weight:500}.lesson-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.lesson-btn{text-align:left;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:14px;align-items:center;gap:12px;width:100%;min-height:52px;padding:6px 14px 6px 8px;font-size:1.1rem;font-weight:800;display:flex}.lesson-btn:active{background:#ffffff24}.lesson-num{text-shadow:0 1px #0000004d;background:linear-gradient(#ffb444,#e9731c);border-radius:50%;place-items:center;width:36px;height:36px;display:grid;box-shadow:inset 0 2px #ffffff59}.lesson-title{flex:1}.lesson-btn svg{color:var(--green)}.hud{align-items:stretch;gap:1.6cqw;display:flex}.plaque{border-radius:15px;flex:auto;align-items:center;gap:1.3cqw;min-width:0;min-height:min(13.5cqw,66px);padding:1.3cqw 2cqw 1.3cqw 1.3cqw;display:flex}.plaque-icon{filter:drop-shadow(0 2px #280f0059);flex:none;width:min(8.2cqw,44px);height:min(8.2cqw,44px)}.plaque-text{min-width:0}.plaque-title{letter-spacing:-.005em;color:#fff6e2;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 2px #4a2208,0 0 1px #4a2208;font-size:min(4.6cqw,25px);font-weight:800;line-height:1.05;overflow:hidden}.plaque-sub{color:#ffcf6b;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px #4a2208;margin-top:.2cqw;font-size:min(3.05cqw,16px);font-weight:700;line-height:1.1;overflow:hidden}.stats{flex:none;gap:1cqw;display:flex}.stat{border-radius:12px;flex:none;justify-content:center;align-items:center;gap:.7cqw;padding:.8cqw 1.05cqw;display:flex}.stat-icon{flex:none;width:min(6.8cqw,36px);height:min(6.8cqw,36px)}.stat-icon.pop{animation:.26s cubic-bezier(.2,1.6,.4,1) both stat-pop}.stat-icon.lost{filter:grayscale()brightness(.7)}.stat-text{flex-direction:column;line-height:1;display:flex}.stat-text.center{align-items:center}.stat-label{color:#eef4f8;white-space:nowrap;font-size:min(2.8cqw,14px);font-weight:700}.stat-value{white-space:nowrap;text-shadow:0 2px #00000059;margin-top:.4cqw;font-size:min(4.8cqw,25px);font-weight:800}.stat-bucket .stat-value{min-width:2.7em}.stat-value.full{color:var(--cyan)}.stat-value.empty{color:#ff9b5c}.stat-value.turns{text-align:center;min-width:1.2em;color:var(--gold);font-size:min(5.6cqw,29px)}.stat-value.house.ok{color:var(--green)}.stat-value.house.hurt{color:var(--orange)}.stat-value.house.lost{color:var(--red)}.tick{animation:.22s ease-out both tick}@keyframes tick{0%{opacity:.3;transform:translateY(-25%)}}@keyframes stat-pop{0%{transform:scale(.6)rotate(-10deg)}}.objective{text-shadow:0 1px #0006;background:#182430b8;border:1px solid #ffffff1f;border-radius:999px;align-self:center;align-items:center;gap:1.6cqw;max-width:100%;min-height:min(9.5cqw,44px);padding:.8cqw 4cqw .8cqw 2.6cqw;font-size:min(4.4cqw,21px);font-weight:700;line-height:1.15;display:flex;box-shadow:0 4px 10px #05140540}.objective img{flex:none;width:min(6.2cqw,30px);height:min(6.2cqw,30px)}.objective-text{text-wrap:balance;min-width:0}.objective-aside{color:var(--ink-soft);white-space:nowrap;border-left:1px solid #fff3;flex:none;padding-left:2cqw;font-size:min(3.3cqw,16px)}.objective.is-button{cursor:pointer;font:inherit;color:inherit;font-size:min(4.4cqw,21px);font-weight:700}.objective.is-button:active{transform:translateY(2px)}.objective.tone-dig{background:#6e3a16e0;border-color:#ffc87873}.objective.tone-warn{background:#962819e0;border-color:#ff967873}.objective.tone-good{background:#1e6e32e0;border-color:#afa6}.objective.tone-coach{border-radius:16px;align-self:stretch;padding:1.4cqw 3cqw 1.4cqw 2.4cqw;font-size:min(3.7cqw,18px);font-weight:600}.board-frame{background:linear-gradient(#b9cd72,#97ae50);border:3px solid #7a963a;border-radius:18px;padding:6px;display:inline-block;position:relative;box-shadow:inset 0 2px #fff6,inset 0 -2px #0000001f,0 10px 22px #0c20066b}.board{touch-action:none;-webkit-user-select:none;user-select:none;cursor:pointer;display:grid;position:relative}.tile{width:var(--cell);height:var(--cell);border-radius:calc(var(--cell) * .09);background-repeat:no-repeat;background-size:100% 100%;transition:filter .16s;box-shadow:0 1px 1px #142d0540}.dig-mode .tile{filter:brightness(.86)saturate(.85)}.layer{pointer-events:none;position:absolute;inset:0}.sprite,.player,.fire,.hl,.fx{position:absolute;top:0;left:0}.sprite img{width:100%;height:100%;display:block}.flag img{transform-origin:44% 86%;animation:1.4s ease-in-out infinite alternate flag-wave}@keyframes flag-wave{to{transform:rotate(3deg)scale(1.03)}}.player{z-index:2;transition-property:transform;transition-timing-function:cubic-bezier(.3,.7,.3,1)}.player-body{transform-origin:50% 90%;width:100%;height:100%;animation:1.8s ease-in-out infinite bob}.player-body img{filter:drop-shadow(0 2px 1px #0000002e);width:100%;height:100%;display:block}.player-body.face-left img{transform:scaleX(-1)}.player.is-moving .player-body{animation:.16s ease-out hop}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2.5%)}}@keyframes hop{50%{transform:translateY(-11%)scale(1.03,.97)}}.player-body.bump-up{animation:.24s ease-out bump-up}.player-body.bump-down{animation:.24s ease-out bump-down}.player-body.bump-left{animation:.24s ease-out bump-left}.player-body.bump-right{animation:.24s ease-out bump-right}@keyframes bump-up{40%{transform:translateY(-20%)}}@keyframes bump-down{40%{transform:translateY(20%)}}@keyframes bump-left{40%{transform:translate(-20%)rotate(-6deg)}}@keyframes bump-right{40%{transform:translate(20%)rotate(6deg)}}.fire{z-index:3}.fire.moving{animation:fire-move var(--move-ms,.25s) cubic-bezier(.45, .05, .3, 1) both}@keyframes fire-move{0%{transform:translate(var(--fx), var(--fy))}to{transform:translate(var(--tx), var(--ty))}}.fire-inner{position:absolute;inset:0}.fire.moving .fire-inner{animation:fire-lean var(--move-ms,.25s) ease-in-out both}.fire.moving.dir-left .fire-inner{animation-name:fire-lean-left}@keyframes fire-lean{50%{transform:skew(-8deg)scale(1.06,.94)}}@keyframes fire-lean-left{50%{transform:skew(8deg)scale(1.06,.94)}}.fire.spawn .fire-inner{animation:.42s cubic-bezier(.2,1.5,.4,1) both fire-spawn}@keyframes fire-spawn{0%{opacity:0;transform:scale(.15)translateY(20%)}to{opacity:1;transform:none}}.flame{transform-origin:50% 92%;animation-delay:var(--flick,0s);background-repeat:no-repeat;background-size:100% 100%;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate;position:absolute;inset:2% 5% 3%}.flame-outer{background-image:var(--img-flame-outer);filter:drop-shadow(0 0 calc(var(--cell) * .08) #ff6e1ebf);animation-name:flicker-a;animation-duration:.9s}.flame-mid{background-image:var(--img-flame-mid);animation-name:flicker-b;animation-duration:.7s}.flame-inner{background-image:var(--img-flame-inner);animation-name:flicker-c;animation-duration:.55s}@keyframes flicker-a{0%{transform:scale(1)skew(0)}35%{transform:scale(1.04,.93)skew(3deg)}70%{transform:scale(.97,1.06)skew(-2.5deg)}to{transform:scale(1.02,.98)skew(1.5deg)}}@keyframes flicker-b{0%{transform:scale(1)skew(0)}40%{transform:scale(.95,1.08)skew(-3deg)}to{transform:scale(1.05,.95)skew(2.5deg)}}@keyframes flicker-c{0%{transform:scale(1)}50%{transform:scale(.93,1.1)skew(2deg)}to{transform:scale(1.06,.92)skew(-2deg)}}.smoke{opacity:0;width:32%;height:32%;animation:2.8s linear infinite smoke;animation-delay:var(--flick,0s);background:radial-gradient(circle,#6969698c,#69696900 70%);border-radius:50%;position:absolute;top:-4%;left:36%}.smoke.s2{animation-delay:calc(var(--flick,0s) - 1.4s);left:26%}@keyframes smoke{0%{opacity:0;transform:translateY(20%)scale(.5)}15%{opacity:.85}to{opacity:0;transform:translate(-25%,-150%)scale(1.9)}}.hl{z-index:4;border-radius:calc(var(--cell) * .12);--ring:#fffffff2;--glow:#fff7c88c;box-shadow:inset 0 0 0 3px var(--ring), inset 0 0 calc(var(--cell) * .28) var(--glow), 0 0 10px var(--glow);animation:1.25s ease-in-out infinite hl-pulse}.hl-extinguish,.hl-refill{--ring:#8fe3ff;--glow:#6ed2ff99}.hl-chop{--ring:#e6ffb0;--glow:#d2ff9680}.hl-dig{--ring:#ffd36b;--glow:#ffc45099}.hl-wait{--ring:#ffffffd9;border-radius:50%}@keyframes hl-pulse{0%,to{opacity:1}50%{opacity:.55}}.hl-badge{background:#10202ed1;border-radius:50%;width:36%;height:36%;padding:5%;position:absolute;top:5%;right:5%;box-shadow:0 2px 4px #00000059}.fx{z-index:5}.fx i{display:block;position:absolute}.fx-steam i{background:radial-gradient(circle,#fffffff2,#e6f0f500 70%);border-radius:50%;width:40%;height:40%;animation:.65s ease-out both steam;top:30%;left:30%}.fx-steam i:nth-child(2){animation-delay:60ms;left:12%}.fx-steam i:nth-child(3){animation-delay:.11s;left:48%}@keyframes steam{0%{opacity:0;transform:translateY(10%)scale(.5)}25%{opacity:1}to{opacity:0;transform:translateY(-120%)scale(2)}}.fx-splash i{background:#8fdcff;border-radius:50%/60% 60% 40% 40%;width:12%;height:16%;animation:.48s ease-out both droplet;top:40%;left:45%}.fx-splash i:first-child{--dx:-160%;--dy:-170%}.fx-splash i:nth-child(2){--dx:150%;--dy:-190%}.fx-splash i:nth-child(3){--dx:-60%;--dy:-250%}.fx-splash i:nth-child(4){--dx:60%;--dy:-230%}@keyframes droplet{0%{opacity:1;transform:translate(0)scale(.6)}to{transform:translate(var(--dx), var(--dy)) scale(1);opacity:0}}.fx-fell img{transform-origin:50% 88%;width:100%;height:100%;animation:.46s ease-in both fell-right;position:absolute;inset:0}.fx-fell.fell-left img{animation-name:fell-left}.fx-fell.fell-up img{animation-name:fell-up}.fx-fell.fell-down img{animation-name:fell-down}@keyframes fell-right{to{opacity:0;transform:rotate(80deg)scale(.9)}}@keyframes fell-left{to{opacity:0;transform:rotate(-80deg)scale(.9)}}@keyframes fell-up{to{opacity:0;transform:translateY(-20%)scale(.5,.2)}}@keyframes fell-down{to{opacity:0;transform:translateY(20%)scale(1.2,.2)}}.fx-fell i,.fx-dirt i{background:#d9a066;border-radius:2px;width:11%;height:8%;animation:.42s ease-out both chip;top:60%;left:44%}.fx-dirt i{background:#7a4a26;border-radius:50%;width:12%;height:12%}.fx i:first-of-type{--dx:-180%;--dy:-220%}.fx i:nth-of-type(2){--dx:190%;--dy:-200%}.fx i:nth-of-type(3){--dx:40%;--dy:-300%}.fx i:nth-of-type(4){--dx:-60%;--dy:-140%}@keyframes chip{0%{opacity:1;transform:translate(0)rotate(0)}to{transform:translate(var(--dx), var(--dy)) rotate(200deg);opacity:0}}.fx-ignite img{filter:sepia()saturate(7)hue-rotate(-28deg)brightness(1.25);width:100%;height:100%;animation:.42s ease-out both ignite;position:absolute;inset:0}@keyframes ignite{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.25,1.35)}}.fx-embers i{width:12%;height:12%;animation:.42s ease-out both chip;animation-delay:var(--delay,0s);background:#ffbe45;border-radius:50%;top:44%;left:44%;box-shadow:0 0 6px #ff7a1f}.fx-house img{width:100%;height:100%;animation:.56s ease-in both house-burn;animation-delay:var(--delay,0s);position:absolute;inset:0}@keyframes house-burn{0%{filter:none;opacity:1;transform:none}15%{filter:sepia()saturate(6)hue-rotate(-25deg)brightness(1.4);transform:translate(-6%)rotate(-3deg)}30%{transform:translate(6%)rotate(3deg)}45%{opacity:1;transform:translate(-5%)rotate(-2deg)}to{filter:sepia()saturate(6)hue-rotate(-25deg)brightness(1.6);opacity:0;transform:scale(1.2)}}.fx-house b{animation:.6s ease-out both blast;animation-delay:var(--delay,0s);background:radial-gradient(circle,#ffdc78f2 0%,#ff781eb3 35%,#ff501400 70%);border-radius:50%;position:absolute;inset:-50%}@keyframes blast{0%{opacity:0;transform:scale(.2)}20%{opacity:1}to{opacity:0;transform:scale(1.6)}}.fx-nope{border-radius:calc(var(--cell) * .12);animation:.38s ease-out both nope;box-shadow:inset 0 0 0 3px #ff6a4d,inset 0 0 18px #ff503c99}@keyframes nope{0%,to{opacity:0;transform:translate(0)}20%{opacity:1}40%{transform:translate(-4%)}60%{transform:translate(4%)}}.board-frame.shake{animation:.48s ease-out both board-shake}@keyframes board-shake{10%{transform:translate(-7px,2px)rotate(-.6deg)}25%{transform:translate(6px,-3px)rotate(.6deg)}40%{transform:translate(-5px,2px)}60%{transform:translate(4px,-1px)}80%{transform:translate(-2px,1px)}}.board-flash{pointer-events:none;background:radial-gradient(circle,#ff963299,#ff5a1426 60%,#ff3c0a00 80%);border-radius:18px;animation:.56s ease-out both board-flash;position:absolute;inset:0}@keyframes board-flash{0%{opacity:0}15%{opacity:1}to{opacity:0}}.controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:2.4cqw;padding:0 .8cqw 1.2cqw;display:grid}.control-btn{white-space:nowrap;border-radius:min(4.6cqw,22px);gap:1.3cqw;min-height:min(13.2cqw,64px);padding:0 1.4cqw;font-size:min(5.1cqw,27px)}.control-btn span{text-overflow:ellipsis;min-width:0;overflow:hidden}.control-btn img{width:min(9cqw,46px);height:min(9cqw,46px)}.control-btn svg{filter:drop-shadow(0 2px #0000004d);flex:none;width:min(6.8cqw,34px);height:min(6.8cqw,34px)}.control-btn.is-active{outline-offset:2px;outline:3px solid #ffe07a;animation:1.1s ease-in-out infinite dig-glow}@keyframes dig-glow{50%{outline-color:#ffe07a59}}.legend{border-radius:16px;grid-template-columns:repeat(5,minmax(0,1fr));padding:1.4cqw .6cqw;display:grid}.legend-item{border-left:1px solid #ffffff24;align-items:center;gap:1cqw;min-width:0;padding:0 1cqw;display:flex}.legend-item:first-child{border-left:none}.legend-item img{border-radius:6px;flex:none;width:min(7cqw,36px);height:min(7cqw,36px)}.legend-item>div{min-width:0}.legend-title{white-space:nowrap;font-size:min(3.3cqw,16px);font-weight:800;line-height:1.05}.legend-text{color:var(--ink-soft);white-space:nowrap;font-size:min(2.5cqw,12.5px);font-weight:600;line-height:1.1}@container (width<=459px){.legend{padding:1.6cqw .4cqw 1.4cqw}.legend-item{text-align:center;flex-direction:column;gap:.4cqw;padding:0 .4cqw}.legend-item img{width:6.6cqw;height:6.6cqw}.legend-title{font-size:3.05cqw}.legend-text{font-size:2.45cqw}}.pause-actions{gap:14px;display:grid}.pause-settings{background:#ffffff0f;border-radius:12px;margin:16px 0 8px;padding:2px 12px}.pause-seed{background:#00000038;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin:10px 0 4px;padding:6px 6px 6px 12px;font-weight:600;display:flex}.pause-seed b{color:var(--gold);letter-spacing:.04em}.pause-home{margin-top:14px}.results-modal{text-align:center;padding-top:26px}.results-burst{width:84px;height:84px;margin:0 auto 4px;position:relative}.results-burst img{filter:drop-shadow(0 4px 6px #00000059);width:56px;height:56px;animation:.52s cubic-bezier(.2,1.6,.4,1) both result-pop;position:absolute;inset:14px}.results-burst i{transform-origin:50% 100%;width:6px;height:40px;margin:-40px 0 0 -3px;position:absolute;top:50%;left:50%}.results-burst i:before{content:"";background:#ffd23f;border-radius:3px;width:6px;height:14px;animation:.7s ease-out .12s both ray;display:block}.results-burst i:nth-child(2n):before{background:#7fdcff}@keyframes result-pop{0%{opacity:0;transform:scale(.2)rotate(-30deg)}}@keyframes ray{0%{opacity:0;transform:translateY(26px)scaleY(.3)}40%{opacity:1}to{opacity:0;transform:translateY(-8px)}}.results-heading{letter-spacing:.03em;text-transform:uppercase;color:#fff4d6;font-size:1.45rem!important}.results-message{color:var(--ink-soft);margin:-4px 0 10px;font-weight:600}.results-score{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:8px;display:flex}.results-turns{color:var(--gold);text-shadow:0 3px #00000059;font-size:3.4rem;font-weight:800;line-height:1}.results-turns-label{font-size:1.4rem;font-weight:800}.badge-best{color:#4a2200;letter-spacing:.06em;text-shadow:none;background:linear-gradient(#ffcf3f,#f08c1a);border-radius:99px;align-self:center;padding:2px 10px;font-size:.85rem;font-weight:800;animation:.48s cubic-bezier(.2,1.6,.4,1) .2s both result-pop}.results-sub{color:var(--ink-soft);justify-content:center;gap:14px;margin-top:2px;font-weight:700;display:flex}.par-note{color:var(--green)}.result-house{border-radius:99px;justify-content:center;align-items:center;gap:8px;width:fit-content;margin:14px auto 6px;padding:6px 16px;font-size:1.15rem;font-weight:800;display:flex}.result-house img{width:34px;height:34px}.result-house.saved{color:var(--green);background:#3caa4647}.result-house.lost{color:var(--red);background:#dc463247}.result-house.lost img{filter:grayscale()brightness(.7)}.results-stats{background:#ffffff0f;border-radius:12px;margin:10px 0 0;padding:4px 12px}.results-stats div{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:5px 0;display:flex}.results-stats div:last-child{border-bottom:none}.results-stats dt{color:var(--ink-soft);align-items:center;gap:8px;font-weight:700;display:flex}.results-stats dt img{width:24px;height:24px}.results-stats dd{margin:0;font-size:1.2rem;font-weight:800}.results-next{margin-top:16px;font-size:1.15rem}.results-actions .btn3d{padding:.35em .5em;font-size:1rem}.results-actions svg{flex:none}.game-shell{width:100%;max-width:520px;height:100%;margin:0 auto;container-type:inline-size}.game-screen{height:100%;padding:calc(env(safe-area-inset-top) + min(2.4cqw, 12px)) min(2.4cqw, 12px) calc(env(safe-area-inset-bottom) + min(2.4cqw, 12px));-webkit-user-select:none;user-select:none;flex-direction:column;gap:min(2.4cqw,12px);display:flex}.game-top,.game-bottom{flex-direction:column;gap:min(2.4cqw,12px);display:flex}.board-area{flex:auto;justify-content:center;align-items:center;min-height:0;display:flex}.confirm-text{text-align:center;color:var(--ink-soft);margin:0 0 6px;font-size:1.05rem;font-weight:600}@media (height<=740px){.game-screen .legend{display:none}}@media (height<=600px){.game-screen .objective:not(.tone-coach) .objective-aside{display:none}}@media (aspect-ratio>=5/4) and (width>=620px){.game-shell{max-width:1180px}.game-screen{grid-template-columns:minmax(0, calc((100vh - 48px) * var(--cols) / var(--rows))) clamp(280px, 34vw, 400px);grid-template-columns:minmax(0, calc((100dvh - 48px) * var(--cols) / var(--rows))) clamp(280px, 34vw, 400px);padding:calc(env(safe-area-inset-top) + 14px) calc(env(safe-area-inset-right) + 16px) calc(env(safe-area-inset-bottom) + 14px) calc(env(safe-area-inset-left) + 16px);grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"board top""board.""board bottom";justify-content:center;gap:12px 20px;display:grid}.game-top{grid-area:top;container-type:inline-size}.game-bottom{grid-area:bottom;container-type:inline-size}.board-area{grid-area:board}.game-screen .objective{justify-content:center;align-self:stretch}.game-screen .legend{display:grid}}@media (aspect-ratio>=5/4) and (width>=620px) and (height<=520px){.game-screen .legend{display:none}}
