.loading-shell{color:#493d50;background:#f5f2ea;border-radius:20px;max-width:36rem;margin:12vh auto;padding:24px;font-size:18px}:root{--game-font:"Avenir Next", "Segoe UI", Arial, sans-serif;font-family:var(--game-font);color:#3e3548;font-synthesis:none;--ink:#3e3548;--muted:#655c69;--brand-dot:#80663d;--page:#f5f2ea;--line:#d6dccf;--accent:#466244;--accent-hover:#385332;--accent-soft:#eaf0e3;--accent-border:#6d8264;--accent-selected:#e1edd8;--accent-pulse:#608354;--accent-glow:#46624488;--paper:#fffdf9;background:#f5f2ea}:root[data-control-theme=plum]{--accent:#594566;--accent-hover:#463451;--accent-soft:#eee7f1;--accent-border:#9f90a7;--accent-selected:#e5daeb;--accent-pulse:#80668a;--accent-glow:#59456688;--line:#ddd4e1}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}html{overscroll-behavior:none;height:100%}body{isolation:isolate;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;touch-action:manipulation;background:#f5f2ea;margin:0;position:relative}body:before{content:"";z-index:-1;pointer-events:none;background:#f5f2ea;position:absolute;inset:0}input,textarea,[contenteditable=true]{-webkit-user-select:text;user-select:text}button,input,textarea,select{font:inherit}button{color:inherit;cursor:pointer;touch-action:manipulation;border:0}button:disabled{cursor:default;opacity:.65}a{color:var(--accent-hover)}p,h1,h2,h3{margin:0}p{line-height:1.5}svg{vertical-align:middle;flex-shrink:0}[hidden]{display:none!important}.eyebrow,.section-label{letter-spacing:.8px;color:var(--muted);font-size:12px;font-weight:750}.notice{background:#fff0cc;border:1px solid #c9ad67;border-radius:12px;margin-bottom:12px;padding:12px 16px;font-size:14px}.notice button{background:#fff;border-radius:8px;min-height:44px;margin-left:4px;padding:8px 12px}summary{cursor:pointer;min-height:44px;padding:10px 0;font-size:15px}select{border:1px solid var(--accent-border);min-height:44px;color:var(--ink);background:#fff;border-radius:8px;padding:8px}.medal-icon{vertical-align:-.05em;line-height:1;display:inline-block}#app{background:linear-gradient(to top, #d5dfcd 0 var(--safe-bottom), transparent var(--safe-bottom));--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);width:100%;max-width:760px;height:100dvh;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);flex-direction:column;margin:auto;display:flex;overflow:hidden}.site-header{flex-shrink:0;align-items:center;gap:6px;width:100%;min-height:56px;padding:4px 12px;display:flex}.brand{color:var(--ink);letter-spacing:-1px;align-items:center;gap:7px;font-size:25px;font-weight:800;text-decoration:none;display:flex}.brand img{width:34px;height:34px}.brand-dot{color:var(--brand-dot)}.header-actions{gap:3px;margin-left:auto;display:flex}.icon-button{min-width:44px;height:44px;color:var(--accent-hover);background:0 0;border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background:var(--accent-soft)}.page-shell{flex-direction:column;flex:1;width:100%;min-height:0;padding:0;display:flex;overflow:auto}.more-tools{position:relative}.more-tools summary{cursor:pointer;list-style:none}.more-tools summary::-webkit-details-marker{display:none}.tools-menu{z-index:5;width:210px;max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 76px);border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:6px;position:absolute;top:46px;right:0;overflow-y:auto;box-shadow:0 8px 26px #3e35481c}.tools-menu button{text-align:left;background:0 0;border-radius:8px;width:100%;min-height:44px;padding:8px 12px;display:block}.tools-menu button:hover{background:var(--accent-soft)}.game-card{background:var(--paper);flex:1;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.canvas-wrap{background:#f5f6ec;grid-area:1/1;min-height:100px;position:relative;overflow:hidden}#game-canvas{touch-action:none;cursor:grab;width:100%;height:100%;display:block;position:absolute;inset:0}#game-canvas:active{cursor:grabbing}.animal-count{z-index:1;min-height:44px;color:var(--ink);background:0 0;border-radius:8px;align-items:center;gap:5px;padding:6px 8px;font-size:14px;font-weight:700;display:inline-flex;position:absolute;top:6px;right:10px}.board-message{z-index:1;left:12px;right:12px;bottom:calc(var(--controls-height,0px) + 6px);text-align:center;color:#3e5038;pointer-events:none;font-size:12px;line-height:18px;position:absolute}.new-best{z-index:2;white-space:nowrap;color:var(--ink);pointer-events:none;background:#fffaf1;border-radius:14px;padding:6px 12px;font-size:19px;font-weight:800;position:fixed;top:25dvh;left:50%;translate:-50% -50%;box-shadow:0 3px 12px #6f567e18}.animal-count:hover{background:var(--accent-soft)}#tutorial-exit{color:var(--ink);z-index:1;background:0 0;padding:6px 8px;position:absolute;top:6px;right:10px}.best-marker-label{z-index:1;pointer-events:none;white-space:nowrap;font:600 15px/20px var(--game-font);color:#466244;font-variant-numeric:tabular-nums;position:absolute;top:0;right:20px}.game-loading-active .canvas-wrap,.game-loading-active .play-controls{visibility:hidden}.game-loading{pointer-events:none;z-index:8;color:var(--accent);text-align:center;background:#f5f6ec;grid-area:1/1;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex}.loading-spinner{border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite loading-spin}@keyframes loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){html:not([data-motion=full]) .loading-spinner{animation:none}}.play-controls{pointer-events:none;flex-shrink:0;grid-area:1/1;align-self:end;gap:6px;padding:8px 12px;display:grid;position:relative}.text-button{min-height:44px;color:var(--accent-hover);background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:8px;font-size:14px;font-weight:650;display:inline-flex}.text-button:hover{background:var(--accent-soft)}.animal-tray{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.animal-option{z-index:2;pointer-events:auto;border:2px solid var(--line);background:#faf7f2;border-radius:11px;grid-template-rows:minmax(0,1fr) auto;place-items:center;gap:2px;min-width:0;height:64px;padding:5px 8px;transition:transform .18s,background .18s,border-color .18s;display:grid;position:relative}.animal-option:hover:not(:disabled){border-color:var(--accent-border);transform:translateY(-2px)}.animal-option.selected{border-color:var(--accent);background:var(--accent-soft)}.animal-thumb{width:var(--thumb-width);height:var(--thumb-height);flex-shrink:0;justify-content:center;align-items:center;display:flex}.animal-thumb svg{width:100%;height:100%;display:block}.animal-thumb.mirrored svg{transform:scaleX(-1)}.animal-name{font-size:14px;font-weight:650;line-height:18px}.empty{color:var(--muted);justify-content:center;font-size:14px}.action-row{gap:8px;display:flex}.drop-button,.primary-button{background:var(--accent);color:#fff;border-radius:11px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:10px 16px;font-size:16px;font-weight:700;transition:background .18s,transform .18s;display:inline-flex}.drop-button{z-index:2;pointer-events:auto;border-radius:10px;flex:1;min-height:44px;padding:6px 12px;font-size:15px;position:relative}.drop-button:hover:not(:disabled),.primary-button:hover:not(:disabled){background:var(--accent-hover)}.drop-button:active:not(:disabled),.primary-button:active:not(:disabled){transform:translateY(1px)}.secondary-button{border:1px solid var(--accent-border);min-height:44px;color:var(--accent-hover);background:#faf7f2;border-radius:10px;padding:9px 12px;font-weight:650}.quiet-button{min-height:44px;color:var(--accent-hover);background:0 0;border-radius:10px;padding:10px}.settling-dots{align-items:center;gap:7px;display:inline-flex}.loading-dot{background:currentColor;border-radius:50%;width:8px;height:8px;animation:1s ease-in-out infinite pulse}.loading-dot:nth-child(2){animation-delay:.16s}.loading-dot:nth-child(3){animation-delay:.32s}@keyframes pulse{50%{opacity:.4}}@media (prefers-reduced-motion:reduce){html:not([data-motion=full]) .loading-dot{animation:none}}.full{width:100%;margin-top:9px}.animal-option .animal-thumb{width:100%;min-width:0;height:100%;min-height:0}dialog{width:min(560px,100% - 24px);inset:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);max-width:calc(100% - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px) - 24px);max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px);border:1px solid var(--line);color:var(--ink);background:var(--paper);border-radius:20px;padding:28px 24px 20px;overflow:auto}#modal:has(.tutorial-prompt-title){width:min(320px,100% - 32px);padding:20px}#modal:has(.tutorial-prompt-title) .modal-close{display:none}#modal-content:has(.tutorial-prompt-title){padding-top:0}dialog::backdrop{background:#36273b66}.modal-close{position:absolute;top:6px;right:6px}#modal-content{padding-top:12px}#modal-content h2{margin:12px 20px 12px 0;font-family:inherit;font-size:24px;font-weight:700}#modal-content .tutorial-prompt-title{text-align:center;margin:0 0 20px;font-family:inherit;font-size:22px;font-weight:700;line-height:1.3}.tutorial-prompt-actions{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:10px;display:grid}.tutorial-prompt-actions button{min-height:44px}#modal-content h3{margin:15px 0 8px;font-size:16px}#modal-content p{margin-bottom:12px}.modal-intro,.small-copy{color:var(--muted);font-size:14px;line-height:1.6}.help-list{gap:14px;padding-left:22px;font-size:15px;line-height:1.6;display:grid}.lineup-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.lineup-animal{border:1px solid var(--line);text-align:center;border-radius:12px;grid-template-rows:76px 36px;place-items:center;gap:8px;min-width:0;padding:26px 8px 8px;font-size:14px;display:grid;position:relative}.lineup-order{color:var(--muted);font-size:12px;line-height:1;position:absolute;top:8px;left:10px}.lineup-animal small{color:var(--muted);font-size:12px}.share-text,textarea{border:1px solid var(--accent-border);width:100%;min-height:140px;color:var(--ink);background:#fff;border-radius:10px;padding:12px}.share-text{max-height:50dvh;font-family:inherit;line-height:1.35}.settings-row{justify-content:space-between;align-items:center;gap:12px;min-height:44px;margin:16px 0;display:flex}.settings-row input[type=checkbox]{width:24px;height:24px;accent-color:var(--accent)}.modal-message{background:var(--accent-soft);color:var(--accent-hover);border-radius:10px;padding:10px;font-size:14px}.lineup-animal .animal-thumb{width:100%;min-width:0;height:76px}.lineup-animal .animal-thumb svg{max-width:100%;max-height:100%}.debug-settings{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}.debug-settings summary{cursor:pointer;align-content:center;min-height:44px;font-weight:650}.debug-speed{justify-content:space-between;gap:12px;margin-top:16px;display:flex}.debug-settings input[type=range]{width:100%;height:32px;accent-color:var(--accent)}#modal:has(.lineup-content){padding:20px 8px 20px 24px;overflow:hidden}#modal-content:has(.lineup-content){max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 66px);overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--accent) var(--accent-soft);padding:12px 16px 0 0;overflow-y:auto}#modal:has(.lineup-content) .modal-close{z-index:1;background:var(--paper)}@supports selector(::-webkit-scrollbar){#modal-content:has(.lineup-content){scrollbar-width:auto;scrollbar-color:auto}#modal-content:has(.lineup-content)::-webkit-scrollbar{width:10px;display:block}#modal-content:has(.lineup-content)::-webkit-scrollbar-track{background:var(--accent-soft);border-radius:999px;margin-block:12px}#modal-content:has(.lineup-content)::-webkit-scrollbar-thumb{background:var(--accent);border:2px solid var(--accent-soft);border-radius:999px}#modal-content:has(.lineup-content)::-webkit-scrollbar-thumb:hover{background:var(--accent-hover)}}.result-visual{background:#f5f5e9;border-radius:16px;position:relative;overflow:hidden}.result-visual>img{object-fit:contain;width:100%;max-height:300px;display:block}.attempt-comparison{grid-template-columns:repeat(3,1fr);gap:8px;padding:0;list-style:none;display:grid}.attempt-comparison li{background:var(--accent-soft);border-radius:10px;flex-direction:column;align-items:center;gap:6px;padding:12px 4px;font-size:13px;display:flex}.attempt-comparison strong{font-size:15px}.attempt-comparison .best-attempt{background:var(--accent-soft);color:var(--accent-hover)}.attempt-comparison small{font-size:12px}.stats-grid{text-align:center;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0;display:grid}.stats-grid strong{color:var(--accent);font-size:32px;display:block}.stats-grid span{color:var(--muted);font-size:14px}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:12px 0;display:grid}.calendar-grid>span,.calendar-day{border-radius:8px;place-items:center;min-height:38px;font-size:14px;display:grid}.calendar-day{background:#faf7f2}.calendar-day.complete{background:var(--accent-selected);color:var(--accent-hover)}.calendar-day.today{box-shadow:inset 0 0 0 2px var(--accent)}.weekday{color:var(--muted);font-weight:650}.calendar-nav{justify-content:space-between;align-items:center;gap:8px;display:flex}.data-details{border-top:1px solid var(--line);margin-top:14px;padding-top:10px}.archive-list{gap:6px;display:grid}.archive-list button{background:var(--accent-soft);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;min-height:48px;padding:10px;font-size:14px;display:flex}.history-content .stats-grid{border-block:1px solid var(--line);margin:20px 0 24px;padding:14px 0}.history-content .stats-grid strong{font-size:clamp(22px,5vw,28px)}.history-content .stats-grid small{font-size:.55em;font-weight:600}.history-content .stats-grid span{font-size:12px}.unfinished-stacks{margin-bottom:20px}.unfinished-list{gap:8px;max-height:180px;display:grid;overflow-y:auto}.unfinished-row{background:var(--accent-soft);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.unfinished-row>div{gap:4px;display:grid}.unfinished-row strong{font-size:14px}.unfinished-row span{color:var(--muted);font-size:12px}.unfinished-row button{flex-shrink:0}.history-caption{text-align:center;color:var(--muted);font-size:13px;line-height:1.5}.toast{z-index:6;bottom:calc(16px + env(safe-area-inset-bottom,0px));background:var(--accent-soft);width:max-content;max-width:calc(100% - 32px);color:var(--accent-hover);pointer-events:none;border-radius:10px;font-size:14px;line-height:1.5;position:fixed;left:50%;transform:translate(-50%)}.toast:empty{display:none}.toast.visible{padding:10px 14px}#result-shade{z-index:20;pointer-events:none;opacity:0;background:#30233830;position:fixed;inset:0}#result-shade.is-visible{opacity:1}.result-edge{z-index:21;pointer-events:none;background-color:#f5f2ea;border:0;width:100%;margin:0;padding:0;position:fixed;inset:auto auto auto 0}.result-edge::backdrop{display:none}#result-edge-top{height:max(12px, calc(env(safe-area-inset-top,0px) + 6px));top:-6px}#result-edge-bottom{width:min(100%,760px);height:max(12px, calc(env(safe-area-inset-bottom,0px) + 6px));background-color:#d5dfcd;bottom:-6px;left:50%;transform:translate(-50%)}.result-modal{width:100%;max-width:none;height:100dvh;max-height:none;box-shadow:none;touch-action:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden;transform:none}.result-modal[open]{place-items:center;display:grid}.result-modal::backdrop{background:0 0}.result-modal .result-panel{width:min(360px,100% - 40px);max-height:calc(100dvh - 40px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));border:1px solid var(--line);background:var(--paper);touch-action:pan-y;overscroll-behavior:contain;border-radius:24px;grid-area:1/1;padding:22px;overflow:auto;box-shadow:0 12px 50px #30233822}body:has(.result-modal.is-viewing-tower[open]) #play-controls{visibility:hidden;opacity:0}#tower-view-controls{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 8px);width:min(736px, calc(100% - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));position:absolute;transform:translate(-50%)}#tower-view-return{border:1px solid var(--line);background:var(--paper);width:100%;min-height:48px;color:var(--ink);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}#tower-view-return strong{font-size:14px;font-weight:650}#tower-view-return span{color:var(--muted);font-size:13px}#tower-view-return:hover{background:var(--accent-soft)}.result-summary{text-align:center}.result-summary h2{margin-bottom:8px;font-size:27px}.result-summary p{color:var(--muted);margin-bottom:12px;font-size:17px}.result-actions{justify-content:center;gap:20px;margin-top:8px;display:flex}.result-status{text-align:center;color:var(--accent);font-size:13px}.result-status:empty{display:none}.clipboard-field{opacity:0;width:1px;height:1px;position:fixed;inset:0 auto auto 0}.result-modal button{font-size:16px}.result-run-score{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.result-run-score strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:48px;line-height:1.2}.score-unit{font-family:inherit;font-size:.72em;font-weight:inherit}.result-run-score .medal-icon{font-size:46px}.result-best-score .medal-icon{font-size:28px}.result-summary .new-best-label{color:var(--ink);margin:0 0 4px;font-size:13px;font-weight:800}.result-new-best{animation:.65s cubic-bezier(.22,1,.36,1) both best-reward}.result-new-best .medal-icon{animation:.8s ease-out both medal-reward}@keyframes best-reward{0%{opacity:0;transform:translateY(8px)scale(.94)}60%{opacity:1;transform:translateY(-2px)scale(1.04)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes medal-reward{0%{transform:rotate(-12deg)scale(.8)}55%{transform:rotate(8deg)scale(1.16)}to{transform:rotate(0)scale(1)}}.result-summary .result-attempt{margin:0 0 18px;font-size:14px;font-weight:650}.share-card-preview{aspect-ratio:1;border:1px solid var(--line);background:#f5f3e9;border-radius:14px;width:min(100%,380px,48dvh);margin:16px auto;position:relative;overflow:hidden}.share-card-preview img{width:100%;height:100%;display:block}.share-card-preview img[hidden]{display:none}.share-preparing{text-align:center;color:var(--accent);align-content:center;font-size:14px;position:absolute;inset:0}.share-card-actions{flex-wrap:wrap;gap:8px;display:flex}.share-card-actions button{flex:125px;min-height:44px}.share-card-status{text-align:center;color:var(--accent);font-size:14px;line-height:1.5}.share-card-status:empty{display:none}.share-preview{position:relative}.share-copy-toast{background:var(--accent);color:var(--paper);white-space:nowrap;pointer-events:none;border-radius:20px;padding:8px 14px;font-size:14px;position:absolute;bottom:70px;left:50%;transform:translate(-50%);box-shadow:0 3px 12px #27392226}.result-score-details{color:var(--muted);margin:0 0 20px;font-size:14px}.score-counter{display:inline-block;position:relative}.score-counter-final{opacity:0}.score-counter-reels{pointer-events:none;justify-content:center;display:flex;position:absolute;inset:0}.score-counter-window{width:1ch;height:1.2em;display:block;overflow:hidden}.score-counter-separator{width:auto}.score-counter-strip{display:block}.score-counter-strip>span{height:1.2em;display:block}.score-counter [data-digit]:before{content:attr(data-digit)}.result-summary .result-score-breakdown{text-align:left;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:8px;margin:0 0 20px;padding:14px 4px;font-size:13px;display:grid}.result-score-breakdown>span{white-space:nowrap}.result-score-breakdown b{color:var(--ink);font-variant-numeric:tabular-nums}.result-summary .result-run-score{margin:0 0 20px}.result-summary .result-best-score{margin:0 0 12px;font-size:12px}.score-part{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:16px;display:grid}.score-part b{text-align:right;font-size:14px}.result-play-actions{gap:8px;display:flex}.result-play-actions button{flex:1;min-width:0}.result-actions button{min-width:72px}.tutorial-tooltip{z-index:7;text-align:center;color:#51465a;pointer-events:none;width:min(130px,100vw - 40px);padding:4px;position:absolute;top:20px;left:50%;transform:translate(-50%)}.tutorial-tooltip:not([hidden]):not(.sr-only){animation:.18s ease-out both guide-appear}.tutorial-tooltip h2{text-shadow:0 1px 2px #fffcf8;margin:0 0 4px;font-size:16px;font-weight:700;line-height:1.3}#tutorial-shade{z-index:5;opacity:0;pointer-events:none;background:#36273b66;position:fixed;inset:0}#app:has(.guide-target) #tutorial-shade{opacity:1}#app:has(.guide-target) #tutorial-exit{z-index:6;color:var(--ink)}#app .guide-target{z-index:6;position:relative}.guide-target:not(:disabled){animation:1.4s ease-in-out infinite guide-pulse}.drop-button.guide-target{animation-name:guide-drop-pulse}.animal-option.guide-target{border-color:var(--accent);background:var(--accent-soft)}@keyframes guide-appear{0%{opacity:0}to{opacity:1}}@keyframes guide-pulse{0%,to{box-shadow:0 0 4px #0000}50%{box-shadow:0 0 14px var(--accent-glow)}}@keyframes guide-drop-pulse{0%,to{background:var(--accent-hover);box-shadow:0 0 4px #0000}50%{background:var(--accent-pulse);box-shadow:0 0 14px var(--accent-glow)}}@media (prefers-reduced-motion:reduce){html:not([data-motion=full]) .tutorial-tooltip,html:not([data-motion=full]) .guide-target{animation:none}}#lesson-symbol{min-height:34px;line-height:1;display:block}#lesson-symbol svg{width:34px;height:34px;margin:0 auto;display:block}html[data-motion=reduced] .tutorial-tooltip,html[data-motion=reduced] .guide-target{animation:none}@media (forced-colors:active){#app .guide-target{color:highlighttext;background:highlight;border-color:highlight;animation:none}}@media (pointer:coarse),(max-width:600px){.play-controls{padding:6px 10px}.animal-tray{gap:6px}.animal-option{height:56px;padding:4px 6px}.animal-name{font-size:12px;line-height:14px}}@media (max-width:400px){.brand{gap:4px;font-size:22px}.brand img{width:26px;height:26px}.header-actions{gap:0}.animal-name{font-size:12px}}@media (max-height:500px){.site-header{min-height:44px;padding-block:0}.play-controls{grid-template-columns:minmax(200px,1fr) minmax(100px,.6fr);align-items:stretch;padding:6px 12px;display:grid}.animal-option{height:56px}.animal-name{display:none}}@media (pointer:coarse),(max-width:900px){#app{max-width:none}}:root{--menu-duration:.18s;--menu-ease:cubic-bezier(.22, 1, .36, 1)}dialog{z-index:30;position:fixed}#modal::backdrop{background:0 0}#modal-shade{z-index:29;pointer-events:none;opacity:0;background:#36273b66;position:fixed;inset:0}body:has(#modal[open]:not([inert])) #modal-shade{opacity:1}#modal-shade,#result-shade{transition:opacity var(--menu-duration) var(--menu-ease)}.result-panel,#tower-view-controls,#play-controls{transition:opacity var(--menu-duration) var(--menu-ease), transform var(--menu-duration) var(--menu-ease), visibility var(--menu-duration)}.result-panel{opacity:1;visibility:visible;transition:opacity var(--menu-duration) var(--menu-ease), transform var(--menu-duration) var(--menu-ease);transform:none}.result-modal.is-peeking .result-panel{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--menu-duration) var(--menu-ease), transform var(--menu-duration) var(--menu-ease), visibility 0s var(--menu-duration);transform:translateY(4px)}#tower-view-controls{opacity:0;visibility:hidden;pointer-events:none}.result-modal.is-viewing-tower #tower-view-controls{opacity:1;visibility:visible;pointer-events:auto}details::details-content{content-visibility:visible}.tools-menu{opacity:0;visibility:hidden;transition:opacity var(--menu-duration) var(--menu-ease), transform var(--menu-duration) var(--menu-ease), visibility var(--menu-duration);transform:translateY(4px)}.more-tools[open] .tools-menu{opacity:1;visibility:visible;transform:none}.debug-content{opacity:0;visibility:hidden;transition:grid-template-rows var(--menu-duration) var(--menu-ease), opacity var(--menu-duration) var(--menu-ease), visibility var(--menu-duration);grid-template-rows:0fr;display:grid}.debug-content-inner{min-height:0;overflow:hidden}.debug-settings[open] .debug-content{opacity:1;visibility:visible;grid-template-rows:1fr}@supports not selector(::details-content){details[open]>:not(summary){animation:menu-enter var(--menu-duration) var(--menu-ease)}}@keyframes menu-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}:focus,:focus-visible{outline:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){html:not([data-motion=full]) *,html:not([data-motion=full]) :before,html:not([data-motion=full]) :after{scroll-behavior:auto!important;transition-duration:.001ms!important;transition-delay:0s!important;animation-duration:.001ms!important}}html[data-motion=reduced] *,html[data-motion=reduced] :before,html[data-motion=reduced] :after{transition:none!important;animation:none!important}@media (forced-colors:active){button,.game-card,.notice{border:1px solid buttontext}.animal-option.selected{border-color:highlight}}
