/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-500:oklch(63.7% .237 25.331);--color-zinc-50:oklch(98.5% 0 none);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-neutral-100:oklch(97% 0 none);--color-neutral-300:oklch(87% 0 none);--color-neutral-500:oklch(55.6% 0 none);--color-neutral-700:oklch(37.1% 0 none);--color-neutral-900:oklch(20.5% 0 none);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--text-xs:.75rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-3xl:1.875rem;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}button:not(:disabled),[role=button]:not(:disabled){cursor:pointer}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.right-1{right:var(--spacing)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.left-1{left:var(--spacing)}.left-2{left:calc(var(--spacing) * 2)}.left-3{left:calc(var(--spacing) * 3)}.left-4{left:calc(var(--spacing) * 4)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.ml-px{margin-left:1px}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.h-8{height:calc(var(--spacing) * 8)}.min-h-screen{min-height:100vh}.w-8{width:calc(var(--spacing) * 8)}.w-full{width:100%}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.shrink{flex-shrink:1}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-\[0\.25\]{scale:.25}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.place-items-center{place-items:center}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-neutral-300{border-color:var(--color-neutral-300)}.bg-black{background-color:var(--color-black)}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.bg-black\/10{background-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.bg-zinc-50{background-color:var(--color-zinc-50)}.object-cover{object-fit:cover}.p-2{padding:calc(var(--spacing) * 2)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-\[16px\]{padding:16px}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-2{padding-block:calc(var(--spacing) * 2)}.pr-3\.5{padding-right:calc(var(--spacing) * 3.5)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-\[13px\]{font-size:13px}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-balance{text-wrap:balance}.text-wrap{text-wrap:wrap}.break-words{overflow-wrap:break-word}.text-neutral-500{color:var(--color-neutral-500)}.text-red-500{color:var(--color-red-500)}.text-white{color:var(--color-white)}.text-zinc-500{color:var(--color-zinc-500)}.text-zinc-900{color:var(--color-zinc-900)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline,.outline-1{outline-style:var(--tw-outline-style);outline-width:1px}.-outline-offset-1{outline-offset:calc(1px * -1)}.outline-black\/10{outline-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.outline-black\/10{outline-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.blur-\[4px\]{--tw-blur:blur(4px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.blur-none{--tw-blur: ;filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.sepia{--tw-sepia:sepia(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[box-shadow\]{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[opacity\,filter\,scale\]{transition-property:opacity,filter,scale;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[scale\,background-color\]{transition-property:scale,background-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[scale\,opacity\,filter\]{transition-property:scale,opacity,filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-\[cubic-bezier\(0\.2\,0\,0\,1\)\]{--tw-ease:cubic-bezier(.2,0,0,1);transition-timing-function:cubic-bezier(.2,0,0,1)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:top-1\/2:after{content:var(--tw-content);top:50%}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:size-10:after{content:var(--tw-content);width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.after\:-translate-1\/2:after{content:var(--tw-content);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}@media (hover:hover){.hover\:bg-neutral-100:hover{background-color:var(--color-neutral-100)}.hover\:underline:hover{text-decoration-line:underline}}.active\:scale-\[0\.96\]:active,.active\:not-disabled\:scale-\[0\.96\]:active:not(:disabled){scale:.96}.disabled\:cursor-wait:disabled{cursor:wait}.disabled\:no-underline:disabled{text-decoration-line:none}@media (prefers-color-scheme:dark){.dark\:border-neutral-700{border-color:var(--color-neutral-700)}.dark\:bg-white\/20{background-color:#fff3}@supports (color:color-mix(in lab, red, red)){.dark\:bg-white\/20{background-color:color-mix(in oklab, var(--color-white) 20%, transparent)}}.dark\:bg-zinc-950{background-color:var(--color-zinc-950)}.dark\:text-zinc-50{color:var(--color-zinc-50)}.dark\:text-zinc-400{color:var(--color-zinc-400)}.dark\:outline-white\/10{outline-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.dark\:outline-white\/10{outline-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}@media (hover:hover){.dark\:hover\:bg-neutral-900:hover{background-color:var(--color-neutral-900)}}}}:root{--bg-deep:#030a06;--cyan:#00e8c0;--cyan-dim:#0a6a52;--orange:#ff8a3d;--amber:#ffc14a;--danger:#ff3d5a;--ok:#4dff9a;--panel:#040e0ae0;--panel-border:#00e8a04d;--text:#e4fff4;--muted:#6a9a88;--font-display:"Orbitron", system-ui, sans-serif;--font-body:"IBM Plex Sans", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{background:var(--bg-deep);width:100%;height:100%;color:var(--text);font-family:var(--font-body);overflow:hidden}#game-canvas{outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.hidden{display:none!important}.splash-overlay{z-index:70;opacity:0;background:#010304;place-items:center;transition:opacity 1.1s cubic-bezier(.22,1,.36,1);display:grid;position:absolute;inset:0;overflow:hidden}.splash-overlay.splash-in{opacity:1}.splash-overlay.splash-out{opacity:0;pointer-events:none;transition:opacity .95s cubic-bezier(.4,0,.2,1)}.splash-bg{pointer-events:none;position:absolute;inset:0}.splash-grid{transform-origin:50% 25%;opacity:0;background-image:linear-gradient(#00ffc80d 1px,#0000 1px),linear-gradient(90deg,#00ffc80d 1px,#0000 1px);background-size:42px 42px;animation:22s linear infinite gridDrift;position:absolute;inset:-30%;transform:perspective(480px)rotateX(62deg)scale(1.6);-webkit-mask-image:linear-gradient(#000 10%,#0000 75%);mask-image:linear-gradient(#000 10%,#0000 75%)}.splash-in .splash-grid{opacity:.9;transition:opacity 1.4s .15s}.splash-glow{filter:blur(80px);opacity:0;border-radius:50%;transition:opacity 1.6s;position:absolute}.splash-in .splash-glow{opacity:.55}.splash-glow-a{background:#00ffc833;width:50vw;height:50vw;transition-delay:.2s;top:-15%;left:50%;transform:translate(-50%)}.splash-glow-b{background:#ff28641a;width:40vw;height:40vw;transition-delay:.45s;bottom:-10%;left:50%;transform:translate(-50%)}.splash-scan{opacity:0;mix-blend-mode:multiply;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000029 2px 4px);transition:opacity 1s .3s;position:absolute;inset:0}.splash-in .splash-scan{opacity:.5}.splash-noise{opacity:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px;transition:opacity 1s .4s;animation:.35s steps(2,end) infinite noiseShift;position:absolute;inset:0}.splash-in .splash-noise{opacity:.045}.splash-vignette{background:radial-gradient(#0000 30%,#000000b3 100%);position:absolute;inset:0}.splash-content{z-index:2;text-align:center;width:min(92vw,36rem);max-width:36rem;padding:2rem 1.5rem;position:relative}.splash-emblem,.splash-boot,.splash-title,.splash-tagline,.splash-load,.splash-skip{opacity:0;transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);transform:translateY(18px)}.splash-in .splash-emblem{opacity:1;transition-delay:.25s;transform:translateY(0)}.splash-in .splash-boot{opacity:1;transition-delay:.55s;transform:translateY(0)}.splash-in .splash-title{opacity:1;transition-delay:.75s;transform:translateY(0)}.splash-in .splash-tagline{opacity:1;transition-delay:1.05s;transform:translateY(0)}.splash-in .splash-load{opacity:1;transition-delay:1.25s;transform:translateY(0)}.splash-in .splash-skip{opacity:1;transition-delay:1.55s;transform:translateY(0)}.splash-emblem{width:140px;height:140px;margin:0 auto 1.35rem;position:relative}.sp-ring{border:1px solid #00ffc859;border-radius:50%;animation:14s linear infinite cvSpin;position:absolute;inset:4px;box-shadow:0 0 24px #00ffc81f,inset 0 0 16px #00ffc80d}.sp-ring-2{border-style:dashed;border-color:#ffc14a4d;animation-duration:10s;animation-direction:reverse;inset:18px}.sp-ring-3{border-color:#00ffc833;animation-duration:18s;inset:32px}.sp-core{color:#00ffc8;background:radial-gradient(circle at 40% 35%,#00ffc84d,#0000 55%),#000a0ceb;border:1px solid #00ffc88c;border-radius:50%;place-items:center;animation:2.6s ease-in-out infinite cvPulse;display:grid;position:absolute;inset:40px;box-shadow:0 0 32px #00ffc866,inset 0 0 22px #00ffc81f}.sp-logo{filter:drop-shadow(0 0 6px #00ffc899);width:36px;height:36px}.sp-burst{opacity:.75;pointer-events:none;background:conic-gradient(#0000,#00ffc81a 50deg,#0000 100deg,#ffc14a14 180deg,#0000 230deg,#00ffc814 300deg,#0000);border-radius:50%;animation:7s linear infinite cvSpin;position:absolute;inset:0}.splash-boot{font-family:var(--font-mono);letter-spacing:.18em;color:#00ffc8b3;text-shadow:0 0 10px #00ffc840;align-items:center;gap:.45rem;margin-bottom:.85rem;font-size:.62rem;display:inline-flex}.splash-boot-led{background:var(--ok);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite statusPulse;box-shadow:0 0 10px #4dff9ae6}.splash-title{margin:0 0 .55rem;line-height:1}.splash-aegis{font-family:var(--font-display);letter-spacing:.18em;color:#e8fff8;text-shadow:0 0 12px #00ffc88c,0 0 40px #00ffc859,0 0 80px #00ffc826;font-size:clamp(2.6rem,10vw,4.2rem);font-weight:700;display:block}.splash-protocol{font-family:var(--font-display);letter-spacing:.42em;color:#00ffc8;text-shadow:0 0 18px #00ffc866;margin-top:.45rem;padding-left:.42em;font-size:clamp(.95rem,3.2vw,1.35rem);font-weight:700;display:block}.splash-tagline{font-family:var(--font-mono);letter-spacing:.2em;color:#8cc8b4a6;margin-bottom:1.5rem;font-size:.68rem}.splash-load{width:min(280px,80%);margin:0 auto 1.35rem}.splash-load-track{background:#ffffff0f;border:1px solid #00ffc826;height:3px;position:relative;overflow:hidden}.splash-load-track>i{background:linear-gradient(90deg,#00785a80,#00ffc8);width:0%;height:100%;transition:width 80ms linear;display:block;box-shadow:0 0 12px #00ffc88c}.splash-in .splash-load-track>i{animation:13.5s cubic-bezier(.22,1,.36,1) 1.2s forwards splashLoad}@keyframes splashLoad{0%{width:0%}12%{width:14%}35%{width:42%}60%{width:68%}85%{width:90%}to{width:100%}}.splash-load-meta{font-family:var(--font-mono);letter-spacing:.14em;color:#00ffc873;justify-content:space-between;margin-top:.35rem;font-size:.55rem;display:flex}.splash-skip{color:#e8fff8;font-family:var(--font-display);letter-spacing:.18em;cursor:pointer;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%);background:#00141299;border:1px solid #00ffc859;flex-direction:column;align-items:center;gap:.25rem;padding:.65rem 1.4rem .55rem;font-size:.72rem;transition:border-color .15s,box-shadow .15s,background .15s;display:inline-flex;box-shadow:0 0 20px #00ffc81f}.splash-skip:hover,.splash-skip:focus-visible{background:#00322abf;border-color:#00ffc8;outline:none;box-shadow:0 0 28px #00ffc840}.splash-skip-key{font-family:var(--font-mono);letter-spacing:.12em;color:#00ffc88c;font-size:.52rem}.menu-overlay.menu-from-splash{animation:.85s cubic-bezier(.22,1,.36,1) both menuReveal}@keyframes menuReveal{0%{opacity:0;filter:blur(6px);transform:scale(1.02)}to{opacity:1;filter:blur();transform:scale(1)}}.overlay{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(at 30% 20%,#3de0ff14,#0000 50%),radial-gradient(at 70% 80%,#ff8a3d0f,#0000 45%),#02050ce0;place-items:center;display:grid;position:absolute;inset:0}.menu-overlay{background:radial-gradient(at 18% 8%,#00ffc81a,#0000 40%),radial-gradient(at 88% 78%,#ff3c7812,#0000 38%),radial-gradient(at 50% 100%,#00283280,#0000 55%),#010405;place-items:start center;padding:1.25rem;overflow:auto}.menu-bg{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.menu-grid{transform-origin:50% 18%;opacity:.85;background-image:linear-gradient(#00ffc80b 1px,#0000 1px),linear-gradient(90deg,#00ffc80b 1px,#0000 1px);background-size:36px 36px;animation:28s linear infinite gridDrift;position:absolute;inset:-20%;transform:perspective(520px)rotateX(58deg)scale(1.55);-webkit-mask-image:linear-gradient(#000 15%,#0000 80%);mask-image:linear-gradient(#000 15%,#0000 80%)}@keyframes gridDrift{0%{background-position:0 0}to{background-position:0 36px}}.menu-hex{opacity:.12;background-image:radial-gradient(circle at 20% 30%,#00ffc880 0 1px,#0000 1.5px),radial-gradient(circle at 70% 60%,#00c8ff66 0 1px,#0000 1.5px),radial-gradient(circle at 40% 80%,#ff50a059 0 1px,#0000 1.5px);background-size:80px 80px,110px 110px,90px 90px;position:absolute;inset:0}.menu-glow{filter:blur(70px);opacity:.5;border-radius:50%;position:absolute}.menu-glow-a{background:#00ffc829;width:42vw;height:42vw;animation:6s ease-in-out infinite glowPulse;top:-12%;left:-10%}.menu-glow-b{background:#ff28641a;width:38vw;height:38vw;animation:8s ease-in-out infinite reverse glowPulse;bottom:-8%;right:-8%}@keyframes glowPulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.65;transform:scale(1.06)}}.menu-scan{opacity:.45;mix-blend-mode:multiply;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000024 2px 4px);position:absolute;inset:0}.menu-noise{opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;animation:.4s steps(2,end) infinite noiseShift;position:absolute;inset:0}@keyframes noiseShift{0%{transform:translate(0)}25%{transform:translate(-1%,1%)}50%{transform:translate(1%,-1%)}75%{transform:translate(-1%,-1%)}to{transform:translate(0)}}.menu-vignette{background:radial-gradient(#0000 40%,#0000008c 100%);position:absolute;inset:0}.panel{background:var(--panel);border:1px solid var(--panel-border);width:min(560px,92vw);padding:2rem 2.25rem;position:relative;box-shadow:0 0 0 1px #00000080,0 24px 80px #000000a6,inset 0 1px #ffffff0a}.briefing-panel,.deck-shell{z-index:1;scrollbar-width:thin;scrollbar-color:#00ffc859 transparent;width:min(660px,95vw);max-height:min(92vh,920px);font-family:var(--font-mono);background:linear-gradient(#0012108c 0%,#0000 8%),linear-gradient(165deg,#020e0cfa 0%,#010608fc 45%,#02080afc 100%);border:1px solid #00ffc847;border-radius:2px;padding:0 1.35rem 1.15rem;overflow-y:auto;box-shadow:0 0 0 1px #000000d9,0 0 0 2px #00ffc80f,0 32px 100px #000000d9,0 0 80px #00ffc80d,inset 0 0 60px #00ffc805,inset 0 1px #00ffc81f}.deck-bezel{pointer-events:none;z-index:2;position:absolute;inset:0}.deck-corner{border:0 solid #00ffc8a6;width:14px;height:14px;position:absolute}.deck-corner.tl{border-top-width:2px;border-left-width:2px;top:6px;left:6px}.deck-corner.tr{border-top-width:2px;border-right-width:2px;top:6px;right:6px}.deck-corner.bl{border-bottom-width:2px;border-left-width:2px;bottom:6px;left:6px}.deck-corner.br{border-bottom-width:2px;border-right-width:2px;bottom:6px;right:6px}.deck-rail{background:linear-gradient(#0000,#00ffc833 20% 80%,#0000);width:1px;position:absolute;top:22px;bottom:22px}.deck-rail.left{left:3px}.deck-rail.right{right:3px}.deck-scanline{pointer-events:none;z-index:3;mix-blend-mode:screen;background:linear-gradient(#0000,#00ffc808 40%,#00ffc80f 50%,#00ffc808 60%,#0000);height:28%;animation:7s linear infinite deckSweep;position:absolute;top:-30%;left:0;right:0}@keyframes deckSweep{0%{opacity:0;top:-30%}10%{opacity:1}90%{opacity:1}to{opacity:0;top:100%}}.deck-holo-edge{pointer-events:none;z-index:1;animation:4.5s ease-in-out infinite holoFlicker;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #00ffc814,inset 0 0 40px #00ffc808}@keyframes holoFlicker{0%,to{opacity:1}48%{opacity:1}50%{opacity:.85}52%{opacity:1}92%{opacity:1}93%{opacity:.7}94%{opacity:1}}.deck-chrome{z-index:4;font-family:var(--font-mono);letter-spacing:.12em;color:#00ffc88c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(#000c0af2,#000808e0);border-bottom:1px solid #00ffc82e;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.35rem 1rem;margin:0 -.35rem .85rem;padding:.55rem .65rem .5rem;font-size:.58rem;display:flex;position:sticky;top:0}.deck-chrome-left,.deck-chrome-right{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.deck-led{background:var(--ok);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite statusPulse;box-shadow:0 0 8px #4dff9ae6}.deck-unit{color:#00ffc8d9}.deck-sep{opacity:.35}.deck-boot{opacity:.55}.deck-ver{color:#ffc14ae6;letter-spacing:.1em;background:#ffc14a12;border:1px solid #ffc14a59;flex-shrink:0;padding:.12rem .35rem;font-size:.52rem}.deck-hex{color:#ffc14abf;font-variant-numeric:tabular-nums}.deck-link{color:var(--ok);text-shadow:0 0 8px #4dff9a66}.panel:before{content:"";background:linear-gradient(90deg, transparent, var(--cyan), transparent);z-index:5;height:2px;position:absolute;top:0;left:0;right:0}.deck-shell:before{background:linear-gradient(90deg,#0000 5%,#00ffc826 20%,#00ffffd9 50%,#00ffc826 80%,#0000 95%);height:1px;box-shadow:0 0 12px #00ffc873}.briefing-panel:after{content:"";pointer-events:none;z-index:5;background:linear-gradient(90deg,#0000,#00ffc84d,#0000);height:1px;position:absolute;bottom:0;left:10%;right:10%}.panel-tag{font-family:var(--font-display);letter-spacing:.22em;color:var(--cyan);margin-bottom:.75rem;font-size:.7rem}.menu-hero{margin-bottom:1.05rem;padding-top:.25rem}.menu-hero-compact{margin-bottom:.4rem}.menu-hero-compact .menu-title{margin-bottom:0}.menu-hero-compact .title-mark{font-size:clamp(1.55rem,4.5vw,2rem)}.menu-hero-compact .title-sub{font-size:.85rem}.menu-hero-compact .menu-status{margin-bottom:.3rem}.menu-tabs{z-index:5;background:linear-gradient(#01080af7 65%,#0000);grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;margin:.25rem 0 .6rem;padding:.15rem 0 .35rem;display:grid;position:sticky;top:0}.menu-tab{color:var(--muted);cursor:pointer;text-align:left;font-family:var(--font-mono);clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,0 100%);background:#00080ab3;border:1px solid #00ffc824;flex-direction:column;align-items:flex-start;gap:.06rem;padding:.48rem .5rem .42rem;transition:border-color .15s,background .15s,color .15s,box-shadow .15s;display:flex}.menu-tab:hover{color:var(--text);border-color:#00ffc859}.menu-tab.active{color:#e8fff8;background:#00ffc814;border-color:#00ffc88c;box-shadow:0 0 16px #00ffc81a,inset 0 0 12px #00ffc80a}.menu-tab .tab-key{letter-spacing:.14em;color:#00ffc880;font-size:.48rem}.menu-tab.active .tab-key{color:#00ffc8;text-shadow:0 0 8px #00ffc866}.menu-tab .tab-label{font-family:var(--font-display);letter-spacing:.16em;font-size:.7rem}.menu-tab .tab-sub{letter-spacing:.04em;opacity:.7;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.5rem;overflow:hidden}.menu-tab-panels{min-height:10rem}.menu-tab-panel{animation:.18s ease-out tabIn}.menu-tab-panel.hidden,.menu-tab-panel[hidden]{display:none!important}@keyframes tabIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.menu-footer-meta{flex:1;min-width:0}.footer-chip{font-family:var(--font-mono);letter-spacing:.08em;color:#00ffc8b8;text-overflow:ellipsis;white-space:nowrap;background:#000c0c80;border:1px solid #00ffc82e;max-width:100%;padding:.35rem .55rem;font-size:.58rem;display:inline-block;overflow:hidden}.settings-note{margin-top:.55rem}.ops-campaign-actions,.squad-actions{flex-direction:column;align-items:flex-start;gap:.35rem;margin-top:.7rem;display:flex}.campaign-track-row{margin-top:.45rem}.campaign-stepper.extended{flex-wrap:wrap;gap:.2rem .15rem}.campaign-stepper.extended .camp-step{width:1.35rem;height:1.35rem;font-size:.55rem}.campaign-stepper.extended .camp-line{flex:0 0 .35rem;min-width:.35rem}.records-panel{flex-direction:column;gap:.5rem;padding:.65rem .7rem .75rem;display:flex}.records-list{flex-direction:column;gap:.3rem;max-height:12rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.records-row{font-family:var(--font-mono);background:#00000040;border:1px solid #00ffc81a;grid-template-columns:1.4rem 4.2rem 1fr 2.1rem;align-items:center;gap:.4rem;padding:.3rem .35rem;font-size:.62rem;display:grid}.rec-share{width:1.85rem;height:1.55rem;color:var(--cyan);cursor:pointer;background:#3de0ff14;border:1px solid #3de0ff59;justify-self:end;padding:0;font-size:.75rem;line-height:1;transition:border-color .12s,background .12s,color .12s}.rec-share:hover{color:#e8fff8;background:#3de0ff29;border-color:#3de0ffb3}.records-foot-actions{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.records-share-top{letter-spacing:.08em!important;color:var(--cyan)!important;border-color:#3de0ff66!important;padding:.35rem .55rem!important;font-size:.52rem!important}.records-share-top:hover:not(:disabled){background:#3de0ff1a!important}.records-share-top:disabled{opacity:.4;cursor:not-allowed}.rec-rank{color:#00ffc88c}.rec-score{color:var(--amber);letter-spacing:.04em}.rec-label{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.records-empty{margin:0!important}.records-list-head{font-family:var(--font-mono);letter-spacing:.12em;color:#00ffc873;grid-template-columns:1.4rem 4.2rem 1fr 2.1rem;gap:.4rem;padding:0 .35rem;font-size:.5rem;display:grid}.records-list-head.hidden{display:none}.records-row.gold{background:#ffc14a0f;border-color:#ffc14a66}.records-row.gold .rec-rank,.records-row.gold .rec-score{color:var(--amber);text-shadow:0 0 8px #ffc14a59}.records-row.silver{background:#b4c8dc0a;border-color:#b4c8dc4d}.records-row.silver .rec-rank{color:#c8d8e8}.records-row.bronze{background:#c878500a;border-color:#c878504d}.records-row.bronze .rec-rank{color:#d4a07a}.records-foot{justify-content:space-between;align-items:center;gap:.5rem;margin-top:.15rem;display:flex}.records-note{font-family:var(--font-mono);letter-spacing:.1em;color:#78b4a08c;font-size:.5rem}.records-clear{align-self:flex-end;padding:.35rem .55rem!important;font-size:.52rem!important}.track-btn[data-track=extended].active{background:#8c3cdc1f;border-color:#b464ff8c;box-shadow:0 0 16px #a050ff2e}.track-btn[data-track=extended].active .diff-name{color:#e8d0ff;text-shadow:0 0 8px #b464ff59}.footer-ver{font-family:var(--font-mono);letter-spacing:.14em;color:#ffc14aa6;vertical-align:middle;margin-left:.45rem;font-size:.48rem;display:inline-block}.sticky-footer{z-index:6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(#0000,#01080aeb 18%,#01080af5);margin-top:.75rem;position:sticky;bottom:0}.debrief-stat.highlight .ds-value{color:var(--amber);text-shadow:0 0 10px #ffc14a59}.debrief-score-note{font-family:var(--font-mono);letter-spacing:.06em;color:var(--muted);margin-top:.55rem;font-size:.62rem;line-height:1.35}.debrief-score-note.pb{color:var(--amber);text-shadow:0 0 10px #ffc14a59}.briefing-panel.deck-shell{scroll-padding-bottom:5rem}.menu-tab-panels{padding-bottom:.25rem}.ops-action-note{max-width:48ch;margin-top:0!important}.btn-danger-ghost{color:var(--danger)!important;border-color:#ff3d5a66!important}.btn-danger-ghost:hover{background:#ff3d5a1a!important;box-shadow:0 0 14px #ff3d5a1f!important}@media (width<=520px){.menu-tab .tab-sub{display:none}.menu-tab{text-align:center;align-items:center}}.menu-status{align-items:center;gap:.5rem;margin-bottom:.65rem;display:flex}.menu-status .panel-tag{letter-spacing:.16em;opacity:.95;font-size:.58rem;font-family:var(--font-mono);margin-bottom:0}.glitch-text,.glitch-title{position:relative}.glitch-title:before,.glitch-title:after{content:attr(data-text);opacity:.8;pointer-events:none;width:100%;position:absolute;top:0;left:0;overflow:hidden}.glitch-title:before{color:#00fff0;clip-path:inset(0 0 55%);animation:3.2s linear infinite alternate-reverse glitchA;transform:translate(-1px)}.glitch-title:after{color:#ff3d8a;clip-path:inset(45% 0 0);animation:2.6s linear infinite alternate-reverse glitchB;transform:translate(1px)}@keyframes glitchA{0%,90%,to{clip-path:inset(0 0 58%);opacity:0;transform:translate(0)}91%{clip-path:inset(10% 0 50%);opacity:.7;transform:translate(-2px)}93%{opacity:.5;transform:translate(2px,-1px)}95%{opacity:0}}@keyframes glitchB{0%,88%,to{opacity:0;transform:translate(0)}89%{clip-path:inset(48% 0 8%);opacity:.65;transform:translate(2px,1px)}92%{opacity:.4;transform:translate(-2px)}94%{opacity:0}}.status-dot{background:var(--ok);border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:1.8s ease-in-out infinite statusPulse;box-shadow:0 0 10px #4dff9acc}@keyframes statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.85)}}.menu-title{font-family:var(--font-display);flex-wrap:wrap;align-items:baseline;gap:.55rem .75rem;margin-bottom:.7rem;font-weight:700;line-height:1;display:flex}.title-mark{letter-spacing:.14em;color:#e8fff8;text-shadow:0 0 8px #00ffc88c,0 0 32px #00ffc859,0 0 2px #00ffc880;font-size:clamp(1.95rem,5.2vw,2.5rem)}.title-sub{letter-spacing:.32em;color:#00ffc8;opacity:.92;text-shadow:0 0 16px #00ffc859;font-size:clamp(.95rem,2.4vw,1.15rem)}.panel h1{font-family:var(--font-display);letter-spacing:.08em;text-shadow:0 0 24px #3de0ff59;margin-bottom:1rem;font-size:1.85rem;font-weight:700}.lede{color:var(--muted);white-space:pre-line;margin-bottom:1.25rem;font-size:.95rem;line-height:1.55}.menu-lede{color:#a0dcc8c7;max-width:54ch;font-size:.8rem;line-height:1.55;font-family:var(--font-mono);margin-bottom:0}.terminal-line .term-prompt,.terminal-hint .term-prompt{color:#00ffc8;text-shadow:0 0 8px #00ffc880;margin-right:.35rem;font-weight:600}.menu-section{margin-bottom:.95rem}.deck-module{background:#00080a73;border:1px solid #00ffc81a;margin-bottom:.75rem;padding:.65rem .7rem .7rem;position:relative;box-shadow:inset 0 0 24px #00ffc805}.deck-module:before{content:"";opacity:.45;background:linear-gradient(#00ffc8,#0000 70%);width:3px;height:100%;position:absolute;top:0;left:0}.section-head{align-items:center;gap:.55rem;margin-bottom:.55rem;display:flex}.section-num{font-family:var(--font-mono);color:#00ffc8;opacity:.75;letter-spacing:.06em;text-shadow:0 0 6px #00ffc859;font-size:.62rem}.section-title{font-family:var(--font-display);letter-spacing:.22em;color:#8cc8b4bf;font-size:.62rem}.section-head:after{content:"";background:linear-gradient(90deg,#00ffc847,#0000);flex:1;height:1px;margin-left:.25rem;box-shadow:0 0 6px #00ffc826}.objectives{margin-bottom:1.25rem;list-style:none}.menu-objectives{gap:.35rem;margin-bottom:0;display:grid}.objectives li{color:var(--text);align-items:center;gap:.6rem;padding:.4rem 0;font-size:.9rem;display:flex}.menu-objectives li{font-size:.74rem;line-height:1.4;font-family:var(--font-mono);color:#c8f0dce6;background:#0006088c;border:1px solid #00ffc81a;border-left:2px solid #00ffc873;padding:.4rem .55rem;box-shadow:inset 0 0 12px #00ffc808}.obj-icon{color:var(--cyan);flex-shrink:0;font-size:.75rem}.obj-icon.win{color:var(--ok)}.obj-icon.lose{color:var(--danger)}.class-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin-bottom:0;display:grid}@media (width>=520px){.class-row{grid-template-columns:repeat(4,minmax(0,1fr))}}.class-chip{font-family:var(--font-display);letter-spacing:.14em;cursor:pointer;min-width:0;color:inherit;text-align:left;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,0 100%);background:#000a0ca6;border:1px solid #ffffff1f;flex-direction:column;gap:.12rem;padding:.5rem .55rem;font-size:.62rem;transition:border-color .12s,background .12s,box-shadow .12s,transform .12s;display:flex}.class-chip:hover{background:#001412d9;transform:translateY(-1px);box-shadow:0 0 14px #00ffc81f}.class-chip.selected{background:#001e1ce6;box-shadow:0 0 18px #00ffc838}.class-chip.wounded{outline:1px solid #ff8a3d73}.chip-role{letter-spacing:.12em}.chip-name{font-family:var(--font-mono);letter-spacing:.08em;opacity:.9;font-size:.58rem}.chip-meta{font-family:var(--font-mono);letter-spacing:.06em;color:var(--amber);font-size:.52rem}.chip-tag{font-family:var(--font-mono);letter-spacing:.08em;opacity:.65;font-size:.52rem}.class-chip.breacher{color:var(--orange);border-color:#ff8a3d80}.class-chip.marksman{color:var(--cyan);border-color:#3de0ff80}.class-chip.support{color:var(--ok);border-color:#4dff9a73}.class-chip.heavy{color:var(--amber);border-color:#ffc14a80}.class-chip.breacher.selected{border-color:var(--orange)}.class-chip.marksman.selected{border-color:var(--cyan)}.class-chip.support.selected{border-color:var(--ok)}.class-chip.heavy.selected{border-color:var(--amber)}.probe-dossier{flex-direction:column;gap:.55rem;margin-top:.65rem;padding:.75rem .8rem .85rem;display:flex}.probe-dossier.hidden{display:none!important}.dossier-head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.dossier-name{font-family:var(--font-display);letter-spacing:.14em;color:#e8fff8;font-size:.95rem}.dossier-class{font-family:var(--font-mono);letter-spacing:.08em;color:var(--muted);margin-top:.15rem;font-size:.58rem}.dossier-level-block{flex-direction:column;align-items:flex-end;gap:.2rem;display:flex}.dossier-level{font-family:var(--font-display);letter-spacing:.12em;color:var(--amber);background:#ffc14a14;border:1px solid #ffc14a59;padding:.15rem .4rem;font-size:.85rem}.dossier-wound{font-family:var(--font-mono);letter-spacing:.1em;color:var(--orange);font-size:.5rem}.dossier-wound.hidden{display:none!important}.dossier-xp-row{align-items:center;gap:.45rem;display:flex}.dossier-xp-label{font-family:var(--font-mono);letter-spacing:.12em;color:var(--cyan);font-size:.52rem}.dossier-xp-bar{background:#ffffff14;flex:1;height:4px;overflow:hidden}.dossier-xp-bar>i{background:linear-gradient(90deg, var(--cyan-dim), var(--amber));width:0%;height:100%;transition:width .25s;display:block}.dossier-xp-text{font-family:var(--font-mono);color:var(--muted);text-align:right;min-width:3.2rem;font-size:.52rem}.dossier-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem;display:grid}.dossier-stat{background:#0000004d;border:1px solid #00ffc81a;padding:.35rem .35rem .4rem}.dossier-stat .ds-k{font-family:var(--font-mono);letter-spacing:.12em;color:var(--cyan);font-size:.48rem;display:block}.dossier-stat .ds-v{font-family:var(--font-display);color:var(--text);margin-top:.1rem;font-size:.85rem;display:block}.dossier-stat .ds-h{color:var(--muted);margin-top:.08rem;font-size:.48rem;display:block}.dossier-section-label{font-family:var(--font-display);letter-spacing:.16em;color:#00ffc8b3;font-size:.55rem}.dossier-abilities{grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem;display:grid}.dossier-ability{font-family:var(--font-mono);background:#00000047;border:1px solid #00ffc81f;justify-content:space-between;align-items:center;gap:.35rem;padding:.35rem .4rem;font-size:.58rem;display:flex}.dossier-ability.on{color:var(--ok);border-color:#00ffc859}.dossier-ability.off{opacity:.55;color:var(--muted)}.dossier-ability.contextual{color:var(--cyan);border-color:#3de0ff59}.dossier-ability .da-lv{letter-spacing:.08em;flex-shrink:0;font-size:.48rem}.dossier-buy-row{flex-wrap:wrap;align-items:center;gap:.55rem;margin-top:.15rem;display:flex}.dossier-buy{letter-spacing:.1em!important;padding:.55rem .75rem!important;font-size:.68rem!important}.dossier-buy:disabled{opacity:.45;cursor:not-allowed}.dossier-buy-cost{font-family:var(--font-mono);color:var(--amber);letter-spacing:.06em;font-size:.58rem}.credits-banner{margin:.15rem 0 .65rem}.credits-banner-inner{background:linear-gradient(120deg,#00282473,#0806148c 55%,#00080c99),#00000059;border-color:#00ffc847;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.85rem 1.15rem;margin-top:0;padding:.75rem .9rem .8rem;display:flex;box-shadow:0 0 24px #00ffc814,inset 0 0 40px #00ffc80a}.credits-copy{flex-direction:column;flex:11rem;gap:.35rem;min-width:0;display:flex}.credits-kicker{font-family:var(--font-mono);letter-spacing:.18em;color:#00ffc88c;margin:0;font-size:.5rem}.credits-made{font-family:var(--font-display);letter-spacing:.1em;color:var(--text);margin:0;font-size:.95rem;line-height:1.2}.credits-handle{color:var(--cyan);text-shadow:0 0 12px #3de0ff66;border-bottom:1px solid #3de0ff59;text-decoration:none}.credits-handle:hover{color:#e8fff8;border-bottom-color:#00ffc8bf}.credits-blurb{font-family:var(--font-mono);color:var(--muted);max-width:42ch;margin:0;font-size:.62rem;line-height:1.45}.credits-actions{flex-wrap:wrap;gap:.4rem;margin-top:.15rem;display:flex}.credits-open{align-self:flex-start;letter-spacing:.1em!important;padding:.4rem .65rem!important;font-size:.55rem!important}.credits-qr-wrap{background:#00000073;border:1px solid #00ffc847;flex-direction:column;flex-shrink:0;align-items:center;gap:.3rem;padding:.4rem .45rem .45rem;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;box-shadow:0 0 20px #00ffc81a,inset 0 0 16px #00ffc80a}.credits-qr-wrap:hover{border-color:#00ffc88c;transform:translateY(-1px);box-shadow:0 0 26px #00ffc82e}.credits-qr{object-fit:contain;background:#fff;border-radius:2px;width:118px;height:118px;display:block}.credits-qr-caption{font-family:var(--font-mono);letter-spacing:.12em;color:#00ffc8cc;text-align:center;font-size:.46rem}@media (width<=640px){.credits-kicker,.credits-blurb,.credits-actions,.credits-qr-caption{display:none}.credits-banner-inner{flex-direction:row;align-items:center;gap:.55rem;padding:.45rem .65rem}.credits-qr{width:40px;height:40px}.credits-made{font-size:.78rem}}.menu-config{gap:.15rem;display:grid}.difficulty-block{margin-bottom:1.35rem}.difficulty-label{font-family:var(--font-display);letter-spacing:.2em;color:var(--muted);margin-bottom:.55rem;font-size:.62rem}.menu-footer,.deck-footer{background:linear-gradient(#00ffc808,#0000);border-top:1px solid #00ffc826;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.85rem 1.25rem;margin-top:.5rem;padding:.85rem .55rem .35rem;display:flex;position:relative}.deck-footer:before{content:"EXEC // AUTH";font-family:var(--font-mono);letter-spacing:.16em;color:#00ffc866;background:#020808;padding:0 .35rem;font-size:.5rem;position:absolute;top:-.55rem;left:.5rem}.debug-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;flex:1;align-items:center;gap:.65rem;min-width:0;display:flex}.debug-toggle input{opacity:0;width:0;height:0;position:absolute}.toggle-track{background:#ffffff14;border:1px solid #ffc14a40;border-radius:11px;flex-shrink:0;width:42px;height:22px;transition:background .15s,border-color .15s,box-shadow .15s;position:relative}.toggle-thumb{background:var(--muted);border-radius:50%;width:16px;height:16px;transition:transform .15s,background .15s;position:absolute;top:2px;left:2px}.debug-toggle input:checked+.toggle-track{border-color:var(--amber);background:#ffc14a33;box-shadow:0 0 14px #ffc14a33}.debug-toggle input:checked+.toggle-track .toggle-thumb{background:var(--amber);transform:translate(20px);box-shadow:0 0 8px #ffc14a99}.debug-toggle input:focus-visible+.toggle-track{outline:1px solid var(--amber);outline-offset:2px}.toggle-copy{flex-direction:column;gap:.1rem;display:flex}.toggle-title{font-family:var(--font-display);letter-spacing:.16em;color:var(--amber);font-size:.62rem}.toggle-desc{color:var(--muted);font-size:.68rem;line-height:1.3}.btn-jack{clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%);flex-direction:column;align-items:flex-start;gap:.15rem;min-width:11rem;display:flex;position:relative;overflow:hidden;background:linear-gradient(135deg,#00503c80,#002832b3)!important;border-color:#00ffc88c!important;padding:.8rem 1.4rem .75rem!important;box-shadow:0 0 20px #00ffc82e,inset 0 0 20px #00ffc80f!important}.btn-jack:hover{background:linear-gradient(135deg,#00785a8c,#00323cbf)!important;box-shadow:0 0 28px #00ffc84d,inset 0 0 24px #00ffc81a!important}.btn-jack-glow{pointer-events:none;background:linear-gradient(105deg,#0000 30%,#00ffc81f 48%,#0000 62%);animation:2.8s ease-in-out infinite jackSweep;position:absolute;inset:0}@keyframes jackSweep{0%,to{opacity:0;transform:translate(-40%)}40%{opacity:1}60%{opacity:0;transform:translate(40%)}}.btn-jack-label{font-family:var(--font-display);letter-spacing:.18em;color:#e8fff8;text-shadow:0 0 12px #00ffc873;z-index:1;font-size:.88rem;position:relative}.btn-jack-sub{font-family:var(--font-mono);letter-spacing:.1em;opacity:.8;color:#00ffc8d9;z-index:1;font-size:.6rem;font-weight:400;position:relative}.menu-hint,.terminal-hint{text-align:center;opacity:.7;font-family:var(--font-mono);letter-spacing:.02em;color:#78b4a0d9;font-size:.68rem;margin-top:.75rem!important;margin-bottom:.15rem!important}@media (width<=560px){.menu-footer{flex-direction:column;align-items:stretch}.btn-jack{align-items:center;width:100%}}.difficulty-row{grid-template-columns:repeat(3,1fr);gap:.45rem;display:grid}.difficulty-row-4{grid-template-columns:repeat(2,1fr)}@media (width>=560px){.difficulty-row-4{grid-template-columns:repeat(4,1fr)}}.diff-btn.extreme-btn{border-color:#b464ff59}.diff-btn.extreme-btn.active{color:#e8d0ff;border-color:#c878ffa6;box-shadow:0 0 14px #a050ff33}.diff-btn{font-family:var(--font-body);text-align:left;color:var(--text);cursor:pointer;background:#00080ab3;border:1px solid #00ffc81f;padding:.55rem .6rem;transition:border-color .12s,background .12s,box-shadow .12s;position:relative}.cyberdeck .diff-btn{font-family:var(--font-mono);clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,0 100%)}.cyberdeck .diff-btn:after{content:"";opacity:.5;border-top:1px solid #00ffc840;border-right:1px solid #00ffc840;width:6px;height:6px;position:absolute;top:0;right:0}.diff-btn:hover{background:#0028248c;border-color:#00ffc866}.diff-btn.active{background:#00ffc81a;border-color:#00ffc8;box-shadow:0 0 16px #00ffc82e,inset 0 0 12px #00ffc80d}.diff-btn[data-difficulty=easy].active{border-color:var(--ok);background:#4dff9a1a;box-shadow:0 0 16px #4dff9a1f}.diff-btn[data-difficulty=hard].active{border-color:var(--danger);background:#ff3d5a1a;box-shadow:0 0 16px #ff3d5a24}.diff-name{font-family:var(--font-display);letter-spacing:.14em;margin-bottom:.15rem;font-size:.68rem;display:block}.cyberdeck .diff-name{color:#dcfff5f2}.cyberdeck .diff-btn.active .diff-name{text-shadow:0 0 8px #00ffc859}.diff-desc{color:var(--muted);font-size:.62rem;line-height:1.3;display:block}.cyberdeck .diff-desc{font-family:var(--font-mono);color:#78b4a0cc}.map-btn[data-map=training].active{border-color:var(--ok);background:#4dff9a1a;box-shadow:0 0 16px #4dff9a1f}.map-btn[data-map=kernel].active{border-color:var(--danger);background:#ff3d5a1a;box-shadow:0 0 16px #ff3d5a24}.map-row{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width>=640px){.map-row{grid-template-columns:repeat(4,minmax(0,1fr))}}.map-btn[data-map=trace].active{background:#c48a4a1f;border-color:#c48a4a;box-shadow:0 0 16px #c48a4a24}.mode-row{grid-template-columns:repeat(2,1fr);margin-bottom:.65rem}.mode-btn{flex-direction:column;gap:.12rem;display:flex}.mode-key{font-family:var(--font-mono);letter-spacing:.1em;color:#00ffc873;font-size:.55rem}.mode-btn.active .mode-key{color:#00ffc8d9;text-shadow:0 0 6px #00ffc866}.mode-btn[data-mode=campaign].active{background:#00ffc81f;border-color:#00ffc8;box-shadow:0 0 18px #00ffc833,inset 0 0 16px #00ffc80f}.mode-btn[data-mode=skirmish].active{border-color:var(--amber);background:#ffc14a1a;box-shadow:0 0 16px #ffc14a24,inset 0 0 12px #ffc14a0d}.mode-btn[data-mode=skirmish].active .mode-key{color:#ffc14ad9}#mode-row{grid-template-columns:repeat(3,minmax(0,1fr))}.mode-btn[data-mode=tutorial]{border-color:#ffc14a47}.mode-btn[data-mode=tutorial].active{border-color:var(--amber);background:#ffc14a1a;box-shadow:0 0 16px #ffc14a24,inset 0 0 12px #ffc14a0d}.mode-btn[data-mode=tutorial].active .mode-key{color:#ffc14ad9}.mode-hint{margin:-.25rem 0 .55rem}.campaign-panel,.holo-panel{background:linear-gradient(135deg,#00282459,#00080c8c),#00000059;border:1px solid #00ffc838;margin-top:.35rem;padding:.75rem .85rem;position:relative;box-shadow:0 0 20px #00ffc80f,inset 0 0 30px #00ffc80a}.holo-panel:after{content:"";pointer-events:none;opacity:.8;background:repeating-linear-gradient(0deg,#0000,#0000 3px,#00ffc804 3px 4px);position:absolute;inset:0}.campaign-stepper{align-items:center;gap:.35rem;margin-bottom:.65rem;display:flex}.camp-step{width:1.45rem;height:1.45rem;font-family:var(--font-display);letter-spacing:.04em;color:var(--muted);background:#00000040;border:1px solid #ffffff26;place-items:center;font-size:.62rem;display:grid}.camp-step.active{border-color:var(--cyan);color:var(--cyan);background:#00e8a01a;box-shadow:0 0 12px #00e8a040}.camp-step.done,.camp-step.complete-all{border-color:var(--ok);color:var(--ok);background:#4dff9a14}.camp-line{background:linear-gradient(90deg,#00e8a040,#00e8a014);flex:1;height:1px}.campaign-op-meta{flex-wrap:wrap;align-items:baseline;gap:.35rem .75rem;margin-bottom:.35rem;display:flex}.campaign-op-code{font-family:var(--font-display);letter-spacing:.14em;color:#00ffc8;text-shadow:0 0 10px #00ffc866;font-size:.72rem}.campaign-op-title{color:#a0d2bebf;font-size:.78rem;font-family:var(--font-mono)}.campaign-complete-note{color:var(--ok);margin-top:.45rem;font-size:.75rem;line-height:1.4}.campaign-map-lock{margin-bottom:.45rem}.lock-chip{clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%);background:#00ffc80f;border:1px solid #00ffc859;flex-direction:column;gap:.15rem;padding:.55rem .85rem;display:inline-flex;box-shadow:0 0 16px #00ffc81a,inset 0 0 12px #00ffc80a}.lock-label{font-family:var(--font-mono);letter-spacing:.14em;color:#00ffc88c;font-size:.55rem}.lock-map{font-family:var(--font-display);letter-spacing:.12em;color:#00ffc8;text-shadow:0 0 10px #00ffc859;font-size:.85rem}.menu-actions{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.btn-ghost{color:var(--amber)!important;letter-spacing:.12em!important;background:0 0!important;border-color:#ffc14a59!important;padding:.55rem .85rem!important;font-size:.65rem!important}.btn-ghost:hover{box-shadow:0 0 14px #ffc14a1f;background:#ffc14a1a!important}.result-actions{flex-wrap:wrap;gap:.55rem;margin-top:.25rem;display:flex}.result-actions .btn{flex:1;min-width:8rem}.difficulty-blurb{color:var(--muted);margin-top:.55rem;font-size:.74rem;line-height:1.4}.cyberdeck .difficulty-blurb{font-family:var(--font-mono);color:#8cc8b4b8;border-left:2px solid #00ffc833;padding-left:.55rem;font-size:.7rem}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);width:max-content;max-width:min(280px,70vw);color:var(--text);font-family:var(--font-mono);letter-spacing:.02em;text-align:left;white-space:pre-line;opacity:0;pointer-events:none;z-index:80;background:#040e0af5;border:1px solid #00e8a059;padding:.5rem .65rem;font-size:.68rem;font-weight:400;line-height:1.45;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%)translateY(4px);box-shadow:0 8px 28px #0000008c}[data-tip]:before{content:"";opacity:0;pointer-events:none;z-index:81;border:5px solid #0000;border-top-color:#00e8a059;transition:opacity .12s;position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%)}[data-tip]:hover:after,[data-tip]:focus-visible:after{opacity:1;transform:translate(-50%)translateY(0)}[data-tip]:hover:before,[data-tip]:focus-visible:before{opacity:1}[data-tip-pos=below]:after{top:calc(100% + 10px);bottom:auto;transform:translate(-50%)translateY(-4px)}[data-tip-pos=below]:hover:after,[data-tip-pos=below]:focus-visible:after{transform:translate(-50%)translateY(0)}[data-tip-pos=below]:before{border-top-color:#0000;border-bottom-color:#00e8a059;top:calc(100% + 4px);bottom:auto}[data-tip-pos=right]:after{max-width:min(260px,55vw);inset:50% auto auto calc(100% + 10px);transform:translate(4px,-50%)}[data-tip-pos=right]:hover:after,[data-tip-pos=right]:focus-visible:after{transform:translateY(-50%)}[data-tip-pos=right]:before{border-color:#0000 #00e8a059 #0000 #0000;inset:50% auto auto calc(100% + 2px);transform:translateY(-50%)}[data-tip-pos=start]:after{left:0;right:auto;transform:translateY(4px)}[data-tip-pos=start]:hover:after,[data-tip-pos=start]:focus-visible:after{transform:translateY(0)}[data-tip-pos=start]:before{left:12px;transform:none}.ability[disabled]{pointer-events:auto;cursor:not-allowed}.btn{font-family:var(--font-display);letter-spacing:.16em;border:1px solid var(--panel-border);color:var(--text);cursor:pointer;background:#3de0ff14;padding:.85rem 1.4rem;font-size:.75rem;transition:background .15s,box-shadow .15s,transform .1s}.btn:hover{background:#3de0ff2e;box-shadow:0 0 24px #3de0ff33}.btn:active{transform:scale(.98)}.btn.primary{border-color:var(--cyan);color:#fff;background:linear-gradient(#3de0ff38,#3de0ff14);width:100%}.hint{color:var(--muted);text-align:center;letter-spacing:.02em;margin-top:1rem;font-size:.75rem}.hud{pointer-events:none;z-index:20;position:absolute;inset:0}.hud-top{background:linear-gradient(#0000008c,#0000);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;display:flex}.hud-top-center{text-align:center;flex-direction:column;flex:1;align-items:center;gap:.25rem;min-width:0;display:flex}.hud-top-actions{flex-shrink:0;align-items:flex-start;gap:.4rem;display:flex}.abort-hud-btn{pointer-events:auto;min-width:3.4rem;color:var(--danger);font-family:var(--font-display);letter-spacing:.14em;cursor:pointer;background:#14060ad1;border:1px solid #ff3d5a66;justify-content:center;align-items:center;padding:.4rem .5rem;font-size:.52rem;transition:border-color .15s,background .15s;display:flex}.abort-hud-btn:hover{background:#ff3d5a1f;border-color:#ff3d5abf}.music-hud-btn{pointer-events:auto;min-width:2.6rem;color:var(--cyan);font-family:var(--font-display);cursor:pointer;background:#060e18d1;border:1px solid #3de0ff59;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.1rem;padding:.35rem .45rem;transition:border-color .15s,background .15s,color .15s,opacity .15s;display:flex}.music-hud-btn:hover{background:#3de0ff1a;border-color:#3de0ffa6}.music-hud-btn.muted{color:var(--muted);opacity:.75;border-color:#7a93a859}.music-hud-icon{font-size:.95rem;line-height:1}.music-hud-label{letter-spacing:.14em;font-size:.48rem}.brand-mark{font-family:var(--font-display);letter-spacing:.28em;color:var(--cyan);font-size:.95rem;display:block}.brand-sub{letter-spacing:.2em;color:var(--muted);font-size:.65rem}.turn-banner{font-family:var(--font-display);letter-spacing:.2em;pointer-events:none;background:#060e18bf;border:1px solid #3de0ff59;padding:.45rem 1rem;font-size:.78rem;transition:border-color .2s,color .2s,box-shadow .2s;animation:2.4s ease-in-out infinite bannerPulse}.turn-banner.enemy{color:var(--danger);border-color:#ff3d5a80;animation:1.2s ease-in-out infinite bannerPulseEnemy;box-shadow:0 0 20px #ff3d5a26}.turn-banner.deadline{color:var(--orange);border-color:#ff8a3da6;animation:.9s ease-in-out infinite bannerPulseDeadline;box-shadow:0 0 22px #ff8a3d40}@keyframes bannerPulseDeadline{0%,to{box-shadow:0 0 10px #ff8a3d33}50%{box-shadow:0 0 26px #ff8a3d66}}@keyframes bannerPulse{0%,to{box-shadow:0 0 #3de0ff00}50%{box-shadow:0 0 18px #3de0ff2e}}@keyframes bannerPulseEnemy{0%,to{box-shadow:0 0 8px #ff3d5a1f}50%{box-shadow:0 0 22px #ff3d5a47}}.objective-strip.clock-warn{color:var(--danger);text-shadow:0 0 10px #ff3d5a59}.objective-strip.port-linking{color:var(--cyan);text-shadow:0 0 10px #3de0ff59}.ability.ability-link{border-color:#3de0ff8c;box-shadow:0 0 12px #3de0ff26}.ability.ability-link.active{border-color:var(--cyan);color:var(--cyan);background:#3de0ff1f}.objective-strip{letter-spacing:.08em;color:var(--muted);padding-top:.35rem;font-size:.75rem}.unit-panel{background:var(--panel);border:1px solid var(--panel-border);pointer-events:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:24;width:240px;padding:1rem 1.1rem;transition:border-color .15s,box-shadow .15s;position:absolute;bottom:8.6rem;left:1.25rem}.unit-panel.unit-wounded{border-color:#ff8a3d8c;box-shadow:0 0 18px #ff8a3d24}.unit-panel.unit-wounded .unit-class{color:var(--orange)}.unit-panel.unit-wounded .hp-fill{background:linear-gradient(90deg, #ff5a3a, var(--orange))}.unit-panel.unit-critical:not(.unit-wounded) .hp-fill{background:linear-gradient(90deg, #ff2040, var(--danger));box-shadow:0 0 8px #ff3d5a73}.unit-name-row{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.unit-name{font-family:var(--font-display);letter-spacing:.1em;font-size:.95rem}.unit-level{font-family:var(--font-display);letter-spacing:.12em;color:var(--amber);background:#ffc14a14;border:1px solid #ffc14a59;flex-shrink:0;padding:.12rem .4rem;font-size:.72rem}.unit-class{letter-spacing:.18em;color:var(--cyan);margin:.2rem 0 .75rem;font-size:.7rem}.xp-row{cursor:help;flex-wrap:wrap;align-items:center;gap:.25rem .4rem;margin-top:.55rem;display:flex}.xp-label{letter-spacing:.12em;color:var(--cyan);flex-shrink:0;font-size:.55rem}.xp-meaning{flex-shrink:0;margin:0!important;font-size:.5rem!important}.xp-bar{background:#ffffff14;flex:1;height:4px;overflow:hidden}.xp-fill{background:linear-gradient(90deg, var(--cyan-dim), var(--amber));width:0%;height:100%;transition:width .3s}.xp-fill.xp-pop{animation:.55s ease-out xpPop;box-shadow:0 0 10px #ffc14aa6}@keyframes xpPop{0%{filter:brightness(1.8)}to{filter:brightness()}}.xp-text{font-family:var(--font-mono);color:var(--muted);text-align:right;flex-shrink:0;min-width:3.2rem;font-size:.58rem}.stat-row{grid-template-columns:repeat(4,1fr);gap:.35rem;margin-bottom:.6rem;display:grid}.stat{cursor:help;border-radius:2px;padding:.15rem .1rem;transition:background .12s}.stat:hover{background:#00e8a00f}.stat label{letter-spacing:.12em;color:var(--cyan);font-size:.58rem;display:block}.stat-meaning{letter-spacing:.04em;text-transform:lowercase;margin:.05rem 0 .12rem;line-height:1.1;display:block;font-family:var(--font-body)!important;color:var(--muted)!important;font-size:.52rem!important}.stat>span:last-child{font-family:var(--font-display);color:var(--text);font-size:.85rem}.stat-full{letter-spacing:.02em;margin-left:.1rem;font-family:var(--font-mono)!important;color:var(--muted)!important;font-size:.65rem!important}.unit-panel.unit-wounded .stat>span:last-child{color:var(--orange)}.unit-panel.unit-wounded .stat-full{color:#a0c8b4bf!important}.hp-bar{cursor:help;background:#ffffff14;height:4px;overflow:hidden}.hp-fill{background:linear-gradient(90deg, var(--danger), var(--ok));width:100%;height:100%;transition:width .25s}.squad-bar{pointer-events:auto;z-index:22;gap:.4rem;display:flex;position:absolute;bottom:6.1rem;left:50%;transform:translate(-50%)}.squad-chip{min-width:72px;color:var(--text);cursor:pointer;text-align:left;font-family:var(--font-body);background:#080e18e0;border:1px solid #3de0ff38;padding:.4rem .55rem;transition:border-color .12s,background .12s}.squad-chip:hover{border-color:var(--cyan)}.squad-chip.selected{border-color:var(--cyan);background:#3de0ff1a;box-shadow:0 0 14px #3de0ff40}.squad-chip.dead{opacity:.35;cursor:default;border-color:#ff3d5a40}.squad-chip .sc-name{font-family:var(--font-display);letter-spacing:.1em;font-size:.62rem}.squad-chip .sc-lvl{color:var(--amber);font-weight:500}.squad-chip .sc-meta{color:var(--muted);margin-top:.15rem;font-size:.65rem}.squad-chip .sc-ap{color:var(--cyan)}.squad-chip .sc-hp{background:#ffffff14;height:3px;margin-top:.3rem;display:block;overflow:hidden}.squad-chip .sc-hp>i{background:linear-gradient(90deg, var(--danger), var(--ok));height:100%;display:block}.hud-bottom{pointer-events:none;background:linear-gradient(#0000,#000000b3);justify-content:center;align-items:flex-end;gap:1rem;padding:1rem 1.25rem 1.25rem;display:flex;position:absolute;bottom:0;left:0;right:0}.ability-bar{pointer-events:auto;gap:.5rem;display:flex}.ability{min-width:88px;color:var(--text);cursor:pointer;font-family:var(--font-body);text-align:left;background:#08101ce6;border:1px solid #3de0ff40;padding:.65rem .75rem;transition:border-color .12s,background .12s}.ability:hover:not(:disabled){border-color:var(--cyan);background:#3de0ff1a}.ability.active{border-color:var(--cyan);box-shadow:0 0 16px #3de0ff40}.ability:disabled{opacity:.35;cursor:not-allowed}.ability .key{font-family:var(--font-display);color:var(--cyan);letter-spacing:.1em;font-size:.62rem}.ability .label{font-family:var(--font-mono);letter-spacing:.02em;margin-top:.15rem;font-size:.72rem;display:block}.ability .cost{font-family:var(--font-mono);color:var(--muted);font-size:.62rem}.btn.end-turn{pointer-events:auto;color:var(--orange);background:#ff8a3d1a;border-color:#ff8a3d73;transition:border-color .15s,background .15s,box-shadow .15s,color .15s}.btn.end-turn:hover{background:#ff8a3d33;box-shadow:0 0 20px #ff8a3d33}.btn.end-turn.deadline-urgent{color:var(--danger);background:#ff3d5a24;border-color:#ff3d5aa6;animation:1s ease-in-out infinite endTurnUrgent}@keyframes endTurnUrgent{0%,to{box-shadow:0 0 8px #ff3d5a33}50%{box-shadow:0 0 22px #ff3d5a73}}.hit-chance{text-align:center;pointer-events:none;z-index:25;position:absolute;top:18%;left:50%;transform:translate(-50%)}.hit-card{pointer-events:auto;cursor:help;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#040e0ae0;border:1px solid #00e8a059;min-width:220px;padding:.75rem 1.1rem .85rem;box-shadow:0 0 0 1px #00000080,0 12px 40px #0000008c,0 0 28px #00e8a01f}.hit-chance.flank .hit-card{border-color:#4dff9a8c;box-shadow:0 0 28px #4dff9a33}.hit-chance.low .hit-card{border-color:#ff3d5a73}.hit-target{font-family:var(--font-mono);letter-spacing:.12em;color:var(--danger);margin-bottom:.2rem;font-size:.68rem}.hit-label{font-family:var(--font-display);letter-spacing:.18em;color:var(--muted);margin-top:-.1rem;margin-bottom:.45rem;font-size:.55rem}.hit-int-row{justify-content:center;align-items:center;gap:.4rem;margin-bottom:.4rem;display:flex}.hit-int-label{font-family:var(--font-display);letter-spacing:.1em;color:var(--muted);flex-direction:column;align-items:flex-start;font-size:.55rem;line-height:1.15;display:flex}.hit-int-sub{font-family:var(--font-body);letter-spacing:.04em;color:var(--muted);opacity:.85;text-transform:lowercase;font-size:.5rem}.hit-int-bar{background:#ffffff14;width:90px;height:5px;overflow:hidden}.hit-int-fill{background:linear-gradient(90deg,#ff3d5a,#ff8a3d);width:100%;height:100%;transition:width .15s}.hit-int-text{font-family:var(--font-mono);color:#ffb0b8;text-align:left;min-width:2.4rem;font-size:.7rem}.hit-kill{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ok);min-height:.9rem;margin-top:.15rem;font-size:.65rem}.hit-kill.warn{color:var(--amber)}.scanlines{pointer-events:none;z-index:15;opacity:.45;mix-blend-mode:multiply;background:repeating-linear-gradient(#0000 0 2px,#0000000a 2px 3px);position:absolute;inset:0}.screen-fx{pointer-events:none;z-index:30;opacity:0;background:radial-gradient(#0000 30%,#ff283c59 100%);transition:opacity 50ms;position:absolute;inset:0}.screen-fx.flash{opacity:1;animation:.35s ease-out forwards screenFlash}@keyframes screenFlash{0%{opacity:.85}to{opacity:0}}body.mode-shoot #game-canvas{cursor:crosshair}body.mode-move #game-canvas{cursor:cell}body.mode-target #game-canvas{cursor:crosshair}.float-dmg{letter-spacing:.04em;font-size:1.15rem}.hit-pct{font-family:var(--font-display);letter-spacing:.06em;color:#fff;text-shadow:0 0 20px #00e8a073;font-size:2.4rem;line-height:1}.hit-chance.flank .hit-pct{color:var(--ok)}.hit-chance.low .hit-pct{color:var(--danger)}.hit-meta{font-family:var(--font-mono);letter-spacing:.06em;color:var(--muted);margin-top:.15rem;font-size:.65rem;line-height:1.35}.float-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.float-dmg{font-family:var(--font-display);color:#fff;text-shadow:0 0 8px #ff3d5acc;font-size:1.1rem;animation:.9s ease-out forwards floatUp;position:absolute}.float-dmg.miss{color:var(--muted);text-shadow:none;font-size:.9rem}.float-dmg.crit{color:var(--amber);text-shadow:0 0 12px #ffc14ae6;font-size:1.35rem}.float-xp{font-family:var(--font-display);letter-spacing:.1em;color:var(--amber);text-shadow:0 0 10px #ffc14abf;pointer-events:none;white-space:nowrap;font-size:.85rem;animation:1s ease-out forwards floatUp;position:absolute}.float-lvl{font-family:var(--font-display);letter-spacing:.14em;color:var(--cyan);text-shadow:0 0 14px #3de0ffd9;pointer-events:none;white-space:nowrap;font-size:1.05rem;animation:1.35s ease-out forwards floatLvl;position:absolute}.float-heal{font-family:var(--font-display);letter-spacing:.08em;color:var(--ok);text-shadow:0 0 10px #4dff9acc;pointer-events:none;white-space:nowrap;font-size:.95rem;animation:1s ease-out forwards floatUp;position:absolute}@keyframes floatUp{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-48px)}}@keyframes floatLvl{0%{opacity:0;transform:translate(-50%,8px)scale(.85)}18%{opacity:1;transform:translate(-50%)scale(1.08)}to{opacity:0;transform:translate(-50%,-56px)scale(1)}}.debug-bar{z-index:28;pointer-events:auto;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#040a08d1;border:1px solid #ffc14a47;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.3rem;max-width:min(420px,48vw);padding:.35rem .4rem;display:flex;position:absolute;top:4.6rem;right:1rem;box-shadow:0 0 18px #ffc14a14}.debug-label{font-family:var(--font-display);letter-spacing:.16em;color:var(--amber);opacity:.85;-webkit-user-select:none;user-select:none;padding:0 .35rem 0 .15rem;font-size:.55rem}.debug-btn{min-width:2.4rem;color:var(--text);cursor:pointer;font-family:var(--font-body);background:#0c1210e6;border:1px solid #ffc14a38;flex-direction:column;justify-content:center;align-items:center;padding:.3rem .35rem .28rem;transition:border-color .12s,background .12s,box-shadow .12s;display:flex}.debug-btn:hover{border-color:var(--amber);background:#ffc14a1a}.debug-btn.active{border-color:var(--amber);color:var(--amber);background:#ffc14a29;box-shadow:0 0 12px #ffc14a38}.debug-btn.danger{border-color:#ff3d5a47}.debug-btn.danger:hover{border-color:var(--danger);background:#ff3d5a1a}.debug-btn .debug-icon{color:var(--amber);font-size:.85rem;line-height:1.1}.debug-btn.danger .debug-icon{color:var(--danger)}.debug-btn .debug-name{font-family:var(--font-mono);letter-spacing:.06em;color:var(--muted);margin-top:.1rem;font-size:.52rem}.debug-btn.active .debug-name{color:var(--amber)}.toast{font-family:var(--font-display);letter-spacing:.16em;color:var(--text);pointer-events:none;text-align:center;z-index:40;background:#080e18e6;border:1px solid #3de0ff59;max-width:min(90vw,520px);padding:.65rem 1.25rem;font-size:.85rem;animation:.25s ease-out toastIn;position:absolute;top:18%;left:50%;transform:translate(-50%);box-shadow:0 0 24px #3de0ff14}.toast.danger{color:var(--danger);border-color:#ff3d5a8c;box-shadow:0 0 28px #ff3d5a26}.toast.ok{color:var(--ok);border-color:#4dff9a66;box-shadow:0 0 24px #4dff9a1a}@keyframes toastIn{0%{opacity:0;transform:translate(-50%)translateY(-8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.result-panel{z-index:1;width:min(520px,94vw);max-height:min(90vh,860px);padding:1.5rem 1.6rem 1.35rem;position:relative;overflow-y:auto}.result-panel.deck-shell{width:min(560px,95vw)}#result.menu-overlay{place-items:center}.result-panel h1.defeat{color:var(--danger);text-shadow:0 0 24px #ff3d5a66}.result-panel h1.victory{color:var(--ok);text-shadow:0 0 24px #4dff9a59}#result.deadline-fail .result-panel{border-color:#ff8a3d73;box-shadow:0 0 0 1px #000000d9,0 0 0 2px #ff8a3d14,0 28px 90px #000000d9,0 0 80px #ff8a3d14}#result.deadline-fail .result-panel h1.defeat{color:var(--orange);text-shadow:0 0 24px #ff8a3d73}#result.deadline-fail #result-tag{color:var(--orange)}.debrief-panel{text-align:left;background:#00080a8c;border:1px solid #00ffc826;margin-top:1rem;padding:.75rem .8rem .85rem}.debrief-head{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.debrief-grade{width:2.6rem;height:2.6rem;font-family:var(--font-display);letter-spacing:.04em;color:#00ffc8;text-shadow:0 0 12px #00ffc873;background:#00ffc80f;border:1px solid #00ffc859;flex-shrink:0;place-items:center;font-size:1.35rem;display:grid}.debrief-grade.grade-s{border-color:var(--amber);color:var(--amber);text-shadow:0 0 14px #ffc14a80;background:#ffc14a14}.debrief-grade.grade-a{color:#00ffc8;border-color:#00ffc8}.debrief-grade.grade-b{color:#7ec8ff;border-color:#64c8ff80}.debrief-grade.grade-c{color:#b0b0b0;border-color:#a0a0a066}.debrief-grade.grade-f{border-color:var(--danger);color:var(--danger);text-shadow:0 0 12px #ff3d5a66;background:#ff3d5a14}.debrief-label{font-family:var(--font-display);letter-spacing:.16em;color:#00ffc8d9;font-size:.68rem}.debrief-sub{font-family:var(--font-mono);color:var(--muted);margin-top:.15rem;font-size:.58rem}.debrief-stats{grid-template-columns:repeat(3,1fr);gap:.35rem;margin-bottom:.75rem;display:grid}.debrief-stat{clip-path:polygon(0 0,calc(100% - 5px) 0,100% 5px,100% 100%,0 100%);background:#00000059;border:1px solid #00ffc81a;padding:.4rem .45rem}.debrief-stat.wide{grid-column:1/-1}.debrief-stat .ds-label{font-family:var(--font-mono);letter-spacing:.12em;color:#00ffc873;margin-bottom:.15rem;font-size:.48rem;display:block}.debrief-stat .ds-value{font-family:var(--font-display);letter-spacing:.06em;color:#e8fff8;font-size:.9rem}.debrief-stat .ds-value.sm{color:#00ffc8;font-size:.72rem}.debrief-stat .ds-hint{font-family:var(--font-mono);color:var(--muted);font-size:.55rem}.debrief-roster-wrap{border:1px solid #00ffc81a;margin-bottom:.55rem}.debrief-roster-head{font-family:var(--font-mono);letter-spacing:.14em;color:#00ffc873;border-bottom:1px solid #00ffc814;padding:.35rem .5rem;font-size:.5rem}.debrief-row{font-family:var(--font-mono);border-bottom:1px solid #00ffc80d;grid-template-columns:1fr auto auto auto;align-items:center;gap:.4rem;padding:.35rem .5rem;font-size:.65rem;display:grid}.debrief-row:last-child{border-bottom:none}.debrief-row.dead,.debrief-row.wound-next{background:#ff3d5a0f}.debrief-row .db-name{font-family:var(--font-display);letter-spacing:.08em;font-size:.62rem}.debrief-row .db-lvl{color:var(--amber)}.debrief-row .db-xp{color:#00ffc8}.debrief-row .db-status{letter-spacing:.06em;color:var(--ok);font-size:.52rem}.debrief-row.wound-next .db-status{color:var(--danger)}.debrief-row.was-wounded .db-status{color:var(--amber)}.debrief-wounds{font-family:var(--font-mono);color:#96c8b4bf;border-left:2px solid #00ffc840;margin:0;padding-left:.55rem;font-size:.68rem;line-height:1.4}.debrief-wounds.warn{color:#ffa0aae6;border-left-color:#ff3d5a73}.lobby-wound-strip{font-family:var(--font-mono);color:#ffa08ce6;background:#280a0866;border:1px solid #ff64504d;margin-bottom:.55rem;padding:.45rem .55rem;font-size:.68rem;line-height:1.4}.loadout-shop{margin-top:.75rem;padding:.65rem .7rem .7rem}.loadout-head{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.35rem;display:flex}.loadout-title{font-family:var(--font-display);letter-spacing:.18em;color:#00ffc8d9;font-size:.62rem}.loadout-cred{font-family:var(--font-mono);letter-spacing:.08em;color:var(--amber);text-shadow:0 0 10px #ffc14a59;font-size:.72rem}.loadout-blurb{font-family:var(--font-mono);color:var(--muted);margin-bottom:.5rem;font-size:.62rem;line-height:1.35}.loadout-items{grid-template-columns:1fr 1fr;gap:.4rem;display:grid}.loadout-item{text-align:left;color:var(--text);cursor:pointer;font-family:var(--font-mono);clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,0 100%);background:#00080ab3;border:1px solid #00ffc826;grid-template-rows:auto auto auto;grid-template-columns:1fr auto;gap:.1rem .4rem;padding:.45rem .5rem;transition:border-color .12s,background .12s,box-shadow .12s;display:grid}.loadout-item:hover:not(:disabled){background:#001e1cbf;border-color:#00ffc873;box-shadow:0 0 12px #00ffc81f}.loadout-item:disabled{opacity:.4;cursor:not-allowed}.loadout-item .lo-name{font-family:var(--font-display);letter-spacing:.1em;color:#e8fff8;font-size:.62rem}.loadout-item .lo-tier{color:#00ffc88c;justify-self:end;font-size:.55rem}.loadout-item .lo-desc{color:var(--muted);grid-column:1/-1;font-size:.55rem;line-height:1.3}.loadout-item .lo-cost{color:var(--amber);letter-spacing:.06em;grid-column:1/-1;font-size:.62rem}.loadout-item.lo-med .lo-name{color:var(--ok)}.loadout-toast{font-family:var(--font-mono);color:#00ffc8;margin-top:.45rem;font-size:.62rem}.loadout-toast.err{color:var(--danger)}@media (width<=480px){.loadout-items{grid-template-columns:1fr}}.squad-chip.wounded{background:#ff8a3d0a;border-color:#ff8a3d8c;box-shadow:0 0 12px #ff8a3d1f}.squad-chip .sc-wound{color:var(--orange);letter-spacing:.06em;font-size:.5rem;font-weight:600}.squad-chip.critical:not(.dead) .sc-hp>i{background:var(--danger);animation:.9s ease-in-out infinite hpCritPulse;box-shadow:0 0 6px #ff3d5a80}@keyframes hpCritPulse{0%,to{opacity:1}50%{opacity:.55}}#result.campaign-finale .result-panel{border-color:#00ffc866;width:min(580px,96vw);box-shadow:0 0 0 1px #000000d9,0 0 0 2px #00ffc814,0 32px 100px #000000d9,0 0 100px #00ffc814,inset 0 0 60px #00ffc808}.campaign-victory{text-align:center;z-index:1;padding:.25rem 0 .5rem;position:relative}.cv-graphic{width:120px;height:120px;margin:.25rem auto 1rem;position:relative}.cv-ring{border:1px solid #00ffc859;border-radius:50%;animation:12s linear infinite cvSpin;position:absolute;inset:8px;box-shadow:0 0 20px #00ffc826,inset 0 0 16px #00ffc80f}.cv-ring-2{border-style:dashed;border-color:#ffc14a59;animation-duration:9s;animation-direction:reverse;inset:22px;box-shadow:0 0 14px #ffc14a1f}.cv-core{background:radial-gradient(circle at 40% 35%,#00ffc840,#0000 55%),#000c0ee6;border:1px solid #00ffc880;border-radius:50%;place-items:center;animation:2.4s ease-in-out infinite cvPulse;display:grid;position:absolute;inset:34px;box-shadow:0 0 28px #00ffc859,inset 0 0 20px #00ffc81f}.cv-glyph{color:#00ffc8;text-shadow:0 0 16px #00ffc8cc;font-size:1.6rem;line-height:1}.cv-burst{opacity:.7;pointer-events:none;background:conic-gradient(#0000 0deg,#00ffc814 40deg,#0000 80deg,#ffc14a0f 160deg,#0000 200deg,#00ffc814 280deg,#0000 360deg);border-radius:50%;animation:6s linear infinite cvSpin;position:absolute;inset:0}@keyframes cvSpin{to{transform:rotate(360deg)}}@keyframes cvPulse{0%,to{transform:scale(1);box-shadow:0 0 28px #00ffc859,inset 0 0 20px #00ffc81f}50%{transform:scale(1.04);box-shadow:0 0 40px #00ffc880,inset 0 0 28px #00ffc82e}}.cv-status{justify-content:center;align-items:center;gap:.5rem;margin-bottom:.55rem;display:flex}.cv-status .panel-tag{font-family:var(--font-mono);margin-bottom:0;font-size:.58rem}.cv-title{font-family:var(--font-display);letter-spacing:.16em;color:#e8fff8;text-shadow:0 0 12px #00ffc88c,0 0 36px #00ffc84d;margin-bottom:.45rem;font-size:clamp(1.6rem,5vw,2.1rem);font-weight:700}.cv-sub{font-family:var(--font-mono);color:#96d2bec7;max-width:40ch;margin-bottom:1.1rem;margin-left:auto;margin-right:auto;font-size:.74rem;line-height:1.45}.cv-stats-grid{text-align:left;grid-template-columns:repeat(3,1fr);gap:.4rem;margin-bottom:.9rem;display:grid}.cv-stat{clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,0 100%);background:#00080aa6;border:1px solid #00ffc81f;padding:.5rem .55rem;box-shadow:inset 0 0 14px #00ffc808}.cv-stat.highlight{background:#281c0059;border-color:#ffc14a66;box-shadow:0 0 14px #ffc14a1a,inset 0 0 12px #ffc14a0d}.cv-stat.wide{grid-column:1/-1}.cv-stat-label{font-family:var(--font-mono);letter-spacing:.14em;color:#00ffc880;margin-bottom:.25rem;font-size:.5rem;display:block}.cv-stat.highlight .cv-stat-label{color:#ffc14aa6}.cv-stat-value{font-family:var(--font-display);letter-spacing:.08em;color:#e8fff8;text-shadow:0 0 10px #00ffc840;font-size:1rem}.cv-stat.highlight .cv-stat-value{color:var(--amber);text-shadow:0 0 12px #ffc14a66;font-size:1.15rem}.cv-stat-value.sm{letter-spacing:.12em;color:#00ffc8;font-size:.78rem}.cv-roster{text-align:left;background:#00060880;border:1px solid #00ffc81f;margin-bottom:.75rem}.cv-roster-head{font-family:var(--font-mono);letter-spacing:.16em;color:#00ffc880;border-bottom:1px solid #00ffc81a;padding:.4rem .55rem;font-size:.52rem}.cv-roster-rows{display:grid}.cv-roster-row{font-family:var(--font-mono);border-bottom:1px solid #00ffc80f;grid-template-columns:1fr auto auto auto;align-items:center;gap:.5rem;padding:.4rem .55rem;font-size:.68rem;display:grid}.cv-roster-row:last-child{border-bottom:none}.cv-roster-row.dead{opacity:.45}.cv-r-name{font-family:var(--font-display);letter-spacing:.1em;color:#e8fff8;font-size:.65rem}.cv-r-lvl{color:var(--amber);letter-spacing:.06em}.cv-r-xp{color:#00ffc8}.cv-r-status{letter-spacing:.1em;color:var(--ok);font-size:.55rem}.cv-roster-row.dead .cv-r-status{color:var(--danger)}.cv-body{font-family:var(--font-mono);color:#96d2bebf;text-align:left;border-left:2px solid #00ffc840;margin-bottom:.35rem;padding-left:.65rem;font-size:.72rem}@media (width<=480px){.cv-stats-grid{grid-template-columns:repeat(2,1fr)}.cv-stat.wide{grid-column:1/-1}.cv-roster-row{grid-template-columns:1fr 1fr;gap:.25rem .5rem}}.music-panel{flex-direction:column;gap:.55rem;margin-top:.55rem;padding:.7rem .75rem .8rem;display:flex}.music-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.65rem;display:flex}.music-toggle input{opacity:0;pointer-events:none;position:absolute}.music-track-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;display:grid}.music-track-row .music-btn{min-height:2.6rem}.music-volume-row{align-items:center;gap:.55rem;display:flex}.music-vol-label{font-family:var(--font-mono);letter-spacing:.12em;color:var(--cyan);flex-shrink:0;font-size:.58rem}.music-volume{accent-color:var(--cyan);cursor:pointer;flex:1;height:.35rem}.music-vol-pct{font-family:var(--font-mono);color:var(--muted);text-align:right;min-width:2.4rem;font-size:.58rem}.music-file-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.music-file-input{opacity:0;clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.music-file-btn{padding:.4rem .65rem!important;font-size:.58rem!important}.music-file-name{font-family:var(--font-mono);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:18ch;font-size:.58rem;overflow:hidden}.music-file-name.has-file{color:var(--ok)}@media (width>=720px){.music-track-row{grid-template-columns:repeat(4,minmax(0,1fr))}}.tutorial-panel{margin-top:.75rem;padding:.85rem 1rem}.tutorial-panel-head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.4rem;display:flex}.tutorial-panel-tag{font-family:var(--font-mono);letter-spacing:.08em;color:var(--amber);border:1px solid #ffc14a59;border-radius:2px;padding:.15rem .45rem;font-size:.65rem}.tutorial-coach{z-index:40;pointer-events:auto;background:#04100cf0;border:1px solid #00e8a073;border-radius:4px;width:min(22rem,100vw - 2rem);max-height:calc(100vh - 12rem);padding:.75rem .9rem .85rem;position:absolute;top:4.6rem;bottom:auto;left:1rem;overflow-y:auto;box-shadow:0 0 0 1px #00000080,0 12px 40px #0000008c,0 0 24px #00e8a014}.tutorial-coach.coach-minimized .coach-title,.tutorial-coach.coach-minimized .coach-body,.tutorial-coach.coach-minimized .coach-actions{display:none}.tutorial-coach.coach-minimized{width:auto;padding:.4rem .55rem}.coach-head{align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.coach-tag{font-family:var(--font-mono);letter-spacing:.12em;color:var(--cyan);font-size:.62rem}.coach-step{font-family:var(--font-mono);color:var(--muted);margin-right:auto;font-size:.62rem}.coach-dismiss{appearance:none;color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0 .15rem;font-size:1.1rem;line-height:1}.coach-dismiss:hover{color:var(--text)}.coach-title{font-family:var(--font-display);letter-spacing:.06em;color:var(--amber);margin-bottom:.3rem;font-size:.78rem}.coach-body{color:var(--text);opacity:.92;font-size:.78rem;line-height:1.4}.coach-actions{justify-content:flex-end;margin-top:.55rem;display:flex}.coach-next{padding:.25rem .55rem!important;font-size:.68rem!important}@media (width<=640px){.tutorial-coach{width:auto;max-height:36vh;inset:4.4rem .5rem auto}.mode-row{grid-template-columns:1fr}#mode-row{grid-template-columns:repeat(3,minmax(0,1fr))}#mode-row .diff-name{letter-spacing:.08em;font-size:.58rem}#mode-row .diff-desc{font-size:.55rem}}html,body{color:#e4fff4;background:#030a06;width:100%;height:100%;margin:0;overflow:hidden}.aegis-host,#app{z-index:1;width:100%;height:100%;position:fixed;inset:0;overflow:hidden}.credits-actions{flex-wrap:wrap;gap:.5rem;display:flex}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@keyframes pulse{50%{opacity:.5}}
