:root{color:#45423d;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ground:#f6efed;--ink:#45423d;--muted:#736d63;--secondary:#736d63;--white:#fff;--accent:#55745c;--accent-dark:#3d5946;--focus:#466d59;--inline-direction:1;--motion-ease:cubic-bezier(.16, 1, .3, 1);--raised-shadow:0 5px 12px #6951390a, 0 2px 3px #69513908;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f6efed;font-family:-apple-system,BlinkMacSystemFont,SF Pro Rounded,system-ui,PingFang SC,PingFang TC,Microsoft YaHei,Noto Sans CJK KR,sans-serif}*{box-sizing:border-box}body{min-width:280px;margin:0}button,input{font:inherit}button{color:inherit;-webkit-tap-highlight-color:transparent;cursor:pointer;touch-action:manipulation}button:disabled{cursor:default}button:focus-visible,input:focus-visible+.switch{outline:2px solid var(--focus);outline-offset:3px}button:active:not(:disabled){transform:scale(.96)}button{transition:transform .12s ease-out,background-color .12s ease-out}::selection{color:#4d4032;background:#f5d6ab}:root{scrollbar-color:#cec4b6 var(--ground);scrollbar-width:thin}.icon{flex:none;width:24px;height:24px;display:block}.cat-face{pointer-events:none;isolation:isolate;width:100%;height:100%;display:block;position:relative}.cat-puppet,.cat-render{position:absolute;inset:0}.cat-puppet{transform-origin:50% 89%}.cat-render{background-image:var(--cat-sprite);background-size:400% 100%;background-position:var(--cat-coat) 0;background-repeat:no-repeat}.cat-motion{visibility:hidden;position:absolute;inset:0}.cat-motion>svg{width:100%;height:100%;display:block}.cat-motion[data-ready=true]{visibility:visible}.cat-motion[data-ready=true]+.cat-render{visibility:hidden}.cat-sad .cat-puppet{transform:translateY(3%)rotate(-5deg)}.cat-curious .cat-render{transform:rotate(4deg)}.cat-shadow{transform-origin:50%;background:radial-gradient(#53402d50 0%,#53402d1c 42%,#0000 72%);width:68%;height:9%;position:absolute;bottom:5%;left:16%}.cat-arriving .cat-puppet{animation:.44s both kitten-land}.cat-arriving .cat-shadow{animation:.44s both kitten-shadow}.cell>.cat-arriving .cat-puppet{transform-origin:var(--landing-origin,50% 89%);animation:1.12s both kitten-board-land}.cell>.cat-arriving .cat-shadow{animation-duration:1.12s}.cat-glints{color:#fffef1;opacity:0;width:100%;height:100%;animation:.48s ease-out 80ms both kitten-glints;position:absolute;inset:0}.collection-cat{background:color-mix(in srgb, var(--collection-color) 30%, #fffdf8);width:28px;min-width:0;height:28px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--collection-color) 60%, #fffdf8);border-radius:9px;flex:0 28px;place-items:center;display:grid;position:relative}.collection-cat>.icon{color:#8b8071;width:13px;height:13px}.collection-found{background:var(--collection-color);box-shadow:none}.collection-found>.cat-face{width:113%;height:113%}.collection-cat .cat-shadow,.collection-cat .cat-glints{display:none}.collection-arriving{animation:collection-settle .34s .15s var(--motion-ease) both}.cell-reward{z-index:5;color:#e9892c;-webkit-text-stroke:3px #fffaf0;paint-order:stroke fill;text-shadow:0 2px 2px #72552b30;font-variant-numeric:tabular-nums;pointer-events:none;white-space:nowrap;direction:ltr;unicode-bidi:isolate;font-size:clamp(14px,4vw,18px);font-weight:850;animation:1.25s ease-out both cell-reward;position:absolute;bottom:calc(148% + 8px);left:50%}.cell-reward-below{animation-name:cell-reward-below;top:120%;bottom:auto}.cell:has(.placement-reward){z-index:3}.placement-reward{pointer-events:none;position:absolute;inset:0}.cell-confetti{--burst-radius:calc(min(20vw, 94px) * 4 / var(--size));--burst-fall:calc(clamp(160px, 54vw, 235px) * 4 / var(--size));--piece-size:calc(clamp(13px, 5.4vw, 25px) * 4 / var(--size));position:absolute;inset:0}.placement-reward:before{content:"";z-index:0;background:radial-gradient(ellipse, #fffde9 8%, #fff7a9bd 25%, color-mix(in srgb, var(--region) 45%, transparent) 42%, transparent 68%);opacity:0;animation:.42s ease-out both placement-flash;position:absolute;inset:-8%}.cell-confetti i{z-index:0;width:var(--piece-size);height:var(--piece-size);background:color-mix(in srgb, var(--region) 86%, #71611c);clip-path:polygon(19% 0,71% 8%,100% 41%,83% 67%,90% 87%,47% 100%,5% 72%,0 30%);opacity:0;animation:region-burst 1.05s calc(30ms + var(--piece) * 12ms) linear both;position:absolute;top:43%;left:50%}.cell-confetti i:nth-child(2n){width:calc(var(--piece-size) * 1.15);clip-path:polygon(8% 13%,49% 0,96% 23%,85% 55%,100% 80%,60% 100%,17% 86%,0 47%);background:color-mix(in srgb, var(--region) 78%, #75602b)}.cell-confetti i:nth-child(3n){z-index:2;width:calc(var(--piece-size) * .38);height:calc(var(--piece-size) * .38);clip-path:polygon(50% 0,65% 35%,100% 50%,65% 65%,50% 100%,35% 65%,0 50%,35% 35%);filter:drop-shadow(0 0 4px #fff8a9);background:#fffde6}@keyframes region-burst{0%{opacity:0;transform:translate(-50%)scale(.35)rotate(0)}15%{transform:translate(calc(var(--vx) * var(--burst-radius) * .95), calc(var(--vy) * var(--burst-radius) * .95 - 16px)) rotate(calc(var(--piece) * 28deg));opacity:1}40%{transform:translate(calc(var(--vx) * var(--burst-radius)), calc(var(--vy) * var(--burst-radius) + var(--burst-fall) * .08)) rotate(calc(var(--piece) * 52deg));opacity:1}75%{transform:translate(calc(var(--vx) * var(--burst-radius)), calc(var(--vy) * var(--burst-radius) + var(--burst-fall) * .5)) rotate(calc(var(--piece) * 78deg));opacity:.8}to{transform:translate(calc(var(--vx) * var(--burst-radius) * 1.05), calc(var(--vy) * var(--burst-radius) + var(--burst-fall))) rotate(calc(var(--piece) * 100deg));opacity:0}}@keyframes placement-flash{0%{opacity:0;transform:scale(.35)}25%{opacity:1}to{opacity:0;transform:scale(1.25)}}.score-flight-layer{z-index:20;pointer-events:none;position:fixed;inset:0;overflow:clip}.score-flight,.score-flight i{pointer-events:none;position:absolute;top:0;left:0}.score-flight i{opacity:0;transform-origin:5px 5px;width:10px;height:10px;box-shadow:0 0 5px 2px #fffbd0, 0 0 13px 4px var(--reward-color);background:#fffef1;border-radius:50%}.score-flight i:before{content:"";width:var(--trail-length);background:linear-gradient(90deg, transparent, var(--reward-color) 40%, #fffbd4 85%, #fffef1);height:8px;box-shadow:4px 0 9px var(--reward-color);border-radius:50%;position:absolute;top:1px;right:4px}.score-arrival{pointer-events:none;width:0;height:0;position:absolute;top:0;left:0}.score-arrival i{left:calc(var(--spark-size) * -.5);top:calc(var(--spark-size) * -.5);width:var(--spark-size);height:var(--spark-size);filter:drop-shadow(0 0 3px #f8ce57);clip-path:polygon(50% 0,65% 35%,100% 50%,65% 65%,50% 100%,35% 65%,0 50%,35% 35%);background:#ffe268;animation:.4s ease-out both score-spark;position:absolute}.score-arrival i:nth-child(2n){background:#fff9cf}@keyframes score-spark{0%{opacity:0;transform:translate(calc(var(--spark-x) * .4), calc(var(--spark-y) * .4)) scale(.25)}25%{opacity:1}60%{opacity:1}to{opacity:0;transform:translate(var(--spark-x), var(--spark-y)) rotate(var(--spark-turn)) scale(.7)}}.cell-invalid .cat-puppet{animation:.32s ease-out kitten-nope}.feedback-success{color:#755634;background:#f8edda}.game-feedback .feedback-cat{flex:0 0 26px;width:26px;height:26px;margin:-4px 0}.feedback-cat .cat-shadow{display:none}@keyframes kitten-glints{0%{opacity:0;transform:scale(.65)}22%{opacity:1}to{opacity:0;transform:scale(1.14)translateY(-5%)}}@keyframes collection-settle{0%{transform:scale(.92)}55%{transform:scale(1.08)}to{transform:none}}@keyframes cell-reward{0%{opacity:0;transform:translate(-50%,8px)scale(.65)}12%{opacity:1;transform:translate(-50%,-2px)scale(1.12)}28%,78%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-10px)}}@keyframes cell-reward-below{0%{opacity:0;transform:translate(-50%,8px)scale(.65)}12%{opacity:1;transform:translate(-50%,2px)scale(1.12)}28%,78%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,10px)}}@keyframes kitten-nope{0%,to{transform:none}25%{transform:rotate(-7deg)translate(-2%)}65%{transform:rotate(5deg)translate(2%)}}.game-screen{width:min(100% - 32px,414px);min-height:min(100svh,880px);padding:max(24px, env(safe-area-inset-top)) 0 max(28px, env(safe-area-inset-bottom));flex-direction:column;margin:0 auto;display:flex}.game-header{grid-template-columns:44px 1fr 44px;align-items:center;display:grid}.round-button{width:44px;height:44px;color:var(--ink);box-shadow:var(--raised-shadow);background:#fff;border:0;border-radius:16px;place-items:center;padding:0;display:grid}.round-button:hover{background:#eaf0e7}.round-button .icon{width:22px;height:22px}.game-header>.round-button:last-child{justify-self:end}.level-info{text-align:center;min-width:0}.level-info h1{font:inherit;margin:0;line-height:1}.level-title{letter-spacing:0;background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;gap:6px;max-width:100%;min-height:44px;padding:4px 8px;font-size:1.5rem;font-weight:750;display:inline-flex}.level-title .icon{width:14px;height:14px;color:var(--secondary)}.score{color:var(--secondary);font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:.75rem;position:relative}.score strong{color:var(--ink);margin-inline-start:5px;font-weight:650;display:inline-grid}.score-reserve,.score-visual{direction:ltr;unicode-bidi:isolate;grid-area:1/1}.score-reserve{visibility:hidden}.level-title span{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;min-width:0}.game-status{justify-content:space-between;align-items:center;gap:12px;margin:18px 2px 8px;display:flex}.progress-group{flex-direction:column;align-items:flex-start;gap:7px;min-width:0;display:flex}.progress-caption{color:var(--secondary);font-size:.75rem;line-height:1.4}.progress-caption strong{color:var(--ink);font-weight:650}.cat-progress{justify-content:center;align-items:center;gap:5px;min-width:0;min-height:28px;display:flex}.progress-cat{width:25px;min-width:0;height:25px;color:var(--cat-color);opacity:.65;flex:0 25px}.progress-cat-done{opacity:1;filter:drop-shadow(0 2px 1px #3d4b3920)}.lives{background:#f6ecdc;border-radius:20px;flex-shrink:0;align-items:center;gap:8px;padding:6px 11px;display:flex}.lives-group{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:5px;display:flex}.lives-caption{color:var(--secondary);padding-inline-end:2px;font-size:.75rem;line-height:1.4}.lives-last .lives-caption{color:#9b5437}.fish-icon{color:#df9650;width:25px;height:18px;transition:opacity .16s ease-out,color .16s ease-out;display:block}.fish-faded{color:#cec5b7;opacity:.5}.rule-ribbon{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:0;display:grid}.rule-chip{overflow-wrap:anywhere;text-align:center;color:#6b6358;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:44px;padding:6px 4px;font-size:.75rem;font-weight:550;line-height:1.45;display:flex;position:relative}.rule-chip .icon{color:#7b806b;width:16px;height:16px}.rule-current{color:#3e5942;background:#e9f0e3;border-color:#8ca58b}.rule-chip:hover{background:#f3f2e9}.rule-error{color:#9b4335;background:#f8e0d7;border-color:#d37764}.puzzle-area{width:100%;min-width:min(100%,280px);margin:12px auto 0}.board{aspect-ratio:1;grid-template-columns:repeat(var(--size), minmax(0, 1fr));grid-template-rows:repeat(var(--size), minmax(0, 1fr));touch-action:pinch-zoom;-webkit-user-select:none;user-select:none;background:#fffefa;border:7px solid #fffefa;border-radius:20px;gap:2px;width:100%;display:grid;position:relative;box-shadow:0 3px 4px #7663430d,0 12px 26px -10px #76634332}.cell{background:linear-gradient(150deg, #ffffff14, #fff0 70%), var(--region);touch-action:pinch-zoom;isolation:isolate;border:0;border-radius:3px;place-items:center;min-width:0;min-height:0;padding:0;display:grid;position:relative;box-shadow:inset 0 1px #ffffff45,inset 0 -1px #57493b0a}.cell:hover{filter:brightness(1.025)}.cell:active:not(:disabled){transform:none}.cell:before{content:"";border-radius:inherit;pointer-events:none;opacity:0;background:#5143290e;transition:opacity 90ms ease-out;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #ffffffcf}.cell-pressed:before{opacity:1}.cell[aria-disabled=true]{cursor:default}.cell-cat{box-shadow:inset 0 1px #ffffff40}.cell:focus-visible{outline:3px solid var(--focus);outline-offset:-3px;z-index:2}.cell,.selected-cell-summary,.tutorial-finish .primary-button{scroll-margin-block:8px}.cell>.cat-face{z-index:1;width:108%;height:108%}.cell>.cat-face:is([data-cat=black],[data-cat=calico]) .cat-motion{transform-origin:50% 91%;transform:scale(.952)}.cell>.cat-face[data-lottie]{--cat-rest-scale:.9464;--cat-rest-y:0.11%}.cell>.cat-face[data-lottie][data-cat=black]{--cat-rest-y:-0.73%}.cell>.cat-face[data-lottie][data-cat=calico]{--cat-rest-y:-0.14%}.cell>.cat-face[data-lottie][data-cat=pink]{--cat-rest-scale:.9491;--cat-rest-y:-0.15%}.cell>.cat-face[data-lottie][data-cat=pink] .cat-motion{transform-origin:50% 91%;transform:scale(.9184)}.cell>.cat-face[data-lottie] .cat-render{transform:translateY(var(--cat-rest-y)) scale(var(--cat-rest-scale));transform-origin:50% 91%}.cross-mark{color:#556555;pointer-events:none;opacity:1;width:35%;height:35%}.board .cell>.cross-mark{color:#fffefa;stroke-width:6.4px;filter:drop-shadow(0 1px 1px #6f593719);width:86%;height:86%}.board-won .cross-mark{opacity:1}.cell-excluded .cross-mark{animation:mark-in .22s var(--motion-ease)}.cell-excluded>.cross-mark path{stroke-dasharray:1;animation:.18s ease-out both mark-stroke}.cell-excluded>.cross-mark path+path{animation-delay:65ms}.cell-error-feedback{z-index:3;pointer-events:none;border-radius:inherit;position:absolute;inset:0}.cell-error-feedback.error-motion:before{content:"";border-radius:inherit;opacity:0;background:#ff4a00;animation:1.4s linear both error-flash;position:absolute;inset:0}.cell-error-feedback.error-motion .error-cross{animation:1.4s linear both error-mark}.error-motion .error-cross path{stroke-dasharray:1;animation:1.4s linear both error-stroke}.error-motion .error-cross path+path{animation-name:error-stroke-second}.cell-error-feedback:not(.error-motion) .error-cross path{animation:none}.error-heart{color:#fffefa;opacity:0;width:84%;height:84%;animation:1.4s linear both error-heart;position:absolute;inset:8%;overflow:visible}.error-heart path{transform-origin:50%;animation:1.4s linear both heart-left}.error-heart path+path{animation-name:heart-right}.error-shards{position:absolute;inset:0}.error-shards i{opacity:0;background:#ff692d;border-radius:50%;width:3px;height:3px;animation:1.4s linear both heart-shard;position:absolute;top:50%;left:50%}.error-cross{color:#ff692d;z-index:3;stroke-width:6.4px;width:90%;height:90%;position:absolute;inset:5%}.cell-error-target{z-index:2}.cell-error-target>.cross-mark:not(.error-cross){visibility:hidden}.cell-invalid:after{content:"";pointer-events:none;background:#fff4eb18;border:2px solid #a5523c;border-radius:3px;position:absolute;inset:0}.board-lost{opacity:.65}.region-motif{color:#51463d;opacity:.45;pointer-events:none;width:40%;height:40%;position:absolute}.cell-cat .region-motif,.cell-excluded .region-motif{opacity:.12}.cell-muted{opacity:.32}.cell-guide{box-shadow:inset 0 0 0 2px #fff8ed}.cell-hinted .cross-mark{animation:mark-in .3s var(--motion-ease)}.tutorial-hand{color:#f3c8ae;z-index:5;pointer-events:none;width:44px;height:48px;animation:1.8s ease-in-out infinite tap-hand;position:absolute;bottom:-22px;right:-15px;transform:rotate(-18deg)}.tutorial-hand .icon{filter:drop-shadow(0 2px 1px #9a766744);width:100%;height:100%}.game-feedback{text-align:start;color:#686050;text-wrap:pretty;background:#f3ede2;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:fit-content;max-width:100%;min-height:48px;margin:18px auto 0;padding:8px 12px;font-size:.8125rem;line-height:1.65;display:flex}.game-feedback>.icon{color:#7c7c60;width:17px;height:17px}.game-feedback strong{font-weight:800}.game-feedback.feedback-quiet{min-height:36px;color:var(--secondary);background:0 0;border-radius:0;margin-top:8px;padding:4px 2px}.game-feedback.feedback-quiet.feedback-success{color:#755634}.feedback-error{color:#9b4335;background:#f4e3db}.feedback-error>.icon{color:#a45443}.gesture-help{color:var(--secondary);text-align:center;margin:10px 0 0;font-size:.75rem;line-height:1.5}.interaction-help{justify-content:space-between;align-items:center;gap:4px 8px;display:flex}.interaction-help .gesture-help{text-align:start;flex:1;margin:0}.interaction-switch{min-height:44px;color:var(--accent-dark);background:0 0;border:0;border-radius:9px;flex:none;justify-content:center;align-items:center;gap:5px;padding:8px 3px 8px 10px;font-size:.75rem;display:flex}.interaction-switch .icon{width:15px;height:15px}.interaction-switch:hover{background:#eaf0e7}.board-point,.board-point .cell{touch-action:pan-y pinch-zoom}.game-header button:disabled,.rule-chip:disabled,.inline-next:disabled{opacity:.5}.save-conflict:focus{outline:2px solid var(--focus);outline-offset:3px}.game-tools{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:auto;padding-top:14px;display:grid}.tool-button{width:100%;min-width:0;color:var(--ink);text-align:center;background:0 0;border:0;border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:8px 4px 6px;display:flex}.tool-art{width:56px;height:56px;box-shadow:var(--raised-shadow), inset 0 0 0 1px #fff;transition:transform .16s var(--motion-ease), background-color .12s ease-out, box-shadow .16s ease-out;background:#fffdf9;border-radius:18px;flex:0 0 56px;place-items:center;padding:10px;display:grid;position:relative}.tool-label{overflow-wrap:anywhere;max-width:100%;font-size:.8125rem;font-weight:600;line-height:1.45}.tool-note{color:var(--secondary);margin-top:3px;font-size:.75rem;font-weight:400;line-height:1.4;display:block}.tool-free{display:none}.tool-cat .tool-art{background:#f8e8cc;padding:2px}.tool-undo .icon{color:#6c806a;width:26px;height:26px}.tool-button:active:not(:disabled){transform:none}.tool-button:active:not(:disabled) .tool-art{transform:translateY(1px)scale(.95);box-shadow:inset 0 1px 3px #69513912}.tool-button:disabled{color:var(--secondary)}.tool-button:disabled .tool-art{opacity:.4;box-shadow:none}.tool-hint .icon{color:#a87729;fill:#f8dc8e;stroke-width:1.5px;width:27px;height:31px}@media (hover:hover){.tool-button:hover:not(:disabled) .tool-art{transform:translateY(-2px);box-shadow:0 7px 14px #69513912,inset 0 0 0 1px #fff}.tool-button:active:not(:disabled) .tool-art{transform:translateY(1px)scale(.95)}.level-title:hover:not(:disabled){background:#efece3}}.resource-count{border:2.5px solid var(--ground);color:#fff;background:#59745b;border-radius:50%;place-items:center;min-width:25px;min-height:25px;padding:0 4px;font-size:.75rem;font-weight:650;display:grid;position:absolute;bottom:-3px;right:-5px}.inline-next{margin-top:18px}.storage-notice{text-align:center;color:#a55340;font-size:.75rem}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.game-dialog{width:min(100% - 32px,360px);max-width:calc(100% - 32px);color:var(--ink);background:var(--ground);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#cec4b6 transparent;opacity:0;max-height:calc(100svh - 32px);transition:opacity .22s ease-out, transform .3s var(--motion-ease);border:0;border-radius:28px;padding:0;position:fixed;overflow-y:auto;transform:translateY(12px)scale(.975);box-shadow:0 24px 80px #49382238}.game-dialog[data-state=open]{opacity:1;transform:none}.game-dialog[data-state=closing]{transition-duration:.16s,.18s;transition-timing-function:ease-in}.game-dialog::backdrop{background:#423b3200;transition:background-color .22s ease-out}.game-dialog[data-state=open]::backdrop{background:#423b3259}.game-dialog[data-state=closing]::backdrop{transition-duration:.16s}@starting-style{.game-dialog[data-state=open]{opacity:0;transform:translateY(12px)scale(.975)}.game-dialog[data-state=open]::backdrop{background:#423b3200}}.dialog-header{z-index:5;background:var(--ground);text-align:center;border-radius:26px 26px 0 0;padding:22px 48px 18px;position:sticky;top:0}.dialog-header h2,.result-dialog .dialog-header h2{letter-spacing:0;text-wrap:balance;overflow-wrap:anywhere;margin:0;font-size:1.4375rem;font-weight:750;line-height:1.4}.dialog-viewport{overflow:clip}.dialog-content{text-align:center;padding:0 24px 22px}.dialog-close{inset-inline-end:5px;width:44px;height:44px;box-shadow:none;color:var(--secondary);background:0 0;position:absolute;top:15px}.dialog-back{inset-inline:5px auto}.dialog-close .icon{width:16px;height:16px}h2{letter-spacing:-.02em;margin:8px 0 24px;font-size:1.5rem;font-weight:650}.dialog-copy{color:var(--secondary);margin:17px 0 24px;font-size:.875rem;line-height:1.8}.dialog-copy small{font-size:.75rem}.primary-button{color:#fff;background:#55745c;border:0;border-radius:16px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:52px;padding:12px 20px;font-size:1rem;font-weight:650;display:flex;box-shadow:0 4px 10px #3f5b3e1f,inset 0 1px #ffffff26}.primary-button:hover{background:var(--accent-dark)}.primary-button .icon{width:19px;height:19px}.plain-button{min-height:44px;color:var(--secondary);background:0 0;border:0;margin:10px auto 0;padding:12px;font-size:.8125rem;display:block}.settings-list{background:var(--white);border-radius:16px;margin-bottom:14px;padding:0 14px}.setting-row{cursor:pointer;align-items:center;gap:10px;min-height:60px;display:flex;position:relative}.setting-row+.setting-row{border-top:1px solid #e8ece5}.setting-row:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px;border-radius:8px}.setting-row input:focus-visible+.switch{outline:none}.setting-row>span:first-child{text-align:start;overflow-wrap:anywhere;flex:1;grid-template-columns:21px minmax(0,1fr);align-items:center;gap:4px 12px;padding-block:12px;font-size:.9375rem;font-weight:650;display:grid}.setting-row .icon{color:#7d8f79;flex-shrink:0;width:21px;height:21px}.setting-row input{opacity:0;cursor:pointer;width:42px;height:44px;margin:0;position:absolute;inset-inline-end:0}.switch{pointer-events:none;background:#d9dfd5;border-radius:20px;flex:0 0 42px;width:42px;height:25px;margin-inline-start:auto;padding:3px;transition:background-color .24s,box-shadow .24s;display:flex;box-shadow:inset 0 0 0 1px #52674e09}.switch:after{content:"";width:19px;height:19px;transition:transform .3s var(--motion-ease), box-shadow .24s ease;background:#fff;border-radius:50%;box-shadow:0 1px 3px #584a3820,inset 0 1px 1px #fff8}.setting-row input:checked+.switch{background:#6d8868}.setting-row input:checked+.switch:after{transform:translateX(calc(17px * var(--inline-direction)))}.setting-row:active:has(input:not(:disabled)) .switch:after{box-shadow:0 1px 4px #384b3940}.settings-menu{background:var(--white);border-radius:14px;margin:14px 0;overflow:hidden;box-shadow:0 1px #69513908}.menu-row{text-align:start;background:0 0;border:0;border-radius:0;align-items:center;gap:11px;width:100%;min-height:54px;margin:0;padding:14px 15px;font-size:.875rem;display:flex}.menu-row+.menu-row{border-top:1px solid #e8ece5}.menu-row:hover:not(:disabled){background:#f7f9f5}.menu-row .icon{color:#7d8f79;width:19px;height:19px}.menu-row .icon:last-child{width:16px;margin-inline-start:auto}.settings-footer{color:var(--secondary);margin:24px 0 0;font-size:.75rem;line-height:1.8}.settings-footer a{color:inherit;text-underline-offset:3px;padding:8px 0;display:inline-block}.level-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:24px 0 30px;display:grid}.level-tile{aspect-ratio:1;min-height:46px;color:var(--ink);background:#eaf0e6;border:0;border-radius:11px;place-items:center;scroll-margin-block:90px 120px;font-size:1.25rem;font-weight:700;display:grid;position:relative}.level-tile:disabled{color:#929c8e;background:#edf0ea;font-weight:500}.level-tile .icon{width:20px;height:20px}.level-tile .level-lock{width:11px;height:11px;position:absolute;bottom:4px;right:4px}.level-current{outline-offset:2px;color:#3e5942;background:#dce8d6;outline:2px solid #6b8b6d}.level-complete{color:#3f5133;background:#b4c699}.level-tile .level-check{width:15px;height:15px;position:absolute;bottom:3px;right:3px}.rule-selector{background:#e8ede3;border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px;display:grid}.rule-selector button{min-height:44px;color:var(--secondary);background:0 0;border:0;border-radius:9px;padding:6px 3px;font-size:.75rem}.rule-selector button:hover{background:#f2f5ee}.rule-selector button[aria-pressed=true]{background:var(--white);color:var(--accent-dark);font-weight:650;box-shadow:0 2px 5px #394c3e0d}.rule-picker-modes{isolation:isolate;position:relative}.rule-picker-modes:before{content:"";background:var(--white);width:calc(33.3333% - 4px);transform:translateX(calc(var(--inline-direction) * var(--rule-index) * (100% + 3px)));transition:transform .28s var(--motion-ease);border-radius:9px;position:absolute;inset-block:3px;inset-inline-start:3px;box-shadow:0 2px 5px #394c3e0d}.rule-picker-modes button{z-index:1;transition:color .16s,transform .12s ease-out;position:relative}.rule-picker-modes button:is([aria-pressed=true],:hover){box-shadow:none;background:0 0}.rule-example-board .preview-cell{transition:opacity .22s}.rule-example-board .cross-mark{animation:.15s ease-out mark-in}.rule-example{margin:20px 0 14px}.rule-example .rule-example-board{border-radius:12px;gap:2px;width:176px;margin:0 auto;padding:4px}.rule-example-board .preview-cell{border-radius:2px}.rule-example-outside{opacity:.28}.rule-example-board .cross-mark{color:var(--accent-dark);width:38%;height:38%}.rule-example-caption{color:var(--secondary);margin:10px 0 0;font-size:.75rem;line-height:1.6}.rule-description{min-height:82px}.rule-description h3{margin:0 0 8px;font-size:1.0625rem;font-weight:600;line-height:1.5}.rule-description p{color:var(--secondary);text-wrap:pretty;margin:0;font-size:.8125rem;line-height:1.8}.rules-controls{margin-top:4px}.rules-action{z-index:4;padding:10px 24px max(14px, env(safe-area-inset-bottom));background:var(--ground);margin:18px -24px -22px;position:sticky;bottom:0}.rules-done{margin-top:0}@media (height<=700px){.rule-example .rule-example-board{width:140px}.rule-example{margin-top:16px}.rule-description{min-height:70px}.rules-action{margin-top:14px}}.dialog-cat{width:92px;height:92px;margin:20px auto}.dialog-bulb{color:#d7a956;fill:#f6df98;stroke-width:1.4px;width:62px;height:70px;margin:20px auto}.button-count{color:#fff;background:#59745b;border-radius:50%;place-items:center;width:23px;height:23px;font-size:.75rem;display:grid}.result-fish{justify-content:center;gap:8px;margin:18px 0;display:flex}.celebration{justify-content:center;align-items:center;height:146px;margin:10px 0 6px;display:flex;position:relative}.result-friend{flex:none;width:94px;height:94px;position:relative}.friend-left{transform:rotate(-12deg)translate(10px,10px)}.friend-right{transform:rotate(12deg)translate(-10px,10px)}.friend-center{z-index:1;width:120px;height:120px;margin:0 -12px}.result-note{margin:2px 0 24px;font-size:1rem;font-weight:650;line-height:1.85}.result-note span{color:var(--secondary);font-size:.75rem;font-weight:400}.result-stats{background:#eee5d9;border-radius:16px;grid-template-columns:1fr 1fr;gap:1px;margin:0 0 24px;display:grid;overflow:hidden}.result-stats>div{background:#f4eee3;flex-direction:column;gap:5px;padding:14px;display:flex}.result-stats span{color:var(--secondary);font-size:.75rem}.result-stats strong{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:750}.result-next{text-align:start;justify-content:space-between;padding:12px 20px}.result-next small{color:#e2ecdf;margin-top:4px;font-size:.75rem;font-weight:400;display:block}.result-actions{z-index:4;padding:10px 24px max(14px, env(safe-area-inset-bottom));background:var(--ground);border-radius:0 0 28px 28px;margin:0 -24px -22px;position:sticky;bottom:0;box-shadow:0 -10px 22px #f8f6f0e8}.result-actions .plain-button{margin:6px auto 0}.celebration i{background:var(--confetti);opacity:0;width:6px;height:10px;animation:confetti-pop 1s var(--motion-ease) both;animation-delay:calc(var(--i) * 16ms);pointer-events:none;border-radius:2px;position:absolute;top:44%;left:50%}.tutorial-screen .game-status{justify-content:center;min-height:27px}.tutorial-screen .rule-chip{font-size:.75rem;display:block}.tutorial-title{letter-spacing:0;margin:4px 0;font-size:1.375rem;font-weight:650}.tutorial-skip{white-space:nowrap;min-width:64px;min-height:44px;color:var(--secondary);background:0 0;border:0;justify-self:end;padding:10px 0;font-size:.8125rem}.lesson-copy{text-align:center;max-width:330px;margin:25px auto 0;padding:0 4px}.lesson-copy h2{margin:0 0 8px;font-size:1.125rem;font-weight:600;line-height:1.5}.lesson-copy p{color:var(--secondary);text-wrap:pretty;min-height:47px;margin:0;font-size:.8125rem;line-height:1.8}.tutorial-finish{width:min(100%,280px);margin:22px auto 0}.tutorial-done .game-status{margin:12px 0 16px}.tutorial-screen .puzzle-area{margin-top:26px}.tutorial-done .lesson-copy{margin-top:20px}.tutorial-done .lesson-copy h2{color:var(--ink);font-size:1.25rem}.tutorial-done .lesson-copy p{min-height:0}@media (hover:none){.cell:hover{filter:none}}@media (width>=600px){.game-screen{padding-top:42px;padding-bottom:28px}}@media (width<=360px){.game-screen{width:calc(100% - 24px)}.game-status{gap:10px;margin-top:16px;margin-bottom:14px}.cat-progress{gap:3px}.collection-cat{border-radius:7px;flex-basis:22px;width:22px;height:24px}.rule-chip{font-size:.75rem}.board{border-width:5px;border-radius:15px;gap:2px}.game-tools{padding-top:22px}.progress-group{gap:4px}.progress-cat{width:22px;height:22px}.lives{gap:5px;padding:5px 9px}.rule-chip{gap:5px;font-size:.75rem}.rule-chip .icon{width:13px;height:13px}}@media (height<=700px){.game-screen{padding-top:max(16px, env(safe-area-inset-top));padding-bottom:max(22px, env(safe-area-inset-bottom))}.game-status{margin:12px 0}.progress-group{flex-direction:column;gap:4px}.progress-caption{font-size:.75rem}.cat-progress{gap:3px}.collection-cat{flex-basis:24px;width:24px;height:24px}.progress-cat{width:22px;height:22px}.lives{gap:5px;padding:4px 8px}.fish-icon{width:22px}.rule-chip{min-height:44px}.puzzle-area{width:100%;margin-top:24px}.game-feedback{margin-top:12px}.game-tools{padding-top:20px}.lesson-copy{margin-top:18px}}@media (height>=701px) and (height<=780px){.game-screen{padding-top:max(22px, env(safe-area-inset-top));padding-bottom:max(22px, env(safe-area-inset-bottom))}.game-status{margin-top:12px;margin-bottom:12px}.puzzle-area{margin-top:22px}.game-feedback{margin-top:12px}.gesture-help{margin-top:8px}.game-tools{padding-top:20px}.tool-button{gap:8px}}@media (height<=700px){.result-dialog .dialog-content{padding:0 20px 18px}.celebration{height:100px;margin-top:0}.result-friend{width:78px;height:78px}.friend-center{width:98px;height:98px}.result-note{margin-bottom:16px;font-size:.8125rem}.result-stats{margin-bottom:16px}.result-stats>div{padding:10px}.result-stats strong{font-size:1.1875rem}.result-dialog .dialog-copy{margin:12px 0 16px;font-size:.8125rem}.result-actions{padding:8px 20px max(12px, env(safe-area-inset-bottom));margin:0 -20px -18px}}@media (height<=520px) and (width>=600px){.game-screen{min-height:650px}.puzzle-area{width:100%}}@keyframes kitten-land{0%{opacity:.2;animation-timing-function:cubic-bezier(.16,.7,.25,1);transform:translateY(8%)scale(.45)}34%{opacity:1;animation-timing-function:ease-out;transform:translateY(-6%)scale(1.18,1.15)rotate(-2deg)}66%{transform:translateY(2%)scale(.98,1.015)rotate(1deg)}to{opacity:1;transform:none}}@keyframes kitten-board-land{0%{opacity:0;animation-timing-function:cubic-bezier(.16,.7,.25,1);transform:translateY(8%)scale(.32)}14%{opacity:1;animation-timing-function:ease-out;transform:translateY(-3%)scale(1.34)rotate(-2deg)}28%,72%{opacity:1;animation-timing-function:cubic-bezier(.4,0,.2,1);transform:translateY(-1%)scale(1.29)}to{opacity:1;transform:none}}@keyframes kitten-shadow{0%{opacity:.2;transform:scale(.75)}55%{opacity:1;transform:scale(1.02)}to{opacity:1;transform:none}}@keyframes mark-in{0%{opacity:.4;transform:scale(.65)}to{opacity:1;transform:scale(1)}}@keyframes mark-stroke{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes error-mark{0%,21%{color:#fffefa;opacity:1}28%,77.9%{color:#fffefa;opacity:0}78%,to{color:#ff692d;opacity:1}}@keyframes error-stroke{0%{stroke-dashoffset:1px}13%,25%{stroke-dashoffset:0}28%,78%{stroke-dashoffset:1px}90%,to{stroke-dashoffset:0}}@keyframes error-stroke-second{0%,5%{stroke-dashoffset:1px}18%,25%{stroke-dashoffset:0}28%,84%{stroke-dashoffset:1px}96%,to{stroke-dashoffset:0}}@keyframes error-flash{0%,69%{opacity:1;transform:scale(1)}78%{opacity:1;transform:scale(.76)}80%,to{opacity:0;transform:scale(0)}}@keyframes error-heart{0%,27%{opacity:0;transform:scale(.45)rotate(-12deg)}43%,68%{opacity:1;transform:scale(1)}78%{opacity:1;transform:scale(.76)}80%,to{opacity:0;transform:scale(0)}}@keyframes heart-left{0%,50%{transform:none}62%{transform:translate(-1.8px,.6px)rotate(-8deg)}72%,to{transform:translate(-2.4px,1.2px)rotate(-11deg)}}@keyframes heart-right{0%,50%{transform:none}62%{transform:translate(1.8px,.6px)rotate(8deg)}72%,to{transform:translate(2.4px,1.2px)rotate(11deg)}}@keyframes heart-shard{0%,76%{transform:rotate(calc(var(--piece) * 60deg)) translateY(2px) scale(.5);opacity:0}82%{opacity:.7}to{transform:rotate(calc(var(--piece) * 60deg)) translateY(18px) scale(.2);opacity:0}}@keyframes content-in{0%{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes screen-arrive{0%{opacity:.8;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes arrival-check{0%{stroke-dashoffset:32px}to{stroke-dashoffset:0}}.screen-enter{animation:screen-arrive .26s var(--motion-ease)}.cell-actions{animation:content-in .18s var(--motion-ease)}.game-feedback{transition:background-color .16s,color .16s}.tutorial-screen .rule-chip{transition:background-color .2s,border-color .2s,color .2s}.lesson-command,.tutorial-finish,.inline-next{animation:content-in .2s var(--motion-ease)}@keyframes tap-hand{0%,70%,to{transform:rotate(-18deg)translate(3px,4px)}18%,40%{transform:rotate(-18deg)translate(0)scale(.93)}30%,52%{transform:rotate(-18deg)translate(2px,3px)}}@keyframes cell-shake{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}@keyframes confetti-pop{0%{transform:rotate(calc(var(--i) * 25.7deg)) translateY(-24px) scale(.4);opacity:0}22%,65%{opacity:1}to{transform:rotate(calc(var(--i) * 25.7deg)) translateY(-108px) rotate(85deg);opacity:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}button:active:not(:disabled),.tool-button:is(:hover,:active):not(:disabled) .tool-art{transform:none}.celebration i,.cat-glints,.cell-reward{display:none}}@media (prefers-contrast:more){:root{--ink:#29372d;--secondary:#3c4b3e;--focus:#244d36}.cross-mark,.board .cell>.cross-mark{color:#30412f;opacity:1}.region-motif{opacity:.7}.rule-ribbon{outline:1px solid var(--secondary)}}.blocked-dot{opacity:.55;pointer-events:none;background:#5d6c60;border-radius:50%;width:3px;height:3px}.cell-selected{outline-offset:-3px;z-index:1;outline:2px solid #466d59}.cell-hinted{box-shadow:inset 0 0 0 3px #466d59}.cell-hinted:after{content:"";pointer-events:none;border:1px dashed #466d59;border-radius:3px;position:absolute;inset:5px}.cell .hint-paw{color:#3e5745;pointer-events:none;width:30%;height:30%;position:absolute}.cell-restored:before{opacity:1;background:#ffffff26;animation:.9s ease-out both undo-cell;box-shadow:inset 0 0 0 2px #466d59}.cell-adjusted:before{opacity:1;box-shadow:inset 0 0 0 2px var(--focus);background:#ffffff26}.game-feedback:has(.feedback-undo){padding-block:2px}.feedback-undo{min-width:44px;min-height:44px;color:var(--accent-dark);text-underline-offset:3px;background:0 0;border:0;border-radius:8px;flex:none;padding:8px 4px;font-size:.75rem;text-decoration:underline}.feedback-undo:hover{background:#dfe7d9}@keyframes undo-cell{0%,55%{opacity:1}to{opacity:0}}.cell-actions{background:0 0;border-radius:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;padding:0;display:grid}.selected-cell-summary{font-variant-numeric:tabular-nums;flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:4px 12px;margin:0;font-size:.75rem;line-height:1.6;display:flex}.selected-cell-summary span:last-child{color:var(--secondary)}.cell-actions button{background:#edf1e8;border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:8px;font-size:.8125rem;display:flex}.cell-actions button .icon,.cell-actions button .cross-mark{width:18px;height:18px;color:inherit}.cell-actions .cell-action-cat{background:var(--accent);color:#fff}.cell-actions button:hover:not(:disabled){background:#e2e9dc}.cell-actions .cell-action-cat:hover:not(:disabled){background:var(--accent-dark)}.cell-actions button:disabled{opacity:.45}.game-screen-point:not(.tutorial-screen) .cell-actions{grid-template-columns:minmax(0,1.15fr) repeat(2,minmax(0,1fr)) 44px}.game-screen-point:not(.tutorial-screen) .selected-cell-summary{flex-direction:column;grid-column:auto;justify-content:center;align-items:flex-start;gap:0}.cell-actions .interaction-return{color:var(--accent-dark);background:0 0;padding:4px;font-size:.75rem}@media (width<=360px){.game-screen-point:not(.tutorial-screen) .cell-actions button .icon,.game-screen-point:not(.tutorial-screen) .cell-actions button .cross-mark{display:none}}.touch-copy{display:none}.resource-free{background:#596d51;border-radius:9px;width:34px;font-size:.625rem;right:-7px}.hint-observe{margin:0;font-size:1.0625rem;font-weight:600}.hint-explanation{text-align:start;margin:14px 0 20px;scroll-margin-block:8px}.help-cost{color:var(--secondary);margin:0 0 12px;font-size:.75rem;line-height:1.65}.puzzle-preview{grid-template-columns:repeat(var(--size), minmax(0, 1fr));grid-template-rows:repeat(var(--size), minmax(0, 1fr));aspect-ratio:1;background:#fff;border-radius:9px;flex:none;gap:1px;width:88px;padding:3px;display:grid;overflow:hidden}.preview-cell{border-radius:1px;place-items:center;min-width:0;min-height:0;display:grid;position:relative}.preview-patterns .region-motif{opacity:.72;width:50%;height:50%;color:var(--ink)}.preview-patterns .preview-occupied>.region-motif{opacity:.8;z-index:1;width:34%;height:34%;top:4%;left:4%}.preview-patterns.hint-preview{width:min(216px,100%)}.preview-cell .cross-mark{width:40%;height:40%}.preview-cell .preview-suggestion-cross{width:48%;height:48%;color:var(--accent-dark)}.preview-suggestion-cross{stroke-dasharray:3 2}.preview-area{box-shadow:inset 0 0 0 1.5px #466d59}.preview-outside{opacity:.25}.hint-preview{border-radius:12px;gap:2px;width:min(164px,58vw);margin:0 auto 20px;padding:4px}.hint-preview .preview-cell{border-radius:2px}.hint-context{margin-bottom:8px}.preview-key{color:var(--secondary);justify-content:center;align-items:center;gap:6px;margin:0 0 18px;font-size:.75rem;line-height:1.6;display:flex}.preview-key .cross-mark{width:16px;height:16px;color:var(--accent-dark)}.loss-summary{text-align:start;justify-content:center;align-items:center;gap:12px;margin:0 0 16px;display:flex}.loss-cat{flex:none;width:72px;height:72px}.loss-summary p{color:var(--secondary);font-size:.875rem;line-height:1.8}.loss-preview{width:min(144px,50vw);margin-bottom:14px}.loss-preview .preview-area{box-shadow:inset 0 0 0 2px #99503d}.preview-cell .preview-error-cross{color:#99503d;width:68%;height:68%}.loss-reason{color:#9b4335;margin:0 0 22px;font-size:.875rem;line-height:1.8}.loss-reason small{color:var(--secondary);margin-top:4px;font-size:.75rem;display:block}@media (height<=700px){.loss-preview.preview-patterns{width:min(176px,100%)}.loss-summary{margin-bottom:10px}.loss-reason{margin-bottom:12px}.loss-dialog .loss-preview{width:min(132px,50vw);margin-bottom:10px}.loss-dialog .loss-reason{margin-bottom:8px;font-size:.8125rem;line-height:1.6}.loss-dialog .loss-reason small{font-size:.6875rem;line-height:1.5}}.level-overview{align-items:center;gap:14px;margin-bottom:12px;display:flex}.level-overview>div:last-child{min-width:0}.level-overview-patterns{flex-direction:column;align-items:stretch;gap:12px}.level-overview-patterns .puzzle-preview{align-self:center;width:min(216px,100%)}.level-overview p:last-child{margin-bottom:0}.settings-help{text-align:start;border-bottom:1px solid #e0e5dc}.settings-help summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:4px 10px;min-height:52px;padding-block:12px;padding-inline:0 20px;font-size:.8125rem;line-height:1.6;list-style:none;display:flex;position:relative}.settings-help summary::-webkit-details-marker{display:none}.settings-help summary:after{content:"";inset-inline-end:2px;border:solid var(--secondary);border-width:0 1.5px 1.5px 0;width:6px;height:6px;position:absolute;top:22px;transform:rotate(45deg)}.settings-help[open] summary:after{top:25px;transform:rotate(225deg)}.settings-help summary span{color:var(--secondary);font-variant-numeric:tabular-nums;font-size:.75rem}.settings-help summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}.settings-help p{color:var(--secondary);margin:0 0 12px;font-size:.75rem;line-height:1.8}.disclosure-trigger{text-align:start;background:0 0;border:0;border-radius:6px;flex-wrap:wrap;align-items:center;gap:4px 10px;width:100%;min-height:52px;padding-block:14px;padding-inline:0 24px;font-size:.8125rem;line-height:1.6;display:flex;position:relative}.disclosure-trigger:after{content:"";inset-inline-end:3px;border:solid var(--secondary);width:7px;height:7px;transition:transform .26s var(--motion-ease);border-width:0 1.5px 1.5px 0;position:absolute;top:calc(50% - 4px);transform:rotate(45deg)}.settings-disclosure[data-expanded=true] .disclosure-trigger:after{transform:rotate(225deg)}.disclosure-title{overflow-wrap:anywhere}.disclosure-note{color:var(--secondary);font-variant-numeric:tabular-nums;font-size:.75rem}.disclosure-region{opacity:0;transition:grid-template-rows .28s var(--motion-ease), opacity .18s ease;grid-template-rows:0fr;display:grid}.settings-disclosure[data-expanded=true] .disclosure-region,.disclosure-region[data-expanded=true]{opacity:1;grid-template-rows:1fr}.disclosure-clip{min-height:0;margin-inline:-6px;padding-inline:6px;overflow:hidden}.disclosure-copy{padding-top:2px;display:flow-root}.result-reward{color:var(--accent-dark);justify-content:center;align-items:center;gap:6px;margin:12px 0 18px;font-size:.75rem;line-height:1.6;display:flex}.result-reward .icon{width:16px;height:16px}.help-policy{color:var(--secondary);margin:14px 0;font-size:.75rem;line-height:1.8}.primary-button small{font-size:.75rem;font-weight:400}.level-picker-modes{isolation:isolate;grid-template-columns:repeat(2,minmax(0,1fr));position:relative}.level-picker-modes:before{content:"";background:var(--white);width:calc(50% - 4.5px);transition:transform .28s var(--motion-ease);border-radius:9px;position:absolute;inset-block:3px;inset-inline-start:3px;box-shadow:0 2px 5px #394c3e0d}.level-picker-modes[data-daily=true]:before{transform:translateX(calc(var(--inline-direction) * (100% + 3px)))}.level-picker-modes button{z-index:1;color:var(--ink);font-size:.8125rem;transition:color .18s;position:relative}.level-picker-modes button[aria-pressed=true]{box-shadow:none;background:0 0}.level-picker-modes button:hover{background:0 0}.level-picker-modes button span{font-variant-numeric:tabular-nums;margin-inline-start:5px;font-size:.6875rem;font-weight:400}.level-grid{margin:16px 0 20px}.level-grid-region{opacity:1;transition:grid-template-rows .28s var(--motion-ease), opacity .18s ease;grid-template-rows:1fr;display:grid}.level-grid-region[data-expanded=false]{opacity:0;grid-template-rows:0fr}.level-grid-clip{min-height:0;margin-inline:-6px;padding-inline:6px;overflow:hidden}.levels-dialog .level-tile{transition:background-color .18s ease, color .18s ease, outline-color .18s ease, transform .18s var(--motion-ease)}.levels-dialog .level-tile:active:not(:disabled){transform:scale(.96)}@media (width<=360px){.levels-dialog .dialog-content{padding-inline:16px}}.level-in-progress{background:#3e5745;border-radius:50%;width:7px;height:7px;position:absolute;bottom:7px;right:7px}.level-detail{text-align:start;margin:20px 0;font-size:.8125rem;line-height:1.6}.level-detail strong{font-size:.875rem;font-weight:600}.level-detail p{color:var(--secondary);margin:6px 0}.level-detail small{color:var(--secondary);font-size:.75rem}.levels-dialog .dialog-content{padding-bottom:0}.level-notes{margin:-6px 0 14px}.level-picker-action{padding:12px 0 max(20px, env(safe-area-inset-bottom));background:var(--ground);border-top:1px solid #e0e5dc;position:sticky;bottom:0;box-shadow:0 -8px 18px #f8f6f0e8}.level-start{text-align:start;justify-content:space-between}.level-start small{color:#fff;margin-top:4px;line-height:1.6;display:block}.restart-overview{text-align:start;align-items:center;gap:14px;margin:8px 0 18px;display:flex}.restart-overview>div:last-child{min-width:0}.restart-overview .puzzle-preview{width:112px}.restart-overview strong{font-size:.875rem;font-weight:600;line-height:1.6}.restart-overview p{color:var(--secondary);margin:5px 0 0;font-size:.75rem;line-height:1.6}.restart-overview-patterns{text-align:center;flex-direction:column;gap:10px}.restart-overview-patterns .puzzle-preview{width:min(176px,100%)}.restart-overview-patterns>div:last-child{flex-wrap:wrap;justify-content:center;gap:4px 12px;display:flex}.restart-overview-patterns strong{flex-basis:100%}.restart-overview-patterns p{margin:0}.restart-copy{text-align:start;margin:0 0 20px}.restart-copy small{margin-top:8px;display:block}.restart-dialog .dialog-content{padding-bottom:0}.restart-actions{padding:8px 0 max(14px, env(safe-area-inset-bottom));background:var(--ground);position:sticky;bottom:0}@media (height<=700px){.restart-overview{margin-top:0;margin-bottom:14px}.restart-overview-patterns .puzzle-preview{width:min(156px,100%)}}.daily-today{margin:12px 0 0}.daily-resume small{color:var(--secondary);margin-top:4px;font-size:.75rem;font-weight:400;line-height:1.6;display:block}.update-notice{text-align:start;background:#f4e3db;border-radius:12px;margin:12px 0;padding:12px}.update-notice p{color:#9b4335;margin:0;font-size:.8125rem;line-height:1.7}.update-notice .plain-button{margin:4px 0 0;padding-inline:0}.menu-row:disabled{opacity:.55}.tutorial-practice .lesson-copy{margin-top:16px}.tutorial-practice .lesson-copy p{min-height:0}.tutorial-practice.game-screen-point .puzzle-area{max-width:330px;margin-top:18px}.result-achievement{color:var(--ink);font-size:.8125rem;line-height:1.7}.save-conflict{background:#f4e3db;border-radius:14px;margin-bottom:18px;padding:18px}.save-conflict strong{color:#9b4335;font-size:.9375rem}.save-conflict p{font-size:.8125rem;line-height:1.7}.save-conflict .plain-button{margin-top:4px}.lesson-action{margin-top:8px}.lesson-command{width:min(100%,300px);min-height:48px;color:var(--accent-dark);background:#e5eddf;border:0;border-radius:14px;align-items:center;gap:9px;margin:12px auto 0;padding:11px 15px;font-size:.875rem;font-weight:600;display:flex}.lesson-command:hover{background:#dce7d5}.lesson-command .icon{width:19px;height:19px}.lesson-command>.icon:last-of-type{margin-inline-start:auto}.lesson-command small{font-variant-numeric:tabular-nums;margin-inline-start:auto;font-size:.75rem;font-weight:500}.tutorial-controls{justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:14px;display:flex}.tutorial-controls .gesture-help{text-align:start;margin:0}.tutorial-screen .lesson-copy p{font-size:.875rem;line-height:1.7}.selected-cell-summary:focus{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}.cat-personality-1 .cat-puppet{transform-origin:43% 89%}.cat-personality-2 .cat-puppet{transform-origin:57% 89%}@media (pointer:coarse){.pointer-copy{display:none}.touch-copy{display:inline}}@media (width<=360px){.game-screen{width:calc(100% - 16px)}.game-status{gap:10px}.board{border-width:4px;gap:2px}.rule-chip{gap:4px}}@media (prefers-contrast:more){.blocked-dot{background:#30412f;width:5px;height:5px}.cell-hinted{box-shadow:inset 0 0 0 3px #244d36}.rule-error,.feedback-error{color:#7d2e24}}@media (forced-colors:active){.cell{border:1px solid canvastext}.cell-hinted,.cell-selected{outline:3px solid highlight}.blocked-dot{background:canvastext}.resource-count,.collection-cat{border:1px solid canvastext}.collection-found{outline:2px solid highlight}}@media (prefers-contrast:more){.preview-area{box-shadow:inset 0 0 0 2px #244d36}.preview-outside{opacity:.4}}@media (forced-colors:active){.preview-cell{border:1px solid canvastext}.preview-area{outline-offset:-2px;outline:2px solid highlight}.preview-outside{opacity:.4}}.hint-swatch{vertical-align:-.12em;border-radius:4px;width:17px;height:17px;margin-inline-end:8px;display:inline-block;position:relative;box-shadow:inset 0 0 0 1px #45423d26}.hint-swatch .region-motif{opacity:1;width:13px;height:13px;color:var(--ink);inset:2px}.hint-swatch-labelled{text-align:center;color:#344c3c;width:20px;height:20px;font-size:.8125rem;font-weight:700;line-height:20px}.hint-map{grid-template-rows:18px auto;grid-template-columns:18px minmax(0,1fr);gap:4px;width:min(234px,100%);margin:0 auto 10px;display:grid}.hint-columns,.hint-rows{color:var(--secondary);font-variant-numeric:tabular-nums;align-items:center;font-size:.6875rem;display:grid}.hint-columns{grid-column:2;grid-template-columns:repeat(var(--size), minmax(0, 1fr));gap:2px;padding:0 4px}.hint-rows{grid-area:2/1;grid-template-rows:repeat(var(--size), minmax(0, 1fr));gap:2px;padding:4px 0}.hint-axis-current{background:var(--accent);color:#fff;border-radius:4px;font-weight:700}.hint-map .hint-preview{grid-area:2/2;width:100%;margin:0}.preview-area-label{z-index:2;color:#fff;background:var(--accent-dark);border-radius:3px;place-items:center;min-width:14px;min-height:14px;padding:0 2px;font-size:.625rem;font-weight:700;line-height:1;display:grid;position:absolute;top:1px;left:1px}.help-accounting{color:var(--secondary);margin:14px 0 0;font-size:.75rem;line-height:1.6}.result-help-breakdown{color:var(--secondary);flex-wrap:wrap;justify-content:center;gap:2px 12px;margin:-8px 0 16px;font-size:.75rem;line-height:1.7;display:flex}.level-tile .level-in-progress{top:7px;bottom:auto}@media (height<=700px){.hint-map:not(.hint-map-patterns){width:min(198px,100%)}}@media (height<=850px){.game-screen-point .cell-actions{grid-template-columns:minmax(0,1.15fr) repeat(2,minmax(0,1fr));gap:6px;margin-top:8px;padding:0}.game-screen-point .selected-cell-summary{flex-direction:column;grid-column:auto;justify-content:center;align-items:flex-start;gap:0;line-height:1.5}.game-screen-point .cell-actions button{gap:4px;padding:6px 4px;font-size:.75rem}.game-screen-point .cell-actions button .icon,.game-screen-point .cell-actions button .cross-mark{width:16px;height:16px}.game-screen-point .game-feedback{min-height:44px;margin-top:10px;padding:4px 10px}.game-screen-point .game-feedback.feedback-quiet{min-height:36px;margin-top:6px;padding:4px 2px}.game-screen-point .game-tools{padding-top:8px}.game-screen-point .tool-art{border-radius:16px;flex-basis:48px;width:48px;height:48px}.game-screen-point .tool-hint .icon{width:25px;height:28px}.game-screen-point .tool-button{gap:6px}}.dialog-copy:focus{outline:none}@media (width>=600px) and (height<=780px){.game-screen{width:min(100% - 32px,374px);padding:max(16px, env(safe-area-inset-top)) 0 max(20px, env(safe-area-inset-bottom))}.game-status{margin:10px 0 4px}.puzzle-area{margin-top:8px}.game-feedback{margin-top:12px}.game-tools{padding-top:12px}.tool-button{gap:6px}}.chapter-progress{text-align:start;margin:16px 0}.chapter-progress p{color:var(--secondary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;margin:0 0 8px;font-size:.75rem;line-height:1.6;display:flex}.chapter-progress p>span:last-child{font-variant-numeric:tabular-nums;align-items:center;gap:4px;display:inline-flex}.chapter-progress .icon{width:14px;height:14px}.chapter-complete p>span:last-child{color:var(--accent-dark);font-weight:600}.chapter-steps{gap:5px;display:flex}.chapter-steps>span{background:#e5dfd4;border-radius:3px;flex:1;height:4px}.chapter-steps>.chapter-step-done{background:var(--accent)}.result-dialog .chapter-progress{margin:14px 0 18px}@media (forced-colors:active){.chapter-steps>span{background:canvas;border:1px solid canvastext}.chapter-steps>.chapter-step-done{background:highlight}}@media (width>=600px) and (height>=640px) and (height<=780px){:root[data-text-scale="100"] .game-screen:not(.tutorial-screen){padding-top:12px;padding-bottom:14px}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .game-status{margin:8px 0 4px}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .progress-group{flex-direction:row;align-items:center;gap:7px}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .progress-caption{white-space:nowrap}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .progress-caption-word,:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .lives-group:not(.lives-last) .lives-caption{display:none}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .puzzle-area{margin-top:4px}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .cell-actions{margin-top:6px}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .game-feedback.feedback-quiet{min-height:32px;margin-top:4px}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .interaction-help{flex-wrap:nowrap}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .interaction-help .gesture-help{flex:1}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .game-tools{padding-top:8px}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .tool-button{text-align:start;flex-direction:row;gap:4px;padding:4px 0}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .tool-art{border-radius:14px;flex-basis:44px;width:44px;height:44px}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .tool-label{flex:1}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .resource-count{right:0}:root[data-text-scale="100"] .game-screen:not(.tutorial-screen) .resource-free{width:max-content}}.trial-entry{width:100%;min-height:44px;color:var(--accent-dark);text-align:start;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #dce2d8;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px;padding:10px 0;font-size:.875rem;font-weight:600;display:flex}.trial-entry .icon{width:18px;height:18px}.trial-entry:hover{color:var(--ink)}.trial-progress{color:var(--secondary);font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin-bottom:14px;font-size:.75rem;line-height:1.6;display:flex}.preview-trial-cat:after{content:"";pointer-events:none;border:1px dashed #344c3c;border-radius:5px;position:absolute;inset:2px}.preview-trial-cat .cat-face{opacity:.8}.trial-progress:focus{outline:none}.trial-key{min-height:1.6em;margin-bottom:12px}.trial-copy{text-align:start;min-height:116px}.trial-copy h3{color:var(--ink);margin:0 0 8px;font-size:1rem;font-weight:650;line-height:1.5}.trial-copy p{color:var(--secondary);margin:0;font-size:.875rem;line-height:1.8}.trial-copy .trial-branch{color:var(--accent-dark);overflow-wrap:anywhere;margin:0 0 6px;font-size:.75rem;font-weight:600;line-height:1.6}.trial-controls{z-index:3;padding:12px 0 max(14px, env(safe-area-inset-bottom));background:var(--ground);position:sticky;bottom:0}.trial-controls .plain-button{margin-top:2px}.trial-navigation{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:10px;display:grid}.trial-navigation button{min-height:48px;margin:0}.trial-navigation .primary-button{padding:10px 12px;font-size:.875rem}.trial-previous{color:var(--ink);cursor:pointer;background:0 0;border:1px solid #d4dccf;border-radius:14px;font-size:.875rem;font-weight:600}.trial-previous:hover:not(:disabled){background:#e9ede5}.trial-previous:disabled{opacity:.45;cursor:default}@media (height<=700px){.trial-copy{min-height:0}.trial-progress{margin-bottom:8px}.trial-key{min-height:0}}@media (forced-colors:active){.preview-trial-cat:after{border-color:canvastext}}.collection-cat>.region-motif{opacity:.85;width:14px;height:14px;position:static}.collection-found>.region-motif{opacity:1;z-index:2;background:#fffdf8;border-radius:4px;width:12px;height:12px;padding:1px;position:absolute;bottom:-3px;right:-3px}.collection-patterns{gap:7px;padding-bottom:3px}.collection-patterns .collection-cat{border:1px solid #948a78}.setting-row>span:first-child{flex-wrap:wrap;min-width:0}.setting-row small{color:var(--secondary);grid-column:2;font-size:.75rem;font-weight:400;display:block}.setting-row input:disabled{cursor:default}.setting-row:has(input:disabled){cursor:default}.setting-row input:disabled+.switch{opacity:.45}.journal-cat{width:96px;height:96px;margin:0 auto 8px}.journal-greeting{text-align:center;font-size:1rem;line-height:1.7}.journal-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:24px 0 16px;display:grid}.journal-week>div{color:var(--secondary);justify-items:center;gap:8px;font-size:.75rem;display:grid}.journal-day{aspect-ratio:1;font-variant-numeric:tabular-nums;background:#f0ece3;border-radius:12px;place-items:center;width:100%;max-width:38px;display:grid}.journal-checked{color:var(--accent-dark);background:#dce9d7}.journal-day .icon{width:18px;height:18px}.journal-week [aria-current] .journal-day{outline:2px solid var(--accent);outline-offset:2px}.journal-stats{text-align:center;font-size:.875rem;line-height:1.6}.journal-stats p{margin:5px 0}.journal-actions{z-index:4;padding:10px 24px max(14px, env(safe-area-inset-bottom));background:var(--ground);margin:18px -24px -22px;position:sticky;bottom:0}.journal-actions .plain-button{margin-top:8px}.file-choice{text-align:start;margin:18px 0;display:block}.file-choice-label{margin-bottom:8px;font-size:.875rem;font-weight:650;display:block}.file-choice-button{width:100%;min-height:48px;color:var(--accent-dark);font:inherit;text-align:start;background:#e5eddf;border:1px solid #ccd8c9;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;font-size:.875rem;font-weight:600;display:flex}.file-choice-button:hover:not(:disabled){background:#dce9d7}.file-choice-button:disabled{opacity:.55}.file-choice-button .icon{flex:none;width:17px;height:17px}.file-choice-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.visually-hidden-file-input{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.backup-preview{border-top:1px solid #dce2d8;margin-top:24px;padding-top:12px}.backup-preview h3{font-size:1rem}.backup-preview p,.backup-message{font-size:.875rem;line-height:1.7}.backup-preview dl>div{justify-content:space-between;gap:12px;margin:8px 0;font-size:.875rem;display:flex}.backup-preview dd{margin:0}.backup-message{color:#913c2c}.backup-previous{width:100%;min-height:46px;color:var(--accent-dark);font:inherit;text-align:start;background:0 0;border:1px solid #d2dbcf;border-radius:13px;align-items:center;gap:9px;margin:16px 0 0;padding:10px 13px;font-size:.8125rem;display:flex}.backup-previous:hover{background:#f1f5ee}.backup-previous .icon{flex:none;width:17px;height:17px}.product-info>h3{text-align:center;font-size:1.0625rem}.product-info textarea{resize:vertical;width:100%;color:var(--ink);font:inherit;background:#fffdf9;border:1px solid #b3bcad;border-radius:10px;padding:12px;font-size:.8125rem;line-height:1.7}.practice-intro{color:var(--secondary);margin:0;font-size:.875rem;line-height:1.8}:where(a,input,textarea,summary,select):focus-visible{outline:2px solid var(--focus);outline-offset:3px}@media (prefers-reduced-motion:reduce){.cat-angry .cat-puppet{animation:none}}@media (forced-colors:active){.collection-found>.region-motif{color:canvastext;background:canvas}.journal-checked{outline:2px solid highlight}}@media (width<=480px){.level-overview-patterns .puzzle-preview{width:min(176px,100%)}}@media (width<=360px){.level-detail-daily .level-overview-patterns .puzzle-preview{width:min(136px,100%)}.level-detail-daily>p{margin-top:6px;font-size:.6875rem;line-height:1.45}}.text-size-setting{text-align:start;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin:0 0 14px;font-size:.875rem;display:flex}.text-size-label{flex:1 1 min-content;overflow-wrap:anywhere}.text-size-trigger{background:#fffdf9;border:1px solid #b3bcad;border-radius:12px;flex:none;justify-content:space-between;align-items:center;gap:18px;min-width:108px;max-width:100%;min-height:46px;padding:10px 13px;font-weight:600;transition:background-color .16s,border-color .16s,box-shadow .18s;display:flex;box-shadow:0 2px 4px #69513905}.text-size-value{white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;line-height:1.4}.text-size-trigger .icon{width:15px;height:15px;color:var(--secondary);transition:transform .24s var(--motion-ease);flex:0 0 15px}.text-size-trigger[aria-expanded=true]{background:#f1f5ec;border-color:#6d8868;box-shadow:0 0 0 3px #6d886813}.text-size-trigger[aria-expanded=true] .icon{transform:rotate(180deg)}.text-size-menu{z-index:10;color:var(--ink);overscroll-behavior:contain;opacity:0;transform-origin:100% 0;transition:opacity .15s ease, transform .22s var(--motion-ease), display .22s allow-discrete, overlay .22s allow-discrete;background:#fffdf9;border:1px solid #dce2d6;border-radius:16px;margin:0;padding:5px;position:fixed;inset:auto;overflow:auto;transform:translateY(-4px)scale(.98);box-shadow:0 12px 32px #49382226,0 2px 5px #4938220c}.text-size-menu:popover-open{opacity:1;transform:none}.text-size-menu:not([popover]){position:absolute}.text-size-menu:not([popover]):not([hidden]){opacity:1;transform:none}.text-size-menu[data-side=above]{transform-origin:100% 100%}.text-size-menu [role=option]{font-variant-numeric:tabular-nums;cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-height:46px;padding:10px 12px;font-size:.875rem;line-height:1.4;transition:background-color .14s,color .14s;display:flex}.text-size-menu [role=option][aria-selected=true]{color:var(--accent-dark);font-weight:700}.text-size-menu [role=option][data-active=true]{background:#eaf0e3}.text-size-menu [role=option] .icon{opacity:0;flex:0 0 18px;width:18px;height:18px}.text-size-menu [role=option][aria-selected=true] .icon{opacity:1}@starting-style{.text-size-menu:popover-open{opacity:0;transform:translateY(-4px)scale(.98)}}:is(:lang(en),:lang(es),:lang(fr),:lang(de),:lang(ru),:lang(it),:lang(pt),:lang(ko),:lang(hi),:lang(fil),:lang(ms),:lang(vi),:lang(th),:lang(ar)) .interaction-help{flex-wrap:wrap;justify-content:center}:is(:lang(en),:lang(es),:lang(fr),:lang(de),:lang(ru),:lang(it),:lang(pt),:lang(ko),:lang(hi),:lang(fil),:lang(ms),:lang(vi),:lang(th),:lang(ar)) .interaction-help .gesture-help{flex:100%}:is(:lang(en),:lang(es),:lang(fr),:lang(de),:lang(ru),:lang(it),:lang(pt),:lang(ko),:lang(hi),:lang(fil),:lang(ms),:lang(vi),:lang(th),:lang(ar)) .rule-chip{gap:4px;font-size:.75rem}.selected-cell-summary{overflow-wrap:anywhere}.language-entry{text-align:start;background:#f4f5ec;border:1px solid #c2c9b9;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;width:100%;min-height:64px;margin-bottom:20px;padding:12px 14px;display:flex}.language-entry>span{overflow-wrap:anywhere;min-width:0}.language-entry strong{font-size:.9375rem;font-weight:600;line-height:1.5;display:block}.language-entry small{color:var(--muted);margin-top:3px;font-size:.8125rem;line-height:1.5;display:block}.language-entry>.icon{width:18px;height:18px;transform:rotate(-90deg)}.language-choices{border:0;gap:6px;min-width:0;margin:14px 0 0;padding:0;display:grid}.language-choice{text-align:start;cursor:pointer;background:#f6f3ed;border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;min-height:48px;padding:11px 12px;scroll-margin-block:6px;transition:background-color .18s,border-color .18s;display:flex}.journal-day{transition:background-color .22s,color .22s}.journal-week [aria-current=date] .journal-checked .icon{stroke-dasharray:32;animation:arrival-check .32s var(--motion-ease)}.journal-check-region .primary-button{margin-bottom:10px}.backup-message{animation:content-in .18s var(--motion-ease)}.language-choice input{width:20px;height:20px;accent-color:var(--accent-dark);flex:0 0 20px;margin:0}.language-choice>:is(span,bdi){overflow-wrap:anywhere;min-width:0;font-size:.9375rem;line-height:1.5}.language-choice strong{font-weight:600}.language-choice small{color:var(--muted);margin-top:3px;font-size:.8125rem;line-height:1.5;display:block}.language-selected{background:#edf2e5;border-color:#9cad95}.language-choice:focus-within{outline:2px solid var(--focus);outline-offset:2px}.language-choices:disabled .language-choice{cursor:default;opacity:.65}.language-actions{padding-top:18px}.language-actions .primary-button{width:100%;margin-top:10px}.menu-row,.primary-button,.game-feedback,.help-policy,.dialog-copy{overflow-wrap:anywhere}:root:not([data-text-scale="100"])[data-text-scale] .game-status{flex-wrap:wrap}:root:not([data-text-scale="100"])[data-text-scale] .rule-chip{flex-direction:column}:root:not([data-text-scale="100"])[data-text-scale] .game-screen-point:not(.tutorial-screen) .cell-actions{grid-template-columns:repeat(2,minmax(0,1fr))}:root:not([data-text-scale="100"])[data-text-scale] .game-screen-point .selected-cell-summary,:root:not([data-text-scale="100"])[data-text-scale] .cell-actions .interaction-return{grid-column:1/-1}:root:not([data-text-scale="100"])[data-text-scale] .resource-free{width:auto;min-width:34px}:root:not([data-text-scale="100"])[data-text-scale] .level-grid{grid-template-columns:repeat(4,minmax(0,1fr))}:root:not([data-text-scale="100"])[data-text-scale] .text-size-label{flex-basis:100%}:root:not([data-text-scale="100"])[data-text-scale] .text-size-trigger{width:100%}:root:not([data-text-scale="100"])[data-text-scale] .game-dialog .dialog-header{flex-direction:column;gap:8px;padding:8px 12px 18px;display:flex;position:relative}:root:not([data-text-scale="100"])[data-text-scale] .game-dialog .dialog-close{flex:0 0 44px;align-self:flex-end;position:static}:root:not([data-text-scale="100"])[data-text-scale] .game-dialog .dialog-back{align-self:flex-start}:root:not([data-text-scale="100"])[data-text-scale] :is(.result-actions,.level-picker-action){box-shadow:none;position:static}@media (width<=480px){:root:not([data-text-scale="100"])[data-text-scale] .rule-picker-modes{grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:minmax(0,1fr)}:root:not([data-text-scale="100"])[data-text-scale] .rule-picker-modes:before{width:auto;height:calc(33.3333% - 4px);transform:translateY(calc(var(--rule-index) * (100% + 3px)));inset:3px 3px auto}:root:not([data-text-scale="100"])[data-text-scale] .game-tools{grid-template-columns:minmax(0,1fr);gap:4px}:root:not([data-text-scale="100"])[data-text-scale] .tool-button{text-align:start;flex-direction:row;gap:16px;padding:10px 12px}:root:not([data-text-scale="100"])[data-text-scale] .tool-art{flex-basis:48px;width:48px;height:48px}:root:not([data-text-scale="100"])[data-text-scale] .tool-label{flex:1}:root:not([data-text-scale="100"])[data-text-scale] .tool-art .resource-free{display:none}:root:not([data-text-scale="100"])[data-text-scale] .tool-free{display:inline}:root:not([data-text-scale="100"])[data-text-scale] .setting-row{flex-wrap:wrap;gap:0;padding-block:12px}:root:not([data-text-scale="100"])[data-text-scale] .setting-row>span:first-child{flex-basis:100%;padding-block:0 8px}:root:not([data-text-scale="100"])[data-text-scale] .setting-row input{bottom:2px}}:root[data-reduce-motion=true] *,:root[data-reduce-motion=true] :before,:root[data-reduce-motion=true] :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}:root[data-reduce-motion=true] button:active:not(:disabled),:root[data-reduce-motion=true] .tool-button .tool-art{transform:none}:root[data-reduce-motion=true] :is(.celebration i,.cat-glints,.cell-reward){display:none}:root[dir=rtl]{--inline-direction:-1}:root:lang(ar){font-family:-apple-system,BlinkMacSystemFont,SF Arabic,Geeza Pro,Noto Sans Arabic,system-ui,sans-serif}:root:lang(hi){font-family:-apple-system,BlinkMacSystemFont,Noto Sans Devanagari,Nirmala UI,system-ui,sans-serif}:root:lang(th){font-family:-apple-system,BlinkMacSystemFont,Thonburi,Leelawadee UI,Noto Sans Thai,system-ui,sans-serif}:root:is(:lang(ar),:lang(hi),:lang(th)) :is(h1,h2,h3,button,.tool-label){letter-spacing:normal}:root[dir=rtl] .icon:is([data-icon=back],[data-icon=arrow],[data-icon=undo]){transform:scaleX(-1)}:root[dir=rtl] .language-entry>.icon{transform:rotate(90deg)}:root[dir=rtl] .text-size-menu{transform-origin:0 0}:root[dir=rtl] .text-size-menu[data-side=above]{transform-origin:0 100%}.board,.puzzle-preview,.hint-map{direction:ltr}.board .cell,.puzzle-preview .preview-cell{--inline-direction:1}.language-choice>bdi{unicode-bidi:isolate}.product-info textarea{text-align:start;unicode-bidi:plaintext}.file-choice-name{text-align:start;direction:ltr;unicode-bidi:isolate}.reference-game{width:min(100% - 26px,414px);padding-top:max(40px, env(safe-area-inset-top));padding-bottom:max(14px, env(safe-area-inset-bottom))}.reference-game .game-header{color:#8d5859;column-gap:6px}.reference-game .round-button{color:#8d5859;border-radius:50%;box-shadow:0 4px 8px #dca87824}.reference-game .round-button .icon{stroke-width:2.5px;width:25px;height:25px}.reference-game .level-info{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:6px;display:grid}.reference-game .level-title{border-radius:8px;width:100%;min-height:60px;padding:0 4px;font-size:1.0625rem;font-weight:500;line-height:1.25;position:relative}.reference-game .level-title-copy{flex-direction:column;align-items:center;display:flex}.reference-game .level-title strong{font-size:1.75rem;font-weight:750;line-height:1.15}.reference-game .level-title>.icon{inset-inline-end:0;color:#8d5859;width:10px;height:10px;position:absolute;top:8px}.reference-game .score{color:#8d5859;flex-direction:column;align-items:center;gap:2px;min-width:0;margin:0;padding-top:2px;font-size:1.0625rem;line-height:1.25;display:flex}.reference-game .score-label{overflow-wrap:anywhere;max-width:100%}.reference-game .score strong{max-width:100%;color:inherit;margin:0;font-size:1.75rem;font-weight:750;line-height:1.15}.reference-game .score-visual,.reference-game .score-reserve{overflow-wrap:anywhere}.reference-game .game-status{justify-content:center;margin:16px 0 10px}.reference-game .lives-group{align-items:center}.reference-game .lives{background:#fff;gap:4px;min-height:30px;padding:5px 14px}.reference-game .fish-icon{color:#e7a32a;width:28px;height:22px}.reference-game .fish-faded{color:#cec5b7}.reference-game .lives-group:not(.lives-last) .lives-caption{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.reference-game .lives-caption{padding:0}.reference-game .rule-ribbon{background:#fff;border-radius:12px;gap:6px;padding:7px}.reference-game .rule-chip{color:#8b5556;background:#fbf0ea;border-radius:8px;gap:5px;min-height:46px;padding:5px;font-size:.75rem;font-weight:500}.reference-game .rule-chip>span:last-child{min-width:0}.reference-game .rule-chip:hover{background:#f7e6dc}.reference-game .rule-chip.rule-error{color:#913a30;background:#f8ded5;border-color:#d37764}.rule-thumbnail{direction:ltr;flex:0 0 32px;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:1px;width:32px;height:32px;display:grid}.rule-thumbnail>span{background:#d9b5a2;border-radius:1px;place-items:center;min-width:0;min-height:0;display:grid;position:relative}.rule-thumbnail>.rule-mini-excluded{background:#a66942}.rule-thumbnail .cross-mark{color:#fff;stroke-width:4px;width:85%;height:85%}.rule-thumbnail .cat-face{width:125%;height:125%}.rule-mini-patterns>.rule-mini-excluded{background:#73574c}.reference-game .puzzle-area{margin-top:22px}.board-frame{--tray-inset:clamp(10px, 4vw, 17px);--tray-gap:clamp(4px, 1.55vw, 6.5px);width:100%}.reference-game .board{border:var(--tray-inset) solid #fff;gap:var(--tray-gap);box-shadow:none;background:#fff;border-radius:13px}.reference-game .cell{background:var(--region);box-shadow:none;border-radius:4px}.reference-game .cell-cat{box-shadow:none}.reference-game .cell-invalid:after{border-radius:4px}.reference-game .board-collection{background:#fff;border-radius:18px 18px 0 0;flex-direction:column;align-items:center;width:fit-content;max-width:calc(100% - 32px);min-height:32px;margin:0 auto;padding:5px 12px 3px;position:relative}.board-collection:before,.board-collection:after{content:"";background:radial-gradient(circle at 0 0,#0000 13.5px,#fff 14px);width:14px;height:14px;position:absolute;bottom:0}.board-collection:before{left:-14px}.board-collection:after{right:-14px;transform:scaleX(-1)}.reference-game .board-collection .cat-progress{gap:3px;min-height:24px;padding:0}.reference-game .board-collection .collection-cat{width:24px;height:24px;box-shadow:none;background:0 0;border:0;border-radius:0;flex:0 24px}.collection-silhouette{width:95%;height:95%;color:var(--collection-color);display:block}.reference-game .board-collection .collection-found>.cat-face{width:120%;height:120%}.collection-region-dot{background:var(--collection-color);border-radius:50%;width:8px;height:8px;position:absolute;bottom:0;right:-1px;box-shadow:0 0 0 1.5px #fff}.reference-game .board-collection .collection-patterns .collection-cat{border:1px solid #948a78;border-radius:5px}.reference-game .game-feedback.feedback-quiet{background:0 0;min-height:28px;margin-top:4px;padding-block:2px}.reference-game .game-tools{padding-top:8px}.reference-game .tool-button{gap:4px;padding-block:4px 2px}.reference-game .tool-art{background:#fff;border-radius:50%;flex-basis:62px;width:62px;height:62px;box-shadow:0 5px 10px #dca8782b}.reference-game .tool-cat .tool-art{background:#fff;padding:7px}.reference-game .tool-hint .icon{width:30px;height:34px}.reference-game .resource-count{border:2px solid var(--ground);background:#df4142;font-size:.875rem;top:-5px;bottom:auto;right:-2px}.reference-game .resource-free{white-space:nowrap;width:max-content;padding-inline:5px;font-size:.75rem}@media (width<=360px){.reference-game{width:calc(100% - 20px)}.reference-game .game-header{column-gap:2px}.reference-game .level-title,.reference-game .score{font-size:.875rem}.reference-game .rule-ribbon{gap:4px;padding:5px}.reference-game .rule-chip{flex-direction:column;gap:4px}}@media (height<=700px){.reference-game{padding-top:max(16px, env(safe-area-inset-top))}.reference-game .game-status{margin:8px 0}.reference-game .puzzle-area{margin-top:16px}}@media (width>=600px) and (height<=780px){.reference-game{width:min(100% - 32px,374px)}:root[data-text-scale="100"] .reference-game:not(.tutorial-screen){padding-top:8px}:root[data-text-scale="100"] .reference-game .game-status,:root[data-text-scale="100"] .reference-game.game-screen-point .game-status{margin:4px 0}:root[data-text-scale="100"] .reference-game.game-screen-point .game-status{margin:0 0 2px}:root[data-text-scale="100"] .reference-game .lives{min-height:26px;padding-block:4px}:root[data-text-scale="100"] .reference-game .fish-icon{height:18px}:root[data-text-scale="100"] .reference-game .level-title{min-height:48px;font-size:.875rem}:root[data-text-scale="100"] .reference-game .score{font-size:.875rem}:root[data-text-scale="100"] .reference-game .level-title strong,:root[data-text-scale="100"] .reference-game .score strong{font-size:1.5rem}:root[data-text-scale="100"] .reference-game .puzzle-area{margin-top:10px}:root[data-text-scale="100"] .reference-game .rule-thumbnail{flex-basis:26px;width:26px;height:26px}:root[data-text-scale="100"] .reference-game .rule-ribbon{padding-block:5px}:root[data-text-scale="100"] .reference-game .rule-chip{min-height:44px}:root[data-text-scale="100"] .reference-game .board-collection{flex-direction:column;min-height:28px;padding-top:3px}:root[data-text-scale="100"] .reference-game .board-collection .cat-progress{min-height:20px}:root[data-text-scale="100"] .reference-game .board-collection .collection-cat{flex-basis:20px;width:20px;height:20px}:root[data-text-scale="100"] .reference-game:not(.tutorial-screen) .game-feedback.feedback-quiet{min-height:26px;margin-top:2px}:root[data-text-scale="100"] .reference-game:not(.tutorial-screen) .puzzle-area{margin-top:2px}:root[data-text-scale="100"] .reference-game .game-tools{grid-template-columns:1fr 1.4fr 1fr}:root[data-text-scale="100"] .reference-game .tool-art{flex-basis:44px;width:44px;height:44px}:root[data-text-scale="100"] .reference-game .resource-count{top:-4px;right:0}}:root:not([data-text-scale="100"])[data-text-scale] .reference-game .game-header{grid-template-columns:44px minmax(0,1fr) 44px;align-items:start}:root:not([data-text-scale="100"])[data-text-scale] .reference-game .level-info{grid-template-columns:minmax(0,1fr);gap:10px}:root:not([data-text-scale="100"])[data-text-scale] .reference-game .level-title>.icon{display:none}@media (prefers-contrast:more){.reference-game .level-info,.reference-game .score,.reference-game .round-button,.reference-game .rule-chip{color:#693d3e}}@media (forced-colors:active){.reference-game .board{border-color:canvas}.reference-game .board-collection .collection-cat{border:1px solid canvastext}.collection-silhouette{color:canvastext}.collection-region-dot{background:highlight}}
