*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden}:root{--muted-text-opacity: .65;--subtle-btn-opacity: .55;--subtle-btn-opacity-hover: 1;--ui-tint-rgb: 10, 10, 46;--ui-tint: rgb(var(--ui-tint-rgb));--safe-area-inset-top: env(safe-area-inset-top, 0px);--safe-area-inset-right: env(safe-area-inset-right, 0px);--safe-area-inset-bottom: env(safe-area-inset-bottom, 0px);--safe-area-inset-left: env(safe-area-inset-left, 0px)}html,body{height:100vh;height:100dvh}body{background:#000;margin:0;padding:0;overflow:hidden;cursor:default;-webkit-user-select:none;user-select:none;overscroll-behavior:none;touch-action:none;-webkit-tap-highlight-color:transparent}#game-canvas{display:block;image-rendering:pixelated;image-rendering:crisp-edges;touch-action:none}@media(hover:none)and (pointer:coarse){#game-canvas{border-radius:18px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:absolute;top:8px;left:8px;padding:8px 14px;background:#0a0a2e;color:#fff;font-family:Silkscreen,monospace;font-size:12px;text-decoration:none;border-radius:4px;z-index:100000;transform:translateY(-150%);transition:transform .15s ease}.skip-link:focus,.skip-link:focus-visible{transform:translateY(0);outline:2px solid #fff;outline-offset:2px}#game-main:focus{outline:none}:focus-visible{outline:2px solid #fff;outline-offset:2px;border-radius:2px}.intro-menu-back-btn,.credits-return-btn{background:none;border:none;padding:.3em .6em;font-family:Silkscreen,monospace;font-size:clamp(11px,1.8vw,16px);color:#fff;cursor:pointer;text-transform:lowercase;text-shadow:0 1px 3px rgba(0,0,0,.4);mix-blend-mode:screen;opacity:var(--subtle-btn-opacity);transition:transform .15s ease,opacity .4s ease,color .2s ease;pointer-events:auto;-webkit-user-select:none;user-select:none}@media(hover:hover){.intro-menu-back-btn:hover,.credits-return-btn:hover{opacity:var(--subtle-btn-opacity-hover);transform:scale(1.06)}}.intro-menu-back-btn:active,.intro-menu-back-btn.clicked,.credits-return-btn:active,.credits-return-btn.clicked{opacity:var(--subtle-btn-opacity-hover);transform:scale(1.1)}.intro-menu-back-btn:disabled,.credits-return-btn:disabled{pointer-events:none;cursor:default;opacity:calc(var(--subtle-btn-opacity) * .4)}.intro-menu-back-btn.fading,.credits-return-btn.fading{opacity:0;pointer-events:none}@media(max-width:480px)and (orientation:portrait){.intro-menu-back-btn,.credits-return-btn{font-size:clamp(13px,1.9vh,16px)}}#game-toolbar{position:fixed;top:calc(16px + env(safe-area-inset-top));right:calc(16px + env(safe-area-inset-right));z-index:12;display:flex;flex-direction:column;align-items:flex-end;gap:8px;pointer-events:none;opacity:0;transition:opacity .5s ease}#game-toolbar.visible{opacity:1}.toolbar-btn{pointer-events:auto;display:flex;align-items:center;justify-content:flex-end;gap:0;height:36px;padding:0 8px;border:none;border-radius:18px;background:rgba(var(--ui-tint-rgb),.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;cursor:pointer;font-family:Silkscreen,cursive;transition:background-color .2s ease;will-change:contents}@media(hover:hover){.toolbar-btn:hover{background:rgba(var(--ui-tint-rgb),.7)}}.toolbar-btn.active{background:rgba(var(--ui-tint-rgb),.8)}.toolbar-btn.toolbar-btn--fade{opacity:0;transition:background-color .2s ease,opacity .5s ease}.toolbar-btn.toolbar-btn--fade.is-revealed{opacity:1}.toolbar-btn.is-disabled,.toolbar-btn.toolbar-btn--fade.is-revealed.is-disabled{opacity:.6;pointer-events:none}.toolbar-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;opacity:.9;flex-shrink:0;will-change:transform,opacity;transition:opacity .18s ease,transform .22s ease}.toolbar-icon.morphing{opacity:0;transform:scale(.5)}.toolbar-icon svg{width:100%;height:100%;fill:currentColor}.toolbar-label{font-size:11px;white-space:nowrap;overflow:hidden;max-width:0;opacity:0;padding-right:0;will-change:max-width,opacity,padding-right,padding-left,width;transition:max-width .25s ease,opacity .2s ease,padding-right .25s ease,padding-left .25s ease,width .3s ease}@media(hover:hover){.toolbar-btn:hover .toolbar-label{max-width:120px;opacity:1;padding-right:6px}.toolbar-btn:hover .toolbar-label.morphing{opacity:0}}.toolbar-btn.active .toolbar-label,.toolbar-btn:focus-visible .toolbar-label{max-width:120px;opacity:1;padding-right:6px}.toolbar-btn.active .toolbar-label.morphing,.toolbar-btn:focus-visible .toolbar-label.morphing{opacity:0}.toolbar-btn.strawberry-counter{pointer-events:auto;cursor:default;height:44px;padding:0 10px;border-radius:22px;margin-bottom:4px;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;transition:background-color .25s ease,backdrop-filter .25s ease}@media(hover:hover){.toolbar-btn.strawberry-counter:hover{background:rgba(var(--ui-tint-rgb),.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}}.toolbar-btn.strawberry-counter.active{background:rgba(var(--ui-tint-rgb),.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.strawberry-glyph{display:flex;align-items:center;gap:1px;width:auto}.strawberry-sprite{width:32px;height:32px;image-rendering:pixelated;image-rendering:crisp-edges;pointer-events:none;margin-top:1px;margin-left:-8px}.strawberry-count{font-family:Silkscreen,cursive;font-size:22px;color:#fff;opacity:.95;line-height:44px;min-width:16px;text-align:center}@keyframes counter-bounce{0%{transform:scale(1)}30%{transform:scale(1.25)}60%{transform:scale(.95)}to{transform:scale(1)}}.strawberry-glyph.bounce{animation:counter-bounce .35s ease}.toolbar-btn.leave-btn--corner{position:fixed;right:calc(16px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));z-index:12}#top-left-cluster{position:fixed;top:calc(16px + env(safe-area-inset-top));left:calc(16px + env(safe-area-inset-left));z-index:12;display:flex;flex-direction:row;align-items:center;gap:8px;pointer-events:none}#player-badge{display:flex;align-items:center;gap:6px;height:36px;border-radius:18px;padding:0;background:rgba(var(--ui-tint-rgb),.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-family:Silkscreen,cursive;font-size:11px;color:#fff;pointer-events:none;opacity:0;transform:translate(-12px);max-width:0;margin-right:-8px;overflow:hidden;white-space:nowrap;transition:opacity .5s ease,transform .5s ease,max-width .5s ease,margin-right .5s ease,padding .5s ease}#player-badge.visible{opacity:1;transform:translate(0);max-width:200px;margin-right:0;padding:0 12px}.badge-icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;will-change:transform,opacity;transition:opacity .18s ease,transform .22s ease}.badge-icon svg{width:100%;height:100%;fill:currentColor}.badge-icon.morphing{opacity:0;transform:scale(.5)}.badge-name{white-space:nowrap;overflow:hidden;max-width:120px;line-height:1;will-change:opacity,width;transition:opacity .2s ease,width .3s ease}.badge-name.morphing{opacity:0}#player-badge.is-button{cursor:pointer;pointer-events:auto;transition:opacity .5s ease,transform .5s ease,max-width .5s ease,margin-right .5s ease,padding .5s ease,background-color .2s ease}@media(hover:hover){#player-badge.is-button:hover{background:rgba(var(--ui-tint-rgb),.7)}}#player-badge.is-button.is-disabled,#leaderboard-toolbar-btn.visible.is-disabled{opacity:.6;pointer-events:none}#save-indicator{position:fixed;top:calc(16px + env(safe-area-inset-top));left:160px;z-index:10;display:flex;align-items:center;height:36px;font-family:Silkscreen,cursive;font-size:9px;color:#fff;mix-blend-mode:screen;pointer-events:none;opacity:0;transition:opacity .3s ease}#save-indicator.visible{opacity:1}#save-indicator.fade-out{opacity:0;transition:opacity .6s ease}@media(max-width:480px){#save-indicator{top:calc(52px + env(safe-area-inset-top));left:calc(28px + env(safe-area-inset-left));height:24px}}#intro-menu{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;z-index:10;font-family:Silkscreen,monospace;color:#fff;text-transform:lowercase;opacity:0;transition:opacity .8s ease;padding-inline:max(0px,env(safe-area-inset-left)) max(0px,env(safe-area-inset-right));padding-block-end:max(0px,env(safe-area-inset-bottom))}#intro-menu.title-above{padding-top:10vh}#intro-menu.visible{opacity:1}.intro-menu-content{display:flex;flex-direction:column;align-items:center}#intro-menu.visible .intro-menu-content{pointer-events:auto}.intro-menu-group{display:flex;flex-direction:column;align-items:center;gap:.5em}.intro-menu-group.horizontal{flex-direction:row;justify-content:space-between;gap:3em;min-width:min(85%,16em);align-items:baseline}.intro-menu-group.horizontal .intro-menu-btn{white-space:nowrap;flex-shrink:0}.intro-prompt{font-size:clamp(12px,2.5vw,20px);text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.4);margin-bottom:.4em;opacity:0;transition:opacity .5s ease}.intro-prompt.visible{opacity:1}.intro-prompt:focus,.intro-prompt:focus-visible,.intro-welcome:focus,.intro-welcome:focus-visible{outline:none}.intro-prompt.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;opacity:1}.intro-name-display{font-size:clamp(18px,4vw,36px);text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.4);margin-bottom:.6em;opacity:0;transition:opacity .5s ease}.intro-name-display.visible{opacity:1}.intro-welcome{display:flex;flex-direction:column;align-items:center;gap:.6em;opacity:0;transition:opacity .4s ease}.intro-welcome.visible{opacity:1}.intro-welcome-label{font-size:clamp(12px,2.5vw,20px);text-shadow:0 1px 3px rgba(0,0,0,.3)}.intro-welcome-name{font-size:clamp(14px,3vw,24px);text-shadow:0 1px 3px rgba(0,0,0,.3)}.intro-menu-btn{background:none;border:none;padding:.4em .8em;font-family:Silkscreen,monospace;font-size:clamp(16px,3.5vw,28px);color:#fff;cursor:pointer;text-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .15s ease,opacity .5s ease,color .2s ease,text-shadow .2s ease;pointer-events:auto;-webkit-user-select:none;user-select:none;opacity:1}@media(hover:hover){.intro-menu-btn:hover{transform:scale(1.08)}}.intro-menu-btn:active,.intro-menu-btn.clicked{transform:scale(1.12)}.intro-menu-btn.fading{opacity:0;pointer-events:none}.intro-menu-btn:disabled{pointer-events:none;cursor:default}.intro-menu-btn:has(.intro-menu-btn-icon),.intro-menu-btn:has(.intro-menu-btn-count){display:inline-flex;align-items:center;justify-content:center;gap:.6em}.intro-menu-btn-count{font-family:Silkscreen,monospace;color:inherit;font-size:.75em;margin-right:-.3em}.intro-menu-btn.disabled-state{opacity:.5;pointer-events:none;cursor:default}.intro-menu-btn.disabled-state:hover,.intro-menu-btn.disabled-state:active{transform:none}.intro-menu-btn-icon{display:inline-flex;align-items:center;justify-content:center;width:.75em;height:.75em;transform:translateY(.05em)}.intro-menu-btn-icon svg{width:100%;height:100%;fill:currentColor}.intro-menu-btn.has-subtitle{display:inline-flex;flex-direction:column;align-items:center;gap:.15em}.intro-menu-btn-row{display:inline-flex;align-items:center;justify-content:center;gap:.6em}.intro-menu-btn-subtitle{font-family:Silkscreen,monospace;font-size:.55em;color:inherit;opacity:.7;text-shadow:none;pointer-events:none}.intro-menu-back-btn{margin-top:2em}.intro-color-picker{display:flex;flex-direction:column;align-items:center;pointer-events:auto;margin-top:.6em;transition:opacity .5s ease;opacity:1}.intro-color-picker.fading{opacity:0;pointer-events:none}.intro-color-grid{display:grid;grid-template-columns:repeat(4,auto);gap:.5em;margin-bottom:1.4em}.intro-color-swatch{width:clamp(44px,8vw,64px);height:clamp(44px,8vw,64px);border:2px solid rgba(255,255,255,.65);border-radius:6px;padding:0;cursor:pointer;background-color:color-mix(in srgb,var(--swatch-color, #fff) 55%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:transform .15s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease;-webkit-user-select:none;user-select:none;box-shadow:0 2px 6px #00000040}@media(hover:hover){.intro-color-swatch:hover{transform:scale(1.08);border-color:#fffffff2;background-color:color-mix(in srgb,var(--swatch-color, #fff) 80%,transparent)}}.intro-color-swatch:active{transform:scale(1.12)}.intro-color-swatch.selected{border-color:#fff;transform:scale(1.1);background-color:var(--swatch-color, #fff);box-shadow:0 0 0 3px #ffffff59,0 4px 10px #0000004d}.intro-color-status{font-size:clamp(10px,1.6vw,14px);text-shadow:0 1px 2px rgba(0,0,0,.4);opacity:0;transition:opacity .3s ease;will-change:opacity;color:#ffffffd9;line-height:1.2;min-height:1.2em;margin-top:.6em;display:flex;flex-direction:row;align-items:center;justify-content:center}.intro-color-status.visible{opacity:1}.intro-color-status-dot{display:inline-flex;flex:0 0 auto;width:20px;height:20px;color:transparent}.intro-color-status-dot svg{width:100%;height:100%;display:block}.intro-color-status[data-tone=ok] .intro-color-status-dot{color:#5ed47a}.intro-color-status[data-tone=error] .intro-color-status-dot{color:#f07070}.intro-color-online{font-size:clamp(9px,1.3vw,12px);text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.35);color:#ffffff8c;letter-spacing:.02em;opacity:0;transition:opacity .4s ease;will-change:opacity;line-height:1.2;min-height:1.2em;margin-top:.3em}.intro-color-online.visible{opacity:1}#intro-menu:not(.visible) .intro-color-picker{pointer-events:none;cursor:default}@media(max-width:480px)and (orientation:portrait){.intro-color-grid{gap:.4em}.intro-color-swatch{width:clamp(40px,14vw,54px);height:clamp(40px,14vw,54px)}}#intro-menu.fade-out{opacity:0;pointer-events:none;transition:opacity .6s ease}#intro-menu:not(.visible) .intro-menu-btn,#intro-menu:not(.visible) .intro-menu-back-btn,#intro-menu:not(.visible) .intro-menu-group{pointer-events:none;cursor:default}#intro-menu.content-faded .intro-menu-content,#intro-menu.content-faded .intro-menu-group{pointer-events:none}@media(max-height:500px)and (orientation:landscape){#intro-menu.title-above{padding-top:18vh}.intro-menu-btn{font-size:clamp(14px,5.2vh,22px)}.intro-menu-group{gap:.9em}}@media(max-width:480px)and (orientation:portrait){.intro-prompt,.intro-welcome-label{font-size:clamp(13px,1.9vh,20px)}.intro-welcome-name{font-size:clamp(15px,2.4vh,24px)}.intro-name-display{font-size:clamp(20px,3.6vh,36px)}.intro-menu-btn{font-size:clamp(18px,2.8vh,28px)}.intro-color-status{font-size:clamp(12px,1.4vh,14px)}.intro-color-online{font-size:clamp(11px,1.2vh,12px)}}#credits-overlay{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;pointer-events:none;z-index:10;font-family:Silkscreen,monospace;color:#fff;text-transform:lowercase;padding-top:var(--ui-content-top, 38vh);padding-inline:max(0px,env(safe-area-inset-left)) max(0px,env(safe-area-inset-right));padding-bottom:max(0px,env(safe-area-inset-bottom));opacity:0;transition:opacity .6s ease}#credits-overlay.visible{opacity:1}#credits-overlay.visible .credits-content{pointer-events:auto}#credits-overlay.fade-out{opacity:0;transition:opacity .6s ease;pointer-events:none}.credits-content{display:flex;flex-direction:column;align-items:center;gap:.35em;mix-blend-mode:screen}.credits-line{font-size:clamp(11px,1.6vw,15px);opacity:0;white-space:nowrap;padding:0 .6em;clip-path:inset(0 100% 0 0)}.credits-license{margin-top:.6em;font-size:clamp(10px,1.3vw,13px)}.credits-build{margin-top:.2em;font-size:clamp(9px,1.15vw,11px)}.credits-muted{opacity:var(--muted-text-opacity)}.credits-divider{width:8em;border:0;border-top:1px solid #fff;margin:1.2em 0;opacity:0;transition:opacity .4s ease}#credits-overlay.visible .credits-line{animation:credits-line-in .35s steps(20,end) forwards}#credits-overlay.visible .credits-line.credits-build{animation:credits-build-in .35s steps(20,end) forwards}#credits-overlay.visible .credits-divider{opacity:var(--muted-text-opacity)}@keyframes credits-line-in{to{opacity:1;clip-path:inset(0 0% 0 0)}}@keyframes credits-build-in{to{opacity:.4;clip-path:inset(0 0% 0 0)}}#credits-overlay.visible .credits-line:nth-of-type(1){animation-delay:0s}#credits-overlay.visible .credits-line:nth-of-type(2){animation-delay:.08s}#credits-overlay.visible .credits-line:nth-of-type(3){animation-delay:.3s}#credits-overlay.visible .credits-line:nth-of-type(4){animation-delay:.38s}#credits-overlay.visible .credits-line:nth-of-type(5){animation-delay:.46s}#credits-overlay.visible .credits-line:nth-of-type(6){animation-delay:.54s}#credits-overlay.visible .credits-line:nth-of-type(7){animation-delay:.62s}#credits-overlay.visible .credits-line:nth-of-type(8){animation-delay:.78s}#credits-overlay.visible .credits-divider{transition-delay:.22s}.credits-content a{color:#fff;text-decoration:none;pointer-events:auto;transition:opacity .2s ease}.credits-link-icon{display:inline-flex;width:.75em;height:.75em;margin-left:.2em;vertical-align:-.05em;color:currentColor;opacity:.7;transition:opacity .2s ease;will-change:opacity}.credits-link-icon svg{width:100%;height:100%;fill:currentColor;display:block}@media(hover:hover){.credits-content a:hover .credits-link-icon{opacity:1}}.credits-return-btn{margin-top:2.5em}#credits-overlay:not(.visible) .credits-return-btn{opacity:0;pointer-events:none}#credits-overlay.visible .credits-return-btn{animation:credits-return-fade-in .4s ease .85s backwards}@keyframes credits-return-fade-in{0%{opacity:0}to{opacity:var(--subtle-btn-opacity)}}#credits-overlay.fade-out .credits-return-btn{opacity:0;pointer-events:none}#credits-overlay:not(.visible) .credits-return-btn,#credits-overlay:not(.visible) a{pointer-events:none;cursor:default}@media(max-width:480px)and (orientation:portrait){#credits-overlay{padding-top:var(--ui-content-top, 28vh)}.credits-line{font-size:13px}.credits-license{font-size:12px}.credits-build{font-size:11px}}.leaderboard-list,.achievements-list{display:flex;flex-direction:column;gap:2px;min-width:min(85%,22em);max-width:90vw;margin-bottom:1.5em}.leaderboard-row,.achievement-row{display:flex;align-items:center;gap:.6em;font-size:clamp(13px,2.6vw,20px);text-shadow:0 1px 3px rgba(0,0,0,.4);padding:calc(.5em - 1px) .75em .5em;border-radius:2px;background-color:rgba(var(--ui-tint-rgb),.4);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);position:relative;z-index:0;pointer-events:auto;transform-origin:center;transition:transform .18s ease,z-index 0s linear .18s}#leaderboard-overlay:not(.visible) .leaderboard-row,#achievements-overlay:not(.visible) .achievement-row{pointer-events:none}@media(hover:hover){.leaderboard-row:hover,.achievement-row:hover{transform:scale(1.04);z-index:1;transition:transform .18s ease,z-index 0s linear 0s}}.leaderboard-row:first-child,.achievement-row:first-child{border-top-left-radius:18px;border-top-right-radius:18px}.leaderboard-row:last-child,.achievement-row.achievement-row-last{border-bottom-left-radius:18px;border-bottom-right-radius:18px}@media(max-width:480px)and (orientation:portrait){.leaderboard-row,.achievement-row{font-size:15px}}#leaderboard-toolbar-btn{opacity:0;pointer-events:none;transition:opacity .5s ease}#leaderboard-toolbar-btn.visible{opacity:1;pointer-events:auto}.toolbar-btn-left{justify-content:flex-start}.toolbar-btn-left .toolbar-label{padding-left:0}@media(hover:hover){.toolbar-btn-left:hover .toolbar-label{padding-left:6px;padding-right:0}}.toolbar-btn-left.active .toolbar-label{padding-left:6px;padding-right:0}.toolbar-btn-left:focus-visible .toolbar-label{padding-left:6px;padding-right:0}#leaderboard-toolbar-btn .toolbar-label{transition:max-width .2s ease .15s,opacity .15s ease,padding-left .2s ease .15s,width .3s ease}@media(hover:hover){#leaderboard-toolbar-btn:hover .toolbar-label{transition:max-width .2s ease,opacity .15s ease .15s,padding-left .2s ease,width .3s ease}}#leaderboard-toolbar-btn:focus-visible .toolbar-label{transition:max-width .2s ease,opacity .15s ease .15s,padding-left .2s ease,width .3s ease}#leaderboard-toolbar-btn.active .toolbar-label{transition:max-width .2s ease,opacity .15s ease .15s,padding-left .2s ease,width .3s ease}#leaderboard-toolbar-btn.hidden{opacity:0!important;pointer-events:none}#leaderboard-overlay{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:var(--ui-content-top, 37vh);padding-inline:max(0px,env(safe-area-inset-left)) max(0px,env(safe-area-inset-right));padding-bottom:max(0px,env(safe-area-inset-bottom));pointer-events:none;z-index:10;font-family:Silkscreen,monospace;color:#fff;text-transform:lowercase;opacity:0;transition:opacity .5s ease}#leaderboard-overlay.visible{opacity:1}#leaderboard-overlay.fade-out{opacity:0;transition:opacity .5s ease}#leaderboard-overlay:not(.visible) .leaderboard-back-btn{pointer-events:none;cursor:default}#leaderboard-overlay.visible .leaderboard-list{pointer-events:auto}.lb-rank{flex-shrink:0;min-width:2em;text-align:left}.lb-name{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-count{flex-shrink:0;text-align:right;margin-left:-.3em}.lb-glyph{width:32px;height:32px;margin:-4px 0;image-rendering:pixelated;image-rendering:crisp-edges;flex-shrink:0;transform:translateY(2px)}.lb-you{opacity:.6;margin-left:.3em}.leaderboard-row.leaderboard-row-cap{border-bottom-left-radius:18px;border-bottom-right-radius:18px}.leaderboard-row.leaderboard-row-you{margin-top:.75em;border-radius:18px}.leaderboard-empty,.leaderboard-error{text-align:center;font-size:clamp(12px,2.5vw,18px);text-shadow:0 1px 3px rgba(0,0,0,.4);opacity:.7;padding:1em 0}.leaderboard-back-btn{pointer-events:auto;margin-top:0}#leaderboard-toolbar-btn.has-rank .toolbar-label{max-width:40px;opacity:.95;padding-left:3px}@media(hover:hover){#leaderboard-toolbar-btn.has-rank:hover .toolbar-label{max-width:120px;opacity:1;padding-left:6px}}#leaderboard-toolbar-btn.has-rank.active .toolbar-label{max-width:120px;opacity:1;padding-left:6px}#leaderboard-toolbar-btn.has-rank:focus-visible .toolbar-label{max-width:120px;opacity:1;padding-left:6px}#leaderboard-toolbar-btn.has-rank .toolbar-label.morphing{opacity:0}@media(hover:hover){#leaderboard-toolbar-btn.has-rank:hover .toolbar-label.morphing{opacity:0}}#leaderboard-toolbar-btn.has-rank:focus-visible .toolbar-label.morphing{opacity:0}@media(max-width:480px)and (orientation:portrait){#leaderboard-overlay{padding-top:var(--ui-content-top, 27vh)}}#achievements-overlay{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:var(--ui-content-top, 37vh);padding-inline:max(0px,env(safe-area-inset-left)) max(0px,env(safe-area-inset-right));padding-bottom:max(0px,env(safe-area-inset-bottom));pointer-events:none;z-index:10;font-family:Silkscreen,monospace;color:#fff;text-transform:lowercase;opacity:0;transition:opacity .5s ease}#achievements-overlay.visible{opacity:1}#achievements-overlay.fade-out{opacity:0;transition:opacity .5s ease}#achievements-overlay:not(.visible) .achievements-back-btn{pointer-events:none;cursor:default}#achievements-overlay.visible .achievements-list,#achievements-overlay.visible .achievements-footer{pointer-events:auto}.achievement-row-spacer{visibility:hidden}.achievements-list.is-short{margin-bottom:3em}.achievement-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1em;height:1em;margin-top:3px}.achievement-icon svg{width:100%;height:100%;fill:currentColor}.achievement-text{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.achievement-date{flex-shrink:0;text-align:right;opacity:.6;font-size:.85em}.achievements-empty{text-align:center;font-size:clamp(12px,2.5vw,18px);text-shadow:0 1px 3px rgba(0,0,0,.4);opacity:.7;padding:1em 0}.achievements-footer{display:flex;align-items:center;justify-content:center;min-width:min(85%,22em);max-width:90vw;pointer-events:none}.achievements-footer.has-pager{justify-content:space-between}.achievements-footer .intro-menu-back-btn{margin-top:0}.achievements-back-btn{pointer-events:auto}.achievements-pager{display:flex;gap:6px;pointer-events:auto}.achievements-pager.hidden{display:none}.achievements-pager-glyph{display:flex;align-items:center;justify-content:center;width:14px;height:14px;pointer-events:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.achievements-pager-glyph svg{width:100%;height:100%;display:block;fill:currentColor}.achievements-pager-arrow{appearance:none;border:0;margin:0;padding:0;width:36px;height:36px;border-radius:50%;background:rgba(var(--ui-tint-rgb),.28);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;cursor:pointer;pointer-events:auto;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center;transition:background-color .18s ease,transform .15s ease,opacity .4s ease}@media(hover:hover){.achievements-pager-arrow:hover:not(:disabled){background:rgba(var(--ui-tint-rgb),.42);transform:scale(1.06)}}.achievements-pager-arrow:active:not(:disabled){background:rgba(var(--ui-tint-rgb),.5);transform:scale(.96)}.achievements-pager-arrow:disabled{pointer-events:none;cursor:default;opacity:.35}#achievements-overlay:not(.visible) .achievements-pager-arrow{pointer-events:none;cursor:default}@media(max-width:480px)and (orientation:portrait){#achievements-overlay{padding-top:var(--ui-content-top, 29vh)}}#compose-toolbar-btn.hidden{opacity:0!important;pointer-events:none}#compose-toolbar-btn.is-active{background-color:rgba(var(--ui-tint-rgb),.55)}#compose-toolbar-btn.is-active .toolbar-label{max-width:120px;opacity:1;padding-left:6px;padding-right:0}#compose-overlay{position:fixed;inset:0;z-index:11;pointer-events:none;opacity:0;transition:opacity .5s ease;font-family:Silkscreen,monospace;color:#fff;text-transform:lowercase}#compose-overlay.visible{opacity:1}#compose-overlay.is-carrying{pointer-events:auto}#compose-overlay.is-carrying .compose-panel{opacity:0;pointer-events:none;transition:opacity .25s ease}#compose-overlay.is-carrying .compose-recolor-btn{pointer-events:none;opacity:.6;cursor:not-allowed;transition:opacity .18s ease}#compose-overlay.is-carrying .compose-catalog-tile{pointer-events:auto}#compose-overlay.is-carrying.has-free-target{cursor:pointer}#compose-overlay.is-carrying .compose-panel,#compose-overlay.is-carrying .compose-panel *{pointer-events:none!important}#compose-overlay.fade-out{opacity:0;transition:opacity .5s ease}.compose-panel{position:fixed;display:flex;flex-direction:column;align-items:stretch;gap:8px;border-radius:20px;background-color:rgba(var(--ui-tint-rgb),.4);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:.6em;width:auto;max-width:min(220px,calc(100vw - 32px));pointer-events:auto;box-shadow:0 8px 32px #00000040}#compose-overlay:not(.visible) .compose-recolor-btn,#compose-overlay:not(.visible) .compose-catalog-tile{pointer-events:none}.compose-left{display:flex;flex-direction:column;align-items:flex-start}.compose-section-heading{align-self:flex-start;font-size:10px;color:#ffffffbf;text-transform:lowercase;text-shadow:0 1px 2px rgba(0,0,0,.4);padding:0 4px 4px;pointer-events:none;user-select:none;letter-spacing:.02em}.compose-recolor-btn{position:relative;min-width:140px;padding:0 12px;height:40px;border:0;border-radius:20px;background:rgba(var(--ui-tint-rgb),.55);color:#fff;font-family:inherit;font-size:12px;text-transform:lowercase;text-shadow:0 1px 2px rgba(0,0,0,.4);cursor:pointer;transition:background-color .2s ease;will-change:background-color;transform:translateZ(0);overflow:hidden}@media(hover:hover){.compose-recolor-btn:hover{background:rgba(var(--ui-tint-rgb),.7)}}.compose-recolor-btn:active{background:rgba(var(--ui-tint-rgb),.8)}.compose-recolor-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}.compose-recolor-content{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;transition:transform .26s cubic-bezier(.32,.72,0,1);pointer-events:none}.compose-recolor-circle{width:16px;height:16px;border-radius:50%;flex-shrink:0}.compose-recolor-label{white-space:nowrap}.compose-right{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.compose-catalog{display:flex;gap:.5em;flex-wrap:wrap;align-items:flex-start}.compose-catalog-tile{display:inline-flex;align-items:center;justify-content:center;width:140px;height:60px;padding:4px 8px;border:0;border-radius:20px;background:rgba(var(--ui-tint-rgb),.55);color:#fff;font-family:inherit;font-size:12px;text-transform:lowercase;text-shadow:0 1px 2px rgba(0,0,0,.4);cursor:pointer;transition:background-color .2s ease;will-change:background-color;transform:translateZ(0)}@media(hover:hover){.compose-catalog-tile:hover{background:rgba(var(--ui-tint-rgb),.7)}}.compose-catalog-tile:active{background:rgba(var(--ui-tint-rgb),.8)}.compose-catalog-tile:focus-visible{outline:2px solid #fff;outline-offset:2px}.compose-catalog-tile.is-carrying .compose-catalog-tile-img{display:none}.compose-catalog-tile.is-carrying .compose-catalog-tile-stop{display:block}.compose-catalog-tile-stop{display:none;font-size:12px;text-transform:lowercase;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.4);text-align:center;line-height:1.15;padding:0 4px;pointer-events:none}.compose-catalog-tile-img{display:block;max-width:92px;max-height:48px;width:auto;height:auto;image-rendering:pixelated;image-rendering:crisp-edges;pointer-events:none}.mobile-controls-wrap{position:fixed;inset:0;z-index:50;pointer-events:none}.mobile-controls-wrap .mc-btn.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;background:transparent;pointer-events:none}#dev-overlay{position:fixed;inset:0;pointer-events:none;z-index:20;font-family:Silkscreen,cursive}.dev-gear{position:absolute;right:calc(16px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));justify-content:center;padding:0;width:36px;transition:background-color .2s ease,bottom .5s ease}#game-container.leave-corner-visible .dev-gear{bottom:calc(64px + env(safe-area-inset-bottom))}#game-container.leave-corner-visible .dev-debug-panel{bottom:calc(112px + env(safe-area-inset-bottom))}.dev-gear-icon{position:relative}.dev-gear-glyph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:opacity .18s ease}.dev-gear-glyph svg{width:100%;height:100%;fill:currentColor}.dev-gear-glyph-rest{opacity:1}.dev-gear-glyph-active{opacity:0}@media(hover:hover){.dev-gear:hover .dev-gear-glyph-rest{opacity:0}.dev-gear:hover .dev-gear-glyph-active{opacity:1}}.dev-gear.active .dev-gear-glyph-rest{opacity:0}.dev-gear.active .dev-gear-glyph-active{opacity:1}.dev-debug-panel{position:absolute;right:calc(16px + env(safe-area-inset-right));bottom:calc(64px + env(safe-area-inset-bottom));width:260px;padding:10px 12px;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:10px;color:#ffffffeb;font-family:inherit;font-size:11px;line-height:1.4;pointer-events:none;opacity:0;transform:translateY(6px);transition:opacity .18s ease,transform .18s ease,bottom .5s ease}.dev-debug-panel.visible{pointer-events:auto;opacity:1;transform:translateY(0)}.dev-debug-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.dev-debug-title{font-size:11px;color:#ffffffa6;letter-spacing:1px}.dev-debug-close{width:18px;height:18px;padding:0;border:none;border-radius:9px;background:transparent;color:#ffffffb3;font-family:inherit;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .15s ease,color .15s ease}@media(hover:hover){.dev-debug-close:hover{background:#ffffff26;color:#fffffff2}}.dev-debug-body{display:flex;flex-direction:column;gap:4px}.dev-debug-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.dev-debug-row[hidden]{display:none}.dev-debug-key{color:#ffffff8c}.dev-debug-value{color:#fffffff2;font-variant-numeric:tabular-nums;text-align:right}.dev-debug-value.chapter-row{display:inline-flex;align-items:center;gap:6px}.dev-chapter-num{min-width:16px;text-align:center}.dev-chapter-step{width:18px;height:18px;padding:0;border:none;border-radius:9px;background:transparent;color:#ffffffd9;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color .15s ease,color .15s ease,opacity .15s ease}.dev-chapter-step svg{width:14px;height:14px;fill:currentColor;display:block}@media(hover:hover){.dev-chapter-step:hover:not(:disabled){background:#ffffff2e;color:#fff}}.dev-chapter-step:disabled{opacity:.3;cursor:default}.dev-spawn-row{display:inline-flex;align-items:center;gap:4px}.dev-spawn-creature{width:22px;height:22px;padding:0;border:none;border-radius:6px;background:transparent;color:#ffffffbf;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color .15s ease,color .15s ease}.dev-spawn-creature svg{width:14px;height:14px;fill:currentColor;display:block;transition:opacity .17s ease,transform .22s ease}@media(hover:hover){.dev-spawn-creature:hover{background:#ffffff2e;color:#fff}}.dev-spawn-creature.morphing svg{opacity:0;transform:scale(.8)}.dev-spawn-creature.confirmed{color:#78dc8c}.dev-fixture-badge{position:fixed;top:calc(8px + env(safe-area-inset-top));left:calc(8px + env(safe-area-inset-left));z-index:30;padding:4px 8px;background:#000000a6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:6px;color:#ffffffd9;font-family:Silkscreen,cursive;font-size:10px;letter-spacing:.5px;pointer-events:none;user-select:none}.skip-intro-btn{position:fixed;left:12px;bottom:12px;z-index:20;pointer-events:none;cursor:default;height:28px;padding:0 12px;border:none;border-radius:14px;background:rgba(var(--ui-tint-rgb),.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#ffffffe6;font-family:Silkscreen,cursive;font-size:10px;text-transform:lowercase;opacity:0;transition:opacity .3s ease,background-color .2s ease,transform .12s ease}.skip-intro-btn.visible{opacity:1;pointer-events:auto;cursor:pointer}@media(hover:hover){.skip-intro-btn:hover{background:rgba(var(--ui-tint-rgb),.75)}}.skip-intro-btn:active{transform:scale(.96)}.skip-intro-btn:focus-visible{outline:2px solid rgba(255,255,255,.9);outline-offset:2px}.controls-guide{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-bottom:8vh;z-index:18;pointer-events:none;color:#fff;font-family:Silkscreen,monospace;text-transform:lowercase;text-shadow:0 1px 3px rgba(0,0,0,.55),0 0 8px rgba(0,0,0,.25);opacity:0;transition-property:opacity;transition-timing-function:ease;user-select:none;-webkit-user-select:none}.controls-guide--mobile{padding-bottom:14vh}.controls-guide.visible{opacity:1}.cg-card{pointer-events:none;display:flex;flex-direction:column;align-items:center}.cg-heading{font-size:clamp(12px,2.5vw,18px);text-align:center;margin-bottom:.85em;letter-spacing:.04em}.cg-goal{text-align:center;font-size:clamp(12px,2.5vw,16px);margin-top:2.2em;letter-spacing:.02em}.controls-guide--mobile .cg-goal{font-size:clamp(13px,2.8vw,18px)}.cg-subhead{display:block;text-align:center;font-size:clamp(12px,2.5vw,16px);margin-top:-.5em;margin-bottom:1.1em;letter-spacing:.02em}.cg-subhead+.cg-subhead{margin-top:-.6em}.cg-desktop{display:grid;grid-template-columns:auto auto auto;align-items:center;justify-content:center;gap:clamp(16px,4vw,40px)}.cg-cluster{display:flex;flex-direction:column;align-items:center;gap:6px}.cg-row{display:flex;gap:6px}.cg-key{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.45);border-radius:4px;background:#ffffff0f;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:22px;line-height:1;color:inherit;box-shadow:inset 0 -2px #0000002e,0 1px 2px #00000040;pointer-events:auto;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .12s ease,border-color .12s ease,transform .08s ease,box-shadow .12s ease}@media(hover:hover){.cg-key:hover{background:#ffffff1f;border-color:#ffffffb3}}.cg-key.is-pressed{background:#ffffff38;border-color:#ffffffd9;transform:translateY(1px);box-shadow:inset 0 1px 2px #00000059,0 0 0 1px #ffffff26}.cg-key.cg-icon svg{width:22px;height:22px;display:block;filter:drop-shadow(0 1px 3px rgba(0,0,0,.55)) drop-shadow(0 0 8px rgba(0,0,0,.25))}.cg-labels{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35em;font-size:clamp(10px,1.7vw,13px);text-align:center;min-width:4em}.cg-mobile{display:flex;flex-direction:row;align-items:flex-start;justify-content:center;gap:clamp(36px,14vw,80px);margin-top:1.2em}.cg-gesture{display:flex;flex-direction:column;align-items:center;gap:.5em}.cg-icons-row{display:flex;align-items:center;justify-content:center;gap:14px}.cg-gesture .cg-icons-row:has(.cg-swipe){display:grid;grid-template-areas:"stack";gap:0}.cg-gesture .cg-icons-row:has(.cg-swipe)>.cg-swipe{grid-area:stack}.cg-mobile .cg-icon{display:inline-flex;align-items:center;justify-content:center;width:clamp(56px,14vw,84px);height:clamp(56px,14vw,84px);color:inherit;mix-blend-mode:screen}.cg-mobile .cg-icon svg{width:100%;height:100%;display:block;filter:drop-shadow(0 1px 3px rgba(0,0,0,.55))}.cg-label{font-size:clamp(15px,3.2vw,20px)}.controls-guide--mobile .cg-heading{font-size:clamp(16px,3.5vw,22px)}.cg-gesture--tap .cg-label+.cg-label{margin-top:-.25em}.cg-swipe{animation:cg-swipe-left-cycle 4s ease-in-out infinite;animation-play-state:paused}.cg-swipe.cg-swipe-r{animation-name:cg-swipe-right-cycle}.cg-swipe-arrow{animation:cg-swipe-arrow-left-cycle 4s step-end infinite;animation-play-state:paused}.cg-swipe.cg-swipe-r .cg-swipe-arrow{animation-name:cg-swipe-arrow-right-cycle}.controls-guide.visible .cg-swipe,.controls-guide.visible .cg-swipe-arrow,.controls-guide.visible .cg-pulse{animation-play-state:running}@keyframes cg-swipe-left-cycle{0%{opacity:1;transform:translate(22px)}30%{opacity:1;transform:translate(-22px)}40%{opacity:1;transform:translate(-22px)}50%{opacity:0;transform:translate(-22px)}80%{opacity:0;transform:translate(22px)}90%,to{opacity:1;transform:translate(22px)}}@keyframes cg-swipe-right-cycle{0%,30%{opacity:0;transform:translate(-22px)}40%{opacity:1;transform:translate(-22px)}50%{opacity:1;transform:translate(-22px)}80%{opacity:1;transform:translate(22px)}90%{opacity:1;transform:translate(22px)}to{opacity:0;transform:translate(22px)}}@keyframes cg-swipe-arrow-left-cycle{0%{opacity:1}40%{opacity:0}90%{opacity:1}to{opacity:1}}@keyframes cg-swipe-arrow-right-cycle{0%{opacity:0}40%{opacity:1}90%{opacity:0}to{opacity:0}}.cg-pulse{animation:cg-tap-pulse 1.2s ease-in-out infinite;animation-play-state:paused}@keyframes cg-tap-pulse{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.12);opacity:1}}.cg-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){.cg-swipe,.cg-swipe-arrow,.cg-pulse{animation:none}.cg-swipe.cg-swipe-r .cg-swipe-arrow{opacity:0}}
