:root{--sky-top:#8fd0ff;--sky-mid:#c9ecff;--sky-bottom:#fff3d6;--hill-far:#a7dc84;--hill-near:#86c963;--ink:#43301f;--ink-soft:#7a5d44;--panel:#fffdf7;--panel-2:#fff3df;--panel-edge:#e9d4b0;--accent:#ff8a3d;--accent-deep:#d9661e;--accent-ink:#fff;--gold:#ffc928;--focus:#2f7de1;--grass-1:#9fe077;--grass-2:#6cbf4b;--grass-edge:#4d9634;--grass-groove:#3f7d2a;--soil-1:#f7e4bd;--soil-2:#ecd09d;--soil-speck:#8c5f3233;--wood-1:#d1945a;--wood-2:#a96b37;--wood-edge:#7b4a22;--lose:#6f93b8;--lose-deep:#4e7297;--font:"Hiragino Maru Gothic ProN", "Hiragino Maru Gothic Pro", "Zen Maru Gothic", "M PLUS Rounded 1c", "BIZ UDPGothic", "Arial Rounded MT Bold", "Nunito", system-ui, -apple-system, "Segoe UI", "Noto Sans JP", sans-serif;--gap:2px;--cell:32px;--shadow-soft:0 6px 16px #5032141f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font);color:var(--ink);background:var(--sky-bottom)}*{box-sizing:border-box}html,body{background:linear-gradient(var(--sky-top), var(--sky-mid) 45%, var(--sky-bottom));height:100%;margin:0;overflow:hidden}#app{height:100%}.loading{height:100%;color:var(--ink-soft);place-items:center;margin:0;font-size:1.25rem;font-weight:800;display:grid}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.icon{flex-shrink:0;width:1.25em;height:1.25em;display:inline-flex}.icon svg{width:100%;height:100%}.app{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;height:100%;position:relative}.scenery{z-index:0;pointer-events:none;background:linear-gradient(var(--sky-top), var(--sky-mid) 45%, var(--sky-bottom));position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.sun{background:radial-gradient(circle,#fff9d8 0 38%,#ffe685 39% 56%,#ffe68500 72%);border-radius:50%;width:18vmin;height:18vmin;position:absolute;top:5%;right:7%}.cloud{opacity:.9;background:#fff;border-radius:999px;width:20vmin;height:6vmin;animation:80s linear infinite cloud-drift;position:absolute;left:0}.cloud:before,.cloud:after{content:"";background:#fff;border-radius:50%;position:absolute}.cloud:before{width:9vmin;height:9vmin;bottom:2vmin;left:3vmin}.cloud:after{width:7vmin;height:7vmin;bottom:2.5vmin;left:9vmin}.cloud-1{animation-delay:-10s;top:12%}.cloud-2{opacity:.75;animation-duration:110s;animation-delay:-60s;top:26%;transform:scale(.7)}.cloud-3{opacity:.7;animation-duration:95s;animation-delay:-35s;top:6%;transform:scale(.55)}@keyframes cloud-drift{0%{translate:-30vmin}to{translate:calc(100vw + 10vmin)}}.hills{width:100%;height:34vh;position:absolute;bottom:0;left:0}[hidden]{display:none!important}.screen{z-index:1;height:100%;padding:max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));position:relative}.pill,.button{background:var(--panel);min-height:48px;color:var(--ink);box-shadow:0 3px 0 var(--panel-edge), var(--shadow-soft);border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:800;transition:transform .1s,box-shadow .1s;display:inline-flex}.pill:active,.button:active{box-shadow:0 1px 0 var(--panel-edge), var(--shadow-soft);transform:translateY(2px)}.button.primary{background:var(--accent);color:var(--accent-ink);box-shadow:0 4px 0 var(--accent-deep), 0 8px 18px #d9661e4d}.button.primary:active{box-shadow:0 1px 0 var(--accent-deep)}.zukan-button .icon{color:var(--accent)}.title-screen{overscroll-behavior:contain;flex-direction:column;justify-content:safe center;align-items:center;gap:14px;display:flex;overflow-y:auto}.title-hero{flex-direction:column;align-items:center;gap:2px;display:flex}.logo{letter-spacing:.02em;text-align:center;text-wrap:balance;margin:0;font-size:clamp(2.1rem,11vw,3.8rem);font-weight:900;line-height:1.1}.logo-text{color:var(--accent);-webkit-text-stroke:.18em #fff;paint-order:stroke fill;text-shadow:0 .09em 0 var(--wood-edge), 0 .16em .25em #5a371447;display:inline-block;transform:rotate(-2deg)}.title-stage{aspect-ratio:1;width:clamp(130px,38vmin,230px);position:relative}.title-mound{background:radial-gradient(at 50% 35%,#b98553 0 50%,#93622f 51% 100%);border-radius:50%;height:20%;position:absolute;bottom:2%;left:8%;right:8%;box-shadow:0 6px #3c5a1e40}.title-dog{position:absolute;top:0;bottom:6%;left:0;right:0}.tagline{color:var(--ink-soft);text-align:center;text-wrap:balance;background:#fffdf7d9;border-radius:999px;margin:4px 0 0;padding:6px 16px;font-size:.95rem;font-weight:800}.title-menu{flex-direction:column;gap:10px;width:min(420px,100%);display:flex}.menu-heading{text-align:center;color:var(--ink);margin:0;font-size:.95rem;font-weight:800}.difficulty-cards{flex-direction:column;gap:10px;display:flex}.dcard{--d-color:var(--accent);background:var(--panel);text-align:left;min-height:68px;box-shadow:0 4px 0 var(--panel-edge), var(--shadow-soft);border:0;border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:10px 16px;transition:transform .12s,box-shadow .12s;display:grid}.dcard[data-difficulty=easy]{--d-color:#52b33c}.dcard[data-difficulty=normal]{--d-color:#ff8a3d}.dcard[data-difficulty=hard]{--d-color:#e2483a}.dcard.last{box-shadow:0 4px 0 var(--panel-edge), 0 0 0 3px var(--d-color), var(--shadow-soft)}.dcard:active{box-shadow:0 1px 0 var(--panel-edge), var(--shadow-soft);transform:translateY(3px)}.dcard-paws{gap:1px;display:flex}.paw{color:#eadcc4;width:18px;height:18px}.paw.on{color:var(--d-color)}.paw svg{width:100%;height:100%}.dcard-body,.dcard-best{flex-direction:column;display:flex}.dcard-name{color:var(--ink);font-size:1.2rem;font-weight:900}.dcard-meta{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:700}.dcard-best{align-items:flex-end}.nowrap{white-space:nowrap}.dcard-best-label{letter-spacing:.08em;color:var(--ink-soft);font-size:.7rem;font-weight:800}.dcard-best-time{font-variant-numeric:tabular-nums;font-size:1.1rem;font-weight:900}.dcard-best-none{text-align:right;max-width:6.5em;color:var(--ink-soft);font-size:.72rem;font-weight:700}.title-footer{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.lang-button{min-width:96px;color:var(--ink-soft);font-size:.9rem}.app[data-orientation=landscape] .title-screen{flex-direction:row;justify-content:center;gap:clamp(16px,5vw,64px)}.app[data-orientation=landscape] .logo{font-size:clamp(1.8rem,6vh + 1.2vw,3.6rem)}.app[data-orientation=landscape] .title-stage{width:clamp(100px,34vh,220px)}.app[data-orientation=landscape] .title-menu{width:min(400px,48vw)}.app[data-orientation=landscape] .dcard{min-height:60px;padding-block-start:8px;padding-block-end:8px}.game-screen{flex-direction:column;gap:8px;display:flex}.game-side{display:contents}.hud{order:0}.board-wrap{order:1}.controls{order:2}.hud{background:var(--panel);box-shadow:0 3px 0 var(--panel-edge), var(--shadow-soft);border-radius:22px;align-items:center;gap:8px;padding:6px 8px;display:flex}.icon-button{background:var(--panel-2);width:44px;height:44px;color:var(--ink);box-shadow:0 2px 0 var(--panel-edge);border:0;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.icon-button .icon{width:24px;height:24px}.icon-button:active{box-shadow:none;transform:translateY(2px)}.hud-dog{flex-shrink:0;width:54px;height:54px;margin-top:-8px}.hud-stats{flex:1;justify-content:center;gap:14px;display:flex}.stat{font-variant-numeric:tabular-nums;align-items:center;gap:5px;font-size:1.2rem;font-weight:900;display:inline-flex}.stat .icon{width:26px;height:26px;color:var(--ink-soft)}.stat-value{min-width:2.4ch}.controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 10px;display:flex}.mode-switch{background:#f1e2c7;border-radius:999px;gap:4px;padding:4px;display:flex;box-shadow:inset 0 2px 3px #7850282e,0 3px #fffdf7b3}.mode-opt{min-height:44px;color:var(--ink-soft);background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 16px;font-weight:800;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.mode-opt .icon{opacity:.6;width:22px;height:22px}.mode-opt[aria-pressed=true]{background:var(--panel);color:var(--ink);box-shadow:0 2px 0 var(--panel-edge), inset 0 0 0 2px var(--accent)}.mode-switch[data-mode=flag] .mode-opt[aria-pressed=true]{box-shadow:0 2px 0 var(--panel-edge), inset 0 0 0 2px #ef5a3c}.mode-opt[aria-pressed=true] .icon{opacity:1}.zoom-switch{background:#f1e2c7;border-radius:999px;gap:4px;padding:4px;display:flex;box-shadow:inset 0 2px 3px #7850282e,0 3px #fffdf7b3}.zoom-opt{background:var(--panel);width:44px;height:44px;color:var(--ink);box-shadow:0 2px 0 var(--panel-edge);border:0;border-radius:50%;place-items:center;padding:0;display:grid}.zoom-opt .icon{width:22px;height:22px}.zoom-opt:active:not(:disabled){box-shadow:none;transform:translateY(2px)}.zoom-opt:disabled{cursor:default;opacity:.4;box-shadow:none}.hint{text-align:center;color:var(--ink-soft);flex-basis:100%;order:-1;margin:0;font-size:.78rem;font-weight:700}.app[data-orientation=landscape] .game-screen{flex-direction:row}.app[data-orientation=landscape] .game-side{flex-direction:column;flex-shrink:0;justify-content:center;gap:12px;width:clamp(170px,24vw,250px);display:flex;overflow-y:auto}.app[data-orientation=landscape] .hud{grid-template-columns:auto 1fr auto;justify-items:center;row-gap:4px;display:grid}.app[data-orientation=landscape] .hud>.icon-button:first-child{grid-area:1/1}.app[data-orientation=landscape] .hud-dog{grid-area:1/2;width:64px;height:64px}.app[data-orientation=landscape] .hud>.icon-button:last-child{grid-area:1/3}.app[data-orientation=landscape] .hud-stats{grid-area:2/1/auto/-1}.app[data-orientation=landscape] .controls{flex-direction:column}.app[data-orientation=landscape] .mode-switch{width:100%}.app[data-orientation=landscape] .mode-opt{flex:1;justify-content:center;padding:0 8px}.app[data-orientation=landscape] .hint{order:0}.board-wrap{overscroll-behavior:contain;touch-action:pan-x pan-y;flex:auto;min-width:0;min-height:0;padding:2px;display:flex;overflow:auto}.board-frame{background:repeating-linear-gradient(90deg, #0000000d 0 2px, transparent 2px 46px), linear-gradient(var(--wood-1), var(--wood-2));box-shadow:inset 0 2px 0 #ffffff59, inset 0 -3px 0 #00000029, 0 5px 0 var(--wood-edge), 0 14px 26px #3c230a40;border-radius:22px;margin:auto;padding:9px}.board-frame.pinching{transform-origin:0 0;will-change:transform}.board{gap:var(--gap);background:var(--grass-groove);box-shadow:0 0 0 2px var(--grass-groove);touch-action:pan-x pan-y;overflow-clip-margin:4px;border-radius:12px;display:grid;position:relative;overflow:clip}.cell{touch-action:pan-x pan-y;width:var(--cell);height:var(--cell);border-radius:calc(var(--cell) * .2);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 12'%3E%3Cpath d='M3 12Q4 6 1.5 2.5M7.5 12Q7.5 5 10 1M12 12Q13 7 16 5' stroke='%23c4f29c' stroke-width='1.8' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") var(--tuft,40%) 82% / 46% auto no-repeat, linear-gradient(165deg, var(--grass-1), var(--grass-2));box-shadow:inset 0 2px 0 #ffffff59, inset 0 -4px 0 var(--grass-edge);color:var(--ink);font-size:calc(var(--cell) * .54);border:0;place-items:center;padding:0;font-weight:900;line-height:1;transition:transform 80ms,filter 80ms;display:grid;position:relative}.cell svg{pointer-events:none;width:80%;height:80%}@media (hover:hover){.board:not(.over) .cell:not(.open):not(.pit):hover{filter:brightness(1.07)saturate(1.05);transform:translateY(-1px)}}.board:not(.over) .cell:not(.open):not(.pit):active{filter:brightness(.96);transform:translateY(1px)}.cell.open,.cell.pit{background:radial-gradient(circle at 30% 35%, var(--soil-speck) 0 1.2px, transparent 1.8px) 0 0 / 9px 9px, radial-gradient(circle at 70% 70%, var(--soil-speck) 0 1px, transparent 1.5px) 0 0 / 7px 7px, linear-gradient(var(--soil-2), var(--soil-1));cursor:default;box-shadow:inset 0 3px 4px #78502847}.cell.open{text-shadow:0 1px #ffffffbf}.cell.n1{color:#1c5bbf}.cell.n2{color:#2a7a2e}.cell.n3{color:#cc2f2a}.cell.n4{color:#5b33a8}.cell.n5{color:#8a3712}.cell.n6{color:#00736a}.cell.n7{color:#33434b}.cell.n8{color:#5a5a5a}.cell.exploded{background:radial-gradient(circle,#ffe08a 0 28%,#ff8a4c 30% 58%,#e2482b 60%);animation:.42s ease-out cell-boom;box-shadow:inset 0 0 0 2px #b8321c}.cell.flag.wrong:after{content:"";background:linear-gradient(45deg,#0000 43%,#d9261c 43% 57%,#0000 57%),linear-gradient(-45deg,#0000 43%,#d9261c 43% 57%,#0000 57%);position:absolute;top:18%;bottom:18%;left:18%;right:18%}.cell.digging{animation:.11s ease-in-out infinite alternate cell-dig}.cell.pop{animation:cell-pop .2s ease-out var(--pop-delay,0s) both}.board.over .cell{cursor:default}@keyframes cell-dig{0%{filter:brightness();transform:translateY(0)}to{filter:brightness(.88);transform:translateY(1px)}}@keyframes cell-pop{0%{opacity:.3;transform:scale(.65)}70%{opacity:1;transform:scale(1.06)}to{transform:scale(1)}}@keyframes cell-boom{0%{transform:scale(.8)}50%{transform:scale(1.15)}to{transform:scale(1)}}.overlay{z-index:30;background:#281c0f6b;place-items:center;padding:16px;animation:.18s ease-out fade-in;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.overlay[hidden]{display:none}.dialog{background:var(--panel);text-align:center;width:min(360px,100%);box-shadow:0 8px 0 var(--panel-edge), 0 22px 44px #28190a4d;border-radius:26px;padding:22px;animation:.26s cubic-bezier(.2,1.4,.4,1) pop-in;position:relative}.dialog.result{margin-top:24px;padding-top:8px}.result-banner{background:var(--accent);color:#fff;box-shadow:0 4px 0 var(--accent-deep);text-wrap:balance;border-radius:16px;margin:-34px 0 0;padding:10px 28px;font-size:1.55rem;font-weight:900;display:inline-block;transform:rotate(-2deg)}.dialog.lost .result-banner{background:var(--lose);box-shadow:0 4px 0 var(--lose-deep)}.dialog-dog{width:124px;height:124px;margin:2px auto 0}.record-badge{background:var(--gold);border-radius:999px;margin:0 0 6px;padding:4px 14px;font-weight:900;animation:.6s cubic-bezier(.2,1.6,.4,1) .3s both badge-pop;display:inline-block}.record-badge[hidden]{display:none}.result-stats{flex-wrap:wrap;justify-content:center;gap:8px;margin:4px 0 16px;display:flex}.result-chip{background:var(--panel-2);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:.85rem;font-weight:700;display:inline-flex}.result-chip .icon{width:18px;height:18px;color:var(--accent)}.result-chip-value{font-variant-numeric:tabular-nums;font-weight:900}.dialog.result .button.primary{width:100%;min-height:54px;font-size:1.1rem}.dialog-sub{gap:8px;margin-top:12px;display:flex}.dialog-sub .button{background:var(--panel-2);box-shadow:0 2px 0 var(--panel-edge);flex:1;padding:0 10px}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:scale(.85)}}@keyframes badge-pop{0%{opacity:0;transform:scale(.3)rotate(-10deg)}to{opacity:1;transform:scale(1)rotate(-3deg)}}.toast{top:max(12px, env(safe-area-inset-top));z-index:20;background:var(--panel);max-width:calc(100% - 32px);box-shadow:0 4px 0 var(--panel-edge), 0 10px 24px #50321433;pointer-events:none;border-radius:999px;align-items:center;gap:8px;padding:6px 18px 6px 8px;font-weight:800;display:none;position:fixed;left:50%;transform:translate(-50%)}.toast.show{animation:1.9s ease-in-out both toast;display:flex}.toast-icon{flex-shrink:0;width:36px;height:36px}.toast-icon svg{width:100%;height:100%}.toast .badge{background:var(--accent);color:var(--accent-ink);border-radius:999px;padding:2px 8px;font-size:.75rem}@keyframes toast{0%{opacity:0;transform:translate(-50%,-14px)scale(.9)}12%,80%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-8px)}}@keyframes toast-still{0%,99%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%)}}.zukan{width:min(560px,100%);max-height:calc(100vh - 32px);overscroll-behavior:contain;max-height:calc(100dvh - 32px);overflow-y:auto}.zukan-title{color:var(--accent-deep);text-wrap:balance;margin:0;font-size:1.4rem;font-weight:900}.zukan-progress{color:var(--ink-soft);font-variant-numeric:tabular-nums;margin:2px 0 14px;font-weight:800}.zukan-list{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;margin:0 0 16px;padding:0;list-style:none;display:grid}.zukan-item{box-shadow:0 3px 0 var(--panel-edge);background:#fff;border-radius:16px;padding:12px 8px 10px;position:relative}.zukan-icon{width:56px;height:56px;margin:0 auto 4px}.zukan-icon svg{width:100%;height:100%;display:block}.zukan-item.unknown{background:var(--panel-2)}.zukan-item.unknown .zukan-icon{filter:brightness(0);opacity:.16}.zukan-name{margin:0;font-size:.875rem;font-weight:900}.zukan-count{color:var(--accent-deep);margin:2px 0 0;font-size:.75rem;font-weight:800}.zukan-desc{color:var(--ink-soft);text-align:left;margin:4px 0 0;font-size:.75rem}.zukan-rare{background:var(--gold);border-radius:999px;padding:1px 7px;font-size:.6875rem;font-weight:900;position:absolute;top:6px;right:6px}.confetti{z-index:40;pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.confetti-piece{filter:drop-shadow(0 2px 1px #00000026);width:24px;height:24px;animation-name:confetti-fall;animation-timing-function:cubic-bezier(.3,.1,.6,1);animation-fill-mode:both;position:absolute;top:-40px}.confetti-piece svg{width:100%;height:100%}@keyframes confetti-fall{0%{opacity:1;transform:translate(0)rotate(0)}85%{opacity:1}to{transform:translate(var(--drift), 110vh) rotate(var(--spin));opacity:0}}.paused .cloud,.paused .confetti-piece,.paused .record-badge,.paused .overlay,.paused .dialog{animation-play-state:paused!important}.paused .board{opacity:.7}@media (prefers-reduced-motion:reduce){.cloud,.cell.digging,.cell.pop,.cell.exploded,.overlay,.dialog,.record-badge{animation:none}.toast.show{animation-name:toast-still;animation-timing-function:step-end}}:root{--dog-fur:#e8ae72;--dog-ear:#a5673a;--dog-cream:#fff4e2;--dog-ink:#3b2a1a;--dog-blush:#f5a3a3;--dog-tongue:#ea6f73;--dog-dirt:#8a5a33;--dog-mark:#d9482b;--dog-star:#ffc928}.dog{width:100%;height:100%;display:block;overflow:visible}.dog *{transform-box:view-box}.dog-tail{transform-origin:68px 76px}.dog-head{transform-origin:50px 62px}.dog-ear-l{transform-origin:34px 26px}.dog-ear-r{transform-origin:66px 26px}.dog-nose{transform-origin:50px 47.5px}.dog-paw-l{transform-origin:41px 91px}.dog-paw-r{transform-origin:59px 91px}.dog-all{transform-origin:50px 96px}.dog-eyes-happy,.dog-eyes-sad,.dog-tongue,.dog-sniff-lines,.dog-mark,.dog-dirt,.dog-stars,.dog-mouth-open{display:none}.dog-actor{pointer-events:none;z-index:2;will-change:transform;opacity:0;position:absolute;top:0;left:0}.dog-actor.visible{opacity:1}.dog-facing{width:100%;height:100%}.dog-actor.face-left .dog-facing{transform:scaleX(-1)}[data-pose=walk] .dog-all{animation:.14s ease-in-out infinite alternate dog-bob}[data-pose=walk] .dog-tail{animation:.16s ease-in-out infinite alternate dog-wag}[data-pose=sniff] .dog-head{transform:rotate(6deg)translateY(3px)}[data-pose=sniff] .dog-nose{animation:90ms ease-in-out infinite alternate dog-sniff}[data-pose=sniff] .dog-sniff-lines{animation:.18s steps(2,end) infinite dog-blink;display:inline}[data-pose=sniff] .dog-ear-l{animation:.22s ease-out dog-ear-twitch-l}[data-pose=dig] .dog-head{transform:translateY(4px)}[data-pose=dig] .dog-paw-l{animation:.11s ease-in-out infinite alternate dog-paw}[data-pose=dig] .dog-paw-r{animation:.11s ease-in-out -55ms infinite alternate dog-paw}[data-pose=dig] .dog-dirt{display:inline}[data-pose=dig] .dog-dirt-1{animation:.22s ease-out infinite dog-dirt-l}[data-pose=dig] .dog-dirt-2{animation:.22s ease-out -80ms infinite dog-dirt-r}[data-pose=dig] .dog-dirt-3{animation:.22s ease-out -150ms infinite dog-dirt-up}[data-pose=wag] .dog-tail,[data-pose=joy] .dog-tail{animation:.11s ease-in-out infinite alternate dog-wag}[data-pose=wag] .dog-eyes-open,[data-pose=joy] .dog-eyes-open{display:none}[data-pose=wag] .dog-eyes-happy,[data-pose=joy] .dog-eyes-happy,[data-pose=wag] .dog-tongue,[data-pose=joy] .dog-tongue{display:inline}[data-pose=tilt] .dog-head{animation:.6s ease-in-out forwards dog-tilt}[data-pose=ears] .dog-ear-l{animation:.26s ease-out dog-ear-twitch-l}[data-pose=ears] .dog-ear-r{animation:.26s ease-out 80ms dog-ear-twitch-r}[data-pose=surprised] .dog-all{animation:.36s ease-out dog-jump}[data-pose=surprised] .dog-eyes-open{transform-origin:50px 40px;transform:scale(1.25)}[data-pose=surprised] .dog-sparkle{display:none}[data-pose=surprised] .dog-mark{display:inline}[data-pose=surprised] .dog-ear-l{transform:rotate(24deg)}[data-pose=surprised] .dog-ear-r{transform:rotate(-24deg)}[data-pose=sad] .dog-head{transform:rotate(-4deg)translateY(4px)}[data-pose=sad] .dog-ear-l{transform:translateY(3px)rotate(-14deg)}[data-pose=sad] .dog-ear-r{transform:translateY(3px)rotate(14deg)}[data-pose=sad] .dog-eyes-open{display:none}[data-pose=sad] .dog-eyes-sad{display:inline}[data-pose=sad] .dog-tail{transform:rotate(60deg)}[data-pose=joy] .dog-all{animation:.38s ease-in-out infinite dog-hop}[data-pose=shine] .dog-eyes-open{transform-origin:50px 40px;transform:scale(1.18)}[data-pose=shine] .dog-sparkle{transform-origin:50px 39px;animation:.26s ease-in-out infinite alternate dog-sparkle}[data-pose=shine] .dog-stars{display:inline}[data-pose=shine] .dog-stars path{transform-origin:50%;transform-box:fill-box;animation:.3s ease-in-out infinite alternate dog-twinkle}[data-pose=shine] .dog-star-2{animation-delay:-100ms!important}[data-pose=shine] .dog-star-3{animation-delay:-200ms!important}[data-pose=shine] .dog-ear-l{animation:.26s ease-out dog-ear-twitch-l}[data-pose=shine] .dog-ear-r{animation:.26s ease-out dog-ear-twitch-r}[data-pose=shine] .dog-tail{animation:.11s ease-in-out infinite alternate dog-wag}[data-pose=eat] .dog-head{animation:.16s ease-in-out infinite alternate dog-chew}[data-pose=eat] .dog-eyes-open{display:none}[data-pose=eat] .dog-eyes-happy{display:inline}[data-pose=eat] .dog-mouth{display:none}[data-pose=eat] .dog-mouth-open{animation:.16s step-end infinite dog-mouth;display:inline}[data-pose=eat] .dog-tail{animation:.11s ease-in-out infinite alternate dog-wag}.dog-live[data-pose=idle] .dog-all{animation:2.8s ease-in-out infinite dog-breathe}.dog-live[data-pose=idle] .dog-eyes-open{transform-origin:50px 40px;animation:4.8s linear infinite dog-blink-eyes}.dog-live[data-pose=idle] .dog-tail{animation:.65s ease-in-out infinite alternate dog-wag}.title-dog[data-pose=idle] .dog-head{animation:7s ease-in-out infinite dog-idle-tilt}.title-dog[data-pose=idle] .dog-ear-r{animation:5.5s ease-out infinite dog-ear-flick}[data-pose=leave] .dog-all{animation:.2s ease-in forwards dog-leave}.treat-float{pointer-events:none;z-index:3;filter:drop-shadow(0 2px 2px #0003);animation-name:treat-fly;animation-timing-function:ease-in-out;animation-fill-mode:both;position:absolute}.treat-float svg{width:100%;height:100%;display:block}@keyframes treat-fly{0%{opacity:0;transform:translate(0)scale(.3)}15%{opacity:1;transform:translateY(-6px)scale(1.2)}45%{opacity:1;transform:translateY(-8px)scale(1.1)}85%{transform:translate(var(--dx), var(--dy)) scale(.45);opacity:1}to{transform:translate(var(--dx), var(--dy)) scale(.1);opacity:0}}.paused .dog *,.paused .cell,.paused .treat-float,.paused .toast{animation-play-state:paused!important}@keyframes dog-bob{0%{transform:translateY(0)}to{transform:translateY(-3px)}}@keyframes dog-wag{0%{transform:rotate(-16deg)}to{transform:rotate(16deg)}}@keyframes dog-sniff{0%{transform:scale(1)}to{transform:scale(1.18,1.1)}}@keyframes dog-blink{50%{opacity:0}}@keyframes dog-paw{0%{transform:translateY(0)}to{transform:translateY(-5px)}}@keyframes dog-dirt-l{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-12px,-14px)}}@keyframes dog-dirt-r{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(12px,-12px)}}@keyframes dog-dirt-up{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(2px,-18px)}}@keyframes dog-tilt{0%{transform:rotate(0)}35%,to{transform:rotate(-14deg)}}@keyframes dog-ear-twitch-l{0%,to{transform:rotate(0)}40%{transform:rotate(-20deg)}}@keyframes dog-ear-twitch-r{0%,to{transform:rotate(0)}40%{transform:rotate(20deg)}}@keyframes dog-jump{0%{transform:translateY(0)}40%{transform:translateY(-12px)scale(1.04)}to{transform:translateY(0)}}@keyframes dog-hop{0%,to{transform:translateY(0)scale(1)}15%{transform:translateY(0)scale(1.06,.94)}50%{transform:translateY(-12px)scale(.97,1.04)}}@keyframes dog-sparkle{0%{transform:scale(1)}to{transform:scale(1.7)}}@keyframes dog-twinkle{0%{opacity:.6;transform:scale(.6)rotate(0)}to{opacity:1;transform:scale(1.15)rotate(20deg)}}@keyframes dog-chew{0%{transform:translateY(0)rotate(0)}to{transform:translateY(2px)rotate(2deg)}}@keyframes dog-mouth{0%{opacity:1}50%{opacity:0}}@keyframes dog-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.015,.985)}}@keyframes dog-blink-eyes{0%,93%,to{transform:scaleY(1)}95.5%{transform:scaleY(.1)}}@keyframes dog-idle-tilt{0%,64%,to{transform:rotate(0)}70%,86%{transform:rotate(-10deg)}}@keyframes dog-ear-flick{0%,80%,to{transform:rotate(0)}84%{transform:rotate(18deg)}88%{transform:rotate(0)}}@keyframes dog-leave{to{opacity:0;transform:translateY(-6px)scale(.6)}}@media (prefers-reduced-motion:reduce){.dog *{animation:none!important}}
