:root{--ui-bg:#1a1814;--ui-panel:#12100ce0;--ui-panel-strong:#12100ceb;--ui-border:#c4a83a;--ui-accent:#f0d050;--ui-accent-soft:#f0d0502e;--ui-accent-mid:#f0d05059;--ui-text:#e8d9a0;--ui-dim:#a89860;--ui-health:#54b33a;--ui-armor:#4a8fd4;--ui-money:#5dcf5a;--ui-danger:#e8c040;--ui-ink:#0a0806;--ui-glow:none;--ui-scan:0;--map-bg:#4a7a30;--ui-radius:12px;--ui-radius-sm:8px;--ui-radius-pill:999px;--ui-blur:14px;--ui-border-w:1.5px;--ui-shadow:0 8px 28px #0006;--ui-shadow-fab:0 4px 16px #00000073;--ui-ring:0 0 0 1px #f0d05059;--font-ui:"IBM Plex Sans", system-ui, sans-serif;--font-display:"Teko", "IBM Plex Sans", system-ui, sans-serif;--font-mono:"Share Tech Mono", ui-monospace, monospace;--edge:12px;--gap:6px;--touch:44px;--fab:44px;--fab-gap:10px;--chrome-gap:6px;--chrome-h:44px;--top-row-h:var(--chrome-h);--search-h:var(--chrome-h);--chrome-top:calc(var(--safe-top) + var(--edge));--chrome-search-top:var(--chrome-top);--chrome-bottom:calc(var(--safe-bottom) + var(--edge));--dock-h:0px;--fab-bottom:calc(var(--chrome-bottom) + var(--dock-h));--status-bottom:calc(var(--chrome-bottom) + var(--dock-h) + 18px);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-right:env(safe-area-inset-right,0px);--safe-left:env(safe-area-inset-left,0px);--z-map:0;--z-status:15;--z-chrome:20;--z-dock:26;--z-sheet:40;--z-modal:55}html[data-dock=mission]{--dock-h:88px}html[data-dock=privacy]{--dock-h:72px}html[data-font=sa],html[data-font=vice],html[data-font=sheikah],html[data-font=comic]{--font-ui:"Rajdhani", system-ui, sans-serif;--font-display:"Teko", sans-serif}html[data-font=iv]{--font-ui:"IBM Plex Sans", system-ui, sans-serif;--font-display:"IBM Plex Sans", system-ui, sans-serif}html[data-font=v]{--font-ui:"Rajdhani", system-ui, sans-serif;--font-display:"Rajdhani", sans-serif}html[data-font=mono]{--font-ui:"Share Tech Mono", monospace;--font-display:"Share Tech Mono", monospace}html[data-font=cyber]{--font-ui:"Orbitron", system-ui, sans-serif;--font-display:"Orbitron", sans-serif}html[data-font=western]{--font-ui:"Special Elite", serif;--font-display:"Special Elite", serif}html[data-font=pixel]{--font-ui:"Press Start 2P", monospace;--font-display:"Press Start 2P", monospace}html[data-category=cinema] .fx-vig{opacity:.5}html[data-category=horror] .fx-vig{opacity:.62}html[data-category=myth] .fx-vig{opacity:.4}html[data-category=game] .fx-vig{opacity:.42}html[data-hud=cinema-tron] .fx-vig{background:radial-gradient(#0000 38%,#000818d1 100%)}html[data-hud=cinema-matrix] .fx-vig,html[data-hud=cinema-neon] .fx-vig{background:radial-gradient(#0000 40%,#000000bf 100%)}html[data-hud=myth-fog] .fx-vig{opacity:.65;background:radial-gradient(#ffffff1f 15%,#1e1e1e8c 100%)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--map-bg);width:100%;height:100dvh;font-family:var(--font-ui);color:var(--ui-text);-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}#app-root{background:var(--map-bg);width:100%;height:100dvh;position:relative;overflow:hidden}.chrome-glass{background:color-mix(in srgb, var(--ui-panel-strong) 94%, var(--ui-accent) 6%);border:var(--ui-border-w) var(--ui-border-style,solid) color-mix(in srgb, var(--ui-border) 70%, transparent);border-radius:var(--ui-radius);box-shadow:0 4px 16px #00000047, var(--ui-glow,none);-webkit-backdrop-filter:blur(var(--ui-blur)) saturate(1.1)}html[data-fab=circle] .fab.chrome-glass{border-radius:999px!important}html[data-fab=square] .fab.chrome-glass{border-radius:var(--ui-radius-sm)!important}html[data-fab=soft] .fab.chrome-glass{border-radius:calc(var(--ui-radius) + 4px)!important}html[data-fab=hex] .fab.chrome-glass{clip-path:polygon(30% 0%,70% 0%,100% 30%,100% 70%,70% 100%,30% 100%,0% 70%,0% 30%);border-radius:4px!important}html[data-border=double] .chrome-glass{border-style:double;border-width:max(3px, var(--ui-border-w))}html[data-border=glow] .chrome-glass{box-shadow:var(--ui-shadow), var(--ui-glow), 0 0 0 1px color-mix(in srgb, var(--ui-accent) 55%, transparent), inset 0 0 20px color-mix(in srgb, var(--ui-accent) 12%, transparent)}.id-title{letter-spacing:var(--ui-title-track,.02em)!important;text-transform:var(--ui-title-transform,none)!important}html[data-chrome=pipboy] .chrome-glass,html[data-chrome=matrix] .chrome-glass{background:var(--ui-panel-strong);-webkit-backdrop-filter:none;box-shadow:var(--ui-glow), inset 0 0 0 1px color-mix(in srgb, var(--ui-accent) 40%, transparent)}html[data-chrome=pixel] .chrome-glass{-webkit-backdrop-filter:none;image-rendering:pixelated;box-shadow:4px 4px 0 color-mix(in srgb, var(--ui-ink) 80%, transparent)}html[data-chrome=tron] .chrome-glass,html[data-chrome=blade-runner] .chrome-glass,html[data-chrome=night-city] .chrome-glass{background:color-mix(in srgb, var(--ui-ink) 75%, transparent);border-color:var(--ui-accent)}html[data-chrome=silent-hill] .chrome-glass{filter:saturate(.85);background:#282828e0;border-color:#666}html[data-chrome=odyssey] .chrome-glass,html[data-chrome=lotr] .chrome-glass,html[data-chrome=dune] .chrome-glass{background:linear-gradient(180deg, color-mix(in srgb, var(--ui-panel-strong) 90%, var(--ui-accent) 10%), var(--ui-panel-strong))}.fx-scan{pointer-events:none;z-index:2;opacity:var(--ui-scan);mix-blend-mode:multiply;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000024 2px 4px);position:absolute;inset:0}.fx-vig{pointer-events:none;z-index:2;opacity:.28;background:radial-gradient(#0000 58%,#00000047 100%);position:absolute;inset:0}.chrome-top-fade{pointer-events:none;height:calc(72px + var(--safe-top));z-index:3;background:linear-gradient(to bottom, color-mix(in srgb, var(--ui-ink) 38%, transparent) 0%, transparent 100%);opacity:.4;position:absolute;top:0;left:0;right:0}.attrib{left:calc(var(--edge) + var(--safe-left));bottom:calc(var(--chrome-bottom) + var(--dock-h) + 2px);z-index:var(--z-status);color:#ffffff61;text-shadow:0 1px 2px #000;pointer-events:none;max-width:min(42vw,160px);font-size:8px;line-height:1.3;position:absolute}.attrib a{color:var(--ui-accent);pointer-events:auto;opacity:.85;text-decoration:none}.route-chip{top:calc(var(--chrome-search-top) + var(--search-h) + var(--gap));left:calc(var(--edge) + var(--safe-left));right:calc(var(--edge) + var(--safe-right));z-index:var(--z-status);max-width:min(70vw,280px);color:var(--ui-text);background:var(--ui-panel-strong);border:var(--ui-border-w) solid var(--ui-accent);border-radius:var(--ui-radius-sm);box-shadow:var(--ui-shadow-fab), var(--ui-glow);-webkit-backdrop-filter:blur(var(--ui-blur));pointer-events:none;align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:600;display:flex;position:absolute}.route-chip .dot{background:var(--ui-accent);width:8px;height:8px;box-shadow:0 0 8px var(--ui-accent);border-radius:50%;flex-shrink:0}@media (width>=768px){.route-chip{top:calc(168px + var(--safe-top));left:max(12px,50% - 280px)}}.boot{z-index:5;pointer-events:none;background:color-mix(in srgb, var(--map-bg) 70%, #000);place-items:center;display:grid;position:absolute;inset:0}.boot span{background:var(--ui-panel-strong);border:var(--ui-border-w) solid var(--ui-border);border-radius:var(--ui-radius);font-weight:700;font-family:var(--font-display);letter-spacing:.04em;box-shadow:var(--ui-shadow);padding:14px 22px}html[data-font=pixel] .chrome-glass,html[data-font=pixel] .icon-btn,html[data-font=pixel] .wname,html[data-font=pixel] .id-title{font-size:9px}html[data-layout=gta] .world,html[data-layout=gta] .badge{border-radius:2px}html[data-layout=gta] .icon-btn{border-radius:2px!important}html[data-layout=terminal] .wname,html[data-layout=cyber] .wname{font-family:var(--font-mono);letter-spacing:.05em}html[data-layout=terminal] .icon-btn{border-radius:0!important}html[data-layout=cyber] .icon-btn{clip-path:polygon(10% 0,100% 0,90% 100%,0 100%)}html[data-layout=horror] .world{opacity:.92;filter:saturate(.85)}html[data-layout=codex] .world{border-style:double;border-width:3px}html[data-layout=terminal] .chrome-top-fade,html[data-layout=cyber] .chrome-top-fade{height:calc(80px + var(--safe-top));opacity:.5}html[data-layout=horror] .chrome-top-fade{opacity:.55;background:linear-gradient(#00000073,#0000)}html[data-layout=cinema] .chrome-top-fade{opacity:.42}
