:root{--color-bg: #0d0d12;--color-surface: #17171e;--color-text: #f4f4f4;--color-muted: #6a6a72;--color-gold: #ffe066;--color-gold-dark: #ffc233;--color-wood: #4a2c0f;--color-success: #6bbf59;--color-error: #ff5a5a;--color-achievement: #ffd93d;--font-pixel: "Press Start 2P", monospace;--font-body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--touch-min: 44px;--z-debug: 10;--z-panel: 20;--z-menu: 25;--z-tutorial: 28;--z-modal: 30;--z-toast: 40}.pedal-wrapper{position:absolute;left:50%;bottom:calc(60px + 20px + var(--safe-bottom, 0px));transform:translate(-50%);pointer-events:auto}.pedal-button{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;padding:18px 32px;border:4px solid #4a2c0f;background:linear-gradient(180deg,#ffe066,#ffe066 48%,#ffc233 48%,#ffc233);box-shadow:inset 0 4px #ffffff80,inset 0 -6px #0000002e,0 8px #7a4a12,0 8px 12px #00000059;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;animation:pedal-idle 1.8s ease-in-out infinite}.pedal-button:hover{filter:brightness(1.06)}.pedal-button:active{filter:brightness(.96)}.pedal-button--pop{animation:pedal-pop .3s ease-out}.pedal-button__coin{width:clamp(28px,6vw,40px);height:clamp(28px,6vw,40px);image-rendering:pixelated;animation:coin-bob 1.8s ease-in-out infinite;pointer-events:none}.pedal-button--pop .pedal-button__coin{animation:coin-spin .3s ease-out}.pedal-button__label{font-family:"Press Start 2P",monospace;font-size:clamp(13px,3.2vw,17px);color:#4a2c0f;text-shadow:1px 1px 0 rgba(255,255,255,.4);letter-spacing:1px;pointer-events:none}@keyframes pedal-idle{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-2px) scale(1.02)}}@keyframes pedal-pop{0%{transform:translateY(0) scale(1)}30%{transform:translateY(6px) scale(.94)}70%{transform:translateY(-3px) scale(1.05)}to{transform:translateY(0) scale(1)}}@keyframes coin-bob{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(10deg)}}@keyframes coin-spin{0%{transform:rotateY(0) scale(1)}50%{transform:rotateY(180deg) scale(1.3)}to{transform:rotateY(360deg) scale(1)}}.pedal-float-text{position:absolute;top:4px;left:50%;white-space:nowrap;font-family:"Press Start 2P",monospace;font-size:14px;color:#ffd93d;text-shadow:2px 2px 0 #4a2c0f;pointer-events:none;animation:float-up-fade .7s ease-out forwards}.pedal-float-text--critical{font-size:20px;color:#ff5a5a;text-shadow:2px 2px 0 #4a0f0f;animation:float-up-fade-critical .9s ease-out forwards}@keyframes float-up-fade-critical{0%{transform:translate(calc(-50% + var(--dx, 0px))) scale(.6) rotate(-4deg);opacity:1}30%{transform:translate(calc(-50% + var(--dx, 0px)),-10px) scale(1.35) rotate(4deg)}to{transform:translate(calc(-50% + var(--dx, 0px)),-65px) scale(1.1) rotate(0);opacity:0}}@keyframes float-up-fade{0%{transform:translate(calc(-50% + var(--dx, 0px))) scale(.8);opacity:1}to{transform:translate(calc(-50% + var(--dx, 0px)),-50px) scale(1.15);opacity:0}}.pedal-burst{position:absolute;top:50%;left:50%;width:0;height:0;pointer-events:none}.pedal-burst__dust{position:absolute;top:0;left:0;width:6px;height:6px;background:#ffd93d;border:1px solid #7a4a12;animation:dust-out .4s ease-out forwards}@keyframes dust-out{0%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(calc(-50% + var(--dx, 0px)),calc(-50% + var(--dy, 0px))) scale(.3);opacity:0}}.debug-panel{position:absolute;top:calc(12px + var(--safe-top, 0px));right:calc(12px + var(--safe-right, 0px));display:flex;flex-direction:column;gap:4px;padding:8px;background:#000000b8;border:1px solid #ff4d4d;border-radius:4px;font-family:monospace;pointer-events:auto;z-index:var(--z-debug)}.debug-panel__title{color:#ff4d4d;font-size:11px;font-weight:700;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.debug-panel__button{padding:4px 10px;background:#1e1e1e;color:#f4f4f4;border:1px solid #555;border-radius:2px;font-family:monospace;font-size:11px;text-align:left;cursor:pointer}.debug-panel__button:hover{background:#2e2e2e;border-color:#ff4d4d}.hud{position:absolute;top:calc(12px + var(--safe-top, 0px));left:calc(12px + var(--safe-left, 0px));right:calc(12px + var(--safe-right, 0px));display:flex;flex-direction:column;gap:6px;pointer-events:none}.hud__primary{display:flex;gap:10px}.hud-menu-button{flex:none;width:var(--touch-min);height:var(--touch-min);margin-left:auto;padding:0;background:#0d0d12b8;border:3px solid #4a2c0f;box-shadow:inset 0 2px #ffffff1f,0 3px #00000059;color:#ffe066;font-size:18px;line-height:1;cursor:pointer;pointer-events:auto}.hud-menu-button{display:flex;align-items:center;justify-content:center;gap:5px}.hud-menu-button span{width:5px;height:16px;background:#ffe066;box-shadow:1px 1px #000}.hud-menu-button:active{transform:translateY(2px)}.hud-stat{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#0d0d12b8;border:3px solid #4a2c0f;box-shadow:inset 0 2px #ffffff1f,0 3px #00000059}.hud-stat__icon{width:24px;height:24px;font-size:20px;line-height:24px;display:flex;align-items:center;justify-content:center;image-rendering:pixelated;flex-shrink:0}.hud-stat__texts{display:flex;flex-direction:column;line-height:1.1}.hud-stat__value{font-family:"Press Start 2P",monospace;font-size:clamp(11px,2.6vw,14px);color:#ffe066;text-shadow:1px 1px 0 #000}.hud-stat__sub{font-family:"Press Start 2P",monospace;font-size:8px;color:#9ddb8a;text-shadow:1px 1px 0 #000}.hud-xp{display:flex;align-items:center;gap:6px;padding:3px 8px;background:#0d0d12b8;border:2px solid #4a2c0f;align-self:flex-start}.hud-xp__label{font-family:"Press Start 2P",monospace;font-size:8px;color:#9ddb8a;text-shadow:1px 1px 0 #000;white-space:nowrap}.hud-xp__track{width:90px;height:6px;background:#1e1e1e;border:1px solid #4a2c0f}.hud-xp__fill{height:100%;background:linear-gradient(90deg,#9ddb8a,#ffe066);transition:width .15s linear}.hud__secondary{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hud-energy{display:flex;align-items:center;gap:6px;padding:4px 8px;background:#0d0d12b8;border:3px solid #4a2c0f;pointer-events:auto}.hud-energy__icon{font-size:16px}.hud-energy__track{width:80px;height:10px;background:#1e1e1e;border:1px solid #4a2c0f}.hud-energy__fill{height:100%;background:linear-gradient(180deg,#ffe066,#ffc233);transition:width .15s linear}.hud-energy__nap{width:24px;height:24px;border:2px solid #4a2c0f;background:#1e1e1e;font-size:13px;line-height:1;cursor:pointer}.hud-combo{padding:4px 10px;background:#0d0d12b8;border:3px solid #4a2c0f;opacity:0;transform:scale(.8);transition:opacity .15s ease-out,transform .15s ease-out}.hud-combo--active{opacity:1;transform:scale(1);animation:combo-pulse .5s ease-in-out infinite}.hud-combo__label{font-family:"Press Start 2P",monospace;font-size:11px;color:#ff9f4d;text-shadow:1px 1px 0 #000}@keyframes combo-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.hud-boosts{display:flex;gap:6px}.hud-boost-chip{display:flex;align-items:center;gap:4px;padding:3px 8px;background:#0d0d12b8;border:2px solid #ffd93d;box-shadow:0 0 6px #ffd93d80}.hud-boost-chip__icon{font-size:14px}.hud-boost-chip__timer{font-family:"Press Start 2P",monospace;font-size:9px;color:#ffe066}.tab-bar{position:absolute;left:0;right:0;bottom:0;display:flex;height:calc(60px + var(--safe-bottom, 0px));padding-bottom:var(--safe-bottom, 0px);background:#0d0d12e6;border-top:3px solid #4a2c0f;pointer-events:auto}.tab-bar__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:transparent;border:none;color:#9a9aa2;cursor:pointer}.tab-bar__icon{font-size:18px}.tab-bar__label{font-family:"Press Start 2P",monospace;font-size:7px;letter-spacing:.5px}.tab-bar__item--active{color:#ffe066}.tab-bar__item--active .tab-bar__icon{transform:translateY(-2px)}.panel-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-panel);background:#00000080;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;pointer-events:none}.panel-backdrop--open{opacity:1;visibility:visible;pointer-events:auto}.panel-sheet{position:absolute;left:0;right:0;bottom:0;height:85%;display:flex;flex-direction:column;background:#17171e;border-top:4px solid #4a2c0f;box-shadow:0 -8px 24px #00000080;transform:translateY(100%);transition:transform .25s ease-out;padding-bottom:var(--safe-bottom, 0px)}.panel-backdrop--open .panel-sheet{transform:translateY(0)}.panel-sheet__header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:2px solid #2a2a33;flex-shrink:0}.panel-sheet__title{font-family:"Press Start 2P",monospace;font-size:13px;color:#ffe066;text-shadow:1px 1px 0 #000}.panel-sheet__close{width:32px;height:32px;border:2px solid #4a2c0f;background:#1e1e1e;color:#f4f4f4;font-size:14px;cursor:pointer}.panel-sheet__body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px 16px}.panel-stub{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:10px;text-align:center;color:#9a9aa2}.panel-stub__icon{font-size:40px}.panel-stub__text{font-size:14px;max-width:260px}.panel-stub__phase{font-family:"Press Start 2P",monospace;font-size:9px;color:#ffc233}.shop-subtabs,.missions-subtabs{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}.shop-subtabs__item,.missions-subtabs__item{padding:6px 10px;background:#1e1e1e;border:2px solid #4a2c0f;color:#ccc;font-size:11px;cursor:pointer}.shop-subtabs__item--active,.missions-subtabs__item--active{background:#4a2c0f;color:#ffe066}.shop-qty{display:flex;gap:6px;margin-bottom:10px}.shop-qty__item{padding:4px 10px;background:#1e1e1e;border:2px solid #2a2a33;color:#ccc;font-family:"Press Start 2P",monospace;font-size:9px;cursor:pointer}.shop-qty__item--active{border-color:#ffc233;color:#ffc233}.shop-list,.missions-list{display:flex;flex-direction:column;gap:8px}.shop-empty{padding:24px 8px;text-align:center;color:#9a9aa2;font-size:13px}.shop-card,.mission-card{padding:10px 12px;background:#1e1e1e;border:2px solid #2a2a33}.shop-card__header,.mission-card__header{display:flex;align-items:center;gap:8px}.shop-card__icon{font-size:18px}.shop-card__name,.mission-card__name{flex:1;font-weight:700;color:#f4f4f4}.shop-card__level{font-family:"Press Start 2P",monospace;font-size:9px;color:#9ddb8a}.shop-card__description,.mission-card__description{margin:6px 0;font-size:12px;color:#9a9aa2}.shop-card__buy-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.shop-card__cost{font-family:"Press Start 2P",monospace;font-size:11px;color:#ffe066}.shop-card__buy,.mission-card__claim{padding:8px 14px;border:2px solid #4a2c0f;background:linear-gradient(180deg,#ffe066,#ffc233);color:#4a2c0f;font-family:"Press Start 2P",monospace;font-size:9px;cursor:pointer}.shop-card__buy:disabled,.shop-card__buy--poor,.mission-card__claim:disabled{background:#2a2a33;border-color:#3a3a45;color:#6a6a72;cursor:not-allowed}.shop-card__buy--shake{animation:shop-shake .3s ease-in-out}@keyframes shop-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.shop-card__buy--success{animation:shop-flash-success .4s ease-out}@keyframes shop-flash-success{0%{background:linear-gradient(180deg,#9ddb8a,#6bbf59)}to{background:linear-gradient(180deg,#ffe066,#ffc233)}}@media (prefers-reduced-motion: reduce){.shop-card__buy--success,.shop-card__buy--shake{animation:none!important}}html[data-animations=off] .shop-card__buy--success,html[data-animations=off] .shop-card__buy--shake{animation:none!important}.mission-card__reward{font-family:"Press Start 2P",monospace;font-size:10px;color:#ffe066}.mission-card__track{height:8px;background:#0d0d12;border:1px solid #2a2a33;margin-top:6px}.mission-card__fill{height:100%;background:linear-gradient(180deg,#9ddb8a,#6bbf59)}.mission-card__progress-label{display:block;margin-top:4px;font-size:10px;color:#9a9aa2}.mission-card__claim{margin-top:8px;width:100%}.mission-card--claimed{opacity:.6}.settings-section{margin-bottom:18px}.settings-section__title{font-family:"Press Start 2P",monospace;font-size:10px;color:#ffc233;margin-bottom:8px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:#1e1e1e;border:2px solid #2a2a33;margin-bottom:6px}.settings-row__label{font-size:13px;color:#f4f4f4}.settings-row__hint{display:block;margin-top:2px;font-size:10px;color:#6a6a72}.settings-toggle{position:relative;width:44px;height:24px;flex-shrink:0;border:2px solid #4a2c0f;background:#0d0d12;cursor:pointer}.settings-toggle__knob{position:absolute;top:2px;left:2px;width:16px;height:16px;background:#6a6a72;transition:transform .15s ease-out,background .15s ease-out}.settings-toggle--on{background:#4a2c0f}.settings-toggle--on .settings-toggle__knob{transform:translate(20px);background:#ffe066}.settings-select{display:flex;gap:6px;flex-wrap:wrap}.settings-select__item{padding:6px 10px;background:#1e1e1e;border:2px solid #2a2a33;color:#ccc;font-size:11px;cursor:pointer}.settings-select__item--active{background:#4a2c0f;color:#ffe066;border-color:#ffc233}.settings-button{width:100%;padding:10px 14px;border:2px solid #4a2c0f;background:#1e1e1e;color:#f4f4f4;font-family:"Press Start 2P",monospace;font-size:10px;cursor:pointer;margin-bottom:8px}.settings-button--danger{border-color:#a33;color:#ff8a8a}.settings-textarea{width:100%;min-height:90px;resize:vertical;background:#0d0d12;color:#f4f4f4;border:2px solid #4a2c0f;font-size:12px;padding:8px;font-family:monospace}.settings-link{display:inline-block;margin-top:4px;color:var(--color-gold);font-size:12px}.settings-version{text-align:center;margin-top:8px;font-size:10px;color:#6a6a72}.achievements-section{margin-bottom:16px}.achievements-section__title{margin-bottom:8px;font-family:"Press Start 2P",monospace;font-size:11px;color:#ffe066;text-shadow:1px 1px 0 #000}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.achievement-card{padding:10px;background:#1e1e1e;border:2px solid #6bbf59;text-align:center}.achievement-card__icon{font-size:22px}.achievement-card__name{margin-top:4px;font-size:12px;font-weight:700;color:#f4f4f4}.achievement-card__description{margin-top:4px;font-size:10px;color:#9a9aa2}.achievement-card--locked{border-color:#3a3a45;filter:grayscale(1);opacity:.65}.achievement-card--secret{border-style:dashed}.achievement-card--flash{animation:achievement-flash .6s ease-out}@keyframes achievement-flash{0%{box-shadow:0 0 0 3px #ffe066;transform:scale(1.05)}to{box-shadow:0 0 0 0 transparent;transform:scale(1)}}.stats-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 4px;border-bottom:1px solid #2a2a33;font-size:12px}.stats-row__label{color:#ccc}.stats-row__value{font-family:"Press Start 2P",monospace;font-size:10px;color:#ffe066}.map-list{display:flex;flex-direction:column;gap:8px}.map-card{padding:10px 12px;background:#1e1e1e;border:2px solid #2a2a33;opacity:.65}.map-card--visited{opacity:.9;border-color:#3a4a33}.map-card--current{opacity:1;border-color:#ffc233;box-shadow:inset 0 0 0 1px #ffc23340}.map-card__header{display:flex;align-items:center;gap:8px}.map-card__name{flex:1;font-weight:700;color:#f4f4f4}.map-card__badge{font-family:"Press Start 2P",monospace;font-size:9px;color:#9ddb8a}.map-card__description{margin:6px 0;font-size:12px;color:#9a9aa2}.map-card__track{margin-top:4px}.shop-card--skin .shop-card__header{align-items:center}.shop-card__preview{display:block;width:56px;height:56px;object-fit:contain}.shop-card--locked .shop-card__preview{filter:grayscale(1) brightness(.45)}.map-album{margin-bottom:14px;padding:10px 12px;background:#1e1e1e;border:2px solid #4a2c0f}.map-album__title{font-family:"Press Start 2P",monospace;font-size:11px;color:#ffe066;text-shadow:1px 1px 0 #000;margin-bottom:8px}.map-album__grid{display:flex;flex-wrap:wrap;gap:6px}.map-album__stamp{padding:4px 8px;font-size:16px;background:#0d0d12;border:1px solid #2a2a33;opacity:.3;filter:grayscale(1)}.map-album__stamp--visited{opacity:1;filter:none;border-color:#9ddb8a}.prestige-summary{margin-bottom:16px;padding:12px;background:#1e1e1e;border:2px solid #4a2c0f}.prestige-summary__title{font-family:"Press Start 2P",monospace;font-size:13px;color:#ffe066;text-shadow:1px 1px 0 #000;margin-bottom:10px}.prestige-summary__line{font-size:12px;color:#ccc;margin-bottom:6px}.prestige-summary__line--gain{color:#9ddb8a}.prestige-summary__line--bonus{color:#ffc233}.prestige-summary__button{width:100%;margin-top:8px;padding:12px;border:2px solid #4a2c0f;background:linear-gradient(180deg,#ffe066,#ffc233);color:#4a2c0f;font-family:"Press Start 2P",monospace;font-size:11px;cursor:pointer}.prestige-summary__button:disabled{background:#2a2a33;border-color:#3a3a45;color:#6a6a72;cursor:not-allowed}.prestige-tree{display:flex;gap:6px;overflow-x:auto}.prestige-tree__column{flex:1;min-width:122px;display:flex;flex-direction:column;gap:8px}.prestige-tree__column-title{font-family:"Press Start 2P",monospace;font-size:10px;color:#ffe066;text-align:center;margin-bottom:4px}.prestige-node{padding:8px 10px;background:#1e1e1e;border:2px solid #6bbf59;position:relative}.prestige-node:before{content:"";position:absolute;left:50%;top:-8px;width:2px;height:8px;background:#4a2c0f}.prestige-tree__column>.prestige-node:first-child:before{display:none}.prestige-node__header{display:flex;align-items:center;justify-content:space-between;gap:6px}.prestige-node__name{font-size:12px;font-weight:700;color:#f4f4f4}.prestige-node__level{font-family:"Press Start 2P",monospace;font-size:8px;color:#9ddb8a;white-space:nowrap}.prestige-node__description{margin:6px 0;font-size:11px;color:#9a9aa2}.prestige-node__footer{display:flex;align-items:center;justify-content:space-between;gap:6px}.prestige-node__cost{font-family:"Press Start 2P",monospace;font-size:10px;color:#ffe066}.prestige-node__buy{padding:6px 10px;border:2px solid #4a2c0f;background:linear-gradient(180deg,#ffe066,#ffc233);color:#4a2c0f;font-family:"Press Start 2P",monospace;font-size:8px;cursor:pointer}.prestige-node__buy:disabled{background:#2a2a33;border-color:#3a3a45;color:#6a6a72;cursor:not-allowed}.prestige-node--locked{border-color:#3a3a45;filter:grayscale(1);opacity:.6}.prestige-node--maxed{border-color:#ffc233;box-shadow:inset 0 0 0 1px #ffc23340}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:24px;background:#0009;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;pointer-events:none}.modal-backdrop--open{opacity:1;visibility:visible;pointer-events:auto}.modal-dialog{width:min(340px,100%);background:#17171e;border:4px solid #4a2c0f;box-shadow:0 8px 24px #00000080;padding:20px;transform:scale(.94);transition:transform .2s ease-out}.modal-backdrop--open .modal-dialog{transform:scale(1)}.modal-dialog__title{margin:0 0 12px;font-family:"Press Start 2P",monospace;font-size:13px;color:#ffe066;text-shadow:1px 1px 0 #000}.modal-dialog__body{margin-bottom:16px;font-size:14px;line-height:1.5;color:#f4f4f4}.modal-dialog__buttons{display:flex;justify-content:flex-end;gap:8px}.modal-dialog__button{padding:8px 16px;border:2px solid #4a2c0f;font-family:"Press Start 2P",monospace;font-size:10px;cursor:pointer}.modal-dialog__button--primary{background:linear-gradient(180deg,#ffe066,#ffc233);color:#4a2c0f}.modal-dialog__button--secondary{background:#1e1e1e;color:#f4f4f4}.offline-report__stats{display:flex;flex-direction:column;gap:4px;margin-bottom:12px;font-family:"Press Start 2P",monospace;font-size:12px;color:#ffe066}.offline-report__phrase{margin:0;font-style:italic;color:#9a9aa2}.level-up-report__level{margin-bottom:10px;font-family:"Press Start 2P",monospace;font-size:16px;color:#ffe066;text-shadow:1px 1px 0 #000;text-align:center}.level-up-report__phrase{margin:0;font-style:italic;color:#9a9aa2}.menu-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-menu);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;text-align:center;background:radial-gradient(circle at 50% 30%,#1e1a12,#0d0d12 70%);opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease;pointer-events:none}.menu-overlay--open{opacity:1;visibility:visible;pointer-events:auto}.menu-overlay__title{margin:0;font-family:"Press Start 2P",monospace;font-size:clamp(20px,6vw,32px);color:#ffe066;text-shadow:2px 2px 0 #4a2c0f,4px 4px 0 rgba(0,0,0,.4)}.menu-overlay__slogan{margin:0 0 28px;max-width:320px;font-size:13px;color:#9a9aa2}.menu-overlay__buttons{display:flex;flex-direction:column;gap:10px;width:min(260px,100%)}.menu-overlay__button{padding:12px 16px;border:3px solid #4a2c0f;background:#1e1e1e;color:#f4f4f4;font-family:"Press Start 2P",monospace;font-size:11px;letter-spacing:.5px;cursor:pointer}.menu-overlay__button--primary{background:linear-gradient(180deg,#ffe066,#ffc233);color:#4a2c0f;box-shadow:0 4px #7a4a12}.menu-overlay__version{margin-top:24px;font-size:10px;color:#6a6a72}.tutorial-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-tutorial);background:#0009;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;pointer-events:none}.tutorial-overlay--open{opacity:1;visibility:visible;pointer-events:auto}.tutorial-overlay__highlight{position:fixed;border:3px solid #ffd93d;border-radius:6px;box-shadow:0 0 0 4px #ffd93d59,0 0 20px #ffd93d99;opacity:0;pointer-events:none;transition:left .2s ease,top .2s ease,width .2s ease,height .2s ease,opacity .2s ease}.tutorial-overlay__card{position:fixed;left:50%;bottom:90px;transform:translate(-50%);width:min(300px,calc(100vw - 32px));background:#17171e;border:4px solid #4a2c0f;box-shadow:0 8px 24px #00000080;padding:16px;pointer-events:auto}.tutorial-overlay__step{font-family:"Press Start 2P",monospace;font-size:10px;color:#ffe066;margin-bottom:8px}.tutorial-overlay__text{margin:0 0 14px;font-size:13px;line-height:1.5;color:#f4f4f4}.tutorial-overlay__actions{display:flex;justify-content:space-between;gap:8px}.tutorial-overlay__skip{padding:8px 12px;border:2px solid #4a2c0f;background:#1e1e1e;color:#9a9aa2;font-family:"Press Start 2P",monospace;font-size:9px;cursor:pointer}.tutorial-overlay__next{padding:8px 14px;border:2px solid #4a2c0f;background:linear-gradient(180deg,#ffe066,#ffc233);color:#4a2c0f;font-family:"Press Start 2P",monospace;font-size:9px;cursor:pointer}.toast-stack{position:absolute;top:38%;left:50%;z-index:var(--z-toast);display:flex;flex-direction:column;align-items:center;gap:6px;width:min(320px,calc(100% - 32px));transform:translate(-50%);pointer-events:none}.toast{display:flex;align-items:center;gap:8px;width:100%;min-height:var(--touch-min);padding:8px 12px;background:var(--color-surface);border:3px solid var(--color-wood);box-shadow:0 4px 12px #00000080;color:var(--color-text);font-family:var(--font-pixel);font-size:9px;line-height:1.5;pointer-events:auto;animation:toast-in .2s ease-out}.toast--success{border-color:var(--color-success)}.toast--error{border-color:var(--color-error)}.toast--achievement{border-color:var(--color-achievement);background:linear-gradient(180deg,#2a2410,var(--color-surface));color:var(--color-achievement)}.toast--leaving{animation:toast-out .2s ease-in forwards}.toast__icon{flex:none;font-size:14px}@keyframes toast-in{0%{transform:translateY(-8px);opacity:0}}@keyframes toast-out{to{transform:translateY(-8px);opacity:0}}@media (prefers-reduced-motion: reduce){.toast,.toast--leaving{animation:none!important}}html[data-animations=off] .toast,html[data-animations=off] .toast--leaving{animation:none!important}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none;touch-action:manipulation;user-select:none;-webkit-user-select:none;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#0d0d12;color:#f4f4f4}#app{position:relative;width:100%;height:100%}#game{position:absolute;top:0;right:0;bottom:0;left:0;display:block}#ui-root{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left)}#ui-root button,#ui-root a,#ui-root input,#ui-root [role=button]{pointer-events:auto}
