:root{color-scheme:dark;--bg: #140e18;--ink: #2a1822;--cream: #f6ead6;--muted: #d7c3b2;--gold: #f0b429;--coral: #e25b4a;--plum: #2a1830;--shadow: #140c14;font-family:Avenir Next,Trebuchet MS,Gill Sans,sans-serif}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:radial-gradient(880px 520px at 12% -10%,#4a2848 0%,transparent 58%),radial-gradient(720px 480px at 110% 110%,#5a2a22 0%,transparent 52%),var(--bg);color:var(--cream)}body[data-mood=danger]{background:radial-gradient(900px 560px at 70% 100%,#7a2030 0%,transparent 60%),var(--bg)}body[data-mood=clear]{background:radial-gradient(760px 420px at 50% -10%,#8a6230 0%,transparent 55%),var(--bg)}body[data-mood=combat]{background:radial-gradient(640px 420px at 0% 80%,#243058 0%,transparent 55%),var(--bg)}body[data-session=original],body[data-session=customize]{background:#101114}#workspace{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;flex-direction:column;background:#101114;color:#d5dbe3;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}body[data-session=original] #workspace,body[data-session=customize] #workspace{display:flex}#workspace header,#workspace footer{flex:0 0 auto;padding:0 16px;background:#181b20;border-color:#2c323c;border-style:solid}#workspace header{height:42px;line-height:42px;font-size:13px;font-weight:700;letter-spacing:.04em;border-width:0 0 1px}#workspace footer{height:32px;line-height:32px;font-size:12px;color:#8d97a6;border-width:1px 0 0}.workspace-body{flex:1 1 auto;display:flex;min-height:0}.playfield{position:relative;flex:1 1 auto;min-width:0;overflow:hidden;background:#07080b}@media(max-width:860px){.workspace-body{overflow:auto;-webkit-overflow-scrolling:touch;flex-direction:column}.playfield{flex:0 0 auto;width:100%;height:min(640px,70dvh);min-height:320px}}#debugger{flex:0 0 360px;width:360px;overflow:auto;-webkit-overflow-scrolling:touch;padding:16px 16px 28px;background:#171b21;border-left:1px solid #2c323c;font-size:12px;line-height:1.45}@media(max-width:860px){#debugger{width:100%;flex:0 0 auto;border-left:none;border-top:1px solid #2c323c;overflow:visible}}#debugger h2{margin:0 0 8px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8ec8ff}.dbg-section{margin:0 0 18px}.dbg-row{display:flex;flex-wrap:wrap;gap:6px}.dbg-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #3c4452;border-radius:4px;background:#222833;color:#e7edf5;min-width:0;height:28px;padding:0 8px;font:inherit;font-weight:600;cursor:pointer}.dbg-btn:hover{background:#2b3340}.dbg-section>.dbg-btn{margin-top:8px}.dbg-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.dbg-loadout{display:flex;gap:6px}.dbg-loadout .dbg-btn:first-child{flex:1;width:auto;justify-content:flex-start}.dbg-loadout .dbg-btn:last-child{flex:0 0 auto;width:auto}.dbg-field{display:flex;flex-direction:column;gap:4px;margin-bottom:8px;color:#aeb6c2}#debugger input,#debugger select{width:100%;box-sizing:border-box;border:1px solid #3c4452;border-radius:4px;background:#101319;color:#f2f5f8;padding:6px 8px;font:inherit}.dbg-price{margin:0 0 8px;color:#f2f5f8;font-weight:600}.dbg-note,.dbg-status{margin:8px 0 0;color:#aeb6c2}.dbg-status{min-height:2.6em;color:#d5dbe3}.dbg-monitor{display:grid;grid-template-columns:1fr auto;gap:4px 12px;margin:0}.dbg-monitor dt{margin:0;color:#8d97a6}.dbg-monitor .dbg-group{grid-column:1 / -1;margin:12px 0 0;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8ec8ff}.dbg-monitor .dbg-group:first-child{margin-top:0}.dbg-monitor dd{margin:0;text-align:right;font-weight:700;font-variant-numeric:tabular-nums;color:#f2f5f8}button,input{font-family:inherit}#stage{position:absolute;transform-origin:top left;background:#1c1224}#board,#board canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}#board canvas{touch-action:pan-x pan-y!important}#hud,#overlay,#banners,#menu-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}#hud>*,#overlay>*,#menu-layer>*{pointer-events:auto}#overlay>.screen{pointer-events:none}#overlay .panel{pointer-events:auto}.screen{position:absolute;top:0;right:0;bottom:0;left:0;display:none;align-items:center;justify-content:center;pointer-events:none;background:none}.screen.active{display:flex}.panel{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:12px;min-width:280px}h1,h2,.wave,.build h3,.turret-menu h3{font-family:Iowan Old Style,Palatino,Georgia,serif}h1{margin:0;font-size:54px;font-weight:700;letter-spacing:-.5px;color:var(--cream);transform:rotate(-2deg);text-shadow:4px 5px 0 #3a1828}h2{margin:-6px 0 8px;font-size:18px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}.tag,.detail,.help,.message{margin:0;color:var(--muted);text-align:center;max-width:460px;line-height:1.4}.message.error{color:#ffb0a4}.message.ok{color:#c8efc0}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:16px 7px 15px 8px;background:var(--cream);color:var(--ink);min-width:250px;height:44px;padding:0 16px;font-size:15px;font-weight:800;cursor:pointer;box-shadow:3px 4px 0 var(--shadow);transform:rotate(-.4deg);transition:transform 90ms ease,box-shadow 90ms ease,background 90ms ease}.btn:hover{background:#fff6e8;transform:rotate(.8deg) translateY(-1px)}.btn:active{background:var(--gold);transform:translate(2px,3px) rotate(0);box-shadow:0 0 0 var(--shadow)}.btn:disabled{background:#cbb8a4;color:#6e5c58;box-shadow:none;transform:none;cursor:default}.btn.selected{background:var(--gold);transform:rotate(-1.4deg)}.btn.danger{background:var(--coral);color:#fff8f4}.btn.danger:hover{background:#f07a6a}.btn.sell{background:#ffb0a2}.btn.sell:hover{background:#ffc8be}.btn.sell.selected{background:var(--coral);color:#fff8f4}.btn.wide{width:420px}.btn.small{min-width:140px;height:36px}.btn.tiny{min-width:52px;width:52px;height:36px;border-radius:12px 5px 11px 6px;padding:0}.btn.yellow{background:#efe0c8}.btn.yellow.selected{background:var(--gold);color:var(--ink)}.btn.icon{min-width:44px;width:44px;height:44px;padding:0;border-radius:14px 6px 13px 7px}#start-wave.start-now{position:absolute;z-index:3;top:calc(100% + 3px);left:50%;min-width:0;height:28px;margin:0;padding:0 10px;font-size:13px;border-radius:7px 14px 6px 12px;transform:translate(-50%) rotate(-1deg);white-space:nowrap}#start-wave.start-now:before{content:"";position:absolute;z-index:-1;left:calc(50% - 6px);top:-6px;width:12px;height:12px;background:inherit;border-radius:1px 0 0;transform:rotate(45deg)}#start-wave.start-now:hover,#start-wave.start-now:active{transform:translate(-50%) rotate(-1deg)}.hud-top{position:absolute;top:14px;left:28px;display:flex;gap:18px;align-items:flex-start;pointer-events:none}.hud-top .btn,.hud-corner .btn{pointer-events:auto}.wave{display:inline-block;font-size:26px;font-weight:700;color:var(--cream);background:var(--coral);padding:2px 14px 5px;border-radius:8px 18px 7px 16px;position:relative;z-index:2;transform:rotate(-2.5deg);box-shadow:3px 3px 0 var(--shadow);pointer-events:auto}.wave.can-start{cursor:pointer}.wave.can-start:hover{filter:brightness(1.08)}.dps{color:var(--gold);font-weight:800;margin:8px 0 0 8px;letter-spacing:.04em}.countdown{margin-top:8px;display:inline-flex;align-items:center;gap:6px;color:#f6ead6}.countdown[hidden]{display:none}.countdown .clock{width:24px;height:24px;flex:none;filter:drop-shadow(1px 2px 0 #140c14)}.countdown .clock-ring{fill:#241428;stroke:#f6ead6;stroke-width:2}.countdown .clock-slice{fill:#f0b429}.countdown .clock-ticks{stroke:#f6ead6;stroke-width:1.6;stroke-linecap:round}.countdown .clock-hub{fill:#f6ead6}.countdown .clock-time{font-size:16px;font-weight:800;letter-spacing:.02em}.hud-corner{position:absolute;top:14px;right:18px;display:flex;flex-direction:row;align-items:flex-start;gap:8px}.hud-controls{display:flex;flex-direction:column;align-items:stretch;gap:8px}.hud-controls .menu-btn{width:100%;min-width:0}.row{display:flex;gap:8px;align-items:center}.build{position:absolute;right:16px;top:50%;width:278px;padding:16px 14px 18px;background:linear-gradient(180deg,#3a2244,#241428);border-radius:28px 12px 30px 14px;box-shadow:7px 9px #0a060c73;display:flex;flex-direction:column;gap:8px;align-items:center;transform:translateY(-50%) rotate(-.7deg)}.build h3{margin:0 0 2px;width:100%;text-align:center;color:var(--cream);font-size:28px;letter-spacing:0;transform:rotate(-1deg)}.coins{color:var(--ink);background:var(--gold);font-weight:800;width:auto;min-width:108px;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-align:center;border-radius:999px;padding:5px 14px 6px;transform:rotate(1.5deg);box-shadow:2px 3px 0 var(--shadow)}.coins.pop{animation:coinpop .28s ease}.purse-row{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap}.crystals{color:#f4fbff;background:#1e6d98;font-weight:800;min-width:72px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;padding:5px 12px 6px;transform:rotate(-2deg);box-shadow:2px 3px 0 var(--shadow)}.crystals.pop{animation:coinpop .28s ease}.gem{width:12px;height:14px;background:linear-gradient(160deg,#fff,#7ee7ff 42%,#3a6bff);clip-path:polygon(50% 0%,100% 36%,78% 100%,22% 100%,0% 36%);box-shadow:0 1px #14324a}.wave-size{display:inline-block;margin-left:8px;padding:1px 8px 2px;border-radius:999px;font-size:13px;font-weight:800;letter-spacing:.02em;vertical-align:1px}.wave-size.small{background:#e7eef8;color:#31445e}.wave-size.medium{background:#d9f5e6;color:#146b3a}.wave-size.large{background:#ffe0c2;color:#8a3d08}.build .btn[data-rarity]{position:relative;--fill: var(--card);--edge: #f7f7f9;background:var(--fill);border:4px solid var(--edge);justify-content:space-between}.build .btn[data-rarity=prime]{--fill: #237549;--edge: #0dda6d;background:var(--fill);border-color:var(--edge);color:#ffffffe0}.build .btn[data-rarity=superior]{--fill: #1c4980;--edge: #007fff;background:var(--fill);border-color:var(--edge);color:#ffffffe0}.build .btn[data-rarity=elite]{--fill: #57257e;--edge: #a422ff;background:var(--fill);border-color:var(--edge);color:#ffffffe0}.build .btn[data-rarity=apex]{--fill: #784317;--edge: #ff7300;background:var(--fill);border-color:var(--edge);color:#ffffffe0}.build .btn[data-rarity]:hover:not(.locked){filter:brightness(1.06)}.build .btn[data-rarity].selected{box-shadow:inset 0 0 0 3px #2a1822,3px 4px 0 var(--shadow)}.build .btn[data-rarity].locked,.build .btn[data-rarity].locked:hover,.build .btn[data-rarity].locked:active,.build .btn[data-rarity].locked.selected{color:#8d8078;filter:none;cursor:default}.build .btn[data-rarity=prime].locked,.build .btn[data-rarity=prime].locked:hover,.build .btn[data-rarity=prime].locked:active,.build .btn[data-rarity=prime].locked.selected{--fill: #214d38;--edge: #30cf7a;background:var(--fill);border-color:var(--edge)}.build .btn[data-rarity=superior].locked,.build .btn[data-rarity=superior].locked:hover,.build .btn[data-rarity=superior].locked:active,.build .btn[data-rarity=superior].locked.selected{--fill: #2b3d5c;--edge: #0e74f1;background:var(--fill);border-color:var(--edge)}.build .btn[data-rarity=elite].locked,.build .btn[data-rarity=elite].locked:hover,.build .btn[data-rarity=elite].locked:active,.build .btn[data-rarity=elite].locked.selected{--fill: #492f59;--edge: #8d1fe0;background:var(--fill);border-color:var(--edge)}.build .btn[data-rarity=apex].locked,.build .btn[data-rarity=apex].locked:hover,.build .btn[data-rarity=apex].locked:active,.build .btn[data-rarity=apex].locked.selected{--fill: #5e3820;--edge: #f97406;background:var(--fill);border-color:var(--edge)}.build .btn[data-rarity].locked .label,.build .btn[data-rarity].locked .price,.build .btn[data-rarity].locked .rarity-name{color:#8d8078}.build .btn[data-rarity]:not([data-rarity=none]) .label,.build .btn[data-rarity]:not([data-rarity=none]) .name,.build .btn[data-rarity]:not([data-rarity=none]) .rarity-name,.build .btn[data-rarity]:not([data-rarity=none]) .price,.build .btn[data-rarity]:not([data-rarity=none]) .price.poor{color:#ffffffe0}.build .btn[data-rarity]:not([data-rarity=none]).locked,.build .btn[data-rarity]:not([data-rarity=none]).locked .label,.build .btn[data-rarity]:not([data-rarity=none]).locked .name,.build .btn[data-rarity]:not([data-rarity=none]).locked .rarity-name,.build .btn[data-rarity]:not([data-rarity=none]).locked .price,.build .btn[data-rarity]:not([data-rarity=none]).locked .price.poor{color:#ffffff94}.build .btn[data-rarity]:not([data-rarity=none]) .rarity-name{opacity:1}.build .lock{position:absolute;left:50%;top:50%;width:30px;height:30px;transform:translate(-50%,-50%);color:#f4efe6;filter:drop-shadow(0 1px 0 #120c12) drop-shadow(0 0 3px #120c12);pointer-events:none;z-index:1}.build .btn[hidden],.build .lock[hidden]{display:none}.build .btn.tool{font-size:14px}.build .btn.tool,.build .btn.tool:hover,.build .btn.tool:active,.build .btn.tool.selected,.build .btn.tool.selected:hover,.build .btn.tool.selected:active{transform:none;transition:none;background:transparent;border:none;box-shadow:none;padding:0}.build .btn.tool.locked,.build .btn.tool.locked:hover,.build .btn.tool.locked:active,.build .btn.tool.locked.selected{background:transparent;border:none;box-shadow:none;padding:0}.build .btn.tool:hover:not(.locked){filter:none}.build .btn.tool .wobble{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;height:100%;padding:0 14px 0 16px;border-radius:inherit;background:var(--fill, var(--cream));box-shadow:3px 4px 0 var(--shadow);color:inherit;pointer-events:none;transform:rotate(-.4deg);transition:transform 90ms ease,box-shadow 90ms ease,background 90ms ease,filter 90ms ease}.build .btn.tool[data-rarity] .wobble{padding-left:8px;border:4px solid transparent;background-color:var(--fill, var(--card));background-image:linear-gradient(180deg,color-mix(in srgb,var(--fill) 86%,white) 0%,var(--fill) 42%,color-mix(in srgb,var(--fill) 88%,black) 100%),linear-gradient(180deg,color-mix(in srgb,var(--edge) 68%,white) 0%,var(--edge) 46%,color-mix(in srgb,var(--edge) 74%,black) 100%);background-origin:border-box;background-clip:padding-box,border-box;box-shadow:3px 4px 0 var(--shadow),inset 0 1px #fff3}.build .btn.tool:hover .wobble{transform:rotate(.8deg) translateY(-1px)}.build .btn.tool[data-rarity]:hover:not(.locked) .wobble{filter:brightness(1.06)}.build .btn.tool:active .wobble{transform:translate(2px,3px) rotate(0);box-shadow:0 0 0 var(--shadow)}.build .btn.tool.selected .wobble,.build .btn.tool.selected:hover .wobble,.build .btn.tool.selected:active .wobble{transform:rotate(-1.4deg)}.build .btn.tool[data-rarity].selected .wobble,.build .btn.tool[data-rarity].selected:hover .wobble,.build .btn.tool[data-rarity].selected:active .wobble{box-shadow:inset 0 0 0 3px #2a1822,inset 0 1px #ffffff29,3px 4px 0 var(--shadow)}.build .btn.tool:not([data-rarity]):hover .wobble{background:#fff6e8}.build .btn.tool:not([data-rarity]):active .wobble,.build .btn.tool:not([data-rarity]).selected .wobble,.build .btn.tool:not([data-rarity]).selected:hover .wobble,.build .btn.tool:not([data-rarity]).selected:active .wobble{background:var(--gold)}.build .btn.tool.kit-sell{align-self:flex-end;width:auto;min-width:0;height:30px;margin-top:8px;padding:0;font-size:12px;color:#d52525;border-radius:11px 5px 11px 6px}.build .btn.tool.kit-sell:hover,.build .btn.tool.kit-sell.selected{color:#d52525}.build .btn.tool.kit-sell .wobble{width:auto;padding:0 12px;border-radius:inherit}.build .label{display:flex;flex-direction:row;align-items:center;gap:6px;line-height:1.05;min-width:0}.build .names{display:flex;flex-direction:column;align-items:flex-start;min-width:0;white-space:nowrap}.build .toy{width:26px;height:26px;flex:none}.build .price{white-space:nowrap;flex:none}.build .rarity-name{font-size:10px;font-style:normal;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.72}@keyframes coinpop{0%{transform:rotate(1.5deg) scale(1)}45%{transform:rotate(-3deg) scale(1.14)}to{transform:rotate(1.5deg) scale(1)}}.tool{width:250px;height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 14px 0 16px}.price{display:inline-flex;align-items:center;gap:4px;font-variant-numeric:tabular-nums}.price.poor{color:#9a2430}.coin-icon{width:1.05em;height:1.05em;flex:none;vertical-align:-.16em;overflow:visible}.coins .coin-face{fill:#2a1822;stroke:#fff4cf}.coins .coin-shadow{fill:#6b3a12}.coins .coin-mark{fill:#f2c14a;stroke:#fff4cf}.quick-banner{position:absolute;top:22px;left:50%;transform:translate(-50%) rotate(-1deg);font-family:Iowan Old Style,Palatino,Georgia,serif;font-size:34px;font-weight:700;pointer-events:none;text-shadow:3px 4px 0 #1a1020}.quick-banner.construct{color:#9ae7c8}.quick-banner.remove{color:#ffb0a4}.save-notice{position:absolute;left:34px;top:92px;font-size:13px;font-style:italic;pointer-events:none}.save-notice.error{color:#ffb0a4;font-weight:700}.save-notice.ok{color:#d6ba96e6}.banner{position:absolute;top:18px;left:50%;min-width:180px;max-width:520px;height:46px;padding:0 22px;display:flex;align-items:center;justify-content:center;background:var(--cream);color:var(--ink);border-radius:8px 18px 10px 16px;font-weight:800;box-shadow:4px 5px 0 var(--shadow);pointer-events:none}.banner.critical{background:#2a1832;color:#ffd27a;box-shadow:4px 5px #140c14,inset 0 0 0 3px #f0b429}.turret-menu,.jump-menu,.flyout{position:absolute;display:none;flex-direction:column;gap:6px;padding:12px;background:var(--cream);color:var(--ink);border-radius:18px 7px 22px 9px;box-shadow:6px 7px #0a060c80;z-index:5}.turret-menu.open,.jump-menu.open,.flyout.open{display:flex}.upgrade-card{--card-scale: .75;width:304px;transform:rotate(-1deg) scale(var(--card-scale));transform-origin:top left;gap:8px;overflow:visible}.upgrade-card.wall-card{width:220px}.upgrade-card h3{margin:0;text-align:center;color:#6a3428;font-size:18px;letter-spacing:.01em}.badge-row{display:flex;align-items:stretch;justify-content:center;gap:8px}.level-pair{display:flex;align-items:stretch;justify-content:center;gap:10px;width:100%;min-width:0}.level-card{flex:1 1 0;min-width:0;min-height:58px;display:flex;align-items:center;justify-content:center;padding:8px 10px;border-radius:14px 6px 14px 8px;border:2px solid var(--level-edge, #2a1822);box-shadow:2px 3px #2a182038;color:#2a1822}.level-card.current{background:var(--level-current, #d7efe4)}.level-card.next{background:var(--level-next, #42d888)}.level-pair>.level-card:only-child{flex:0 1 46%}.level-num{font-size:26px;font-weight:800;line-height:1;letter-spacing:.01em;white-space:nowrap}.level-arrow{align-self:center;flex:none;color:#2a1822;font-size:22px;font-weight:800;line-height:1}.badge-arrow{align-self:center;color:#2a1822;font-size:16px;font-weight:800}.hq-roman{min-width:64px;text-align:center;font-size:28px;font-weight:800;color:#6a3428;background:#ffe7a8;border:2px solid #2a1822;border-radius:14px 6px 14px 8px;box-shadow:2px 3px #2a182047;padding:4px 10px 6px}.hq-roman.next{background:#fff4cf}.hq-changes{display:flex;flex-direction:column;gap:3px;min-height:52px}.hq-changes.idle{visibility:hidden}.hq-change{font-size:13px;font-weight:800;color:#3d2a22;background:#fff4d6b3;border-radius:8px;padding:4px 8px}.upgrade-preview{display:flex;flex-direction:column;gap:3px}.delta{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:baseline;font-size:13px}.stat-name{color:#8a6258;font-weight:800}.stat-values{display:inline-flex;align-items:baseline;gap:4px;font-weight:800;font-variant-numeric:tabular-nums}.stat-values .arrow{color:#8a6258}.delta .next.up{color:#1f7a45}.requirements{display:flex;flex-direction:column;gap:3px}.req-title{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8a6258}.req{display:grid;grid-template-columns:112px 1fr;gap:6px;align-items:center;font-size:12px;font-weight:800}.req-values{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px;font-variant-numeric:tabular-nums}.req-current,.req-required{display:inline-flex;align-items:center;gap:3px}.req-slash{color:#8a6258}.req.short .req-name,.req.short .req-current .amt{color:#ff1a1a}.upgrade-card:not(.hq-card) .upgrade-preview{gap:7px;padding:9px 10px 10px;background:#fff8ee;border-radius:12px 5px 12px 6px;box-shadow:inset 0 0 0 1px #2a182214}.upgrade-card:not(.hq-card) .stat-name{color:#6a463c;font-size:12px;letter-spacing:.01em}.upgrade-card:not(.hq-card) .stat-values{color:#2a1822;font-size:15px}.upgrade-card:not(.hq-card) .req-slot{margin-top:2px}.upgrade-card:not(.hq-card) .requirements{gap:5px;padding:7px 10px 8px;background:#2a18220f;border-radius:10px 4px 10px 5px}.upgrade-card:not(.hq-card) .req-title{font-size:12px;letter-spacing:.14em;color:#8d6c60}.upgrade-card:not(.hq-card) .req{font-size:12px;color:#5c463f}.upgrade-card:not(.hq-card) .req-values{font-size:15px;color:#2a1822}.max-mark{text-align:center;font-weight:800;letter-spacing:.14em;color:#6a3428;background:#efe4d4;border-radius:10px 4px 12px 6px;padding:9px 10px;min-height:44px;display:flex;align-items:center;justify-content:center}.upgrade-card:not(.hq-card) .max-mark{color:var(--tier);background:#2a1832}.ascend-toast{background:#2a1832;color:#fff6df;text-align:center;border-radius:10px 4px 10px 5px;padding:6px 8px;font-size:12px;font-weight:800;letter-spacing:.04em;min-height:30px}.ascend-toast.idle{visibility:hidden}.upgrade-card:not(.hq-card) .req-slot{min-height:64px}.hq-card .req-slot{min-height:40px}.upgrade-card .card-actions{display:flex;flex-direction:column;gap:8px}.upgrade-card .btn,.jump-menu .btn,.flyout .btn{background:#2a1832;color:var(--cream);box-shadow:3px 3px #6a4038;height:auto;min-height:40px;min-width:0;width:100%;padding:8px 10px;white-space:nowrap}.upgrade-card .act,.jump-menu .btn{display:flex;justify-content:space-between;align-items:center;gap:8px}.upgrade-card .act{justify-content:center;min-height:44px;font-size:16px}.upgrade-card .btn.act:disabled,.upgrade-card .btn.act:disabled:hover{background:#efe4d4;color:#6e5c58;box-shadow:none}.upgrade-card .sell-rule{height:2px;margin:8px 6px;background:#4a453f;border-radius:1px}.upgrade-card .btn.sell-quiet{background:#ffb7aa;color:#14120f;box-shadow:3px 3px #6a4038;min-height:44px;height:auto;padding:8px 14px;font-size:16px;justify-content:center;gap:6px}.upgrade-card .btn.sell-quiet:hover,.upgrade-card .btn.sell-quiet:active{background:#f5a194;color:#14120f}.upgrade-card .refund{display:inline-flex;align-items:center;gap:3px;color:#14120f;font-weight:800}.upgrade-card .chip,.jump-menu .chip{display:inline-flex;align-items:center;gap:4px;background:#ffd6782e;color:#ffe3a3;border-radius:8px;padding:2px 6px}.upgrade-card .btn.ascend,.jump-menu .btn.ascend{box-shadow:3px 3px #c47a28}.upgrade-card .btn.jump{background:#3a2844}.upgrade-card .btn:hover,.jump-menu .btn:hover,.flyout .btn:hover{background:#432656;color:var(--cream)}.upgrade-card .btn.sell{background:#e07060;color:#fff8f2}.upgrade-card .btn.sell:hover{background:#f09080}.upgrade-card.pulse-upgrade .star.fresh,.upgrade-card.pulse-ascend .star.fresh{animation:pip-pop var(--upgrade-ms, .34s) var(--upgrade-delay, 0ms) both}.upgrade-card.pulse-upgrade .level-card{animation:tier-pop var(--upgrade-ms, .34s) var(--upgrade-delay, 0ms) both}.upgrade-card.pulse-upgrade .delta .next.up,.upgrade-card.pulse-ascend .delta .next.up{animation:stat-in var(--upgrade-ms, .34s) var(--upgrade-delay, 0ms) both}.upgrade-card.pulse-ascend{animation:card-ascend var(--upgrade-ms, .8s) var(--upgrade-delay, 0ms) both}.upgrade-card.pulse-ascend .ascend-toast{animation:toast-in var(--upgrade-ms, .8s) var(--upgrade-delay, 0ms) both}.upgrade-card .act:active{transform:translate(2px,3px)}@keyframes pip-pop{0%{transform:scale(.72)}50%{transform:scale(1.16)}to{transform:scale(1)}}@keyframes tier-pop{0%{transform:scale(.9)}40%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes stat-in{0%{opacity:.15;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes card-ascend{0%{box-shadow:0 0 0 0 var(--tier)}45%{box-shadow:0 0 0 7px color-mix(in srgb,var(--tier) 50%,transparent)}to{box-shadow:6px 7px #0a060c80}}@keyframes toast-in{0%,20%{opacity:0;transform:translateY(6px)}45%,to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.upgrade-card.pulse-upgrade .star.fresh,.upgrade-card.pulse-ascend .star.fresh,.upgrade-card.pulse-upgrade .level-card,.upgrade-card.pulse-upgrade .delta .next.up,.upgrade-card.pulse-ascend .delta .next.up,.upgrade-card.pulse-ascend,.upgrade-card.pulse-ascend .ascend-toast{animation:none}}.pause-face{display:inline-flex;pointer-events:none}.pause-glyph,.play-glyph{display:inline-flex;gap:5px;height:16px;align-items:center}.pause-glyph i{display:block;width:4px;height:16px;background:currentColor;border-radius:2px}.play-glyph{width:0;height:0;border-left:13px solid currentColor;border-top:8px solid transparent;border-bottom:8px solid transparent}.flyout-host{position:relative}.flyout-bridge{position:absolute;z-index:4;top:0;left:100%;width:10px;height:100%;pointer-events:none}.flyout{top:0;left:calc(100% + 8px);z-index:6;gap:6px;padding:8px}.jump-menu{top:0;left:100%;min-width:228px}.hidden{display:none!important}
