:root{--ui-glass:#0e1815e6;--ui-glass-soft:#0e18158c;--ui-line:#e2e8ce1f;--ui-line-strong:#e2e8ce47;--ui-text:#eef0e2;--ui-muted:#9eab97;--ui-faint:#6d7a69;--ui-accent:#c6df7e;--ui-accent-deep:#8fb04a;--ui-serif:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--ui-sans:system-ui, -apple-system, "Segoe UI", sans-serif}#ui{pointer-events:none;font-family:var(--ui-sans);color:var(--ui-text);z-index:10;position:fixed;inset:0}#ui *{box-sizing:border-box}#ui .veil{opacity:0;background:linear-gradient(90deg,#080e0cb8 0%,#080e0c59 45%,#080e0c1a 100%);transition:opacity .35s,-webkit-backdrop-filter .35s,backdrop-filter .35s;position:absolute;inset:0}#ui.paused .veil{opacity:1;-webkit-backdrop-filter:blur(5px)saturate(.85);backdrop-filter:blur(5px)saturate(.85);pointer-events:auto}#ui.title .veil{opacity:1;pointer-events:auto;background:linear-gradient(90deg,#080e0c9e 0%,#080e0c2e 50%,#080e0c00 100%)}#ui .screen{opacity:0;flex-direction:column;justify-content:center;gap:4px;width:min(520px,86vw);transition:opacity .35s,transform .35s;display:flex;position:absolute;top:0;bottom:0;left:clamp(24px,6vw,96px);transform:translate(-12px)}#ui.title .screen.title,#ui.paused .screen.pause{opacity:1;pointer-events:auto;transform:none}#ui.title.panel-open .screen.title,#ui.paused.panel-open .screen.pause{opacity:.25}#ui .eyebrow{letter-spacing:.32em;text-transform:uppercase;color:var(--ui-accent);font-size:11px;font-weight:600}#ui .screen h1{font:400 clamp(52px, 8vw, 92px)/1 var(--ui-serif);letter-spacing:.06em;text-shadow:0 6px 30px #00000059;margin:6px 0 0}#ui .screen.pause h1{letter-spacing:.02em;font-size:clamp(40px,5vw,60px)}#ui .swoosh{width:min(420px,80%);height:28px;margin:2px 0 0 4px;overflow:visible}#ui .swoosh path{fill:none;stroke:var(--ui-accent);stroke-width:1.4px;stroke-linecap:round;stroke-dasharray:520;stroke-dashoffset:520px;opacity:.85;animation:2.4s .2s forwards ui-draw}#ui .swoosh path+path{stroke-width:1px;opacity:.45;animation-delay:.5s}@keyframes ui-draw{to{stroke-dashoffset:0}}#ui .tagline{font:italic 400 18px/1.4 var(--ui-serif);color:var(--ui-muted);margin:4px 0 40px}#ui .items{flex-direction:column;gap:2px;display:flex}#ui .item{all:unset;cursor:pointer;letter-spacing:.26em;text-transform:uppercase;width:-moz-fit-content;width:fit-content;color:var(--ui-muted);padding:9px 0 9px 26px;font-size:13px;font-weight:600;transition:color .15s,padding .2s;position:relative}#ui .item:before{content:"";background:var(--ui-accent);transform-origin:0;width:14px;height:1.5px;transition:transform .2s;position:absolute;top:50%;left:0;transform:scaleX(0)}#ui .item.focus{color:var(--ui-text);padding-left:32px}#ui .item.focus:before{transform:scaleX(1)}#ui .item small{font:italic 400 13px var(--ui-serif);letter-spacing:0;text-transform:none;color:var(--ui-faint);margin-top:4px;display:block}#ui .item:not(.focus) small{display:none}#ui .card{background:var(--ui-glass-soft);border:1px solid var(--ui-line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;border-radius:14px;width:300px;padding:18px 20px 16px;transition:opacity .35s;position:absolute;bottom:64px;right:clamp(24px,5vw,72px)}#ui.paused:not(.panel-open) .card{opacity:1}#ui .card .eyebrow{color:var(--ui-muted);font-size:10px}#ui .card dl{grid-template-columns:1fr auto;gap:8px 12px;margin:12px 0 0;display:grid}#ui .card dt{color:var(--ui-muted);font-size:13px}#ui .card dd{font:400 14px var(--ui-serif);text-align:right;margin:0}#ui .panel{background:linear-gradient(180deg, #14211df0, var(--ui-glass));border-left:1px solid var(--ui-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto;flex-direction:column;width:min(560px,100vw);transition:transform .38s cubic-bezier(.2,.8,.2,1);display:flex;position:absolute;top:0;bottom:0;right:0;transform:translate(104%);box-shadow:-30px 0 60px #00000059}#ui.panel-open .panel{transform:none}#ui .panel header{padding:52px 44px 18px}#ui .panel h2{font:400 40px/1.1 var(--ui-serif);margin:10px 0 0}#ui .panel .body{scrollbar-width:thin;scrollbar-color:var(--ui-line-strong) transparent;flex:1;padding:4px 44px 24px;overflow-y:auto}#ui .panel footer{border-top:1px solid var(--ui-line);color:var(--ui-muted);flex-wrap:wrap;gap:18px;padding:16px 44px 26px;font-size:12px;display:flex}#ui .panel footer span{align-items:center;gap:8px;display:inline-flex}#ui .section{letter-spacing:.3em;text-transform:uppercase;color:var(--ui-faint);align-items:center;gap:14px;margin:22px 0 6px;font-size:10.5px;font-weight:600;display:flex}#ui .section:after{content:"";background:var(--ui-line);flex:1;height:1px}#ui .row{border-radius:8px;grid-template-columns:1fr minmax(150px,230px);align-items:center;gap:16px;min-height:42px;margin:0 -12px;padding:6px 12px;transition:background .15s;display:grid}#ui .row.focus{box-shadow:inset 2px 0 0 var(--ui-accent);background:#c6df7e14}#ui .row .label{font-size:14px}#ui .row .hint{font:italic 400 12.5px var(--ui-serif);color:var(--ui-faint);margin-top:2px;display:block}#ui .credits{border-top:1px solid var(--ui-line);font:italic 400 12px/1.5 var(--ui-serif);color:var(--ui-faint);margin-top:18px;padding-top:12px}#ui .row .control{justify-self:end;align-items:center;gap:12px;display:flex}#ui .choices{gap:14px;display:flex}#ui .choice{all:unset;cursor:pointer;letter-spacing:.14em;text-transform:uppercase;color:var(--ui-faint);border-bottom:1.5px solid #0000;padding:3px 0;font-size:11.5px;font-weight:600}#ui .choice:hover{color:var(--ui-muted)}#ui .choice.on{color:var(--ui-text);border-color:var(--ui-accent)}#ui input[type=range]{appearance:none;cursor:pointer;background:0 0;width:140px;height:18px}#ui input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--ui-accent) var(--fill,50%), var(--ui-line-strong) var(--fill,50%));height:2px}#ui input[type=range]::-moz-range-track{background:var(--ui-line-strong);height:2px}#ui input[type=range]::-moz-range-progress{background:var(--ui-accent);height:2px}#ui input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;border:1.5px solid var(--ui-text);background:#13201c;width:11px;height:11px;margin-top:-4.5px;transform:rotate(45deg)}#ui input[type=range]::-moz-range-thumb{border:1.5px solid var(--ui-text);background:#13201c;border-radius:0;width:9px;height:9px;transform:rotate(45deg)}#ui .value{text-align:right;font-variant-numeric:tabular-nums;min-width:44px;color:var(--ui-text);font-size:12.5px}#ui .toggle{all:unset;cursor:pointer;color:var(--ui-muted);align-items:center;gap:10px;font-size:12.5px;display:inline-flex}#ui .toggle i{border:1.5px solid var(--ui-line-strong);border-radius:8px;width:30px;height:16px;transition:all .2s;position:relative}#ui .toggle i:after{content:"";background:var(--ui-muted);border-radius:50%;width:9px;height:9px;transition:all .2s;position:absolute;top:2px;left:2px}#ui .toggle.on{color:var(--ui-text)}#ui .toggle.on i{border-color:var(--ui-accent);background:#c6df7e26}#ui .toggle.on i:after{background:var(--ui-accent);left:16px}#ui .action{all:unset;cursor:pointer;letter-spacing:.24em;text-transform:uppercase;color:var(--ui-muted);padding:12px 0 4px;font-size:12px;font-weight:600;display:block}#ui .row.focus .action,#ui .action:hover{color:var(--ui-text)}#ui kbd{min-width:26px;height:24px;font:600 11px var(--ui-sans);color:var(--ui-text);border:1.5px solid var(--ui-line-strong);background:#ffffff08;border-radius:6px;justify-content:center;align-items:center;padding:0 7px;display:inline-flex;box-shadow:0 2px #0000004d}#ui .keys{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}#ui .keys .or{color:var(--ui-faint);align-self:center;font-size:11px}#ui .controls .row{border-bottom:1px solid var(--ui-line);border-radius:0;grid-template-columns:1fr auto}#ui .ship .row .label{color:var(--ui-muted)}#ui .ship .row.found .label{color:var(--ui-text)}#ui .ship .row .state{letter-spacing:.22em;text-transform:uppercase;color:var(--ui-faint);font-size:10.5px;font-weight:600}#ui .ship .row.found .state{color:#6fe3f2}#ui .hint-bar{color:var(--ui-muted);background:var(--ui-glass-soft);border:1px solid var(--ui-line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;border-radius:999px;gap:18px;padding:8px 16px;font-size:12px;transition:opacity .6s;display:flex;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}#ui .hint-bar.show{opacity:1}#ui .hint-bar span{align-items:center;gap:8px;display:inline-flex}#ui .notice{color:var(--ui-muted);opacity:0;font-size:12px;transition:opacity .3s;position:absolute;top:24px;left:50%;transform:translate(-50%)}#ui .notice.show{opacity:1}@media (max-width:640px){#ui .panel header{padding:32px 20px 12px}#ui .panel .body,#ui .panel footer{padding-left:20px;padding-right:20px}#ui .row{grid-template-columns:1fr;gap:6px}#ui .row .control{justify-self:start}#ui .card{display:none}}#hud{pointer-events:none;z-index:9;font-family:var(--ui-sans);color:var(--ui-text);position:fixed;inset:0}#hud .health{background:var(--ui-glass-soft);border:1px solid var(--ui-line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;border-radius:999px;align-items:center;gap:12px;padding:9px 14px;transition:opacity .4s;display:flex;position:absolute;bottom:24px;left:24px}#hud.visible .health{opacity:1}#hud .health b{letter-spacing:.26em;text-transform:uppercase;color:var(--ui-muted);font-size:10.5px;font-weight:600}#hud .health .track{background:#ffffff1a;border-radius:3px;width:180px;height:6px;overflow:hidden}#hud .health .track i{border-radius:3px;height:100%;transition:width .25s,background .4s;display:block}#hud .health span{font-variant-numeric:tabular-nums;text-align:right;min-width:26px;font-size:12.5px}#hud.low .health{border-color:#d9573f80}#hud .hurt{opacity:0;background:radial-gradient(#780a0000 55%,#9612088c 100%);position:absolute;inset:0}#hud .fallen{opacity:0;text-align:center;background:radial-gradient(#0e0a088c,#060403eb);flex-direction:column;justify-content:center;align-items:center;gap:6px;transition:opacity 1s;display:flex;position:absolute;inset:0}#hud .fallen.show{opacity:1}#hud .fallen .eyebrow{letter-spacing:.32em;text-transform:uppercase;color:#d9573f;font-size:11px;font-weight:600}#hud .fallen h2{font:400 40px/1.1 var(--ui-serif);margin:6px 0 0}#hud .fallen p{font:italic 16px var(--ui-serif);color:var(--ui-muted);margin:6px 0 0}#hud .ammo{background:var(--ui-glass-soft);border:1px solid var(--ui-line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;border-radius:999px;align-items:center;gap:12px;padding:9px 14px;transition:opacity .4s;display:flex;position:absolute;bottom:24px;right:24px}#hud.visible .ammo{opacity:1}#hud .ammo b{letter-spacing:.26em;text-transform:uppercase;color:var(--ui-muted);font-size:10.5px;font-weight:600}#hud .ammo .track{background:#ffffff1a;border-radius:3px;width:120px;height:6px;overflow:hidden}#hud .ammo .track i{background:#5ff2ff;border-radius:3px;height:100%;transition:width .12s linear;display:block;box-shadow:0 0 8px #5ff2ff}#hud .ammo span{font-variant-numeric:tabular-nums;text-align:right;min-width:46px;font-size:12.5px}#hud .ammo.low .track i{background:#e2b44f;box-shadow:0 0 8px #e2b44f}#hud .ammo.reloading .track i{box-shadow:none;background:#9eab97}#hud .cross{opacity:0;--gap:8px;width:0;height:0;transition:opacity .2s;position:absolute;top:50%;left:50%}#hud.visible .cross.show{opacity:1}#hud .cross b{background:#e9fbff;border-radius:50%;width:3px;height:3px;position:absolute;top:-1.5px;left:-1.5px;box-shadow:0 0 4px #5ff2ff}#hud .cross i{background:#e9fbffe6;transition:transform .12s;position:absolute;box-shadow:0 0 3px #0009}#hud .cross i:first-child{width:2px;height:8px;left:-1px;top:calc(-8px - var(--gap))}#hud .cross i:nth-child(2){width:2px;height:8px;left:-1px;top:var(--gap)}#hud .cross i:nth-child(3){width:8px;height:2px;top:-1px;left:calc(-8px - var(--gap))}#hud .cross i:nth-child(4){width:8px;height:2px;top:-1px;left:var(--gap)}#hud .marker{opacity:0;transition:opacity .1s;position:absolute;top:50%;left:50%}#hud .marker.show{opacity:1}#hud .marker i{background:#fff;width:2px;height:9px;position:absolute;top:-4.5px;left:-1px}#hud .marker i:first-child{transform:rotate(45deg)translateY(-10px)}#hud .marker i:nth-child(2){transform:rotate(135deg)translateY(-10px)}#hud .marker i:nth-child(3){transform:rotate(225deg)translateY(-10px)}#hud .marker i:nth-child(4){transform:rotate(315deg)translateY(-10px)}#hud .marker.kill i{background:#ff5a3d;height:12px}#hud .gems{background:var(--ui-glass-soft);border:1px solid var(--ui-line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-variant-numeric:tabular-nums;opacity:0;border-radius:999px;align-items:center;gap:9px;padding:6px 13px 6px 11px;font-size:13px;font-weight:600;transition:opacity .4s;display:flex;position:absolute;bottom:74px;left:24px}#hud.visible .gems{opacity:1}#hud .gems i{clip-path:polygon(50% 0,100% 40%,50% 100%,0 40%);filter:drop-shadow(0 0 4px #ffc446cc);background:linear-gradient(135deg,#ffe48a,#ffb72e 55%,#c97a10);width:11px;height:15px}#hud .gems.pop{animation:.35s gem-pop}@keyframes gem-pop{0%{transform:scale(1)}40%{transform:scale(1.18)}to{transform:scale(1)}}#ui .wip{max-width:420px;font:italic 400 13px/1.4 var(--ui-serif);color:var(--ui-muted);flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:22px;display:flex}#ui .wip .badge{font:600 10px var(--ui-sans,inherit);letter-spacing:.2em;text-transform:uppercase;color:#ffc45c;background:#ffc45c1f;border:1px solid #ffc45c8c;border-radius:999px;padding:3px 8px;font-style:normal}#ui .panel .wip{max-width:none;margin:18px 0 4px}#ui .music-hint{font:italic 400 13px var(--ui-serif);color:var(--ui-faint);margin-top:14px;transition:opacity .6s;animation:2.6s ease-in-out infinite hint-breathe}#ui .music-hint.gone{opacity:0;animation:none}@keyframes hint-breathe{50%{opacity:.45}}#worldmap{z-index:12;font-family:var(--ui-sans);color:var(--ui-text);-webkit-user-select:none;user-select:none;background:#16231f;display:none;position:fixed;inset:0}#worldmap.show{animation:.28s map-in;display:block}@keyframes map-in{0%{opacity:0;transform:scale(1.015)}to{opacity:1;transform:none}}#worldmap canvas{cursor:grab;width:100%;height:100%;position:absolute;inset:0}#worldmap.dragging canvas{cursor:grabbing}#worldmap .frame{pointer-events:none;border:1px solid #e2e8ce52;position:absolute;inset:14px;box-shadow:inset 0 0 0 5px #0e181559,inset 0 0 0 6px #e2e8ce24}#worldmap .head{pointer-events:none;border-left:2px solid var(--ui-accent);background:linear-gradient(90deg,#0e1815d1,#0e181559);padding:14px 20px 14px 18px;position:absolute;top:30px;left:34px}#worldmap .eyebrow{letter-spacing:.32em;text-transform:uppercase;color:var(--ui-accent);font-size:11px;font-weight:600}#worldmap h2{font:400 34px/1.05 var(--ui-serif);letter-spacing:.02em;text-shadow:0 3px 18px #0006;margin:6px 0 0}#worldmap .head p{font:italic 400 15px var(--ui-serif);color:var(--ui-muted);margin:4px 0 0}#worldmap .compass{pointer-events:none;filter:drop-shadow(0 4px 12px #00000073);width:96px;height:96px;position:absolute;top:30px;right:34px}#worldmap .compass svg{width:100%;height:100%}#worldmap .compass .ring{fill:#0e1815c7;stroke:#e2e8ce8c;stroke-width:1.2px}#worldmap .compass .ring.thin{fill:none;stroke:#e2e8ce40;stroke-dasharray:2 3}#worldmap .compass .needle-ns{fill:#eef0e2d9}#worldmap .compass .needle-ew{fill:#eef0e273}#worldmap .compass .north{fill:var(--ui-accent)}#worldmap .compass .hub{fill:#16231f;stroke:var(--ui-accent);stroke-width:1.2px}#worldmap .compass .n{fill:var(--ui-accent);font:700 11px var(--ui-sans);text-anchor:middle;dominant-baseline:middle;transform:translateY(-14px)}#worldmap .legend{pointer-events:none;border:1px solid var(--ui-line);color:var(--ui-muted);background:#0e1815d1;border-radius:6px;gap:7px;padding:12px 16px;font-size:12px;display:grid;position:absolute;bottom:34px;left:34px}#worldmap .legend div{align-items:center;gap:10px;display:flex}#worldmap .legend i{width:16px;height:10px;display:inline-block}#worldmap .legend i.you{border-bottom:12px solid #ffc45c;border-left:6px solid #0000;border-right:6px solid #0000;width:0;height:0;margin:0 2px}#worldmap .legend i.road{background:#e6d2a2;border-radius:2px;height:4px;box-shadow:0 0 0 1px #46341e99}#worldmap .legend i.house{background:#a4553a;width:10px;margin:0 3px;box-shadow:0 0 0 1px #1e140ee6}#worldmap .legend i.wall{background:#d6cdbae6;border:2px solid #4a4744;border-radius:50%;width:12px;height:12px;margin:0 2px}#worldmap .scale{pointer-events:none;color:var(--ui-text);text-shadow:0 1px 4px #000c;font-size:11px;position:absolute;bottom:38px;right:38px}#worldmap .scale .bar{border:1px solid #eef0e2e6;height:6px;display:flex}#worldmap .scale .bar i{flex:1}#worldmap .scale .bar i:nth-child(odd){background:#eef0e2e6}#worldmap .scale .labels{justify-content:space-between;margin-top:4px;display:flex}#worldmap .hints{pointer-events:none;border:1px solid var(--ui-line);color:var(--ui-muted);white-space:nowrap;background:#0e1815d1;border-radius:999px;gap:18px;padding:9px 16px;font-size:12px;display:flex;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}#worldmap .hints kbd{border:1px solid var(--ui-line-strong);font:600 11px var(--ui-sans);color:var(--ui-text);background:#ffffff0a;border-radius:4px;margin-right:6px;padding:2px 7px;display:inline-block}@media (max-width:700px){#worldmap .head{top:22px;left:22px}#worldmap h2{font-size:26px}#worldmap .compass{width:70px;height:70px;top:22px;right:22px}#worldmap .legend{display:none}#worldmap .hints{gap:10px;font-size:11px}}#story{pointer-events:none;z-index:11;font-family:var(--ui-sans);color:var(--ui-text);position:fixed;inset:0}#story>:not(.opening){opacity:0;transition:opacity .35s,transform .35s}#story:not(.visible)>:not(.opening){visibility:hidden}#story .talk{background:var(--ui-glass);border:1px solid var(--ui-line);border-radius:10px;width:min(640px,100% - 32px);padding:14px 20px 16px;position:absolute;bottom:92px;left:50%;transform:translate(-50%,8px);box-shadow:0 10px 40px #00000059}#story .talk.show{opacity:1;transform:translate(-50%)}#story .talk b{letter-spacing:.3em;text-transform:uppercase;font-size:10.5px;font-weight:700;display:block}#story .talk.ai b{color:#6fe3f2}#story .talk.ai{border-left:3px solid #6fe3f2}#story .talk.folk b{color:#f0c46c}#story .talk.folk{border-left:3px solid #f0c46c}#story .talk p{min-height:1.45em;font:400 18px/1.45 var(--ui-serif);margin:6px 0 0}#story .objective{background:var(--ui-glass-soft);border:1px solid var(--ui-line);border-radius:8px;max-width:min(340px,100% - 40px);padding:10px 14px 12px;position:absolute;top:20px;right:20px;transform:translateY(-6px)}#story .objective.show{opacity:1;transform:none}#story .objective b{letter-spacing:.3em;text-transform:uppercase;color:var(--ui-accent);font-size:10px;font-weight:700;display:block}#story .objective p{font:400 15px/1.4 var(--ui-serif);margin:4px 0 0}#story .objective .distance{font:600 11px var(--ui-sans);letter-spacing:.12em;text-transform:uppercase;color:#6fe3f2;margin-top:4px;display:block}#story .objective .distance:empty{display:none}#story .objective.fresh{animation:2.4s story-glow}@keyframes story-glow{0%,30%{box-shadow:0 0 0 1px var(--ui-accent), 0 0 24px #c6df7e73}to{box-shadow:none}}#story .prompt{background:var(--ui-glass);border:1px solid var(--ui-line-strong);border-radius:999px;align-items:center;gap:10px;padding:8px 14px;font-size:14px;display:flex;position:absolute;bottom:200px;left:50%;transform:translate(-50%,6px)}#story .prompt.show{opacity:1;transform:translate(-50%)}#story kbd{border:1px solid var(--ui-line-strong);min-width:24px;height:24px;font:600 12px var(--ui-sans);color:var(--ui-text);border-bottom-width:2px;border-radius:5px;place-items:center;padding:0 6px;display:inline-grid}#story .banner{text-align:center;width:min(560px,100% - 32px);position:absolute;top:18%;left:50%;transform:translate(-50%)}#story .banner.show{animation:5.5s forwards story-banner}@keyframes story-banner{0%{opacity:0;transform:translate(-50%,12px)}10%,80%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-8px)}}#story .banner .eyebrow{letter-spacing:.34em;text-transform:uppercase;color:#6fe3f2;font-size:11px;font-weight:700}#story .banner h2{font:400 clamp(34px, 5vw, 54px)/1.05 var(--ui-serif);text-shadow:0 2px 24px #0009;margin:8px 0 4px}#story .banner p{font:italic 400 17px var(--ui-serif);color:var(--ui-muted);text-shadow:0 1px 12px #000000b3;margin:0}#story .opening{text-align:center;opacity:1;pointer-events:auto;background:#020405;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px;transition:opacity 2s;display:none;position:absolute;inset:0}#story .opening.show{display:flex}#story .opening.fade{opacity:0}#story .opening p{max-width:640px;font:400 clamp(17px, 2.2vw, 23px)/1.5 var(--ui-serif);color:#d8e4e2;opacity:0;margin:0;transition:opacity 1.6s,transform 1.6s;transform:translateY(6px)}#story .opening p.on{opacity:1;transform:none}@media (max-width:640px){#story .talk{bottom:70px}#story .talk p{font-size:16px}#story .objective{top:12px;right:12px}}#killfeed{z-index:11;pointer-events:none;flex-direction:column;gap:5px;font-family:Bahnschrift,DIN Alternate,Segoe UI,system-ui,sans-serif;display:flex;position:fixed;top:16px;left:16px}#killfeed .line{color:#86a5aa;letter-spacing:.04em;clip-path:polygon(0 0,100% 0,calc(100% - 8px) 100%,0 100%);background:linear-gradient(90deg,#050d11e6,#050d11b3);padding:6px 14px 6px 12px;font-size:12.5px;transition:opacity .6s;box-shadow:inset 2px 0 #4fe3f099}#killfeed .line b{color:#e4f6f8;font-weight:600}#killfeed .line.mine{background:linear-gradient(90deg,#28200ae6,#050d11b3);box-shadow:inset 2px 0 #ffd36b}#killfeed .line.gone{opacity:0}#match{--hud:#4fe3f0;--hud-soft:#4fe3f029;--hud-line:#4fe3f059;--hud-text:#e4f6f8;--hud-muted:#86a5aa;--hud-panel:#050d11eb;--hud-font:"Bahnschrift", "DIN Alternate", "Segoe UI", system-ui, sans-serif;--hud-mono:ui-monospace, "Cascadia Mono", Consolas, monospace;--cut:16px;z-index:12;pointer-events:none;font-family:var(--hud-font);color:var(--hud-text);position:fixed;inset:0}#match.veiled{pointer-events:auto;-webkit-backdrop-filter:blur(5px)saturate(.8);backdrop-filter:blur(5px)saturate(.8);background:repeating-linear-gradient(0deg,#4fe3f006 0 1px,#0000 1px 4px),radial-gradient(#040c1059,#020609c7)}#match .card,#match .board{background:linear-gradient(160deg, #0e2228f2, var(--hud-panel) 45%);clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));box-shadow:inset 0 0 0 1px var(--hud-line), inset 0 1px 0 #4fe3f080, 0 30px 80px #00000080;opacity:0;visibility:hidden;padding:26px 28px 24px;transition:opacity .25s,transform .25s;position:absolute;left:50%}#match .card:before,#match .card:after,#match .board:before,#match .board:after{content:"";pointer-events:none;width:26px;height:26px;position:absolute}#match .card:before,#match .board:before{border-top:2px solid var(--hud);border-left:2px solid var(--hud);clip-path:polygon(0 0,100% 0,0 100%);top:4px;left:4px}#match .card:after,#match .board:after{border-bottom:2px solid var(--hud);border-right:2px solid var(--hud);clip-path:polygon(100% 0,100% 100%,0 100%);bottom:4px;right:4px}#match .card{width:min(500px,100% - 32px);top:50%;transform:translate(-50%,-47%)}#match .card.show{opacity:1;visibility:visible;transform:translate(-50%,-50%)}#match .eyebrow{letter-spacing:.38em;text-transform:uppercase;color:var(--hud);align-items:center;gap:10px;font-size:11px;font-weight:600;display:flex}#match .eyebrow:before{content:"";background:var(--hud);width:18px;height:2px;box-shadow:0 0 8px var(--hud)}#match h2{font:600 30px/1.1 var(--hud-font);letter-spacing:.04em;text-transform:uppercase;text-shadow:0 0 18px #4fe3f040;margin:10px 0 2px}#match .sub{letter-spacing:.2em;text-transform:uppercase;color:var(--hud-muted);margin:0 0 14px;font-size:12px}#match .note{color:var(--hud-muted);margin:12px 0 6px;font-size:13.5px;line-height:1.5}#match .rules{letter-spacing:.08em;color:var(--hud-muted);margin:4px 0 0;font-size:12px}#match .rules:before{content:"▸ ";color:var(--hud)}#match .waiting{letter-spacing:.06em;color:var(--hud-muted);flex:1;font-size:13px}#match input{border:0;border-bottom:2px solid var(--hud-line);width:100%;color:var(--hud-text);font:500 17px var(--hud-font);letter-spacing:.04em;background:#4fe3f00f;outline:none;margin:8px 0 4px;padding:11px 14px}#match input:focus{border-bottom-color:var(--hud);background:#4fe3f01a}#match .row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;display:flex}#match button{font:700 12px var(--hud-font);letter-spacing:.22em;text-transform:uppercase;cursor:pointer;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);border:0;padding:11px 20px}#match button.primary{color:#04161a;background:linear-gradient(90deg,#4fe3f0,#7cf2c8);box-shadow:0 0 22px #4fe3f059}#match button.primary:hover{filter:brightness(1.12)}#match button.quiet{color:var(--hud-muted);box-shadow:inset 0 0 0 1px var(--hud-line);background:#4fe3f014}#match button.quiet:hover{color:var(--hud-text);background:#4fe3f024}#match .scroll{scrollbar-width:thin;scrollbar-color:var(--hud) #4fe3f014;max-height:40vh;margin:6px -6px 4px 0;padding-right:6px;position:relative;overflow-y:auto}#match .scroll.more-below{-webkit-mask-image:linear-gradient(#000 80%,#0000);mask-image:linear-gradient(#000 80%,#0000)}#match .scroll.more-above{-webkit-mask-image:linear-gradient(#0000,#000 20%);mask-image:linear-gradient(#0000,#000 20%)}#match .scroll.more-above.more-below{-webkit-mask-image:linear-gradient(#0000,#000 18% 82%,#0000);mask-image:linear-gradient(#0000,#000 18% 82%,#0000)}#match .scroll::-webkit-scrollbar{width:6px}#match .scroll::-webkit-scrollbar-track{background:#4fe3f00f;border-radius:3px}#match .scroll::-webkit-scrollbar-thumb{background:linear-gradient(#4fe3f0,#2a9fb0);border-radius:3px;box-shadow:0 0 8px #4fe3f099}#match .scroll::-webkit-scrollbar-thumb:hover{background:#7cf2f8}#match .roster{counter-reset:none;flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}#match .roster li{clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);letter-spacing:.03em;background:linear-gradient(90deg,#4fe3f017,#4fe3f005 70%);align-items:center;gap:10px;padding:8px 12px 8px 10px;font-size:14.5px;display:flex}#match .roster li.head{letter-spacing:.3em;text-transform:uppercase;color:var(--hud-muted);background:0 0;padding-top:0;padding-bottom:2px;font-size:10px}#match .roster li.head .name{margin-left:22px}#match .roster li.me{box-shadow:inset 3px 0 0 var(--hud);background:linear-gradient(90deg,#4fe3f03d,#4fe3f00a 75%)}#match .roster .num{width:24px;font:600 13px var(--hud-mono);color:var(--hud-muted);flex:none}#match .roster li.top1 .num{color:#ffd36b;text-shadow:0 0 10px #ffd36b99}#match .roster li.top2 .num{color:#dfe8ec}#match .roster li.top3 .num{color:#e3a46c}#match .roster .chip{background:var(--chip);width:10px;height:10px;box-shadow:0 0 8px var(--chip);flex:none;transform:rotate(45deg)}#match .roster .name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}#match .roster .stat{text-align:right;width:46px;font:600 14px var(--hud-mono);color:var(--hud-muted);flex:none}#match .roster .stat.kills{color:var(--hud-text)}#match .roster li.head .stat{font:inherit}#match .tag{letter-spacing:.2em;text-transform:uppercase;border:1px solid;flex:none;padding:2px 7px;font-size:9.5px;font-weight:700}#match .tag.lead,#match .tag.won{color:#ffd36b}#match .tag.you{color:var(--hud)}#match .tag.bot{color:var(--hud-muted);border-color:#86a5aa80}#match .tag+.tag{margin-left:-4px}#match .clock{white-space:pre;background:var(--hud-panel);box-shadow:inset 0 0 0 1px var(--hud-line), 0 0 18px #4fe3f026;clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,10px 100%,0 50%);font:600 13px var(--hud-mono);letter-spacing:.06em;opacity:0;padding:7px 18px;transition:opacity .3s;position:absolute;top:14px;left:50%;transform:translate(-50%)}#match .clock.show{opacity:1}#match .clock.late{color:#ffb27a;box-shadow:inset 0 0 0 1px #ffb27a8c,0 0 18px #ff8c5040}#match .board{width:min(540px,100% - 32px);top:14%;transform:translate(-50%)}#match .board.show{opacity:1;visibility:visible}#match .board .eyebrow{margin-bottom:12px}@media (max-width:520px){#match .card,#match .board{padding:22px 18px 20px}#match h2{font-size:24px}}#match .buffs{gap:8px;display:flex;position:absolute;bottom:74px;left:50%;transform:translate(-50%)}#match .buff{background:var(--hud-panel);min-width:104px;box-shadow:inset 0 0 0 1px var(--c), 0 0 16px color-mix(in srgb, var(--c) 35%, transparent);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;gap:10px;padding:6px 12px 9px;font-size:11px;display:flex;position:relative;overflow:hidden}#match .buff b{color:var(--c);font-weight:700}#match .buff span{font-family:var(--hud-mono);color:var(--hud-text)}#match .buff:after{content:"";height:3px;width:calc(var(--f) * 100%);background:var(--c);box-shadow:0 0 8px var(--c);position:absolute;bottom:0;left:0}#match .announce{text-align:center;opacity:0;pointer-events:none;position:absolute;top:22%;left:50%;transform:translate(-50%)scale(.9)}#match .announce.show{animation:2.6s forwards hud-announce}@keyframes hud-announce{0%{opacity:0;filter:blur(4px);transform:translate(-50%)scale(1.35)}10%{opacity:1;filter:none;transform:translate(-50%)scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-10px)scale(.98)}}#match .announce .title{font:700 clamp(30px, 4.4vw, 52px)/1 var(--hud-font);letter-spacing:.12em;text-transform:uppercase}#match .announce .line{letter-spacing:.3em;text-transform:uppercase;color:var(--hud-text);text-shadow:0 1px 8px #000c;margin-top:8px;font-size:13px}#match .announce.gold .title{color:#ffd36b;text-shadow:0 0 24px #ffc450b3,0 2px #7a4b00}#match .announce.cyan .title{color:var(--hud);text-shadow:0 0 24px #4fe3f0b3}#match .announce.red .title{color:#ff6a5a;text-shadow:0 0 24px #ff503cb3}#match .awards{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:6px 0 12px;display:grid}#match .award{clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);background:linear-gradient(160deg,#ffd36b24,#ffd36b08);padding:10px 12px;box-shadow:inset 0 0 0 1px #ffd36b73}#match .award.me{box-shadow:inset 0 0 0 1px #ffd36b,0 0 18px #ffd36b4d}#match .award .what{letter-spacing:.26em;text-transform:uppercase;color:#ffd36b;font-size:10px;font-weight:700}#match .award .who{margin-top:4px;font-size:15px;font-weight:600}#match .award .value{font:600 12px var(--hud-mono);color:var(--hud-muted);margin-top:2px}#match .choices{flex-direction:column;gap:8px;margin:12px 0 2px;display:flex}#match .choice-row{align-items:center;gap:12px;display:flex}#match .choice-row .label{letter-spacing:.26em;text-transform:uppercase;width:64px;color:var(--hud-muted);flex:none;font-size:10px;font-weight:700}#match .swatches{flex-wrap:wrap;gap:6px;display:flex}#match button.swatch{background:var(--chip);clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px);opacity:.75;width:22px;height:22px;padding:0;box-shadow:inset 0 0 0 2px #00000059}#match button.swatch:hover{opacity:1}#match button.swatch.on{opacity:1;box-shadow:inset 0 0 0 2px #fff, 0 0 12px var(--chip)}#match .segments{gap:4px;display:flex}#match button.seg{letter-spacing:.14em;color:var(--hud-muted);box-shadow:inset 0 0 0 1px var(--hud-line);clip-path:none;background:#4fe3f00f;padding:6px 12px;font-size:11px}#match button.seg:hover{color:var(--hud-text)}#match button.seg.on{color:var(--hud-text);box-shadow:inset 0 0 0 1px var(--hud);background:#4fe3f038}#match .nades{align-items:center;gap:7px;display:none;position:absolute;bottom:74px;right:30px}#match .nades.show{display:flex}#match .nades .label{letter-spacing:.22em;text-transform:uppercase;color:var(--hud-muted);margin-right:4px;font-size:10px;font-weight:700}#match .nades i{width:9px;height:9px;box-shadow:inset 0 0 0 1px var(--hud-line);transform:rotate(45deg)}#match .nades i.on{background:var(--hud);box-shadow:0 0 8px var(--hud)}#match .choice-row .mode-name{letter-spacing:.14em;text-transform:uppercase;color:var(--hud-text);font-size:13px;font-weight:700}#match .segments{flex-wrap:wrap}#match .roster li.team-head{background:color-mix(in srgb, var(--team) 16%, transparent);box-shadow:inset 3px 0 0 var(--team);letter-spacing:.3em;text-transform:uppercase;color:var(--team);margin-top:8px;padding:7px 12px;font-size:11px;font-weight:700}#match .roster li.team-head .name{flex:1;margin-left:0}#match .roster li.team-head .stat{color:var(--team);font-size:16px}
