:root{--wood:#9a5f2c;--wood-hi:#c27f3d;--wood-lo:#6a3d19;--wood-edge:#3a200c;--cream:#fff4dc;--gold:#ffc531;--gold-lo:#e08a0b;--ink:#2a1a0c;--slate:#2e3b48;--font:"Trebuchet MS", "Arial Rounded MT Bold", "Segoe UI", system-ui, sans-serif;--hud:clamp(46px, 6.4vmin, 64px);--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px)}*{box-sizing:border-box}html,body{height:100%;font-family:var(--font);color:var(--cream);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;background:#7cc6f2;margin:0;overflow:hidden}#view{touch-action:none;cursor:default;width:100vw;height:100dvh;display:block;position:fixed;inset:0}#view:focus{outline:none}#view.grab{cursor:grab}#view.grabbing{cursor:grabbing}[hidden]{display:none!important}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible{outline-offset:3px;outline:4px solid #fff}.outline,.plank,.pill,h2,.logo span,#banner strong,#result-score,.card b{text-shadow:0 2px 0 var(--ink), 2px 0 0 var(--ink), -2px 0 0 var(--ink), 0 -2px 0 var(--ink), 2px 2px 0 var(--ink), -2px 2px 0 var(--ink), 2px -2px 0 var(--ink), -2px -2px 0 var(--ink), 0 4px 0 #00000059}.plank{color:var(--cream);border:3px solid var(--wood-edge);letter-spacing:.04em;background:repeating-linear-gradient(180deg, #fff0 0 9px, #3c1e082e 9px 11px), linear-gradient(180deg, var(--wood-hi), var(--wood) 45%, var(--wood-lo));box-shadow:inset 0 2px 0 #ffdcaa8c, inset 0 -3px 0 #00000040, 0 4px 0 var(--wood-edge), 0 7px 12px #00000059;border-radius:12px;padding:.35em .9em;font-weight:900;position:relative}button.plank{transition:transform 80ms,filter .12s}button.plank:hover{filter:brightness(1.08)}button.plank:active{box-shadow:inset 0 2px 0 #ffdcaa8c, 0 1px 0 var(--wood-edge);transform:translateY(3px)}.plank.square{width:var(--hud);height:var(--hud);font-size:calc(var(--hud) * .5);place-items:center;padding:0;display:grid}.plank.big{background:linear-gradient(180deg, #ffd85a, var(--gold) 50%, var(--gold-lo));border-color:#6b3a05;padding:.45em 1.6em;font-size:1.6rem}.plank.small{padding:.45em .9em;font-size:.85rem}.pill{background:#202d3ad1;border:2px solid #00000080;border-radius:999px;align-items:center;gap:.35em;padding:.2em .7em;font-weight:900;display:inline-flex;box-shadow:inset 0 1px #ffffff2e}.pill img{width:auto;height:1.5em}.star{clip-path:polygon(50% 0,63% 34%,100% 37%,71% 60%,81% 97%,50% 76%,19% 97%,29% 60%,0 37%,37% 34%);background:#3d4a57;width:1.3em;height:1.3em;display:inline-block}.star.on{background:linear-gradient(180deg, #fff38a, var(--gold) 50%, var(--gold-lo));filter:drop-shadow(0 0 4px #ffd23ccc)}#hud{pointer-events:none;position:fixed;inset:0}#hud>*{pointer-events:auto}#hud #power-hint,#hud #banner,#hud #level-box{pointer-events:none}#pause{top:calc(12px + var(--safe-t));left:calc(12px + var(--safe-l));position:absolute}.pause-glyph{border-left:calc(var(--hud) * .13) solid var(--cream);border-right:calc(var(--hud) * .13) solid var(--cream);width:40%;height:46%;filter:drop-shadow(0 2px 0 var(--ink)) drop-shadow(0 -1px 0 var(--ink)) drop-shadow(1px 0 0 var(--ink)) drop-shadow(-1px 0 0 var(--ink))}.restart-glyph{font-size:1.15em;line-height:1}#level-box{top:calc(10px + var(--safe-t));flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;left:50%;transform:translate(-50%)}#level-title{white-space:nowrap;background:linear-gradient(#4b5662,#2f3943);border-color:#141b22;font-size:clamp(.8rem,2.4vmin,1.25rem);box-shadow:inset 0 2px #fff3,0 4px #141b22,0 6px 10px #0000004d}#hud-stars .star{--rim:#dce6f0;--fill:#34424f;background:var(--rim);position:relative}#hud-stars .star:after{content:"";background:var(--fill);clip-path:polygon(50% 0,63% 34%,100% 37%,71% 60%,81% 97%,50% 76%,19% 97%,29% 60%,0 37%,37% 34%);position:absolute;inset:15%}#hud-stars .star.on{--rim:#fff8cf;--fill:linear-gradient(180deg, #fff38a, var(--gold) 50%, var(--gold-lo))}.hud-row{gap:8px;font-size:clamp(.8rem,2.4vmin,1.15rem);display:flex}#score{top:calc(12px + var(--safe-t));right:calc(12px + var(--safe-r));text-align:right;color:#ffe27a;font-variant-numeric:tabular-nums;min-width:7.5em;font-size:clamp(1.1rem,3.6vmin,1.9rem);position:absolute}#restart{bottom:calc(14px + var(--safe-b));right:calc(14px + var(--safe-r));position:absolute}#cards{left:calc(12px + var(--safe-l));bottom:calc(12px + var(--safe-b));background:#fff8e68c;border-radius:16px;align-items:flex-end;gap:8px;padding:8px;display:flex;position:absolute;box-shadow:0 6px 16px #00000040}#cards:empty{display:none}.card{aspect-ratio:.82;width:clamp(58px,9vmin,92px);color:var(--ink);background:linear-gradient(#fffaf0,#f2e3c4);border:3px solid #c9a46a;border-radius:12px;flex-direction:column;justify-content:flex-end;align-items:center;padding:3px 2px 4px;transition:transform .25s,opacity .25s;display:flex;box-shadow:0 3px #a07b45}.card img{object-fit:contain;flex:1;width:88%;min-height:0}.card b{color:var(--cream);letter-spacing:.03em;font-size:clamp(.62rem,1.7vmin,.9rem);line-height:1}.card small{letter-spacing:.06em;text-align:center;font-size:clamp(.5rem,1.35vmin,.72rem);font-weight:900}.card small.long{letter-spacing:.02em;font-size:clamp(.4rem,1.05vmin,.56rem);line-height:1}.card.current{border-color:var(--gold);transform:translateY(-4px)scale(1.06);box-shadow:0 0 0 3px #fff3a6,0 0 18px #ffc828e6,0 3px #a07b45}.card small{color:var(--power,inherit)}#power-hint{left:50%;bottom:calc(18% + var(--safe-b));white-space:nowrap;background:#1e14088c;border-radius:999px;padding:.3em 1em;font-size:clamp(1rem,3.2vmin,1.6rem);font-weight:900;animation:1s ease-in-out infinite pulse;position:absolute;transform:translate(-50%)}@keyframes pulse{50%{transform:translate(-50%)scale(1.08)}}#power-hint.now{color:#fff;background:linear-gradient(#ffd85a,#e08a0b);animation-duration:.45s;box-shadow:0 0 0 3px #fff3a6,0 0 22px #ffc828e6}#fuse-hint{left:50%;top:calc(22% + var(--safe-t,0px));color:#ffd85a;pointer-events:none;white-space:nowrap;background:#1e1408a6;border-radius:999px;max-width:92vw;padding:.3em 1em;font-size:clamp(.8rem,2.6vmin,1.3rem);font-weight:900;position:absolute;transform:translate(-50%)}#drag-hint{pointer-events:none;z-index:2;width:0;height:0;position:absolute}#drag-hint .hand{filter:drop-shadow(0 4px 4px #00000059);width:60px;height:79px;animation:2.6s ease-in-out infinite hand-drag;position:absolute;top:-4px;left:-30px}#drag-hint .label{white-space:nowrap;color:var(--cream);background:#1e140899;border-radius:999px;padding:.25em .8em;font-size:clamp(.85rem,2.4vmin,1.15rem);font-weight:900;position:absolute;top:-92px;left:0;transform:translate(-50%)}@keyframes hand-drag{0%{opacity:0;transform:translate(0)scale(1.15)}12%{opacity:1;transform:translate(0)scale(1.15)}22%{opacity:1;transform:translate(0)scale(.95)}62%,74%{transform:translate(var(--dx), var(--dy)) scale(.95);opacity:1}82%{transform:translate(var(--dx), var(--dy)) scale(1.15);opacity:0}to{transform:translate(var(--dx), var(--dy)) scale(1.15);opacity:0}}:root[data-motion=reduced] #drag-hint .hand{transform:translate(calc(var(--dx) * .6), calc(var(--dy) * .6));animation:none}#banner{justify-content:center;animation:.5s cubic-bezier(.2,1.4,.4,1) drop;display:flex;position:absolute;top:24%;left:0;right:0}.banner-inner{text-align:center;background:#281a0ca8;border:3px solid #ffe6b480;border-radius:18px;flex-direction:column;align-items:center;gap:.2em;max-width:92vw;padding:.6em 1.6em;display:flex}#banner small{letter-spacing:.2em;color:#ffd76a;font-weight:900}#banner strong{letter-spacing:.03em;font-size:clamp(1.6rem,6vmin,3rem);font-weight:900}#banner span{font-size:clamp(.9rem,2.6vmin,1.25rem);font-weight:700}@keyframes drop{0%{opacity:0;transform:translateY(-40px)}}#banner.out{opacity:0;transition:opacity .3s,transform .3s;transform:translateY(-16px)}#popups{pointer-events:none;position:fixed;inset:0;overflow:hidden}.popup{color:#fff;text-shadow:0 2px #24160a,2px 0 #24160a,-2px 0 #24160a,0 -2px #24160a;white-space:nowrap;font-size:clamp(1rem,3vmin,1.6rem);font-weight:900;position:absolute;transform:translate(-50%,-50%)}.popup.wolf{color:#ffe066;font-size:clamp(1.3rem,4vmin,2.2rem)}.popup.boss{color:#ff7a5c;font-size:clamp(1.1rem,3.4vmin,1.8rem)}.screen{flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:16px;display:flex;position:fixed;inset:0}.screen.dim{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0e161e8c}#title{background:linear-gradient(#143c6e26,#14281459)}#loading{background:linear-gradient(#5db2ea,#9ad6f5 60%,#6fae3c 60%,#4d8a2a)}.logo{filter:drop-shadow(0 8px 10px #00000059);align-items:center;gap:10px;display:flex}.logo img{height:clamp(90px,22vmin,190px)}.logo div{flex-direction:column;line-height:.9;display:flex}.logo span{letter-spacing:.02em;color:#fff;font-size:clamp(2.6rem,11vmin,6rem);font-weight:900;transform:rotate(-3deg)}.logo span+span{color:var(--gold);font-size:clamp(3rem,13vmin,7rem)}.logo.small span{font-size:2.6rem}.logo.small span+span{font-size:3rem}.tagline{text-shadow:0 2px 4px #0009;text-align:center;margin:0;font-size:clamp(1rem,2.8vmin,1.35rem);font-weight:800}.row{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.bar{border:3px solid var(--wood-edge);background:#0000004d;border-radius:999px;width:min(420px,80vw);height:18px;overflow:hidden}.bar i{background:linear-gradient(180deg, #fff38a, var(--gold));width:0;height:100%;transition:width .2s;display:block}#load-text{text-shadow:0 2px 3px #00000080;font-weight:800}h2{letter-spacing:.04em;margin:0;font-size:clamp(1.6rem,5vmin,2.6rem);font-weight:900}h2.heading{font-size:clamp(1.1rem,3.6vmin,1.8rem)}#levels{background:#14281440}#level-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(8px,2vmin,16px);width:min(880px,94vw);display:grid}.level-tile{aspect-ratio:1.15;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:6px;display:flex}.level-tile .num{font-size:clamp(1.5rem,5vmin,2.6rem);line-height:1}.level-tile .name{text-align:center;font-size:clamp(.62rem,1.8vmin,.95rem);line-height:1.1}.level-tile .stars{gap:2px;font-size:clamp(.8rem,2.2vmin,1.1rem);display:flex}.level-tile.locked{filter:grayscale(.85)brightness(.75);cursor:not-allowed}.level-tile.locked .num:after{content:" 🔒";font-size:.6em}.level-tile.boss{background:repeating-linear-gradient(#fff0 0 9px,#3c1e082e 9px 11px),linear-gradient(#d35a3c,#a6321b 50%,#6e1c0e)}.panel{border:4px solid var(--wood-edge);min-width:min(420px,92vw);box-shadow:0 10px 0 var(--wood-edge), 0 18px 30px #0006;color:var(--ink);background:linear-gradient(#fffaecf7,#eedcb8f7);border-radius:22px;flex-direction:column;align-items:center;gap:12px;padding:22px 28px;display:flex}.panel h2{color:#fff}.panel>button.plank:not(.big){min-width:220px}.panel .row .plank{min-width:110px;font-size:1.05rem}#result-stars{gap:10px;margin:12px 0 2px;font-size:clamp(2.4rem,9vmin,4rem);display:flex}#result-stars .star{transition:transform .35s cubic-bezier(.2,1.6,.4,1);transform:scale(.6)}#result-stars .star.on{transform:scale(1)}#result-stars .star:nth-child(2){transform-origin:50% 80%;margin-top:-.3em}#result-score{color:#ffe27a;font-variant-numeric:tabular-nums;font-size:clamp(2rem,7vmin,3.2rem);font-weight:900}#result-tally{color:#4d3a22;flex-direction:column;gap:4px;width:min(320px,78vw);font-weight:800;display:flex}.tally-row{background:#78501e1a;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:3px 10px;display:flex}.tally-row b{font-variant-numeric:tabular-nums;color:#3a2a14}#tally-rescue{color:#4d3a22;background:#6eaa4638;width:min(320px,78vw);font-weight:800}#tally-rescue small{opacity:.8;font-size:.75em;font-weight:700;line-height:1.1;display:block}.tally-row .spares{vertical-align:middle;gap:2px;margin-left:4px;display:inline-flex}.tally-row .spares img{width:auto;height:28px;animation:.35s cubic-bezier(.2,1.6,.4,1) spare-pop}@keyframes spare-pop{0%{transform:scale(0)rotate(-20deg)}}#result-best{text-align:center;color:#4d3a22;min-height:1.3em;font-weight:800}#result-best.new-best{color:#c0561b;animation:1s ease-in-out infinite pulse-best}@keyframes pulse-best{50%{transform:scale(1.08)}}#result-stars .star.pop{animation:.5s cubic-bezier(.2,1.6,.4,1) star-pop}@keyframes star-pop{0%{transform:scale(0)rotate(-35deg)}60%{transform:scale(1.35)rotate(8deg)}to{transform:scale(1)rotate(0)}}#result-stars .star:nth-child(2).pop{animation-name:star-pop-mid}@keyframes star-pop-mid{0%{transform:scale(0)rotate(-35deg)}60%{transform:scale(1.5)rotate(8deg)}to{transform:scale(1.15)rotate(0)}}#result-stars .star:nth-child(2).on{transform:scale(1.15)}.panel.lost #result-score{color:#d8d0c0}:root[data-motion=reduced] #result-stars .star.pop,:root[data-motion=reduced] .tally-row .spares img,:root[data-motion=reduced] #result-best.new-best{animation:none}#total-stars .star{font-size:1rem}@media (max-height:460px) and (orientation:landscape){#results.screen{gap:0;padding:8px}#results .panel{overscroll-behavior:contain;border-radius:18px;gap:4px;max-height:calc(100dvh - 16px);padding:8px 18px 10px;overflow-y:auto}#results .panel h2{margin:0;font-size:1.35rem;line-height:1.1}#result-stars{margin:0;font-size:clamp(1.6rem,9vmin,2.2rem)}#result-stars .star:nth-child(2){margin-top:-.2em}#result-score{font-size:1.8rem;line-height:1.05}#result-tally{gap:2px;width:min(300px,70vw)}#tally-rescue{width:min(300px,70vw);margin-top:0}#results .tally-row{padding:1px 10px;font-size:.9rem}#results .tally-row .spares img{height:20px}#result-best{min-height:0;font-size:.85rem}#result-best:empty{display:none}#results .row{gap:8px}#results .row .plank{min-width:0;padding:.25em .9em;font-size:.95rem}#results .row .plank.big{padding:.25em 1.1em;font-size:1.15rem}#results .panel>button.plank:not(.big){min-width:0;padding:.25em .9em;font-size:.95rem}#result-tip,#result-skip-box,#result-mega{font-size:.8rem}#result-tip{max-width:min(520px,90vw);padding:.25em .7em}#result-mega{padding:.15em .8em}#result-skip-box{flex-direction:row;gap:10px;max-width:min(520px,90vw)}#result-gate{font-size:.85rem}}@media (orientation:portrait){:root{--hud:clamp(52px, 13vmin, 66px)}#level-box{top:calc(10px + var(--safe-t) + var(--hud) + 8px)}#level-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.level-tile{aspect-ratio:1.6}#cards{gap:5px;padding:6px}.card{width:clamp(54px,15vmin,76px)}#power-hint{bottom:calc(22% + var(--safe-b))}}@media (max-height:460px) and (orientation:landscape){#level-grid{grid-template-columns:repeat(4,minmax(0,1fr));width:min(760px,90vw)}.level-tile{aspect-ratio:1.6}.logo img{height:80px}}@media (prefers-reduced-motion:reduce){#banner,#power-hint{animation:none}}:root[data-motion=reduced] #banner,:root[data-motion=reduced] #power-hint{animation:none}#rotate-hint{color:var(--cream);white-space:nowrap;align-items:center;gap:.6em;padding:.5em .9em;font-size:.95rem;animation:.45s cubic-bezier(.2,1.4,.4,1) drop-centred;display:flex;position:absolute;top:24%;left:50%;transform:translate(-50%)}@keyframes drop-centred{0%{opacity:0;transform:translate(-50%,-40px)}}#rotate-hint b{opacity:.8;margin-left:.2em}.phone-glyph{border:3px solid var(--cream);width:16px;height:26px;box-shadow:0 2px 0 var(--ink);border-radius:4px;animation:2.2s ease-in-out infinite turn}@keyframes turn{0%,25%{transform:rotate(0)}55%,85%{transform:rotate(-90deg)}to{transform:rotate(0)}}[data-motion=reduced] .phone-glyph{animation:none;transform:rotate(-90deg)}#flash{pointer-events:none;opacity:0;mix-blend-mode:screen;position:fixed;inset:0}#rec{top:calc(12px + var(--safe-t) + var(--hud) + 6px);right:calc(14px + var(--safe-r));pointer-events:none;font:800 .7rem/1 var(--font);letter-spacing:.08em;color:#fff;background:#14141473;border-radius:999px;padding:.25em .55em .25em 1.3em;position:absolute}#rec:before{content:"";background:#e5372b;border-radius:50%;width:.5em;height:.5em;margin-top:-.25em;position:absolute;top:50%;left:.45em}#playtest-slot{opacity:.9;width:min(420px,100%)}#pause-menu{overscroll-behavior:contain;justify-content:safe center;overflow-y:auto}@media (max-height:460px) and (orientation:landscape){#pause-menu .panel{gap:8px;padding:14px 22px}}#hud #fort-cam,#hud .fort-cam{pointer-events:none;box-shadow:0 0 0 3px var(--wood-edge), 0 0 0 6px var(--wood), 0 0 0 8px var(--wood-edge), 0 8px 16px #00000059;border-radius:4px;position:absolute}#fort-cam span,.fort-cam span{font:900 .68rem/1 var(--font);letter-spacing:.1em;color:var(--cream);background:#202d3ab8;border-radius:999px;padding:.3em .6em;position:absolute;top:6px;left:8px}@media (orientation:portrait){#rotate-hint{top:47%}}.card.more{color:#6a4a1c;justify-content:center;width:auto;min-width:2.4em;padding:0 .5em;font-size:1.1rem;font-weight:900}@media (max-height:460px) and (orientation:landscape){#cards{bottom:calc(8px + var(--safe-b));gap:5px;padding:5px}.card{border-width:2px;width:46px}.card.current{transform:translateY(-3px)scale(1.04)}}#worlds{background:#14281440}#world-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(8px,2vmin,16px);width:min(980px,94vw);display:grid}.world-card{text-align:center;border-radius:18px;flex-direction:column;justify-content:space-between;align-items:center;gap:8px;min-height:clamp(120px,30vmin,230px);padding:14px 10px;display:flex}.world-card .name{font-size:clamp(1rem,3.2vmin,1.5rem);line-height:1.05}.world-card .blurb{text-shadow:0 1px 0 var(--ink);opacity:.95;font-size:clamp(.68rem,1.8vmin,.9rem);font-weight:700;line-height:1.2}.world-card .status{align-items:center;gap:.3em;font-size:clamp(.75rem,2vmin,1rem);display:inline-flex}.world-card.world-meadows{background:repeating-linear-gradient(#fff0 0 9px,#143c0a26 9px 11px),linear-gradient(#8fd35c,#5aa83a 50%,#3b7a25);border-color:#1f3d12}.world-card.locked{filter:grayscale(.7)brightness(.8);cursor:not-allowed}.world-card.locked .status{opacity:.85}.chapter-head{align-items:center;gap:12px;display:flex}.chapter-head h2{text-align:center;flex-direction:column;align-items:center;min-width:min(460px,58vw);margin:0;line-height:1.05;display:flex}.chapter-head h2 small{letter-spacing:.14em;color:#ffe27a;font-size:.62em}.chapter-head .plank.square:disabled{opacity:.35;cursor:default}#level-grid{grid-template-columns:repeat(5,minmax(0,1fr))}#chapter-gate{background:#281a0cb8;font-size:clamp(.8rem,2.4vmin,1.05rem)}#chapter-dots{gap:8px;display:flex}#chapter-dots i{width:10px;height:10px;box-shadow:0 1px 0 var(--ink);background:#ffffff73;border-radius:50%}#chapter-dots i.on{background:var(--gold)}#result-gate{text-align:center;align-items:center;gap:.35em;max-width:34em;font-size:.95rem;font-weight:800;display:flex}#result-join{text-align:center;flex-direction:column;align-items:center;gap:.4em;max-width:34em;font-size:.95rem;font-weight:800;display:flex}#result-join[hidden]{display:none}#result-join-btn{text-decoration:none;display:inline-block}#result-gate .star{flex:none}.panel.wide{width:min(760px,94vw);max-height:calc(100dvh - 32px)}.panel h3{color:var(--wood-lo);letter-spacing:.06em;margin:.2em 0;font-size:1.05rem}.scroll-body{overscroll-behavior:contain;width:100%;padding-right:4px;overflow-y:auto}#settings,#credits,#achievements{justify-content:safe center;overflow-y:auto}.settings-cols{grid-template-columns:1fr 1fr;gap:14px;width:100%;display:grid}.settings-cols fieldset{border:3px solid #3a200c59;border-radius:14px;flex-direction:column;gap:8px;margin:0;padding:8px 14px 12px;display:flex}.settings-cols legend{letter-spacing:.1em;color:var(--wood-lo);padding:0 6px;font-weight:900}.slider{grid-template-columns:1fr 3.2em;grid-template-areas:"label value""input input";align-items:center;gap:2px 8px;font-size:.92rem;font-weight:800;display:grid}.slider span{grid-area:label}.slider span i{opacity:.7;font-size:.85em;font-weight:600}.slider output{text-align:right;font-variant-numeric:tabular-nums;grid-area:value}.slider input{width:100%;accent-color:var(--wood);grid-area:input;height:26px}.toggle{width:100%;color:var(--ink);text-align:left;background:#fff9;border:3px solid #3a200c73;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:.45em .8em;font-size:.95rem;font-weight:800;display:flex}.toggle b{text-align:center;color:#fff;letter-spacing:.06em;background:#8a8278;border-radius:999px;min-width:4.6em;padding:.15em .5em;font-size:.82rem}.toggle[aria-pressed=true] b{background:#3f8a2a}.setting-note{min-height:2.4em;color:var(--wood-lo);margin:0;font-size:.85rem;font-weight:700}#credits-body section{margin-bottom:10px}#credits-body p{margin:.25em 0;font-weight:600;line-height:1.35}#credits-body p.small{opacity:.8;font-size:.82rem}.licences{gap:4px;margin:0;padding:0;list-style:none;display:grid}.licences li{flex-wrap:wrap;align-items:baseline;gap:.2em .6em;font-size:.9rem;display:flex}.licences span{color:#3f6a2a;font-weight:800}.licences small{opacity:.75}#achievement-progress{width:100%;height:14px;accent-color:var(--gold-lo);background:#0000001f;border:2px solid #3a200c73;border-radius:999px;overflow:hidden}#achievement-progress::-webkit-progress-bar{background:#0000001f}#achievement-progress::-webkit-progress-value{background:var(--gold-lo)}#achievement-progress::-moz-progress-bar{background:var(--gold-lo)}#achievement-filters{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}#achievement-filters button{min-width:0;padding:.3em 1em;font-size:.9rem}#achievement-filters button[aria-pressed=true]{outline:3px solid var(--gold-lo);outline-offset:1px;filter:brightness(1.12)}#achievement-list{flex-direction:column;gap:10px;display:flex}#achievement-empty{color:var(--wood-lo);margin:0;font-weight:700}#achievement-list .ach-group>h3{z-index:1;background:var(--wood-lo,#5a3a1a);color:var(--cream,#fff4dc);letter-spacing:.14em;border-radius:10px;justify-content:space-between;align-items:baseline;margin:0 0 6px;padding:4px 10px;font-size:.9rem;display:flex;position:sticky;top:0}#achievement-list .ach-group>h3 small{letter-spacing:.06em;opacity:.85;font-size:.8rem}#achievement-list ul{grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}#achievement-list li{opacity:.65;background:#00000014;border:2px solid #3a200c40;border-radius:12px;flex-direction:column;gap:2px;padding:8px 10px 8px 40px;display:flex;position:relative}#achievement-list li:before{content:"🔒";font-size:1.1rem;position:absolute;top:50%;left:10px;transform:translateY(-50%)}#achievement-list li.got{opacity:1;border-color:var(--gold-lo);background:#ffd2504d}#achievement-list li.got:before{content:"★";color:var(--gold-lo);font-size:1.4rem}#achievement-list b{font-size:.95rem}#achievement-list li span{font-size:.82rem;font-weight:600}#achievement-list li small{opacity:.7;font-size:.72rem;font-weight:700}#toasts{top:calc(12px + var(--safe-t) + var(--hud) + 52px);pointer-events:none;z-index:20;flex-direction:column;gap:8px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{border:3px solid var(--gold);max-width:min(92vw,440px);color:var(--cream);text-align:center;background:#281a0cdb;border-radius:14px;justify-items:center;padding:.5em 1.2em;transition:opacity .4s,transform .4s;animation:.45s cubic-bezier(.2,1.4,.4,1) drop;display:grid}.toast small{letter-spacing:.18em;color:var(--gold);font-size:.68rem;font-weight:900}.toast b{font-size:1.1rem}.toast span{font-size:.82rem;font-weight:600}.toast.out{opacity:0;transform:translateY(-10px)}:root[data-motion=reduced] .toast{animation:none}#toasts.over-results{left:calc(10px + var(--safe-l));top:calc(20px + var(--safe-t) + var(--hud));width:max(150px,min(260px,50vw - 240px));transform:none}@media (orientation:portrait){#toasts.over-results{top:auto;left:50%;bottom:calc(10px + var(--safe-b));width:max-content;transform:translate(-50%)}}@media (max-height:460px) and (orientation:landscape){#toasts{left:calc(10px + var(--safe-l));top:calc(20px + var(--safe-t) + var(--hud));width:max(150px,min(200px,50vw - 225px));transform:none}.toast{padding:.4em .7em}.toast b{font-size:.95rem}.toast span{font-size:.72rem}}#hud #aim-anchor{pointer-events:none;border:4px solid #fff4dce6;border-radius:50%;width:54px;height:54px;margin:-27px 0 0 -27px;position:absolute;box-shadow:0 0 0 3px #2a1a0c99,inset 0 0 0 3px #2a1a0c59}:root[data-cues=shapes] .star.on{filter:drop-shadow(0 0 1.5px #000)drop-shadow(0 0 1px #000)}:root[data-cues=shapes] .star:not(.on){opacity:.55}:root[data-cues=shapes] #power-hint.now{outline:4px dashed var(--ink);outline-offset:2px}:root.large-ui{--hud:clamp(58px, 8.6vmin, 80px);font-size:118%}:root.large-ui .card{width:clamp(70px,11.5vmin,108px)}:root.large-ui #power-hint{font-size:clamp(1.25rem,4vmin,2rem)}:root.large-ui .popup{font-size:clamp(1.2rem,3.6vmin,1.9rem)}:root.large-ui .popup.wolf{font-size:clamp(1.5rem,4.6vmin,2.6rem)}@media (orientation:portrait){#world-grid,#level-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.level-tile:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc(50% - clamp(4px,1vmin,8px))}.settings-cols,#achievement-list ul{grid-template-columns:1fr}.chapter-head h2{min-width:0;font-size:1rem}}@media (max-height:460px) and (orientation:landscape){#world-grid{width:min(820px,92vw)}.world-card{gap:4px;min-height:0;padding:8px}.world-card .blurb{display:none}#level-grid{grid-template-columns:repeat(5,minmax(0,1fr))}#levels,#worlds{gap:10px}.panel.wide{gap:8px;padding:12px 18px}.settings-cols fieldset{gap:4px;padding:4px 10px 8px}.toggle{padding:.3em .7em;font-size:.85rem}.slider{font-size:.82rem}.slider input{height:20px}.setting-note{min-height:0}#achievements .panel{grid-template:"title filters back""bar bar bar""list list list"minmax(0,1fr)"empty empty empty"/1fr auto auto;align-items:center;gap:6px 12px;height:calc(100dvh - 32px);display:grid}#achievements-title{text-align:left;grid-area:title;margin:0;font-size:1.5rem}#achievement-filters{flex-wrap:nowrap;grid-area:filters}#achievement-filters button{padding:.2em .8em;font-size:.8rem}#achievements-back{grid-area:back;min-width:0;padding:.3em 1.2em;font-size:1.1rem}#achievement-progress{grid-area:bar;height:8px}#achievement-list{grid-area:list;align-self:stretch;min-height:0}#achievement-empty{grid-area:empty}#achievement-list .ach-group>h3{padding:2px 10px;font-size:.8rem}#achievement-list li{padding:5px 8px 5px 34px}#achievement-list li:before{left:8px}}#hud{--fc-w:clamp(58px, 9vmin, 92px)}.face-card{bottom:calc(12px + var(--safe-b));right:calc(26px + var(--restart-w,var(--hud)) + var(--safe-r));width:var(--fc-w);aspect-ratio:.7;color:var(--ink);cursor:pointer;background:linear-gradient(#fff,#f6eedd);border:3px solid #b3161c;border-radius:10px;flex-direction:column;justify-content:flex-end;align-items:center;padding:3px 2px 4px;transition:transform .2s,box-shadow .2s;display:flex;position:absolute;box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 5px #e9b43a,0 3px #7a1014,0 6px 14px #0000004d}.face-card:before,.face-card:after{content:"♠";color:#1b1b1b;font-size:clamp(.7rem,1.8vmin,1rem);line-height:1;position:absolute}.face-card:before{top:4px;left:6px}.face-card:after{bottom:4px;right:6px;transform:rotate(180deg)}.face-card img{object-fit:contain;flex:1;width:92%;min-height:0}.face-card b{color:#b3161c;letter-spacing:.05em;font-family:inherit;font-size:clamp(.62rem,1.7vmin,.9rem);font-weight:900;line-height:1}.face-card small{letter-spacing:.08em;color:#6a4a1c;font-size:clamp(.45rem,1.2vmin,.62rem);font-weight:900}.face-card[aria-pressed=true]{transform:translateY(-10px)rotate(-6deg)scale(1.08);box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 5px #e9b43a,0 0 0 4px #fff3a6,0 0 24px #ffc828f2,0 3px #7a1014}.face-card:focus-visible{outline-offset:2px;outline:4px solid #fff3a6}.card.jack small{color:#b3161c}.card.mega small{color:#c48a06}.face-card.mega-offer{right:calc(26px + var(--restart-w,var(--hud)) + var(--safe-r) + var(--fc-w) + 12px);background:linear-gradient(#fff6c8,#f7d66a);border-color:#c48a06;animation:1.6s ease-in-out infinite mega-glow;box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 5px #c48a06,0 3px #7a5208,0 0 18px #ffc828b3}#face-card[hidden]+.face-card.mega-offer,.face-card.mega-offer.solo{right:calc(26px + var(--restart-w,var(--hud)) + var(--safe-r))}.face-card.mega-offer:before,.face-card.mega-offer:after{content:"★";color:#c48a06}.face-card.mega-offer b{color:#8a5a00}@keyframes mega-glow{50%{box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 5px #c48a06,0 3px #7a5208,0 0 30px #ffd23c}}:root[data-motion=reduced] .face-card.mega-offer{animation:none}#result-mega{color:#4d3a22;text-align:center;background:linear-gradient(#fff3a6,#f2b31c);border:3px solid #8a5a00;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:.3em 1em;font-weight:800;display:flex}#result-mega b{letter-spacing:.08em;color:#6b3a05;font-size:1.15em}#result-mega b:before{content:"★"}#result-mega b:after{content:" ★"}#result-skip-box{color:#4d3a22;text-align:center;flex-direction:column;align-items:center;gap:6px;max-width:min(360px,80vw);font-weight:800;display:flex}.panel.picture{text-align:center;gap:8px;max-width:min(480px,92vw)}.picture-kicker{letter-spacing:.2em;color:var(--gold-lo);font-weight:900}#picture-img{object-fit:contain;filter:drop-shadow(0 6px 10px #00000040);width:min(200px,42vmin);height:min(170px,30vmin)}#picture-lines{color:#4d3a22;flex-direction:column;gap:6px;margin:0;padding:0;font-size:clamp(.85rem,2.4vmin,1.05rem);font-weight:800;list-style:none;display:flex}#picture-note{color:#6b5638;margin:2px 0 0;font-size:clamp(.75rem,2.1vmin,.9rem);font-style:italic;font-weight:700}#picture-lines li:before{content:"★";color:var(--gold-lo)}#pause-tips{flex-wrap:wrap;justify-content:center}.tips-label{letter-spacing:.12em;color:#6a4a1c;align-self:center;font-weight:900}#result-tip{color:#4d3a22;text-align:center;background:#fff3c4;border:2px dashed #c48a06;border-radius:12px;max-width:min(380px,82vw);padding:.45em .9em;font-weight:800}#result-tip b{color:#b3161c;letter-spacing:.08em}@media (max-height:460px) and (orientation:landscape){.panel.picture{gap:4px;padding:10px 20px}#picture-img{height:22vh}#picture-lines{gap:2px;font-size:.78rem}}.level-tile .tag{letter-spacing:.08em;color:var(--cream);background:#2818088c;border-radius:6px;padding:1px 6px;font-size:clamp(.5rem,1.4vmin,.7rem);font-weight:900}.level-tile .tag.mega{color:#5a3400;background:linear-gradient(#fff3a6,#e0a20b)}.card.leaving{opacity:.45;transform:scale(.92)}.card.leaving:after{content:"RUNS OFF";color:#fff;background:#b3161c;border-radius:4px;padding:1px 4px;font-size:clamp(.45rem,1.2vmin,.62rem);font-weight:900;position:absolute;transform:rotate(-12deg)translateY(-1.4em)}.card{position:relative}#card-note,#relaunch-bar{left:50%;bottom:calc(18% + var(--safe-b));color:var(--cream);white-space:nowrap;text-align:center;pointer-events:none;background:#1e1408b3;border-radius:999px;padding:.35em 1em;font-size:clamp(.85rem,2.6vmin,1.3rem);font-weight:900;position:absolute;transform:translate(-50%)}#card-note b{color:#ffd85a}#relaunch-bar{top:calc(var(--hud) + 74px + var(--safe-t));pointer-events:auto;background:#780c10c7;border:2px solid #ffd85a;align-items:center;gap:.8em;display:flex;bottom:auto}#relaunch-bar .plank.small{font-size:.8em}@media (orientation:portrait){#hud{--fc-w:clamp(52px, 14vmin, 72px)}#card-note{white-space:normal;width:86vw;bottom:calc(24% + var(--safe-b))}#relaunch-bar{white-space:normal;width:90vw;top:calc(var(--hud) + 92px + var(--safe-t));flex-wrap:wrap;justify-content:center}}@media (max-height:460px) and (orientation:landscape){#hud{--fc-w:44px}.face-card{bottom:calc(8px + var(--safe-b));border-width:2px}.face-card:before,.face-card:after{font-size:.45rem}.face-card:before{top:3px;left:3px}.face-card:after{bottom:2px;right:2px}.face-card.mega-offer small{letter-spacing:0;font-size:.42rem}#relaunch-bar{top:calc(var(--hud) + 42px + var(--safe-t))}#card-note{bottom:calc(26% + var(--safe-b))}}:root.large-ui #hud{--fc-w:clamp(70px, 11.5vmin, 108px)}:root[data-motion=reduced] .face-card,:root[data-motion=reduced] .card{transition:none}.slot-panel{width:100%}#feedback{z-index:30;justify-content:safe center;overflow-y:auto}#feedback .panel{gap:10px;width:min(640px,94vw);max-height:none}.feedback-fun{border:0;width:100%;margin:0;padding:0}.feedback-fun legend,.feedback-field>span{color:var(--wood-lo);margin-bottom:6px;padding:0;font-size:1.02rem;font-weight:900}.feedback-fun legend{text-align:center;width:100%}#feedback-fun{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;width:100%;display:grid}#feedback-fun .fun{border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:64px;padding:6px 2px;display:flex}#feedback-fun .fun b{font-size:1.7rem;line-height:1}#feedback-fun .fun small{letter-spacing:.02em;white-space:nowrap;font-size:.74rem;line-height:1.1}#feedback-fun .fun[aria-pressed=true]{background:linear-gradient(180deg, #ffd85a, var(--gold) 50%, var(--gold-lo));border-color:#6b3a05;box-shadow:inset 0 2px #fff0beb3,0 4px #6b3a05,0 0 0 4px #ffc53173,0 7px 12px #00000059}:root[data-cues=shapes] #feedback-fun .fun[aria-pressed=true]{outline:4px dashed var(--ink);outline-offset:2px}.feedback-field{flex-direction:column;width:100%;display:flex;position:relative}.feedback-field i{opacity:.75;font-weight:700}#feedback textarea,#feedback input[type=text]{width:100%;font:inherit;color:var(--ink);-webkit-user-select:text;user-select:text;touch-action:manipulation;background:#fffaf0;border:3px solid #3a200c8c;border-radius:12px;padding:.5em .7em;font-size:max(16px,1rem);font-weight:600}#feedback textarea{resize:vertical;min-height:5.5em;max-height:40vh;line-height:1.35}#feedback textarea:focus-visible,#feedback input[type=text]:focus-visible{outline:4px solid var(--gold);outline-offset:1px;border-color:var(--wood-edge)}#feedback-count{color:var(--wood-lo);opacity:.8;pointer-events:none;font-weight:800;position:absolute;bottom:6px;right:10px}.feedback-hp{width:1px;height:1px;position:absolute;top:auto;left:-10000px;overflow:hidden}#feedback-status{text-align:center;min-height:1.4em;color:var(--wood-lo);margin:0;font-weight:800}#feedback-status.sent{color:#2f7a1f;font-size:1.1rem}#feedback-status.error{color:#a6321b}#feedback-send:disabled{filter:grayscale(.6)brightness(.9);cursor:progress}#feedback-context{color:var(--wood-lo);opacity:.75;text-align:center;font-size:.72rem;font-weight:700}#feedback .panel>.row .plank{min-width:130px}@media (orientation:portrait){#feedback .panel{padding:16px 14px}#feedback-fun{gap:5px}#feedback-fun .fun{min-height:60px}#feedback-fun .fun b{font-size:1.45rem}#feedback-fun .fun small{font-size:.62rem}}@media (max-height:460px) and (orientation:landscape){#feedback .panel{gap:6px;padding:10px 18px}#feedback h2{font-size:1.3rem}#feedback-fun .fun{flex-direction:row;gap:6px;min-height:44px}#feedback-fun .fun b{font-size:1.3rem}.feedback-fun legend,.feedback-field>span{margin-bottom:3px;font-size:.92rem}#feedback textarea{height:3.4em;min-height:0}#feedback-context{display:none}}.df-webapp{box-sizing:border-box;width:100%;height:var(--webapp-height,100dvh);padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);overscroll-behavior:none;overflow:hidden}[data-webapp-playing=true]{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;overscroll-behavior:none}[data-webapp-controls],[data-webapp-controls] *{touch-action:manipulation}.df-webapp-loading{z-index:20;color:#f2f4ef;text-align:center;background:#101b24;align-content:center;justify-items:center;gap:1rem;padding:2rem;font:1rem/1.5 system-ui,sans-serif;display:grid;position:absolute;inset:0}.df-webapp-loading[hidden]{display:none}.df-webapp-loading progress{accent-color:#a3d49b;width:min(24rem,100%);height:1.25rem}.df-webapp-loading button{min-height:44px;font:inherit;padding:.6rem 1.2rem}.df-webapp-perf{top:max(.5rem, env(safe-area-inset-top));left:max(.5rem, env(safe-area-inset-left));z-index:10;pointer-events:none;color:#b1f0ac;white-space:pre;background:#081018e8;margin:0;padding:.6rem;font:12px/1.5 monospace;position:absolute}#card-choice{z-index:5;background:#1e1408b8;border-radius:14px;flex-direction:row-reverse;gap:8px;padding:8px;display:flex;position:fixed;box-shadow:0 6px 16px #00000059}#card-choice[hidden]{display:none}.card-option{aspect-ratio:.7;cursor:pointer;width:clamp(50px,8vmin,80px);color:var(--ink);background:linear-gradient(#fff,#f6eedd);border:3px solid #b3161c;border-radius:9px;flex-direction:column;justify-content:flex-end;align-items:center;padding:3px 2px 4px;transition:transform .15s;display:flex;box-shadow:inset 0 0 0 2px #fff,inset 0 0 0 4px #e9b43a,0 3px #7a1014}.card-option img{object-fit:contain;flex:1;width:92%;min-height:0}.card-option b{color:#b3161c;letter-spacing:.05em;font-size:clamp(.55rem,1.5vmin,.8rem);font-weight:900;line-height:1}.card-option:hover,.card-option:focus-visible{outline:none;transform:translateY(-6px)rotate(-4deg);box-shadow:inset 0 0 0 2px #fff,inset 0 0 0 4px #e9b43a,0 0 0 3px #fff3a6,0 0 16px #ffc828e6,0 3px #7a1014}:root.large-ui .card-option{width:clamp(64px,10vmin,96px)}@media (max-height:460px) and (orientation:landscape){.card-option{border-width:2px;width:40px}#card-choice{gap:5px;padding:5px}}:root[data-motion=reduced] .card-option{transition:none}.world-card.world-workshop{background:repeating-linear-gradient(90deg,#0000 0 46px,#2814052e 46px 49px),linear-gradient(#c48a4a,#9a6430 55%,#714420);border-color:#3b220e;flex-flow:wrap;grid-column:1/-1;justify-content:center;gap:4px 18px;min-height:0;padding-block:10px}.world-card.world-workshop .blurb{flex-basis:auto}.world-card.world-wildwood{background:radial-gradient(120% 60% at 50% 0,#ffd67873,#ffd67800 70%),repeating-linear-gradient(90deg,#0000 0 22px,#0a1e0a38 22px 26px),linear-gradient(#4f8f3a,#2f6a2c 50%,#1d4a22);border-color:#12301a}.world-card.world-frostfell{background:radial-gradient(circle at 16% 12%,#ffffffd9 0 2px,#fff0 3px),radial-gradient(circle at 74% 9%,#fffc 0 2px,#fff0 3px),radial-gradient(circle at 46% 20%,#ffffffb3 0 1.5px,#fff0 2.5px),radial-gradient(circle at 90% 24%,#ffffffbf 0 2px,#fff0 3px),radial-gradient(circle at 30% 88%,#ffffffb3 0 1.5px,#fff0 2.5px),linear-gradient(#7fb6e6,#4f86c0 52%,#2f5f98);border-color:#17304f}.world-card.world-wolfcrag{background:repeating-linear-gradient(#fff0 0 9px,#0a060c33 9px 11px),linear-gradient(#6b6475,#4a4452 45%,#5a2f2a 80%,#c4501f);border-color:#1c1318}.level-tile .num.bonus-kind{letter-spacing:.04em;overflow-wrap:normal;font-size:clamp(1rem,3.4vmin,1.8rem)}.level-tile .tag.need{white-space:nowrap;align-items:center;gap:3px;display:inline-flex}.level-tile .tag.need .star{width:1.1em;height:1.1em}#hud:has(#restart.free-reset){--reset-word:clamp(.62rem, 1.8vmin, .85rem);--restart-w:calc(var(--hud) * .5 + 36px + var(--reset-word) * 4.2)}#restart.free-reset{width:var(--restart-w);justify-content:center;align-items:center;gap:6px;padding-inline:0;display:inline-flex}#restart .reset-word{letter-spacing:.1em;font-weight:900;font-size:var(--reset-word,clamp(.62rem, 1.8vmin, .85rem));display:none}#restart.free-reset .reset-word{display:inline}.world-card.access-locked{cursor:pointer}.world-card.access-locked .status.join{border:2px solid var(--ink,#1d1209);color:var(--ink,#1d1209);text-shadow:none;letter-spacing:.02em;text-align:center;background:linear-gradient(#ffe08a,#f4b73a);border-radius:999px;gap:.5em;padding:.35em .8em;font-weight:800;line-height:1.15;box-shadow:0 2px #00000059}.world-card.access-locked:hover .status.join,.world-card.access-locked:focus-visible .status.join{background:linear-gradient(#fff0b3,#ffc94d)}.world-card.access-locked .padlock{background:currentColor;border-radius:.12em;flex:none;width:.8em;height:.62em;margin-top:.35em;display:inline-block;position:relative}.world-card.access-locked .padlock:before{content:"";box-sizing:border-box;border:.13em solid;border-bottom:0;border-radius:.3em .3em 0 0;width:.5em;height:.42em;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}:root[data-contrast=high] .world-card.access-locked{filter:none;opacity:1;border-style:solid}:root[data-contrast=high] .world-card.access-locked .status.join{background:var(--hc-bg,#000);color:var(--hc-fg,#fff);border-color:currentColor}#ending{z-index:40;pointer-events:auto;cursor:pointer;justify-content:flex-end;gap:0;padding:0}#ending .ending-bar{background:#0b0806;height:11vh;transition:height .8s;position:absolute;left:0;right:0}#ending .ending-bar.top{top:0}#ending .ending-bar.bottom{bottom:0}#ending-line{left:50%;bottom:calc(11vh + 18px + var(--safe-b));text-align:center;color:#fff;opacity:0;width:min(820px,100vw - 32px);margin:0;font-size:clamp(1.15rem,4.2vmin,2.1rem);font-weight:900;line-height:1.2;position:absolute;transform:translate(-50%)}#ending-line.in{animation:.7s ease-out forwards ending-line-in}@keyframes ending-line-in{0%{opacity:0;transform:translate(-50%,14px)}to{opacity:1;transform:translate(-50%)}}#ending-art{filter:drop-shadow(0 8px 10px #00000073);opacity:0;width:auto;height:min(26vh,220px);position:absolute;top:22vh;left:50%;transform:translate(-50%)}#ending-art.in{animation:.9s cubic-bezier(.2,1.4,.4,1) forwards ending-art-in}@keyframes ending-art-in{0%{opacity:0;transform:translate(-50%,-30px)rotate(-8deg)scale(.8)}to{opacity:1;transform:translate(-50%)rotate(0)scale(1)}}#ending-flock{height:min(18vh,130px);position:absolute;top:34vh;left:0;right:0;overflow:hidden}#ending-flock img{width:auto;height:100%;animation:ending-march 4.4s linear calc(var(--i) * .24s) forwards, ending-bob .42s ease-in-out infinite alternate;filter:drop-shadow(0 6px 6px #00000059);position:absolute;bottom:0;left:110vw}@keyframes ending-march{0%{left:110vw}to{left:-25vw}}@keyframes ending-bob{0%{margin-bottom:0}to{margin-bottom:8px}}#ending-card{cursor:default;animation:.6s ease-out ending-card-in;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#ending-card h2{color:var(--gold);font-size:clamp(2.4rem,10vmin,4.6rem)}#ending-thanks{color:#4d3a22;text-align:center;margin:0;font-size:clamp(1rem,3vmin,1.35rem);font-weight:800}@keyframes ending-card-in{0%{opacity:0;transform:translate(-50%,-46%)scale(.94)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}#ending-skip{right:calc(16px + var(--safe-r));top:calc(11vh + 12px + var(--safe-t));z-index:1;position:absolute}#ending.reduced #ending-line.in,#ending.reduced #ending-art.in,#ending.reduced #ending-card{opacity:1;animation:none}#ending.reduced #ending-flock{justify-content:center;gap:6px;display:flex}#ending.reduced #ending-flock[hidden]{display:none}#ending.reduced #ending-flock img{height:80%;animation:none;position:static}@media (max-width:600px){#ending .ending-bar{height:8vh}#ending-line{bottom:calc(8vh + 12px + var(--safe-b))}}#ending-vista{opacity:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}#ending-vista[hidden]{display:none}#ending-vista.in{animation:1.6s ease-out forwards ending-vista-in}#ending-vista img{object-fit:cover;object-position:68% 62%;width:100%;height:100%;display:block}@keyframes ending-vista-in{0%{opacity:0}to{opacity:1}}#ending-art.felled{top:34vh;rotate:84deg}#ending-card.long h2{text-align:center;white-space:nowrap;font-size:clamp(1.7rem,6.4vmin,3.2rem)}#ending-art.on-vista{top:auto;left:24%;bottom:calc(23vh + var(--safe-b));height:min(24vh,200px,36vw)}#ending.reduced #ending-vista.in{opacity:1;animation:none}#stampede-clock{top:calc(12px + var(--safe-t));left:calc(80px + var(--safe-l));text-align:centre;padding:7px 18px;position:absolute}#stampede-time{font-variant-numeric:tabular-nums;font-size:28px;display:block}#stampede-warning{letter-spacing:.06em;font-size:12px;display:block}#stampede-clock.hurry{color:#ffdf78;outline:3px solid #ffce59}#hud.stampede #cards{max-width:calc(100vw - 160px)}#hud.stampede .card{width:66px}#hud.stampede #card-note{max-width:90vw}#stampede-more-time-note{max-width:360px;margin:8px auto;font-size:14px}#stampede-more-time{min-height:44px}.level-tile .num{overflow-wrap:anywhere}@media (orientation:portrait){#stampede-clock{left:80px;right:calc(12px + var(--safe-r));justify-content:space-between;align-items:centre;gap:8px;padding:7px 10px;display:flex;transform:none}#stampede-clock[hidden]{display:none}#hud.stampede #score{top:calc(106px + var(--safe-t));width:82px;min-width:0;padding:6px 8px;font-size:17px}#hud.stampede #cards{gap:3px;max-width:calc(100vw - 100px);padding:4px}#hud.stampede .card{width:54px}#hud.stampede #face-card{bottom:calc(118px + var(--safe-b))}#hud.stampede #power-hint{bottom:calc(168px + var(--safe-b))}}#settings .panel.wide{max-height:none}#settings [data-slot=settings\.panels]{grid-template-columns:1fr 1fr;gap:14px;width:100%;display:grid}#settings .controls-panel{grid-column:1/-1}.access-fieldset,.save-fieldset,.controls-fieldset{border:3px solid #3a200c59;border-radius:14px;flex-direction:column;gap:8px;min-width:0;margin:0;padding:8px 14px 12px;display:flex}.access-fieldset legend,.save-fieldset legend,.controls-fieldset legend{letter-spacing:.1em;color:var(--wood-lo);padding:0 6px;font-weight:900}.toggle.cycle b{background:#5b4a8a}.toggle:disabled{opacity:.5;cursor:default}.save-status[data-kind=error]{color:#b3161c}.save-status[data-kind=ok]{color:#2f6a1a}.save-fieldset .row,.controls-fieldset .row{justify-content:flex-start;gap:8px}.save-fieldset .plank.small{min-width:0;padding:.4em .8em;font-size:.8rem}.paste-box{flex-direction:column;gap:6px;display:flex}.paste-box textarea{resize:vertical;-webkit-user-select:text;user-select:text;width:100%;color:var(--ink);background:#fffc;border:3px solid #3a200c73;border-radius:10px;padding:.4em .6em;font:600 .8rem/1.3 ui-monospace,monospace}.import-review{color:var(--ink);background:#fff3c4;border:3px dashed #c48a06;border-radius:12px;flex-direction:column;gap:4px;padding:8px 12px;display:flex}.import-review p{margin:0;font-size:.85rem;font-weight:700}.import-verdict{color:#8a3a05}.remap-grid{grid-template-columns:minmax(8em,1.5fr) 1fr 1fr;align-items:center;gap:6px 10px;font-size:.85rem;font-weight:800;display:grid}.remap-grid>b{letter-spacing:.1em;color:var(--wood-lo);font-size:.72rem}.remap-label{color:var(--ink)}.remap{min-height:38px;color:var(--ink);text-align:center;overflow-wrap:anywhere;background:#ffffffb3;border:3px solid #3a200c73;border-radius:10px;padding:.3em .6em;font-size:.85rem;font-weight:800}.remap.waiting{background:var(--gold);border-color:#6b3a05}.remap-fixed{text-align:center;color:var(--wood-lo);font-size:.8rem;font-weight:700}@media (orientation:portrait){#settings [data-slot=settings\.panels]{grid-template-columns:1fr}.remap-grid{grid-template-columns:1fr 1fr}.remap-grid>b:first-child{display:none}.remap-label{grid-column:1/-1;margin-top:6px}}#hud #slow-aim{right:calc(14px + var(--safe-r));bottom:calc(14px + var(--hud) + 16px + var(--safe-b));min-width:calc(var(--hud) * 1.25);touch-action:none;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:0;padding:.3em .6em;line-height:1.1;display:flex;position:absolute}#hud:has(.face-card:not([hidden])) #slow-aim{bottom:calc(12px + var(--safe-b) + var(--fc-w) / .7 * 1.05 + 20px)}#slow-aim b{font-size:.95rem}#slow-aim small{letter-spacing:.06em;font-size:.6rem}#slow-aim.held{filter:brightness(1.2);outline-offset:2px;outline:4px solid #fff3a6}.df-captions{left:50%;bottom:calc(14px + var(--safe-b));z-index:18;width:max-content;max-width:min(34em,56vw);color:var(--cream);text-align:center;font:700 calc(1rem * var(--caption-scale,1)) / 1.3 var(--font);pointer-events:none;overflow-wrap:anywhere;background:#1c1208eb;border:3px solid #ffe6b499;border-radius:12px;padding:.4em .9em .5em;position:fixed;transform:translate(-50%)}.df-captions[data-background=dim]{background:#1c1208b8}.df-captions[data-position=top]{bottom:auto;top:calc(90px + var(--safe-t))}.df-caption-speaker{letter-spacing:.12em;color:var(--gold);text-transform:uppercase;font-size:.62em;display:block}@media (max-width:1100px){.df-captions{bottom:calc(86px + var(--safe-b));max-width:min(34em,70vw)}}@media (orientation:portrait){.df-captions{bottom:calc(124px + var(--safe-b));max-width:94vw}}:root[data-input=pad] :focus,:root[data-input=keys] :focus-visible{outline-offset:3px;outline:5px solid #ffe100;box-shadow:0 0 0 8px #000}:root[data-input=pad] input[type=range]:focus{outline-offset:6px}:root[data-contrast=high]{--hc-bg:#000;--hc-fg:#fff;--hc-hi:#ffe100;--hc-line:#fff}:root[data-contrast=high] .outline,:root[data-contrast=high] .plank,:root[data-contrast=high] .pill,:root[data-contrast=high] h2,:root[data-contrast=high] .logo span,:root[data-contrast=high] #banner strong,:root[data-contrast=high] #result-score,:root[data-contrast=high] .card b{text-shadow:none}:root[data-contrast=high] .plank{background:var(--hc-bg);color:var(--hc-fg);border:3px solid var(--hc-line);box-shadow:none}:root[data-contrast=high] button.plank:hover{filter:none;background:#222}:root[data-contrast=high] .plank.big{background:var(--hc-hi);color:#000;box-shadow:0 0 0 3px var(--hc-line);border-color:#000}:root[data-contrast=high] .pill{background:var(--hc-bg);color:var(--hc-fg);border:2px solid var(--hc-line);box-shadow:none}:root[data-contrast=high] #level-title{background:var(--hc-bg);border-color:var(--hc-line);box-shadow:none}:root[data-contrast=high] #score{color:var(--hc-hi);background:var(--hc-bg)}:root[data-contrast=high] .star{filter:drop-shadow(0 0 1px #fff);background:#555}:root[data-contrast=high] .star.on{background:var(--hc-hi);filter:drop-shadow(0 0 1.5px #000)drop-shadow(0 0 1px #000)}:root[data-contrast=high] #hud-stars .star{--rim:#fff;--fill:#444}:root[data-contrast=high] #hud-stars .star.on{--rim:#fff;--fill:var(--hc-hi)}:root[data-contrast=high] #cards{box-shadow:0 0 0 3px var(--hc-line);background:#000000e6}:root[data-contrast=high] .card{background:var(--hc-bg);border:3px solid var(--hc-line);color:var(--hc-fg);box-shadow:none}:root[data-contrast=high] .card small{color:var(--hc-hi)}:root[data-contrast=high] .card.current{border-color:var(--hc-hi);box-shadow:0 0 0 4px var(--hc-hi)}:root[data-contrast=high] .card.more{color:var(--hc-fg)}:root[data-contrast=high] .face-card,:root[data-contrast=high] .face-card.mega-offer{background:var(--hc-bg);border-color:var(--hc-hi);box-shadow:0 0 0 3px #000, 0 0 0 5px var(--hc-line);animation:none}:root[data-contrast=high] .face-card b,:root[data-contrast=high] .face-card small,:root[data-contrast=high] .face-card:before,:root[data-contrast=high] .face-card:after{color:var(--hc-fg)}:root[data-contrast=high] .face-card[aria-pressed=true]{border-color:var(--hc-hi);box-shadow:0 0 0 4px var(--hc-hi)}:root[data-contrast=high] #power-hint,:root[data-contrast=high] #card-note,:root[data-contrast=high] #relaunch-bar,:root[data-contrast=high] #drag-hint .label,:root[data-contrast=high] .banner-inner,:root[data-contrast=high] .toast,:root[data-contrast=high] #chapter-gate{background:var(--hc-bg);color:var(--hc-fg);border:3px solid var(--hc-line);box-shadow:none}:root[data-contrast=high] #power-hint.now{background:var(--hc-hi);color:#000;box-shadow:0 0 0 3px var(--hc-line);border-color:#000}:root[data-contrast=high] #banner small,:root[data-contrast=high] .toast small{color:var(--hc-hi)}:root[data-contrast=high] .popup{color:#fff;text-shadow:none;background:#000;border:2px solid #fff;border-radius:8px;padding:.05em .4em}:root[data-contrast=high] .popup.wolf,:root[data-contrast=high] .popup.boss{color:var(--hc-hi)}:root[data-contrast=high] .screen.dim{-webkit-backdrop-filter:none;backdrop-filter:none;background:#000000db}:root[data-contrast=high] #title,:root[data-contrast=high] #worlds,:root[data-contrast=high] #levels{background:#0000008c}:root[data-contrast=high] .tagline{text-shadow:none;background:#000;border-radius:10px;padding:.2em .8em}:root[data-contrast=high] .panel{background:var(--hc-bg);color:var(--hc-fg);border:4px solid var(--hc-line);box-shadow:none}:root[data-contrast=high] .panel h3,:root[data-contrast=high] .settings-cols legend,:root[data-contrast=high] .access-fieldset legend,:root[data-contrast=high] .save-fieldset legend,:root[data-contrast=high] .controls-fieldset legend,:root[data-contrast=high] .remap-grid>b,:root[data-contrast=high] .tips-label{color:var(--hc-hi)}:root[data-contrast=high] .settings-cols fieldset,:root[data-contrast=high] .access-fieldset,:root[data-contrast=high] .save-fieldset,:root[data-contrast=high] .controls-fieldset{border-color:var(--hc-line)}:root[data-contrast=high] .setting-note,:root[data-contrast=high] .remap-label,:root[data-contrast=high] .slider,:root[data-contrast=high] #result-best,:root[data-contrast=high] #result-tally,:root[data-contrast=high] #tally-rescue,:root[data-contrast=high] .tally-row b,:root[data-contrast=high] #result-skip-box,:root[data-contrast=high] #picture-lines,:root[data-contrast=high] #picture-note,:root[data-contrast=high] .licences span,:root[data-contrast=high] .remap-fixed{color:var(--hc-fg)}:root[data-contrast=high] .tally-row{background:#222}:root[data-contrast=high] #result-score{color:var(--hc-hi)}:root[data-contrast=high] .toggle,:root[data-contrast=high] .remap{background:var(--hc-bg);color:var(--hc-fg);border-color:var(--hc-line)}:root[data-contrast=high] .toggle b{background:var(--hc-fg);color:#000}:root[data-contrast=high] .toggle[aria-pressed=true] b{background:var(--hc-hi)}:root[data-contrast=high] .toggle.cycle b{background:var(--hc-fg)}:root[data-contrast=high] .remap.waiting{background:var(--hc-hi);color:#000}:root[data-contrast=high] .slider input{accent-color:var(--hc-hi)}:root[data-contrast=high] .save-status[data-kind=error]{color:#ff8a8a}:root[data-contrast=high] .save-status[data-kind=ok]{color:#9dff9d}:root[data-contrast=high] .import-review,:root[data-contrast=high] #result-tip,:root[data-contrast=high] #result-mega{background:var(--hc-bg);color:var(--hc-fg);border-color:var(--hc-hi)}:root[data-contrast=high] .import-verdict,:root[data-contrast=high] #result-tip b,:root[data-contrast=high] #result-mega b{color:var(--hc-hi)}:root[data-contrast=high] .paste-box textarea{color:#fff;background:#000;border-color:#fff}:root[data-contrast=high] #achievement-list .ach-group>h3{background:var(--hc-bg);color:var(--hc-fg);border:2px solid var(--hc-line)}:root[data-contrast=high] #achievement-list li{border-color:var(--hc-line);color:var(--hc-fg);opacity:1;background:#111}:root[data-contrast=high] #achievement-list li.got{border-color:var(--hc-hi)}:root[data-contrast=high] #achievement-list li.got:before{color:var(--hc-hi)}:root[data-contrast=high] .level-tile.locked,:root[data-contrast=high] .world-card.locked{filter:none;opacity:.7;border-style:dashed}:root[data-contrast=high] .level-tile.boss{border-color:var(--hc-hi)}:root[data-contrast=high] .world-card.world-meadows{background:var(--hc-bg)}:root[data-contrast=high] .df-captions{color:#fff;background:#000;border-color:#fff}:root[data-contrast=high] .df-caption-speaker{color:var(--hc-hi)}:root[data-contrast=high] #slow-aim.held{outline-color:var(--hc-hi)}:root[data-contrast=high] :focus-visible{outline:5px solid var(--hc-hi);outline-offset:3px;box-shadow:0 0 0 8px #000}:root[data-contrast=high] #aim-anchor{border-color:var(--hc-hi)}
