#game-root{position:fixed;inset:0;z-index:9000;display:none;background:#05060a;color:var(--ink,#eceef3);font-family:var(--font-ui,system-ui,sans-serif)}#game-root.on{display:block}#game-root .g-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;outline:none}.mono{font-family:var(--font-mono,ui-monospace,monospace)}.ld{position:absolute;inset:0;z-index:20;display:flex;flex-direction:column;justify-content:center;padding:max(32px,env(safe-area-inset-top)) max(40px,env(safe-area-inset-right)) max(32px,env(safe-area-inset-bottom)) max(40px,env(safe-area-inset-left));background:#07080c;opacity:0;transition:opacity .45s var(--ease,ease)}.ld.in{opacity:1}.ld.out{opacity:0;pointer-events:none;transition:opacity .45s var(--ease,ease)}.ld-bg{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 70% 60% at 30% 45%,rgba(var(--accent-rgb,143,114,255),.16),transparent 70%),linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px) 0 0/64px 64px,linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px) 0 0/64px 64px}.ld-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 90% 90% at 50% 50%,transparent 50%,rgba(0,0,0,.6))}.ld-top{position:absolute;left:max(40px,env(safe-area-inset-left));right:max(40px,env(safe-area-inset-right));top:max(28px,env(safe-area-inset-top));display:flex;align-items:center;justify-content:space-between;gap:12px}.ld-brand{font-family:var(--font-display,sans-serif);font-stretch:62%;font-weight:900;font-size:24px;letter-spacing:.08em}.ld-brand i{font-style:normal;font-weight:400;color:var(--ink-mute,#6b7180);margin:0 4px}.ld-chip{display:inline-flex;align-items:center;height:24px;padding:0 10px;border:1px solid rgba(var(--accent-rgb,143,114,255),.55);border-radius:2px;background:rgba(var(--accent-rgb,143,114,255),.12);color:var(--accent-hi,#b8a9ff);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.ld-main{position:relative;width:min(720px,100%);display:flex;flex-direction:column;gap:6px}.ld-kicker{font-size:11px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--accent-hi,#b8a9ff)}.ld-map{margin:0;font-family:var(--font-display,sans-serif);font-stretch:70%;font-weight:900;font-size:clamp(44px,9vw,104px);line-height:.92;letter-spacing:.015em;text-transform:uppercase;overflow-wrap:anywhere}.ld-mode{margin:6px 0 26px;font-size:14px;letter-spacing:.06em;color:var(--ink-dim,#a3a8b5)}.ld-mode i{font-style:normal;margin:0 6px;color:var(--ink-mute,#6b7180)}.ld-barwrap{display:flex;flex-direction:column;gap:12px}.ld-bar{position:relative;height:10px;border-radius:5px;background:#ffffff17;overflow:visible;box-shadow:inset 0 0 0 1px #ffffff0f}.ld-fill{position:absolute;left:0;top:0;bottom:0;width:100%;border-radius:5px;transform-origin:left center;transform:scaleX(0);background:linear-gradient(90deg,var(--accent-dim,#5c47c4),var(--accent,#8f72ff) 70%,var(--accent-hi,#b8a9ff));box-shadow:0 0 18px rgba(var(--accent-rgb,143,114,255),.55)}.ld-head{position:absolute;top:50%;left:0;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:radial-gradient(circle,#fff 0,var(--accent-hi,#b8a9ff) 45%,transparent 70%);filter:blur(.3px);opacity:.95}.ld-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.ld-step{font-size:15px;color:var(--ink,#eceef3);min-width:0}.ld-pct{font-size:44px;font-weight:500;line-height:1;letter-spacing:-.02em;color:#fff;white-space:nowrap}.ld-steps{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px 22px}.ld-steps li{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.04em;color:var(--ink-mute,#6b7180);transition:color .25s}.ld-steps li i{flex:none;width:14px;height:14px;border:1.5px solid var(--line-2,rgba(255,255,255,.18));border-radius:50%;position:relative;transition:border-color .25s,background .25s}.ld-steps li.now{color:var(--ink,#eceef3)}.ld-steps li.now i{border-color:var(--accent,#8f72ff);border-top-color:transparent;animation:ld-rot .8s linear infinite}.ld-steps li.done{color:var(--ink-dim,#a3a8b5)}.ld-steps li.done i{border-color:var(--accent,#8f72ff);background:var(--accent,#8f72ff)}.ld-steps li.done i:after{content:"";position:absolute;left:3.5px;top:1.5px;width:3px;height:6px;border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(40deg)}.ld-loadout{position:absolute;right:max(40px,env(safe-area-inset-right));bottom:max(96px,calc(env(safe-area-inset-bottom) + 72px));width:min(320px,calc(100% - 80px));padding:16px 18px;border:1px solid var(--line,rgba(255,255,255,.08));border-radius:6px;background:#12141a9e;backdrop-filter:blur(14px)}.ld-lo-h{font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-mute,#6b7180);margin-bottom:10px}.ld-lo-h b{margin-left:8px;color:var(--ink,#eceef3);letter-spacing:.04em;text-transform:none;font-size:13px}.ld-loadout ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.ld-loadout li{display:grid;grid-template-columns:1fr;gap:1px;font-size:13px}.ld-loadout li small{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute,#6b7180)}.ld-loadout li em{font-style:normal;font-size:11px;color:var(--accent-hi,#b8a9ff)}.ld-tip{position:absolute;left:max(40px,env(safe-area-inset-left));right:max(40px,env(safe-area-inset-right));bottom:max(30px,env(safe-area-inset-bottom));display:flex;align-items:baseline;gap:14px;min-height:40px;padding-top:14px;border-top:1px solid var(--line,rgba(255,255,255,.08))}.ld-tip small{flex:none;font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--accent-hi,#b8a9ff)}.ld-tip span{font-size:14px;line-height:1.45;color:var(--ink-dim,#a3a8b5);opacity:0;transform:translateY(4px);transition:opacity .3s,transform .3s}.ld-tip span.show{opacity:1;transform:none}.ld-spin{position:absolute;right:max(44px,env(safe-area-inset-right));top:max(70px,calc(env(safe-area-inset-top) + 46px));width:56px;height:56px;fill:none;stroke:var(--accent,#8f72ff);stroke-width:1.5;stroke-linejoin:round;opacity:.8;animation:ld-rot 6s linear infinite}.ld-spin path:last-child{stroke:var(--accent-hi,#b8a9ff);opacity:.7;animation:ld-pulse 1.6s ease-in-out infinite}@keyframes ld-rot{to{transform:rotate(360deg)}}@keyframes ld-pulse{50%{opacity:.2}}.a11y-motion .ld-spin,.a11y-motion .ld-spin path,.a11y-motion .ld-steps li.now i{animation:none}@media (prefers-reduced-motion:reduce){.ld-spin,.ld-spin path,.ld-steps li.now i{animation:none}}.hud{position:absolute;inset:0;z-index:6;pointer-events:none;display:none}.hud.on{display:block}.hud-tl{position:absolute;left:max(22px,env(safe-area-inset-left));top:max(18px,env(safe-area-inset-top));display:flex;flex-direction:column;gap:3px;zoom:var(--hud-zoom,1);text-shadow:0 1px 8px rgba(0,0,0,.7)}.hud-tl b{font-family:var(--font-display,sans-serif);font-stretch:70%;font-weight:800;font-size:22px;letter-spacing:.04em;text-transform:uppercase}.hud-tl span{font-size:12px;color:var(--ink-dim,#a3a8b5)}.hud-time{font-size:13px!important;color:var(--ink,#eceef3)!important}.hud-chip{align-self:flex-start;margin-top:4px;padding:2px 8px;border:1px solid rgba(var(--accent-rgb,143,114,255),.55);border-radius:2px;background:rgba(var(--accent-rgb,143,114,255),.16);color:var(--accent-hi,#b8a9ff)!important;font-size:10px!important;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.hud-cross{position:absolute;left:50%;top:50%;width:72px;height:72px;margin:-36px 0 0 -36px}.hud-cross svg{display:block;width:100%;height:100%}.hud-stam{position:absolute;left:50%;bottom:max(34px,env(safe-area-inset-bottom));width:min(240px,50vw);height:5px;margin-left:calc(min(240px,50vw)/-2);border-radius:3px;background:#ffffff1f;opacity:0;transition:opacity .25s}.hud-stam.show{opacity:1}.hud-stam i{display:block;height:100%;border-radius:3px;background:var(--accent-hi,#b8a9ff);transform-origin:left center}.hud-stam.low i{background:var(--warn,#d8a54d)}.hud-state{position:absolute;left:50%;bottom:max(52px,calc(env(safe-area-inset-bottom) + 18px));transform:translate(-50%);font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-dim,#a3a8b5);text-shadow:0 1px 6px rgba(0,0,0,.8);white-space:nowrap}.hud-lo{position:absolute;left:max(22px,env(safe-area-inset-left));bottom:max(22px,env(safe-area-inset-bottom));padding:12px 14px;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:#0e10168c;backdrop-filter:blur(10px);zoom:var(--hud-zoom,1)}.hud-lo small{display:block;margin-bottom:6px;font-size:9px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-mute,#6b7180)}.hud-lo ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;font-size:12px}.hud-lo em{font-style:normal;margin-left:8px;color:var(--accent-hi,#b8a9ff);font-size:11px}.hud-edge{position:absolute;left:50%;top:22%;transform:translate(-50%);padding:6px 14px;border:1px solid rgba(var(--accent-rgb,143,114,255),.5);border-radius:2px;background:#0e1016b3;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-hi,#b8a9ff);opacity:0;transition:opacity .25s}.hud-edge.show{opacity:1}.g-ov{position:absolute;inset:0;z-index:12;display:flex;align-items:center;justify-content:center;padding:24px;background:#05060a9e;backdrop-filter:blur(6px)}.g-ov[hidden]{display:none}.g-card{position:relative;width:min(520px,100%);max-height:100%;overflow:auto;padding:30px 32px 28px;border:1px solid var(--line-2,rgba(255,255,255,.15));border-radius:10px;background:linear-gradient(180deg,#20232cf5,#12141af7);box-shadow:0 40px 90px -10px #000c}.g-card:before{content:"";position:absolute;left:0;top:0;width:28px;height:2px;background:var(--accent,#8f72ff)}.g-card>small{font-size:10px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--accent-hi,#b8a9ff)}.g-card h2{margin:6px 0 10px;font-family:var(--font-display,sans-serif);font-stretch:70%;font-weight:900;font-size:40px;line-height:1;text-transform:uppercase;overflow-wrap:anywhere}.g-card p{margin:0 0 18px;font-size:14px;line-height:1.5;color:var(--ink-dim,#a3a8b5)}.g-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.g-keys{list-style:none;margin:20px 0 0;padding:16px 0 0;border-top:1px solid var(--line,rgba(255,255,255,.08));display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px}.g-keys li{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--ink-dim,#a3a8b5)}.g-keys kbd{min-width:28px;padding:3px 8px;border:1px solid var(--line-2,rgba(255,255,255,.15));border-radius:3px;background:#ffffff0d;font-family:var(--font-mono,monospace);font-size:11px;text-align:center;color:var(--ink,#eceef3)}.g-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:10px 0 18px}.g-stats div{padding:10px 12px;border:1px solid var(--line,rgba(255,255,255,.08));border-radius:4px;background:#ffffff08}.g-stats dt{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute,#6b7180)}.g-stats dd{margin:4px 0 0;font-size:20px;color:var(--ink,#eceef3)}.g-xp{display:flex;align-items:baseline;gap:12px;margin:0 0 20px;padding:14px 16px;border:1px solid rgba(var(--accent-rgb,143,114,255),.45);border-radius:4px;background:rgba(var(--accent-rgb,143,114,255),.1)}.g-xp span{font-size:30px;color:var(--accent-hi,#b8a9ff)}.g-xp small{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim,#a3a8b5)}.g-hint{position:absolute;left:50%;bottom:max(90px,calc(env(safe-area-inset-bottom) + 70px));transform:translate(-50%);z-index:8;max-width:min(560px,90vw);padding:10px 16px;border:1px solid var(--line-2,rgba(255,255,255,.15));border-radius:4px;background:#0e1016d9;font-size:13px;line-height:1.45;text-align:center;color:var(--ink,#eceef3)}.g-hint[hidden]{display:none}.touch{position:absolute;inset:0;z-index:9;touch-action:none}.t-stick{position:absolute;width:110px;height:110px;border:1.5px solid rgba(255,255,255,.25);border-radius:50%;background:#ffffff0d;display:none}.t-stick.on{display:block}.t-stick i{position:absolute;left:35px;top:35px;width:40px;height:40px;border-radius:50%;background:rgba(var(--accent-rgb,143,114,255),.6)}.t-btns{position:absolute;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:10px}.t-btns button{width:78px;height:46px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:#12141ab3;color:#fff;font-size:12px;font-weight:600;letter-spacing:.06em}.t-btns button.on{background:rgba(var(--accent-rgb,143,114,255),.55);border-color:var(--accent-hi,#b8a9ff)}@media (max-width:760px),(max-height:520px){.ld{padding-left:24px;padding-right:24px}.ld-top,.ld-tip{left:24px;right:24px}.ld-loadout{display:none}.ld-pct{font-size:34px}.ld-steps{grid-template-columns:1fr 1fr}.ld-spin{width:40px;height:40px;right:24px}.ld-tip{flex-direction:column;gap:4px}.g-keys,.g-stats{grid-template-columns:1fr 1fr}.g-card{padding:22px 20px}.g-card h2{font-size:32px}.hud-lo{display:none}}
