@font-face{font-family:Cinzel;font-style:normal;font-weight:700;font-display:swap;src:url(./cinzel-latin-ext-0-C24KFjuG.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-weight:700;font-display:swap;src:url(./cinzel-latin-1-Dkw14w9r.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lilita One;font-style:normal;font-weight:400;font-display:swap;src:url(data:font/woff2;base64,d09GMgABAAAAAAVoAA8AAAAACegAAAUTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbDBwYBmAAbBEIColciA0LHgABNgIkAzgEIAWDZAc+DAcb9QdRlE5OmOBngm2rYa0IiBSU4SB6GXpb1ovxAEMb3kc8/X6ve+4LIEoWKsKQjE0KaAS5si8LV935qoC6jkBWl99PeNa/acrMsmIWkJM7J2fiwyD6/rZ3nySQEEJPI2+8mQgCjl/7/xfCPjhmumgbjyJtDTLAgZRI5C2Lsyg9Ej+AogCfIgpT4Glg/xqJD/gP3cxixar09EqCLkAR0S2CjsmOByOgCZ096O8EMaNtszM3NFMavYQr9Cp5x9dfFA/5c6zg2Tty8yAadUVizTiA6qa3QCC/ewmYw2NFVjA0W0NfnG8fGGCFUMwlNjUZzmSW9PlG/R/AyDGpxk28hPlctcMi84z8m/D+t4A8BCJ1LJF6PM8poA/kPvkJWDJ1K8BaUZaAFU7lYnST2ctUYrFxdcncWZ+9iCBZ7QpGtRZjgknaiROuAw9zmuW0fBVJAuYMq2n1OtKMXVFHky8Q0hrFz5fHL9r+nEPMnjt7HmivMC8x91xDA/1M/oAFOmT59tOnXR4D/SyfffGCednGaXbT8vxlrLJwBWKuYq7gZdFz7CSU+gIt6kE7uc+Qo2v37Ql5HkHKQsxRQtvGGz2XFwMdv411vIFQ6YqXmDMUlNIsQgwHBXRRFWtcw+hMzOajmR59mMsOuWmOF4yqrMx9tIxFTBfJL+Ii0RlIK4ImubT7MpIsjraaeanajTm7MtJOmW4rxrqXFRkT0If2oT0spW5rQzzafpjguAN9hiRinFZih+0AJ4zTkDbS8Uh95LjURmGlmKaOU1gqqpGTVk+skg4HuviVSNOtxkAukjRmgehpuFJzeK1lTT5P1BR1/PNEQdrPnuV+BTaWg//+kPhs+NC04dbkEaOaIOzcWmf+0GCvjO57t/beypjctoHZoyi8WpYUkmvITj8o+TTCOX91Xp24bnVevsQkk/AmUsZTIOZotreXUWEZNO7bn9qWsbLZpFW6JvXu9NXJzKKH42p+jchuqW1L6vNy1e9301q7tfmbr/QZMkUOD899Yd14NHBLo/SjF5cCSkjT2NHk135OQk4wT8IJPl3A+KVAmsC6w9Yzeb5ippX3NAv4svYkQsqFgb5lm1UzJZ7DRrsvW6fPCvnquOaJ3AZkUSKvIgyXf96PrZJ0kgSzaEuXOoX1hffmtOr/WYZ+xra+RIUo1WFKdehUQIrG3y5m3i9eznH2AwnYJE9dQSY4kM2VOdnutWqt4pcfeb+k1NlrCD2P3ZO5XLekNz+2uPpKb/XJ2t0NUfOkPccR0vHefWSNS4H/BGiupbdcml/BnXeommkZlIk13/I8D/sOQlw8z33xfpVl+C/GxBeA17vkDn3BYWv7dXrdRJsCQnVz7EH1QwnxcArxoPR47glkG2iQNwSZIChqhlyhaVP9a/045AZNdsyOfJGctxwg9NgmBAURbAFAm+MIaZIADY94zBhygFn0uMesbKlubVJlNpuQyGwxwB96jhQ4qR9Qu4XyKu1Tp1cLH/p5ZE990E5DFwpNaqksidKBtoMWVahBSjs1KNRwaI2gi380ig9P3rz5SjWgRqcMBWu/Q2sDMrNLKOq0U7MWT/ny5gPGn6tBkwHtavQaVcbp0m0kfWtTWctTnNVxceak0ulKzTpDe6uiNRqHjom7XY06zVt5qtVilAt3lKFEEM26JK19bwCDFNQf9sQgYUrmZO1Qm5ZiW0CGLZ6Hyvq4TZke5H+6xGcf+8Snzvruczt8Mu1G9R7wrwIAAA==)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lilita One;font-style:normal;font-weight:400;font-display:swap;src:url(./lilita-one-latin-3-87r-Z-Re.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(./nunito-latin-ext-4-CXYtwYOx.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(./nunito-latin-5-BzFMHfZw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(./nunito-latin-ext-4-CXYtwYOx.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(./nunito-latin-5-BzFMHfZw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(./nunito-latin-ext-4-CXYtwYOx.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(./nunito-latin-5-BzFMHfZw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-board:#c8ad82;--color-desk:#5c3a1e;--color-highlight:#f5d9a0;--color-shadow:#2e1e12;--color-ink:#2e1e12;--color-gold:#d4a032;--color-gold-bright:#e8b956;--color-gold-deep:#8b5e1a;--color-gold-hi:#ffe9a0;--color-danger:#c0392b;--color-danger-bright:#e8553e;--color-danger-hi:#ff8060;--color-danger-prose:#ff957a;--color-wave:#4a6670;--color-wave-bright:#a3c0cb;--color-success:#6b8f5e;--color-success-bright:#9bc48a;--color-stat-weakened:#7fc8e8;--color-tower-archer:#3d6b4a;--color-tower-archer-bright:#5a9a6a;--color-tower-mage:#6b4a8b;--color-mage-bright:#a97fd0;--color-tower-barracks:#4a6a8b;--color-tower-cannon:#8b3a3a;--color-tower-alchemist:#6b8f5e;--color-tower-herald:#d4a032;--color-tower-tempest:#3aa8e0;--color-tower-repulsor:#14b8a6;--color-tower-hexer:#4e2a6b;--color-tower-frostborne:#8fd8e8;--color-tower-prism:#e6394c;--color-tower-snare:#c8602f;--color-tower-treasury:#b5832e;--color-tower-ballista:#7e8c9a;--color-tower-brazier:#f0531d;--color-tower-bombard:#586470;--color-enemy-base:#d8cfc0;--color-ui-bg:#1a120b;--color-ui-text:#f5d9a0;--color-ui-text-muted:#c5b5a0;--color-ui-border:#5c3a1e;--color-ui-border-rgb:92, 58, 30;--color-wood-1:#6a3b1c;--color-wood-2:#4a2611;--color-wood-3:#2f1808;--color-wood-edge:#2a1606;--gradient-wooden-btn:linear-gradient(135deg, var(--color-wood-1) 0%, var(--color-wood-2) 60%, var(--color-wood-3) 100%);--color-loading-vignette:#3d2818;--color-parchment:#f5e6c8;--color-paper-ink:#3a2818;--color-paper-ink-heading:#5a2f0e;--color-paper-ink-sub:#6b3416;--color-paper-ink-cost:#8b5a1c;--color-paper-ink-stat:#6b4320;--color-paper-border:#8b6b3f;--color-paper-border-dark:#5c4a3a;--color-paper-pip-deep:#1c0e08;--color-paper-book-cover:#2e1608;--color-paper-book-cover-deep:#1a0c04;--color-paper-book-outline:#0f0702;--color-paper-die-light:#f8ecd0;--color-paper-die-mid:#e6d2a0;--color-paper-die-deep:#cbae78;--color-paper-challenge-light:#ecd8a4;--color-paper-challenge-mid:#d8bd82;--color-paper-challenge-deep:#c1a468;--color-paper-rulebook-light:#f3e1b0;--color-paper-rulebook-mid:#e4cd8c;--color-paper-rulebook-deep:#c9ae6a;--color-boss-hp-high:#e04030;--color-boss-hp-mid:#c0392b;--color-boss-hp-low:#8b1a10;--color-boss-gold-high:#d4a032;--color-boss-gold-mid:#b8860b;--color-boss-gold-low:#8b6914;--color-boss-crit-high:#ff3020;--color-boss-crit-mid:#c10;--color-boss-crit-low:#800;--color-shadow-rgb:46, 30, 18;--color-desk-rgb:92, 58, 30;--color-danger-rgb:192, 57, 43;--color-danger-bright-rgb:232, 85, 62;--color-danger-hi-rgb:255, 128, 96;--color-success-rgb:107, 143, 94;--color-ui-bg-rgb:26, 18, 11;--color-gold-rgb:212, 160, 50;--color-gold-bright-rgb:232, 185, 86;--color-tower-mage-rgb:107, 74, 139;--color-highlight-rgb:245, 217, 160;--color-paper-border-rgb:139, 107, 63;--color-paper-highlight-rgb:255, 243, 210;--color-paper-shadow-rgb:60, 30, 10;--keycap-face:linear-gradient(180deg, rgba(var(--color-paper-border-rgb), .18) 0%, rgba(var(--color-paper-border-rgb), 0) 35%), var(--color-shadow);--font-display:"Lilita One", Impact, sans-serif;--font-body:"Nunito", "Segoe UI", sans-serif;--letter-spacing-label:.5px;--letter-spacing-tight:.3px;--text-halo-over-scene:0 1px 2px rgba(var(--color-shadow-rgb), .9), 0 0 4px rgba(var(--color-shadow-rgb), .75), 0 0 8px rgba(var(--color-shadow-rgb), .55);--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--tap-target-min:44px;--shadow-overlay:0 8px 32px rgba(var(--color-shadow-rgb), .6);--shadow-card:0 4px 16px rgba(var(--color-shadow-rgb), .5);--shadow-card-rest:0 2px 4px rgba(var(--color-shadow-rgb), .4);--shadow-card-mid:0 2px 8px rgba(var(--color-shadow-rgb), .5);--shadow-ability-btn:0 2px 6px #0000008c;--shadow-cta-btn:0 4px 12px #0000008c;--shadow-corner-btn-rest:0 3px 10px #0009;--shadow-corner-btn-hover:0 5px 14px #000000b3;--border-corner-btn-inner:1px solid rgba(var(--color-gold-rgb), .35);--rim-cta-btn-highlight-rest:inset 0 -1px 0 rgba(var(--color-highlight-rgb), .1);--rim-cta-btn-highlight-barely:inset 0 -1px 0 rgba(var(--color-highlight-rgb), .08);--rim-cta-btn-highlight-peak:inset 0 -1px 0 rgba(var(--color-highlight-rgb), .18);--rim-wooden-btn-highlight-mid:inset 0 1px 0 rgba(var(--color-highlight-rgb), .2);--rim-wooden-btn-highlight-rest:inset 0 1px 0 rgba(var(--color-highlight-rgb), .15);--rim-ability-btn-shadow:inset 0 -1px 0 #00000073;--ring-ability-btn-rest:0 0 0 1px rgba(var(--color-gold-rgb), .35);--ring-cta-btn-rest:0 0 0 1px rgba(var(--color-gold-rgb), .55);--ease-overshoot:cubic-bezier(.34, 1.56, .64, 1);--ease-hover-lift:cubic-bezier(.3, 1.2, .5, 1);--transition-hover-lift:transform .15s var(--ease-hover-lift), box-shadow .15s;--ease-commit:cubic-bezier(.2, .8, .3, 1);--anim-significant-gain:.5s ease-out;--anim-stat-reveal-primary:.5s;--anim-stat-reveal-secondary:.4s;--breath-cohort:.833s;--breath-cohort-2x:1.667s;--filter-burst-rest:brightness(1) saturate(1);--border-card-shadow:2px solid var(--color-shadow);--border-wooden-edge:1px solid var(--color-wood-edge);--transform-press:scale(.97);--transform-shimmer-start:translateX(-150%);--transform-shimmer-end:translateX(150%);--transform-center:translate(-50%, -50%);--transform-center-x:translateX(-50%);--transform-center-y:translateY(-50%);--transform-lift-card:translateY(-2px);--shadow-pulse-rest-gold-bright:0 0 0 0 rgba(var(--color-gold-bright-rgb), 0);--shadow-pulse-rest-success:0 0 0 0 rgba(var(--color-success-rgb), 0);--shadow-pulse-rest-danger:0 0 0 0 rgba(var(--color-danger-rgb), 0);--shadow-pulse-rest-gold:0 0 0 0 rgba(var(--color-gold-rgb), 0);--rim-parchment-page-highlight:inset 0 1px 0 rgba(var(--color-paper-highlight-rgb), .55);--color-shimmer-center:#fff8dc8c;--shadow-text-heading:0 2px 6px rgba(var(--color-shadow-rgb), .6);--shadow-text-label:0 1px 3px rgba(var(--color-shadow-rgb), .8);--glow-gold-idle:0 0 4px rgba(var(--color-gold-rgb), .3);--glow-gold-low:0 0 8px rgba(var(--color-gold-rgb), .4);--glow-gold-medium:0 0 8px rgba(var(--color-gold-bright-rgb), .55);--glow-gold-high:0 0 14px rgba(var(--color-gold-bright-rgb), .65);--glow-gold-peak:0 0 22px rgba(var(--color-gold-bright-rgb), .95);--glow-danger-low:0 0 6px rgba(var(--color-danger-rgb), .55);--glow-danger-high:0 0 14px rgba(var(--color-danger-rgb), .95);--drop-shadow-gold-tiny:drop-shadow(0 0 1.5px rgba(var(--color-gold-rgb), .5));--drop-shadow-gold-low:drop-shadow(0 0 3px rgba(var(--color-gold-rgb), .55));--drop-shadow-gold-medium:drop-shadow(0 0 4px rgba(var(--color-gold-rgb), .7));--drop-shadow-gold-high:drop-shadow(0 0 5px rgba(var(--color-gold-rgb), .85));--drop-shadow-danger-low:drop-shadow(0 0 10px rgba(var(--color-danger-rgb), .45));--drop-shadow-danger-medium:drop-shadow(0 0 10px rgba(var(--color-danger-rgb), .7));--drop-shadow-danger-high:drop-shadow(0 0 18px rgba(var(--color-danger-rgb), .85));--text-shadow-danger-low:0 0 6px rgba(var(--color-danger-rgb), .45);--text-shadow-danger-medium:0 0 12px rgba(var(--color-danger-rgb), .7);--text-shadow-danger-high:0 0 18px rgba(var(--color-danger-rgb), .95);--text-shadow-danger-bright-low:0 0 6px rgba(var(--color-danger-bright-rgb), .45);--text-shadow-danger-bright-medium:0 0 12px rgba(var(--color-danger-bright-rgb), .7);--text-shadow-danger-bright-high:0 0 18px rgba(var(--color-danger-bright-rgb), .95);--text-shadow-gold-bright-low:0 0 6px rgba(var(--color-gold-bright-rgb), .55);--text-shadow-gold-bright-medium:0 0 8px rgba(var(--color-gold-bright-rgb), .65);--text-shadow-gold-bright-high:0 0 12px rgba(var(--color-gold-bright-rgb), .85);--shadow-parchment-page-halo:inset 0 0 30px rgba(var(--color-paper-border-rgb), .28);--shadow-parchment-inner-halo:inset 0 0 18px rgba(var(--color-paper-border-rgb), .22);--shadow-carve:inset 0 2px 4px #00000080;--shadow-commit-halo:0 0 0 6px rgba(var(--color-gold-bright-rgb), .55), 0 0 28px 10px rgba(var(--color-gold-bright-rgb), .55);--glow-gold-bright-burst-low:0 0 14px 2px rgba(var(--color-gold-bright-rgb), .55);--glow-gold-bright-burst-medium:0 0 16px 2px rgba(var(--color-gold-bright-rgb), .85);--glow-gold-bright-burst-high:0 0 18px 2px rgba(var(--color-gold-bright-rgb), .95);--text-shadow-rarity-rare-low:0 0 2px rgba(var(--color-gold-rgb), .4);--text-shadow-rarity-rare-high:0 0 6px rgba(var(--color-gold-rgb), .9);--text-shadow-rarity-legendary-low:0 0 3px rgba(var(--color-tower-mage-rgb), .5);--text-shadow-rarity-legendary-high:0 0 9px rgba(var(--color-tower-mage-rgb), 1);--terrain-accent-meadow:#8bbf6a;--terrain-accent-castle:#a08b76;--terrain-accent-water:#7ac0d4;--terrain-accent-volcano:#ff6b3b;--terrain-accent-frost:#b0d8e8;--terrain-accent-dragon:#e0a020;--terrain-accent-hourglass:#d4a032;--terrain-accent-coliseum:#c9a86a;--terrain-accent-gauntlet:#aedcf0;--terrain-accent-crucible:#ff8a3b;--terrain-accent-foundry:#e0602a;--terrain-accent-ford:#8b6b40;--terrain-accent-maelstrom:#ffd24a;--terrain-accent-highlands:#6b8f5e;--terrain-accent-mire:#8a6440;--terrain-accent-frostmarch:#9cc6dc;--terrain-accent-bastion:#9aa0a6;--terrain-accent-emberford:#c9532c;--terrain-accent-cinderfrost:#a8d0e0}:root.theme-royal{--color-board:#b8c8d8;--color-desk:#1e2e4a;--color-highlight:#d4b870;--color-shadow:#0a1628;--color-gold:#c8a030;--color-gold-bright:#e0bc58;--color-danger:#8b2020;--color-danger-bright:#bc4e4e;--color-wave:#3a5080;--color-success:#3a7a5a;--color-tower-archer:#2a5a3a;--color-tower-archer-bright:#3f7a4f;--color-tower-mage:#4a3a7a;--color-tower-barracks:#2a4a7a;--color-tower-cannon:#7a2a2a;--color-enemy-base:#c0c8d0;--color-ui-bg:#0a1020;--color-ui-text:#d4c8a0;--color-ui-text-muted:#aab3bd;--color-ui-border:#2a3a5a;--color-shadow-rgb:10, 22, 40;--color-desk-rgb:30, 46, 74;--color-danger-rgb:139, 32, 32;--color-success-rgb:58, 122, 90;--color-ui-bg-rgb:10, 16, 32;--color-ui-border-rgb:42, 58, 90;--color-gold-rgb:200, 160, 48;--color-gold-bright-rgb:224, 188, 88;--color-tower-mage-rgb:74, 58, 122;--color-highlight-rgb:212, 184, 112}:root.theme-rust{--color-board:#a89878;--color-desk:#3a2a1a;--color-highlight:#d8b880;--color-shadow:#1a1008;--color-gold:#b89040;--color-gold-bright:#d4ac58;--color-danger:#a04030;--color-danger-bright:#c86050;--color-wave:#506a60;--color-success:#4a7a50;--color-tower-archer:#4a6040;--color-tower-archer-bright:#608a55;--color-tower-mage:#5a4a60;--color-tower-barracks:#506870;--color-tower-cannon:#804030;--color-enemy-base:#c8b8a0;--color-ui-bg:#1a1408;--color-ui-text:#d8c8a0;--color-ui-text-muted:#b8afa6;--color-ui-border:#4a3a2a;--color-shadow-rgb:26, 16, 8;--color-desk-rgb:58, 42, 26;--color-danger-rgb:160, 64, 48;--color-success-rgb:74, 122, 80;--color-ui-bg-rgb:26, 20, 8;--color-ui-border-rgb:74, 58, 42;--color-gold-rgb:184, 144, 64;--color-gold-bright-rgb:212, 172, 88;--color-tower-mage-rgb:90, 74, 96;--color-highlight-rgb:216, 184, 128}*,:before,:after{box-sizing:border-box;margin:0;padding:0}*{touch-action:manipulation;-webkit-tap-highlight-color:transparent}html,body{overscroll-behavior:none;background-color:var(--color-ui-bg);width:100%;height:100%;font-family:var(--font-body);color:var(--color-ui-text);-webkit-user-select:none;user-select:none;position:fixed;overflow:hidden}button,input,select,textarea{font-family:inherit}#game-canvas{touch-action:none;cursor:crosshair;width:100%;height:100%;display:block}#hud{pointer-events:none;z-index:10;contain:layout style;position:fixed;inset:0}#hud>*{pointer-events:auto}#hud>.tower-tooltip,#hud>.combo-meter,#hud>.ghost-bonus-badge,#hud>.floating-number,#hud>.tower-bar-scroll-hint,#hud>.primary-threat-marker,#hud>.hp-bar,#hud>.hp-bar-status-glyph,#hud>.mark-crosshair,#hud>.target-priority-glyph,#hud>.tower-spec-icon,#hud>.draft-missed-indicator,#hud>.lightning-flash,#hud>.boss-name-callout,#hud>.boss-announce,#hud>.combo-text{pointer-events:none}@supports (padding-top:env(safe-area-inset-top)){#hud{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}@keyframes weather-rain{0%{opacity:.6;transform:translate(0)rotate(8deg)}to{opacity:0;transform:translate(12px,110vh)rotate(8deg)}}@keyframes weather-ember{0%{opacity:.7;transform:translateY(0)translate(0)}30%{opacity:.88;transform:translateY(-22vh)translate(11px)}50%{opacity:.42;transform:translateY(-40vh)translate(20px)}70%{opacity:.6;transform:translateY(-62vh)translate(8px)}to{opacity:0;transform:translateY(-90vh)translate(-10px)}}@keyframes weather-snow{0%{opacity:.5;transform:translateY(0)translate(0)}25%{opacity:.68;transform:translateY(25vh)translate(8px)}50%{opacity:.3;transform:translateY(50vh)translate(15px)}75%{opacity:.55;transform:translateY(75vh)translate(5px)}to{opacity:0;transform:translateY(110vh)translate(-5px)}}@keyframes weather-pollen{0%{opacity:0;transform:translate(0)scale(.6)}12%{opacity:.6;transform:translate(13vw,-16px)scale(1)}34%{opacity:.78;transform:translate(36vw,22px)scale(.9)}56%{opacity:.5;transform:translate(60vw,-24px)scale(1.05)}80%{opacity:.66;transform:translate(86vw,26px)scale(.94)}to{opacity:0;transform:translate(116vw,-10px)scale(.7)}}@media (pointer:coarse){.tower-hotkey,.ability-key,.spell-key,.radial-btn kbd,.undo-key,.esc-label{display:none!important}.spell-buy-btn .spell-buy-cost{margin-right:0!important}}@media (max-width:600px) and (orientation:portrait){:root{--tap-target-min:48px}#tower-bar{padding-bottom:env(safe-area-inset-bottom,0px);flex-wrap:wrap;justify-content:flex-start;gap:4px!important;width:auto!important;bottom:6px!important;left:6px!important;right:66px!important;transform:none!important}#start-wave-btn{bottom:430px!important}.tower-card{min-width:58px!important;padding:4px 6px!important}.tower-name{font-size:9px!important}.tower-dps,.tower-hotkey,.ability-key,.spell-key{display:none!important}.spell-buy-btn .spell-buy-cost{margin-right:0!important}.radial-btn kbd,.undo-key,.esc-label{display:none!important}#hud-top{flex-wrap:wrap;gap:4px;padding-right:84px;left:var(--space-xs)!important;right:var(--space-xs)!important}#hud-top>#lives-display{position:absolute;top:0;right:0}#hud-top>.hud-pill{transform-origin:0}#hud-top>#lives-display{transform-origin:100%}.hud-pill{padding:2px 6px!important;font-size:12px!important}#onboarding-hint,#onboarding-hint.hint-center{bottom:min(520px,100vh - 260px)!important;bottom:min(520px,100dvh - 260px)!important}.tutorial-hint--center{top:var(--tutorial-hint-center-top,36%)!important;width:min(340px,88vw)!important;max-width:min(340px,88vw)!important;padding:8px 14px!important;font-size:12px!important;line-height:1.3!important}.tutorial-hint--bottom{bottom:min(420px, calc(100vh - 260px), var(--tutorial-hint-bottom-cap,100vh))!important;width:min(320px,90vw)!important;max-width:min(320px,90vw)!important}@supports (height:1dvh){.tutorial-hint--bottom{bottom:min(420px, calc(100dvh - 260px), var(--tutorial-hint-bottom-cap,100dvh))!important}}.tutorial-hint--top{width:min(320px,90vw)!important;max-width:min(320px,90vw)!important}.stuck-hint--place-tower{display:none!important}#map-select-overlay{overflow-y:auto!important}#map-select-overlay .map-grid-wrap{flex:none;min-height:auto}#map-select-overlay .map-grid{flex:none!important;min-height:auto!important;overflow-y:visible!important}#map-select-overlay{gap:5px!important}#map-select-overlay .map-select-brand-mark{width:46px!important;height:46px!important;margin-top:34px!important;margin-bottom:2px!important}@media (pointer:coarse){#map-select-overlay .map-select-brand-mark{margin-top:48px!important}}#map-select-overlay .map-select-title{font-size:22px!important}#map-select-overlay .map-select-studio,#map-select-overlay .daily-seed-line,.kb-hint{display:none!important}#ability-bar{bottom:164px!important;right:var(--space-md)!important}.tutorial-hint--center,.tutorial-hint--bottom,.tutorial-hint--top{width:min(340px,100vw - 64px)!important;max-width:min(340px,100vw - 64px)!important;margin-left:-28px!important}.hero-placement-banner{top:calc(var(--space-sm) + 215px)!important;max-width:min(320px,86vw)!important;padding:8px 14px!important}.hero-placement-banner>div:nth-child(2){font-size:11px!important;line-height:1.3!important}.ability-btn{width:38px!important;height:38px!important}body.draft-open .wave-preview-banner{display:none!important}body.draft-open .start-wave-btn,body.draft-open #build-dock-btn,body.draft-open #survey-btn{visibility:hidden!important}.draft-panel{max-height:55vh;overflow:hidden auto;width:100%!important;padding:12px 8px env(safe-area-inset-bottom,8px)!important;border-left:none!important;border-top:2px solid var(--color-ui-border)!important;flex-direction:column!important;inset:auto 0 0!important;box-shadow:0 -4px 20px #0006!important}.draft-panel>.draft-cards{flex-wrap:wrap;justify-content:center;flex-direction:row!important;gap:8px!important}.draft-card{flex:calc(33% - 8px);max-width:120px;padding:6px!important}.draft-panel>.draft-actions{flex-direction:row;gap:8px}.draft-actions>.draft-reroll-btn,.draft-actions>.draft-skip-btn{flex:1 1 0;width:auto;min-width:0;margin-top:0;padding:8px}.relic-card,.spell-draft-card{flex:calc(33% - 8px)!important;width:auto!important;min-width:0!important;max-width:120px!important;padding:6px!important}.draft-icon{font-size:22px!important}.draft-name,.relic-name{font-size:11px!important}.relic-desc{font-size:11px!important;line-height:1.3!important}.relic-icon svg{width:36px!important;height:36px!important}.spell-draft-icon{font-size:22px!important}.spell-draft-name{font-size:11px!important}.spell-draft-desc{font-size:11px!important;line-height:1.3!important}.map-card{min-width:120px!important;padding:var(--space-md)!important}}.tower-bar-scroll-hint{color:var(--color-gold);opacity:.9;pointer-events:none;z-index:21;text-shadow:0 1px 2px rgba(var(--color-shadow-rgb), .8);font-size:14px;animation:1.5s ease-in-out infinite map-grid-chevron-bob;display:none;position:fixed;bottom:8px;left:50%}@media (prefers-reduced-motion:reduce){.tower-bar-scroll-hint{transform:var(--transform-center-x);animation:none}}@media (max-width:600px) and (max-height:750px) and (orientation:portrait){#tower-bar{scrollbar-width:none;align-content:flex-start!important;gap:3px!important;max-height:42vh!important;bottom:4px!important;overflow:hidden auto!important}#tower-bar::-webkit-scrollbar{width:0;height:0}#tower-bar[data-overflow=true][data-at-bottom=false]{-webkit-mask-image:var(--tower-tray-fade-mask);-webkit-mask-image:var(--tower-tray-fade-mask);mask-image:var(--tower-tray-fade-mask)}#tower-bar[data-overflow=true][data-at-bottom=false]~.tower-bar-scroll-hint{display:block}body.radial-open .tower-bar-scroll-hint{display:none!important}.tower-card{min-width:50px!important;min-height:40px!important;padding:3px 5px!important}.tower-name{font-size:9px!important}.tower-cost{font-size:11px!important}#start-wave-btn{bottom:calc(42vh + 12px)!important}body.hero-placing #start-wave-btn,body.radial-open #start-wave-btn,body.radial-open #tower-bar,body.radial-open #ability-bar,body.radial-open #hero-ability-btn,body.radial-open #spell-hand,body.radial-open #undo-btn,body.radial-open .stuck-hint{display:none!important}.wave-preview-trait,.wave-preview-press,.wave-preview-flavour{font-size:13px!important}.wave-preview-new-badge{font-size:11px!important}.wave-preview-banner{transform-origin:top!important;--wave-preview-top:max(calc(var(--space-sm) + 52px), var(--wave-stats-clearance,0px), calc(max(var(--toast-anchor-y,calc(45px + var(--hud-top-drop,0px))), var(--wave-stats-clearance,0px)) + var(--toast-stack-extent,0px)))!important;top:var(--wave-preview-top)!important;transform:translate(-50%)scale(.85)!important}.hero-placement-banner{top:calc(var(--space-sm) + 150px)!important;max-width:min(300px,90vw)!important;padding:6px 10px!important}.hero-placement-banner>div:first-child{font-size:13px!important}.hero-placement-banner>div:nth-child(2){font-size:11px!important;line-height:1.25!important}}#build-dock-btn{display:none}#survey-btn{left:var(--space-sm);z-index:26;width:44px;height:44px;color:var(--color-gold);border:1px solid rgba(var(--color-gold-rgb), .5);box-shadow:0 3px 10px rgba(var(--color-shadow-rgb), .4);cursor:pointer;background:linear-gradient(#342210f2,#26180bf7);border-radius:10px;justify-content:center;align-items:center;padding:0;display:none;position:fixed;bottom:70px}#survey-btn[aria-pressed=true]{color:var(--color-shadow);background:var(--color-gold)}body.board-survey #tower-bar,body.board-survey #build-dock-btn{opacity:.25;pointer-events:none}body.board-survey.build-sheet-open #tower-bar{opacity:1}@media (max-width:600px) and (orientation:portrait) and (pointer:coarse){#tower-bar,#slots-display,#tower-bar:before,.tower-bar-scroll-hint,body.draft-open.build-sheet-open #tower-bar{display:none!important}body.build-sheet-open #tower-bar{box-shadow:0 -8px 28px rgba(var(--color-shadow-rgb), .55);border-top:1px solid rgba(var(--color-gold-rgb), .35);z-index:44;background:linear-gradient(#20140af5,#180e07fa);border-radius:16px 16px 0 0;flex-wrap:wrap;justify-content:center;width:100%!important;max-width:100vw!important;max-height:60vh!important;padding:12px 8px calc(10px + env(safe-area-inset-bottom,0px))!important;pointer-events:auto!important;align-content:flex-start!important;gap:4px!important;display:flex!important;bottom:0!important;left:0!important;right:0!important;overflow:hidden auto!important;transform:none!important}body.build-sheet-open #tower-bar.sheet-guard,body.build-sheet-open #tower-bar.sheet-guard>*{pointer-events:none!important}body.build-sheet-open #tower-bar .tower-card{min-width:62px!important;min-height:56px!important;padding:5px 6px!important}body.build-sheet-open #tower-bar .tower-dps{display:block!important}body.build-sheet-open #start-wave-btn,body.build-sheet-open #ability-bar,body.build-sheet-open #hero-ability-btn,body.build-sheet-open #spell-hand,body.build-sheet-open #undo-btn,body.build-sheet-open .stuck-hint,body.build-sheet-open #build-dock-btn{display:none!important}body.build-sheet-closing #start-wave-btn,body.build-sheet-closing #ability-bar,body.build-sheet-closing #ability-bar *,body.build-sheet-closing #hero-ability-btn,body.build-sheet-closing #spell-hand,body.build-sheet-closing #spell-hand *,body.build-sheet-closing #undo-btn,body.build-sheet-closing #build-dock-btn{pointer-events:none!important}#start-wave-btn{bottom:calc(14px + env(safe-area-inset-bottom,0px))!important;left:auto!important;right:14px!important;transform:none!important}#start-wave-btn:active{transform:translateY(1px)!important}#survey-btn{display:flex}#build-dock-btn{left:14px;bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:26;min-height:48px;font-family:var(--font-display);color:var(--color-gold);border:1px solid rgba(var(--color-gold-rgb), .5);box-shadow:0 3px 10px rgba(var(--color-shadow-rgb), .4);cursor:pointer;background:linear-gradient(#342210f2,#26180bf7);border-radius:10px;align-items:center;gap:6px;padding:10px 16px;font-size:15px;display:flex;position:fixed}body.radial-open #build-dock-btn,body.hero-placing #build-dock-btn,.stuck-hint,body.hero-placing .wave-preview-banner{display:none!important}#spell-hand{bottom:calc(78px + env(safe-area-inset-bottom,0px))!important}#ability-bar{bottom:calc(226px + env(safe-area-inset-bottom,0px))!important}#hero-ability-btn{bottom:calc(356px + env(safe-area-inset-bottom,0px))!important}#undo-btn{min-height:44px;left:14px!important;right:auto!important;bottom:calc(74px + env(safe-area-inset-bottom,0px))!important;bottom:var(--undo-dock-bottom,calc(74px + env(safe-area-inset-bottom,0px)))!important}}@media (max-width:360px) and (orientation:portrait) and (pointer:coarse){#build-dock-btn{bottom:calc(14px + 48px + 8px + env(safe-area-inset-bottom,0px))}}@media (min-width:361px) and (orientation:portrait) and (pointer:coarse){#start-wave-btn .start-wave-countdown{max-width:130px}}@media (max-height:720px) and (min-width:601px) and (orientation:landscape){.draft-panel{width:380px!important;padding:14px 12px!important}#spell-deal-overlay{width:300px!important}.draft-panel>.draft-cards{flex-wrap:wrap;justify-content:center;flex-direction:row!important;gap:8px!important}.draft-card,.relic-card,.spell-draft-card{flex:calc(33% - 8px)!important;min-width:0!important;max-width:130px!important;padding:8px!important}.draft-icon{font-size:22px!important}.draft-name,.relic-name{font-size:11px!important}.relic-desc{font-size:11px!important;line-height:1.3!important}.relic-icon svg{width:36px!important;height:36px!important}}@media (max-height:450px) and (orientation:landscape){#hud-top{top:2px!important}.hud-pill{padding:1px 6px!important;font-size:11px!important}#tower-bar{bottom:4px!important}.tower-card{min-height:36px!important;padding:3px 8px!important}#start-wave-btn{bottom:250px!important}}.landscape-lock{display:none}@media (orientation:landscape) and (max-height:500px),(orientation:landscape) and (max-width:600px),(orientation:landscape) and (max-width:640px) and (pointer:coarse){.landscape-lock{z-index:3000;-webkit-backdrop-filter:blur(6px);text-align:center;color:var(--color-parchment);background:radial-gradient(circle at 50% 42%,#3c2816f0,#120c08fa);justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.landscape-lock .landscape-lock-card{flex-direction:column;align-items:center;gap:10px;max-width:460px;display:flex}.landscape-lock .landscape-lock-icon{color:var(--color-gold,#e8b64c);font-size:44px;line-height:1;animation:2.4s ease-in-out infinite landscape-lock-turn}.landscape-lock .landscape-lock-title{letter-spacing:.02em;color:var(--color-gold,#e8b64c);margin:0;font-size:22px;font-weight:800}.landscape-lock .landscape-lock-body{opacity:.92;margin:0;font-size:14px;line-height:1.45}}@keyframes landscape-lock-turn{0%,to{transform:rotate(-18deg)}50%{transform:rotate(72deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}:is(.tower-card:hover,.tower-card:focus-visible){transform:none!important}.floating-number{animation:none!important}}html.motion-reduced *,html.motion-reduced :before,html.motion-reduced :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}:is(html.motion-reduced .tower-card:hover,html.motion-reduced .tower-card:focus-visible){transform:none!important}html.motion-reduced .floating-number{animation:none!important}@media (min-width:601px) and (max-height:940px){#map-select-overlay{gap:6px!important;overflow-y:auto!important}#map-select-overlay .map-select-brand-mark{width:48px!important;height:48px!important;margin-bottom:2px!important}#map-select-overlay .map-select-title{font-size:26px!important}#map-select-overlay .map-select-studio,#map-select-overlay .daily-seed-line{display:none!important}#map-select-overlay .challenge-card-row{max-width:min(1100px,96vw)!important}#map-select-overlay .map-grid,#map-select-overlay .map-grid-wrap{min-height:300px!important}}@media not all and (max-width:600px) and (orientation:portrait){body.draft-open{--banner-max-width:calc(100vw - 2 * (180px + 12px))}}body.photo-mode #hud,body.photo-mode #hud *{pointer-events:none!important}@keyframes critical-pulse{0%,to{box-shadow:var(--shadow-pulse-rest-danger)}50%{box-shadow:0 0 calc(20px + 16px * var(--life-desperation,0)) calc(4px + 4px * var(--life-desperation,0)) rgba(var(--color-danger-rgb), calc(.4 + .3 * var(--life-desperation,0)))}}#lives-display.critical{border:1px solid var(--color-danger);animation:1s ease-in-out infinite critical-pulse;color:var(--color-danger-bright)!important}#lives-display.critical-deep{border:1px solid var(--color-danger-bright);animation:.833s ease-in-out infinite lives-critical-deep-pulse;color:var(--color-danger-hi)!important}@keyframes lives-critical-deep-pulse{0%,to{box-shadow:0 0 8px 1px rgba(var(--color-danger-bright-rgb), .45)}50%{box-shadow:0 0 28px 6px rgba(var(--color-danger-bright-rgb), .85)}}@media (prefers-reduced-motion:reduce){#lives-display.critical-deep{border:1px solid var(--color-danger-bright);animation:none;color:var(--color-danger-bright)!important}}@keyframes lives-heart-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes lives-heart-pulse-deep{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}#lives-display.critical>svg:first-of-type{transform-origin:50%;animation:1s ease-in-out infinite lives-heart-pulse}#lives-display.critical-deep>svg:first-of-type{transform-origin:50%;animation:.833s ease-in-out infinite lives-heart-pulse-deep}@media (prefers-reduced-motion:reduce){#lives-display.critical>svg:first-of-type,#lives-display.critical-deep>svg:first-of-type{animation:none}}@keyframes danger-border-pulse{0%,to{box-shadow:inset 0 0 30px rgba(var(--color-danger-rgb), 0)}50%{box-shadow:inset 0 0 calc(60px + 36px * var(--life-desperation,0)) rgba(var(--color-danger-rgb), calc(.3 + .2 * var(--life-desperation,0)))}}#hud.danger-state{animation:1.5s ease-in-out infinite danger-border-pulse}#tower-bar{bottom:var(--space-md);transform:var(--transform-center-x);gap:var(--space-sm);z-index:20;pointer-events:none;--tower-tray-fade-mask:linear-gradient(to bottom, #000 calc(100% - 34px), #00000040 100%);display:flex;position:fixed;left:50%}#tower-bar>*{pointer-events:auto}@media (min-width:601px) and (max-width:1600px){#tower-bar{flex-wrap:wrap;justify-content:center;gap:4px;width:min(96vw,100vw - 128px)}#tower-bar>.tower-card{padding-left:var(--space-sm);padding-right:var(--space-sm);min-width:64px}html[lang=de] #tower-bar>.tower-card{padding-left:var(--space-xs);padding-right:var(--space-xs)}}@media (min-width:1601px){#tower-bar{width:max-content;max-width:calc(100vw - 128px)}}@media (min-width:1601px) and (max-width:1799px){html[lang=de] #tower-bar>.tower-card{padding-left:var(--space-sm);padding-right:var(--space-sm)}}@media (min-width:601px) and (max-width:1365px){html[lang=de] #tower-bar{gap:2px}html[lang=de] #tower-bar>.tower-card .tower-name{font-size:11px}}@media (min-width:601px) and (max-width:1024px),(min-width:1025px) and (max-height:640px){#tower-bar{scrollbar-width:none;align-content:flex-start;max-height:min(33vh,264px);overflow:hidden auto}#tower-bar::-webkit-scrollbar{width:0;height:0}#tower-bar[data-overflow=true][data-at-bottom=false]{-webkit-mask-image:var(--tower-tray-fade-mask);-webkit-mask-image:var(--tower-tray-fade-mask);mask-image:var(--tower-tray-fade-mask)}#tower-bar[data-overflow=true][data-at-bottom=false]~.tower-bar-scroll-hint{bottom:calc(var(--space-md) + 4px);display:block}}@media (min-width:601px){.tutorial-hint--bottom{bottom:min(max(300px, calc(var(--tower-bar-clearance,0px) + 100px)), var(--tutorial-hint-bottom-cap,100vh))!important}}#tower-bar:before{content:"";pointer-events:none;z-index:19;background:linear-gradient(#0000 0%,#140c061a 45%,#140c0638 75%,#140c064d 100%);height:220px;position:fixed;bottom:0;left:0;right:0}.tower-card{padding:var(--space-sm) var(--space-md);min-width:72px;min-height:var(--tap-target-min);background:var(--color-desk);border:var(--border-card-shadow);color:var(--color-ui-text);font-family:var(--font-body);cursor:pointer;box-shadow:var(--shadow-card-rest);transition:transform .18s var(--ease-hover-lift), box-shadow .18s, opacity .2s ease-out, filter .2s ease-out;border-radius:8px;flex-direction:column;align-items:center;gap:2px;display:flex}:is(.tower-card:hover,.tower-card:focus-visible){transform:var(--transform-lift-card);box-shadow:0 4px 8px rgba(var(--color-shadow-rgb), .5)}.tower-card:active{box-shadow:0 1px 2px rgba(var(--color-shadow-rgb), .3);transform:translateY(0)}.tower-card.selected{border-color:var(--color-gold);box-shadow:var(--glow-gold-low);animation:2s ease-in-out infinite alternate tower-card-selected-breath}@keyframes tower-card-selected-breath{0%{box-shadow:var(--glow-gold-low);border-color:var(--color-gold)}to{box-shadow:var(--glow-gold-high);border-color:var(--color-gold-bright)}}@media (prefers-reduced-motion:reduce){.tower-card.selected{animation:none}}.gate-btn.unaffordable{opacity:.5;cursor:not-allowed!important}@media (pointer:coarse){.gate-btn{min-height:44px}}.draft-reroll-btn.unaffordable{color:rgba(var(--color-gold-rgb), .7);border-color:rgba(var(--color-gold-rgb), .45);cursor:not-allowed!important}.tower-card.unaffordable[aria-disabled=true]{cursor:not-allowed}.tower-card.unaffordable>:not(.tower-deficit):not(.tower-cost):not(.tower-icon){opacity:.75;transition:opacity .2s ease-out}.tower-card.unaffordable>.tower-icon{opacity:.4;filter:grayscale(.8);transition:opacity .2s ease-out,filter .2s ease-out}.draft-reroll-btn,.draft-skip-btn{width:100%;min-height:44px;margin-top:4px;padding:8px 16px}.draft-actions{background:#1e1914;flex-direction:column;position:sticky;bottom:0}.draft-reroll-btn{background:var(--color-shadow);border-color:var(--color-gold);color:var(--color-gold);transition:background .15s,border-color .15s}.draft-skip-btn{color:var(--color-ui-text-muted);background:var(--color-shadow);border-color:var(--color-ui-border);transition:background .15s,border-color .15s,color .15s}:is(.draft-reroll-btn:hover:not(.unaffordable),.draft-reroll-btn:focus-visible:not(.unaffordable)){background:linear-gradient(rgba(var(--color-gold-rgb), .15), rgba(var(--color-gold-rgb), .15)), var(--color-shadow);border-color:var(--color-gold-bright);box-shadow:0 0 12px rgba(var(--color-gold-rgb), .35);outline:none}:is(.draft-skip-btn:hover,.draft-skip-btn:focus-visible){background:linear-gradient(rgba(var(--color-gold-rgb), .06), rgba(var(--color-gold-rgb), .06)), var(--color-shadow);border-color:var(--color-gold);color:var(--color-ui-text);outline:none}.draft-reroll-btn:active:not(.unaffordable),.draft-skip-btn:active{transform:var(--transform-press)}.radial-btn.unaffordable{color:var(--color-ui-text-muted);filter:saturate(.55);cursor:not-allowed!important}.tower-card.locked[aria-disabled=true]{cursor:not-allowed}.tower-card.locked>:not(.tower-lock-overlay):not(.tower-unlock-price){opacity:.3;filter:grayscale();transition:opacity .2s ease-out,filter .2s ease-out}.tower-card .tower-unlock-price{text-align:center;font-family:var(--font-body);color:var(--color-gold-bright);text-shadow:0 1px 2px rgba(var(--color-shadow-rgb), .85);pointer-events:none;z-index:2;font-size:9px;font-weight:800;line-height:1;position:absolute;bottom:2px;left:0;right:0}.tower-card .tower-unlock-price.hidden{display:none}.tower-card.unlock-armed{border-color:var(--color-gold-bright);box-shadow:0 0 0 2px rgba(var(--color-gold-rgb), .45);animation:.6s ease-in-out infinite sell-pulse}.tower-card .tower-unlock-price.too-short{color:var(--color-ui-text-muted,var(--color-ui-border));opacity:.85}.tower-card .tower-lock-overlay{display:none}.tower-card.locked .tower-lock-overlay{pointer-events:none;background:radial-gradient(circle,#0000008c 0,#0000 38%);display:block;position:absolute;inset:0}.tower-card.locked .tower-lock-overlay svg{transform:var(--transform-center);filter:drop-shadow(0 2px 4px #000000b3);position:absolute;top:22%;left:50%}.tower-card.tower-card-just-unlocked{animation:tower-card-unlock-burst .55s var(--ease-overshoot)}@keyframes tower-card-unlock-burst{0%{box-shadow:var(--shadow-pulse-rest-gold-bright);filter:brightness(1.2)saturate(1.4);transform:scale(.9)}35%{box-shadow:0 0 22px 4px rgba(var(--color-gold-bright-rgb), .85);filter:brightness(1.2)saturate(1.4);transform:scale(1.18)}70%{box-shadow:0 0 14px 2px rgba(var(--color-gold-bright-rgb), .5);filter:var(--filter-burst-rest);transform:scale(1.04)}to{box-shadow:var(--shadow-pulse-rest-gold-bright);filter:none;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.tower-card.tower-card-just-unlocked{animation:none}}.tower-card.tower-card-just-affordable,.gate-btn.gate-btn-just-affordable{animation:tower-card-affordable-bob .36s var(--ease-overshoot)}@keyframes tower-card-affordable-bob{0%{box-shadow:var(--shadow-card-rest);transform:scale(1)}40%{box-shadow:var(--shadow-card-rest), 0 0 12px 2px rgba(var(--color-gold-rgb), .55);transform:scale(1.06)}to{box-shadow:var(--shadow-card-rest);transform:scale(1)}}@media (prefers-reduced-motion:reduce){.tower-card.tower-card-just-affordable,.gate-btn.gate-btn-just-affordable{animation:none}}.tower-card.recommended-starter{border-color:rgba(var(--color-gold-rgb), .75);animation:2.6s ease-in-out infinite alternate tower-card-recommended-breath}@keyframes tower-card-recommended-breath{0%{box-shadow:var(--shadow-card-rest), 0 0 7px 1px rgba(var(--color-gold-rgb), .3)}to{box-shadow:var(--shadow-card-rest), 0 0 15px 3px rgba(var(--color-gold-bright-rgb), .55)}}@media (prefers-reduced-motion:reduce){.tower-card.recommended-starter{box-shadow:var(--shadow-card-rest), 0 0 12px 2px rgba(var(--color-gold-rgb), .45);animation:none}}.tower-card.tower-card-bonus-consumed{animation:tower-card-bonus-consumed .5s var(--ease-overshoot)}@keyframes tower-card-bonus-consumed{0%{box-shadow:var(--shadow-card-rest);transform:scale(1)}35%{box-shadow:var(--shadow-card-rest), 0 0 18px 4px rgba(var(--color-gold-rgb), .7);transform:scale(1.08)}to{box-shadow:var(--shadow-card-rest);transform:scale(1)}}@media (prefers-reduced-motion:reduce){.tower-card.tower-card-bonus-consumed{animation:none}}@keyframes reject-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.tower-card.reject-shake,.ability-btn.reject-shake,.gate-btn.reject-shake,.draft-reroll-btn.reject-shake,.radial-btn.upgrade.reject-shake,.radial-btn.ability.reject-shake,.buy-life-btn.reject-shake,.spell-btn.reject-shake,.start-wave-btn.reject-shake,#speed-btn.reject-shake{animation:.18s ease-in-out reject-shake}#speed-btn[data-locked=true]{cursor:not-allowed;opacity:.75}.tower-card.prestige{border-color:var(--color-gold);box-shadow:0 0 10px rgba(var(--color-gold-rgb), .5), inset 0 0 6px rgba(var(--color-gold-rgb), .15);isolation:isolate;position:relative}.tower-card.prestige:after{content:"";z-index:-1;border-radius:inherit;pointer-events:none;box-shadow:0 0 16px rgba(var(--color-gold-bright-rgb), .7), inset 0 0 9px rgba(var(--color-gold-bright-rgb), .28);opacity:0;will-change:opacity;animation:5.4s ease-in-out infinite alternate tower-card-prestige-glow;position:absolute;inset:0}@keyframes tower-card-prestige-glow{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.tower-card.prestige:after{animation:none}}.mastery-pips{letter-spacing:var(--letter-spacing-label);color:var(--color-gold);margin-top:1px;font-size:6px;line-height:1}.tower-hotkey{font-family:var(--font-body);color:var(--color-ui-text);background:var(--keycap-face);opacity:.85;box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 1px 1px #0006;border-radius:3px;padding:1px 4px;font-size:10px;font-weight:800;line-height:14px;position:absolute;top:2px;right:4px}.tower-card{position:relative}.tower-hotkey-onboard{animation:.6s ease-out both tower-hotkey-onboard}.tower-card.locked-for-run .tower-hotkey{visibility:hidden}.tower-card:nth-child(2) .tower-hotkey-onboard{animation-delay:.11s}.tower-card:nth-child(3) .tower-hotkey-onboard{animation-delay:.22s}.tower-card:nth-child(4) .tower-hotkey-onboard{animation-delay:.33s}.tower-card:nth-child(5) .tower-hotkey-onboard{animation-delay:.44s}.tower-card:nth-child(6) .tower-hotkey-onboard{animation-delay:.55s}@keyframes tower-hotkey-onboard{0%{box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 1px 1px #0006;opacity:.85;transform:scale(1)}40%{box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 0 12px 2px rgba(var(--color-gold-bright-rgb), .75);opacity:1;transform:scale(1.28)}to{box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 1px 1px #0006;opacity:.85;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.tower-hotkey-onboard{animation:none}}.spell-key-onboard{animation:.6s ease-out both spell-key-onboard}.spell-slot-empty:nth-child(2) .spell-key-onboard{animation-delay:.11s}.spell-slot-empty:nth-child(3) .spell-key-onboard{animation-delay:.22s}@keyframes spell-key-onboard{0%{box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 1px 1px #0006;opacity:.7;transform:scale(1)}40%{box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 0 10px 2px rgba(var(--color-tower-mage-rgb), .75);opacity:1;transform:scale(1.32)}to{box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 1px 1px #0006;opacity:.7;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.spell-key-onboard{animation:none;opacity:.7!important}}.ability-key-onboard{animation:.6s ease-out both ability-key-onboard}#ability-bar .ability-btn:nth-of-type(2) .ability-key-onboard{animation-delay:.11s}#ability-bar .ability-btn:nth-of-type(3) .ability-key-onboard{animation-delay:.22s}@keyframes ability-key-onboard{0%{box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 1px 1px #0006;opacity:.95;transform:scale(1)}40%{box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 0 10px 2px rgba(var(--color-gold-bright-rgb), .85);opacity:1;transform:scale(1.32)}to{box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 1px 1px #0006;opacity:.95;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.ability-key-onboard{animation:none;opacity:.95!important}}.tower-icon{transition:transform .15s var(--ease-hover-lift);font-size:24px;line-height:1.2}:is(.tower-card:hover .tower-icon,.tower-card:focus-visible .tower-icon){transform:scale(1.08)}@media (prefers-reduced-motion:reduce){.tower-icon{transition:none}:is(.tower-card:hover .tower-icon,.tower-card:focus-visible .tower-icon){transform:none}}.tower-name{font-size:12px;font-weight:700}.tower-dps{color:var(--color-ui-text-muted);font-size:10px}.tower-dps.tower-dps-empowered{color:var(--color-mage-bright);text-shadow:0 0 6px rgba(var(--color-tower-mage-rgb), .45);font-weight:700}.tower-tooltip .tt-empowered{color:var(--color-mage-bright)}.tower-cost{color:var(--color-gold);font-size:13px;font-weight:800}.tower-deficit{color:var(--color-danger-hi);min-height:14px;font-size:10px;font-weight:700}.tower-card-bonus{font-family:var(--font-body);letter-spacing:.4px;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;opacity:0;border-radius:3px;max-width:calc(100% - 26px);padding:1px 5px;font-size:9px;font-weight:800;line-height:12px;transition:opacity .18s ease-out,transform .18s ease-out;position:absolute;top:2px;left:4px;overflow:hidden;transform:scale(.85)}.tower-card-bonus.bonus-power,.tower-card-bonus.bonus-sale,.tower-card-bonus.bonus-both{opacity:1;animation:tower-bonus-pulse var(--breath-cohort-2x) ease-in-out infinite;transform:scale(1)}.tower-card-bonus.bonus-power{color:var(--color-mage-bright);background:rgba(var(--color-tower-mage-rgb), .18);box-shadow:0 0 6px rgba(var(--color-tower-mage-rgb), .45)}.tower-card-bonus.bonus-sale{color:var(--color-gold);background:rgba(var(--color-gold-rgb), .18);box-shadow:0 0 6px rgba(var(--color-gold-rgb), .45)}.tower-card-bonus.bonus-both{color:var(--color-highlight);background:rgba(var(--color-highlight-rgb), .2);box-shadow:0 0 8px rgba(var(--color-highlight-rgb), .5)}@keyframes tower-bonus-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.ghost-bonus-badge{pointer-events:none;z-index:100;transform-origin:bottom;font-family:var(--font-body);letter-spacing:.6px;white-space:nowrap;text-shadow:var(--text-halo-over-scene);opacity:0;visibility:hidden;background:#0000008c;border:1px solid #ffffff26;border-radius:5px;padding:4px 11px;font-size:13px;font-weight:800;line-height:15px;position:fixed;top:0;left:0;transform:translate(-50%,-100%)}.ghost-bonus-badge.visible{opacity:1;visibility:visible;animation:ghost-badge-pulse var(--breath-cohort-2x) ease-in-out infinite}#hud>.ghost-bonus-badge:not(.visible){transition:opacity .12s ease-in,visibility 0s linear .12s}#hud>.ghost-bonus-badge.visible{transition:opacity .15s ease-out,visibility linear}@keyframes ghost-badge-pulse{0%,to{transform:translate(-50%,-100%)scale(1)}50%{transform:translate(-50%,-100%)scale(1.06)}}.ghost-bonus-badge.bonus-power{color:var(--color-mage-bright);border-color:rgba(var(--color-tower-mage-rgb), .9);box-shadow:0 0 14px rgba(var(--color-tower-mage-rgb), .75), inset 0 0 8px rgba(var(--color-tower-mage-rgb), .3)}.ghost-bonus-badge.bonus-sale{color:var(--color-gold);border-color:rgba(var(--color-gold-rgb), .9);box-shadow:0 0 14px rgba(var(--color-gold-rgb), .75), inset 0 0 8px rgba(var(--color-gold-rgb), .3)}.ghost-bonus-badge.bonus-both{color:var(--color-highlight);border-color:rgba(var(--color-highlight-rgb), .9);box-shadow:0 0 16px rgba(var(--color-highlight-rgb), .85), inset 0 0 10px rgba(var(--color-highlight-rgb), .35)}.tower-tooltip{z-index:90;width:200px;padding:var(--space-sm) var(--space-sm);background:linear-gradient(to bottom, rgb(var(--color-desk-rgb)), rgb(var(--color-ui-bg-rgb)));border:1px solid var(--color-paper-border-dark);box-shadow:var(--shadow-card), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .25);pointer-events:none;font-family:var(--font-body);color:var(--color-ui-text);box-sizing:border-box;overflow-wrap:break-word;border-radius:8px;display:none;position:fixed}.tower-tooltip .tt-name{font-family:var(--font-display);margin-bottom:4px;font-size:14px}.tower-tooltip .tt-mastery{font-family:var(--font-body);color:var(--color-gold);margin-left:6px;font-size:11px}.tower-tooltip .tt-desc{color:var(--color-ui-text-muted);margin-bottom:6px;font-size:11px;line-height:1.3}.tower-tooltip .tt-stats{flex-wrap:wrap;gap:6px 8px;font-size:11px;display:flex}.tower-tooltip .tt-stats strong{color:var(--color-gold)}.tower-tooltip .tt-locked{border-top:1px solid var(--color-paper-border-dark);color:var(--color-gold-bright);align-items:center;gap:4px;margin-top:6px;padding-top:5px;font-size:11px;display:flex}#hud-top{top:var(--space-sm);left:var(--space-md);right:var(--space-md);z-index:20;pointer-events:none;flex-wrap:wrap;justify-content:space-between;align-items:center;row-gap:4px;display:flex;position:fixed}.hud-pill{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);color:var(--color-ui-text);background:var(--color-ui-bg);opacity:.9;font-family:var(--font-body);pointer-events:auto;border-radius:12px;font-weight:700;transition:opacity .25s ease-out;display:flex}#gold-display{color:var(--color-gold);font-size:16px;position:relative;overflow:hidden}#gold-display svg{filter:var(--drop-shadow-gold-tiny)}#gold-display:after{content:"";border-radius:inherit;background:linear-gradient(108deg, transparent 35%, rgba(var(--color-gold-rgb), .18) 47%, #fff8dc5c 50%, rgba(var(--color-gold-rgb), .18) 53%, transparent 65%);transform:var(--transform-shimmer-start);opacity:0;pointer-events:none;animation:6.667s ease-in-out 1.2s infinite gold-pill-shimmer;position:absolute;inset:0}@keyframes gold-pill-shimmer{0%,78%,to{transform:var(--transform-shimmer-start);opacity:0}85%{opacity:1}95%{transform:var(--transform-shimmer-end);opacity:1}98%{opacity:0}}@media (prefers-reduced-motion:reduce){#gold-display:after{animation:none}}#score-display.score-milestone-burst{animation:score-milestone-burst-keyframe .6s var(--ease-overshoot)}@keyframes score-milestone-burst-keyframe{0%{box-shadow:var(--shadow-pulse-rest-gold-bright);filter:brightness();transform:scale(1)}35%{box-shadow:0 0 20px 4px rgba(var(--color-gold-bright-rgb), .85);filter:brightness(1.25)saturate(1.3);transform:scale(1.32)}60%{box-shadow:var(--glow-gold-bright-burst-low);filter:brightness(1.12)saturate(1.15);transform:scale(1.12)}to{box-shadow:var(--shadow-pulse-rest-gold-bright);filter:brightness();transform:scale(1)}}@media (prefers-reduced-motion:reduce){#score-display.score-milestone-burst{animation:none}}#score-display.score-milestone-burst-tier-2{animation:score-milestone-burst-tier-2-keyframe .7s var(--ease-overshoot)}@keyframes score-milestone-burst-tier-2-keyframe{0%{box-shadow:var(--shadow-pulse-rest-gold-bright);filter:brightness();transform:scale(1)}35%{box-shadow:0 0 24px 4px rgba(var(--color-gold-bright-rgb), .92);filter:brightness(1.3)saturate(1.36);transform:scale(1.4)}60%{box-shadow:var(--glow-gold-bright-burst-low);filter:brightness(1.14)saturate(1.18);transform:scale(1.14)}to{box-shadow:var(--shadow-pulse-rest-gold-bright);filter:brightness();transform:scale(1)}}#score-display.score-milestone-burst-tier-3{animation:score-milestone-burst-tier-3-keyframe .8s var(--ease-overshoot)}@keyframes score-milestone-burst-tier-3-keyframe{0%{box-shadow:var(--shadow-pulse-rest-gold-bright);filter:brightness();transform:scale(1)}35%{box-shadow:0 0 28px 4px rgba(var(--color-gold-bright-rgb), .98);filter:brightness(1.36)saturate(1.42);transform:scale(1.48)}60%{box-shadow:var(--glow-gold-bright-burst-low);filter:brightness(1.16)saturate(1.22);transform:scale(1.18)}to{box-shadow:var(--shadow-pulse-rest-gold-bright);filter:brightness();transform:scale(1)}}#score-display.score-milestone-burst-tier-4{animation:score-milestone-burst-tier-4-keyframe .9s var(--ease-overshoot)}@keyframes score-milestone-burst-tier-4-keyframe{0%{box-shadow:var(--shadow-pulse-rest-gold-bright);filter:brightness();transform:scale(1)}35%{box-shadow:0 0 34px 5px rgba(var(--color-gold-bright-rgb), 1);filter:brightness(1.44)saturate(1.5);transform:scale(1.58)}60%{box-shadow:var(--glow-gold-bright-burst-low);filter:brightness(1.18)saturate(1.26);transform:scale(1.22)}to{box-shadow:var(--shadow-pulse-rest-gold-bright);filter:brightness();transform:scale(1)}}#score-display.score-milestone-burst-tier-5{animation:score-milestone-burst-tier-5-keyframe 1s var(--ease-overshoot)}@keyframes score-milestone-burst-tier-5-keyframe{0%{box-shadow:var(--shadow-pulse-rest-gold-bright);filter:brightness();transform:scale(1)}35%{box-shadow:0 0 40px 6px rgba(var(--color-gold-bright-rgb), 1);filter:brightness(1.52)saturate(1.58);transform:scale(1.68)}60%{box-shadow:var(--glow-gold-bright-burst-low);filter:brightness(1.2)saturate(1.3);transform:scale(1.26)}to{box-shadow:var(--shadow-pulse-rest-gold-bright);filter:brightness();transform:scale(1)}}@media (prefers-reduced-motion:reduce){#score-display.score-milestone-burst-tier-2,#score-display.score-milestone-burst-tier-3,#score-display.score-milestone-burst-tier-4,#score-display.score-milestone-burst-tier-5{animation:none}}#dps-display.dps-significant-jump{animation:dps-significant-jump-keyframe .32s var(--ease-overshoot)}@keyframes dps-significant-jump-keyframe{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){#dps-display.dps-significant-jump{animation:none}}#dps-display.dps-significant-jump-deep{animation:dps-significant-jump-deep-keyframe .42s var(--ease-overshoot)}@keyframes dps-significant-jump-deep-keyframe{0%{transform:scale(1)}40%{transform:scale(1.2)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){#dps-display.dps-significant-jump-deep{animation:none}}#gold-display.gold-significant-gain{animation:gold-significant-gain-keyframe var(--anim-significant-gain)}@keyframes gold-significant-gain-keyframe{0%{box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);filter:var(--filter-burst-rest)}35%{box-shadow:var(--glow-gold-bright-burst-high);filter:brightness(1.18)saturate(1.2)}to{box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#gold-display.gold-significant-gain{animation:none}}#gold-display.gold-significant-gain-deep{animation:gold-significant-gain-deep-keyframe var(--anim-significant-gain)}@keyframes gold-significant-gain-deep-keyframe{0%{box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);filter:var(--filter-burst-rest)}35%{box-shadow:0 0 28px 4px rgba(var(--color-gold-bright-rgb), 1);filter:brightness(1.28)saturate(1.3)}to{box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#gold-display.gold-significant-gain-deep{animation:none}}@keyframes gold-pile-pop{0%{transform:scale(1)}35%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes gold-pile-pop-deep{0%{transform:scale(1)}35%{transform:scale(1.28)}to{transform:scale(1)}}#gold-display.gold-significant-gain .hud-gold-pile{animation:gold-pile-pop var(--anim-significant-gain);transform-origin:50%}#gold-display.gold-significant-gain-deep .hud-gold-pile{animation:gold-pile-pop-deep var(--anim-significant-gain);transform-origin:50%}@media (prefers-reduced-motion:reduce){#gold-display.gold-significant-gain .hud-gold-pile,#gold-display.gold-significant-gain-deep .hud-gold-pile{animation:none}}@keyframes gold-pile-squeeze{0%{transform:scale(1)}35%{transform:scale(.85)}to{transform:scale(1)}}@keyframes gold-pile-squeeze-deep{0%{transform:scale(1)}35%{transform:scale(.78)}to{transform:scale(1)}}#gold-display.gold-significant-spend .hud-gold-pile{animation:gold-pile-squeeze var(--anim-significant-gain);transform-origin:50%}#gold-display.gold-significant-spend-deep .hud-gold-pile{animation:gold-pile-squeeze-deep var(--anim-significant-gain);transform-origin:50%}@media (prefers-reduced-motion:reduce){#gold-display.gold-significant-spend .hud-gold-pile,#gold-display.gold-significant-spend-deep .hud-gold-pile{animation:none}}#multiplier-display.multiplier-significant-gain{animation:multiplier-significant-gain-keyframe var(--anim-significant-gain)}@keyframes multiplier-significant-gain-keyframe{0%{box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);filter:var(--filter-burst-rest)}35%{box-shadow:var(--glow-gold-bright-burst-high);filter:brightness(1.18)saturate(1.2)}to{box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#multiplier-display.multiplier-significant-gain{animation:none}}#multiplier-display.multiplier-significant-gain-deep{animation:multiplier-significant-gain-deep-keyframe var(--anim-significant-gain)}@keyframes multiplier-significant-gain-deep-keyframe{0%{box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);filter:var(--filter-burst-rest)}35%{box-shadow:0 0 28px 4px rgba(var(--color-gold-bright-rgb), 1);filter:brightness(1.28)saturate(1.3)}to{box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#multiplier-display.multiplier-significant-gain-deep{animation:none}}@keyframes multiplier-stars-pop{0%{transform:scale(1)}35%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes multiplier-stars-pop-deep{0%{transform:scale(1)}35%{transform:scale(1.28)}to{transform:scale(1)}}#multiplier-display.multiplier-significant-gain>svg:first-of-type{animation:multiplier-stars-pop var(--anim-significant-gain);transform-origin:50%}#multiplier-display.multiplier-significant-gain-deep>svg:first-of-type{animation:multiplier-stars-pop-deep var(--anim-significant-gain);transform-origin:50%}@media (prefers-reduced-motion:reduce){#multiplier-display.multiplier-significant-gain>svg:first-of-type,#multiplier-display.multiplier-significant-gain-deep>svg:first-of-type{animation:none}}#streak-display.streak-significant-gain{animation:streak-significant-gain-keyframe var(--anim-significant-gain)}@keyframes streak-significant-gain-keyframe{0%{box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);filter:var(--filter-burst-rest)}35%{box-shadow:var(--glow-gold-bright-burst-high);filter:brightness(1.18)saturate(1.2)}to{box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#streak-display.streak-significant-gain{animation:none}}#streak-display.streak-significant-gain-deep{animation:streak-significant-gain-deep-keyframe var(--anim-significant-gain)}@keyframes streak-significant-gain-deep-keyframe{0%{box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);filter:var(--filter-burst-rest)}35%{box-shadow:0 0 28px 4px rgba(var(--color-gold-bright-rgb), 1);filter:brightness(1.28)saturate(1.3)}to{box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#streak-display.streak-significant-gain-deep{animation:none}}@keyframes streak-flame-pop{0%{transform:scale(1)}35%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes streak-flame-pop-deep{0%{transform:scale(1)}35%{transform:scale(1.28)}to{transform:scale(1)}}#streak-display.streak-significant-gain>svg:first-of-type{animation:streak-flame-pop var(--anim-significant-gain);transform-origin:50%}#streak-display.streak-significant-gain-deep>svg:first-of-type{animation:streak-flame-pop-deep var(--anim-significant-gain);transform-origin:50%}@media (prefers-reduced-motion:reduce){#streak-display.streak-significant-gain>svg:first-of-type,#streak-display.streak-significant-gain-deep>svg:first-of-type{animation:none}}#gold-display.gold-significant-spend{animation:gold-significant-spend-keyframe var(--anim-significant-gain)}@keyframes gold-significant-spend-keyframe{0%{box-shadow:0 0 0 rgba(var(--color-shadow-rgb), 0);filter:var(--filter-burst-rest)}35%{box-shadow:0 0 12px 2px rgba(var(--color-shadow-rgb), .45);filter:brightness(.85)saturate(.78)}to{box-shadow:0 0 0 rgba(var(--color-shadow-rgb), 0);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#gold-display.gold-significant-spend{animation:none}}#gold-display.gold-significant-spend-deep{animation:gold-significant-spend-deep-keyframe var(--anim-significant-gain)}@keyframes gold-significant-spend-deep-keyframe{0%{box-shadow:0 0 0 rgba(var(--color-shadow-rgb), 0);filter:var(--filter-burst-rest)}35%{box-shadow:0 0 20px 4px rgba(var(--color-shadow-rgb), .65);filter:brightness(.75)saturate(.65)}to{box-shadow:0 0 0 rgba(var(--color-shadow-rgb), 0);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#gold-display.gold-significant-spend-deep{animation:none}}#score-display.score-significant-gain{animation:score-significant-gain-keyframe var(--anim-significant-gain)}@keyframes score-significant-gain-keyframe{0%{box-shadow:0 0 0 rgba(var(--color-highlight-rgb), 0);filter:var(--filter-burst-rest)}35%{box-shadow:var(--glow-gold-bright-burst-medium);filter:brightness(1.16)saturate(1.18)}to{box-shadow:0 0 0 rgba(var(--color-highlight-rgb), 0);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#score-display.score-significant-gain{animation:none}}#score-display.score-significant-gain-deep{animation:score-significant-gain-deep-keyframe var(--anim-significant-gain)}@keyframes score-significant-gain-deep-keyframe{0%{box-shadow:0 0 0 rgba(var(--color-highlight-rgb), 0);filter:var(--filter-burst-rest)}35%{box-shadow:var(--glow-gold-bright-burst-high);filter:brightness(1.26)saturate(1.28)}to{box-shadow:0 0 0 rgba(var(--color-highlight-rgb), 0);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#score-display.score-significant-gain-deep{animation:none}}@keyframes score-trophy-pop{0%{transform:scale(1)}35%{transform:scale(1.16)}to{transform:scale(1)}}@keyframes score-trophy-pop-deep{0%{transform:scale(1)}35%{transform:scale(1.26)}to{transform:scale(1)}}#score-display.score-significant-gain>svg:first-of-type{animation:score-trophy-pop var(--anim-significant-gain);transform-origin:50%}#score-display.score-significant-gain-deep>svg:first-of-type{animation:score-trophy-pop-deep var(--anim-significant-gain);transform-origin:50%}@media (prefers-reduced-motion:reduce){#score-display.score-significant-gain>svg:first-of-type,#score-display.score-significant-gain-deep>svg:first-of-type{animation:none}}#lives-display{color:var(--color-danger-bright);font-size:16px}#lives-display.lives-flash-loss{animation:lives-flash-loss-keyframe .32s var(--ease-overshoot)}#lives-display.lives-flash-gain{animation:.28s ease-out lives-flash-gain-keyframe}@keyframes lives-flash-loss-keyframe{0%{text-shadow:none;transform:scale(1)translate(0)}20%{text-shadow:0 0 12px rgba(var(--color-danger-rgb), .85);transform:scale(1.28)translate(-3px)}45%{text-shadow:0 0 16px rgba(var(--color-danger-rgb), .95);transform:scale(1.18)translate(3px)}70%{text-shadow:0 0 10px rgba(var(--color-danger-rgb), .6);transform:scale(1.08)translate(-2px)}to{text-shadow:none;transform:scale(1)translate(0)}}@keyframes lives-flash-gain-keyframe{0%{text-shadow:none;transform:scale(1)}40%{text-shadow:var(--text-shadow-gold-bright-high);transform:scale(1.18)}to{text-shadow:none;transform:scale(1)}}@media (prefers-reduced-motion:reduce){#lives-display.lives-flash-loss,#lives-display.lives-flash-gain{animation:none}}#multiplier-display.streak-cohort-loss-flash,#streak-display.streak-cohort-loss-flash{animation:streak-cohort-loss-flash-keyframe .32s var(--ease-overshoot)}@keyframes streak-cohort-loss-flash-keyframe{0%{text-shadow:none;filter:brightness();transform:scale(1)translate(0)}20%{text-shadow:0 0 10px rgba(var(--color-danger-rgb), .85);filter:brightness(.78);transform:scale(1.18)translate(-2px)}45%{text-shadow:0 0 14px rgba(var(--color-danger-rgb), .95);filter:brightness(.7);transform:scale(1.1)translate(2px)}70%{text-shadow:0 0 8px rgba(var(--color-danger-rgb), .55);filter:brightness(.85);transform:scale(1.04)translate(-1px)}to{text-shadow:none;filter:brightness();transform:scale(1)translate(0)}}@media (prefers-reduced-motion:reduce){#multiplier-display.streak-cohort-loss-flash,#streak-display.streak-cohort-loss-flash{animation:none}}@keyframes streak-flame-squeeze{0%,to{transform:scale(1)}35%{transform:scale(.85)}}@keyframes multiplier-stars-squeeze{0%,to{transform:scale(1)}35%{transform:scale(.85)}}#streak-display.streak-cohort-loss-flash>svg:first-of-type{animation:streak-flame-squeeze var(--anim-significant-gain);transform-origin:50%}#multiplier-display.streak-cohort-loss-flash>svg:first-of-type{animation:multiplier-stars-squeeze var(--anim-significant-gain);transform-origin:50%}@media (prefers-reduced-motion:reduce){#streak-display.streak-cohort-loss-flash>svg:first-of-type,#multiplier-display.streak-cohort-loss-flash>svg:first-of-type{animation:none}}#multiplier-display.just-arrived,#streak-display.just-arrived{animation:hud-pill-arrival .5s var(--ease-overshoot)}@keyframes hud-pill-arrival{0%{transform:scale(.5)}40%{transform:scale(1.2)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){#multiplier-display.just-arrived,#streak-display.just-arrived{animation:none}}@keyframes hud-pill-leave{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(.5)}}#multiplier-display.just-leaving,#streak-display.just-leaving{animation:.25s ease-in forwards hud-pill-leave!important}@media (prefers-reduced-motion:reduce){#multiplier-display.just-leaving,#streak-display.just-leaving{opacity:0;animation:none!important}}#wave-theme-display.just-arrived{animation:hud-pill-arrival .5s var(--ease-overshoot)}#wave-theme-display.just-leaving{animation:.25s ease-in forwards hud-pill-leave!important}@media (prefers-reduced-motion:reduce){#wave-theme-display.just-arrived{animation:none}#wave-theme-display.just-leaving{opacity:0;animation:none!important}}#modifier-display.just-arrived{animation:hud-pill-arrival .5s var(--ease-overshoot)}#modifier-display.just-leaving{animation:.25s ease-in forwards hud-pill-leave!important}@media (prefers-reduced-motion:reduce){#modifier-display.just-arrived{animation:none}#modifier-display.just-leaving{opacity:0;animation:none!important}}#wave-theme-display.theme-inert{filter:saturate(.3)brightness(.82);transition:filter .3s,color .3s;color:var(--color-ui-text-muted)!important}#hero-badge.just-leveled-up{animation:hero-badge-level-up-keyframe var(--anim-significant-gain)}@keyframes hero-badge-level-up-keyframe{0%{box-shadow:0 0 8px rgba(var(--color-gold-rgb), .55), 0 1px 3px #00000080;filter:var(--filter-burst-rest)}35%{box-shadow:var(--glow-gold-bright-burst-high);filter:brightness(1.18)saturate(1.2)}to{box-shadow:0 0 8px rgba(var(--color-gold-rgb), .55), 0 1px 3px #00000080;filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#hero-badge.just-leveled-up{animation:none}}#hero-badge.just-arrived{animation:hero-badge-arrival-pop .38s var(--ease-overshoot)}@keyframes hero-badge-arrival-pop{0%{transform:var(--transform-center) scale(.5)}45%{transform:var(--transform-center) scale(1.2)}to{transform:var(--transform-center) scale(1)}}#hero-badge.hero-badge-leaving{animation:.2s ease-in forwards hero-badge-leaving}@keyframes hero-badge-leaving{0%{transform:var(--transform-center) scale(1);opacity:1}to{transform:var(--transform-center) scale(.5);opacity:0}}@media (prefers-reduced-motion:reduce){#hero-badge.hero-badge-leaving{opacity:0;animation:none}#hero-badge.just-arrived{animation:none}}#hero-ability-btn.just-arrived{animation:hero-ability-button-arrival-pop .38s var(--ease-overshoot)}@keyframes hero-ability-button-arrival-pop{0%{transform:scale(.5)}45%{transform:scale(1.2)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){#hero-ability-btn.just-arrived{animation:none}}#hero-ability-btn.hero-ability-btn-leaving{animation:.2s ease-in forwards hero-ability-button-leaving}@keyframes hero-ability-button-leaving{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.5)}}@media (prefers-reduced-motion:reduce){#hero-ability-btn.hero-ability-btn-leaving{opacity:0;animation:none}}#lives-display.lives-significant-gain{animation:lives-significant-gain-keyframe var(--anim-significant-gain)}@keyframes lives-significant-gain-keyframe{0%{box-shadow:0 0 0 rgba(var(--color-gold-bright-rgb), 0);filter:var(--filter-burst-rest)}35%{box-shadow:var(--glow-gold-bright-burst-high);filter:brightness(1.2)saturate(1.22)}to{box-shadow:0 0 0 rgba(var(--color-gold-bright-rgb), 0);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#lives-display.lives-significant-gain{animation:none}}#lives-display.lives-significant-loss{animation:lives-significant-loss-keyframe var(--anim-significant-gain)}@keyframes lives-significant-loss-keyframe{0%{box-shadow:0 0 0 rgba(var(--color-danger-rgb), 0);filter:var(--filter-burst-rest)}35%{box-shadow:var(--glow-danger-high);filter:brightness(.85)saturate(1.18)}to{box-shadow:0 0 0 rgba(var(--color-danger-rgb), 0);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#lives-display.lives-significant-loss{animation:none}}#lives-display.lives-significant-loss-deep{animation:lives-significant-loss-deep-keyframe var(--anim-significant-gain)}@keyframes lives-significant-loss-deep-keyframe{0%{box-shadow:0 0 0 rgba(var(--color-danger-rgb), 0);filter:var(--filter-burst-rest)}35%{box-shadow:0 0 24px 4px rgba(var(--color-danger-rgb), 1);filter:brightness(.72)saturate(1.32)}to{box-shadow:0 0 0 rgba(var(--color-danger-rgb), 0);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#lives-display.lives-significant-loss-deep{animation:none}}@keyframes lives-heart-squeeze{0%,to{transform:scale(1)}35%{transform:scale(.85)}}@keyframes lives-heart-squeeze-deep{0%,to{transform:scale(1)}35%{transform:scale(.78)}}#lives-display.lives-significant-loss>svg:first-of-type{animation:lives-heart-squeeze var(--anim-significant-gain);transform-origin:50%}#lives-display.lives-significant-loss-deep>svg:first-of-type{animation:lives-heart-squeeze-deep var(--anim-significant-gain);transform-origin:50%}@media (prefers-reduced-motion:reduce){#lives-display.lives-significant-loss>svg:first-of-type,#lives-display.lives-significant-loss-deep>svg:first-of-type{animation:none}}@keyframes lives-heart-pop{0%,to{transform:scale(1)}35%{transform:scale(1.18)}}#lives-display.lives-significant-gain>svg:first-of-type{animation:lives-heart-pop var(--anim-significant-gain);transform-origin:50%}@media (prefers-reduced-motion:reduce){#lives-display.lives-significant-gain>svg:first-of-type{animation:none}}#buy-life-btn{background:var(--color-gold);color:var(--color-shadow);cursor:pointer;border:none;border-radius:4px;margin-left:4px;padding:1px 5px;font-size:11px;font-weight:700;line-height:1;transition:transform .12s ease-out,background .16s ease-out,box-shadow .16s ease-out;display:none}:is(#buy-life-btn:hover,#buy-life-btn:focus-visible){background:var(--color-gold-bright);box-shadow:var(--glow-gold-medium);transform:scale(1.12)}#buy-life-btn:active{transform:scale(.96)}#buy-life-btn{position:relative}#buy-life-btn:after{content:"";width:24px;height:24px;transform:var(--transform-center);position:absolute;top:50%;left:50%}@media (pointer:coarse){#buy-life-btn:after{width:44px;height:44px}}#buy-life-btn.just-appeared{animation:.55s ease-out buy-life-appear}@keyframes buy-life-appear{0%{box-shadow:0 0 0 0 rgba(var(--color-gold-bright-rgb), .7);transform:scale(.6)}35%{box-shadow:var(--glow-gold-bright-burst-low);transform:scale(1.18)}to{box-shadow:var(--shadow-pulse-rest-gold-bright);transform:scale(1)}}@media (prefers-reduced-motion:reduce){#buy-life-btn.just-appeared{animation:none}:is(#buy-life-btn:hover,#buy-life-btn:focus-visible){transform:none}}#wave-display{color:var(--color-ui-text);font-size:14px;font-family:var(--font-display);transition:color .3s ease-out,text-shadow .3s ease-out}#wave-display[data-wave-kind=mini-boss]{color:var(--color-danger)}#wave-display[data-wave-kind=boss]{color:var(--color-danger-bright);text-shadow:var(--text-halo-over-scene), var(--text-shadow-danger-bright-low)}#wave-display.wave-changed{animation:wave-display-roll .4s var(--ease-overshoot)}@keyframes wave-display-roll{0%{transform:scale(1)translateY(0)}35%{transform:scale(1.22) var(--transform-lift-card)}to{transform:scale(1)translateY(0)}}#wave-display.wave-changed[data-wave-kind=mini-boss]{animation:wave-display-roll-threat .5s var(--ease-overshoot)}@keyframes wave-display-roll-threat{0%{text-shadow:var(--text-shadow-danger-low);transform:scale(1)}30%{text-shadow:var(--text-shadow-danger-high);transform:scale(1.32)}60%{text-shadow:var(--text-shadow-danger-medium);transform:scale(1.1)}to{text-shadow:var(--text-shadow-danger-low);transform:scale(1)}}#wave-display.wave-changed[data-wave-kind=boss]{animation:wave-display-roll-threat-boss .5s var(--ease-overshoot)}@keyframes wave-display-roll-threat-boss{0%{text-shadow:var(--text-shadow-danger-bright-low);transform:scale(1)}30%{text-shadow:var(--text-shadow-danger-bright-high);transform:scale(1.32)}60%{text-shadow:var(--text-shadow-danger-bright-medium);transform:scale(1.1)}to{text-shadow:var(--text-shadow-danger-bright-low);transform:scale(1)}}@media (prefers-reduced-motion:reduce){#wave-display.wave-changed{animation:none}}#speed-btn{background:var(--color-desk);border:1px solid var(--color-shadow);color:var(--color-ui-text);padding:var(--space-xs) var(--space-md);min-height:24px;font-family:var(--font-body);cursor:pointer;pointer-events:auto;border-radius:12px;font-size:14px;font-weight:700;transition:color .2s,background .2s,box-shadow .2s,border-color .2s,filter .15s ease-out}:is(#speed-btn:hover,#speed-btn:focus-visible){filter:brightness(1.15)}#speed-btn:active{transform:var(--transform-press)}#speed-btn[data-speed="1"]:not(.speed-changed){animation:speed-btn-idle-breath var(--breath-cohort) ease-in-out infinite}@keyframes speed-btn-idle-breath{0%,to{box-shadow:var(--shadow-pulse-rest-gold)}50%{box-shadow:0 0 7px 0 rgba(var(--color-gold-rgb), .18)}}@media (prefers-reduced-motion:reduce){#speed-btn[data-speed="1"]:not(.speed-changed){animation:none}}#speed-btn .speed-chev{transition:opacity .18s ease-out}#speed-btn[data-speed="1"] .speed-chev-2,#speed-btn[data-speed="1"] .speed-chev-3,#speed-btn:not([data-speed]) .speed-chev-2,#speed-btn:not([data-speed]) .speed-chev-3,#speed-btn[data-speed="2"] .speed-chev-3{opacity:.22}@media (prefers-reduced-motion:reduce){#speed-btn .speed-chev{transition:none}}#speed-btn[data-speed="2"]{color:var(--color-highlight);border-color:rgba(var(--color-highlight-rgb), .5);background:linear-gradient(180deg, rgba(var(--color-highlight-rgb), .14) 0%, rgba(var(--color-highlight-rgb), .02) 70%), var(--color-desk)}#speed-btn[data-speed="3"]{color:var(--color-gold-bright);border-color:rgba(var(--color-gold-bright-rgb), .6);background:linear-gradient(180deg, rgba(var(--color-gold-bright-rgb), .2) 0%, rgba(var(--color-highlight-rgb), .05) 70%), var(--color-desk);box-shadow:0 0 0 1px rgba(var(--color-gold-bright-rgb), .35), 0 0 12px rgba(var(--color-gold-bright-rgb), .3)}#speed-btn[data-speed="3"] svg{filter:drop-shadow(-2px 0 1.2px rgba(var(--color-gold-bright-rgb), .45))}@media (prefers-reduced-motion:reduce){#speed-btn[data-speed="3"] svg{filter:none}}#speed-btn.speed-changed{animation:speed-btn-change .32s var(--ease-overshoot)}@keyframes speed-btn-change{0%{box-shadow:var(--shadow-pulse-rest-gold-bright);transform:scale(1)}35%{box-shadow:0 0 14px 2px rgba(var(--color-gold-bright-rgb), .65);transform:scale(1.18)}to{box-shadow:var(--shadow-pulse-rest-gold-bright);transform:scale(1)}}@media (prefers-reduced-motion:reduce){#speed-btn.speed-changed{animation:none}}#interest-preview.interest-preview-bump{animation:.28s ease-out interest-preview-bump}@keyframes interest-preview-bump{0%{transform:scale(1)}40%{transform:scale(1.18)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){#interest-preview.interest-preview-bump{animation:none}}.gate-btn.gate-toggle-open{animation:gate-btn-toggle-open .4s var(--ease-overshoot)}.gate-btn.gate-toggle-close{animation:gate-btn-toggle-close .42s var(--ease-overshoot)}@keyframes gate-btn-toggle-open{0%{box-shadow:var(--shadow-pulse-rest-success);transform:scale(1)}40%{box-shadow:0 0 14px 2px rgba(var(--color-success-rgb), .7);transform:scale(1.14)}to{box-shadow:var(--shadow-pulse-rest-success);transform:scale(1)}}@keyframes gate-btn-toggle-close{0%{box-shadow:var(--shadow-pulse-rest-danger);transform:scale(1)}40%{box-shadow:0 0 16px 3px rgba(var(--color-danger-rgb), .75);transform:scale(1.18)}to{box-shadow:var(--shadow-pulse-rest-danger);transform:scale(1)}}@media (prefers-reduced-motion:reduce){.gate-btn.gate-toggle-open,.gate-btn.gate-toggle-close{animation:none}}:is(.gate-btn:hover,.gate-btn:focus-visible){filter:brightness(1.15);box-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .55), 0 0 0 2px rgba(var(--color-gold-rgb), .6)}.gate-btn:active{transform:var(--transform-press)}#wave-progress-fill{background:var(--color-gold)}#wave-progress-fill.wave-progress-near-end{background:var(--color-gold-bright);box-shadow:var(--glow-gold-medium);animation:1.4s ease-in-out infinite alternate wave-progress-near-end-pulse}@keyframes wave-progress-near-end-pulse{0%{box-shadow:0 0 6px rgba(var(--color-gold-bright-rgb), .4)}to{box-shadow:0 0 12px rgba(var(--color-gold-bright-rgb), .75)}}#wave-progress-fill.wave-progress-near-end-deep{background:var(--color-gold-bright);filter:brightness(1.25)saturate(1.2);animation:.833s ease-in-out infinite alternate wave-progress-near-end-deep-pulse}@keyframes wave-progress-near-end-deep-pulse{0%{box-shadow:0 0 8px 1px rgba(var(--color-gold-bright-rgb), .55)}to{box-shadow:0 0 18px 2px rgba(var(--color-gold-bright-rgb), .95)}}@media (prefers-reduced-motion:reduce){#wave-progress-fill.wave-progress-near-end,#wave-progress-fill.wave-progress-near-end-deep{animation:none}}#wave-progress.wave-progress-significant-jump{animation:wave-progress-significant-jump-keyframe var(--anim-significant-gain)}@keyframes wave-progress-significant-jump-keyframe{0%{box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .7), inset 0 -1px 1px rgba(var(--color-paper-border-rgb), .15), 0 1px 4px #0000004d;filter:var(--filter-burst-rest)}35%{box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .7), inset 0 -1px 1px rgba(var(--color-paper-border-rgb), .15), 0 0 16px 2px rgba(var(--color-gold-bright-rgb), .85), 0 1px 4px #0000004d;filter:brightness(1.18)saturate(1.2)}to{box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .7), inset 0 -1px 1px rgba(var(--color-paper-border-rgb), .15), 0 1px 4px #0000004d;filter:var(--filter-burst-rest)}}#wave-progress.wave-progress-significant-jump-deep{animation:wave-progress-significant-jump-deep-keyframe var(--anim-significant-gain)}@keyframes wave-progress-significant-jump-deep-keyframe{0%{box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .7), inset 0 -1px 1px rgba(var(--color-paper-border-rgb), .15), 0 1px 4px #0000004d;filter:var(--filter-burst-rest)}35%{box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .7), inset 0 -1px 1px rgba(var(--color-paper-border-rgb), .15), 0 0 26px 4px rgba(var(--color-gold-bright-rgb), 1), 0 1px 4px #0000004d;filter:brightness(1.28)saturate(1.3)}to{box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .7), inset 0 -1px 1px rgba(var(--color-paper-border-rgb), .15), 0 1px 4px #0000004d;filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){#wave-progress.wave-progress-significant-jump-deep,#wave-progress.wave-progress-significant-jump{animation:none}}#wave-hp-bar{align-items:center;gap:var(--space-xs);min-width:120px;padding:var(--space-xs) var(--space-sm);color:var(--color-danger);opacity:0;transition:opacity .25s ease-out;display:flex}#wave-hp-count{font-variant-numeric:tabular-nums;text-align:right;min-width:1.4em;color:var(--color-danger-bright);text-shadow:0 1px 2px #0000008c;font-size:.8em;font-weight:700}#wave-hp-track{background:#00000073;border-radius:4px;flex:1;height:8px;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #0009}#wave-hp-fill{background:linear-gradient(90deg, var(--color-danger) 0%, var(--color-danger-bright) 60%, var(--color-danger) 100%);width:100%;height:100%;box-shadow:var(--glow-danger-low);border-radius:4px;transition:width .2s ease-out,box-shadow .25s ease-out,filter .25s ease-out}#wave-hp-fill.wave-hp-near-end{filter:brightness(1.2)saturate(1.15);animation:1.2s ease-in-out infinite alternate wave-hp-near-end-pulse}@keyframes wave-hp-near-end-pulse{0%{box-shadow:var(--glow-danger-low)}to{box-shadow:var(--glow-danger-high)}}#wave-hp-fill.wave-hp-near-end-deep{filter:brightness(1.35)saturate(1.25);animation:.833s ease-in-out infinite alternate wave-hp-near-end-deep-pulse}@keyframes wave-hp-near-end-deep-pulse{0%{box-shadow:0 0 8px 1px rgba(var(--color-danger-rgb), .6)}to{box-shadow:0 0 20px 3px rgba(var(--color-danger-rgb), 1)}}@media (prefers-reduced-motion:reduce){#wave-hp-fill.wave-hp-near-end,#wave-hp-fill.wave-hp-near-end-deep{animation:none}}.floating-number{white-space:nowrap;font-family:var(--font-display);pointer-events:none;z-index:17;-webkit-text-stroke:1px #140c06f2;text-shadow:0 0 2px #140c06e6, 0 1px 2px rgba(var(--color-shadow-rgb), .8), 0 2px 6px rgba(var(--color-shadow-rgb), .5);will-change:transform, opacity;font-size:18px;font-weight:800;transition:none;position:absolute}.floating-number.crit{letter-spacing:var(--letter-spacing-label);text-shadow:0 0 2px #140c06f2, 0 0 10px rgba(var(--color-gold-bright-rgb), .75), 0 0 22px #ffaa2873, 0 2px 6px rgba(var(--color-shadow-rgb), .6);font-style:italic}.floating-number.finishing-blow{letter-spacing:var(--letter-spacing-label);text-shadow:0 0 2px #140c06f2, 0 0 12px rgba(var(--color-danger-rgb), .85), 0 0 26px rgba(var(--color-danger-rgb), .45), 0 2px 6px rgba(var(--color-shadow-rgb), .6);font-style:italic;font-weight:900}.combo-text{width:max-content;max-width:calc(100vw - 24px);top:max(40%, calc(var(--banner-ladder-bottom,-10000px) + 14px + var(--combo-half,21px)));transform:var(--transform-center);font-family:var(--font-display);color:var(--color-gold);text-shadow:0 1px 3px rgba(var(--color-shadow-rgb), .9), 0 0 12px rgba(var(--color-shadow-rgb), .55);pointer-events:none;z-index:30;font-size:32px;transition:top .2s ease-out;animation:.6s ease-out forwards combo-pop;position:fixed;left:50%}@keyframes combo-pop{0%{transform:var(--transform-center) scale(.5);opacity:0}10%{transform:var(--transform-center) scale(1.3);opacity:1}20%{transform:var(--transform-center) scale(1);opacity:1}85%{transform:var(--transform-center) scale(1);opacity:1}to{transform:var(--transform-center) scale(.95);opacity:0}}@media (prefers-reduced-motion:reduce){.combo-text{animation-name:banner-hold-still}}@keyframes achievement-in{0%{opacity:0;transform:translateY(-12px)scale(.96)}60%{opacity:1;transform:translateY(0)scale(1.04)}to{opacity:1;transform:translateY(0)scale(1)}}.achievement-toast{position:relative;overflow:hidden}@media (max-width:300px){.achievement-toast{text-align:center;flex-direction:column;gap:2px!important}.achievement-toast-icon svg{width:20px;height:20px}}.achievement-toast:after{content:"";border-radius:inherit;background:linear-gradient(108deg, transparent 30%, rgba(var(--color-gold-bright-rgb), .28) 44%, var(--color-shimmer-center) 50%, rgba(var(--color-gold-bright-rgb), .28) 56%, transparent 70%);transform:var(--transform-shimmer-start);opacity:0;pointer-events:none;animation:1s ease-out .7s both achievement-toast-shine;position:absolute;inset:0}@keyframes achievement-toast-shine{0%{transform:var(--transform-shimmer-start);opacity:0}20%{opacity:1;transform:translate(-60%)}80%{opacity:1;transform:translate(60%)}to{transform:var(--transform-shimmer-end);opacity:0}}@media (prefers-reduced-motion:reduce){.achievement-toast:after{opacity:0;animation:none}}.achievement-toast-icon{animation:achievement-toast-icon-pop .4s var(--ease-overshoot) .3s both;align-items:center;display:inline-flex}@keyframes achievement-toast-icon-pop{0%{filter:drop-shadow(0 0 0 rgba(var(--color-gold-rgb), 0));transform:scale(1)}40%{filter:drop-shadow(0 0 6px rgba(var(--color-gold-rgb), .85));transform:scale(1.18)}to{filter:drop-shadow(0 0 0 rgba(var(--color-gold-rgb), 0));transform:scale(1)}}@media (prefers-reduced-motion:reduce){.achievement-toast-icon{animation:none}}.combo-meter{top:max(47.5%, calc(var(--achievement-stack-bottom,0px) + 8px));transform:var(--transform-center-x);background:rgba(var(--color-shadow-rgb), .4);pointer-events:none;z-index:30;opacity:0;border-radius:2px;align-items:center;width:60px;height:4px;transition:opacity .2s ease-out,top .2s ease-out;display:flex;position:fixed;left:50%;overflow:visible}.combo-meter-fill{border-radius:2px;height:100%;transition:width 50ms linear}.combo-meter-label{font-family:var(--font-body);color:var(--color-ui-text-muted);white-space:nowrap;text-shadow:var(--text-halo-over-scene);background:rgba(var(--color-shadow-rgb), .85);border-radius:6px;padding:1px 5px;font-size:9px;font-weight:700;position:absolute;right:-28px}#onboarding-hint{width:max-content;max-width:calc(100vw - 24px);bottom:calc(max(210px, calc(var(--tower-bar-clearance,0px) + 12px)) + 56px);transform:var(--transform-center-x);text-align:center;z-index:25;pointer-events:none;animation:hint-bounce var(--breath-cohort-2x) ease-in-out infinite;position:fixed;left:50%}#onboarding-hint.hint-center{bottom:calc(max(210px, calc(var(--tower-bar-clearance,0px) + 12px)) + 56px)}@keyframes onboarding-hint-exit{0%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%)scale(.92)}}#onboarding-hint.hint-leaving{animation:.2s ease-in forwards onboarding-hint-exit}@media (prefers-reduced-motion:reduce){#onboarding-hint.hint-leaving{opacity:0;animation:none}}.hint-arrow-up{color:var(--color-gold);font-size:28px;line-height:1;display:inline-block}.hint-text{font-family:var(--font-body);color:var(--color-ui-text);background:linear-gradient(to bottom, rgba(var(--color-desk-rgb), .95), rgba(var(--color-ui-bg-rgb), .95));border:1px solid var(--color-paper-border-dark);padding:var(--space-xs) var(--space-md);box-shadow:0 2px 5px rgba(var(--color-shadow-rgb), .5);opacity:.9;white-space:nowrap;border-radius:8px;font-size:13px;font-weight:700}@keyframes hint-bounce{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(-8px)}}.relic-card{padding:var(--space-sm) var(--space-md);width:100%;min-height:var(--tap-target-min);background:var(--color-desk);border:var(--border-card-shadow);color:var(--color-ui-text);font-family:var(--font-body);cursor:pointer;box-shadow:var(--shadow-card-mid);transition:transform .12s var(--ease-hover-lift), box-shadow .12s;animation:draft-card-deal-in .4s var(--ease-overshoot) backwards;border-radius:10px;flex-direction:column;align-items:center;gap:4px;display:flex;position:relative}.relic-card:nth-child(2){animation-delay:80ms}.relic-card:nth-child(3){animation-delay:.16s}:is(.relic-card:hover,.relic-card:focus-visible){box-shadow:0 6px 16px rgba(var(--color-shadow-rgb), .6);transform:scale(1.03)}.relic-card:active{transform:var(--transform-press)}.relic-icon{transition:transform .15s var(--ease-hover-lift);font-size:28px;line-height:1}:is(.relic-card:hover .relic-icon,.relic-card:focus-visible .relic-icon){transform:scale(1.08)}@media (prefers-reduced-motion:reduce){.relic-icon{transition:none}:is(.relic-card:hover .relic-icon,.relic-card:focus-visible .relic-icon){transform:none}}.relic-name{font-size:13px;font-weight:700}.relic-desc{color:var(--color-ui-text-muted);text-align:center;font-size:11px}.relic-card,.spell-draft-card,.draft-card,.achievement-toast,.stats-panel h2{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.relic-rarity{text-transform:uppercase;letter-spacing:var(--letter-spacing-label);font-size:9px;font-weight:800;position:absolute;top:4px;right:6px}.relic-rare{color:var(--color-gold);animation:relic-rarity-rare-breath var(--breath-cohort) ease-in-out infinite}.relic-legendary{color:var(--color-mage-bright);animation:relic-rarity-legendary-breath var(--breath-cohort) ease-in-out infinite}@keyframes relic-rarity-rare-breath{0%,to{text-shadow:var(--text-shadow-rarity-rare-low)}50%{text-shadow:var(--text-shadow-rarity-rare-high)}}@keyframes relic-rarity-legendary-breath{0%,to{text-shadow:var(--text-shadow-rarity-legendary-low)}50%{text-shadow:var(--text-shadow-rarity-legendary-high)}}@media (prefers-reduced-motion:reduce){.relic-rare,.relic-legendary{animation:none}}.perk-card.perk-tradeoff{border-color:var(--color-danger);box-shadow:0 0 12px rgba(var(--color-danger-rgb), .25) inset}.perk-upside{color:var(--color-success-bright);font-weight:600}.perk-downside{color:var(--color-danger-prose);font-weight:600}#relic-tray{left:var(--space-md);transform:var(--transform-center-y);z-index:15;pointer-events:none;flex-direction:column;gap:4px;display:flex;position:fixed;top:50%}#perk-tray{left:var(--space-md);z-index:15;pointer-events:none;flex-direction:column;gap:4px;display:flex;position:fixed;top:calc(50% + 76px)}.relic-pip:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px;border-radius:4px}.relic-pip{filter:drop-shadow(0 1px 2px rgba(var(--color-shadow-rgb),.5));cursor:default;pointer-events:auto;--relic-pip-glow-color:var(--color-gold);--relic-pip-in-duration:.45s;--relic-pip-in-peak-scale:1.25;--relic-pip-in-open-glow:12px;--relic-pip-in-peak-glow:10px;font-size:18px;line-height:1}.relic-pip-glow-common{--relic-pip-glow-color:var(--color-gold);--relic-pip-in-duration:.45s;--relic-pip-in-peak-scale:1.25;--relic-pip-in-open-glow:12px;--relic-pip-in-peak-glow:10px}.relic-pip-glow-rare{--relic-pip-glow-color:var(--color-gold-bright);--relic-pip-in-duration:.55s;--relic-pip-in-peak-scale:1.35;--relic-pip-in-open-glow:16px;--relic-pip-in-peak-glow:14px}.relic-pip-glow-legendary{--relic-pip-glow-color:var(--color-tower-mage);--relic-pip-in-duration:.7s;--relic-pip-in-peak-scale:1.5;--relic-pip-in-open-glow:24px;--relic-pip-in-peak-glow:20px}.relic-pip-in{animation:relic-pip-in var(--relic-pip-in-duration) var(--ease-overshoot) both}@keyframes relic-pip-in{0%{opacity:0;filter:drop-shadow(0 0 var(--relic-pip-in-open-glow) var(--relic-pip-glow-color)) drop-shadow(0 1px 2px rgba(var(--color-shadow-rgb),.5));transform:scale(0)rotate(-8deg)}55%{transform:scale(var(--relic-pip-in-peak-scale)) rotate(3deg);opacity:1;filter:drop-shadow(0 0 var(--relic-pip-in-peak-glow) var(--relic-pip-glow-color)) drop-shadow(0 1px 2px rgba(var(--color-shadow-rgb),.5))}to{opacity:1;filter:drop-shadow(0 1px 2px rgba(var(--color-shadow-rgb),.5));transform:scale(1)rotate(0)}}.spell-btn{background:var(--color-desk);border:var(--border-card-shadow);cursor:pointer;width:44px;height:44px;box-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .4);transition:transform .1s var(--ease-hover-lift), box-shadow .1s;border-radius:8px;justify-content:center;align-items:center;display:flex;position:relative}:is(.spell-btn:hover,.spell-btn:focus-visible){box-shadow:0 4px 10px rgba(var(--color-shadow-rgb), .5);transform:scale(1.1)}.spell-btn:active{transform:scale(.9)}.spell-btn.spell-btn-just-arrived{animation:spell-btn-arrival-burst .6s var(--ease-overshoot)}@keyframes spell-btn-arrival-burst{0%{box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);filter:var(--filter-burst-rest);transform:scale(.6)}45%{box-shadow:0 0 22px 3px rgba(var(--color-gold-bright-rgb), .95);filter:brightness(1.22)saturate(1.2);transform:scale(1.16)}to{box-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .4);filter:var(--filter-burst-rest);transform:scale(1)}}@media (prefers-reduced-motion:reduce){.spell-btn.spell-btn-just-arrived{animation:none}}.spell-btn-cast-ghost{will-change:transform, opacity, filter;animation:.35s ease-out forwards spell-btn-cast-out!important}@keyframes spell-btn-cast-out{0%{opacity:1;filter:var(--filter-burst-rest);box-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .4);transform:scale(1)}30%{opacity:1;filter:brightness(1.4)saturate(1.3);box-shadow:0 0 28px 5px rgba(var(--color-gold-bright-rgb), .85);transform:scale(1.3)}to{opacity:0;filter:var(--filter-burst-rest);box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);transform:scale(1.5)}}@media (prefers-reduced-motion:reduce){.spell-btn-cast-ghost{opacity:0;animation:none!important}}.draft-reroll-btn-cast-ghost{will-change:transform, opacity, filter;animation:.35s ease-out forwards reroll-btn-cast-out!important}@keyframes reroll-btn-cast-out{0%{opacity:1;filter:var(--filter-burst-rest);box-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .4);transform:scale(1)}30%{opacity:1;filter:brightness(1.3)saturate(1.2);box-shadow:0 0 26px 4px rgba(var(--color-gold-bright-rgb), .85);transform:scale(1.18)}to{opacity:0;filter:var(--filter-burst-rest);box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);transform:scale(1.3)}}@media (prefers-reduced-motion:reduce){.draft-reroll-btn-cast-ghost{opacity:0;animation:none!important}}.radial-btn-cast-ghost{will-change:transform, opacity, filter;animation:.35s ease-out forwards radial-btn-cast-out!important}@keyframes radial-btn-cast-out{0%{opacity:1;filter:var(--filter-burst-rest);box-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .4);transform:scale(1)}30%{opacity:1;filter:brightness(1.3)saturate(1.2);box-shadow:0 0 26px 4px rgba(var(--color-gold-bright-rgb), .85);transform:scale(1.18)}to{opacity:0;filter:var(--filter-burst-rest);box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);transform:scale(1.3)}}@media (prefers-reduced-motion:reduce){.radial-btn-cast-ghost{opacity:0;animation:none!important}}.tower-card-cast-ghost{will-change:transform, opacity, filter;animation:.35s ease-out forwards tower-card-cast-out!important}@keyframes tower-card-cast-out{0%{opacity:1;filter:var(--filter-burst-rest);box-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .4);transform:scale(1)}30%{opacity:1;filter:brightness(1.3)saturate(1.2);box-shadow:0 0 26px 4px rgba(var(--color-gold-bright-rgb), .85);transform:scale(1.18)}to{opacity:0;filter:var(--filter-burst-rest);box-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);transform:scale(1.3)}}@media (prefers-reduced-motion:reduce){.tower-card-cast-ghost{opacity:0;animation:none!important}}.spell-slot-empty{background:rgba(var(--color-shadow-rgb), .3);border:2px dashed rgba(var(--color-ui-border-rgb), .45);width:44px;height:44px;box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .5), inset 0 -1px 1px rgba(var(--color-paper-border-rgb), .12);opacity:.55;pointer-events:none;border-radius:8px;justify-content:center;align-items:center;display:flex;position:relative}.spell-slot-empty .spell-key{opacity:.7}.spell-buy-btn{background:linear-gradient(rgba(var(--color-gold-rgb), .14), rgba(var(--color-gold-rgb), .14)) var(--color-shadow);border:2px solid rgba(var(--color-gold-rgb), .55);width:44px;height:44px;box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .45), inset 0 -1px 1px rgba(var(--color-paper-border-rgb), .14), 0 0 10px rgba(var(--color-gold-rgb), .18);cursor:pointer;pointer-events:auto;color:var(--color-gold);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:1px;transition:transform .12s,box-shadow .12s,background .12s,opacity .12s;display:flex;position:relative}.spell-buy-btn:hover{background:linear-gradient(rgba(var(--color-gold-rgb), .22), rgba(var(--color-gold-rgb), .22)) var(--color-shadow);box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .45), 0 0 16px rgba(var(--color-gold-rgb), .4);transform:scale(1.08)}.spell-buy-btn:active{transform:scale(.96)}.spell-buy-btn .spell-buy-plus{font-size:16px;font-weight:700;line-height:1}.spell-buy-btn .spell-buy-cost{font-variant-numeric:tabular-nums;margin-right:18px;font-size:11px;font-weight:700;line-height:1}.spell-buy-btn .spell-key{opacity:.55;font-size:9px;position:absolute;bottom:2px;right:3px}.spell-buy-btn.unaffordable{cursor:not-allowed;border-color:rgba(var(--color-ui-border-rgb), .5);background:var(--color-shadow);color:var(--color-ui-text-muted,var(--color-ui-border));box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .5)}.spell-buy-btn.unaffordable .spell-buy-plus,.spell-buy-btn.unaffordable .spell-key{opacity:.5}.spell-buy-btn.unaffordable:hover{transform:none}.spell-btn.uncastable{opacity:.45;filter:saturate(.5);cursor:not-allowed;transition:opacity .25s,filter .25s}.spell-btn.uncastable:hover{transform:none}.ability-btn.uncastable,#hero-ability-btn.uncastable{opacity:.45;filter:saturate(.5);cursor:not-allowed;transition:opacity .25s,filter .25s}@media (prefers-reduced-motion:reduce){.spell-buy-btn{transition:none}.spell-buy-btn:hover,.spell-buy-btn:active{transform:none}}.spell-icon{transition:transform .15s var(--ease-hover-lift);font-size:22px;line-height:1}.spell-draft-icon{transition:transform .15s var(--ease-hover-lift)}:is(.spell-draft-card:hover .spell-draft-icon,.spell-draft-card:focus-visible .spell-draft-icon){transform:scale(1.08)}@media (prefers-reduced-motion:reduce){.spell-icon,.spell-draft-icon{transition:none}:is(.spell-draft-card:hover .spell-draft-icon,.spell-draft-card:focus-visible .spell-draft-icon){transform:none}}.spell-key{font-size:9px;font-family:var(--font-body);color:var(--color-ui-text-muted);background:var(--keycap-face);box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 1px 1px #0006;border-radius:3px;padding:0 3px;line-height:14px;position:absolute;bottom:-2px;right:-2px}.spell-draft-card{padding:var(--space-sm) var(--space-md);background:var(--color-desk);border:var(--border-card-shadow);width:100%;color:var(--color-ui-text);font-family:var(--font-body);cursor:pointer;box-shadow:var(--shadow-card-mid);transition:transform .12s var(--ease-hover-lift);transform-origin:50%;border-radius:10px;flex-direction:column;align-items:center;gap:4px;animation:.55s cubic-bezier(.25,.9,.3,1) backwards spell-card-flip-in;display:flex;position:relative}.spell-draft-card:first-child{animation-delay:0s}.spell-draft-card:nth-child(2){animation-delay:.14s}.spell-draft-card:nth-child(3){animation-delay:.28s}:is(.spell-draft-card:hover,.spell-draft-card:focus-visible){transform:scale(1.03)}.spell-draft-card:active{transform:var(--transform-press)}@keyframes spell-card-flip-in{0%{opacity:0;box-shadow:var(--shadow-card-mid);transform:perspective(800px)rotateY(-180deg)scale(.55)}55%{opacity:.85;box-shadow:0 12px 24px rgba(var(--color-shadow-rgb), .7);transform:perspective(800px)rotateY(-60deg)scale(.9)}to{opacity:1;box-shadow:var(--shadow-card-mid);transform:perspective(800px)rotateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.spell-draft-card,.draft-card,.relic-card{animation:.3s ease-out backwards panel-card-in}}.spell-draft-card.flipping-out{pointer-events:none;animation:.28s cubic-bezier(.25,.9,.3,1) forwards spell-card-flip-out!important}@keyframes spell-card-flip-out{0%{opacity:1;box-shadow:var(--shadow-card-mid);transform:perspective(800px)rotateY(0)scale(1)}55%{opacity:.85;box-shadow:0 10px 22px rgba(var(--color-shadow-rgb), .55);transform:perspective(800px)rotateY(60deg)scale(.9)}to{opacity:0;box-shadow:var(--shadow-card-mid);transform:perspective(800px)rotateY(180deg)scale(.55)}}@media (prefers-reduced-motion:reduce){.spell-draft-card.flipping-out{opacity:0;animation:none!important}}.spell-draft-icon{font-size:28px;line-height:1}.spell-draft-name{font-size:13px;font-weight:700}.spell-draft-desc{color:var(--color-ui-text-muted);text-align:center;font-size:11px}.spell-rarity{text-transform:uppercase;color:var(--color-gold);animation:relic-rarity-rare-breath var(--breath-cohort) ease-in-out infinite;font-size:9px;font-weight:800;position:absolute;top:4px;right:6px}@media (prefers-reduced-motion:reduce){.spell-rarity{animation:none}}.hp-bar{background:var(--color-shadow);width:32px;height:6px;transform:var(--transform-center);pointer-events:none;z-index:15;border-radius:3px;position:absolute;overflow:hidden}.hp-bar-fill{border-radius:3px;height:100%;transition:width .15s ease-out}.hp-bar-ward{height:100%;box-shadow:inset 1px 0 0 var(--color-shadow);transition:width .15s ease-out,left .15s ease-out;position:absolute;top:0}.hp-bar-status-glyph{pointer-events:none;z-index:16;filter:drop-shadow(0 1px 1.5px var(--color-shadow)) drop-shadow(0 0 1px var(--color-shadow));line-height:0;position:absolute;transform:translate(-50%,-150%)}.hp-bar-fill-critical{animation:.833s ease-in-out infinite hp-bar-critical-pulse}@keyframes hp-bar-critical-pulse{0%,to{opacity:1}50%{opacity:.6}}.hp-bar.critical{animation:.833s ease-in-out infinite hp-bar-container-critical-pulse}@keyframes hp-bar-container-critical-pulse{0%,to{box-shadow:var(--shadow-pulse-rest-danger)}50%{box-shadow:0 0 6px 1px rgba(var(--color-danger-rgb), .55)}}@media (prefers-reduced-motion:reduce){.hp-bar-fill-critical,.hp-bar.critical{animation:none}}.mark-crosshair{transform:var(--transform-center);pointer-events:none;z-index:16;color:var(--color-danger);filter:drop-shadow(0 0 3px var(--color-danger)) var(--drop-shadow-danger-medium) drop-shadow(0 1px 2px #000000bf);line-height:0;animation:1.1s ease-in-out infinite crosshair-pulse;position:absolute}@keyframes crosshair-pulse{0%,to{opacity:.85;transform:var(--transform-center) scale(1) rotate(0deg)}50%{opacity:1;transform:var(--transform-center) scale(1.18) rotate(22deg)}}.mark-crosshair.critical{animation:.833s ease-in-out infinite mark-crosshair-critical-pulse}@keyframes mark-crosshair-critical-pulse{0%,to{opacity:.9;transform:var(--transform-center) scale(1) rotate(0deg)}50%{opacity:1;transform:var(--transform-center) scale(1.32) rotate(30deg)}}.mark-crosshair.just-applied{animation:mark-crosshair-arrival .5s var(--ease-overshoot)}@keyframes mark-crosshair-arrival{0%{opacity:0;transform:var(--transform-center) scale(.5) rotate(-30deg);filter:drop-shadow(0 0 3px var(--color-danger)) var(--drop-shadow-danger-medium) drop-shadow(0 1px 2px #000000bf)}40%{opacity:1;transform:var(--transform-center) scale(1.45) rotate(15deg);filter:drop-shadow(0 0 6px var(--color-danger-bright)) var(--drop-shadow-danger-high) drop-shadow(0 1px 2px #000000bf)}to{opacity:.85;transform:var(--transform-center) scale(1) rotate(0deg);filter:drop-shadow(0 0 3px var(--color-danger)) var(--drop-shadow-danger-medium) drop-shadow(0 1px 2px #000000bf)}}@media (prefers-reduced-motion:reduce){.mark-crosshair.critical,.mark-crosshair.just-applied{animation:none}}.primary-threat-marker{transform:var(--transform-center);pointer-events:none;z-index:15;color:var(--color-danger-bright);filter:drop-shadow(0 0 4px var(--color-danger-bright)) drop-shadow(0 1px 2px #000000b3);line-height:0;animation:1.1s ease-in-out infinite primary-threat-bob;position:absolute}@keyframes primary-threat-bob{0%,to{opacity:.9;transform:var(--transform-center) translateY(0) scale(1)}50%{opacity:1;transform:var(--transform-center) translateY(-4px) scale(1.08)}}.primary-threat-marker.retarget{animation:primary-threat-retarget .4s var(--ease-overshoot)}@keyframes primary-threat-retarget{0%{opacity:0;transform:var(--transform-center) translateY(-10px) scale(.5)}45%{opacity:1;transform:var(--transform-center) translateY(2px) scale(1.35)}to{opacity:.9;transform:var(--transform-center) translateY(0) scale(1)}}@media (prefers-reduced-motion:reduce){.primary-threat-marker,.primary-threat-marker.retarget{opacity:.95;animation:none}}.target-priority-glyph{transform:var(--transform-center);pointer-events:none;z-index:15;border:1px solid rgba(var(--color-gold-rgb), .45);color:var(--color-highlight);-webkit-user-select:none;user-select:none;background:#140e08ad;border-radius:999px;padding:3px;line-height:0;animation:.22s ease-out target-priority-glyph-in;position:absolute;box-shadow:0 2px 4px #0000008c}@keyframes target-priority-glyph-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.target-priority-glyph{animation:none}}.tower-spec-icon{transform:var(--transform-center);pointer-events:none;z-index:14;filter:drop-shadow(0 2px 2px #000c)drop-shadow(0 0 3px #ffc87859);-webkit-user-select:none;user-select:none;line-height:0;position:absolute}.tower-spec-icon-max{filter:drop-shadow(0 2px 2px #000c) drop-shadow(0 0 5px var(--color-gold)) drop-shadow(0 0 3px rgba(var(--color-highlight-rgb), .9));animation:2.4s ease-in-out infinite tower-spec-icon-max-pulse}@keyframes tower-spec-icon-max-pulse{0%,to{transform:var(--transform-center) scale(1)}50%{transform:var(--transform-center) scale(1.15)}}.tower-spec-icon.just-arrived{animation:tower-spec-icon-arrival .5s var(--ease-overshoot)}@keyframes tower-spec-icon-arrival{0%{opacity:0;transform:var(--transform-center) scale(.5);filter:drop-shadow(0 2px 2px #000c)drop-shadow(0 0 3px #ffc87859)}40%{opacity:1;transform:var(--transform-center) scale(1.45);filter:drop-shadow(0 2px 2px #000c) drop-shadow(0 0 10px var(--color-gold-bright)) drop-shadow(0 0 5px rgba(var(--color-highlight-rgb), .95))}to{opacity:1;transform:var(--transform-center) scale(1);filter:drop-shadow(0 2px 2px #000c)drop-shadow(0 0 3px #ffc87859)}}@media (prefers-reduced-motion:reduce){.tower-spec-icon.just-arrived{animation:none}}.tower-spec-icon.just-maxed{animation:tower-spec-icon-max-arrival .5s var(--ease-overshoot)}@keyframes tower-spec-icon-max-arrival{0%{transform:var(--transform-center) scale(1);filter:drop-shadow(0 2px 2px #000c) drop-shadow(0 0 5px var(--color-gold)) drop-shadow(0 0 3px rgba(var(--color-highlight-rgb), .9))}40%{transform:var(--transform-center) scale(1.45);filter:drop-shadow(0 2px 2px #000c) drop-shadow(0 0 14px var(--color-gold-bright)) drop-shadow(0 0 7px rgba(var(--color-highlight-rgb), .95))}to{transform:var(--transform-center) scale(1);filter:drop-shadow(0 2px 2px #000c) drop-shadow(0 0 5px var(--color-gold)) drop-shadow(0 0 3px rgba(var(--color-highlight-rgb), .9))}}@media (prefers-reduced-motion:reduce){.tower-spec-icon.just-maxed{animation:none}}.radial-menu{--radial-anchor-y:-100%;gap:var(--space-xs);z-index:44;width:max-content;max-width:240px;transform:translate(-50%, var(--radial-anchor-y));padding-bottom:var(--space-sm);transform-origin:bottom;flex-wrap:wrap;justify-content:center;display:flex;position:fixed}.radial-menu.radial-scrollable{border-bottom:14px solid #0000}.radial-menu.radial-scrollable:not(.radial-scroll-end){background-origin:border-box;background-clip:border-box;background-image:linear-gradient(45deg, transparent 40%, var(--color-gold) 40%, var(--color-gold) 60%, transparent 60%), linear-gradient(135deg, transparent 40%, var(--color-gold) 40%, var(--color-gold) 60%, transparent 60%), linear-gradient(to bottom, rgba(var(--color-gold-rgb), .55) 0 1px, var(--color-desk) 1px 100%);background-position:calc(50% - 3px) calc(100% - 4px),calc(50% + 3px) calc(100% - 4px),bottom;background-repeat:no-repeat,no-repeat,no-repeat;background-size:7px 7px,7px 7px,100% 14px}.radial-menu.below{--radial-anchor-y:0%;padding-bottom:0;padding-top:var(--space-sm);transform-origin:top}@keyframes radial-pop{0%{transform:translate(-50%, var(--radial-anchor-y)) scale(.7);opacity:0}to{transform:translate(-50%, var(--radial-anchor-y)) scale(1);opacity:1}}@keyframes radial-pop-out{0%{transform:translate(-50%, var(--radial-anchor-y)) scale(1);opacity:1}to{transform:translate(-50%, var(--radial-anchor-y)) scale(.85);opacity:0}}.radial-menu.radial-leaving{pointer-events:none;animation:.12s ease-in forwards radial-pop-out!important}@media (prefers-reduced-motion:reduce){.radial-menu.radial-leaving{opacity:0;animation:none!important}}.radial-btn{min-width:var(--tap-target-min);min-height:var(--tap-target-min);padding:var(--space-xs) var(--space-sm);background:var(--color-desk);border:var(--border-card-shadow);color:var(--color-ui-text);font-family:var(--font-body);cursor:pointer;box-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .5);border-radius:8px;justify-content:center;align-items:center;font-size:13px;font-weight:700;transition:background .15s;display:flex}.radial-btn.priority{flex-direction:column;gap:1px;line-height:1.15}.radial-btn.priority .priority-main{align-items:center;gap:4px;display:inline-flex}.radial-btn.priority .priority-desc{opacity:.95;font-size:11px;font-weight:400}:is(.radial-btn:hover,.radial-btn:focus-visible){background:var(--color-ui-border)}.radial-btn:active{transform:var(--transform-press)}.radial-btn.sell{color:var(--color-danger-hi);border-color:var(--color-danger)}.radial-btn.sell-confirm{color:var(--color-ui-text);background:var(--color-danger);border-color:var(--color-danger);animation:.6s ease-in-out infinite sell-pulse}@keyframes sell-pulse{50%{opacity:.7}}.radial-btn.upgrade.upgrade-armed{border-color:var(--color-gold-bright);box-shadow:0 0 0 2px rgba(var(--color-gold-rgb), .45);animation:.6s ease-in-out infinite sell-pulse}.radial-upgrade-tap-again{border-top:1px solid var(--color-paper-border-dark);color:var(--color-gold-bright);margin-top:6px;padding-top:5px;font-size:11px;font-weight:700}.radial-btn.priority{color:var(--color-wave-bright)}.ability-btn{background:radial-gradient(circle at 30% 25%, rgba(var(--color-highlight-rgb), .18) 0%, transparent 55%), var(--gradient-wooden-btn);border:var(--border-wooden-edge);width:44px;height:44px;box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), var(--ring-ability-btn-rest);color:var(--color-gold);cursor:pointer;transition:transform .12s var(--ease-hover-lift), box-shadow .15s, opacity .2s ease-out;border-radius:8px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}:is(.ability-btn:hover,.ability-btn:focus-visible){box-shadow:0 4px 10px #000000a6, inset 0 1px 0 rgba(var(--color-highlight-rgb), .3), var(--rim-ability-btn-shadow), 0 0 0 2px rgba(var(--color-gold-rgb), .6), 0 0 12px rgba(var(--color-gold-rgb), .35);transform:translate(-2px)scale(1.06)}.ability-btn:active{transform:scale(.95);box-shadow:0 1px 3px #00000080,inset 0 2px 4px #0006}.ability-btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;box-shadow:0 2px 4px #00000073, inset 0 1px 0 rgba(var(--color-highlight-rgb), .1), 0 0 0 1px #64646440}.ability-icon{z-index:1;filter:drop-shadow(0 1px 1px #000000b3);justify-content:center;align-items:center;display:flex}.ability-key{font-family:var(--font-body);color:rgba(var(--color-gold-rgb), .95);text-shadow:0 1px 1px #000c;letter-spacing:var(--letter-spacing-label);z-index:1;background:var(--keycap-face);box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 1px 1px #0006;border-radius:2px;padding:1px 3px;font-size:9px;font-weight:700;line-height:11px;position:absolute;bottom:1px;right:3px}.hero-ability-btn{width:50px;height:50px;box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), 0 0 0 2px rgba(var(--color-gold-rgb), .5), 0 0 14px rgba(var(--color-gold-rgb), .45)}:is(.hero-ability-btn:hover,.hero-ability-btn:focus-visible){box-shadow:var(--shadow-corner-btn-hover), inset 0 1px 0 rgba(var(--color-highlight-rgb), .3), var(--rim-ability-btn-shadow), 0 0 0 3px rgba(var(--color-gold-rgb), .78), 0 0 18px rgba(var(--color-gold-rgb), .55);transform:translate(-2px)scale(1.08)}.hero-ability-btn:active{transform:var(--transform-press)}.hero-ability-btn .ability-icon{filter:drop-shadow(0 1px 2px #000000d9)}.hero-ability-btn.just-leveled-up{animation:hero-ability-btn-level-up-keyframe var(--anim-significant-gain)}@keyframes hero-ability-btn-level-up-keyframe{0%{box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), 0 0 0 2px rgba(var(--color-gold-rgb), .5), 0 0 14px rgba(var(--color-gold-rgb), .45);filter:var(--filter-burst-rest)}35%{box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), 0 0 0 3px rgba(var(--color-gold-bright-rgb), .85), 0 0 22px rgba(var(--color-gold-bright-rgb), .7);filter:brightness(1.18)saturate(1.2)}to{box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), 0 0 0 2px rgba(var(--color-gold-rgb), .5), 0 0 14px rgba(var(--color-gold-rgb), .45);filter:var(--filter-burst-rest)}}@media (prefers-reduced-motion:reduce){.hero-ability-btn.just-leveled-up{animation:none}}@keyframes hero-key-level-up{0%{box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 1px 1px #0006;transform:scale(1)}35%{box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 0 10px 2px rgba(var(--color-gold-bright-rgb), .85);transform:scale(1.2)}to{box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 1px 1px #0006;transform:scale(1)}}.hero-key-level-up{animation:hero-key-level-up var(--anim-significant-gain) ease-out 1}@media (prefers-reduced-motion:reduce){.hero-key-level-up{animation:none}}.ability-cooldown-overlay{border-radius:inherit;pointer-events:none;background:conic-gradient(from -90deg, rgba(var(--color-gold-rgb), .78) 0deg, rgba(var(--color-gold-rgb), .78) var(--cd-leading,4deg), rgba(var(--color-shadow-rgb), .74) var(--cd-leading,4deg), rgba(var(--color-shadow-rgb), .74) var(--cd-angle,360deg), transparent var(--cd-angle,360deg), transparent 360deg);mix-blend-mode:multiply;display:none;position:absolute;inset:0}#boss-hp-track.boss-hp-crit{animation:.8s ease-in-out infinite alternate boss-hp-crit-pulse}@keyframes boss-hp-crit-pulse{0%{box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .7), inset 0 -1px 1px rgba(var(--color-paper-border-rgb), .15), 0 0 4px rgba(var(--color-danger-rgb), .5);border-color:var(--color-ui-border)}to{box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .7), inset 0 -1px 1px rgba(var(--color-paper-border-rgb), .15), 0 0 16px 2px rgba(var(--color-danger-bright-rgb), .85);border-color:var(--color-danger-bright)}}#boss-name{color:var(--color-danger-hi);text-shadow:var(--text-halo-over-scene), 0 0 8px rgba(var(--color-danger-rgb), .45)}#boss-name.boss-name-crit{animation:.8s ease-in-out infinite alternate boss-name-crit-pulse}@keyframes boss-name-crit-pulse{0%{color:var(--color-danger-hi);text-shadow:var(--text-halo-over-scene), 0 0 6px rgba(var(--color-danger-rgb), .4)}to{color:var(--color-danger-hi);text-shadow:var(--text-halo-over-scene), 0 0 14px rgba(var(--color-danger-bright-rgb), .85)}}#boss-hp-track.boss-hp-crit-deep{animation:.833s ease-in-out infinite alternate boss-hp-crit-deep-pulse}@keyframes boss-hp-crit-deep-pulse{0%{box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .7), inset 0 -1px 1px rgba(var(--color-paper-border-rgb), .15), 0 0 8px rgba(var(--color-danger-rgb), .65);border-color:var(--color-danger)}to{box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .7), inset 0 -1px 1px rgba(var(--color-paper-border-rgb), .15), 0 0 24px 4px rgba(var(--color-danger-bright-rgb), .95);border-color:var(--color-danger-bright)}}#boss-name.boss-name-crit-deep{animation:.833s ease-in-out infinite alternate boss-name-crit-deep-pulse}@keyframes boss-name-crit-deep-pulse{0%{color:var(--color-danger-hi);text-shadow:var(--text-halo-over-scene), 0 0 10px rgba(var(--color-danger-bright-rgb), .6)}to{color:var(--color-danger-hi);text-shadow:var(--text-halo-over-scene), 0 0 20px rgba(var(--color-danger-bright-rgb), 1)}}@media (prefers-reduced-motion:reduce){#boss-name.boss-name-crit{text-shadow:var(--text-halo-over-scene), 0 0 14px rgba(var(--color-danger-bright-rgb), .85);animation:none}#boss-hp-track.boss-hp-crit-deep,#boss-name.boss-name-crit-deep{animation:none}#boss-name.boss-name-crit-deep{text-shadow:var(--text-halo-over-scene), 0 0 20px rgba(var(--color-danger-bright-rgb), 1)}}#boss-hp-bar.boss-bar-enter{animation:boss-hp-bar-enter .6s var(--ease-overshoot)}@keyframes boss-hp-bar-enter{0%{filter:drop-shadow(0 0 #0000);transform:translate(-50%)translateY(-32px)scale(.85)}50%{filter:var(--drop-shadow-danger-high);transform:translate(-50%)translateY(4px)scale(1.06)}80%{filter:var(--drop-shadow-danger-low);transform:translate(-50%)translateY(-1px)scale(.99)}to{filter:drop-shadow(0 0 #0000);transform:translate(-50%)translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){#boss-hp-bar.boss-bar-enter{animation:none}}#boss-hp-bar.boss-bar-victory{animation:.5s ease-out forwards boss-hp-bar-victory}@keyframes boss-hp-bar-victory{0%{opacity:1;filter:drop-shadow(0 0 #0000);transform:translate(-50%)scale(1)}20%{opacity:1;filter:drop-shadow(0 0 14px var(--color-gold));transform:translate(-50%)scale(1.12)}60%{opacity:.7;filter:drop-shadow(0 0 8px var(--color-gold));transform:translate(-50%)scale(1.02)}to{opacity:0;filter:drop-shadow(0 0 #0000);transform:translate(-50%)scale(.92)}}@media (prefers-reduced-motion:reduce){#boss-hp-bar.boss-bar-victory{animation:none;opacity:0!important}}#boss-hp-bar.boss-bar-leak-out{animation:.3s ease-in forwards boss-hp-bar-leak-out}@keyframes boss-hp-bar-leak-out{0%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%)scale(.85)}}@media (prefers-reduced-motion:reduce){#boss-hp-bar.boss-bar-leak-out{animation:none;opacity:0!important}}.ability-btn.ability-ready-pulse{animation:.65s ease-out ability-ready-pulse}@keyframes ability-ready-pulse{0%{box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), var(--ring-ability-btn-rest), 0 0 0 0 rgba(var(--color-gold-bright-rgb), .9)}30%{box-shadow:var(--shadow-ability-btn), inset 0 1px 0 rgba(var(--color-highlight-rgb), .35), var(--rim-ability-btn-shadow), 0 0 0 3px rgba(var(--color-gold-bright-rgb), .75), 0 0 18px 6px rgba(var(--color-gold-bright-rgb), .55)}to{box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), var(--ring-ability-btn-rest), var(--shadow-pulse-rest-gold-bright)}}.ability-btn.ability-cast-fired{animation:ability-cast-fired .35s var(--ease-commit) 1}@keyframes ability-cast-fired{0%{box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), var(--ring-ability-btn-rest), var(--shadow-pulse-rest-gold-bright);transform:scale(1)}30%{box-shadow:var(--shadow-ability-btn), inset 0 1px 0 rgba(var(--color-highlight-rgb), .45), var(--rim-ability-btn-shadow), 0 0 0 4px rgba(var(--color-gold-bright-rgb), .65), 0 0 22px 8px rgba(var(--color-gold-bright-rgb), .7);transform:scale(1.06)}to{box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), var(--ring-ability-btn-rest), var(--shadow-pulse-rest-gold-bright);transform:scale(1)}}@media (prefers-reduced-motion:reduce){.ability-btn.ability-cast-fired{animation:none}}@keyframes hero-ability-cast-fired{0%{box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), 0 0 0 2px rgba(var(--color-gold-rgb), .5), 0 0 14px rgba(var(--color-gold-rgb), .45);transform:scale(1)}30%{box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), 0 0 0 4px rgba(var(--color-gold-bright-rgb), .85), 0 0 22px 8px rgba(var(--color-gold-bright-rgb), .85);transform:scale(1.06)}to{box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), 0 0 0 2px rgba(var(--color-gold-rgb), .5), 0 0 14px rgba(var(--color-gold-rgb), .45);transform:scale(1)}}@keyframes hero-ability-ready-pulse{0%{box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), 0 0 0 2px rgba(var(--color-gold-rgb), .5), 0 0 14px rgba(var(--color-gold-rgb), .45)}30%{box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), 0 0 0 4px rgba(var(--color-gold-bright-rgb), .85), 0 0 22px 6px rgba(var(--color-gold-bright-rgb), .7)}to{box-shadow:var(--shadow-ability-btn), var(--rim-wooden-btn-highlight-mid), var(--rim-ability-btn-shadow), 0 0 0 2px rgba(var(--color-gold-rgb), .5), 0 0 14px rgba(var(--color-gold-rgb), .45)}}.hero-ability-btn.ability-cast-fired{animation:hero-ability-cast-fired .35s var(--ease-commit) 1}.hero-ability-btn.ability-ready-pulse{animation:.65s ease-out hero-ability-ready-pulse}@media (prefers-reduced-motion:reduce){.hero-ability-btn.ability-cast-fired,.hero-ability-btn.ability-ready-pulse{animation:none}}.minimap-frame.minimap-band-clipped{display:none}.minimap-frame{border:var(--border-wooden-edge);background:rgba(var(--color-ui-bg-rgb), .88);box-shadow:0 3px 8px #0000008c, inset 0 2px 4px #0000008c, var(--rim-cta-btn-highlight-barely), 0 0 0 1px rgba(var(--color-gold-rgb), .4);border-radius:8px}#start-wave-btn{bottom:max(210px, calc(var(--tower-bar-clearance,0px) + 12px));transform:var(--transform-center-x);z-index:40;cursor:pointer;font-family:var(--font-display);letter-spacing:.02em;color:var(--color-highlight);min-height:var(--tap-target-min);border:var(--border-wooden-edge);background:linear-gradient(180deg, rgba(var(--color-gold-rgb), .12) 0%, rgba(var(--color-gold-rgb), 0) 55%), rgba(var(--color-ui-bg-rgb), .92);box-shadow:var(--shadow-cta-btn), var(--shadow-carve), var(--rim-cta-btn-highlight-rest), var(--ring-cta-btn-rest);text-shadow:var(--shadow-text-label);border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:10px 28px;font-size:18px;line-height:1.15;transition:transform .12s,box-shadow .16s,background .16s,opacity .16s ease-out;animation:2.5s ease-in-out infinite start-wave-breath;display:inline-flex;position:fixed;left:50%}@media (min-width:601px) and (max-height:850px){body.hero-placing #start-wave-btn{display:none!important}}body.hero-placing.hero-prompt-crowded .wave-preview-banner,.wave-preview-banner.wave-preview-yield{display:none!important}body.hero-placing .kb-hint,.kb-hint.kb-hint-yield{opacity:0!important}#start-wave-btn .start-wave-label{display:inline-block}#start-wave-btn .start-wave-countdown{font-family:var(--font-body);letter-spacing:.04em;color:var(--color-ui-text-muted);text-shadow:none;opacity:.85;transform-origin:50%;--tick-pop:1;--base-scale:1;transform:scale(calc(var(--tick-pop) * var(--base-scale)));font-size:12px;font-weight:400;transition:color .2s,opacity .2s;display:none}#start-wave-btn .start-wave-countdown[data-active]{animation:.22s both start-wave-countdown-in;display:block}#start-wave-btn .start-wave-countdown[data-urgency=warn]{color:var(--color-highlight);opacity:1}#start-wave-btn .start-wave-countdown[data-urgency=danger]{color:var(--color-danger);opacity:1;--base-scale:1.06;font-weight:600}#start-wave-btn .start-wave-countdown[data-wave-kind=boss][data-urgency=warn],#start-wave-btn .start-wave-countdown[data-wave-kind=mini-boss][data-urgency=warn]{color:var(--color-danger)}#start-wave-btn .start-wave-countdown[data-wave-kind=boss][data-urgency=danger],#start-wave-btn .start-wave-countdown[data-wave-kind=mini-boss][data-urgency=danger]{color:var(--color-danger-bright);text-shadow:0 0 6px rgba(var(--color-danger-bright-rgb), .55)}@keyframes start-wave-countdown-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:.85;transform:translateY(0)}}@keyframes start-wave-countdown-out{0%{opacity:.85;transform:translateY(0)}to{opacity:0;transform:translateY(-3px)}}#start-wave-btn .start-wave-countdown.start-wave-countdown-leaving{animation:.15s ease-in forwards start-wave-countdown-out;display:block}@media (prefers-reduced-motion:reduce){#start-wave-btn .start-wave-countdown.start-wave-countdown-leaving{opacity:0;animation:none}}#start-wave-btn.start-wave-nudge{animation:.9s ease-in-out 3 start-wave-nudge}@keyframes start-wave-nudge{0%,to{transform:var(--transform-center-x) scale(1);box-shadow:var(--shadow-cta-btn), var(--shadow-carve), var(--rim-cta-btn-highlight-rest), var(--ring-cta-btn-rest)}50%{transform:var(--transform-center-x) scale(1.05);box-shadow:var(--shadow-cta-btn), var(--shadow-carve), var(--rim-cta-btn-highlight-rest), 0 0 0 3px rgba(var(--color-gold-rgb), .55), 0 0 26px rgba(var(--color-gold-rgb), .65)}}@media (prefers-reduced-motion:reduce){#start-wave-btn.start-wave-nudge{animation:none}}:is(#start-wave-btn:hover,#start-wave-btn:focus-visible){background:linear-gradient(180deg, rgba(var(--color-gold-rgb), .22) 0%, rgba(var(--color-gold-rgb), .03) 60%), rgba(var(--color-ui-bg-rgb), .95);box-shadow:0 5px 14px #0009, var(--shadow-carve), var(--rim-cta-btn-highlight-peak), 0 0 0 1px rgba(var(--color-highlight-rgb), .7), 0 0 18px rgba(var(--color-gold-rgb), .35)!important}#start-wave-btn:active{transform:translate(-50%,1px);box-shadow:0 2px 6px #0009, inset 0 3px 6px #0009, var(--ring-cta-btn-rest)!important}#start-wave-btn:focus-visible{outline:2px solid var(--color-highlight);outline-offset:3px}#start-wave-btn kbd{font-family:var(--font-body);color:var(--color-ui-text-muted);background:var(--keycap-face);box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 1px 1px #0006;border:none;border-radius:3px;margin-left:8px;padding:2px 6px;font-size:11px}@keyframes start-wave-breath{0%,to{box-shadow:var(--shadow-cta-btn), var(--shadow-carve), var(--rim-cta-btn-highlight-rest), var(--ring-cta-btn-rest)}50%{box-shadow:var(--shadow-cta-btn), var(--shadow-carve), var(--rim-cta-btn-highlight-peak), 0 0 0 1px rgba(var(--color-highlight-rgb), .8), 0 0 14px rgba(var(--color-gold-rgb), .3)}}@media (prefers-reduced-motion:reduce){#start-wave-btn{animation:none}}#start-wave-btn.success-commit{animation:start-wave-breath 2.6s ease-in-out infinite, start-wave-success-commit .28s var(--ease-commit) 1;pointer-events:none}@keyframes start-wave-success-commit{0%{box-shadow:var(--shadow-cta-btn), var(--shadow-carve), var(--rim-cta-btn-highlight-rest), var(--ring-cta-btn-rest), var(--shadow-pulse-rest-gold-bright);transform:translate(-50%)scale(1)}35%{box-shadow:0 5px 18px #000000a6, var(--shadow-carve), inset 0 -1px 0 rgba(var(--color-highlight-rgb), .25), var(--shadow-commit-halo);transform:translate(-50%)scale(1.04)}to{box-shadow:var(--shadow-cta-btn), var(--shadow-carve), var(--rim-cta-btn-highlight-rest), var(--ring-cta-btn-rest), var(--shadow-pulse-rest-gold-bright);transform:translate(-50%)scale(1)}}@media (prefers-reduced-motion:reduce){#start-wave-btn.success-commit{animation:none}}.difficulty-dice-row{align-items:flex-end;gap:18px;margin-bottom:2px;display:flex}.difficulty-die{cursor:pointer;min-width:44px;min-height:40px;font-family:var(--font-body);letter-spacing:1px;text-transform:uppercase;perspective:600px;background:0 0;border:none;flex-direction:column;align-items:center;gap:16px;padding:2px 6px 4px;font-size:12px;font-weight:700;transition:transform .15s;display:flex}.difficulty-die .die-face{opacity:.6;transition:opacity .15s}:is(.difficulty-die:hover .die-face,.difficulty-die:focus-visible .die-face){opacity:.9}.difficulty-die.selected .die-face{opacity:1}.die-label{color:var(--color-ui-text-muted);text-shadow:var(--text-halo-over-scene)}.difficulty-die.selected .die-label{color:var(--color-ui-text)}.challenge-summary{background:rgba(var(--color-shadow-rgb), .92);max-width:min(92vw,560px);color:var(--color-ui-text);font-family:var(--font-body);text-align:center;border-radius:6px;margin:4px auto 0;padding:3px 10px;font-size:11px;line-height:1.35}.challenge-summary:empty{display:none}.difficulty-summary{background:rgba(var(--color-shadow-rgb), .92);max-width:min(92vw,520px);color:var(--color-ui-text);font-family:var(--font-body);text-align:center;border-radius:6px;margin:2px auto 4px;padding:3px 10px;font-size:11px;line-height:1.35}:is(.difficulty-die:hover,.difficulty-die:focus-visible){transform:var(--transform-lift-card)}:is(.difficulty-die:hover:not(.selected) .die-face,.difficulty-die:focus-visible:not(.selected) .die-face){transform:translateZ(10px)}.difficulty-die:active:not(.selected){transform:var(--transform-press)}:is(.difficulty-die:hover:not(.selected) .die-face,.difficulty-die:focus-visible:not(.selected) .die-face){box-shadow:inset 0 -4px 5px #5c4a3a59,inset 0 2px 3px #fff9,0 6px 12px #0000008c}.die-face{background:linear-gradient(160deg, var(--color-paper-die-light) 0%, var(--color-paper-die-mid) 55%, var(--color-paper-die-deep) 100%);border:2px solid var(--color-paper-border-dark);width:40px;height:40px;transition:transform .2s var(--ease-hover-lift), box-shadow .2s;border-radius:10px;grid-template:repeat(3,1fr)/repeat(3,1fr);gap:2px;padding:6px;display:grid;box-shadow:inset 0 -4px 5px #5c4a3a59,inset 0 2px 3px #fff9,0 3px 6px #0006}.difficulty-die.selected .die-face{outline-offset:2px;animation:difficulty-die-selected-breath var(--breath-cohort) ease-in-out infinite;outline:3px solid;transform:rotate(-5deg)scale(1.08);box-shadow:inset 0 -4px 5px #5c4a3a59,inset 0 2px 3px #fff9,0 8px 18px #0000008c}@keyframes difficulty-die-selected-breath{0%,to{outline-offset:2px}50%{outline-offset:5px}}@media (prefers-reduced-motion:reduce){.difficulty-die.selected .die-face{animation:none}}.die-face .pip{background:radial-gradient(circle at 30% 30%, var(--color-paper-border-dark) 0%, var(--color-paper-pip-deep) 100%);border-radius:50%;min-width:0;min-height:0;box-shadow:inset 0 1px 1px #0009}.die-face-1 .pip:first-child{grid-area:2/2}.die-face-3 .pip:first-child{grid-area:1/1}.die-face-3 .pip:nth-child(2){grid-area:2/2}.die-face-3 .pip:nth-child(3){grid-area:3/3}.die-face-6 .pip:first-child{grid-area:1/1}.die-face-6 .pip:nth-child(2){grid-area:1/3}.die-face-6 .pip:nth-child(3){grid-area:2/1}.die-face-6 .pip:nth-child(4){grid-area:2/3}.die-face-6 .pip:nth-child(5){grid-area:3/1}.die-face-6 .pip:nth-child(6){grid-area:3/3}.challenge-card-row{perspective:600px;flex-wrap:wrap;justify-content:center;gap:8px;max-width:min(480px,90vw);margin-top:4px;display:flex}@media (min-width:601px){.challenge-card-row{max-width:min(1100px,96vw)}}.challenge-card{min-height:var(--tap-target-min);background:linear-gradient(135deg, var(--color-paper-challenge-light) 0%, var(--color-paper-challenge-mid) 55%, var(--color-paper-challenge-deep) 100%);color:var(--color-paper-ink);border:2px solid var(--color-paper-border);font-family:var(--font-display);letter-spacing:var(--letter-spacing-label);cursor:pointer;box-shadow:0 3px 8px #00000073, var(--shadow-parchment-inner-halo), inset 0 1px 2px rgba(var(--color-paper-highlight-rgb), .55);transition:transform .18s var(--ease-hover-lift), box-shadow .18s, filter .18s;border-radius:4px 12px 3px 10px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:inline-flex;position:relative;transform:rotate(-1.5deg)}.challenge-card:nth-of-type(2n){border-radius:10px 3px 12px 4px;transform:rotate(1.2deg)}.challenge-card:nth-of-type(3n){border-radius:8px 4px 10px 6px;transform:rotate(-.5deg)}:is(.challenge-card:hover,.challenge-card:focus-visible){transform:rotate(0deg) var(--transform-lift-card) translateZ(10px);filter:brightness(1.08);box-shadow:0 6px 14px #0000008c, var(--shadow-parchment-inner-halo), inset 0 1px 2px rgba(var(--color-paper-highlight-rgb), .55)}.challenge-card:active{transform:rotate(0deg) var(--transform-press)}.challenge-card.selected{border-color:var(--color-gold);box-shadow:0 4px 14px rgba(var(--color-gold-rgb), .55), 0 0 0 2px var(--color-gold), var(--shadow-parchment-inner-halo);animation:challenge-card-selected-breath var(--breath-cohort) ease-in-out infinite;transform:rotate(0)scale(1.05)}@keyframes challenge-card-selected-breath{0%,to{box-shadow:0 4px 14px rgba(var(--color-gold-rgb), .55), 0 0 0 2px var(--color-gold), var(--shadow-parchment-inner-halo)}50%{box-shadow:0 6px 18px rgba(var(--color-gold-rgb), .78), 0 0 0 2px var(--color-gold), var(--shadow-parchment-inner-halo)}}.challenge-card.selected.pref-set{animation:challenge-card-selected-breath var(--breath-cohort) ease-in-out infinite, pref-set .2s ease-out 1}@media (prefers-reduced-motion:reduce){.challenge-card.selected,.challenge-card.selected.pref-set{animation:none}}.challenge-card-icon{filter:saturate(.8);transition:transform .15s var(--ease-hover-lift);font-size:15px;line-height:1}:is(.challenge-card:hover .challenge-card-icon,.challenge-card:focus-visible .challenge-card-icon){transform:scale(1.08)}@media (prefers-reduced-motion:reduce){.challenge-card-icon{transition:none}:is(.challenge-card:hover .challenge-card-icon,.challenge-card:focus-visible .challenge-card-icon){transform:none}}.challenge-card-title{font-weight:600}.challenge-card-mods{color:var(--color-paper-ink-sub);font-size:11px;font-weight:700;line-height:1.2}.map-grid-wrap{flex-direction:column;flex:auto;max-width:100vw;min-height:0;display:flex;position:relative}.map-grid-wrap[data-overflow=true][data-at-bottom=false]:after{content:"";background:linear-gradient(to top, rgba(var(--color-shadow-rgb), .95) 0%, rgba(var(--color-shadow-rgb), .55) 50%, transparent 100%);pointer-events:none;z-index:2;height:48px;position:absolute;bottom:0;left:0;right:0}.map-grid-wrap[data-overflow=true][data-at-bottom=false]:before{content:"▼";color:var(--color-gold);opacity:.85;pointer-events:none;z-index:3;text-shadow:0 1px 2px rgba(var(--color-shadow-rgb), .8);font-size:18px;animation:1.5s ease-in-out infinite map-grid-chevron-bob;position:absolute;bottom:4px;left:50%}@keyframes map-grid-chevron-bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,-4px)}}@media (prefers-reduced-motion:reduce){.map-grid-wrap[data-overflow=true][data-at-bottom=false]:before{transform:var(--transform-center-x);animation:none}}.map-grid{scrollbar-width:thin;scrollbar-color:var(--color-gold) rgba(var(--color-shadow-rgb), .4)}.map-grid::-webkit-scrollbar{width:8px}.map-grid::-webkit-scrollbar-track{background:rgba(var(--color-shadow-rgb), .4);border-radius:4px}.map-grid::-webkit-scrollbar-thumb{background:var(--color-gold);border:1px solid rgba(var(--color-shadow-rgb), .6);border-radius:4px}.map-grid::-webkit-scrollbar-thumb:hover{background:var(--color-gold-bright)}.draft-panel{scrollbar-width:thin;scrollbar-color:var(--color-gold) rgba(var(--color-shadow-rgb), .4)}.draft-panel::-webkit-scrollbar{width:8px}.draft-panel::-webkit-scrollbar-track{background:rgba(var(--color-shadow-rgb), .4);border-radius:4px}.draft-panel::-webkit-scrollbar-thumb{background:var(--color-gold);border:1px solid rgba(var(--color-shadow-rgb), .6);border-radius:4px}.draft-panel::-webkit-scrollbar-thumb:hover{background:var(--color-gold-bright)}.stats-panel,.howto-scroll,#map-select-overlay,body.build-sheet-open #tower-bar{scrollbar-width:thin;scrollbar-color:var(--color-gold) rgba(var(--color-shadow-rgb), .4)}.stats-panel::-webkit-scrollbar{width:8px}.howto-scroll::-webkit-scrollbar{width:8px}#map-select-overlay::-webkit-scrollbar{width:8px}body.build-sheet-open #tower-bar::-webkit-scrollbar{width:8px}.stats-panel::-webkit-scrollbar-track{background:rgba(var(--color-shadow-rgb), .4);border-radius:4px}.howto-scroll::-webkit-scrollbar-track{background:rgba(var(--color-shadow-rgb), .4);border-radius:4px}#map-select-overlay::-webkit-scrollbar-track{background:rgba(var(--color-shadow-rgb), .4);border-radius:4px}body.build-sheet-open #tower-bar::-webkit-scrollbar-track{background:rgba(var(--color-shadow-rgb), .4);border-radius:4px}.stats-panel::-webkit-scrollbar-thumb{background:var(--color-gold);border:1px solid rgba(var(--color-shadow-rgb), .6);border-radius:4px}.howto-scroll::-webkit-scrollbar-thumb{background:var(--color-gold);border:1px solid rgba(var(--color-shadow-rgb), .6);border-radius:4px}#map-select-overlay::-webkit-scrollbar-thumb{background:var(--color-gold);border:1px solid rgba(var(--color-shadow-rgb), .6);border-radius:4px}body.build-sheet-open #tower-bar::-webkit-scrollbar-thumb{background:var(--color-gold);border:1px solid rgba(var(--color-shadow-rgb), .6);border-radius:4px}.stats-panel::-webkit-scrollbar-thumb:hover{background:var(--color-gold-bright)}.howto-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-gold-bright)}#map-select-overlay::-webkit-scrollbar-thumb:hover{background:var(--color-gold-bright)}body.build-sheet-open #tower-bar::-webkit-scrollbar-thumb:hover{background:var(--color-gold-bright)}.map-card{padding:var(--space-md);background:var(--color-desk);border:3px solid var(--color-shadow);min-width:184px;color:var(--color-ui-text);font-family:var(--font-body);cursor:pointer;box-shadow:0 6px 24px rgba(var(--color-shadow-rgb), .5), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .25);transform-origin:bottom;perspective:800px;transition:transform .22s var(--ease-hover-lift), box-shadow .22s, border-color .22s, filter .22s;border-radius:14px;flex-direction:column;flex-shrink:0;align-items:center;gap:6px;display:flex;position:relative}:is(.map-card:hover,.map-card:focus-visible){box-shadow:0 20px 42px rgba(var(--color-shadow-rgb), .7), 0 6px 14px rgba(var(--color-shadow-rgb), .45), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3);border-color:var(--color-gold);filter:brightness(1.06);transform:translateY(-10px)scale(1.04)rotate(-.5deg)}.map-card:active{transform:var(--transform-lift-card) scale(.99);box-shadow:0 4px 12px rgba(var(--color-shadow-rgb), .45);transition-duration:80ms}.map-card-recommended{border-color:var(--color-gold)}.map-card-badge{transform:var(--transform-center-x);z-index:3;background:var(--color-gold);color:var(--color-ui-bg);font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;white-space:nowrap;box-shadow:0 3px 10px rgba(var(--color-shadow-rgb), .55);pointer-events:none;border-radius:10px;padding:3px 12px;font-size:11px;position:absolute;top:8px;left:50%}@media (prefers-reduced-motion:no-preference){.map-card-badge{animation:2.2s ease-in-out infinite map-badge-pulse}@keyframes map-badge-pulse{0%,to{box-shadow:0 3px 10px rgba(var(--color-shadow-rgb), .55)}50%{box-shadow:0 3px 18px rgba(var(--color-gold-rgb), .75)}}}.map-best.map-card-edition-lock{color:var(--color-gold-bright);font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;justify-content:center;align-items:center;gap:5px;display:inline-flex}.map-card-edition-locked .map-thumbnail-image{filter:saturate(.5)brightness(.72)}.edition-upsell{z-index:20;background:rgba(var(--color-shadow-rgb), .72);justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.edition-upsell-panel{text-align:center;background:linear-gradient(180deg, var(--color-desk), var(--color-ui-bg));border:1px solid rgba(var(--color-gold-rgb), .6);max-width:min(420px,100%);box-shadow:0 12px 40px rgba(var(--color-shadow-rgb), .7);color:var(--color-ui-text);border-radius:14px;padding:22px 24px 20px}.edition-upsell-panel h2{font-family:var(--font-display);color:var(--color-highlight);margin:8px 0 10px;font-size:20px}.edition-upsell-panel p{font-family:var(--font-body);margin:0 0 16px;font-size:14px;line-height:1.5}.edition-upsell-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.edition-upsell-get,.edition-upsell-back{min-height:var(--tap-target-min);font-family:var(--font-display);cursor:pointer;border-radius:10px;align-items:center;padding:0 18px;font-size:14px;text-decoration:none;display:inline-flex}.edition-upsell-get{background:var(--color-gold);color:var(--color-ui-bg);border:none}.edition-upsell-back{color:var(--color-ui-text);border:1px solid rgba(var(--color-gold-rgb), .5);background:0 0}.map-icon{font-size:48px;line-height:1.3}.map-name{font-family:var(--font-display);font-size:18px}.map-desc{color:var(--color-ui-text-muted);text-align:center;flex:1 0 auto;max-width:140px;font-size:12px}.map-diff{font-family:var(--font-display);justify-content:center;align-items:center;gap:6px;font-size:13px;display:inline-flex}.map-diff-skulls{flex-shrink:0;align-items:center;display:inline-flex}.map-diff-skulls svg+svg{margin-left:-2px}.map-diff-label{color:var(--color-ui-text-muted);align-items:center;display:inline-flex}.map-info{color:var(--color-ui-text-muted);font-size:11px}.map-star-goals{color:var(--color-ui-text-muted);text-align:center;max-width:150px;font-size:11px}.map-star-goal-blocked{text-decoration:line-through;text-decoration-thickness:1.5px}.map-best{font-size:11px;font-family:var(--font-body);margin-top:2px}.map-best-played{color:var(--color-gold);text-shadow:0 0 6px rgba(var(--color-gold-rgb), .35);align-items:center;gap:4px;font-weight:700;display:inline-flex}.map-best-trophy{flex-shrink:0;align-items:center;transition:transform .15s ease-out,filter .15s ease-out;display:inline-flex}:is(.map-card:hover .map-best-trophy,.map-card:focus-visible .map-best-trophy){filter:var(--drop-shadow-gold-high);transform:scale(1.15)}@media (prefers-reduced-motion:reduce){.map-best-trophy{transition:none}:is(.map-card:hover .map-best-trophy,.map-card:focus-visible .map-best-trophy){filter:none;transform:none}}.map-best-untouched{color:var(--color-ui-text-muted);opacity:.8;font-style:italic}.map-best-mode{color:var(--color-ui-text-muted);border:1px solid var(--color-ui-border);white-space:nowrap;text-shadow:none;letter-spacing:.03em;text-transform:uppercase;border-radius:8px;padding:0 5px;font-size:9px;font-weight:600;line-height:14px}#map-select-overlay{background:repeating-linear-gradient(94deg,#3c241221 0 1px,#0000 1px 6px),radial-gradient(70% 50% at 88% 8%,#f5c88252 0%,#f5c88229 28%,#0000 60%),radial-gradient(60% 40% at 12% 92%,#0f0a0673 0%,#0000 65%),radial-gradient(50% 35% at 80% 92%,#78461e33 0%,#0000 60%),radial-gradient(at 50% 30%,#322012f5 0%,#140c06fa 80%)}#map-select-overlay:before{content:"";clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);filter:blur(8px);opacity:.55;pointer-events:none;z-index:-1;background:radial-gradient(at 35% 35%,#aa6e3c8c 0%,#5a371e59 40%,#28190e33 75%,#0000 100%);width:220px;height:220px;position:absolute;bottom:4%;right:4%}#map-select-overlay:after{content:"";clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);filter:blur(12px);opacity:.45;pointer-events:none;z-index:-1;background:radial-gradient(at 65% 35%,#8c5f3766 0%,#462d1940 50%,#0000 90%);width:140px;height:140px;position:absolute;top:8%;left:3%}body.title-diorama-active #map-select-overlay{background:radial-gradient(ellipse 95% 85% at 50% 44%, rgba(var(--color-ui-bg-rgb), .38) 0%, rgba(var(--color-ui-bg-rgb), .62) 100%)}body.title-diorama-active #map-select-overlay:before,body.title-diorama-active #map-select-overlay:after{display:none}#locale-picker{perspective:600px;align-items:center;gap:6px;display:flex;position:absolute;top:16px;right:16px}.locale-btn{color:var(--color-ui-text);border:1px solid var(--color-ui-border);cursor:pointer;font-size:14px;font-family:var(--font-body);transition:background .15s ease-out, color .15s ease-out, transform .15s var(--ease-hover-lift), border-color .15s ease-out;background:0 0;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-weight:700;display:inline-flex}:is(.locale-btn:hover,.locale-btn:focus-visible){background:rgba(var(--color-gold-rgb), .14);border-color:rgba(var(--color-gold-rgb), .55);transform:var(--transform-lift-card) translateZ(10px)}.locale-btn:active{transform:var(--transform-press)}.locale-btn.selected{background:var(--color-gold);color:var(--color-shadow);border-color:var(--color-gold)}:is(.locale-btn.selected:hover,.locale-btn.selected:focus-visible){background:var(--color-gold-bright);border-color:var(--color-gold-bright)}@media (pointer:coarse){.photo-mode-exit,.photo-mode-capture{justify-content:center;align-items:center;min-height:44px;display:inline-flex}}.hero-placement-banner-auto{justify-content:center;align-items:center;min-height:24px;display:inline-flex}@media (pointer:coarse){.hero-placement-banner-auto{min-height:44px}}.map-select-brand-mark{pointer-events:none;filter:drop-shadow(0 3px 0 var(--color-shadow)) drop-shadow(0 6px 16px rgba(var(--color-shadow-rgb), .7)) drop-shadow(0 0 8px rgba(var(--color-gold-rgb), .3));animation:map-select-brand-breath var(--breath-cohort-2x) ease-in-out infinite}.map-select-title{text-shadow:0 2px 0 var(--color-shadow), 0 4px 12px rgba(var(--color-shadow-rgb), .8), 0 0 8px rgba(var(--color-gold-rgb), .3);animation:map-select-title-breath var(--breath-cohort-2x) ease-in-out infinite}@keyframes map-select-brand-breath{0%,to{filter:drop-shadow(0 3px 0 var(--color-shadow)) drop-shadow(0 6px 16px rgba(var(--color-shadow-rgb), .7)) drop-shadow(0 0 8px rgba(var(--color-gold-rgb), .3))}50%{filter:drop-shadow(0 3px 0 var(--color-shadow)) drop-shadow(0 6px 16px rgba(var(--color-shadow-rgb), .7)) drop-shadow(0 0 14px rgba(var(--color-gold-rgb), .55))}}@keyframes map-select-title-breath{0%,to{text-shadow:0 2px 0 var(--color-shadow), 0 4px 12px rgba(var(--color-shadow-rgb), .8), 0 0 8px rgba(var(--color-gold-rgb), .3)}50%{text-shadow:0 2px 0 var(--color-shadow), 0 4px 12px rgba(var(--color-shadow-rgb), .8), 0 0 14px rgba(var(--color-gold-rgb), .55)}}@media (prefers-reduced-motion:reduce){.map-select-brand-mark{filter:drop-shadow(0 3px 0 var(--color-shadow)) drop-shadow(0 6px 16px rgba(var(--color-shadow-rgb), .7)) drop-shadow(0 0 11px rgba(var(--color-gold-rgb), .42));animation:none}.map-select-title{text-shadow:0 2px 0 var(--color-shadow), 0 4px 12px rgba(var(--color-shadow-rgb), .8), 0 0 11px rgba(var(--color-gold-rgb), .42);animation:none}}@media (max-width:520px){.map-select-brand-mark{margin-top:40px}.locale-btn{gap:3px;padding:3px 7px;font-size:12px}}@media (max-width:340px){.locale-btn{padding:3px 5px;font-size:11px}}@media (pointer:coarse){.locale-btn{min-height:44px}}@media (max-width:300px){.profile-launch-rank{display:none}.locale-btn{gap:2px;padding:2px 4px;font-size:11px}}.daily-seed-line:hover{opacity:.95!important}.map-stars{justify-content:center;align-items:center;gap:4px;line-height:1;display:inline-flex}.map-star{animation:map-star-pop .32s var(--ease-overshoot) backwards;justify-content:center;align-items:center;transition:transform .15s ease-out,filter .15s ease-out;display:inline-flex}.map-star:first-child{animation-delay:40ms}.map-star:nth-child(2){animation-delay:.12s}.map-star:nth-child(3){animation-delay:.2s}@keyframes map-star-pop{0%{transform:scale(.5)}60%{transform:scale(1.12)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.map-star{animation:none}}.map-star.earned{filter:var(--drop-shadow-gold-low)}.map-star.unearned{opacity:.45}:is(.map-card:hover .map-star.earned,.map-card:focus-visible .map-star.earned){filter:var(--drop-shadow-gold-high);transform:scale(1.15)}.map-icon-svg{width:56px;height:56px;box-shadow:0 2px 8px #0006, inset 0 1px 0 rgba(var(--color-paper-border-rgb), .25);border-radius:8px;transition:transform .2s ease-out;overflow:hidden}:is(.map-card:hover .map-icon-svg,.map-card:focus-visible .map-icon-svg){transform:scale(1.1)rotate(-2deg)}@keyframes map-thumbnail-ken-burns{0%,to{transform:translate(.6%,.55%)scale(1)}50%{transform:translate(-.8%,-.7%)scale(1.0446)}}.map-thumbnail{background-color:var(--color-shadow);width:148px;height:72px;box-shadow:0 3px 10px #0000008c, inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 0 #0006;transition:transform .22s var(--ease-hover-lift), filter .22s;border:1px solid #0000008c;border-radius:6px;position:relative;overflow:hidden}.map-thumbnail-image{z-index:0;pointer-events:none;background-position:50%;background-repeat:no-repeat;background-size:112%;animation:36s ease-in-out infinite map-thumbnail-ken-burns;position:absolute;inset:-2px}@media (prefers-reduced-motion:reduce){.map-thumbnail-image{background-position:50%;background-size:cover;animation:none}}.map-threat-chip{z-index:2;border:1px solid rgba(var(--color-paper-border-rgb), .35);color:var(--color-ui-text);letter-spacing:.04em;text-transform:uppercase;pointer-events:none;background:#0009;border-radius:999px;align-items:center;gap:3px;padding:2px 6px 2px 4px;font-size:11px;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:5px;left:5px;box-shadow:0 1px 4px #00000080}.map-threat-chip>svg{opacity:.95;flex:none;display:block}.map-threat-label{display:block}.map-branch-chip{top:27px;left:auto;right:5px}.map-lock-chip{color:var(--color-gold-bright);border-color:rgba(var(--color-gold-rgb), .6);top:auto;bottom:5px}.map-last-played-chip{color:var(--color-gold);border-color:rgba(var(--color-gold-rgb), .45);flex-wrap:wrap;inset:auto 5px 5px auto}.map-card-recommended .map-threat-chip{top:34px}.map-card-recommended .map-branch-chip{top:56px}.map-card-recommended .map-last-played-chip{top:auto}.map-last-played-ago{text-align:right;opacity:.75;flex-basis:100%;font-weight:600}.map-thumbnail>svg,.map-thumbnail>.map-icon{filter:drop-shadow(0 2px 3px #00000080);opacity:.001;pointer-events:none;margin:auto;display:block;position:absolute;inset:0}:is(.map-card:hover .map-thumbnail,.map-card:focus-visible .map-thumbnail){filter:brightness(1.08);transform:scale(1.04)translateZ(14px)}.map-card:hover .map-thumbnail:after{opacity:1}.map-card:focus-visible .map-thumbnail:after{opacity:1}.map-thumbnail:after{content:"";background:linear-gradient(180deg, rgba(var(--color-highlight-rgb), .08) 0%, #00000059 100%);opacity:.6;pointer-events:none;transition:opacity .22s;position:absolute;inset:0}.map-thumbnail:before{content:"";mix-blend-mode:soft-light;pointer-events:none;z-index:1;background:0 0;position:absolute;inset:0}.map-thumbnail[data-theme=stone-fortress]:before{background:#8b7a6b4d}.map-thumbnail[data-theme=river-crossing]:before{background:#5aa0b44d}.map-thumbnail[data-theme=frozen]:before{background:#b0d8e852}.map-card[data-theme=grassy-meadow]{border-color:#74aa52c7}.map-card[data-theme=stone-fortress]{border-color:#c4ae86d1}.map-card[data-theme=river-crossing]{border-color:#5aa0b4b3}.map-card[data-theme=volcanic]{border-color:#c0402bb3}.map-card[data-theme=frozen]{border-color:#b0d8e8b3}.map-terrain-rim{z-index:1;background:var(--terrain-accent,transparent);opacity:.85;pointer-events:none;height:3px;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -1px 3px #0006}.map-card[data-terrain=meadow]{--terrain-accent:var(--terrain-accent-meadow)}.map-card[data-terrain=castle]{--terrain-accent:var(--terrain-accent-castle)}.map-card[data-terrain=water]{--terrain-accent:var(--terrain-accent-water)}.map-card[data-terrain=volcano]{--terrain-accent:var(--terrain-accent-volcano)}.map-card[data-terrain=frost]{--terrain-accent:var(--terrain-accent-frost)}.map-card[data-terrain=dragon]{--terrain-accent:var(--terrain-accent-dragon)}.map-card[data-terrain=hourglass]{--terrain-accent:var(--terrain-accent-hourglass)}.map-card[data-terrain=coliseum]{--terrain-accent:var(--terrain-accent-coliseum)}.map-card[data-terrain=gauntlet]{--terrain-accent:var(--terrain-accent-gauntlet)}.map-card[data-terrain=crucible]{--terrain-accent:var(--terrain-accent-crucible)}.map-card[data-terrain=foundry]{--terrain-accent:var(--terrain-accent-foundry)}.map-card[data-terrain=ford]{--terrain-accent:var(--terrain-accent-ford)}.map-card[data-terrain=maelstrom]{--terrain-accent:var(--terrain-accent-maelstrom)}.map-card[data-terrain=highlands]{--terrain-accent:var(--terrain-accent-highlands)}.map-card[data-terrain=mire]{--terrain-accent:var(--terrain-accent-mire)}.map-card[data-terrain=frostmarch]{--terrain-accent:var(--terrain-accent-frostmarch)}.map-card[data-terrain=bastion]{--terrain-accent:var(--terrain-accent-bastion)}.map-card[data-terrain=emberford]{--terrain-accent:var(--terrain-accent-emberford)}.map-card[data-terrain=cinderfrost]{--terrain-accent:var(--terrain-accent-cinderfrost)}.draft-card{padding:var(--space-sm) var(--space-md);background:var(--color-desk);border:3px solid var(--color-shadow);width:100%;color:var(--color-ui-text);font-family:var(--font-body);cursor:pointer;box-shadow:0 4px 16px rgba(var(--color-shadow-rgb),.5);transition:var(--transition-hover-lift);animation:draft-card-deal-in .4s var(--ease-overshoot) backwards;border-radius:10px;flex-direction:column;align-items:center;gap:4px;display:flex;position:relative}.draft-card:first-child{animation-delay:0s}.draft-card:nth-child(2){animation-delay:80ms}.draft-card:nth-child(3){animation-delay:.16s}@keyframes panel-card-in{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes draft-card-deal-in{0%{opacity:0;transform:translateY(-32px)scale(.88)rotate(7deg)}60%{opacity:1}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}:is(.draft-card:hover,.draft-card:focus-visible){box-shadow:0 8px 24px rgba(var(--color-shadow-rgb),.6);transform:scale(1.03)}.draft-card:active{transform:var(--transform-press);box-shadow:0 2px 8px rgba(var(--color-shadow-rgb),.4)}.draft-card.dealing-out,.relic-card.dealing-out{pointer-events:none;animation:draft-card-deal-out .28s var(--ease-overshoot) forwards!important}@keyframes draft-card-deal-out{0%{opacity:1;box-shadow:var(--shadow-card-mid);transform:translateY(0)scale(1)rotate(0)}60%{opacity:.55;box-shadow:0 8px 18px rgba(var(--color-shadow-rgb), .45);transform:translateY(16px)scale(.92)rotate(-5deg)}to{opacity:0;box-shadow:var(--shadow-card-mid);transform:translateY(32px)scale(.78)rotate(-10deg)}}@media (prefers-reduced-motion:reduce){.draft-card.dealing-out,.relic-card.dealing-out{opacity:0;animation:none!important}}.draft-card.draft-card-picked,.relic-card.draft-card-picked,.spell-draft-card.draft-card-picked,.end-continue-endless.draft-card-picked,.map-card.draft-card-picked,.daily-siege-banner.draft-card-picked{animation:draft-card-picked .28s var(--ease-commit) 1;pointer-events:none}@keyframes draft-card-picked{0%{box-shadow:var(--shadow-card), var(--shadow-pulse-rest-gold-bright);transform:scale(1)}35%{transform:scale(var(--draft-card-picked-peak-scale,1.04));box-shadow:0 6px 22px rgba(var(--color-shadow-rgb), .6), 0 0 0 6px rgba(var(--color-gold-bright-rgb), .55), 0 0 var(--draft-card-picked-glow-blur,28px) 10px rgba(var(--color-gold-bright-rgb), .55)}to{box-shadow:var(--shadow-card), var(--shadow-pulse-rest-gold-bright);transform:scale(1)}}.draft-card-rarity-rare{--draft-card-picked-glow-blur:36px;--draft-card-picked-peak-scale:1.06}.draft-card-rarity-legendary{--draft-card-picked-glow-blur:48px;--draft-card-picked-peak-scale:1.08}@media (prefers-reduced-motion:reduce){.draft-card.draft-card-picked,.relic-card.draft-card-picked,.spell-draft-card.draft-card-picked,.end-continue-endless.draft-card-picked,.map-card.draft-card-picked{animation:none}}.draft-icon{transition:transform .15s var(--ease-hover-lift);font-size:28px;line-height:1.2}:is(.draft-card:hover .draft-icon,.draft-card:focus-visible .draft-icon){transform:scale(1.08)}@media (prefers-reduced-motion:reduce){.draft-icon{transition:none}:is(.draft-card:hover .draft-icon,.draft-card:focus-visible .draft-icon){transform:none}}.draft-name{font-family:var(--font-display);font-size:13px}@keyframes draft-missed-pulse{0%,to{opacity:.6;box-shadow:var(--glow-gold-idle)}50%{opacity:1;box-shadow:var(--glow-gold-high)}}@keyframes draft-missed-in{0%{opacity:0;transform:translateY(-50%)scale(.85)}to{opacity:1;transform:translateY(-50%)scale(1)}}@keyframes draft-missed-out{0%{opacity:1;transform:translateY(-50%)scale(1)}to{opacity:0;transform:translateY(-50%)scale(.85)}}.draft-missed-indicator{transform:var(--transform-center-y);z-index:80;border:2px solid var(--color-gold);width:28px;height:48px;color:var(--color-gold);font-family:var(--font-display);pointer-events:none;background:#1e1914e6;border-right:none;border-radius:8px 0 0 8px;justify-content:center;align-items:center;font-size:18px;animation:.25s ease-out draft-missed-in,1.2s ease-in-out .25s infinite draft-missed-pulse;display:flex;position:fixed;top:50%;right:0}.draft-missed-indicator.draft-missed-leaving{animation:.2s ease-in forwards draft-missed-out}@media (prefers-reduced-motion:reduce){.draft-missed-indicator{animation:1.2s ease-in-out infinite draft-missed-pulse}.draft-missed-indicator.draft-missed-leaving{opacity:0;animation:none}}.wave-stats-popup[data-wave-kind=mini-boss]{--wave-stats-border-color:var(--color-gold);--wave-stats-shadow:var(--shadow-card), 0 0 14px rgba(var(--color-gold-rgb), .3)}.wave-stats-popup[data-wave-kind=boss]{--wave-stats-border-color:var(--color-gold-bright);--wave-stats-shadow:var(--shadow-card), 0 0 22px rgba(var(--color-gold-bright-rgb), .45), 0 0 0 1px rgba(var(--color-gold-bright-rgb), .3)}.wave-stats-popup[data-leaky=true]:before{content:"";border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 16px rgba(var(--color-danger-rgb), .22);z-index:0;position:absolute;inset:0}.wave-stats-perfect-badge{color:var(--color-gold-bright);text-shadow:var(--text-shadow-gold-bright-low);transform-origin:0;font-weight:800;animation:.9s ease-out wave-stats-perfect-shimmer;display:inline-block}@keyframes wave-stats-perfect-shimmer{0%{text-shadow:0 0 0 rgba(var(--color-gold-bright-rgb), 0);transform:scale(.9)}20%{text-shadow:0 0 14px rgba(var(--color-gold-bright-rgb), .95), 0 0 28px rgba(var(--color-gold-bright-rgb), .55);transform:scale(1.12)}55%{text-shadow:var(--text-shadow-gold-bright-medium);transform:scale(1)}75%{text-shadow:0 0 12px rgba(var(--color-gold-bright-rgb), .85), 0 0 22px rgba(var(--color-gold-bright-rgb), .4);transform:scale(1.06)}to{text-shadow:var(--text-shadow-gold-bright-low);transform:scale(1)}}@media (prefers-reduced-motion:reduce){.wave-stats-perfect-badge{animation:none}}.wave-stats-modifier-badge{animation:.5s ease-out wave-stats-modifier-shimmer;display:inline-block}@keyframes wave-stats-modifier-shimmer{0%{text-shadow:0 0}35%{text-shadow:0 0 8px}to{text-shadow:0 0}}@media (prefers-reduced-motion:reduce){.wave-stats-modifier-badge{animation:none}}.wave-stats-popup{width:max-content;max-width:calc(100vw - 120px);padding:8px 20px;overflow:hidden}.wave-stats-row{justify-content:center;gap:16px;margin-top:6px;font-size:13px;display:flex}@media (max-width:360px){.wave-stats-popup{max-width:calc(100vw - 120px);padding-inline:8px}.wave-stats-row{flex-wrap:wrap;gap:8px}}.wave-stats-popup:after{content:"";border-radius:inherit;background:linear-gradient(108deg, transparent 30%, rgba(var(--color-gold-rgb), .22) 44%, var(--color-shimmer-center) 50%, rgba(var(--color-gold-rgb), .22) 56%, transparent 70%);transform:var(--transform-shimmer-start);opacity:0;pointer-events:none;animation:1s ease-out .6s both wave-stats-shine-sweep;position:absolute;inset:0}@keyframes wave-stats-shine-sweep{0%{transform:var(--transform-shimmer-start);opacity:0}20%{opacity:1;transform:translate(-60%)}80%{opacity:1;transform:translate(60%)}to{transform:var(--transform-shimmer-end);opacity:0}}@media (prefers-reduced-motion:reduce){.wave-stats-popup:after{opacity:0;animation:none}}.boss-announce{width:max-content;max-width:calc(100vw - 24px);transform:var(--transform-center);font-family:var(--font-display);color:var(--color-danger);text-shadow:0 0 20px rgba(var(--color-danger-rgb), .6), 0 4px 12px rgba(var(--color-shadow-rgb),.8);pointer-events:none;z-index:35;font-size:48px;animation:1.2s ease-out forwards boss-in;position:fixed;top:30%;left:50%}@media (prefers-reduced-motion:reduce){.boss-announce{animation-name:banner-hold-still}}.boss-name-callout{width:max-content;max-width:calc(100vw - 24px);bottom:max(22%, calc(var(--tower-bar-clearance,0px) + 12px));transform:var(--transform-center-x);pointer-events:none;z-index:35;flex-direction:column;align-items:center;gap:4px;animation:1.2s ease-out .25s both boss-name-in;display:flex;position:fixed;left:50%}@media (prefers-reduced-motion:reduce){.boss-name-callout{animation-name:banner-hold-still}}.boss-name-label{font-family:var(--font-display);letter-spacing:.32em;color:rgba(var(--color-danger-rgb), .85);text-shadow:0 0 8px rgba(var(--color-danger-rgb), .5);text-transform:uppercase;font-size:13px;font-weight:600}.boss-name-text{font-family:var(--font-display);letter-spacing:.08em;color:var(--color-ui-text);text-shadow:0 0 14px rgba(var(--color-danger-rgb), .55), 0 0 28px rgba(var(--color-danger-rgb), .3), 0 3px 8px rgba(var(--color-shadow-rgb), .7);text-transform:uppercase;border-top:1.5px solid rgba(var(--color-danger-rgb), .55);border-bottom:1.5px solid rgba(var(--color-danger-rgb), .55);background:linear-gradient(90deg, rgba(var(--color-shadow-rgb), 0) 0%, rgba(var(--color-shadow-rgb), .5) 50%, rgba(var(--color-shadow-rgb), 0) 100%);padding:4px 26px 6px;font-size:32px;font-weight:700}#hud.boss-cinematic>:not(.boss-announce):not(.boss-name-callout){opacity:.38;transition:opacity .35s ease-out}#hud.boss-cinematic-restoring>*{transition:opacity .45s ease-out}.lightning-flash{pointer-events:none;z-index:25;mix-blend-mode:screen;background:radial-gradient(at top,#b4dcffd9 0%,#78b4f073 30%,#508cdc00 70%),linear-gradient(#b4dcff73,#b4dcff00);animation:.3s ease-out forwards lightning-flash;position:fixed;inset:0}@keyframes lightning-flash{0%{opacity:0}12%{opacity:1}30%{opacity:.35}55%{opacity:.85}to{opacity:0}}.lightning-flash-soft{animation-name:lightning-flash-soft;animation-timing-function:cubic-bezier(.16,1,.3,1)}@keyframes lightning-flash-soft{0%{opacity:0}18%{opacity:.7}to{opacity:0}}@keyframes game-toast-enter{0%{opacity:0;transform:translate(-50%)translateY(8px)scale(.96)}62%{opacity:1;transform:translate(-50%)translateY(0)scale(1.04)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes game-toast-exit{0%{opacity:1;transform:translate(-50%)translateY(0)scale(1)}to{opacity:0;transform:translate(-50%)scale(.8)translateY(-20px)}}@keyframes game-toast-life{0%{opacity:0;transform:translate(-50%)translateY(8px)scale(.96)}20%{opacity:1;transform:translate(-50%)translateY(0)scale(1.04)}32%{opacity:1;transform:translate(-50%)translateY(0)scale(1)}70%{opacity:1;transform:translate(-50%)translateY(0)scale(1)}to{opacity:0;transform:translate(-50%)scale(.8)translateY(-20px)}}@keyframes game-banner-still{0%{opacity:0;transform:var(--transform-center);text-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .7), 0 0 0px currentColor, 0 0 0px currentColor}18%{opacity:1;transform:var(--transform-center);text-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .7), 0 0 24px currentColor, 0 0 48px currentColor}70%{opacity:1;transform:var(--transform-center);text-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .7), 0 0 13px currentColor, 0 0 24px currentColor}to{opacity:1;transform:var(--transform-center);text-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .7), 0 0 13px currentColor, 0 0 24px currentColor}}@keyframes banner-hold-still{0%{opacity:0}to{opacity:1}}@keyframes game-banner{0%{opacity:0;transform:var(--transform-center) scale(1.9);text-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .7), 0 0 0px currentColor, 0 0 0px currentColor}18%{opacity:1;transform:var(--transform-center) scale(1.05);text-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .7), 0 0 24px currentColor, 0 0 48px currentColor}30%{transform:var(--transform-center) scale(.98);text-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .7), 0 0 16px currentColor, 0 0 30px currentColor}42%{transform:var(--transform-center) scale(1);text-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .7), 0 0 13px currentColor, 0 0 24px currentColor}70%{opacity:1;transform:var(--transform-center) scale(1);text-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .7), 0 0 13px currentColor, 0 0 24px currentColor}to{opacity:0;transform:var(--transform-center) scale(.8) translateY(-20px);text-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .7), 0 0 8px currentColor, 0 0 14px currentColor}}@keyframes wave-banner-in{0%{opacity:0;transform:translate(-50%)translateY(-12px)scale(.95)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes wave-banner-out{0%{opacity:1;transform:translate(-50%)translateY(0)scale(1)}to{opacity:0;transform:translate(-50%)translateY(-12px)scale(.95)}}.wave-preview-banner.wave-preview-banner-leaving{animation:.2s ease-in forwards wave-banner-out!important}@media (prefers-reduced-motion:reduce){.wave-preview-banner.wave-preview-banner-leaving{opacity:0;animation:none!important}}@keyframes hero-placement-caret-bob{0%{opacity:.85;transform:translateY(0)}50%{opacity:1;transform:translateY(3px)}to{opacity:.85;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.hero-placement-banner-caret{animation:none!important}}.wave-preview-banner{animation:.3s ease-out wave-banner-in}.wave-preview-body{grid-template-rows:1fr;transition:grid-template-rows .26s,opacity .2s;display:grid}.wave-preview-body>.wave-preview-body-inner{min-height:0;overflow:hidden}.wave-preview-banner.wave-preview-collapsed .wave-preview-body{opacity:0;grid-template-rows:0fr}.wave-preview-banner.wave-preview-has-more:after{content:"";pointer-events:none;background:linear-gradient(to bottom, rgba(var(--color-ui-bg-rgb), 0), rgba(var(--color-ui-bg-rgb), .92));border-radius:0 0 10px 10px;height:26px;margin:-26px -20px 0;display:block;position:sticky;bottom:-12px}.wave-preview-more{font-family:var(--font-body);color:var(--color-ui-text-muted);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px 8px;margin-top:4px;font-size:11px;display:flex}.wave-preview-more-glyphs{opacity:.75;align-items:center;gap:4px;display:inline-flex}.wave-preview-collapse-chevron{display:none}.wave-preview-banner.wave-preview-collapsed .wave-preview-collapse-chevron{color:var(--color-gold);animation:1.2s ease-in-out infinite hero-placement-caret-bob;display:inline-block}.wave-preview-peek-key{display:none}@media (pointer:fine){.wave-preview-banner.wave-preview-collapsed .wave-preview-collapse-chevron{display:none}.wave-preview-banner.wave-preview-collapsed .wave-preview-peek-key{vertical-align:middle;font-family:var(--font-body);color:var(--color-ui-text);background:var(--keycap-face);box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3), inset 0 -1px 2px #00000080, 0 1px 1px #0006;border-radius:3px;padding:1px 5px;font-size:11px;font-weight:800;line-height:14px;display:inline-block}}.wave-preview-banner.wave-preview-collapsed{padding:8px 16px 2px!important}@media (max-width:600px) and (orientation:portrait) and (pointer:coarse){.wave-preview-banner:not(.wave-preview-collapsed):not(.wave-preview-desktop-collapse){pointer-events:none!important}.wave-preview-banner:not(.wave-preview-collapsed):not(.wave-preview-desktop-collapse)>*{pointer-events:auto}}body.wave-preview-up #hud-top,body.wave-preview-up #pause-btn-hud,body.wave-preview-up #rule-book-btn,body.wave-preview-up #photo-mode-btn-hud,body.wave-preview-up #ability-bar,body.wave-preview-up #hero-ability-btn,body.wave-preview-up #spell-hand{z-index:26!important}.wave-preview-banner.wave-preview-collapsed{pointer-events:none!important}.wave-preview-banner.wave-preview-collapsed:not(.wave-preview-desktop-collapse) .wave-preview-headline{pointer-events:auto}.wave-preview-banner.wave-preview-desktop-collapse .wave-preview-collapse-chevron{display:none}@media (prefers-reduced-motion:reduce){.wave-preview-body{transition:none}.wave-preview-collapse-chevron{animation:none!important}}.wave-preview-banner[data-wave-kind=mini-boss]{--wave-preview-border-color:var(--color-danger);--wave-preview-shadow:var(--shadow-overlay), 0 0 18px rgba(var(--color-danger-rgb), .28)}.wave-preview-banner[data-wave-kind=boss]{--wave-preview-border-color:var(--color-danger-bright);--wave-preview-shadow:var(--shadow-overlay), 0 0 26px rgba(var(--color-danger-bright-rgb), .42);animation:.3s ease-out wave-banner-in,2.6s ease-in-out .3s infinite wave-preview-boss-alarm}@keyframes wave-preview-boss-alarm{0%,to{box-shadow:var(--shadow-overlay), 0 0 18px rgba(var(--color-danger-bright-rgb), .22), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3);transform:translate(-50%)scale(1)}50%{box-shadow:var(--shadow-overlay), 0 0 32px rgba(var(--color-danger-bright-rgb), .55), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3);transform:translate(-50%)scale(1.015)}}@media (prefers-reduced-motion:reduce){.wave-preview-banner[data-wave-kind=boss]{animation:.3s ease-out wave-banner-in}}.wave-preview-enemy-card-boss{animation:wave-preview-boss-card-pop .5s var(--ease-overshoot) .4s both}.wave-preview-modifier-badge{animation:.5s ease-out wave-preview-modifier-shimmer}@keyframes wave-preview-modifier-shimmer{0%{text-shadow:0 0}35%{text-shadow:0 0 8px}to{text-shadow:0 0}}@media (prefers-reduced-motion:reduce){.wave-preview-modifier-badge{animation:none}}@keyframes wave-preview-boss-card-pop{0%{transform:scale(1)}40%{transform:scale(1.05)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.wave-preview-enemy-card-boss{animation:none}}.wave-preview-enemy-card-elite{animation:wave-preview-elite-card-pop .4s var(--ease-overshoot) .55s both}@keyframes wave-preview-elite-card-pop{0%{transform:scale(1)}40%{transform:scale(1.03)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.wave-preview-enemy-card-elite{animation:none}}.wave-preview-new-badge{background:rgba(var(--color-gold-bright-rgb), .16);border:1px solid var(--color-gold);color:var(--color-gold);font-family:var(--font-display);letter-spacing:.08em;vertical-align:1px;border-radius:4px;padding:0 5px;font-size:9px;animation:.5s ease-out .7s both wave-preview-new-badge-glow;display:inline-block}@keyframes wave-preview-new-badge-glow{0%{box-shadow:0 0 0 rgba(var(--color-gold-bright-rgb), 0)}35%{box-shadow:0 0 8px rgba(var(--color-gold-bright-rgb), .7)}to{box-shadow:0 0 0 rgba(var(--color-gold-bright-rgb), 0)}}@media (prefers-reduced-motion:reduce){.wave-preview-new-badge{animation:none}}.wave-preview-hp-fill{animation:wave-preview-hp-breath var(--breath-cohort) ease-in-out infinite}@keyframes wave-preview-hp-breath{0%,to{opacity:1}50%{opacity:.85}}@media (prefers-reduced-motion:reduce){.wave-preview-hp-fill{animation:none}}@keyframes damage-flash{0%{opacity:1}to{opacity:0}}@keyframes boss-in{0%{transform:var(--transform-center) scale(3);opacity:0}20%{transform:var(--transform-center) scale(1.1);opacity:1}80%{transform:var(--transform-center) scale(1);opacity:1}to{transform:var(--transform-center) scale(.8);opacity:0}}@keyframes boss-name-in{0%{opacity:0;transform:translate(-50%)translateY(28px)}30%{opacity:1;transform:translate(-50%)translateY(0)}75%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(8px)}}.achievement-row{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);background:rgba(var(--color-shadow-rgb), .3);border-radius:6px;display:flex}.achievement-row.earned{background:rgba(var(--color-desk-rgb), .3)}.achievement-row.locked{opacity:.72}.achievement-icon{text-align:center;flex-shrink:0;width:28px;font-size:20px}.achievement-info{flex:1;min-width:0}.achievement-name{font-family:var(--font-body);color:var(--color-ui-text);font-size:13px;font-weight:700}.achievement-desc{font-family:var(--font-body);color:var(--color-ui-text-muted);font-size:11px}.achievement-full-game{border:1px solid var(--color-paper-border-dark);white-space:nowrap;color:var(--color-gold-bright);vertical-align:1px;border-radius:8px;margin-left:6px;padding:0 6px;font-size:11px;font-weight:700;line-height:16px;display:inline-block}.controls-panel{background:linear-gradient(to bottom, rgba(var(--color-desk-rgb), .98), rgba(var(--color-ui-bg-rgb), .92));border:2px solid var(--color-paper-border-dark);padding:var(--space-lg);width:90%;max-width:380px;max-height:80vh;box-shadow:var(--shadow-overlay), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3);animation:modal-pop-in .25s var(--ease-overshoot) both;scrollbar-width:thin;scrollbar-color:var(--color-gold) rgba(var(--color-shadow-rgb), .4);border-radius:12px;position:relative;overflow:hidden auto}.controls-panel:after{content:"";bottom:calc(var(--space-lg) * -1);height:22px;margin:-22px calc(var(--space-lg) * -1) 0;pointer-events:none;background:linear-gradient(to bottom, rgba(var(--color-ui-bg-rgb), 0), rgba(var(--color-ui-bg-rgb), .92));border-radius:0 0 10px 10px;display:block;position:sticky}.controls-panel::-webkit-scrollbar{width:8px}.controls-panel::-webkit-scrollbar-track{background:rgba(var(--color-shadow-rgb), .4);border-radius:4px}.controls-panel::-webkit-scrollbar-thumb{background:var(--color-gold);border:1px solid rgba(var(--color-shadow-rgb), .6);border-radius:4px}.controls-panel::-webkit-scrollbar-thumb:hover{background:var(--color-gold-bright)}.controls-list{flex-direction:column;gap:2px;display:flex}.controls-group{break-inside:avoid;page-break-inside:avoid}.controls-section-title{font-family:var(--font-display);color:var(--color-gold);border-bottom:1px solid var(--color-ui-border);margin-top:8px;margin-bottom:2px;padding-bottom:2px;font-size:13px}@media (min-width:640px){.controls-panel{max-width:720px;max-height:92vh}.controls-list{column-count:2;column-gap:var(--space-lg);display:block}}.stats-panel{background:linear-gradient(to bottom, rgba(var(--color-desk-rgb), .98), rgba(var(--color-ui-bg-rgb), .92));border:2px solid var(--color-paper-border-dark);padding:var(--space-lg);width:90%;max-width:380px;max-height:80vh;box-shadow:var(--shadow-overlay), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3);animation:modal-pop-in .25s var(--ease-overshoot) both;border-radius:12px;position:relative;overflow:hidden auto}@keyframes modal-pop-in{0%{transform:scale(.96)}to{transform:scale(1)}}@keyframes modal-pop-out{0%{transform:scale(1)}to{transform:scale(.96)}}.modal-leaving{animation:.2s ease-in forwards modal-pop-out!important}@media (prefers-reduced-motion:reduce){.modal-leaving{animation:none!important}}.stats-personal-row{justify-content:space-around;row-gap:var(--space-sm);margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid rgba(var(--color-ui-border-rgb), .4);flex-wrap:wrap;display:flex}.stats-achievements{flex-direction:column;gap:6px;display:flex}@media (min-width:640px){.stats-panel{max-width:720px;max-height:92vh}.stats-achievements{gap:6px var(--space-sm);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}}#profile-launch{z-index:1;position:absolute;top:16px;left:16px}.profile-launch-rank{border-left:1px solid rgba(var(--color-gold-rgb), .4);color:var(--color-gold);letter-spacing:1px;text-transform:uppercase;margin-left:2px;padding-left:7px;font-size:max(11px,.82em);font-weight:700}.profile-panel{max-width:420px}@keyframes dossier-section-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.profile-panel.dossier-cascade>:not(.modal-close-x){animation:dossier-section-rise .34s var(--ease-overshoot) both}.profile-panel.dossier-cascade>:nth-child(2){animation-delay:0s}.profile-panel.dossier-cascade>:nth-child(3){animation-delay:50ms}.profile-panel.dossier-cascade>:nth-child(4){animation-delay:.1s}.profile-panel.dossier-cascade>:nth-child(5){animation-delay:.15s}.profile-panel.dossier-cascade>:nth-child(6){animation-delay:.2s}.profile-panel.dossier-cascade>:nth-child(7){animation-delay:.24s}.profile-panel.dossier-cascade>:nth-child(8){animation-delay:.28s}.profile-panel.dossier-cascade>:nth-child(9){animation-delay:.32s}.profile-panel.dossier-cascade>:nth-child(10){animation-delay:.36s}.profile-panel.dossier-cascade>:nth-child(11){animation-delay:.4s}.profile-panel.dossier-cascade>:nth-child(12){animation-delay:.44s}@media (prefers-reduced-motion:reduce){.profile-panel.dossier-cascade>*{animation:none}}.dossier-rank{margin-bottom:var(--space-md);flex-direction:column;align-items:center;gap:2px;display:flex}.dossier-rank-pct{font-family:var(--font-display);color:var(--color-highlight);text-shadow:0 0 12px rgba(var(--color-gold-rgb), .35);font-size:44px;line-height:1}.dossier-rank-sign{color:var(--color-gold);margin-left:1px;font-size:22px}.dossier-rank-title{font-family:var(--font-display);color:var(--color-gold);letter-spacing:3px;text-transform:uppercase;text-shadow:0 1px 2px #0006;margin-top:1px;font-size:15px}.dossier-rank-label{font-family:var(--font-body);color:var(--color-ui-text-muted);letter-spacing:2px;text-transform:uppercase;font-size:10px}.dossier-rank-track{background:var(--color-shadow);width:100%;height:8px;box-shadow:inset 0 1px 2px #0000008c, inset 0 -1px 0 rgba(var(--color-paper-border-rgb), .18);border-radius:4px;margin-top:4px;overflow:hidden}.dossier-rank-fill{background:linear-gradient(90deg, var(--color-highlight), var(--color-gold));height:100%;transition:width .5s var(--ease-overshoot);border-radius:4px}.dossier-chips{justify-content:space-around;gap:var(--space-sm);margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid rgba(var(--color-ui-border-rgb), .4);flex-wrap:wrap;display:flex}@media (max-width:360px){.dossier-chips,.stats-personal-row{grid-template-columns:repeat(2,1fr);justify-items:center;display:grid}.stats-personal-row>.personal-stat:nth-child(odd):last-child{grid-column:1/-1}}.dossier-chip{flex-direction:column;align-items:center;gap:2px;min-width:56px;display:flex}.dossier-chip-icon{display:inline-flex}.dossier-chip-value{font-family:var(--font-display);color:var(--color-ui-text);font-size:15px;font-weight:700}.dossier-chip-label{font-family:var(--font-body);color:var(--color-ui-text-muted);letter-spacing:1px;text-transform:uppercase;font-size:9px}.dossier-section-head{font-family:var(--font-body);color:var(--color-ui-text-muted);margin-bottom:var(--space-sm);text-align:center;font-size:13px}.dossier-mastery{margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid rgba(var(--color-ui-border-rgb), .4);flex-direction:column;gap:4px;display:flex}.dossier-conquest{margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid rgba(var(--color-ui-border-rgb), .4);flex-direction:column;gap:3px;display:flex}.dossier-map-row{font-family:var(--font-body);color:var(--color-ui-text);align-items:center;gap:8px;font-size:11px;display:flex}.dossier-map-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.dossier-map-stars{flex-shrink:0;gap:1px;display:inline-flex}.dossier-map-wave{text-align:right;min-width:54px;color:var(--color-ui-text-muted);flex-shrink:0;font-size:10px}.dossier-map-score{min-width:58px;color:var(--color-ui-text-muted);flex-shrink:0;justify-content:flex-end;align-items:center;gap:3px;font-size:10px;display:inline-flex}.dossier-map-score-trophy{opacity:.85;display:inline-flex}.dossier-map-locked{color:var(--color-ui-text);white-space:nowrap}@media (max-width:360px){.dossier-map-row{flex-wrap:wrap;justify-content:flex-end;row-gap:0}.dossier-map-name{flex:96px}.dossier-map-wave,.dossier-map-score{min-width:0}.dossier-map-wave:empty,.dossier-map-score:empty,.dossier-map-row-locked .dossier-map-stars{display:none}}.pause-btn{min-height:var(--tap-target-min);padding:var(--space-sm) var(--space-lg);background:var(--color-shadow);border:2px solid var(--color-ui-border);color:var(--color-ui-text);font-family:var(--font-body);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:16px;font-weight:700;transition:background .15s,color .15s ease-out;display:flex}:is(.pause-btn:hover,.pause-btn:focus-visible){background:var(--color-ui-border)}.pause-btn:active{transform:var(--transform-press)}.pause-army{border-color:var(--color-ui-border);width:30px;box-shadow:none;transform:scale(1)}.pause-army[aria-pressed=true]{border-color:var(--color-gold);box-shadow:0 0 8px var(--color-gold);transform:scale(1.12)}.pause-army:active{transform:var(--transform-press)}.pause-army[aria-pressed=true]:active{transform:scale(1.086)}@media (pointer:coarse){.pause-army{width:var(--tap-target-min)}}.pause-quality,.pause-theme,.pause-hud,.pause-motion,.pause-framerate{min-width:0;padding:var(--space-xs) var(--space-sm);min-height:var(--tap-target-min);flex:1;font-size:13px}.pause-btn.pref-set,.difficulty-die.pref-set,.challenge-card.pref-set{animation:.2s ease-out pref-set}@keyframes pref-set{0%{box-shadow:0 0 0 0 rgba(var(--color-gold-bright-rgb), .7);transform:scale(1)}40%{transform:var(--transform-press);box-shadow:0 0 0 4px rgba(var(--color-gold-bright-rgb), .5)}to{box-shadow:0 0 0 6px rgba(var(--color-gold-bright-rgb), 0);transform:scale(1)}}@media (prefers-reduced-motion:reduce){.pause-btn.pref-set,.difficulty-die.pref-set,.challenge-card.pref-set{animation:none}}.pause-panel{animation:pause-panel-breath var(--breath-cohort) ease-in-out infinite}@keyframes pause-panel-breath{0%,to{box-shadow:0 8px 32px rgba(var(--color-shadow-rgb), .55), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3)}50%{box-shadow:0 10px 38px rgba(var(--color-shadow-rgb), .72), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3)}}@media (prefers-reduced-motion:reduce){.pause-panel{animation:none}}:root{--hud-corner-btn-top:max(calc(var(--space-sm) + 54px), calc(var(--hud-top-bottom,0px) + var(--space-sm)))}#pause-btn-hud{top:var(--hud-corner-btn-top);left:var(--space-md);background:var(--gradient-wooden-btn);border:var(--border-wooden-edge);width:44px;height:52px;box-shadow:var(--shadow-corner-btn-rest), inset -2px 0 0 rgba(var(--color-gold-rgb), .55), inset 1px 0 0 #00000080, var(--rim-wooden-btn-highlight-rest);color:var(--color-gold);cursor:pointer;pointer-events:auto;transition:var(--transition-hover-lift);z-index:20;border-radius:6px 3px 3px 6px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0;display:flex;position:fixed}#pause-btn-hud:before{content:"";border:var(--border-corner-btn-inner);pointer-events:none;border-radius:1px;position:absolute;inset:3px 6px 3px 4px}:is(#pause-btn-hud:hover,#pause-btn-hud:focus-visible){box-shadow:var(--shadow-corner-btn-hover), inset -2px 0 0 rgba(var(--color-gold-rgb), .75), inset 1px 0 0 #00000080, var(--rim-wooden-btn-highlight-mid);transform:translate(2px)rotate(2deg)}#pause-btn-hud:active{transform:var(--transform-press)}#pause-btn-hud .esc-label{font-size:9px;font-family:var(--font-body);letter-spacing:.8px;color:rgba(var(--color-gold-bright-rgb), .65);font-weight:700}#photo-mode-btn-hud{top:calc(var(--hud-corner-btn-top) + 56px);left:var(--space-md);background:var(--gradient-wooden-btn);border:var(--border-wooden-edge);width:44px;height:44px;box-shadow:var(--shadow-corner-btn-rest), inset -2px 0 0 rgba(var(--color-gold-rgb), .55), inset 1px 0 0 #00000080, var(--rim-wooden-btn-highlight-rest);color:var(--color-gold);cursor:pointer;pointer-events:auto;transition:var(--transition-hover-lift);z-index:20;border-radius:6px 3px 3px 6px;justify-content:center;align-items:center;padding:0;display:flex;position:fixed}#photo-mode-btn-hud:before{content:"";border:var(--border-corner-btn-inner);pointer-events:none;border-radius:1px;position:absolute;inset:3px 6px 3px 4px}:is(#photo-mode-btn-hud:hover,#photo-mode-btn-hud:focus-visible){box-shadow:var(--shadow-corner-btn-hover), inset -2px 0 0 rgba(var(--color-gold-rgb), .75), inset 1px 0 0 #00000080, var(--rim-wooden-btn-highlight-mid);transform:translate(2px)rotate(2deg)}#photo-mode-btn-hud:active{transform:var(--transform-press)}#rule-book-btn{top:var(--hud-corner-btn-top);right:var(--space-md);cursor:pointer;pointer-events:auto;background:var(--gradient-wooden-btn);border:var(--border-wooden-edge);width:44px;height:52px;box-shadow:var(--shadow-corner-btn-rest), inset 2px 0 0 rgba(var(--color-gold-rgb), .55), inset -1px 0 0 #00000080, var(--rim-wooden-btn-highlight-rest);color:var(--color-gold);transition:var(--transition-hover-lift);z-index:20;border-radius:3px 6px 6px 3px;justify-content:center;align-items:center;padding:0;font-size:22px;line-height:1;display:flex;position:fixed}#rule-book-btn:before{content:"";border:var(--border-corner-btn-inner);pointer-events:none;border-radius:1px;position:absolute;inset:3px 4px 3px 6px}:is(#rule-book-btn:hover,#rule-book-btn:focus-visible){box-shadow:var(--shadow-corner-btn-hover), inset 2px 0 0 rgba(var(--color-gold-rgb), .75), inset -1px 0 0 #00000080, var(--rim-wooden-btn-highlight-mid);transform:translate(-2px)rotate(-2deg)}#rule-book-btn:active{transform:var(--transform-press)}.rule-book{background:linear-gradient(180deg, var(--color-paper-book-cover) 0%, var(--color-paper-book-cover-deep) 100%);width:min(920px,96vw);height:min(620px,88vh);box-shadow:0 20px 60px #000000d9, 0 0 0 3px var(--color-paper-book-outline), 0 0 0 4px rgba(var(--color-gold-rgb), .35);font-family:var(--font-body);animation:modal-pop-in .3s var(--ease-overshoot) both;border-radius:6px 10px 10px 6px;gap:0;padding:14px;display:flex;position:relative}.rule-book:focus{outline:none}@media (max-height:720px){.rule-book{height:min(620px,95vh)}}.pause-panel{min-width:280px;max-width:320px;max-height:95vh;overflow:hidden auto}.pause-settings{gap:var(--space-sm);flex-direction:column;display:flex}@media (min-width:640px){.pause-panel{max-width:620px}.pause-settings{column-gap:var(--space-lg);row-gap:var(--space-sm);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.pause-settings>*{min-width:0}.pause-settings>.pause-main-buttons{grid-row:span 3}.pause-settings input[type=range]{min-width:0}}.pause-panel.panel-has-more:after{content:"";bottom:calc(var(--space-md) * -1);height:26px;margin:-26px calc(var(--space-lg) * -1) 0;pointer-events:none;background:linear-gradient(to bottom, rgba(var(--color-ui-bg-rgb), 0), rgba(var(--color-ui-bg-rgb), .92));border-radius:0 0 10px 10px;display:block;position:sticky}.stats-panel.panel-has-more:after{content:"";bottom:calc(var(--space-lg) * -1);height:26px;margin:-26px calc(var(--space-lg) * -1) 0;pointer-events:none;background:linear-gradient(to bottom, rgba(var(--color-ui-bg-rgb), 0), rgba(var(--color-ui-bg-rgb), .92));border-radius:0 0 10px 10px;display:block;position:sticky}.tutorial-hint-dismiss{width:var(--tap-target-min);height:var(--tap-target-min);color:var(--color-ui-text-muted);font-family:var(--font-body);cursor:pointer;pointer-events:auto;background:0 0;border:0;justify-content:flex-end;align-items:flex-start;margin:0;padding:4px 8px 0 0;font-size:15px;line-height:1;transition:color .18s ease-out;display:flex;position:absolute;top:0;right:0}:is(.tutorial-hint-dismiss:hover,.tutorial-hint-dismiss:focus-visible){color:var(--color-gold-bright)}.tutorial-hint{border-color:var(--color-gold);box-shadow:var(--shadow-card), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3)}.stuck-hint{border-color:var(--color-gold);box-shadow:inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3)}.tutorial-hint:hover,.stuck-hint:hover{border-color:var(--color-gold-bright);box-shadow:0 6px 20px rgba(var(--color-shadow-rgb), .55), 0 0 14px rgba(var(--color-gold-rgb), .35), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3);filter:brightness(1.06)}#undo-btn{color:var(--color-danger);background:var(--color-ui-bg);border-style:solid;border-width:1px;border-color:var(--color-danger)}:is(#undo-btn:hover,#undo-btn:focus-visible){background:linear-gradient(rgba(var(--color-danger-rgb), .18), rgba(var(--color-danger-rgb), .18)), var(--color-ui-bg);border-color:var(--color-danger-bright);box-shadow:0 4px 10px rgba(var(--color-shadow-rgb), .5), 0 0 10px rgba(var(--color-danger-rgb), .35);outline:none;transform:translateY(-1px)}#undo-btn:active{transform:translateY(0)}#hex-tooltip{background:linear-gradient(to bottom, rgba(var(--color-desk-rgb), .95), rgba(var(--color-ui-bg-rgb), .95));border:1px solid var(--color-paper-border-dark);font-family:var(--font-body);color:var(--color-ui-text);pointer-events:none;opacity:.92;width:max-content;max-width:calc(100vw - 12px);box-shadow:0 2px 6px rgba(var(--color-shadow-rgb), .5), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .25);border-radius:6px;padding:4px 10px;font-size:11px;position:fixed}#controls-close,#stats-close-btn{color:var(--color-ui-text);transition:background .15s ease-out, color .15s ease-out, border-color .15s ease-out, transform .15s var(--ease-hover-lift)}#controls-close{border-color:var(--color-shadow);min-height:44px}#stats-close-btn{border-color:var(--color-ui-border)}:is(#controls-close:hover,#controls-close:focus-visible,#stats-close-btn:hover,#stats-close-btn:focus-visible){border-color:var(--color-gold);color:var(--color-highlight);transform:var(--transform-lift-card)}#controls-close:active,#stats-close-btn:active{transform:var(--transform-press)}.modal-close-x{float:right;background:rgba(var(--color-shadow-rgb), .9);width:32px;height:32px;color:var(--color-ui-text);border:1px solid var(--color-ui-border);cursor:pointer;z-index:2;border-radius:50%;margin:-8px -8px 0 0;font-size:20px;font-weight:700;line-height:1;transition:background .15s,transform .15s;position:sticky;top:0}@media (pointer:coarse){.modal-close-x{width:44px;height:44px;margin:-12px -12px 0 0;font-size:24px}}:is(.modal-close-x:hover,.modal-close-x:focus-visible){background:var(--color-gold);color:var(--color-shadow);outline:none;transform:scale(1.08)}.modal-close-x:active{transform:var(--transform-press)}.rule-book-close{background:rgba(var(--color-gold-rgb), .85);width:32px;height:32px;color:var(--color-paper-book-cover);border:1px solid var(--color-paper-book-cover-deep);cursor:pointer;z-index:2;border-radius:50%;justify-content:center;align-items:center;font-size:22px;font-weight:700;line-height:1;transition:background .15s,transform .15s;display:flex;position:absolute;top:8px;right:10px}:is(.rule-book-close:hover,.rule-book-close:focus-visible){background:var(--color-gold);transform:scale(1.08)}.rule-book-close:active{transform:var(--transform-press)}.rule-book-page{background:radial-gradient(ellipse at 50% 30%, var(--color-paper-rulebook-light) 0%, var(--color-paper-rulebook-mid) 55%, var(--color-paper-rulebook-deep) 100%);color:var(--color-paper-ink);box-shadow:var(--shadow-parchment-page-halo), var(--rim-parchment-page-highlight);scrollbar-width:thin;scrollbar-color:var(--color-paper-border) transparent;flex:1;padding:28px 30px 24px;position:relative;overflow:hidden auto}.rule-book-page::-webkit-scrollbar{width:6px}.rule-book-page::-webkit-scrollbar-thumb{background:var(--color-paper-border);border-radius:3px}.rule-book-page-left{box-shadow:inset -12px 0 24px rgba(var(--color-paper-shadow-rgb), .4), var(--shadow-parchment-page-halo), var(--rim-parchment-page-highlight);border-radius:2px 0 0 2px}.rule-book-page-right{box-shadow:inset 12px 0 24px rgba(var(--color-paper-shadow-rgb), .4), var(--shadow-parchment-page-halo), var(--rim-parchment-page-highlight);border-radius:0 2px 2px 0;flex-direction:column;display:flex}.rule-book-spine{background:linear-gradient(90deg,#0009 0%,#00000026 40% 60%,#0009 100%);flex-shrink:0;width:14px;box-shadow:inset 0 0 8px #0000008c}.rule-book-page-title{font-family:var(--font-display);color:var(--color-paper-ink-heading);text-align:center;letter-spacing:var(--letter-spacing-label);border-bottom:1px solid #5a2f0e59;margin-bottom:14px;padding-bottom:8px;font-size:22px}.rule-book-page-title:empty{display:none}.rule-book-page-body{font-size:13.5px;line-height:1.55}.rule-book-page-body p{margin:0 0 10px}.rule-book-page-body h4{font-family:var(--font-display);color:var(--color-paper-ink-sub);margin:12px 0 6px;font-size:15px}.rule-book-page-body .rb-subhead{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--color-paper-ink-sub);margin:11px 0 3px;font-size:11.5px}.rule-book-page-body .rb-subhead+.rb-list{margin-top:0}.rule-book-page-body .rb-lede{color:var(--color-paper-ink-heading);text-align:center;margin-bottom:14px;font-size:15px;font-style:italic}.rule-book-page-body .rb-tip{background:rgba(var(--color-paper-border-rgb), .18);border-left:3px solid var(--color-paper-border);border-radius:2px;margin-top:12px;padding:8px 10px;font-size:12.5px}.rule-book-page-body .rb-list{margin:0 0 10px;padding-left:18px}.rule-book-page-body .rb-list li{margin-bottom:5px}.rule-book-page-body .rb-tips li{margin-bottom:8px;margin-left:-18px;padding-left:26px;list-style:none;position:relative}.rule-book-page-body .rb-tip-icon{position:absolute;top:1px;left:0}.rule-book-page-body .rb-end{text-align:center;color:var(--color-paper-border);margin-top:40%;font-style:italic}.rb-tower-list{flex-direction:column;gap:10px;display:flex}.rb-tower-row{background:rgba(var(--color-paper-border-rgb), .12);border-left:3px solid var(--color-paper-border);border-radius:2px;padding:8px 10px}.rb-tower-head{justify-content:space-between;align-items:baseline;margin-bottom:3px;display:flex}.rb-tower-name{font-family:var(--font-display);color:var(--color-paper-ink-heading);font-size:14px;font-weight:700}.rb-tower-cost{font-family:var(--font-body);color:var(--color-paper-ink-cost);font-size:12px;font-weight:700}.rb-tower-desc{color:var(--color-paper-ink);margin-bottom:4px;font-size:12px;line-height:1.4}.rb-tower-stats{color:var(--color-paper-ink-stat);letter-spacing:var(--letter-spacing-tight);gap:10px;font-size:11px;font-weight:600;display:flex}.rule-book-nav{background:var(--color-paper-rulebook-deep);border-top:1px solid #5a2f0e59;justify-content:space-between;align-items:center;margin:auto -30px -24px;padding:10px 30px 14px;display:flex;position:sticky;bottom:-24px}.rule-book-nav-btn{background:rgba(var(--color-paper-border-rgb), .3);color:var(--color-paper-ink);border:1px solid var(--color-paper-border);font-family:var(--font-display);cursor:pointer;border-radius:4px;min-width:36px;min-height:36px;padding:4px 14px;font-size:22px;line-height:1;transition:background .15s}@media (pointer:coarse){.rule-book-nav-btn{min-width:44px;min-height:44px}.rule-book-close{width:44px;height:44px}}:is(.rule-book-nav-btn:hover:not(:disabled),.rule-book-nav-btn:focus-visible:not(:disabled)){background:rgba(var(--color-paper-border-rgb), .55)}.rule-book-nav-btn:active:not(:disabled){transform:var(--transform-press)}.rule-book-nav-btn:disabled{opacity:.3;cursor:default}.rule-book-nav-arrow{transition:transform .15s var(--ease-hover-lift);display:inline-block}:is(#rb-prev:hover:not(:disabled) .rule-book-nav-arrow,#rb-prev:focus-visible:not(:disabled) .rule-book-nav-arrow){transform:translate(-2px)}:is(#rb-next:hover:not(:disabled) .rule-book-nav-arrow,#rb-next:focus-visible:not(:disabled) .rule-book-nav-arrow){transform:translate(2px)}@media (prefers-reduced-motion:reduce){.rule-book-nav-arrow{transition:none}:is(#rb-prev:hover:not(:disabled) .rule-book-nav-arrow,#rb-prev:focus-visible:not(:disabled) .rule-book-nav-arrow,#rb-next:hover:not(:disabled) .rule-book-nav-arrow,#rb-next:focus-visible:not(:disabled) .rule-book-nav-arrow){transform:none}}.rule-book-dots{gap:8px;min-width:0;display:flex;overflow:hidden}.rule-book-dots-counter{overflow:visible}.rule-book-page-counter{font-family:var(--font-body);color:var(--color-paper-ink);opacity:.75;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.rule-book-dot{background:#5a2f0e4d;border-radius:50%;width:8px;height:8px;transition:background .15s,transform .15s}.rule-book-dot.active{background:var(--color-paper-ink-heading);transform:scale(1.3)}@keyframes rule-book-flip-in{0%{transform:perspective(1600px)rotateY(0)}40%{transform:perspective(1600px)rotateY(-4deg)}to{transform:perspective(1600px)rotateY(0)}}.rule-book.flipping{animation:rule-book-flip-in .42s var(--ease-hover-lift)}@media (max-width:720px){.rule-book{flex-direction:column;height:min(720px,92vh)}.rule-book-spine,.rule-book-page-left{display:none}}@media (prefers-reduced-motion:reduce){.rule-book.flipping{animation:none}}@supports (padding-top:env(safe-area-inset-top)){#hud-top{top:calc(var(--space-sm) + env(safe-area-inset-top))}#tower-bar{bottom:calc(var(--space-md) + env(safe-area-inset-bottom))}}button:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}[role=button]:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}.tower-card:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}.map-card:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}.difficulty-die:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}.challenge-card:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}#pause-panel{scrollbar-width:thin;scrollbar-color:var(--color-gold) rgba(var(--color-shadow-rgb), .4)}#pause-panel::-webkit-scrollbar{width:8px}#pause-panel::-webkit-scrollbar-track{background:rgba(var(--color-shadow-rgb), .4);border-radius:4px}#pause-panel::-webkit-scrollbar-thumb{background:var(--color-gold);border:1px solid rgba(var(--color-shadow-rgb), .6);border-radius:4px}#pause-panel::-webkit-scrollbar-thumb:hover{background:var(--color-gold-bright)}#pause-panel input[type=range]{-webkit-appearance:none;appearance:none;background:0 0;height:24px;margin:0;padding:0}@media (pointer:coarse){#pause-panel input[type=range]{height:44px}}#pause-panel input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--color-gold) 0, var(--color-gold) calc(7px + (100% - 14px) * var(--fill,0)), rgba(var(--color-shadow-rgb), .7) calc(7px + (100% - 14px) * var(--fill,0)), rgba(var(--color-shadow-rgb), .7) 100%);border:1px solid rgba(var(--color-gold-rgb), .45);border-radius:3px;height:6px}#pause-panel input[type=range]::-moz-range-track{background:rgba(var(--color-shadow-rgb), .7);border:1px solid rgba(var(--color-gold-rgb), .45);border-radius:3px;height:6px}#pause-panel input[type=range]::-moz-range-progress{background:var(--color-gold);border-radius:3px;height:6px}#pause-panel input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--color-gold);border:1px solid rgba(var(--color-shadow-rgb), .8);width:14px;height:14px;box-shadow:0 1px 3px rgba(var(--color-shadow-rgb), .7);cursor:pointer;border-radius:50%;margin-top:-5px;transition:background .12s,transform .12s}#pause-panel input[type=range]::-moz-range-thumb{background:var(--color-gold);border:1px solid rgba(var(--color-shadow-rgb), .8);width:14px;height:14px;box-shadow:0 1px 3px rgba(var(--color-shadow-rgb), .7);cursor:pointer;border-radius:50%;transition:background .12s,transform .12s}#pause-panel input[type=range]:hover::-webkit-slider-thumb{background:var(--color-gold-bright);transform:scale(1.15)}#pause-panel input[type=range]:hover::-moz-range-thumb{background:var(--color-gold-bright);transform:scale(1.15)}#pause-panel input[type=range]:focus-visible{outline:none}#pause-panel input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px rgba(var(--color-gold-rgb), .4)}#pause-panel input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 3px rgba(var(--color-gold-rgb), .4)}.wave-gold-tally-pile{align-items:flex-end;height:12px;display:flex}.wave-gold-tally-pile-coin{background:radial-gradient(circle at 35% 30%, var(--color-gold-bright) 0%, var(--color-gold) 55%, var(--color-gold-deep) 100%);opacity:0;width:12px;height:12px;animation:wave-gold-tally-coin-drop .32s var(--ease-overshoot) forwards;border-radius:50%;position:relative;transform:translateY(-18px)rotate(-22deg);box-shadow:inset 0 -1px 1px #00000073,inset 0 1px 1px #ffffff59,0 1px 2px #0000008c}.wave-gold-tally-pile-coin+.wave-gold-tally-pile-coin{margin-left:-3px}.wave-gold-tally-pile-coin:after{content:"";background:#3c1e0073;border-radius:1px;height:1px;position:absolute;top:47%;left:22%;right:22%}.wave-gold-tally-pile-coin:nth-child(2){animation-delay:80ms}.wave-gold-tally-pile-coin:nth-child(3){animation-delay:.16s}.wave-gold-tally-pile-coin:nth-child(4){animation-delay:.24s}.wave-gold-tally-pile-coin:nth-child(5){animation-delay:.32s}@keyframes wave-gold-tally-coin-drop{0%{opacity:0;transform:translateY(-18px)rotate(-22deg)}60%{opacity:1}to{opacity:1;transform:translateY(0)rotate(0)}}@media (prefers-reduced-motion:reduce){.wave-gold-tally-pile-coin{opacity:1;animation:none;transform:none}}.wave-stats-gold-row,.wave-stats-kills-row,.wave-stats-time-row{align-items:center;gap:5px;display:inline-flex}.wave-stats-stat-icon{align-items:center;display:inline-flex}.wave-stats-gold-pile{vertical-align:middle;align-items:flex-end;height:10px;display:inline-flex}.wave-stats-gold-coin{background:radial-gradient(circle at 35% 30%, var(--color-gold-bright) 0%, var(--color-gold) 55%, var(--color-gold-deep) 100%);border-radius:50%;width:10px;height:10px;position:relative;box-shadow:inset 0 -1px 1px #00000073,inset 0 1px 1px #ffffff59,0 1px 2px #0000008c}.wave-stats-gold-coin+.wave-stats-gold-coin{margin-left:-3px}.wave-stats-gold-coin:after{content:"";background:#3c1e0073;border-radius:1px;height:1px;position:absolute;top:47%;left:22%;right:22%}.hud-gold-pile{align-items:flex-end;height:11px;display:inline-flex}.hud-gold-coin{background:radial-gradient(circle at 35% 30%, var(--color-gold-bright) 0%, var(--color-gold) 55%, var(--color-gold-deep) 100%);border-radius:50%;width:11px;height:11px;position:relative;box-shadow:inset 0 -1px 1px #00000073,inset 0 1px 1px #ffffff59,0 1px 2px #0000008c}.hud-gold-coin+.hud-gold-coin{margin-left:-3px}.hud-gold-coin:after{content:"";background:#3c1e0073;border-radius:1px;height:1px;position:absolute;top:47%;left:22%;right:22%}@keyframes howto-step-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.howto-step{animation:none!important}}@media (max-width:360px){.daily-siege-banner{text-align:center;flex-direction:column!important;align-items:stretch!important;gap:6px!important}.daily-siege-banner>span:first-child{justify-content:center!important}.daily-siege-banner>span:nth-child(2){align-items:center!important}}.hp-bar,.hp-bar-status-glyph,#hero-badge,.target-priority-glyph,.primary-threat-marker,.mark-crosshair,#hud>.tower-spec-icon{will-change:transform}@media (pointer:coarse){.wave-preview-banner [data-enemy-id]{pointer-events:auto;cursor:pointer}}#end-screen{background:radial-gradient(ellipse at center, rgba(var(--color-ui-bg-rgb), .72) 0%, rgba(var(--color-ui-bg-rgb), .5) 100%);z-index:100;justify-content:center;align-items:center;animation:.3s ease-out fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.end-stars{justify-content:center;gap:var(--space-lg);margin:var(--space-sm) 0 var(--space-md);padding:var(--space-sm) 0;display:flex}.end-star-cell{opacity:0;animation:end-star-pop .45s var(--ease-overshoot) forwards;flex-direction:column;align-items:center;gap:4px;display:flex;transform:scale(.4)}.end-star-cell.unearned{animation-name:end-star-pop-unearned;animation-duration:.35s}.end-star-cell:first-child{animation-delay:50ms}.end-star-cell:nth-child(2){animation-delay:.27s}.end-star-cell:nth-child(3){animation-delay:.49s}@keyframes end-star-pop{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.18)}80%{transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes end-star-pop-unearned{0%{opacity:0;transform:scale(.4)}to{opacity:.75;transform:scale(1)}}.end-star-label{font-family:var(--font-body);color:var(--color-ui-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.end-card{background:linear-gradient(to bottom, rgba(var(--color-desk-rgb), .98), rgba(var(--color-ui-bg-rgb), .92));border:2px solid var(--color-paper-border-dark);padding:var(--space-lg);text-align:center;width:90%;max-width:360px;max-height:90vh;box-shadow:0 8px 32px rgba(var(--color-shadow-rgb), .55), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3);animation:end-card-pop-in .3s var(--ease-overshoot) both;border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.end-scroll{scrollbar-width:thin;scrollbar-color:var(--color-gold) rgba(var(--color-shadow-rgb), .4);flex:auto;min-height:0;overflow:hidden auto}.end-scroll::-webkit-scrollbar{width:8px}.end-scroll::-webkit-scrollbar-track{background:rgba(var(--color-shadow-rgb), .4);border-radius:4px}.end-scroll::-webkit-scrollbar-thumb{background:var(--color-gold);border:1px solid rgba(var(--color-shadow-rgb), .6);border-radius:4px}.end-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-gold-bright)}@keyframes end-card-pop-in{0%{transform:scale(.96)}to{transform:scale(1)}}.end-card.end-card-defeat{border-color:rgba(var(--color-danger-rgb), .55);box-shadow:0 8px 24px rgba(var(--color-shadow-rgb), .7), 0 0 24px rgba(var(--color-danger-rgb), .18), inset 0 1px 0 rgba(var(--color-paper-border-rgb), .3)}@media (min-width:960px),(max-height:720px) and (min-width:640px){.end-card{max-width:780px}.end-card-body{columns:2;column-gap:var(--space-lg);column-fill:balance;margin-bottom:var(--space-sm)}.end-card-body>div,.end-card-body>.share-preview{break-inside:avoid;page-break-inside:avoid}.end-card-body .end-mvp{max-width:none;margin-left:0;margin-right:0}}.end-title{font-family:var(--font-display);color:var(--color-gold);margin-bottom:var(--space-md);animation:stat-reveal var(--anim-stat-reveal-primary) ease-out both;font-size:36px;animation-delay:.1s}.end-title-victory{color:var(--color-gold-bright);text-shadow:0 2px 8px rgba(var(--color-gold-bright-rgb), .45), 0 0 24px rgba(var(--color-gold-bright-rgb), .3);animation:stat-reveal var(--anim-stat-reveal-primary) ease-out both, end-title-victory-shimmer 2.4s ease-in-out .6s infinite}.end-title-defeat{color:var(--color-danger-hi);text-shadow:  0 0 3px rgba(var(--color-shadow-rgb), 1), 0 0 8px rgba(var(--color-shadow-rgb), .95), 0 2px 8px rgba(var(--color-shadow-rgb), .85), 0 0 18px rgba(var(--color-danger-bright-rgb), .35);letter-spacing:.04em}@keyframes end-title-victory-shimmer{0%,to{text-shadow:0 2px 8px rgba(var(--color-gold-bright-rgb), .45), 0 0 24px rgba(var(--color-gold-bright-rgb), .3)}50%{text-shadow:0 2px 10px rgba(var(--color-gold-bright-rgb), .65), 0 0 36px rgba(var(--color-gold-bright-rgb), .55), 0 0 72px rgba(var(--color-gold-bright-rgb), .2)}}@media (prefers-reduced-motion:reduce){.end-title-victory{animation:stat-reveal var(--anim-stat-reveal-primary) ease-out both}}.end-stats{margin-bottom:var(--space-md)}@media (max-width:600px) and (orientation:portrait){.end-card{padding:var(--space-sm) var(--space-md)}.end-title{margin-bottom:var(--space-xs);font-size:28px}.end-stars{gap:var(--space-md);margin:2px 0 var(--space-xs);padding:2px 0}.stat-row{padding:2px 0;font-size:14px}.end-stats{margin-bottom:var(--space-xs)}.end-daily-badge,.end-endless-badge{margin-bottom:6px!important;padding:3px 10px!important}}.stat-row{padding:var(--space-xs) 0;font-family:var(--font-body);color:var(--color-ui-text);border-bottom:1px solid rgba(var(--color-desk-rgb), .5);animation:stat-reveal var(--anim-stat-reveal-secondary) ease-out both;justify-content:space-between;font-size:16px;font-weight:700;display:flex}.stat-row:first-child{animation-delay:.3s}.stat-row:nth-child(2){animation-delay:.45s}.stat-row:nth-child(3){animation-delay:.6s}.stat-row:nth-child(4){animation-delay:.75s}.end-breakdown-final-row{animation:stat-reveal var(--anim-stat-reveal-secondary) ease-out both;animation-delay:1.4s}@keyframes stat-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.end-timeline{margin-bottom:var(--space-md);animation:stat-reveal var(--anim-stat-reveal-secondary) ease-out both;flex-direction:column;gap:5px;animation-delay:.9s;display:flex}.end-timeline-title{font-family:var(--font-body);letter-spacing:.8px;text-transform:uppercase;color:var(--color-ui-text-muted);text-align:left;font-size:11px;font-weight:700}.end-timeline-row{flex-wrap:wrap;gap:4px;display:flex}.end-timeline-cell{aspect-ratio:1;border-radius:3px;flex:none;width:13px}.end-timeline-row[style*=--timeline-fit] .end-timeline-cell{width:clamp(8px, calc((100% - (var(--timeline-fit) - 1) * 4px) / var(--timeline-fit)), 13px)}.end-timeline-cell-clean{background:rgba(var(--color-success-rgb), .85)}.end-timeline-cell-grazed{background:rgba(var(--color-gold-rgb), .9)}.end-timeline-cell-bled{background:rgba(var(--color-danger-rgb), .9)}.end-timeline-cell-unknown{background:rgba(var(--color-desk-rgb), .6)}.end-timeline-cell-breach{box-shadow:0 0 0 2px var(--color-danger-bright,var(--color-danger));animation:1.6s ease-in-out infinite end-timeline-breach-pulse}@keyframes end-timeline-breach-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.25)}}@media (prefers-reduced-motion:reduce){.end-timeline-cell-breach{animation:none}}.end-timeline-breacher{font-family:var(--font-body);color:rgba(var(--color-danger-hi-rgb), .95);text-align:left;font-size:11px;font-weight:700}.end-timeline-flawless .end-timeline-title{color:var(--color-gold);text-transform:uppercase;letter-spacing:var(--letter-spacing-label);text-shadow:0 0 8px rgba(var(--color-gold-rgb), .5)}.end-timeline-flawless .end-timeline-row{background:rgba(var(--color-gold-rgb), .08);box-shadow:inset 0 0 0 1px rgba(var(--color-gold-rgb), .4), 0 0 12px rgba(var(--color-gold-rgb), .22);border-radius:6px;padding:5px 7px;position:relative;overflow:hidden}.end-timeline-flawless .end-timeline-cell-clean{background:var(--color-gold);box-shadow:0 0 6px rgba(var(--color-gold-rgb), .55)}.end-timeline-flawless .end-timeline-row:after{content:"";background:linear-gradient(108deg, transparent 30%, rgba(var(--color-gold-rgb), .25) 44%, var(--color-shimmer-center) 50%, rgba(var(--color-gold-rgb), .25) 56%, transparent 70%);transform:var(--transform-shimmer-start);opacity:0;pointer-events:none;animation:1.2s ease-out 1.2s both end-mvp-shine-sweep;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.end-timeline-flawless .end-timeline-row:after{opacity:0;animation:none}}.new-best{color:var(--color-shadow);background:var(--color-gold);font-size:10px;font-family:var(--font-display);letter-spacing:var(--letter-spacing-label);vertical-align:middle;box-shadow:0 0 8px rgba(var(--color-gold-rgb), .55);animation:new-best-entry .55s var(--ease-overshoot) both, best-pulse .7s ease-in-out .55s infinite alternate;border-radius:4px;margin-left:4px;padding:2px 6px;font-weight:800;display:inline-block;position:relative}@keyframes new-best-entry{0%{opacity:0;transform:scale(.4)rotate(-8deg)}60%{opacity:1;transform:scale(1.18)rotate(2deg)}to{opacity:1;transform:scale(1)rotate(0)}}@media (prefers-reduced-motion:reduce){.new-best{animation:none}}.new-best-confetti{pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}.new-best-confetti-particle{background:var(--particle-color,var(--color-gold));opacity:0;border-radius:1px;width:4px;height:4px;animation:.85s ease-out .4s both new-best-confetti-burst;position:absolute;top:-2px;left:-2px}@keyframes new-best-confetti-burst{0%{opacity:0;transform:translate(0)rotate(0)scale(.6)}15%{opacity:1;transform:translate(calc(var(--particle-end-x) * .2), calc(var(--particle-end-y) * .2)) rotate(calc(var(--particle-rotate) * .2)) scale(1)}70%{opacity:1;transform:translate(calc(var(--particle-end-x) * .85), calc(var(--particle-end-y) * .85)) rotate(calc(var(--particle-rotate) * .85)) scale(.9)}to{opacity:0;transform:translate(var(--particle-end-x), var(--particle-end-y)) rotate(var(--particle-rotate)) scale(.5)}}@media (prefers-reduced-motion:reduce){.new-best-confetti-particle{opacity:0;animation:none}}.end-mastery-level-up{animation:.6s ease-out end-mastery-level-up-entry;display:inline-block}@keyframes end-mastery-level-up-entry{0%{text-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);transform:scale(.7)}35%{text-shadow:0 0 8px rgba(var(--color-gold-rgb), .85);transform:scale(1.18)}to{text-shadow:0 0 0 rgba(var(--color-gold-rgb), 0);transform:scale(1)}}@media (prefers-reduced-motion:reduce){.end-mastery-level-up{animation:none}}.end-mastery-tower-icon{vertical-align:middle;align-items:center;margin-right:4px;display:inline-flex}.end-mastery-tower-icon-pulse{animation:.6s ease-out end-mastery-tower-icon-pulse}@keyframes end-mastery-tower-icon-pulse{0%{filter:drop-shadow(0 0 0 rgba(var(--color-gold-rgb), 0));transform:scale(1)}35%{filter:drop-shadow(0 0 5px rgba(var(--color-gold-rgb), .85));transform:scale(1.18)}to{filter:drop-shadow(0 0 0 rgba(var(--color-gold-rgb), 0));transform:scale(1)}}@media (prefers-reduced-motion:reduce){.end-mastery-tower-icon-pulse{animation:none}}@keyframes best-pulse{0%{box-shadow:0 0 4px rgba(var(--color-gold-rgb), .35);transform:scale(1)}to{box-shadow:0 0 14px rgba(var(--color-gold-rgb), .8);transform:scale(1.04)}}.end-personal{row-gap:var(--space-sm);padding:var(--space-sm) 0;margin-bottom:var(--space-md);border-top:1px solid rgba(var(--color-desk-rgb), .3);animation:stat-reveal var(--anim-stat-reveal-secondary) ease-out both;flex-wrap:wrap;justify-content:space-around;animation-delay:.9s;display:flex}.end-personal+.end-personal{animation-delay:1.1s}.personal-stat{flex-direction:column;align-items:center;gap:2px;display:flex}.personal-label{font-family:var(--font-body);color:var(--color-ui-text-muted);text-transform:uppercase;letter-spacing:var(--letter-spacing-tight);white-space:nowrap;font-size:10px}.personal-value{font-family:var(--font-display);color:var(--color-ui-text);font-size:18px}.end-gold-stat-value,.end-stat-with-icon{align-items:center;gap:6px;display:inline-flex}.end-stat-icon{align-items:center;display:inline-flex}.end-gold-pile{align-items:flex-end;height:12px;display:inline-flex}.end-gold-coin{background:radial-gradient(circle at 35% 30%, var(--color-gold-bright) 0%, var(--color-gold) 55%, var(--color-gold-deep) 100%);border-radius:50%;width:12px;height:12px;position:relative;box-shadow:inset 0 -1px 1px #00000073,inset 0 1px 1px #ffffff59,0 1px 2px #0000008c}.end-gold-coin+.end-gold-coin{margin-left:-3px}.end-gold-coin:after{content:"";background:#3c1e0073;border-radius:1px;height:1px;position:absolute;top:47%;left:22%;right:22%}.end-mvp{margin:0 auto var(--space-md);padding:var(--space-sm) var(--space-md);background:linear-gradient(135deg, rgba(var(--color-gold-rgb), .18), rgba(var(--color-gold-rgb), .06));border:1px solid rgba(var(--color-gold-rgb), .6);max-width:280px;box-shadow:0 0 12px rgba(var(--color-gold-rgb), .22);animation:stat-reveal var(--anim-stat-reveal-primary) ease-out both;border-radius:8px;justify-content:center;align-items:center;gap:8px;animation-delay:1.2s;display:flex;position:relative;overflow:hidden}.end-mvp:after{content:"";border-radius:inherit;background:linear-gradient(108deg, transparent 30%, rgba(var(--color-gold-rgb), .22) 44%, var(--color-shimmer-center) 50%, rgba(var(--color-gold-rgb), .22) 56%, transparent 70%);transform:var(--transform-shimmer-start);opacity:0;pointer-events:none;animation:1.1s ease-out 1.5s both end-mvp-shine-sweep;position:absolute;inset:0}@keyframes end-mvp-shine-sweep{0%{transform:var(--transform-shimmer-start);opacity:0}20%{opacity:1}80%{opacity:1}to{transform:var(--transform-shimmer-end);opacity:0}}@media (prefers-reduced-motion:reduce){.end-mvp:after{opacity:0;animation:none}}.end-mvp-star{color:var(--color-gold);filter:var(--drop-shadow-gold-medium);font-size:18px}.end-mvp-label{font-family:var(--font-body);color:var(--color-ui-text-muted);text-transform:uppercase;letter-spacing:var(--letter-spacing-label);font-size:10px}.end-mvp-name{font-family:var(--font-display);color:var(--color-gold);font-size:15px;font-weight:800}.share-preview{background:var(--color-ui-bg);padding:var(--space-sm);color:var(--color-ui-text);text-align:left;white-space:pre;margin-bottom:var(--space-md);box-shadow:inset 0 1px 2px rgba(var(--color-shadow-rgb), .7), inset 0 -1px 1px rgba(var(--color-paper-border-rgb), .15);animation:stat-reveal var(--anim-stat-reveal-secondary) ease-out both;scrollbar-width:thin;scrollbar-color:var(--color-gold) rgba(var(--color-shadow-rgb), .4);border-radius:8px;font-family:monospace;font-size:12px;animation-delay:1.4s;overflow-x:auto}.share-preview::-webkit-scrollbar{height:8px}.share-preview::-webkit-scrollbar-track{background:rgba(var(--color-shadow-rgb), .4);border-radius:4px}.share-preview::-webkit-scrollbar-thumb{background:var(--color-gold);border:1px solid rgba(var(--color-shadow-rgb), .6);border-radius:4px}.share-preview::-webkit-scrollbar-thumb:hover{background:var(--color-gold-bright)}.end-actions{gap:var(--space-sm);animation:stat-reveal var(--anim-stat-reveal-secondary) ease-out both;animation-delay:1.6s;display:flex;position:relative}.end-actions:before{content:"";pointer-events:none;background:linear-gradient(to bottom, transparent, rgba(var(--color-ui-bg-rgb), .92));height:22px;position:absolute;bottom:100%;left:0;right:0}.end-continue-endless{width:100%;margin-top:var(--space-sm);background:var(--color-gold);border-color:var(--color-gold);color:var(--color-ink);animation:stat-reveal var(--anim-stat-reveal-secondary) ease-out both;justify-content:center;align-items:center;gap:8px;font-weight:800;animation-delay:1.8s;display:inline-flex;position:relative;overflow:hidden}.end-continue-endless:after{content:"";border-radius:inherit;background:linear-gradient(108deg, transparent 30%, rgba(var(--color-gold-bright-rgb), .3) 44%, #fff8dca6 50%, rgba(var(--color-gold-bright-rgb), .3) 56%, transparent 70%);transform:var(--transform-shimmer-start);opacity:0;pointer-events:none;animation:1.1s ease-out 2.6s both end-mvp-shine-sweep;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.end-continue-endless:after{opacity:0;animation:none}}.end-btn{padding:var(--space-sm) var(--space-md);min-height:var(--tap-target-min);background:var(--color-shadow);border:2px solid var(--color-ui-border);color:var(--color-ui-text);font-family:var(--font-body);cursor:pointer;border-radius:8px;flex:1;font-size:14px;font-weight:700}.end-action-btn{justify-content:center;align-items:center;gap:8px;display:inline-flex}.end-action-icon{transition:transform .3s var(--ease-hover-lift);flex-shrink:0;align-items:center;display:inline-flex}:is(#share-btn:hover .end-action-icon,#share-btn:focus-visible .end-action-icon){transform:translateY(-2px)}:is(#retry-btn:hover .end-action-icon,#retry-btn:focus-visible .end-action-icon){transition-duration:.4s;transform:rotate(180deg)}.end-change-map-btn{border-color:var(--color-ui-text-muted);color:var(--color-ui-text-muted);background:0 0;justify-content:center;align-items:center;gap:8px;display:inline-flex}:is(#change-map-btn:hover .end-change-map-icon,#change-map-btn:focus-visible .end-change-map-icon){transform:translate(2px)}@media (prefers-reduced-motion:reduce){:is(#change-map-btn:hover .end-change-map-icon,#change-map-btn:focus-visible .end-change-map-icon){transform:none}}:is(#continue-endless-btn:hover .end-continue-endless-icon,#continue-endless-btn:focus-visible .end-continue-endless-icon){transition-duration:.35s;transform:scaleX(1.18)}@media (prefers-reduced-motion:reduce){.end-action-icon{transition:none}:is(#share-btn:hover .end-action-icon,#share-btn:focus-visible .end-action-icon,#retry-btn:hover .end-action-icon,#retry-btn:focus-visible .end-action-icon,#continue-endless-btn:hover .end-continue-endless-icon,#continue-endless-btn:focus-visible .end-continue-endless-icon){transform:none}}:is(.end-btn:hover,.end-btn:focus-visible){background:var(--color-ui-border)}.end-btn.end-btn-copied-flash{animation:end-btn-copied-flash .48s var(--ease-overshoot)}@keyframes end-btn-copied-flash{0%{background:var(--color-shadow);box-shadow:none;transform:scale(1)}35%{background:rgba(var(--color-gold-rgb), .45);box-shadow:0 0 16px 2px rgba(var(--color-gold-rgb), .55);transform:scale(1.06)}to{background:var(--color-shadow);box-shadow:none;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.end-btn.end-btn-copied-flash{animation:none}}.end-btn:active{transform:var(--transform-press)}.end-btn.end-continue-endless{background:var(--color-gold);border-color:var(--color-gold);color:var(--color-ink);font-weight:800}:is(.end-btn.end-continue-endless:hover,.end-btn.end-continue-endless:focus-visible){background:var(--color-gold-bright);border-color:var(--color-gold-bright)}@media (max-height:620px){.end-card{max-height:94vh;padding:var(--space-sm) var(--space-md)}.end-actions,.end-card>.end-btn{flex-shrink:0}}@media (max-width:360px){.end-btn{padding:var(--space-sm)}.end-stars{gap:var(--space-sm)}.end-star-label{text-transform:none;letter-spacing:0}}.end-flavour{font-family:var(--font-body);color:var(--color-ui-text-muted);text-align:center;max-width:34ch;margin:2px auto 10px;font-size:13px;font-style:italic;line-height:1.45}.end-ach-desc{font-size:9px}@media (pointer:coarse){.end-ach-desc{font-size:11px}}#loading-screen{background:radial-gradient(ellipse at center, var(--color-loading-vignette) 0%, var(--color-ui-bg) 65%);z-index:1000;justify-content:center;align-items:center;transition:opacity .5s ease-out;display:flex;position:fixed;inset:0}#loading-screen.loading-fade-out{opacity:0;pointer-events:none}.loading-content{text-align:center;width:90%;max-width:320px}.loading-dice{margin-bottom:var(--space-md);font-size:48px;display:inline-block;position:relative}.loading-dice-spin{animation:1.667s ease-in-out infinite dice-spin;display:inline-block}@media (prefers-reduced-motion:reduce){.loading-dice-spin{animation:none}}.loading-dice:before{content:"";background:radial-gradient(ellipse closest-side, rgba(var(--color-shadow-rgb), .45) 0%, rgba(var(--color-shadow-rgb), .18) 55%, transparent 100%);pointer-events:none;width:64px;height:12px;animation:1.667s ease-in-out infinite loading-dice-shadow;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}@keyframes loading-dice-shadow{0%,50%,to{opacity:.55;transform:translate(-50%)scaleX(.85)}25%,75%{opacity:.75;transform:translate(-50%)scaleX(1.15)}}@media (prefers-reduced-motion:reduce){.loading-dice:before{animation:none}}@keyframes dice-spin{0%{transform:rotate(0)scale(1)}25%{transform:rotate(90deg)scale(1.1)}50%{transform:rotate(180deg)scale(1)}75%{transform:rotate(270deg)scale(1.1)}to{transform:rotate(360deg)scale(1)}}.loading-title{font-family:var(--font-display);color:var(--color-gold);margin-bottom:var(--space-sm);text-shadow:0 2px 8px rgba(var(--color-gold-rgb), .3);font-size:42px;animation:1.667s ease-in-out infinite loading-title-glow}@keyframes loading-title-glow{0%,to{text-shadow:0 2px 8px rgba(var(--color-gold-rgb), .3)}50%{text-shadow:0 2px 14px rgba(var(--color-gold-rgb), .55)}}@media (prefers-reduced-motion:reduce){.loading-title{animation:none}}.loading-subtitle{font-family:var(--font-body);color:var(--color-ui-text-muted);margin-bottom:var(--space-lg);font-size:14px}.loading-bar-container{background:var(--color-shadow);width:100%;height:6px;margin-bottom:var(--space-md);box-shadow:inset 0 1px 2px #0000008c, inset 0 -1px 0 rgba(var(--color-paper-border-rgb), .18);border-radius:3px;overflow:hidden}.loading-bar-fill{background:var(--color-gold);border-radius:3px;width:0%;height:100%;transition:width .3s ease-out;position:relative;overflow:hidden}.loading-bar-fill:after{content:"";background:linear-gradient(108deg, transparent 25%, rgba(var(--color-gold-rgb), .2) 42%, var(--color-shimmer-center) 50%, rgba(var(--color-gold-rgb), .2) 58%, transparent 75%);transform:var(--transform-shimmer-start);opacity:0;pointer-events:none;animation:6.667s ease-in-out 1.2s infinite loading-bar-shimmer;position:absolute;inset:0}@keyframes loading-bar-shimmer{0%,78%,to{transform:var(--transform-shimmer-start);opacity:0}85%{opacity:1}95%{transform:var(--transform-shimmer-end);opacity:1}98%{opacity:0}}@media (prefers-reduced-motion:reduce){.loading-bar-fill:after{animation:none}}.loading-status{font-family:var(--font-body);color:var(--color-ui-text-muted);font-size:12px}#context-loss-overlay{background:var(--color-ui-bg);z-index:2000;justify-content:center;align-items:center;display:none;position:fixed;inset:0}#context-loss-overlay.is-visible{display:flex}.context-loss-content{text-align:center;width:90%;max-width:320px}.context-loss-die{margin-bottom:var(--space-md);font-size:48px;animation:1.667s ease-in-out infinite context-loss-die-spin;display:inline-block}@keyframes context-loss-die-spin{0%{transform:rotate(0)scale(1)}25%{transform:rotate(90deg)scale(1.1)}50%{transform:rotate(180deg)scale(1)}75%{transform:rotate(270deg)scale(1.1)}to{transform:rotate(360deg)scale(1)}}@media (prefers-reduced-motion:reduce){.context-loss-die{animation:none}}.context-loss-title{font-family:var(--font-display);color:var(--color-gold);margin-bottom:var(--space-sm);text-shadow:0 2px 8px rgba(var(--color-gold-rgb), .3);font-size:32px}.context-loss-subtitle{font-family:var(--font-body);color:var(--color-ui-text-muted);font-size:14px}
