:root{--paper:#f5f2e9;--paper-deep:#eae5d7;--ink:#253b30;--muted:#72776a;--line:#d9dacb;--forest:#294e3b;--forest-dark:#1b3428;--rust:#b6603d;--rust-hover:#954b2d;--gold:#b68c48;--white:#fffcf5;--serif:Georgia,"Times New Roman",serif;--sans:"Segoe UI",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.6}body:before{content:"";pointer-events:none;z-index:10;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.6' d='M0 0h180v180H0z'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.45}a,button{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{border:0}button:focus-visible,a:focus-visible{outline-offset:5px;outline:3px solid #ad713a}svg{flex-shrink:0;width:22px;height:22px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);letter-spacing:-.04em;font-weight:400;line-height:1.12}h1{margin-bottom:22px;font-size:64px}h1 em{color:#6b7b55;font-weight:400}h2{font-size:37px}h3{font-size:23px}p{color:var(--muted)}fieldset{border:0;min-width:0;margin:0 0 25px;padding:0}legend{margin-bottom:10px;padding:0;font-size:13px;font-weight:600}::selection{color:var(--ink);background:#c4d0b6}.page-width{width:min(1280px,100% - 96px);margin-inline:auto}.skip-link{z-index:100;background:var(--paper);padding:10px 20px;position:fixed;top:-60px;left:20px}.skip-link:focus{top:10px}.network-bar{background:var(--ink);color:#d6ddc9;letter-spacing:.14em;justify-content:space-between;align-items:center;height:35px;padding:0 48px;font-size:9px;font-weight:600;display:flex}.network-bar a{align-items:center;gap:14px;display:flex}.network-bar a span{opacity:.35}.network-bar svg{width:12px;height:12px}.network-bar>span{opacity:.65;font-size:8px}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:104px;padding:14px 48px;display:flex}.wordmark{align-items:center;gap:12px;display:flex}.crest{border:1px solid var(--ink);border-radius:3px 3px 40% 40%;place-items:center;width:43px;height:50px;display:grid;transform:rotate(-3deg)}.crest svg{width:28px;height:28px}.wordmark>span:last-child{font-family:var(--serif);letter-spacing:.035em;font-size:29px;line-height:1}.wordmark small{font-family:var(--sans);letter-spacing:.22em;margin-top:10px;font-size:8px;font-weight:600;display:block}.site-header nav{align-items:center;gap:30px;display:flex}.site-header nav a{padding:12px 0;font-size:13px;position:relative}.site-header nav a[aria-current=page]:after{content:"";background:var(--rust);height:2px;position:absolute;bottom:1px;left:0;right:0}.site-header nav a:hover{color:var(--rust)}.login-button{border:1px solid #b9bfae;align-items:center;gap:10px;padding:10px 14px;font-size:11px;font-weight:600;display:flex}.login-button svg{width:14px;height:14px}.account-actions{align-items:center;gap:10px;display:flex}.member-pill{align-items:center;gap:7px;font-size:12px;display:flex}.member-pill svg{width:16px}.logout{font-size:10px!important}.eyebrow{font-family:var(--sans);letter-spacing:.16em;color:var(--ink);text-transform:uppercase;align-items:center;gap:10px;margin-bottom:18px;font-size:10px;font-weight:650;display:flex}.eyebrow>span:first-child:empty{background:var(--rust);width:6px;height:6px;transform:rotate(45deg)}.hero{grid-template-columns:.88fr 1.12fr;align-items:center;gap:45px;padding-top:65px;padding-bottom:57px;display:grid}.hero h1{letter-spacing:-.052em;margin-bottom:23px;font-size:clamp(43px,4.45vw,68px);line-height:1.1}.hero-lead{font-size:14px;line-height:1.85}.hero-buttons{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.button{letter-spacing:.015em;justify-content:center;align-items:center;gap:12px;min-height:47px;padding:13px 20px;font-size:12px;font-weight:600;transition:background .15s,transform .15s;display:inline-flex}.button svg{width:17px;height:17px}.button.primary{background:var(--rust);color:#fff8e8;box-shadow:0 2px #87422b}.button.primary:hover:not(:disabled){background:var(--rust-hover);transform:translateY(-1px)}.button.quiet{color:var(--ink);background:0 0;padding-inline:12px}.button.quiet:hover{background:var(--paper-deep)}.button.light{color:var(--forest-dark);background:#efe7ce;box-shadow:0 2px #142b21}.full-width{width:100%}.microcopy{align-items:center;gap:7px;margin-top:19px;margin-bottom:0;font-size:10px;display:flex}.status-dot{background:#6b8756;border-radius:50%;width:5px;height:5px;display:inline-block}.hero-art{background:#e6e5d2;border:1px solid #b6bda6;position:relative;transform:rotate(-1deg);box-shadow:10px 12px #e6e3d7}.map-topline{letter-spacing:.12em;background:#f5f1e0;border-bottom:1px solid #afb59e;justify-content:space-between;align-items:center;height:33px;padding:0 14px;font-size:7px;font-weight:600;display:flex}.map-topline>span:first-child{align-items:center;gap:6px;font-size:9px;display:flex}.map-topline svg{width:12px;height:12px}.preview-canvas{aspect-ratio:1000/640;width:100%;height:auto;display:block}.map-caption{letter-spacing:.08em;color:#5c6950;background:#f5f1e0;justify-content:space-between;padding:9px 12px;font-size:7px;display:flex}.map-caption span:first-child{align-items:center;gap:5px;display:flex}.map-caption i{background:#6c8a54;border-radius:50%;width:4px;height:4px}.map-seal{background:#efe8d5;border:2px solid #91856a;border-radius:50%;outline:4px solid #efe8d5;justify-content:center;align-items:center;gap:9px;width:85px;height:85px;display:flex;position:absolute;bottom:-24px;right:24px;transform:rotate(10deg);box-shadow:0 3px 8px #26382a20}.map-seal svg{width:26px;height:30px}.map-seal span{letter-spacing:.08em;font-size:8px;font-weight:700;line-height:1.5}.game-facts{border-block:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:25px;padding:23px 0;display:grid}.game-facts>div{border-right:1px solid var(--line);justify-content:center;align-items:center;gap:15px;display:flex}.game-facts>div:first-child{justify-content:flex-start}.game-facts>div:last-child{border:0}.game-facts svg{color:#7e866c;width:25px;height:30px}.game-facts span{color:var(--muted);font-size:10px}.game-facts strong{font-family:var(--serif);color:var(--ink);margin-bottom:3px;font-size:18px;font-weight:400;display:block}.home-lower{grid-template-columns:1.2fr 1fr;gap:60px;padding-block:47px;display:grid}.weekly-card{background:var(--forest-dark);color:#f1ecd9;min-height:295px;padding:30px 35px;display:flex;position:relative;overflow:hidden}.weekly-card>div:not(.weekly-art){z-index:1;max-width:350px;position:relative}.weekly-card .eyebrow{color:#bbc5a6;margin-bottom:14px;font-size:8px}.weekly-card h2{margin-bottom:13px;font-size:34px}.weekly-card p:not(.eyebrow){color:#b9c4af;max-width:315px;font-size:11px;line-height:1.8}.weekly-card .button{min-height:39px;padding:10px 14px;font-size:10px}.weekly-art{color:#d0d8ae;opacity:.08;bottom:-40px;right:-20px;transform:rotate(15deg);position:absolute!important}.weekly-art svg{stroke-width:.6px;width:250px;height:300px}.weekly-number{font-family:var(--serif);color:#97a084;font-size:22px;font-style:italic;position:absolute;top:24px;right:26px}.manifesto{padding:5px 0;position:relative}.manifesto .eyebrow{margin-bottom:16px;font-size:8px}.manifesto h2{margin-bottom:18px;font-size:34px}.manifesto>p:not(.eyebrow){max-width:350px;font-size:12px;line-height:1.8}.inline-link{padding:0;background:0 0;border-bottom:1px solid #b8beaa;align-items:center;gap:8px;padding-bottom:4px;font-size:11px;font-weight:600;display:inline-flex}.inline-link svg{width:15px;height:15px}.inline-link:hover{color:var(--rust)}.small-crest{color:#91957d;align-items:center;gap:10px;margin-top:25px;display:flex}.small-crest svg{width:31px;height:36px}.small-crest span{letter-spacing:.1em;font-size:7px}.small-crest strong{font-family:var(--serif);letter-spacing:0;color:#5a6b54;font-size:17px;font-weight:400}.tower-section{border-top:1px solid var(--line);padding-top:32px;padding-bottom:64px}.section-title{justify-content:space-between;align-items:center;gap:25px;margin-bottom:25px;display:flex}.section-title .eyebrow{margin-bottom:10px;font-size:8px}.section-title h2{margin-bottom:0;font-size:31px}.tower-lineup{border:1px solid var(--line);grid-template-columns:repeat(5,1fr);display:grid}.tower-card{border-right:1px solid var(--line);text-align:center;padding:12px 18px 20px;transition:background .2s;position:relative}.tower-card:last-child{border:0}.tower-card:hover{background:#ebe9da}.tower-index{color:#a0a38d;font-size:9px;position:absolute;top:10px;left:12px}.tower-art{width:100px;height:120px;display:block}.tower-card .tower-art{margin:0 auto 12px;transition:transform .2s}.tower-card:hover .tower-art{transform:translateY(-4px)}.tower-card h3{margin-bottom:6px;font-size:18px}.tower-card p{margin-bottom:0;font-size:9px}.site-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;padding:28px 48px;display:flex}.footer-mark{font-family:var(--serif);letter-spacing:.08em;align-items:center;gap:9px;font-size:17px;display:flex}.footer-mark svg{width:20px;height:23px}.site-footer p{font-family:var(--serif);color:#8a907e;margin-bottom:0;font-size:14px;font-style:italic}.site-footer>a:last-child{align-items:center;gap:9px;font-size:10px;display:flex}.site-footer>a:last-child svg{width:13px;height:13px}.content-page{min-height:65vh;padding-top:55px;padding-bottom:75px}.content-page>h1{font-size:56px}.page-lead{max-width:630px;margin-bottom:35px;font-size:16px;line-height:1.8}.how-grid{grid-template-columns:repeat(3,1fr);gap:35px;margin-block:40px;display:grid}.how-grid article{border-top:1px solid var(--line);padding-top:20px}.step-number{color:var(--rust);font-size:11px}.how-grid h3{margin:13px 0;font-size:25px}.how-grid p{font-size:13px;line-height:1.85}.field-note{background:#e7e9dc;border-left:3px solid #87916c;align-items:center;gap:18px;padding:22px 28px;display:flex}.field-note p{margin:0;font-size:13px}.field-note strong{color:var(--ink)}.field-note svg{color:#6c7d54}.handbook-towers{margin-top:50px}.handbook-towers article{border-bottom:1px solid var(--line);grid-template-columns:200px 1fr;gap:45px;padding:35px 0;scroll-margin-top:20px;display:grid}.handbook-art{background:radial-gradient(#dfe3cd,#0000 70%);place-items:center;display:grid}.handbook-art .tower-art{width:150px;height:180px}.handbook-towers .eyebrow{margin-bottom:10px;font-size:9px}.handbook-towers h2{margin-bottom:12px}.handbook-towers p{font-size:13px}.branch-columns{grid-template-columns:1fr 1fr;gap:20px;display:grid}.branch-columns>div{border-left:1px solid var(--line);padding-left:15px}.branch-columns strong{font-size:12px}.branch-columns p{margin-top:5px;margin-bottom:0;font-size:12px}.rules-grid{grid-template-columns:1fr 1fr;gap:50px;margin-block:50px;display:grid}.rules-grid h2{font-size:30px}.rules-grid p{font-size:13px;line-height:1.9}.narrow-page{text-align:center;max-width:660px}.narrow-page .eyebrow{justify-content:center}.narrow-page .inline-link{margin-top:25px}.login-crest{margin:0 auto 30px}.login-crest svg{width:55px;height:65px;color:var(--gold)}.notice{background:#e9eadd;border:1px solid #d1d5bf;margin-bottom:20px;padding:18px 20px;font-size:13px}.notice strong{margin-bottom:5px;display:block}.notice p{margin:0}.text-button{text-underline-offset:4px;background:0 0;padding:0;font-size:12px;text-decoration:underline}.error-message{color:#9b3e2b;background:#f1ded3;border-left:3px solid #b55b3e;padding:12px 15px;font-size:12px}.small-text{font-size:12px;line-height:1.8}.icon-button{border:1px solid var(--line);background:0 0;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.icon-button svg{width:17px;height:17px}.icon-button:hover:not(:disabled){background:var(--paper-deep)}.segmented{border:1px solid var(--line);background:#ecebdd;gap:3px;padding:3px;display:flex}.segmented button{background:0 0;flex:1;padding:9px 15px;font-size:12px}.segmented button[aria-pressed=true]{background:var(--white);color:var(--ink);font-weight:600;box-shadow:0 1px 4px #26382a12}.segmented button:hover{background:#f5f3e8}.empty-state{text-align:center;border:1px solid var(--line);background:#eeeee2;padding:65px 25px}.empty-state>svg{color:#899477;width:45px;height:45px;margin-bottom:20px}.empty-state h2{font-size:30px}.empty-state p{max-width:470px;margin-inline:auto;font-size:13px}.loading-state{text-align:center;color:var(--muted);padding:40px}.game-setup .section-title h1{margin-bottom:0;font-size:45px}.setup-grid{border:1px solid var(--line);grid-template-columns:1.3fr 1fr;margin-top:40px;display:grid}.setup-map{background:#394c2e;align-self:stretch;min-height:440px;position:relative;overflow:hidden}.setup-map .preview-canvas{object-fit:cover;opacity:.9;width:130%;height:100%;position:absolute;left:-15%}.setup-map:after{content:"";background:linear-gradient(#0000 35%,#162b1cde);position:absolute;inset:0}.setup-map-label{z-index:1;color:#f6f0db;position:absolute;bottom:32px;left:30px;right:20px}.setup-map-label .eyebrow{color:#c2cdab;font-size:8px}.setup-map-label h2{margin-bottom:10px;font-size:47px}.setup-map-label p{color:#c5ceb6;font-size:12px}.setup-map-label>div{letter-spacing:.09em;gap:15px;margin-top:20px;font-size:8px;display:flex}.setup-options{padding:30px}.option-buttons{gap:8px;display:grid}.option-buttons button{text-align:left;background:#ecebdd;border:1px solid #0000;align-items:center;gap:12px;padding:12px 15px;display:flex}.option-buttons button[aria-pressed=true]{background:#e3e9d8;border-color:#8c9e7a}.option-buttons svg{color:#697e56;width:21px;height:24px}.option-buttons span{font-size:12px;font-weight:600}.option-buttons small{color:var(--muted);margin-top:3px;font-size:10px;font-weight:400;display:block}.setup-options fieldset>.small-text{min-height:18px;margin:9px 0 0;font-size:10px}.resume-box{border-top:1px solid var(--line);align-items:center;gap:10px;padding:15px 0;font-size:11px;display:flex}.resume-box>svg{width:18px;height:18px}.resume-box>div{flex:1}.resume-box strong{font-size:11px;display:block}.resume-box span{color:var(--muted);font-size:9px}.resume-box .inline-link{font-size:10px}.guest-note{align-items:flex-start;gap:8px;margin:18px 0 0;font-size:10px;line-height:1.7;display:flex}.guest-note svg{width:15px;height:15px;margin-top:3px}.guest-note a{text-decoration:underline}.setup-options .notice{font-size:11px}.setup-options .notice .text-button{margin-top:5px;font-size:10px;display:block}.game-page{width:min(1500px,100% - 64px);padding-top:22px;padding-bottom:35px}.battle-title{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.battle-title>div{text-align:center}.battle-title h1{margin:0;font-size:29px}.battle-title .eyebrow{margin:0 0 5px;font-size:8px}.battle-title>.text-button{font-size:10px}.battle-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:19px;display:grid}.battle-main{min-width:0}.battle-stats{background:#edeedf;border:1px solid #ccd2bb;border-bottom:0;justify-content:space-between;gap:14px;padding:15px 22px;display:flex}.battle-stats>div{align-items:center;gap:10px;display:flex}.battle-stats svg{color:#84936b;width:22px;height:22px}.battle-stats>div:first-child svg{color:#b4755d}.battle-stats>div:nth-child(2) svg{color:#b19550}.battle-stats small{letter-spacing:.13em;color:var(--muted);font-size:7px;display:block}.battle-stats strong{font-family:var(--serif);font-variant-numeric:tabular-nums;font-size:25px;font-weight:400;line-height:1.2;display:block}.battle-stats em{font-family:var(--sans);color:#8f9780;font-size:11px;font-style:normal}.arena{isolation:isolate;background:#4a5c3b;border:1px solid #a5b096;position:relative;overflow:hidden}.arena canvas{aspect-ratio:1000/640;width:100%;height:auto;display:block}.slot-overlay{pointer-events:none;position:absolute;inset:0}.slot-hitbox{pointer-events:auto;background:0 0;border:1px solid #0000;border-radius:50%;width:4.6%;height:7.2%;position:absolute;transform:translate(-50%,-50%)}.slot-hitbox:focus-visible{outline-offset:5px;outline:3px solid #f0df90}.slot-hitbox:disabled{pointer-events:none}.build-banner{pointer-events:none;white-space:nowrap;color:#ecebd1;background:#1d362ad6;border:1px solid #97a5795c;align-items:center;gap:8px;padding:9px 17px;font-size:10px;display:flex;position:absolute;bottom:13px;left:50%;transform:translate(-50%);box-shadow:0 2px 6px #15231840}.build-banner svg{width:14px;height:14px}.battle-controls{background:#edeee0;border:1px solid #cbd1bd;border-top:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 15px;display:flex}.playback{align-items:center;gap:12px;display:flex}.playback .icon-button{border-color:#bfc7ae}.speed-buttons{gap:3px;display:flex}.speed-buttons button{background:0 0;width:28px;height:28px;font-size:10px}.speed-buttons button[aria-pressed=true]{background:var(--forest);color:var(--paper)}.time-readout{font-variant-numeric:tabular-nums;color:#6e7e5f;align-items:center;gap:5px;font-size:11px;display:flex}.time-readout svg{width:13px;height:13px}.wave-status{color:#788568;font-size:10px}.wave-button{min-height:37px;padding:8px 13px;font-size:10px}.wave-button svg{width:13px;height:13px}.battle-hint{color:#8e947f;text-align:center;margin-top:12px;font-size:9px}kbd{font-family:var(--sans);border:1px solid #cbd0be;border-radius:2px;margin:0 2px;padding:1px 3px;font-size:8px}.build-panel{border:1px solid var(--line);background:#efeee2;flex-direction:column;min-height:580px;padding:18px;display:flex}.build-panel-title{justify-content:space-between;align-items:center;min-height:28px;margin-bottom:10px;display:flex}.build-panel-title .eyebrow{margin:0;font-size:8px}.build-panel-title .icon-button{border:0;width:22px;height:22px}.build-panel-title svg{width:13px;height:13px}.build-panel h2{margin-bottom:10px;font-size:26px}.build-panel>.small-text{margin-bottom:20px;font-size:10px;line-height:1.8}.tower-shop{gap:6px;display:grid}.shop-tower{text-align:left;background:#f9f6ec;border:1px solid #d5d9c6;align-items:center;gap:4px;padding:7px 8px 7px 2px;transition:border-color .15s,background .15s;display:flex}.shop-tower:hover:not(:disabled){background:#e7edda;border-color:#8e9e77}.shop-tower .tower-art{width:45px;height:55px}.shop-tower>span{flex:1}.shop-tower strong{font-family:var(--serif);font-size:16px;font-weight:400}.shop-tower small{color:#7e8772;margin-top:3px;font-size:8px;display:block}.shop-tower b{color:#8f784a;align-items:center;gap:3px;font-size:10px;font-weight:500;display:flex}.shop-tower b svg{width:11px;height:11px}.panel-footer{color:#879276;align-items:center;gap:7px;margin-top:auto;padding-top:22px;font-size:8px;display:flex}.panel-footer svg{width:15px;height:18px}.panel-notice{color:#5b6d4c;background:#e5e8d7;margin-top:15px;padding:10px;font-size:10px}.selected-tower-art{background:radial-gradient(#d9dfc9,#0000 70%);place-items:center;height:118px;margin-bottom:10px;display:grid}.selected-tower-art .tower-art{width:98px;height:118px}.tower-level{letter-spacing:.11em;color:#8d7956;margin-bottom:12px;font-size:8px}.tower-stats{border-block:1px solid #d5d9c6;justify-content:space-between;margin:0 0 20px;padding:13px 0;display:flex}.tower-stats div{font-size:10px}.tower-stats dt{color:#7c886b;font-size:8px}.tower-stats dd{font-family:var(--serif);margin:4px 0 0;font-size:20px}.upgrade-options .eyebrow{margin-bottom:10px;font-size:7px}.upgrade-options>button{text-align:left;background:#f8f5e9;border:1px solid #cbd3bc;width:100%;margin-bottom:7px;padding:10px;display:block}.upgrade-options>button:hover:not(:disabled){background:#e0e8d2}.upgrade-options strong{justify-content:space-between;font-size:11px;font-weight:600;display:flex}.upgrade-options strong>span{color:#a18a53;align-items:center;gap:4px;font-size:10px;display:flex}.upgrade-options strong svg{width:11px;height:11px}.upgrade-options small{color:#808b73;margin-top:5px;font-size:9px;line-height:1.7;display:block}.sell-button{color:#898271;background:0 0;border-top:1px solid #d5d9c6;justify-content:space-between;margin-top:17px;padding:13px 0 0;font-size:10px;display:flex}.sell-button span{color:#8f784a}.max-level{color:#877d4a;align-items:center;gap:9px;padding:10px 0;font-size:11px;display:flex}.max-level svg{width:16px;height:16px}.arena-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:3;background:#152c23a8;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.pause-dialog,.results-dialog{text-align:center;background:#f2efdf;border:1px solid #c8c9ad;outline:5px solid #f2efdf60;width:min(440px,95%);padding:33px 40px;box-shadow:0 15px 70px #0e201a70}.pause-dialog>svg,.results-dialog>svg{color:#a38d54;width:40px;height:45px;margin-bottom:16px}.pause-dialog .eyebrow,.results-dialog .eyebrow{justify-content:center;margin-bottom:12px;font-size:8px}.pause-dialog h2,.results-dialog h2{margin-bottom:14px;font-size:33px}.pause-dialog p{font-size:11px}.pause-dialog .text-button{margin:18px auto 0;font-size:10px;display:block}.result-score{font-family:var(--serif);color:#a9723f;font-size:43px;line-height:1.1}.result-score small{font-family:var(--sans);font-size:11px}.result-numbers{border-block:1px solid #d5d6c0;justify-content:center;gap:35px;margin:20px 0;padding:15px 0;display:flex}.result-numbers span{color:#7e896f;font-size:8px}.result-numbers strong{font-family:var(--serif);color:var(--ink);font-size:22px;font-weight:400;display:block}.results-dialog .small-text{font-size:10px}.results-dialog .hero-buttons{justify-content:center}.results-dialog .button{min-height:38px;padding:10px 14px;font-size:10px}.filter-row{justify-content:space-between;align-items:center;gap:20px;margin:25px 0;display:flex}.filter-row .segmented{min-width:220px}.leaderboard-table{border-collapse:collapse;width:100%;font-size:13px}.leaderboard-table th{text-align:left;text-transform:uppercase;letter-spacing:.1em;color:#7c886e;border-block:1px solid var(--line);background:#eeeee1;padding:14px 18px;font-size:9px;font-weight:500}.leaderboard-table td{border-bottom:1px solid var(--line);padding:18px}.leaderboard-table td:first-child{font-family:var(--serif);color:#9c8250;font-size:21px}.leaderboard-table td:nth-child(3){font-family:var(--serif);font-size:22px}.leaderboard-table tbody tr:first-child{background:#ececdf}.table-wrap{overflow-x:auto}.status-badge{color:#546f3e;white-space:nowrap;background:#dfe8d3;padding:4px 8px;font-size:9px}.status-badge.loss{color:#887047;background:#ece2d3}.profile-stats{border:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-bottom:35px;display:grid}.profile-stats>div{border-right:1px solid var(--line);padding:23px}.profile-stats>div:last-child{border:0}.profile-stats small{letter-spacing:.1em;color:#80886f;font-size:9px;display:block}.profile-stats strong{font-family:var(--serif);margin-top:7px;font-size:31px;font-weight:400;display:block}.profile-stats svg{color:#87956e;width:21px;height:21px;margin-bottom:13px}.achievement-grid{grid-template-columns:repeat(3,1fr);gap:15px;margin:25px 0 45px;display:grid}.achievement-card{border:1px solid var(--line);background:#eeeee3;padding:20px}.achievement-card.earned{background:#e6ebda;border-color:#b5c29d}.achievement-card>svg{color:#a5ad95;width:28px;height:32px;margin-bottom:15px}.achievement-card.earned>svg{color:#a1844d}.achievement-card h3{margin-bottom:8px;font-size:23px}.achievement-card p{margin-bottom:15px;font-size:11px}.achievement-card progress{accent-color:#7a9160;background:#d7dcc9;border:0;width:100%;height:4px}.achievement-card progress::-webkit-progress-bar{background:#d7dcc9}.achievement-card progress::-webkit-progress-value{background:#7a9160}.achievement-card>small{color:#8b947a;margin-top:5px;font-size:8px;display:block}.profile-header{align-items:center;gap:24px;margin-bottom:35px;display:flex}.avatar-crest{width:78px;height:88px;font-family:var(--serif);color:#7b8a60;background:#e5e8d5;border:1px solid #acb398;border-radius:4px 4px 40% 40%;place-items:center;font-size:42px;display:grid}.profile-header h1{margin:0;font-size:46px}.profile-header .eyebrow{margin-bottom:9px}.profile-header>div:last-child>p:last-child{margin:8px 0 0;font-size:11px}.profile-section-title{align-items:center;gap:10px;margin:35px 0 20px;font-size:28px;display:flex}.profile-section-title svg{color:#87956e}.challenge-caption{max-width:650px;font-size:11px}.history-empty{border-block:1px solid var(--line);color:#829072;text-align:center;padding:25px;font-size:12px}@media (min-width:1500px){.hero{padding-top:80px;padding-bottom:70px}.hero h1{font-size:72px}.hero-lead{font-size:16px}.hero-art{margin-left:10px}.home-lower{padding-block:55px}.site-header,.network-bar,.site-footer{padding-inline:max(48px,50% - 640px)}}@media (max-width:1150px){.site-header{gap:15px;padding-inline:30px}.site-header nav{gap:20px}.login-button{gap:5px;font-size:0}.login-button svg{width:17px;height:17px}.login-button svg:last-child{display:none}.page-width{width:calc(100% - 64px)}.hero{gap:25px;padding-top:45px}.hero h1{font-size:49px}.hero-lead{font-size:13px}.hero .button{padding:12px 14px;font-size:10px}.hero .button.quiet{padding-inline:5px}.hero .eyebrow{font-size:8px}.map-topline>span:last-child{font-size:6px}.home-lower{gap:35px}.battle-layout{grid-template-columns:minmax(0,1fr) 250px;gap:12px}.game-page{width:calc(100% - 36px)}.build-panel{min-height:530px;padding:13px}.shop-tower strong{font-size:15px}.shop-tower .tower-art{width:39px;height:48px}.shop-tower small{font-size:7px}.battle-stats{padding:12px 14px}.battle-stats strong{font-size:23px}.battle-stats svg{width:17px;height:17px}.battle-controls{padding:9px}.wave-status{display:none}.time-readout{font-size:10px}.battle-hint{font-size:8px}.pause-dialog,.results-dialog{padding:20px 25px}.results-dialog>svg{width:27px;height:30px;margin-bottom:8px}.results-dialog h2{font-size:29px}.result-numbers{margin:12px 0;padding:10px 0}.setup-options{padding:23px}.setup-map-label h2{font-size:40px}}@media (max-width:850px){.network-bar{padding-inline:24px}.network-bar>span{display:none}.site-header{flex-wrap:wrap;gap:15px;min-height:110px;padding:18px 24px 0}.wordmark>span:last-child{font-size:25px}.crest{width:34px;height:42px}.wordmark small{font-size:7px}.site-header nav{border-top:1px solid var(--line);order:3;justify-content:center;gap:25px;width:100%}.site-header nav a{padding:10px 0;font-size:11px}.site-header nav a[aria-current=page]:after{bottom:0}.login-button{margin-left:auto;font-size:10px}.login-button svg:first-child{width:13px}.hero{grid-template-columns:1fr;gap:35px;padding-block:40px}.hero-copy{text-align:center}.hero-copy .eyebrow{justify-content:center}.hero h1{font-size:57px}.hero-lead{font-size:14px}.hero-buttons,.microcopy{justify-content:center}.hero-art{width:100%;max-width:650px;margin:auto}.map-topline>span:last-child{font-size:7px}.game-facts{gap:15px;padding:22px 0}.game-facts>div{gap:8px;justify-content:center!important}.game-facts svg{width:20px}.game-facts strong{font-size:16px}.game-facts span{font-size:8px}.home-lower{grid-template-columns:1fr 1fr;gap:25px}.weekly-card{padding:25px}.weekly-card h2,.manifesto h2{font-size:28px}.weekly-number{font-size:16px;top:12px;right:13px}.weekly-card p:not(.eyebrow){font-size:10px}.manifesto>p:not(.eyebrow){font-size:11px}.section-title h2{font-size:26px}.tower-card{padding:12px 9px 15px}.tower-card .tower-art{width:80px;height:96px}.tower-card h3{font-size:16px}.tower-card p{font-size:8px}.site-footer{padding:24px 32px}.site-footer p{display:none}.setup-grid{grid-template-columns:1fr}.setup-map{min-height:310px}.setup-map .preview-canvas{width:100%;height:auto;top:-40px;left:0}.setup-options{padding:28px}.option-buttons{grid-template-columns:1fr 1fr}.setup-grid{margin-top:25px}.game-setup .section-title{display:block}.game-setup .section-title .inline-link{margin-top:15px}.battle-layout{grid-template-columns:minmax(0,1fr) 220px;gap:8px}.battle-stats{gap:8px;padding:10px}.battle-stats svg{display:none}.battle-stats strong{font-size:21px}.battle-stats em{font-size:8px}.battle-stats small{font-size:6px}.build-panel{min-height:500px;padding:11px}.build-panel h2{font-size:23px}.build-panel>.small-text{margin-bottom:10px;font-size:9px}.shop-tower .tower-art{width:35px;height:45px}.shop-tower strong{font-size:14px}.shop-tower b{font-size:9px}.shop-tower b svg{display:none}.shop-tower small{font-size:7px}.battle-controls{flex-wrap:wrap}.playback{gap:5px}.wave-button{min-height:34px;padding:7px 9px;font-size:9px}.wave-button svg{display:none}.build-banner{padding:7px 10px;font-size:8px}.arena-overlay{padding:10px}.pause-dialog,.results-dialog{width:98%;padding:16px}.pause-dialog>svg,.results-dialog>svg{display:none}.pause-dialog h2,.results-dialog h2{font-size:25px}.pause-dialog .eyebrow,.results-dialog .eyebrow{font-size:6px}.result-score{font-size:29px}.result-numbers{margin:8px 0;padding:7px 0}.result-numbers strong{font-size:17px}.result-numbers span{font-size:6px}.results-dialog .small-text{margin-bottom:8px;font-size:8px}.results-dialog .button{min-height:32px;padding:7px 10px;font-size:9px}.battle-hint{font-size:7px}.how-grid{gap:20px}.how-grid h3{font-size:22px}.how-grid p{font-size:12px}.handbook-towers article{grid-template-columns:140px 1fr;gap:25px}.handbook-art .tower-art{width:120px;height:144px}.achievement-grid{gap:10px}.achievement-card{padding:16px}.achievement-card h3{font-size:21px}}@media (max-width:650px){.page-width{width:calc(100% - 36px)}.network-bar{padding-inline:18px;font-size:8px}.network-bar a{gap:10px}.site-header{padding-inline:18px}.wordmark>span:last-child{font-size:23px}.login-button{padding:9px;font-size:0}.hero{padding-top:33px;padding-bottom:35px}.hero h1{font-size:47px}.hero .eyebrow{font-size:7px}.hero-lead{font-size:13px}.hero-art{transform:none;box-shadow:5px 6px #e6e3d7}.map-topline{padding-inline:9px}.map-topline>span:last-child{font-size:5px}.map-caption{padding:8px;font-size:5px}.map-seal{gap:5px;width:62px;height:62px;bottom:-20px;right:18px}.map-seal svg{width:20px}.map-seal span{font-size:6px}.game-facts{grid-template-columns:1fr 1fr;gap:20px;padding-block:22px}.game-facts>div{padding-left:14px;justify-content:flex-start!important}.game-facts>div:nth-child(2){border:0}.game-facts strong{font-size:17px}.game-facts svg{width:23px;height:28px}.game-facts span{font-size:9px}.home-lower{grid-template-columns:1fr;gap:32px;padding-block:32px}.weekly-card{min-height:270px;padding:28px}.weekly-card h2{font-size:34px}.weekly-card p:not(.eyebrow){font-size:12px}.manifesto{padding-inline:10px}.manifesto h2{font-size:32px}.manifesto>p:not(.eyebrow){max-width:none;font-size:13px}.small-crest{opacity:.55;position:absolute;bottom:0;right:0}.tower-section{padding-top:27px;padding-bottom:36px}.section-title{flex-direction:column;align-items:flex-start;gap:13px}.section-title h2{font-size:29px}.tower-lineup{border:0;grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.tower-card{padding:12px;border:1px solid var(--line)!important}.tower-card:last-child{text-align:left;grid-column:1/-1;grid-template-columns:90px 1fr;align-items:center;padding:10px 30px;display:grid}.tower-card:last-child .tower-art{grid-row:1/3;width:70px;height:84px;margin:0}.tower-card:last-child h3{align-self:end}.tower-card:last-child p{align-self:start}.tower-card h3{font-size:19px}.tower-card p{font-size:10px}.tower-card .tower-art{width:90px;height:108px}.site-footer{padding:23px 18px}.footer-mark{gap:7px;font-size:14px}.site-footer>a:last-child{gap:4px;font-size:8px}.site-footer>a:last-child svg{width:11px}.content-page{padding-top:35px;padding-bottom:45px}.content-page>h1{font-size:43px}.page-lead{font-size:14px}.how-grid{grid-template-columns:1fr;gap:15px;margin-block:25px}.how-grid article{padding-top:15px}.how-grid h3{margin-left:14px;display:inline-block}.how-grid p{margin-bottom:5px;font-size:13px}.field-note{gap:12px;padding:18px}.field-note p{font-size:12px}.handbook-towers{margin-top:20px}.handbook-towers article{grid-template-columns:80px 1fr;gap:14px;padding:25px 0}.handbook-art{align-items:start;padding-top:30px}.handbook-art .tower-art{width:80px;height:96px}.handbook-towers h2{font-size:29px}.branch-columns{grid-template-columns:1fr;gap:12px}.rules-grid{grid-template-columns:1fr;gap:20px;margin-block:30px}.rules-grid h2{font-size:28px}.game-setup .section-title h1{font-size:36px}.setup-map{min-height:255px}.setup-map .preview-canvas{width:120%;height:100%;top:0;left:-10%}.setup-map-label{bottom:22px;left:23px}.setup-map-label h2{font-size:35px}.setup-map-label p{font-size:10px}.setup-map-label>div{gap:10px;font-size:7px}.setup-options{padding:20px}.option-buttons{grid-template-columns:1fr}.game-page{width:calc(100% - 20px);padding-top:16px}.battle-title{margin-bottom:15px}.battle-title h1{font-size:25px}.battle-title .eyebrow{font-size:6px}.battle-title>.text-button{font-size:9px}.battle-layout{grid-template-columns:1fr;gap:14px}.battle-stats{padding:12px 14px}.battle-stats svg{width:16px;height:16px;display:block}.battle-stats>div{gap:7px}.battle-stats strong{font-size:23px}.battle-stats small{font-size:6px}.battle-controls{flex-wrap:nowrap;padding:10px}.wave-button svg{width:12px;height:12px;display:block}.wave-button{padding:8px 12px;font-size:10px}.time-readout{font-size:10px}.build-banner{text-align:center;max-width:95%;font-size:8px;bottom:8px}.build-banner svg{width:12px;height:12px}.build-panel{min-height:0;padding:17px}.build-panel h2{font-size:27px}.build-panel>.small-text{font-size:11px}.tower-shop{grid-template-columns:1fr 1fr;gap:7px}.shop-tower{padding:7px}.shop-tower .tower-art{width:37px;height:46px}.shop-tower strong{font-size:15px}.shop-tower small{font-size:7px}.shop-tower b{font-size:9px}.shop-tower:last-child{grid-column:1/-1}.shop-tower:last-child b svg{display:block}.panel-footer{padding-top:14px;font-size:8px}.battle-hint{margin-bottom:0;font-size:7px}.selected-tower-art{float:left;display:none}.tower-stats{margin-bottom:15px}.upgrade-options{grid-template-columns:1fr 1fr;gap:8px;display:grid}.upgrade-options .eyebrow{grid-column:1/-1;margin:0}.upgrade-options strong{font-size:11px}.upgrade-options small{font-size:10px}.sell-button{font-size:12px}.arena-overlay{padding:12px}.pause-dialog,.results-dialog{max-width:350px;padding:16px 22px}.pause-dialog h2,.results-dialog h2{font-size:26px}.pause-dialog .eyebrow,.results-dialog .eyebrow{font-size:7px}.results-dialog .small-text{font-size:9px}.result-score{font-size:32px}.result-numbers strong{font-size:20px}.result-numbers span{font-size:7px}.results-dialog .hero-buttons{gap:8px}.results-dialog .button{padding:8px 11px;font-size:9px}.filter-row{flex-direction:column;align-items:stretch;gap:10px}.leaderboard-table{font-size:11px}.leaderboard-table th{padding:12px 9px;font-size:7px}.leaderboard-table td{padding:15px 9px}.leaderboard-table td:nth-child(3){font-size:19px}.leaderboard-table .optional-column{display:none}.profile-stats{grid-template-columns:1fr 1fr}.profile-stats>div{border-bottom:1px solid var(--line);padding:17px}.profile-stats>div:nth-child(2){border-right:0}.profile-stats>div:nth-child(3){border-bottom:0}.profile-stats strong{font-size:26px}.profile-stats small{font-size:8px}.profile-header{gap:17px}.profile-header h1{font-size:36px}.avatar-crest{width:60px;height:72px;font-size:33px}.profile-header .eyebrow{font-size:8px}.achievement-grid{grid-template-columns:1fr 1fr}.achievement-card{padding:15px}.achievement-card h3{font-size:21px}.achievement-card p{font-size:10px}.empty-state{padding:40px 20px}.empty-state h2{font-size:27px}.profile-section-title{font-size:25px}}@font-face{font-family:Orbitron;src:url(/fonts/orbitron-latin.woff2)format("woff2");font-style:normal;font-weight:400 900;font-display:swap}:root{--serif:Orbitron,"Bahnschrift","Segoe UI",sans-serif;--rust:#c26736;--rust-hover:#a64d23;--paper:#eeeee3;--paper-deep:#e0e3d4;--ink:#20372d}h1,h2,h3{letter-spacing:-.035em;font-weight:650}h1 em{color:var(--rust);font-style:normal;font-weight:750}.hero h1{text-transform:uppercase;letter-spacing:-.06em;font-size:clamp(38px,4.3vw,64px);font-weight:800;line-height:1.06}.hero-copy .eyebrow{color:#55764d;font-weight:750}.wordmark>span:last-child{font-family:var(--serif);letter-spacing:-.045em;font-weight:800}.wordmark small{letter-spacing:.18em;font-weight:700}.crest{background:#dfe6d0;border-width:2px;transform:none}.site-header nav a{font-family:var(--serif);font-size:14px;font-weight:650}.login-button{font-family:var(--serif);font-weight:650}.hero-art{border:2px solid #435b3d;transform:none;box-shadow:8px 8px #bcc8aa}.map-topline,.map-caption{color:#344f35;background:#dce4ca}.map-topline{border-color:#879b73;height:36px}.map-seal{color:#dbe5b5;background:#223c2b;border-color:#829365;border-radius:10%;outline-color:#dbe5b5;transform:rotate(6deg)}.map-seal span{font-family:var(--serif);font-weight:750}.button{font-family:var(--serif);text-transform:uppercase;letter-spacing:.035em;font-weight:750}.button.primary{border:1px solid #da945e;box-shadow:inset 0 1px #f7bc7870,0 3px #783b22}.button.primary:hover:not(:disabled){background:#d7783d}.button.light{font-weight:750;box-shadow:0 3px #0c2117}.login-button,.option-buttons button,.shop-tower,.upgrade-options>button{border-radius:2px}.eyebrow{letter-spacing:.13em}.game-facts strong{font-weight:700}.game-facts svg{stroke-width:1.9px;color:#577947}.weekly-card{background:linear-gradient(120deg,#1a3a2b,#2d5135);border:1px solid #59754b;box-shadow:4px 4px #c3cdb1}.weekly-card h2{letter-spacing:-.04em;font-size:32px;font-weight:750}.weekly-number{font-style:normal;font-weight:750}.manifesto h2{font-size:31px;font-weight:650}.small-crest strong{font-weight:750}.tower-card h3{font-size:16px;font-weight:650}.tower-card:hover{background:#dbe5cf;box-shadow:inset 0 -3px #769852}.tower-card p{font-size:10px}.tower-section .section-title h2{font-size:29px}.tower-index{font-family:var(--serif);font-weight:600}.footer-mark{letter-spacing:-.03em;font-weight:750}.site-footer p{font-size:12px;font-style:normal}.inline-link{font-family:var(--serif);font-size:12px;font-weight:650}.step-number{font-family:var(--serif);font-weight:700}.profile-stats strong,.battle-stats strong,.result-score{font-weight:650}.shop-tower strong{font-size:13px;font-weight:650}.build-panel h2{font-size:24px}.tower-level{font-weight:700}.tower-stats dd{font-size:19px;font-weight:600}.battle-stats strong{font-size:24px}.battle-title h1,.setup-map-label h2{text-transform:uppercase;font-weight:750}.setup-map-label .eyebrow{font-weight:700}.handbook-towers h2{font-size:30px}.achievement-card h3{font-size:21px}.leaderboard-table td:first-child,.leaderboard-table td:nth-child(3){font-weight:650}.avatar-crest{font-weight:750}.pause-dialog h2,.results-dialog h2{font-size:29px;font-weight:700}.build-panel{background:#e5e9d9}.battle-stats,.battle-controls{background:#dce3cf}.battle-controls .speed-buttons button{font-family:var(--serif);font-weight:700}.arena{border:2px solid #809569}.result-score{color:#bd6836}@media (min-width:900px){:is(body:has(.battle-layout) .network-bar,body:has(.battle-layout) .site-footer){display:none}body:has(.battle-layout) .site-header{min-height:64px;padding-block:8px}body:has(.battle-layout) .wordmark>span:last-child{font-size:23px}body:has(.battle-layout) .wordmark small{margin-top:6px;font-size:6px}body:has(.battle-layout) .crest{width:33px;height:39px}body:has(.battle-layout) .crest svg{width:23px;height:23px}body:has(.battle-layout) .game-page{padding-top:12px;padding-bottom:10px}body:has(.battle-layout) .battle-title{margin-bottom:12px}body:has(.battle-layout) .battle-layout{max-width:calc(156.25dvh - 169.75px);margin-inline:auto}body:has(.battle-layout) .build-panel{min-height:0;max-height:calc(100dvh - 159px);overflow-y:auto}body:has(.battle-layout) .battle-hint{margin-bottom:0}.build-panel-title{margin-bottom:6px}.selected-tower-art{height:100px}.selected-tower-art .tower-art{width:84px;height:100px}}@media (max-width:850px){.site-header nav a{font-size:12px}.hero h1{font-size:58px}.weekly-card h2,.manifesto h2{font-size:27px}.tower-card h3{font-size:14px}.tower-card p{font-size:8px}.shop-tower strong{font-size:12px}.battle-stats strong,.build-panel h2{font-size:21px}.pause-dialog h2,.results-dialog h2{font-size:24px}.achievement-card h3{font-size:19px}}@media (max-width:650px){.hero h1{font-size:clamp(32px,8.2vw,49px)}.hero-art{box-shadow:4px 4px #bcc8aa}.hero-lead{font-size:13px}.game-facts strong{font-size:16px}.weekly-card h2{font-size:30px}.manifesto h2{font-size:29px}.tower-section .section-title h2{font-size:26px}.tower-card h3{font-size:17px}.tower-card p{font-size:9px}.content-page>h1{font-size:37px}.game-setup .section-title h1,.setup-map-label h2{font-size:33px}.shop-tower strong{font-size:12px}.build-panel h2{font-size:24px}.battle-stats strong{font-size:21px}.battle-title h1,.pause-dialog h2,.results-dialog h2{font-size:23px}.achievement-card h3{font-size:18px}.handbook-towers h2{font-size:26px}.profile-header h1{font-size:32px}.site-header nav{gap:20px}.footer-mark{font-size:14px}.game-facts>div{padding-left:8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
:root{--paper:#101f27;--paper-deep:#152a33;--ink:#e4efe8;--muted:#a0b7b8;--line:#2e444b;--forest:#254e4d;--forest-dark:#10272b;--rust:#d38b45;--rust-hover:#e8a65c;--white:#172a33;--gold:#efc878}body{background:#101f27}body:before{opacity:.018}.site-header{background:#102028}.network-bar{color:#9cb7b4;background:#09171d}.crest{background:#1b373c;border-color:#6b958c}.wordmark{color:#e0eee4}.site-header nav a:hover{color:#eec780}.button.primary{color:#172429;background:linear-gradient(135deg,#f1ce83,#d99a4d);border:1px solid #f4d69b;box-shadow:0 3px #805830,inset 0 1px #ffefc0}.button.primary:hover:not(:disabled){background:#f4d28b}.hero h1 em{color:#e7bd6f}.hero-art{border-color:#42615d;box-shadow:8px 8px #09171c}.map-topline,.map-caption{color:#aec6b6;background:#1e353c}.map-seal{background:#1b3e40}.game-facts{background:#142932}.game-facts strong{color:#e4eee7}.hero-copy .eyebrow{color:#8bc8bb}.tower-card:hover{background:#1b353b;box-shadow:inset 0 -3px #cfaa69}.tower-card .tower-art{filter:drop-shadow(0 8px 9px #0005)}.weekly-card{background:linear-gradient(120deg,#173d3d,#1c323f);box-shadow:4px 4px #07161b}.button.light{background:#d6c693}.small-crest{color:#b2c8b4}.site-footer{background:#0c1b22}.hero .preview-canvas{aspect-ratio:1.56;width:100%;display:block}.field-note,.login-card,.achievement-card,.empty-state{background:#172e37;border-color:#36505a}.achievement-card.earned{background:#24413f;border-color:#5a8270}.profile-stats{background:#182d35}.profile-stats strong{color:#e6cb94}.leaderboard-table tr:nth-child(2n){background:#152b33}.leaderboard-table thead{background:#1c343c}.avatar-crest{color:#d4c891;background:#23433f}.segmented{background:#0f2028;border:1px solid #3c545a}.segmented button{color:#a7bfbe;background:0 0}.segmented button[aria-pressed=true]{color:#f0eee0;background:#355459}.small-text,.guest-note,.challenge-caption{color:#a0b6ba}.error-message{color:#ffc3ad}.notice{color:#ebd4a7;background:#2b3f43;border-color:#67827c}.inline-link:hover{color:#edca7b}.profile-stats>div,.leaderboard-table td,.leaderboard-table th{border-color:#30474f}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.war-lobby{isolation:isolate;background:#0b1c25;grid-template-columns:1fr 410px;align-items:center;gap:70px;min-height:calc(100dvh - 140px);padding:65px clamp(28px,6vw,100px);display:grid;position:relative;overflow:hidden}.lobby-landscape{z-index:-3;opacity:.6;position:absolute;inset:0}.lobby-landscape canvas{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.lobby-vignette{z-index:-2;background:linear-gradient(90deg,#0a1a22ed 0%,#0c1c2260 60%,#07161bd9),linear-gradient(#0000 50%,#0b1d27);position:absolute;inset:0}.lobby-copy h1{letter-spacing:-.05em;text-transform:uppercase;font-size:clamp(35px,4.2vw,66px);font-weight:800;line-height:1.12}.lobby-copy h1 em{color:#e9bd75}.lobby-copy>p:not(.eyebrow){color:#b5c9c8;font-size:16px;line-height:1.9}.lobby-copy .eyebrow{color:#a7d4c7;letter-spacing:.17em;font-size:10px}.lobby-features{flex-wrap:wrap;gap:18px;margin:30px 0 40px;display:flex}.lobby-features span{color:#b8cdca;align-items:center;gap:8px;font-size:11px;display:flex}.lobby-features svg{color:#d2b77f;width:18px;height:18px}.live-dot{background:#8cd5b9;border-radius:50%;width:6px;height:6px;display:inline-block;box-shadow:0 0 12px #8cd5b9}.mission-card{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:linear-gradient(150deg,#1c343ee8,#0e222bea);border:1px solid #4c666674;border-top:2px solid #e5c184;padding:28px;box-shadow:0 22px 70px #0007}.mission-heading{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.mission-heading .eyebrow{color:#a5c2bd;margin:0;font-size:9px}.version-tag{font-family:var(--serif);letter-spacing:.1em;color:#e2c185;border:1px solid #9c8b583f;padding:3px 7px;font-size:8px}.mission-card h2{margin-bottom:9px;font-size:25px;font-weight:750}.mission-card>p{margin-bottom:24px;font-size:12px}.mission-card legend{text-transform:uppercase;letter-spacing:.13em;color:#a5bfbc;font-size:10px}.mission-modes{gap:9px;display:grid}.mission-modes button{text-align:left;color:#b5c7c3;background:#10252e;border:1px solid #334d55;grid-template-columns:28px 1fr;column-gap:12px;padding:13px;display:grid}.mission-modes button[aria-pressed=true]{background:linear-gradient(110deg,#304a43,#1b353c);border-color:#bfa776;box-shadow:inset 3px 0 #e4c58b}.mission-modes svg{color:#d6be89;grid-row:1/3;align-self:center;width:22px}.mission-modes strong{font-family:var(--serif);font-size:12px}.mission-modes small{color:#93afaf;font-size:11px}.mission-card fieldset{margin-bottom:20px}.mission-card .guest-note{align-items:start;margin-top:21px;margin-bottom:18px;font-size:10px}.mission-card .guest-note svg{width:14px}.mission-footer{color:#92aead;border-top:1px solid #32474e;justify-content:space-between;gap:12px;padding-top:15px;font-size:9px;display:flex}.mission-footer span{align-items:center;gap:6px;display:flex}.mission-footer svg{width:12px;height:12px}.resume-box{background:#27403f;border-color:#56796d}.resume-box>div strong{color:#e4d3a8}.resume-box>div span{color:#acc4bd}.resume-box .inline-link{font-size:9px}body:has(.combat-shell){overflow:hidden}body:has(.combat-shell) .network-bar{display:none}body:has(.combat-shell) .site-header{display:none}body:has(.combat-shell) .site-footer{display:none}body:has(.combat-shell):before{display:none}.combat-shell{z-index:50;isolation:isolate;color:#ecf0e4;font-family:var(--sans);--hud:#112730ed;--hud-border:#6e9a8e45;--accent:#eac784;background:#0b202a;position:fixed;inset:0;overflow:hidden}.combat-shell:fullscreen{background:#0b202a;width:100%;height:100%}.world-canvas{touch-action:none;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.hero-control .world-canvas{cursor:crosshair}.build-control .world-canvas{cursor:default}.combat-vignette{pointer-events:none;background:linear-gradient(#071820b8,#0000 23% 70%,#081b25e6),linear-gradient(90deg,#07161c35,#0000 25% 70%,#081b2270);position:absolute;inset:0}.combat-top{background:linear-gradient(#0d2029f5,#10252bbd);border-bottom:1px solid #85aa8640;justify-content:space-between;align-items:center;gap:20px;height:80px;padding:12px 22px;display:flex;position:absolute;top:0;left:0;right:0;box-shadow:0 8px 25px #04121738}.combat-identity{align-items:center;gap:13px;min-width:222px;display:flex}.combat-identity>.hud-icon svg{transform:rotate(180deg)}.combat-identity .eyebrow{letter-spacing:.13em;color:#96b6b3;gap:10px;margin:0 0 5px;font-size:8px}.combat-identity .eyebrow i{background:#d2b174;width:3px;height:3px}.combat-identity strong{font:750 17px var(--serif);letter-spacing:-.03em;color:#e7e9d7}.combat-resources{justify-content:center;gap:clamp(20px,3vw,46px);display:flex}.resource{align-items:center;gap:10px;display:flex}.resource>svg{color:#8eb2ac;width:21px;height:21px}.resource span{flex-direction:column;display:flex}.resource small{color:#9bb5b3;letter-spacing:.15em;font-size:8px;font-weight:600}.resource b{font:650 21px var(--serif);font-variant-numeric:tabular-nums;line-height:1.4}.resource em{font:normal 11px var(--sans);color:#859f9e;margin-left:5px}.resource.health svg{color:#e8a99e}.resource.gold svg,.resource.gold b{color:#ebc374}.resource.danger{color:#ff9d86;animation:1s infinite alternate health-pulse}.combat-tools{align-items:center;gap:7px;display:flex}.hud-icon{color:#b7cdc5;background:#243c4199;border:1px solid #71968b44;place-items:center;width:35px;height:35px;padding:0;transition:background .15s;display:grid}.hud-icon:hover{color:#f9dfaa;background:#3a5655}.hud-icon svg{width:17px;height:17px}.hud-icon.small{background:0 0;width:25px;height:25px}.hud-icon.small svg{width:14px}.volume-control{place-items:center;width:48px;display:grid}.volume-control input{accent-color:#e6c285;width:100%;height:3px}.battle-status{pointer-events:none;flex-direction:column;gap:6px;display:flex;position:absolute;top:98px;left:25px}.phase-indicator{font-family:var(--serif);letter-spacing:.07em;color:#c7dbc1;align-items:center;gap:9px;font-size:9px;font-weight:700;display:flex}.phase-indicator i{background:#9ed2a5;border-radius:50%;width:5px;height:5px;box-shadow:0 0 10px #90c5a3}.phase-indicator.in-wave{color:#f1c994}.phase-indicator.in-wave i{background:#f6b56b;box-shadow:0 0 10px #f6b56b}.battle-status>span:last-child{color:#a2b6b8;padding-left:14px;font-size:9px}.intel-panel{border:1px solid var(--hud-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);scrollbar-width:thin;scrollbar-color:#55716a transparent;background:linear-gradient(145deg,#18333bd9,#10232ce8);width:263px;padding:17px 18px;position:absolute;top:99px;bottom:172px;right:20px;overflow:auto;box-shadow:0 15px 35px #00101a4a}.intel-heading{justify-content:space-between;align-items:center;min-height:24px;margin-bottom:14px;display:flex}.intel-heading .eyebrow{color:#9ab9b3;letter-spacing:.17em;margin:0;font-size:8px;font-weight:700}.intel-panel h2{font:700 21px var(--serif);color:#edf0e4;letter-spacing:-.025em;margin:0 0 10px}.intel-panel p{color:#a6c0bc;font-size:11px;line-height:1.6}.intel-art{justify-content:space-around;align-items:center;margin:-12px -8px 7px;display:flex}.intel-art .tower-art{filter:drop-shadow(0 4px 15px #e1a96818);width:80px;height:95px}.damage-badge{letter-spacing:.05em;text-transform:uppercase;color:#e0c88f;border-left:2px solid #b79d66;max-width:90px;padding:8px;font-size:9px;font-weight:650}.matchup{background:#163034;border-left:2px solid;margin:8px 0;padding:5px 8px}.matchup.good{border-color:#80cba8}.matchup.weak{background:#2b3533;border-color:#c8a572}.matchup span{letter-spacing:.12em;color:#97b4a9;font-size:7px;display:block}.matchup strong{color:#d5e0cf;font-size:10px;font-weight:500}.matchup.weak span{color:#b7a387}.combat-stat-grid{border-block:1px solid #4b6b6445;justify-content:space-between;gap:10px;margin:18px 0;padding:13px 0;display:flex}.combat-stat-grid span{letter-spacing:.08em;color:#8caeab;flex-direction:column;gap:4px;font-size:7px;display:flex}.combat-stat-grid b{font:600 17px var(--serif);color:#d6e5d8}.tower-level{color:#d3b47f;letter-spacing:.09em;margin-bottom:12px;font-size:8px}.combat-upgrades{gap:7px;display:grid}.combat-upgrades button{text-align:left;background:#253e3c;border:1px solid #5a75634d;justify-content:space-between;align-items:center;gap:9px;padding:10px;display:flex}.combat-upgrades strong{font:600 10px var(--serif);color:#dddcc0;margin-bottom:4px;display:block}.combat-upgrades small{color:#abc0b2;font-size:9px;line-height:1.45;display:block}.combat-upgrades b{white-space:nowrap;color:#e6c079;font-size:10px}.combat-upgrades button:hover{background:#365047}.combat-shell .sell-button{color:#a6b9b3;background:0 0;border-color:#55736d66;margin-top:14px;padding:9px 0;font-size:11px}.combat-shell .sell-button span{color:#d9c389}.placement-guide{align-items:start;gap:9px;margin:15px 0;display:flex}.placement-guide .live-dot{flex-shrink:0;margin-top:5px}.placement-guide p{margin:0;font-size:10px}.placement-guide strong{color:#a9d8b2}.tactical-tip{border-left:2px solid #ae965d;margin-top:16px;padding-left:10px;font-size:10px!important}.next-wave{border-top:1px solid #6f8f7345;margin-top:20px;padding-top:15px}.next-wave>div:first-child{justify-content:space-between;align-items:center;gap:7px;display:flex}.next-wave .eyebrow{letter-spacing:.08em;color:#c8d1b8;margin:0;font-size:8px}.next-wave>div>span:last-child{color:#9bb5ae;font-size:8px}.enemy-chips{flex-wrap:wrap;gap:7px;margin-top:9px;display:flex}.enemy-chips>span{background:#0d242c;border:1px solid #45635b80;width:39px;height:39px;display:block;position:relative}.enemy-chips .enemy-art{width:35px;height:35px}.enemy-chips b{color:#e2d4aa;font:600 9px var(--sans);text-align:center;background:#213b3d;border:1px solid #526859;min-width:15px;padding:0 3px;position:absolute;bottom:-3px;right:-4px}.enemy-art{flex-shrink:0;width:48px;height:48px}.current-wave>.eyebrow{color:#a6c1b2;margin:20px 0 9px;font-size:8px}.enemy-row{border-bottom:1px solid #45625840;align-items:center;gap:8px;padding:9px 0;display:flex}.enemy-row>div{flex:1;min-width:0}.enemy-row strong{color:#e0ddc7;justify-content:space-between;gap:6px;font-size:11px;display:flex}.enemy-row strong b{color:#d1b779;font-family:var(--serif);font-size:10px}.enemy-row small{color:#bdaf92;font-size:9px;display:block}.enemy-row>div>span{color:#8cb69f;font-size:8px;display:block}.weapon-showcase{background:radial-gradient(#4d677046,#0000 70%);justify-content:center;align-items:center;margin:5px 0 10px;display:flex;position:relative}.weapon-showcase .weapon-art{width:170px;height:108px}.level-tag{color:#cdb67f;border:1px solid #8978516b;padding:3px 7px;font-size:8px;position:absolute;bottom:8px;right:0}.control-guide{color:#a1bab2;flex-direction:column;gap:10px;margin-top:20px;font-size:9px;display:flex}.control-guide span{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.control-guide svg{color:#c9b783;width:13px;height:13px}.combat-shell kbd,.mission-footer kbd{color:#d2dbbf;font:9px var(--sans);text-align:center;background:#314b4b;border:1px solid #6d8e7970;border-bottom:2px solid #657964;border-radius:2px;min-width:17px;padding:0 4px}.combat-bottom{grid-template-columns:115px minmax(0,1fr) 208px;align-items:end;gap:15px;display:grid;position:absolute;bottom:16px;left:20px;right:20px}.mode-switch{gap:7px;padding-bottom:2px;display:grid}.mode-switch button{color:#96b6b2;text-align:left;background:#102932ee;border:1px solid #57756777;align-items:center;gap:7px;height:51px;padding:8px 9px;display:flex}.mode-switch button[aria-pressed=true]{color:#f1d299;background:#31463ded;border-color:#d4b67a;box-shadow:inset 3px 0 #e7c17d}.mode-switch svg{width:17px;height:17px}.mode-switch span{font:650 8px var(--serif);letter-spacing:.03em}.mode-switch kbd{min-width:12px;margin-left:auto;padding:0 2px;font-size:8px}.arsenal{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#102730f2;border:1px solid #6b8e7559;min-width:0;padding:11px 12px 12px;box-shadow:0 6px 30px #0003}.arsenal-label{letter-spacing:.1em;color:#b6c6b3;justify-content:space-between;gap:10px;margin:0 2px 9px;font-size:8px;display:flex}.arsenal-label span:last-child{letter-spacing:0;color:#7f9e9c;font-size:8px}.arsenal-cards{gap:7px;display:flex}.arsenal-card{text-align:left;color:#d4e1cf;background:#1d363c;border:1px solid #49675c7d;flex:1;align-items:center;gap:3px;min-width:0;padding:6px;transition:background .15s,transform .15s;display:flex;position:relative}.arsenal-card:hover:not(:disabled){background:#304b46;border-color:#b0af7f;transform:translateY(-3px)}.arsenal-card.chosen{background:linear-gradient(120deg,#405044,#263e3e);border-color:#e4bd72;box-shadow:inset 0 -2px #e4bd72}.arsenal-card>.tower-art{flex-shrink:0;width:44px;height:65px}.arsenal-card>span{min-width:0}.arsenal-card strong{font:600 clamp(8px,.75vw,11px) var(--serif);letter-spacing:-.04em;white-space:nowrap;margin-bottom:5px;display:block}.arsenal-card small{color:#94b2ac;min-height:22px;font-size:8px;line-height:1.3;display:block}.arsenal-card b{font:600 10px var(--serif);color:#e4c479;align-items:center;gap:4px;display:flex}.arsenal-card b svg{width:11px;height:11px}.arsenal-card b.unaffordable{color:#bf8a78}.arsenal-card.weapon-card{gap:9px}.weapon-card .weapon-art{width:69px;height:57px}.weapon-card small{min-height:17px}.wave-control{padding:0 0 1px}.speed-control{justify-content:flex-end;align-items:center;gap:5px;margin-bottom:10px;display:flex}.speed-control>span{color:#9eb5ac;letter-spacing:.12em;margin-right:6px;font-size:7px}.speed-control button{color:#a6bca8;font:600 10px var(--serif);background:#142e37;border:1px solid #708c6b65;padding:4px 9px}.speed-control button[aria-pressed=true]{color:#e7d2a2;background:#3d5145;border-color:#b5ab77}.wave-control>.button{letter-spacing:.01em;white-space:nowrap;gap:8px;width:100%;height:51px;padding:12px;font-size:10px}.wave-control>small{text-align:right;color:#9fb4a8;margin-top:8px;font-size:8px;display:block}.wave-control>small kbd{font-size:8px}.combat-shell .button{min-height:42px;font-size:10px}.combat-shell .button.primary:disabled{box-shadow:none;color:#bac8b4;opacity:.8;background:#2b3d3a;border-color:#5b72604d}.combat-shell .button.full-width{justify-content:center;gap:12px;padding:10px}.combat-shell .button.full-width>span{color:#1e3733;margin-left:auto}.combat-notice{color:#e6d3ae;z-index:4;background:#132c35f5;border:1px solid #c7ac726b;align-items:center;gap:10px;width:max-content;max-width:min(580px,70vw);padding:11px 14px;font-size:11px;display:flex;position:absolute;bottom:167px;left:50%;transform:translate(-50%);box-shadow:0 5px 20px #0005}.combat-notice>svg{width:16px;height:16px}.combat-notice button{color:#abc1b4;background:0 0;margin-left:10px;padding:0;display:flex}.combat-notice button svg{width:15px;height:15px}.combat-modal{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:20;background:#06131ac9;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.combat-modal>div{text-align:center;background:linear-gradient(145deg,#24414a,#122a34);border:1px solid #64867766;border-top:2px solid #e0bf80;width:min(420px,100%);padding:35px;box-shadow:0 20px 90px #0006}.combat-modal>div>.eyebrow{color:#b8c8b4;letter-spacing:.12em;justify-content:center;margin-bottom:18px;font-size:8px}.combat-modal>div>svg{color:#ddbf80;width:48px;height:48px;margin-bottom:20px}.combat-modal h2{font:700 27px var(--serif);letter-spacing:-.045em;margin-bottom:16px}.combat-modal p{color:#a9c0b7;font-size:12px}.combat-modal .text-button{color:#adbdac;margin-top:20px;font-size:11px}.combat-modal .inline-link{color:#d2bf8f;margin-top:15px;font-size:10px;display:inline-flex}.combat-modal .result-score{color:#e9c47d;font-size:40px}.combat-modal .result-numbers{border-color:#59776963}.combat-modal .result-numbers strong{color:#dde6cf}.combat-modal .result-numbers span{color:#a1b3a4}.combat-modal .result-numbers+p{font-size:10px}.combat-shell .max-level{color:#d8c386;align-items:center;gap:8px;font-size:11px;display:flex}@keyframes health-pulse{to{filter:drop-shadow(0 0 9px #e97d6a88)}}@media (min-width:1600px){.intel-panel{width:285px;padding:22px;bottom:189px;right:28px}.combat-bottom{grid-template-columns:140px minmax(0,1fr) 240px;gap:20px;bottom:24px;left:28px;right:28px}.arsenal-card>.tower-art{width:60px;height:79px}.arsenal-card strong{font-size:12px}.arsenal-card small{font-size:9px}.arsenal-card b{font-size:12px}.mode-switch button{height:58px}.mode-switch span{font-size:9px}.arsenal{padding:13px 15px}.wave-control>.button{height:59px;font-size:12px}.intel-panel h2{font-size:24px}.intel-panel p{font-size:12px}.combat-notice{bottom:190px}}@media (max-width:1100px){.combat-top{gap:10px;padding:10px 15px}.combat-identity{min-width:180px}.combat-identity strong{font-size:14px}.combat-identity .eyebrow{font-size:7px}.combat-resources{gap:18px}.resource{gap:7px}.resource b{font-size:18px}.resource>svg{width:17px}.resource.score,.volume-control{display:none}.intel-panel{width:225px;padding:14px;bottom:163px;right:14px}.intel-panel h2{font-size:18px}.intel-art .tower-art{width:65px;height:80px}.combat-bottom{grid-template-columns:100px minmax(0,1fr) 170px;gap:9px;left:14px;right:14px}.mode-switch button{gap:5px;height:47px;padding:7px}.mode-switch span{font-size:7px}.mode-switch kbd{display:none}.arsenal-card{flex-direction:column;align-items:flex-start;padding:6px}.arsenal-card>.tower-art{opacity:.8;width:34px;height:40px;position:absolute;top:3px;right:3px}.arsenal-card>span{z-index:1;width:100%;padding-top:34px}.arsenal-card strong{font-size:8px}.arsenal-card small{display:none}.arsenal-card b{margin-top:7px;font-size:9px}.arsenal-cards{gap:5px}.arsenal{padding:8px}.arsenal-label{margin-bottom:7px;font-size:7px}.arsenal-label span:last-child{display:none}.weapon-card .weapon-art{width:44px;height:40px;position:absolute;top:2px;right:3px}.combat-bottom .wave-control>.button{height:46px;font-size:8px}.combat-tools{gap:5px}.war-lobby{grid-template-columns:1fr 360px;gap:35px;padding:45px 35px}.lobby-copy h1{font-size:43px}.lobby-features{flex-direction:column;gap:12px}.combat-notice{bottom:154px}.combat-stat-grid{margin:13px 0;padding:9px 0}.next-wave{margin-top:15px;padding-top:12px}}@media (max-height:730px) and (min-width:701px){.combat-top{height:65px}.battle-status,.intel-panel{top:80px}.intel-art .tower-art{width:60px;height:65px}.intel-panel h2{font-size:17px}.intel-panel p{font-size:10px}.intel-heading{margin-bottom:8px}.matchup{margin:5px 0;padding-block:3px}.combat-stat-grid{margin:10px 0;padding:8px 0}.combat-upgrades small{display:none}.enemy-row{padding:4px 0}.enemy-art{width:36px;height:36px}.next-wave{margin-top:12px}.weapon-showcase .weapon-art{width:120px;height:65px}.control-guide{gap:7px;margin-top:12px}.war-lobby{padding-block:25px}.mission-card{padding:22px}.mission-card fieldset{margin-bottom:14px}}@media (max-width:700px){.war-lobby{flex-direction:column;align-items:stretch;gap:25px;padding:30px 20px;display:flex}.lobby-copy h1{font-size:35px}.lobby-copy>p:not(.eyebrow){font-size:13px}.lobby-features{flex-direction:row;gap:12px;margin:18px 0}.lobby-features span{font-size:9px}.lobby-copy>.inline-link{display:none}.mission-card{padding:22px}.combat-top{gap:10px;height:66px;padding:8px 10px}.combat-identity{gap:7px;min-width:0}.combat-identity strong{font-size:10px}.combat-identity .eyebrow{gap:4px;font-size:6px}.combat-identity .eyebrow i{display:none}.combat-identity>.hud-icon{width:26px;height:28px}.combat-resources{gap:12px}.resource b{font-size:14px}.resource small{font-size:6px}.resource>svg{display:none}.resource em{margin-left:2px;font-size:8px}.combat-tools{gap:3px}.combat-tools .hud-icon{width:27px;height:29px}.combat-tools .hud-icon svg{width:13px}.battle-status{top:79px;left:12px}.phase-indicator,.battle-status>span:last-child{font-size:7px}.intel-panel{opacity:.97;width:167px;max-height:48vh;padding:9px;top:80px;bottom:181px;right:9px}.intel-heading .eyebrow{font-size:6px}.intel-heading{min-height:16px;margin-bottom:7px}.intel-panel h2{font-size:13px}.intel-panel p{margin-bottom:9px;font-size:9px}.intel-art{margin:0 0 4px}.intel-art .tower-art{width:47px;height:51px}.damage-badge{max-width:69px;padding:5px;font-size:7px}.matchup span{font-size:6px}.matchup strong{font-size:8px}.matchup{margin:5px 0;padding:3px 6px}.combat-stat-grid{gap:5px;margin:9px 0;padding:7px 0}.combat-stat-grid b{font-size:12px}.combat-stat-grid span{font-size:6px}.placement-guide p{font-size:8px}.placement-guide{gap:6px;margin:9px 0}.placement-guide .live-dot{width:4px;height:4px}.next-wave{margin-top:10px;padding-top:9px}.next-wave>div:first-child{flex-direction:column;align-items:start;gap:4px}.next-wave .eyebrow{font-size:7px}.enemy-chips{gap:5px}.enemy-chips>span{width:26px;height:26px}.enemy-chips .enemy-art{width:25px;height:25px}.enemy-chips b{min-width:12px;font-size:8px}.enemy-row .enemy-art{width:28px;height:28px}.enemy-row{gap:5px;padding:6px 0}.enemy-row strong{font-size:9px}.enemy-row small,.enemy-row>div>span{font-size:7px}.intel-panel>.current-wave>.eyebrow{font-size:6px}.combat-bottom{grid-template-columns:1fr 150px;gap:7px;bottom:10px;left:9px;right:9px}.mode-switch{grid-area:1/1;align-self:end;gap:5px;padding:0;display:flex}.mode-switch button{flex:1;justify-content:center;height:32px;padding:5px}.mode-switch svg{width:13px}.mode-switch span{font-size:7px}.arsenal{grid-area:2/1/auto/-1;padding:7px}.arsenal-label{margin:0 2px 5px;font-size:6px}.arsenal-cards{gap:4px}.arsenal-card{min-height:73px;padding:4px}.arsenal-card strong{letter-spacing:-.04em;font-size:6.5px}.arsenal-card>.tower-art{width:29px;height:35px;top:1px;right:2px}.arsenal-card>span{padding-top:30px}.arsenal-card b{margin-top:4px;font-size:8px}.arsenal-card b svg{width:9px}.wave-control{grid-area:1/2;padding:0}.wave-control .speed-control{background:#102730cc;margin:0;padding:5px;position:absolute;bottom:154px;left:0}.speed-control>span{display:none}.speed-control button{padding:3px 7px;font-size:8px}.combat-bottom .wave-control>.button{height:32px;min-height:32px;padding:6px;font-size:7px}.wave-control>small{display:none}.combat-notice{max-width:75vw;padding:8px;font-size:9px;bottom:174px;left:10px;transform:none}.weapon-card .weapon-art{width:52px;height:35px}.weapon-card strong{font-size:8px}.weapon-showcase .weapon-art{width:90px;height:55px}.control-guide{gap:6px;margin-top:10px;font-size:7px}.control-guide kbd{min-width:12px;padding:0 3px;font-size:7px}.tactical-tip{display:none}.combat-shell .button.full-width{min-height:32px;padding:7px;font-size:7px}.combat-upgrades button{gap:5px;padding:6px}.combat-upgrades strong{font-size:8px}.combat-upgrades small{display:none}.combat-upgrades b{font-size:8px}.combat-shell .sell-button{margin-top:8px;padding:5px 0;font-size:9px}.tower-level{margin-bottom:7px;font-size:7px}.combat-modal>div{padding:25px}.combat-modal h2{font-size:22px}.combat-modal .button.full-width{height:42px;font-size:10px}.hero-control .intel-panel{max-height:42vh}}@media (prefers-reduced-motion:reduce){.resource.danger{animation:none}}.intel-panel{flex-direction:column;display:flex;overflow:hidden}.intel-heading{flex-shrink:0}.intel-scroll{scrollbar-width:thin;scrollbar-color:#55716a transparent;flex:1;min-height:0;padding-right:3px;overflow:auto}.intel-panel>.next-wave{flex-shrink:0;margin-top:10px;padding-top:10px}.active-threats{pointer-events:none;gap:5px;display:flex;position:absolute;top:147px;left:25px}.active-threats>span{background:#0d252ed9;border:1px solid #57736870;grid-template-columns:26px 1fr;align-items:center;gap:0 3px;padding:3px 7px 3px 2px;display:grid}.active-threats .enemy-art{grid-row:1/3;width:27px;height:30px}.active-threats b{font:650 10px var(--serif);color:#e6d2a7}.active-threats small{color:#a8bfb4;font-size:7px}.preview-fallback{color:#adc8c5;text-align:center;pointer-events:none;font-size:12px;position:absolute;inset:35% 15%}@media (max-height:730px) and (min-width:701px){.active-threats{top:122px}.intel-scroll .control-guide{font-size:8px}.intel-scroll .weapon-showcase .weapon-art{height:53px}}@media (max-width:700px){.active-threats{flex-wrap:wrap;max-width:calc(100% - 195px);top:120px;left:12px}.active-threats small{display:none}.active-threats .enemy-art{width:20px;height:23px}.active-threats>span{grid-template-columns:20px 1fr;padding:2px 4px}.active-threats b{font-size:8px}.intel-panel>.next-wave{margin-top:7px;padding-top:7px}.intel-scroll{padding-right:1px}}.intel-scroll{overflow-x:hidden}.intel-scroll .intel-art{margin:0 0 7px}.intel-scroll .damage-badge{overflow-wrap:anywhere}.intel-scroll .tower-intel,.intel-scroll .hero-loadout{min-width:0}.hero-tabs{background:#0d222bc9;border:1px solid #557d744f;flex-shrink:0;gap:3px;margin-bottom:13px;padding:3px;display:flex}.hero-tabs button{color:#9ebbb5;font:600 9px var(--serif);background:0 0;flex:1;justify-content:center;align-items:center;gap:5px;padding:8px 4px;display:flex}.hero-tabs button[aria-selected=true]{color:#f2dba8;background:#38534b;box-shadow:inset 0 -2px #dfbc77}.hero-tabs button svg{width:12px;height:12px}.hero-tabs button b{font:9px var(--sans);color:#b0c8b3}.talent-art{flex-shrink:0;width:32px;height:32px}.hero-perks{color:#b9ccbb;flex-wrap:wrap;gap:5px;margin:-6px 0 13px;font-size:8px;display:flex}.hero-perks span{background:#274039;border:1px solid #6c94773b;padding:2px 6px}.talent-invite{text-align:left;color:#d9d4ad;background:linear-gradient(115deg,#294841,#1b363b);border:1px solid #9db58c55;align-items:center;gap:9px;width:100%;margin-top:12px;padding:12px 9px;display:flex}.talent-invite .talent-art{color:#ebca83;width:24px;height:24px}.talent-invite strong{font:600 9px var(--serif);margin-bottom:4px;display:block}.talent-invite small{color:#a3c0b0;font-size:9px;line-height:1.4;display:block}.talent-invite>svg:last-child{width:13px;height:13px;margin-left:auto}.talent-invite:hover{background:#37574b}.intel-panel .talent-explainer{color:#a4bcb5;margin:0 0 12px;font-size:10px;line-height:1.5}.hero-talents{gap:9px;display:grid}.talent-card{text-align:left;border:1px solid #567b6d73;border-left:2px solid var(--talent-color);color:#d5e4d8;background:linear-gradient(110deg,#213e40,#182e37);align-items:center;gap:10px;width:100%;min-height:78px;padding:11px 8px;display:flex}.talent-card:hover:not(:disabled){border-color:var(--talent-color);background:#35504c;box-shadow:0 0 20px #80c5b11a}.talent-card>.talent-art{color:var(--talent-color);filter:drop-shadow(0 0 7px #ade7c71c);width:27px;height:32px}.talent-copy{flex:1;min-width:0}.talent-copy>strong{font:650 11px var(--serif);color:#e1e4d5;letter-spacing:-.035em;margin-bottom:5px;display:block}.talent-copy>small{color:#a9c2b6;font-size:9px;line-height:1.4;display:block}.talent-levels{align-items:center;gap:4px;margin-top:8px;display:flex}.talent-levels i{background:#4b625b;width:15px;height:3px}.talent-levels i.earned{background:var(--talent-color);box-shadow:0 0 6px #b8e3ac2b}.talent-levels em{font:8px var(--sans);color:#b2c2b1;margin-left:4px}.talent-cost{flex-direction:column;flex-shrink:0;align-items:center;gap:1px;min-width:26px;display:flex}.talent-cost b{font:600 11px var(--serif);color:#e6c780}.talent-cost>small{font:6px var(--sans);letter-spacing:.1em;color:#c2b285}.talent-cost svg{width:13px;height:13px;color:var(--talent-color);margin-top:3px}.talent-card:disabled{opacity:.6}.talent-card[data-max=true]{opacity:1;background:#29423b;border-color:#73977975}.talent-card[data-max=true] .talent-cost svg{width:19px;height:19px}.intel-panel .talent-combo{color:#9bb9ac;gap:8px;margin:8px 0 0;padding:10px 0;font-size:9px;line-height:1.5;display:flex}.talent-combo svg{color:#d6b67e;flex-shrink:0;width:16px;height:16px}.talent-combo strong{color:#d5cfac;font-weight:600;display:block}@media (max-width:1100px){.talent-card{gap:7px;min-height:72px;padding:9px 6px}.talent-card>.talent-art{width:22px;height:27px}.talent-copy>strong{font-size:10px}.talent-copy>small{font-size:8px}.talent-cost b{font-size:10px}.talent-levels i{width:12px}}@media (max-width:700px){.hero-tabs{margin-bottom:8px;padding:2px}.hero-tabs button{gap:3px;padding:6px 2px;font-size:7px}.hero-tabs button b{font-size:7px}.hero-tabs button svg{display:none}.talent-card{gap:5px;min-height:66px;padding:8px 5px}.talent-card>.talent-art{width:17px;height:23px}.talent-copy>strong{font-size:8px}.talent-copy>small{font-size:7px}.talent-cost{min-width:20px}.talent-cost b{font-size:8px}.talent-cost>small{font-size:5px}.talent-levels{gap:3px;margin-top:6px}.talent-levels i{width:9px}.talent-levels em{font-size:6px}.intel-panel .talent-explainer{margin-bottom:8px;font-size:8px}.talent-invite{gap:5px;padding:9px 5px}.talent-invite .talent-art{width:18px;height:18px}.talent-invite strong,.talent-invite small{font-size:7px}.intel-panel .talent-combo{font-size:8px}.hero-perks{font-size:7px}}.hero-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}.hero-tabs button{gap:3px;padding:8px 2px;font-size:8px}.hero-tabs button b{font-size:7px}.hero-tabs button:first-child:nth-last-child(2),.hero-tabs button:first-child:nth-last-child(2)~button{grid-column:auto}.hero-tabs:has(>button:nth-child(2):last-child){grid-template-columns:1fr 1fr}.mode-switch.with-garrison{gap:5px}.mode-switch.with-garrison button{height:34px;padding-block:5px}.mode-switch.with-garrison b{font:8px var(--sans);color:#d6c69d;margin-left:auto}.legacy-save-note{border-left:2px solid #a8915f;padding-left:10px;line-height:1.5;color:#ccb889!important;margin:10px 0 18px!important;font-size:10px!important}.garrison-intro{align-items:start;gap:9px;margin-bottom:14px;display:flex}.garrison-intro>svg{color:#e4c78d;flex-shrink:0;width:25px;height:25px}.garrison-intro h2{margin-bottom:6px;font-size:16px}.garrison-intro p{margin:0;font-size:10px}.companion-roster{gap:12px;display:grid}.companion-card{border:1px solid #63837355;border-top:2px solid var(--companion-color);background:linear-gradient(135deg,#233f41,#17303a);padding:11px}.companion-card.recruited{box-shadow:inset 2px 0 var(--companion-color)}.companion-identity{align-items:center;gap:8px;display:flex}.companion-art{flex-shrink:0;width:52px;height:60px}.companion-identity>div{min-width:0}.companion-identity span{color:var(--companion-color);letter-spacing:.09em;font-size:7px}.companion-identity h3{font:600 11px var(--serif);margin:4px 0;line-height:1.4}.companion-identity .talent-levels{margin-top:7px}.companion-identity .talent-levels i{width:21px}.companion-identity .talent-levels .earned{background:var(--companion-color);box-shadow:0 0 6px #d5c88b22}.companion-card>p{margin:8px 0;font-size:10px;line-height:1.5}.companion-stats{color:#94b6b1;border-block:1px solid #6c887533;gap:8px;margin:9px 0;padding:8px 0;font-size:8px;display:flex}.companion-stats b{color:#dfdec4;font-size:9px}.companion-service{color:#c4d2bc;justify-content:space-between;margin:8px 0;font-size:8px;display:flex}.companion-service span:first-child{align-items:center;gap:5px;display:flex}.companion-service i{background:#8bcfa0;border-radius:50%;width:4px;height:4px;box-shadow:0 0 7px #8bcfa0}.companion-card .button{font:600 8px var(--serif);color:#e4d3a4;background:#304d49;border:1px solid #8a9b7566;gap:5px;min-height:33px;padding:8px}.companion-card .button b{color:#f0cf8e;white-space:nowrap;margin-left:auto}.companion-card .button svg{width:13px;height:13px}.companion-card .button:hover:not(:disabled){background:#486258;border-color:#d0b775}.companion-card .button:disabled{opacity:.55}.intel-panel .garrison-note{border-left:2px solid #8b9f78;margin-top:13px;padding-left:8px;font-size:9px}.target-badge{letter-spacing:.04em;color:#a2dec7;align-items:center;gap:5px;padding:7px 0;font-size:8px;display:flex}.target-badge svg{width:11px;height:11px}.target-badge.ground-only{color:#e5b78e}.wave-theme{font:600 9px var(--serif);color:#dfce9f!important;margin:7px 0 9px!important}.theme-air{color:#b3bafa!important}.theme-horde{color:#b9de8c!important}.theme-elite{color:#e7b28b!important}.theme-boss{color:#f1978c!important}.wave-brief h2{color:inherit;margin-top:7px}.wave-brief>p{font-size:10px}@media (min-width:1600px){.mode-switch.with-garrison button{height:41px}.hero-tabs button{font-size:9px}.companion-identity h3{font-size:13px}.companion-card>p{font-size:11px}}@media (max-width:1100px){.mode-switch.with-garrison button{height:32px}.mode-switch.with-garrison b,.hero-tabs button{font-size:7px}.hero-tabs button b{font-size:6px}.companion-card{padding:8px}.companion-art{width:42px;height:51px}.companion-identity h3{font-size:10px}.companion-stats{gap:6px;font-size:7px}.companion-stats b{font-size:8px}}@media (max-width:700px){.hero-tabs button{flex-wrap:wrap;gap:1px;padding:6px 1px;font-size:6px}.hero-tabs button b{font-size:6px}.companion-art{width:31px;height:40px}.companion-identity{gap:5px}.companion-identity span{font-size:6px}.companion-identity h3{font-size:8px}.companion-card{padding:7px}.companion-card>p{font-size:8px}.companion-stats{flex-wrap:wrap;font-size:6px}.companion-stats b{font-size:7px}.companion-card .button{flex-wrap:wrap;font-size:7px}.companion-card .button svg{display:none}.companion-service{font-size:7px}.garrison-intro h2{font-size:11px}.garrison-intro p,.intel-panel .garrison-note{font-size:8px}.garrison-intro>svg{display:none}.target-badge{font-size:6px}.wave-theme{font-size:7px}}.companion-selector{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:0 0 10px;display:grid}.companion-selector button{color:#a8bfbb;background:#142c35;border:1px solid #5d7b6e55;flex-direction:column;align-items:center;gap:2px;padding:5px 2px;display:flex}.companion-selector button[aria-pressed=true]{border-color:var(--companion-color);background:#2c4746}.companion-selector .companion-art{width:30px;height:35px}.companion-selector strong{font:600 8px var(--serif);color:#e2dfc7}.companion-selector span{color:var(--companion-color);font-size:8px}.intel-panel p.garrison-intro{margin:0 0 10px;font-size:10px;line-height:1.4;display:block}.companion-card .companion-art{width:40px;height:45px}.companion-card .companion-identity{gap:6px}.companion-card>p{margin:6px 0}.companion-card .companion-stats{margin:7px 0;padding:6px 0}.companion-card .companion-service{margin:6px 0}.companion-card .button{font-size:7px}.intel-panel .garrison-note{font-size:8px}@media (max-width:700px){.companion-selector{gap:3px}.companion-selector .companion-art{width:22px;height:27px}.companion-selector strong,.companion-selector span{font-size:6px}.intel-panel p.garrison-intro{font-size:8px}.companion-card .companion-art{width:28px;height:35px}}.campaign-lobby{grid-template-columns:minmax(0,1fr) 360px;gap:42px;padding:36px clamp(24px,4vw,64px)}.campaign-lobby .lobby-copy h1{margin-bottom:15px;font-size:clamp(32px,3.8vw,54px)}.campaign-lobby .lobby-copy>p:not(.eyebrow){margin-bottom:25px;font-size:13px;line-height:1.7}.campaign-lobby .mission-card{padding:23px}.campaign-lobby .mission-card h2{font-size:22px}.campaign-lobby .mission-card>p{margin-bottom:18px;font-size:11px}.campaign-lobby .mission-card fieldset{margin-bottom:15px}.campaign-lobby .mission-modes button{padding:10px}.campaign-lobby .mission-modes small{font-size:10px}.campaign-lobby .mission-card .guest-note{margin:16px 0;font-size:10px}.campaign-lobby .lobby-landscape{opacity:.62}.campaign-lobby .lobby-vignette{background:linear-gradient(90deg,#071923db 0%,#0a1b2370 58%,#081a22df),linear-gradient(#0000 30%,#0a1c25)}.campaign-atlas{max-width:850px}.atlas-heading{justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px;display:flex}.atlas-heading .eyebrow{color:#c6d7cf!important;margin:0!important;font-size:8px!important}.atlas-heading>span:last-child{font:600 8px var(--serif);color:#cfbd96;white-space:nowrap}.atlas-map-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;display:grid}.atlas-map{text-align:left;color:var(--map-color);background:linear-gradient(145deg,#18333be8,#10242de8);border:1px solid #60797055;flex-direction:column;gap:6px;min-width:0;padding:10px 7px 9px;transition:transform .15s,border-color .15s,background .15s;display:flex;position:relative}.atlas-map:hover{border-color:var(--map-color);transform:translateY(-3px)}.atlas-map[aria-pressed=true]{border-color:var(--map-color);box-shadow:inset 0 -3px var(--map-color),0 8px 22px #0003;background:linear-gradient(145deg,#35514df0,#17303bef)}.atlas-map-number{font:700 14px var(--serif);letter-spacing:-.04em;justify-content:space-between;align-items:center;display:flex}.atlas-map-number svg{width:13px;height:13px}.map-route{width:100%;height:auto;display:block;overflow:visible}.atlas-map .map-route{height:70px;margin:1px 0 4px}.atlas-map strong{font:600 clamp(8px,.76vw,11px) var(--serif);color:#d8e3d6;white-space:nowrap;letter-spacing:-.035em;line-height:1.4}.atlas-difficulty{gap:4px;margin-top:3px;display:flex}.atlas-difficulty i{background:#657b7133;flex:1;height:4px}.atlas-difficulty i.filled{background:var(--map-color);opacity:.8}.atlas-description{border-bottom:1px solid #5d7b7044;justify-content:space-between;align-items:center;gap:16px;min-height:107px;padding:14px 0 10px;display:flex}.atlas-description>div>span{letter-spacing:.1em;color:var(--map-color);font-size:8px}.atlas-description h2{font:700 18px var(--serif);color:#e3eadb;margin:6px 0}.atlas-description p{color:#aec3bf;max-width:530px;margin:0;font-size:11px;line-height:1.6}.atlas-description>svg{width:35px;height:35px;color:var(--map-color);opacity:.6;flex-shrink:0}.atlas-rule{color:#8baaa9;margin:10px 0 0;font-size:9px}.map-victory{z-index:15}.map-victory>div{width:calc(100% - 36px);max-width:460px}.map-victory>div>svg{color:#9cd9b1}.map-victory h2{font-size:25px}.map-victory .next-map-preview{text-align:left;border:1px solid #57766a66;border-left:3px solid var(--map-color);color:var(--map-color);background:linear-gradient(135deg,#243d3c,#142a33);align-items:center;gap:16px;margin:18px 0;padding:12px;display:flex}.next-map-preview .map-route{flex-shrink:0;width:135px}.next-map-preview span{letter-spacing:.08em;font-size:8px}.next-map-preview h3{font:650 16px var(--serif);color:#e2e8d8;margin:7px 0}.map-victory .next-map-preview p{text-align:left;color:#b7ccc0;margin:0;font-size:10px}.map-carryover{text-align:left;color:#bdd0c2;gap:8px;margin:0 0 20px;font-size:11px;display:grid}.map-carryover span{align-items:center;gap:7px;display:flex}.map-carryover svg{color:#cdb780;flex-shrink:0;width:14px;height:14px}.map-carryover strong{color:#ebc886}.map-victory .text-button{margin-top:14px;font-size:11px}@media (max-width:1100px){.campaign-lobby{grid-template-columns:minmax(0,1fr) 320px;gap:24px;padding:30px 24px}.campaign-lobby .lobby-copy h1{font-size:38px}.atlas-map{padding:8px 5px}.atlas-map .map-route{height:52px}.atlas-map strong{font-size:8px}.atlas-description h2{font-size:16px}.atlas-description p{font-size:10px}.atlas-heading .eyebrow,.atlas-heading>span:last-child{font-size:7px!important}}@media (max-width:850px){.campaign-lobby{grid-template-columns:1fr;gap:26px;max-width:none}.campaign-lobby .mission-card{justify-self:center;width:100%;max-width:560px}.campaign-lobby .campaign-atlas{max-width:750px}.campaign-lobby .lobby-copy h1{font-size:38px}.atlas-map .map-route{height:65px}.atlas-map strong{font-size:10px}.atlas-heading .eyebrow,.atlas-heading>span:last-child{font-size:8px!important}}@media (max-width:520px){.campaign-lobby{padding:28px 18px}.campaign-lobby .lobby-copy h1{font-size:30px}.campaign-lobby .lobby-copy>p:not(.eyebrow){font-size:11px}.atlas-map-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.atlas-map{padding:8px 7px}.atlas-map-number{font-size:11px}.atlas-map .map-route{height:40px}.atlas-map strong{font-size:9px}.atlas-difficulty{gap:2px}.atlas-description{min-height:115px}.atlas-heading .eyebrow,.atlas-heading>span:last-child{font-size:7px!important}.map-victory .next-map-preview{gap:10px}.next-map-preview .map-route{width:100px}.next-map-preview h3{font-size:13px}.map-victory h2{font-size:21px}.map-carryover{font-size:10px}}
.model-art{vertical-align:middle;isolation:isolate;flex-shrink:0;place-items:center;line-height:0;display:inline-grid;position:relative}.model-art>:is(.model-art-image,.model-art-fallback){object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;max-width:100%;height:100%;display:block}.combat-shell{--metal-edge:#78988c55;--metal-light:#e1efce16;--metal-shadow:#020d17a6}.combat-shell :is(.combat-top,.intel-panel,.arsenal){border-color:var(--metal-edge);box-shadow:inset 0 1px var(--metal-light), inset 0 -1px #0007, 0 8px 26px #020c174d;background:linear-gradient(145deg,#23404be8,#102730f5 48%,#0b1c27f5)}.combat-shell .combat-top{background:linear-gradient(#203943f5,#0d212bf5 88%,#142c33f5);border-bottom-color:#b7a67266}.combat-shell .combat-identity strong{text-shadow:0 2px 2px #0008}.combat-shell .resource b{text-shadow:0 2px 1px #071116}.combat-shell .resource>svg{filter:drop-shadow(0 2px 1px #0006)}.combat-shell :is(.intel-heading,.arsenal-label){color:#c1d0c5}.combat-shell .intel-heading .eyebrow{color:#bbcec5}.combat-shell .intel-panel h2{font-size:20px;line-height:1.3}.combat-shell .intel-panel p{color:#b6c9c3}.combat-shell .intel-scroll{scrollbar-gutter:stable}.combat-shell .intel-scroll::-webkit-scrollbar{width:4px}.combat-shell .intel-scroll::-webkit-scrollbar-thumb{background:#718e7f;border-radius:5px}.combat-shell :is(.hud-icon,.mode-switch button,.hero-tabs button,.arsenal-card,.companion-selector button){transition:background .16s,border-color .16s,box-shadow .16s,transform .16s}.combat-shell :is(.hud-icon,.mode-switch button,.arsenal-card,.combat-upgrades button,.talent-card,.companion-selector button){background:linear-gradient(150deg,#2a444a,#182e38 58%,#122630);border-color:#6c897864;box-shadow:inset 0 1px #f1f2c617,inset 0 -2px #04121b78,0 2px 4px #0002}.combat-shell :is(.hud-icon,.mode-switch button,.arsenal-card,.combat-upgrades button,.talent-card,.companion-selector button):hover:not(:disabled){background:linear-gradient(150deg,#3a5557,#243e42 65%,#1b333b);border-color:#c4b285;box-shadow:inset 0 1px #fff5d62e,inset 0 -2px #04121b78,0 3px 10px #0003}.combat-shell :is(.hud-icon,.mode-switch button,.arsenal-card,.combat-upgrades button,.talent-card,.companion-selector button,.button):active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 2px 5px #020f2280,inset 0 -1px #b3c59924}.combat-shell :is(button,a,input):focus-visible{outline-offset:3px;outline:2px solid #ffe0a0}.combat-shell :is(.arsenal-card.chosen,.mode-switch button[aria-pressed=true],.hero-tabs button[aria-selected=true]){color:#ffe5ac;background:linear-gradient(145deg,#56604a,#2e4541 55%,#20363c);border-color:#dfbc79;box-shadow:inset 0 1px #fff1b340,inset 0 -3px #d6b276,0 0 15px #e3bb5910}.combat-shell button:disabled{cursor:not-allowed}.combat-shell :is(.hud-icon,.combat-upgrades button,.companion-purchase,.talent-card):disabled{opacity:.58;filter:saturate(.62);box-shadow:inset 0 1px #ffffff09,inset 0 -1px #0005}.combat-shell :is(.talent-card[data-max=true],.companion-purchase[data-max=true]):disabled{opacity:.9;filter:none;color:#c2dfbf;background:linear-gradient(135deg,#304940,#203831)}.combat-shell .arsenal-card>.model-art{opacity:1;min-width:0;max-width:none;margin:0;padding:0;line-height:0}.combat-shell .arsenal-card>.tower-art{width:53px;height:65px}.combat-shell .weapon-card .weapon-art{width:78px;height:61px}.combat-shell .arsenal-card{gap:5px}.combat-shell .arsenal-card strong{letter-spacing:-.035em;font-size:clamp(9px,.78vw,12px)}.combat-shell .arsenal-card small{color:#b0c5bd}.combat-shell .arsenal-card b{color:#f2d18b;font-variant-numeric:tabular-nums}.combat-shell .arsenal-card b.unaffordable{color:#d09b88}.combat-shell .model-art{filter:drop-shadow(0 4px 3px #020c1780)}.combat-shell .arsenal-card.chosen .model-art{filter:drop-shadow(0 4px 3px #020c1780) drop-shadow(0 0 7px color-mix(in srgb, var(--art-color,#e0bf77) 26%, transparent))}.combat-shell .intel-art{min-height:98px}.combat-shell .intel-art .tower-art{width:110px;height:112px}.combat-shell .weapon-showcase{background:radial-gradient(at 50% 65%,#71817127,#0000 70%);border-bottom:1px solid #9baf7f24;margin:0 0 9px}.combat-shell .weapon-showcase .weapon-art{width:170px;height:105px}.combat-shell .level-tag{color:#f0d89e;background:linear-gradient(135deg,#4e4b36,#202f30);border-color:#b39b635e;box-shadow:inset 0 1px #fff0b51c,0 2px 6px #0004}.combat-shell .enemy-row .enemy-art{width:49px;height:51px}.combat-shell .enemy-chips>span{background:radial-gradient(at 50% 65%,#3c4b4e,#10232c 80%);box-shadow:inset 0 1px #d6eac514,0 2px 4px #0003}.combat-shell .active-threats>span{box-shadow:inset 0 1px #e7e8be16,0 2px 7px #0003}.combat-shell .active-threats .enemy-art{width:32px;height:33px}.combat-shell .active-threats>span{grid-template-columns:32px 1fr}.combat-shell .talent-card>.talent-art{width:39px;height:42px}.combat-shell .talent-card{gap:8px;padding:9px 8px}.combat-shell .talent-copy>strong{font-size:11px}.combat-shell .talent-copy>small{color:#b4c9bd}.combat-shell .talent-invite .talent-art{width:33px;height:33px}.combat-shell .talent-levels i{border-radius:1px;height:4px;box-shadow:inset 0 1px #0004}.combat-shell .talent-levels i.earned{box-shadow:inset 0 1px #ffffff40,0 0 5px #d8e99a24}.combat-shell .garrison-panel{--art-color:var(--companion-color,#e9ca8b)}.combat-shell .garrison-intro{margin-bottom:8px;font-size:10px}.combat-shell .companion-selector{gap:6px;margin-bottom:9px}.combat-shell .companion-selector button{gap:1px;padding:4px 2px 6px;position:relative;overflow:hidden}.combat-shell .companion-selector .companion-art{width:46px;height:48px;padding:0}.combat-shell .companion-selector strong{font-size:9px}.combat-shell .companion-selector-status{color:#becdc1;font-size:8px;line-height:1.4}.combat-shell .companion-selector button[aria-pressed=true]{border-color:var(--companion-color);background:linear-gradient(155deg, color-mix(in srgb, var(--companion-color) 23%, #17323c), #18303a 80%);box-shadow:inset 0 1px #edf9d72b, inset 0 -2px var(--companion-color), 0 0 12px #0002}.companion-recruited-mark{background:#b6df9f;border-radius:50%;width:4px;height:4px;position:absolute;top:5px;right:5px;box-shadow:0 0 6px #b6df9f66}.combat-shell .companion-card{border-color:#77947a50;border-top-color:var(--companion-color);background:linear-gradient(145deg,#2c4549,#192f39 65%);padding:10px;box-shadow:inset 0 1px #f1edc311,0 3px 8px #0002}.combat-shell .companion-card.recruited{box-shadow:inset 2px 0 color-mix(in srgb, var(--companion-color) 55%, transparent), 0 3px 8px #0002}.combat-shell .companion-card .companion-identity{gap:9px}.companion-portrait{background:radial-gradient(ellipse, color-mix(in srgb, var(--companion-color) 14%, transparent), transparent 72%);flex:0 0 66px;height:69px;position:relative}.combat-shell .companion-portrait .companion-art{width:66px;height:69px}.companion-portrait .companion-rank{min-width:22px;min-height:18px;font:700 9px var(--serif);letter-spacing:0;border:1px solid color-mix(in srgb, var(--companion-color) 65%, #20363c);color:#f3e1b2;background:linear-gradient(145deg,#46584e,#132934);place-items:center;padding:1px 3px;display:grid;position:absolute;bottom:0;right:0;box-shadow:inset 0 1px #ffffc52b,0 2px 3px #0006}.companion-rank svg{width:11px;height:11px}.combat-shell .companion-identity h3{letter-spacing:-.025em;margin:4px 0;font-size:11px;line-height:1.35}.combat-shell .companion-role{letter-spacing:.06em;font-size:7px;line-height:1.5}.combat-shell .companion-name .talent-levels{margin-top:6px}.combat-shell .companion-name .talent-levels i{width:16px}.combat-shell .companion-card>p{margin:7px 0;font-size:10px;line-height:1.45}.combat-shell .companion-stats{grid-template-columns:repeat(3,1fr);gap:4px;margin:7px 0;padding:7px 0;display:grid}.companion-stats>span{color:#adc4b9;flex-direction:column;gap:2px;font-size:8px;display:flex}.combat-shell .companion-stats b{font:600 13px var(--serif);color:#e1e7cd;font-variant-numeric:tabular-nums}.combat-shell .companion-purchase{background:linear-gradient(135deg,#3c5850,#263f40);min-height:35px;font-size:8px}.companion-purchase>span{min-width:0;line-height:1.3}.combat-shell .garrison-note{color:#a9c0b5;margin:9px 0 0;font-size:9px;line-height:1.5}.wave-announcement,.action-feedback{z-index:8;pointer-events:none;color:#eee5ca;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:linear-gradient(115deg,#203b43f2,#10232df2);border:1px solid #bdab7466;align-items:center;display:flex;position:absolute;box-shadow:inset 0 1px #fff7c323,0 8px 22px #0004}.wave-announcement{--announcement-color:#d9c58d;border-left:3px solid var(--announcement-color);gap:11px;max-width:min(340px,100% - 390px);padding:10px 17px 10px 12px;animation:.23s ease-out both announcement-in;top:96px;left:calc(50% + 90px);transform:translate(-50%)}.wave-announcement[data-tone=horde]{--announcement-color:#c5d996}.wave-announcement[data-tone=elite]{--announcement-color:#e8b58c}.wave-announcement[data-tone=air]{--announcement-color:#bfb2f1}.wave-announcement[data-tone=boss]{--announcement-color:#f09e8a}.wave-announcement[data-tone=clear]{--announcement-color:#a5d3b0}.wave-announcement[data-tone=travel]{--announcement-color:#e8ce91}.announcement-emblem,.feedback-emblem{flex-shrink:0;place-items:center;display:grid}.announcement-emblem{color:var(--announcement-color);width:32px;height:32px}.announcement-emblem svg{filter:drop-shadow(0 2px 3px #0007);width:28px;height:28px}.wave-announcement>div:not(.announcement-emblem),.action-feedback>div:not(.feedback-emblem){min-width:0}.wave-announcement small{letter-spacing:.14em;color:var(--announcement-color);font-size:8px;display:block}.wave-announcement strong{font:650 15px var(--serif);margin:2px 0;line-height:1.4;display:block}.wave-announcement>div>span{color:#afc5bf;font-size:10px;line-height:1.4;display:block}.action-feedback{border-color:#a8b69a5c;gap:9px;max-width:min(370px,100% - 390px);padding:8px 13px 8px 9px;animation:.16s ease-out both feedback-in;bottom:159px;left:calc(50% - 95px);transform:translate(-50%)}.feedback-emblem{color:#d9c38c;background:#a0b88c12;border:1px solid #b3c18b33;width:27px;height:27px}.feedback-emblem svg{width:16px;height:16px}.action-feedback strong{font:600 10px var(--serif);line-height:1.5;display:block}.action-feedback>div>span{color:#b5c8ba;font-size:10px;line-height:1.5;display:block}.action-feedback[data-kind=sell] .feedback-emblem{color:#f1cd7e}.action-feedback[data-kind=upgrade] .feedback-emblem{color:#c5b5ef}.action-feedback[data-kind=purchase] .feedback-emblem{color:#a4d8b8}.campaign-track{align-items:center;gap:4px;height:4px;margin-top:5px;display:flex}.campaign-track>:is(i,span){background:#59716c66;border-radius:1px;width:15px;height:3px;display:block;box-shadow:inset 0 1px #0004}.campaign-track>:is(.complete,[data-state=cleared]){background:#93bea0}.campaign-track>:is(.current,[data-state=current]){background:#efcb83;height:4px;box-shadow:0 0 7px #f1c27c44}.castle-health-track,.wave-progress-track{background:#020e1a80;border-radius:2px;width:65px;height:3px;margin-top:1px;display:block;overflow:hidden;box-shadow:inset 0 1px #0008}.combat-shell .resource :is(.castle-health-track,.wave-progress-track){flex:none;flex-direction:initial;display:block}.castle-health-track>i,.wave-progress-track>i{height:100%;transition:width .3s;display:block}.castle-health-track>i{background:linear-gradient(90deg,#a46d5f,#eab4a0)}.resource.danger .castle-health-track>i{background:#f1846b}.wave-progress-track>i{background:linear-gradient(90deg,#769d92,#c5d9b1)}@keyframes announcement-in{0%{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%)}}@keyframes feedback-in{0%{opacity:0;transform:translate(-50%,5px)}to{opacity:1;transform:translate(-50%)}}@media (min-width:1600px){.combat-shell .arsenal-card>.tower-art{width:64px;height:79px}.combat-shell .weapon-card .weapon-art{width:92px;height:73px}.combat-shell .companion-portrait,.combat-shell .companion-portrait .companion-art{width:76px;height:80px}.companion-portrait{flex-basis:76px}.combat-shell .companion-identity h3{font-size:12px}.action-feedback{bottom:185px}}@media (max-width:1100px){.combat-shell .arsenal-card>.tower-art{width:43px;height:48px;top:0;right:1px}.combat-shell .arsenal-card>span:not(.model-art){padding-top:37px}.combat-shell .arsenal-card strong{font-size:8px}.combat-shell .weapon-card .weapon-art{width:65px;height:49px}.combat-shell .intel-art .tower-art{width:92px;height:96px}.combat-shell .talent-card>.talent-art{width:30px;height:35px}.combat-shell .talent-copy>strong{font-size:10px}.combat-shell .companion-selector .companion-art{width:39px;height:43px}.companion-portrait{flex-basis:53px;height:62px}.combat-shell .companion-portrait .companion-art{width:53px;height:62px}.combat-shell .companion-identity h3{font-size:10px}.combat-shell .companion-role{font-size:6px}.combat-shell .companion-card{padding:8px}.wave-announcement{max-width:calc(100% - 310px);top:166px;left:calc(50% - 90px)}.wave-announcement strong{font-size:13px}.action-feedback{max-width:calc(100% - 310px);bottom:148px;left:calc(50% - 72px)}}@media (max-height:760px) and (min-width:701px){.combat-shell .intel-art{min-height:83px}.combat-shell .intel-art .tower-art{width:94px;height:90px}.combat-shell .weapon-showcase .weapon-art{height:76px}.combat-shell .companion-selector .companion-art{width:43px;height:43px}.companion-portrait,.combat-shell .companion-portrait .companion-art{height:61px}.combat-shell .companion-card>p{margin:5px 0}.combat-shell .companion-stats{margin:6px 0;padding:5px 0}.combat-shell .companion-selector{margin-bottom:7px}.combat-shell .garrison-note{margin-top:7px;font-size:8px}.wave-announcement{padding-block:7px}}@media (max-width:700px){.combat-shell .arsenal-card>.tower-art{width:33px;height:37px}.combat-shell .arsenal-card>span:not(.model-art){padding-top:30px}.combat-shell .arsenal-card strong{font-size:6.5px}.combat-shell .weapon-card .weapon-art{width:46px;height:38px}.combat-shell .intel-panel h2{font-size:13px}.combat-shell .intel-art .tower-art{width:68px;height:76px}.combat-shell .intel-art{min-height:70px}.combat-shell .weapon-showcase .weapon-art{width:120px;height:65px}.combat-shell .talent-card>.talent-art{width:24px;height:29px}.combat-shell .talent-copy>strong{font-size:8px}.combat-shell .companion-selector{gap:3px}.combat-shell .companion-selector .companion-art{width:29px;height:33px}.combat-shell .companion-selector strong{font-size:7px}.combat-shell .companion-selector-status{font-size:6px}.companion-portrait{flex-basis:38px;height:48px}.combat-shell .companion-portrait .companion-art{width:38px;height:48px}.combat-shell .companion-card .companion-identity{gap:5px}.combat-shell .companion-identity h3{font-size:8px}.combat-shell .companion-role{font-size:5px}.combat-shell .companion-card>p{font-size:8px}.companion-portrait .companion-rank{min-width:17px;min-height:14px;font-size:7px}.combat-shell .companion-stats b{font-size:10px}.combat-shell .companion-stats>span{font-size:7px}.combat-shell .companion-purchase{gap:3px;font-size:7px}.combat-shell .garrison-intro,.combat-shell .garrison-note{font-size:8px}.wave-announcement{gap:6px;max-width:calc(100% - 202px);padding:7px;animation:none;top:143px;left:12px;transform:none}.announcement-emblem{width:20px;height:24px}.announcement-emblem svg{width:20px;height:20px}.wave-announcement small{font-size:6px}.wave-announcement strong{font-size:10px}.wave-announcement>div>span{font-size:8px}.action-feedback{gap:5px;max-width:calc(100% - 202px);padding:6px 8px;animation:none;bottom:183px;left:12px;transform:none}.action-feedback strong,.action-feedback>div>span{font-size:8px}.feedback-emblem{width:22px;height:22px}.campaign-track{gap:3px;margin-top:3px}.campaign-track>:is(i,span){width:10px}.castle-health-track,.wave-progress-track{width:42px;height:2px}.combat-shell .active-threats .enemy-art{width:23px;height:25px}.combat-shell .active-threats>span{grid-template-columns:23px 1fr}}@media (prefers-reduced-motion:reduce){.wave-announcement,.action-feedback,.resource.danger{animation:none}.combat-shell :is(button,a,.model-art),.castle-health-track>i,.wave-progress-track>i{transition:none}.combat-shell button:hover:not(:disabled),.combat-shell button:active:not(:disabled){transform:none}}
.bonus-overlay{z-index:18;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:radial-gradient(at 50% 45%,#172d38ee,#07121bf5);place-items:center;padding:28px;display:grid;position:absolute;inset:0;overflow:auto}.bonus-dialog{color:#e1ece3;text-align:center;width:min(940px,100%);margin:auto}.bonus-kicker{font:600 10px var(--sans);letter-spacing:.18em;color:#e2c98e;justify-content:center;align-items:center;gap:10px;display:flex}.bonus-kicker svg{width:20px;height:20px}.bonus-dialog h2{font:700 clamp(24px,3vw,36px) var(--serif);letter-spacing:-.04em;margin:15px 0 10px}.bonus-dialog>p{color:#a9c2c5;margin:0 0 25px;font-size:13px;line-height:1.6}.bonus-choices{text-align:left;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.bonus-choice{color:#e5ede2;text-align:left;border:1px solid color-mix(in srgb,var(--bonus-color) 42%,#173540);animation:.35s backwards reward-rise;animation-delay:calc(var(--card-index)*60ms);background:linear-gradient(150deg,#28434b,#101e2c 80%);flex-direction:column;padding:0;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #e8f8fc26,0 15px 30px #0004}.bonus-choice:before,.bonus-choice:after{content:"";pointer-events:none;border:2px solid var(--bonus-color);opacity:.7;width:16px;height:16px;position:absolute}.bonus-choice:before{border-bottom:0;border-right:0;top:7px;left:7px}.bonus-choice:after{border-top:0;border-left:0;bottom:7px;right:7px}.bonus-choice:hover,.bonus-choice:focus-visible{border-color:var(--bonus-color);box-shadow:inset 0 1px #ffffff40,0 18px 45px #0006,0 0 25px color-mix(in srgb,var(--bonus-color) 16%,transparent);outline:2px solid var(--bonus-color);outline-offset:4px;transform:translateY(-7px)}.bonus-card-top{letter-spacing:.12em;color:#95b2b9;justify-content:space-between;gap:8px;margin:20px 20px 0;font-size:8px;display:flex}.bonus-card-top>b{color:var(--bonus-color);font-weight:500}.bonus-art{background:radial-gradient(ellipse,color-mix(in srgb,var(--bonus-color) 17%,transparent),transparent 68%);place-items:center;height:142px;margin:4px 16px 0;display:grid;position:relative}.bonus-art:after{content:"";border:1px solid color-mix(in srgb,var(--bonus-color) 45%,transparent);z-index:0;background:#030e154d;border-radius:50%;width:96px;height:23px;position:absolute;bottom:6px}.bonus-art>.model-art,.bonus-art>svg{z-index:1;filter:drop-shadow(0 9px 9px #0006);position:relative}.bonus-art>.tower-art{width:120px;height:130px}.bonus-art>.weapon-art{width:170px;height:125px}.bonus-art>.talent-art{width:95px;height:105px}.bonus-art>svg{width:75px;height:75px}.bonus-card-body{flex-direction:column;flex:1;padding:14px 22px 20px;display:flex}.bonus-card-body>strong{font:650 18px var(--serif);letter-spacing:-.035em;color:#f1eee0}.bonus-rank{font:600 8px var(--sans);letter-spacing:.1em;color:var(--bonus-color);align-items:center;gap:12px;margin:12px 0 13px;display:flex}.bonus-rank i{gap:4px;display:flex}.bonus-rank em{background:#778f9233;width:17px;height:3px}.bonus-rank em[data-earned=true]{background:var(--bonus-color);box-shadow:0 0 7px color-mix(in srgb,var(--bonus-color) 50%,transparent)}.bonus-description{font:12px/1.65 var(--sans);color:#b7cbd0;min-height:60px}.bonus-value{font:600 11px/1.4 var(--sans);color:var(--bonus-color);margin-bottom:9px}.next-wave .boss-scout{font:9px/1.5 var(--sans);color:#c5b3c8;margin:8px 0 0!important}.boss-scout>strong{color:#e0c5cb}.bonus-select{border-top:1px solid color-mix(in srgb,var(--bonus-color) 30%,transparent);background:linear-gradient(90deg,color-mix(in srgb,var(--bonus-color) 15%,transparent),transparent);color:var(--bonus-color);font:600 9px var(--serif);justify-content:space-between;align-items:center;gap:10px;padding:15px 22px;display:flex}.bonus-select svg{width:16px;height:16px}.bonus-footer{color:#8da9b1;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;font-size:10px;display:flex}.bonus-footer>span{align-items:center;gap:6px;display:flex}.bonus-footer svg{width:14px;height:14px}.bonus-footer button{color:#c3d5d2;font-size:11px}.bonus-next,.bonus-inventory{z-index:6;color:#bbcfca;width:205px;font-size:9px;position:absolute;top:177px;left:24px}.bonus-next{pointer-events:none;color:#9eb5b3;text-shadow:0 1px 3px #000;align-items:center;gap:7px;font-size:9px;display:flex}.bonus-next>svg{color:#c6af79;width:14px;height:14px}.bonus-inventory>summary{cursor:pointer;letter-spacing:.06em;background:linear-gradient(120deg,#243e45ef,#122733f0);border:1px solid #668b8266;align-items:center;gap:8px;padding:9px 11px;font-size:8px;list-style:none;display:flex;box-shadow:inset 0 1px #badbc01a}.bonus-inventory>summary::-webkit-details-marker{display:none}.bonus-inventory>summary>svg{color:#d1b77f;width:13px;height:13px}.bonus-inventory>summary>b{color:#ead7a2;margin-left:auto}.bonus-inventory>summary>svg:last-child{width:10px;transform:rotate(-90deg)}.bonus-inventory[open]>summary>svg:last-child{transform:rotate(90deg)}.bonus-inventory-list{background:#102430f5;border:1px solid #658a7b66;border-top:0;width:260px;max-height:min(300px,100dvh - 380px);padding:5px 10px;overflow:auto;box-shadow:0 15px 30px #0005}.bonus-inventory-list>div{border-bottom:1px solid #68877b33;align-items:center;gap:9px;padding:10px 0;display:flex}.bonus-inventory-list>div:last-child{border:0}.bonus-mini-art{flex:0 0 37px;place-items:center;width:37px;display:grid}.bonus-mini-art>.model-art,.bonus-mini-art>svg{width:37px;height:42px}.bonus-inventory-list strong{font:600 10px var(--serif);color:var(--bonus-color);justify-content:space-between;gap:5px;display:flex}.bonus-inventory-list strong>b{white-space:nowrap}.bonus-inventory-list p{color:#aac1bf;margin:6px 0 0;font-size:9px;line-height:1.5}.ability-dock{z-index:7;color:#b8e8f4;width:234px;position:absolute;bottom:153px;left:24px}.ability-button{text-align:left;width:100%;color:inherit;background:linear-gradient(140deg,#214554ef,#102c3af2);border:1px solid #91d6e987;align-items:center;gap:10px;padding:10px 12px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #d2f3ff36,0 6px 16px #0003}.ability-button:disabled{color:#91adb5;border-color:#65858a55}.ability-button:hover:not(:disabled),.ability-button[aria-pressed=true]{border-color:#beeffa;box-shadow:inset 0 1px #d2f3ff80,0 0 20px #76dffb30}.ability-button:focus-visible{outline-offset:4px;outline:2px solid #beeffa}.ability-emblem>.talent-art{width:37px;height:43px}.ability-copy{flex:1;min-width:0}.ability-copy>strong{font:650 12px var(--serif);letter-spacing:-.03em;display:block}.ability-copy>small{font:7px var(--sans);letter-spacing:.035em;margin-top:7px;display:block}.ability-button>kbd{border:1px solid #84bac366;align-self:flex-start;padding:3px 5px;font-size:9px}.ability-charge{background:#061b27;height:3px;position:absolute;inset:auto 0 0}.ability-charge>i{width:calc(var(--ability-charge)*100%);background:linear-gradient(90deg,#3e7799,#9deafb);height:100%;transition:width .1s linear;display:block}.ability-instruction{text-align:center;color:#cceef5;text-shadow:0 1px 3px #000;margin:7px -12px 0;font-size:8px;display:block}.ability-instruction kbd{font-size:8px}.combat-shell.ability-aiming .world-canvas{cursor:crosshair}.boss-encounter{z-index:6;color:#efddd8;background:linear-gradient(120deg,#342333f5,#142332ef);border:1px solid #b989a466;width:min(345px,100% - 580px);padding:10px 14px;position:absolute;top:83px;left:calc(50% - 70px);transform:translate(-50%);box-shadow:0 8px 22px #0004}.boss-identity{align-items:center;gap:9px;display:flex}.boss-identity>.enemy-art{width:40px;height:43px}.boss-identity>div{flex:1}.boss-identity small{font:7px var(--sans);letter-spacing:.12em;color:#d6a0a8;display:block}.boss-identity strong{font:650 13px var(--serif);margin-top:4px;display:block}.boss-identity>b{font:10px var(--sans);color:#e6bcae}.boss-health{background:#110e19;height:5px;margin:9px 0 8px;overflow:hidden}.boss-health>i{background:linear-gradient(90deg,#994560,#f0ac91);height:100%;transition:width .12s linear;display:block}.boss-encounter p{color:#c9afb8;margin:0;font-size:9px;line-height:1.5}.boss-encounter[data-warning=true]{background:linear-gradient(120deg,#285563f5,#142332f5);border-color:#bdeafa}.boss-encounter[data-warning=true] p{color:#d4f5ff}.frozen-status{color:#c7f4ff;background:#318aa32b;border-left:2px solid #a9e9ff;margin:8px 0;padding:7px 9px;font-size:10px;display:block}.expedition-lobby-note{color:#b7d5c6;align-items:center;gap:7px;margin:15px 0;font-size:10px;display:flex}.expedition-lobby-note>svg{color:#edcf8c;width:15px;height:15px}.combat-upgrades button:has(.tower-art){grid-template-columns:48px 1fr;gap:8px;display:grid}.combat-upgrades button .tower-art{grid-row:span 2;width:48px;height:56px}.combat-upgrades button:has(.tower-art)>b{text-align:left;grid-column:2}@keyframes reward-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media (min-width:1600px){.ability-dock{bottom:190px}}@media (max-height:760px){.bonus-overlay{padding:20px}.bonus-dialog h2{margin-top:10px;font-size:28px}.bonus-dialog>p{margin-bottom:18px}.bonus-art{height:115px}.bonus-art>.tower-art{width:110px;height:110px}.bonus-art>.talent-art{height:88px}.bonus-art>.weapon-art{height:100px}.bonus-card-body{padding:10px 18px 16px}.bonus-card-body>strong{font-size:16px}.bonus-description{min-height:55px;font-size:11px}.bonus-footer{margin-top:16px}}@media (max-width:1100px){.ability-dock{width:205px;bottom:147px;left:18px}.ability-copy>strong{font-size:11px}.ability-copy>small{font-size:6px}.ability-emblem>.talent-art{width:31px;height:38px}.bonus-next,.bonus-inventory{width:180px;top:179px;left:18px}.boss-encounter{width:min(270px,100% - 460px);padding:8px;top:84px;left:calc(50% + 4px)}.boss-identity strong{font-size:11px}.boss-identity>.enemy-art{width:30px;height:35px}.boss-encounter p{font-size:8px}.bonus-choice{min-width:0}.bonus-card-body>strong{font-size:15px}.bonus-choices{gap:12px}.bonus-card-top{margin:16px 14px 0}.bonus-select{padding:12px 16px;font-size:8px}}@media (max-width:700px){.bonus-overlay{align-items:start;padding:18px 12px}.bonus-dialog h2{font-size:22px}.bonus-kicker{letter-spacing:.08em;font-size:8px}.bonus-dialog>p{font-size:11px}.bonus-choices{grid-template-columns:1fr;gap:10px}.bonus-choice{grid-template-columns:85px 1fr;display:grid}.bonus-card-top{grid-column:1/-1;margin:12px 14px 0;font-size:7px}.bonus-art{width:85px;height:100px;margin:0}.bonus-art>.tower-art{width:75px;height:85px}.bonus-art>.talent-art{width:62px;height:75px}.bonus-art>.weapon-art{width:80px;height:75px}.bonus-art>svg{width:50px;height:50px}.bonus-art:after{width:65px}.bonus-card-body{min-width:0;padding:12px}.bonus-card-body>strong{font-size:14px}.bonus-description{min-height:0;font-size:10px}.bonus-rank{margin:8px 0;font-size:7px}.bonus-select{grid-column:1/-1;padding:10px 15px;font-size:8px}.bonus-footer{flex-direction:column;gap:10px;margin-top:15px}.ability-dock{width:171px;bottom:190px;left:12px}.ability-button{gap:7px;padding:7px}.ability-emblem>.talent-art{width:25px;height:30px}.ability-copy>strong{font-size:9px}.ability-copy>small{margin-top:5px;font-size:5.5px}.ability-button>kbd{padding:2px 3px;font-size:7px}.ability-instruction{margin-inline:0;font-size:7px;line-height:1.5}.bonus-next,.bonus-inventory{width:160px;top:175px;left:12px}.bonus-next{width:135px;font-size:7px}.bonus-inventory>summary{gap:6px;padding:7px;font-size:7px}.bonus-inventory-list{width:205px;max-height:180px}.boss-encounter{width:calc(100% - 210px);max-width:220px;top:220px;left:12px;transform:none}.boss-identity strong{font-size:9px}.boss-identity>.enemy-art{width:25px;height:30px}.boss-identity small{font-size:6px}.boss-identity>b{font-size:8px}.boss-encounter p{font-size:7px}.boss-health{height:3px;margin:6px 0}.combat-upgrades button:has(.tower-art){grid-template-columns:28px 1fr;gap:5px}.combat-upgrades button .tower-art{width:28px;height:35px}}@media (prefers-reduced-motion:reduce){.bonus-choice{transition:none;animation:none}.bonus-choice:hover,.bonus-choice:focus-visible{transform:none}.ability-button,.ability-charge>i,.boss-health>i{transition:none}.bonus-overlay{-webkit-backdrop-filter:none;backdrop-filter:none}}@media (min-width:701px){.boss-encounter{width:320px;left:auto;right:300px;transform:none}.combat-shell:has(.boss-encounter) .active-threats{flex-wrap:wrap;max-width:calc(100% - 660px)}.combat-shell:has(.boss-encounter) .bonus-inventory{top:auto;bottom:234px}.combat-shell:has(.boss-encounter) .bonus-inventory-list{border-top:1px solid #658a7b66;position:absolute;bottom:100%}}@media (min-width:701px) and (max-width:1100px){.boss-encounter{width:240px;right:248px}.combat-shell:has(.boss-encounter) .active-threats{max-width:calc(100% - 520px)}}
