:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#f8e6ca;--muted:#d7bca4;--copper:#f0aa73;--ink:#1b1515;--left:#75eed7;--right:#ffad72;background:var(--ink);color:var(--paper);font-family:Avenir Next,Trebuchet MS,sans-serif}*{box-sizing:border-box}html,body,#game{width:100%;height:100%;margin:0;overflow:hidden}[hidden]{display:none!important}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible{outline:2px solid var(--left);outline-offset:4px}button:disabled{cursor:wait;opacity:.66}#game{isolation:isolate;position:relative}#arena{touch-action:none;outline:none;width:100%;height:100%;display:block}.vignette,.breach-flash,.hud,.overlay{position:absolute;inset:0}.vignette,.breach-flash,.hud{pointer-events:none}.vignette{background:radial-gradient(at 53% 44%,#0000 40%,#281a21a1 100%),linear-gradient(#20161b38,#0000 27% 72%,#1b121764)}#game[data-battlefield=aqueduct] .vignette{background:radial-gradient(at 53% 44%,#0000 40%,#111c37a8 100%),linear-gradient(#1822394d,#0000 27% 72%,#11182c7a)}.breach-flash{opacity:0;transition:opacity .28s ease-out;box-shadow:inset 0 0 8vw 1.5vw #d74836}.breach-flash.active{opacity:1;transition:none}.label,.micro,.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-weight:700}.label,.eyebrow{color:var(--copper);font-size:.72rem}.micro{color:var(--muted);letter-spacing:.1em;font-size:.64rem}.overlay{background:linear-gradient(90deg,#1b1317fa,#201518e8 29%,#26191aa0 52%,#25191a24 76%),linear-gradient(#0000 61%,#20141ccf);align-items:center;padding:3rem clamp(1.5rem,6.2vw,7rem);display:grid;overflow:auto}.overlay:after{content:"";pointer-events:none;border:1px solid #f1caa734;position:absolute;inset:1.1rem}.briefing{z-index:1;width:min(100%,35rem);position:relative}.eyebrow{margin:0 0 1.2rem}.eyebrow:before{content:"◆";margin-right:.8rem;font-size:.65rem}h1,h2,p{margin:0}h1,h2,.subtitle,.gate-reading strong,.ammo strong{font-family:Palatino Linotype,Palatino,Book Antiqua,Georgia,serif}h1{letter-spacing:-.07em;text-transform:uppercase;text-shadow:0 6px 32px #10070b69;font-size:clamp(3.25rem,8.1vw,8.75rem);font-weight:700;line-height:.78}.subtitle{color:var(--copper);margin-top:.95rem;font-size:clamp(1.2rem,2.05vw,2.1rem);font-style:italic}.description{color:var(--muted);max-width:29rem;margin-top:1.15rem;font-size:1rem;line-height:1.55}.mode-choices{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;max-width:28rem;margin:1.5rem 0 0;padding:0;display:grid}.mode-choices legend{padding:0 0 .52rem}.mode-choices button{text-align:left;background:#20151bc7;border:1px solid #e4b79648;gap:.27rem;min-width:0;padding:.62rem .78rem;display:grid}.mode-choices button[aria-pressed=true]{border-color:var(--copper);background:#4a2c28d9}.mode-choices button:hover{border-color:var(--paper)}.mode-choices strong{font-size:.82rem}.mode-choices span{color:var(--muted);font-size:.69rem}.actions{flex-wrap:wrap;align-items:center;gap:.85rem;margin-top:1.25rem;display:flex}.primary,.back{border:1px solid var(--copper);letter-spacing:.1em;text-transform:uppercase;padding:.75rem 1.05rem;font-size:.75rem;font-weight:800}.primary{color:#2b1b1b;background:#f0b07e;box-shadow:3px 3px #ba744f70}.primary:hover:enabled{background:#ffd2a5}.back{background:#2a1c21d9;border-color:#e4b79664}.back:hover{border-color:var(--copper)}.controls{flex-wrap:wrap;gap:.6rem 1rem;margin:1.35rem 0 0;display:flex}.controls div{align-items:baseline;gap:.3rem;display:flex}.controls dt{color:var(--paper);font-size:.7rem;font-weight:750}.controls dd{color:var(--muted);margin:0;font-size:.69rem}.frame-mark{color:#fff1dbaa;text-shadow:0 3px 20px #28151b;font:700 clamp(2.6rem,5vw,5rem)/1 Georgia,serif;position:absolute;top:8%;right:5%}.overlay-footer{color:#e6c6a8bd;letter-spacing:.19em;pointer-events:none;justify-content:space-between;font-size:.6rem;display:flex;position:absolute;inset:auto 2.2rem 1.8rem}.summary{flex-wrap:wrap;gap:.5rem;margin-top:1.35rem;display:flex}.summary div{border-top:1px solid #e4b79667;min-width:5.2rem;padding:.5rem .65rem 0 0}.summary strong{font:1.75rem Palatino,Georgia,serif;display:block}.hud{text-shadow:0 1px 4px #211316;flex-direction:column;justify-content:space-between;padding:clamp(.7rem,2.2vw,1.75rem);display:flex}.hud-top,.hud-bottom{grid-template-columns:1fr auto 1fr;align-items:start;gap:.75rem;display:grid}.hud-bottom{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end}.gate-widget,.wave-widget,.map-widget,.build-panel,.weapon-panel,.prompt{background:linear-gradient(140deg,#271c23e9,#2a1f24c7);border:1px solid #efc8a753;box-shadow:0 3px 20px #1b111733}.gate-widget,.map-widget,.build-panel,.weapon-panel{width:max-content;max-width:100%;padding:.65rem .85rem}.gate-reading,.ammo,.build-top,.map-top{align-items:baseline;gap:.65rem;display:flex}.gate-reading strong,.ammo strong{font-size:1.48rem;font-weight:700}.gate-ticks{gap:.16rem;display:flex}.gate-ticks i{background:#695457;width:.28rem;height:.63rem;display:block}.gate-ticks i.lit{background:#f2b684}.wave-widget{text-align:center;width:min(31rem,40vw);padding:.58rem 1rem .65rem}.wave-widget h2{margin:.14rem 0;font-size:clamp(1.05rem,2.1vw,1.6rem)}.wave-widget p{color:var(--muted);font-size:.72rem;line-height:1.35}.map-widget,.weapon-panel{justify-self:end}.map-top{justify-content:space-between}.map-widget svg{fill:none;stroke-width:3px;stroke-linecap:round;width:9rem;height:3.3rem;margin-top:.2rem;display:block}.map-left,.map-right{stroke:#85696b}.map-gate{stroke:var(--paper)}[data-power=left] .map-left{stroke:var(--left)}[data-power=right] .map-right{stroke:var(--right)}.map-caption{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;justify-content:space-around;font-size:.6rem;display:flex}[data-power=left] #power{color:var(--left)}[data-power=right] #power{color:var(--right)}.build-top{justify-content:space-between}.build-top strong{white-space:nowrap;font-size:.75rem}.slots{grid-template-columns:repeat(2,minmax(5.6rem,1fr));gap:.26rem;margin:.45rem 0;display:grid}.slot{background:#1e181e;border:1px solid #8b6c69;gap:.13rem;padding:.26rem .38rem;display:grid}.slot b{font-size:.74rem}.slot .micro{font-size:.58rem}.slot[data-live=true][data-lane=left]{border-color:var(--left)}.slot[data-live=true][data-lane=right]{border-color:var(--right)}.weapon-panel{width:min(100%,16.5rem);min-width:0}#control-hint{margin-top:.26rem;line-height:1.4;display:block}.ammo{justify-content:space-between}.prompt{text-align:center;padding:.46rem .72rem;font-size:.72rem;font-weight:700}.reticle{filter:drop-shadow(0 1px 2px #201216);width:1.25rem;height:1.25rem;position:absolute;top:50%;left:50%;translate:-50% -50%}.reticle i{background:var(--paper);position:absolute}.reticle i:first-child,.reticle i:nth-child(2){width:1px;height:4px;left:50%}.reticle i:first-child{top:0}.reticle i:nth-child(2){bottom:0}.reticle i:nth-child(3),.reticle i:nth-child(4){width:4px;height:1px;top:50%}.reticle i:nth-child(3){left:0}.reticle i:nth-child(4){right:0}.reticle.hit{animation:.145s ease-out reticle-strike;transform:rotate(45deg)}.reticle.hit i{background:#ffd19a}.reticle.head i{background:#fff2c8;box-shadow:0 0 5px #ffa472}@keyframes reticle-strike{0%{scale:calc(var(--feedback-scale,1) + .28)}to{scale:var(--feedback-scale,1)}}@media (height<=665px){.overlay{padding-top:1.8rem;padding-bottom:1.8rem}h1{font-size:clamp(2.65rem,8vw,5rem)}.description,.controls,.mode-choices,.actions{margin-top:.75rem}.overlay-footer{display:none}}@media (width<=700px){.overlay{background:linear-gradient(90deg,#1b1317f8,#26191ac0 80%)}.frame-mark{display:none}.hud-top{grid-template-columns:1fr 1fr}.wave-widget{grid-area:2/1/auto/-1;width:100%}.hud-bottom{grid-template-columns:repeat(2,minmax(0,1fr))}.prompt{grid-area:1/1/auto/-1}.gate-widget,.map-widget,.build-panel,.weapon-panel{padding:.45rem}.map-widget svg{width:6.5rem}.weapon-panel{min-width:0}}.lane-threats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;margin-top:.48rem;display:grid}.lane-threat{text-align:left;border-top:1px solid #aa90846b;gap:.1rem;padding:.33rem .42rem;display:grid}.lane-threat[data-lane=left]{color:var(--left)}.lane-threat[data-lane=right]{color:var(--right)}.lane-threat span{text-transform:uppercase;letter-spacing:.14em;font-size:.55rem}.lane-threat strong{color:var(--muted);font-size:.64rem}.lane-threat.warning{background:#a581573d;border-color:currentColor}.lane-threat.warning strong{color:var(--paper)}.alert-left circle.map-left,.alert-right circle.map-right{stroke:#fff1d6;animation:.8s ease-in-out infinite alternate lane-pulse}@keyframes lane-pulse{0%{opacity:.5}to{opacity:1}}.prep-controls{justify-items:center;gap:.4rem;display:grid}.oracle{background:linear-gradient(135deg,#3e2829fa,#231a20f4);border:1px solid #e5b88ec4;width:clamp(18rem,37vw,31rem);max-width:100%;padding:.58rem;box-shadow:0 4px 24px #120b0c69}.oracle-top{justify-content:space-between;gap:.35rem;margin-bottom:.48rem;display:flex}.oracle-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:.33rem;display:grid}.oracle-card{background:#21171bc9;border:1px solid #ba926c67;min-width:0;padding:.45rem}.oracle-card kbd{color:var(--copper);margin-right:.35rem;font-size:.7rem;font-weight:800}.oracle-card strong{color:var(--paper);font-size:.73rem}.oracle-card .boon-detail{color:var(--muted);margin-top:.22rem;font-size:.66rem;line-height:1.35;display:block}.equipped{color:var(--copper);text-align:center;background:#261a20db;padding:.3rem .46rem;font-size:.64rem}.reticle.blocked{color:#a9efff;transform:none}.reticle.blocked:before,.reticle.killed:before{content:"";border:1px solid;border-radius:.16rem;position:absolute;inset:-.12rem}.reticle.blocked:before{rotate:45deg}.reticle.blocked i{background:currentColor}.shot-note{color:#ffdcad;text-align:center;text-wrap:balance;background:#231c22ec;border:1px solid #f5bf726b;width:max-content;max-width:calc(100vw - 2rem);padding:.3rem .55rem;font-size:.69rem;font-weight:750;position:absolute;top:calc(50% + 1.65rem);left:50%;transform:translate(-50%)}.shot-note[data-feedback=blocked]{color:#c5f3ff;border-color:#8adbea9c}.shot-note[data-feedback=head]{color:#fff1c3}@media (width<=700px){.prep-controls{grid-area:1/1/auto/-1}.oracle{width:min(100%,28rem)}}@media (prefers-reduced-motion:reduce){.alert-left circle.map-left,.alert-right circle.map-right,.reticle.hit{animation:none}.breach-flash{transition:none}}[data-power=both] .map-left{stroke:var(--left)}[data-power=both] .map-right{stroke:var(--right)}[data-power=both] #power{color:#fff1d6}.map-key{color:var(--muted);border-top:1px solid #e4b7964c;justify-content:space-between;gap:.3rem;margin-top:.35rem;padding-top:.25rem;font-size:.55rem;display:flex}.map-key span:before{content:"●";color:#fff1d6;margin-right:.18rem}.map-widget .contact{fill:#fff1d6;stroke:#2b191b;stroke-width:.75px}.map-widget .contact.shieldbearer{fill:#d6a6fa}.map-widget .contact.minotaur{fill:#ff805c}.map-widget .contact.marked{stroke:#ffdb68;stroke-width:2px}.trial-action{color:#f9ca97;text-align:center;background:#352227ee;border:1px solid #e7b77c78;padding:.38rem .58rem;font-size:.69rem;font-weight:750}.wave-report{margin-top:1rem}.wave-report h2{font-family:inherit}.wave-report table{border-collapse:collapse;text-align:left;width:min(100%,27rem);margin-top:.3rem;font-size:.73rem}.wave-report td,.wave-report th{border-bottom:1px solid #e4b7964c;padding:.36rem .35rem}.wave-report th{color:var(--muted)}.wave-report [data-outcome=breached]{color:#ffa77e}.map-choices{margin-top:1rem}.map-choices+.mode-choices{margin-top:.85rem}.map-top{gap:.65rem}#current-map{letter-spacing:.09em}.aiming .reticle:not(.hit){opacity:.78;scale:.72}.reticle.killed i{filter:drop-shadow(0 0 4px #ed9f3b);background:#ffe199}.reticle.killed{--feedback-scale:1.22;color:#ffdc88;scale:var(--feedback-scale)}.reticle.killed:before{border-width:2px;border-radius:50%;box-shadow:0 0 0 2px #23170c8f}.shot-note[data-feedback=kill]{color:#ffe3a8;border-color:#f5bf72a8}.prototype-links{flex-wrap:wrap;gap:.45rem .9rem;margin-top:.85rem;display:flex}.prototype-links a{color:var(--copper);text-underline-offset:.2em;font-size:.75rem}.prototype-links a:focus-visible{outline:1px solid var(--copper);outline-offset:.22rem}.battle-action{pointer-events:auto;touch-action:manipulation;color:var(--paper);background:#3c292b;border:1px solid #d79561;border-radius:3px;min-height:30px;padding:.35rem .55rem;font-size:.72rem;font-weight:700}.battle-action:hover:not(:disabled){background:#523732}.battle-action:disabled{cursor:default}#start-wave,#shoot:not(:disabled){background:var(--copper);color:var(--ink)}#start-wave{margin:.4rem auto 0;display:block}#start-wave:hover,#shoot:hover:not(:disabled){background:#ffd19a}.weapon-actions{gap:.3rem;margin:.27rem 0;display:flex}.campaign-choices{margin-top:.85rem}.hud .gear-select,.hud .oracle-card{pointer-events:auto}.gear-select{width:100%;min-width:0;min-height:1.65rem;color:var(--paper);font:inherit;cursor:pointer;background:#2b2225;border:1px solid #957362;border-radius:3px;padding:.15rem .2rem;font-size:.72rem}.gear-select:focus-visible{outline:2px solid var(--left);outline-offset:2px}.socket-note{max-width:24ch;min-height:2.1em;color:var(--muted);margin-top:.22rem;font-size:.67rem;line-height:1.32}.armory{border-bottom:1px solid #efc8a743;gap:.24rem;padding-bottom:.35rem;display:grid}.oracle-card{text-align:left;color:var(--paper)}.oracle-card:hover{border-color:var(--copper);background:#49332e}.map-key{grid-template-columns:repeat(3,max-content);justify-content:space-between;display:grid}.map-key .shieldbearer:before{color:#d6a6fa}.map-key .minotaur:before{color:#ff805c}.map-key .lancer:before{color:#f5d685}.map-key .sapper:before{color:#ff9a6a}.map-key .colossus:before{color:#c2adff}.map-widget .contact.lancer{fill:#f5d685}.map-widget .contact.sapper{fill:#ff9a6a}.map-widget .contact.colossus{fill:#c2adff}#hud[data-campaign=patrol] .siege-contact{display:none}.shot-note[data-feedback=ward]{color:#d3f5ff;border-color:#9be1f4a8}@media (width<=420px){.hud-top,.hud-bottom{gap:.4rem}.slots{grid-template-columns:repeat(2,minmax(0,1fr))}.build-top{flex-wrap:wrap;gap:.1rem .3rem}}.boss{color:#eadfff;background:#291f3a;border:1px solid #b6a1ff85;margin-top:.45rem;padding:.35rem .45rem;font-size:.7rem}.boss>div{justify-content:space-between;gap:.4rem;display:flex}.boss progress{accent-color:#c2adff;width:100%;height:.45rem;margin-top:.25rem;display:block}@media (width<=700px){#hud[data-draft=true] .build-panel,#hud[data-draft=true] .weapon-panel{display:none}}@media (width<=700px) and (height<=550px){.hud{padding:.5rem}.hud-top,.hud-bottom{gap:.32rem}.hud-top .map-key,#control-hint{display:none}.map-widget svg{height:2.4rem}.wave-widget{padding:.35rem .5rem}.lane-threats{margin-top:.24rem}.lane-threat{padding-block:.18rem}.socket-note{min-height:0}.armory{padding-bottom:.18rem}}.map-key .drummer:before,.shot-note[data-feedback=stagger]{color:#f4da91}.map-widget .contact.drummer{fill:#eaba64}.reload-gauge{width:100%;height:.42rem;accent-color:var(--copper);margin:.18rem 0 .25rem;display:block}.touch-controls{display:none}@media (pointer:coarse){.touch-controls{grid-area:1/1/auto/-1;justify-content:space-between;align-items:end;gap:.4rem;padding-bottom:1.1rem;display:flex}#touch-move,.touch-command{pointer-events:auto}@media (width<=700px){.hud-bottom .prep-controls{grid-row:2}}#touch-move{aspect-ratio:1;touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle,#18141642 52%,#181416ac 53%);border:1px solid #efc8a780;border-radius:50%;flex:none;place-items:center;width:4.5rem;display:grid;position:relative;box-shadow:inset 0 0 0 4px #efc8a720}.touch-thumb{aspect-ratio:1;pointer-events:none;background:#bd865a91;border:1px solid #ffc289;border-radius:50%;width:1.95rem;box-shadow:0 0 0 3px #282022ad}.touch-move-label{color:var(--paper);letter-spacing:.12em;text-transform:uppercase;font-size:.62rem;font-weight:800;position:absolute;top:calc(100% + .28rem)}.touch-command{flex-wrap:wrap;justify-content:end;gap:.3rem;display:flex}.touch-command button,.weapon-actions button{min-height:2.75rem;padding-inline:.65rem}#shoot{touch-action:none}.reticle{width:1.55rem;height:1.55rem}.reticle i{box-shadow:0 0 0 1px #17101bbb}.reticle i:first-child,.reticle i:nth-child(2){width:2px;height:5px}.reticle i:nth-child(3),.reticle i:nth-child(4){width:5px;height:2px}.hud .weapon-panel{max-width:100%}@media (height<=690px){#touch-move{width:3.5rem}.touch-thumb{width:1.45rem}}}.touch-brief{display:none}@media (pointer:coarse){.overlay #controls{display:none}.touch-brief{max-width:42ch;color:var(--muted);margin-top:.6rem;font-size:.78rem;line-height:1.45;display:block}}
