/* ── WALLPAPER CAPTURE MODE — hide all UI, keep 3D scene ── */
body.wallpaper-mode #hud,
body.wallpaper-mode #crosshair,
body.wallpaper-mode #warpfx,
body.wallpaper-mode #speedlines,
body.wallpaper-mode #speedlines-cv,
body.wallpaper-mode #yaw-cv,
body.wallpaper-mode #flare-cv,
body.wallpaper-mode #planet-labels,
body.wallpaper-mode #bar-bot,
body.wallpaper-mode #letterbox-top,
body.wallpaper-mode #letterbox-bot,
body.wallpaper-mode #marker-cv,
body.wallpaper-mode #ship-select-btn,
body.wallpaper-mode #radar-wrap,
body.wallpaper-mode #tc,
body.wallpaper-mode #notif { display:none !important }

:root{--red:#E8380D;--red2:#c22d08;--blk:#0d0f14;--wht:#e8eaf0;--gr:#1a1d24;--gr2:#2a2e3a;--gr3:#8892a4;--st:env(safe-area-inset-top,0px);--sb:env(safe-area-inset-bottom,0px);--sl:env(safe-area-inset-left,0px);--sr:env(safe-area-inset-right,0px)}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{width:100%;height:100%;background:#000;overflow:hidden;font-family:'Barlow Condensed',sans-serif;color:var(--wht);touch-action:none;user-select:none;-webkit-user-select:none}
/* ── LAYER STACK ──
   z-index 0: #space-bg (CSS star texture — revealed when drawer opens)
   z-index 2: letterbox bars
   z-index 3: #cv (WebGL)
   Everything else (flares, HUD, pinfo) stays at their existing higher z-indices. */
#space-bg{position:fixed;inset:0;background:url('../textures/stars_milky_way.jpg') center/cover no-repeat;z-index:0;opacity:0;pointer-events:none;transition:opacity .75s cubic-bezier(0.22,1,0.36,1)}
body.pinfo-open #space-bg{opacity:1}
#cv{position:fixed;top:0;left:0;width:100%;height:100%;display:block;z-index:3}
#star-cv{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:4}

/* ── LOADER / SPLASH ── */
#loader-overlay{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,0.3);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:32px 28px;padding-top:calc(48px + var(--st));padding-bottom:calc(40px + var(--sb));transition:opacity 0.6s ease}
.menu-disabled #loader-overlay{display:none !important}
#loader-menu{width:100%;opacity:0;pointer-events:none;transition:opacity 0.5s ease}
#loader-menu.loaded{opacity:1;pointer-events:auto}
#loader-title{position:absolute;top:calc(52px + var(--st));left:0;right:0;text-align:center;pointer-events:none}
#loader-title h2{font-family:'Barlow Condensed',sans-serif;font-size:clamp(64px,13vw,108px);font-weight:200;letter-spacing:20px;text-transform:uppercase;color:var(--wht);line-height:1;margin:0}
#loader-title p{font-family:'Barlow Condensed',sans-serif;font-size:clamp(10px,1.6vw,13px);font-weight:400;letter-spacing:4px;text-transform:uppercase;color:rgba(136,146,164,0.65);margin-top:12px}
#loader-bar-track{width:160px;height:2px;background:rgba(255,255,255,0.10);border-radius:2px;overflow:hidden;margin-bottom:28px;transition:opacity 0.4s ease}
#loader-bar{height:100%;width:0%;background:#E8380D;border-radius:2px;transition:width 0.18s ease}
.itag{background:var(--red);color:var(--wht);font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;letter-spacing:3px;padding:4px 10px;text-transform:uppercase;margin-bottom:14px;display:inline-block}
#loader-menu h1{font-family:'Barlow Condensed',sans-serif;font-size:clamp(72px,22vw,108px);font-weight:900;color:var(--wht);letter-spacing:-1px;line-height:.9;text-transform:uppercase;margin-bottom:4px}
.isub{font-family:'Barlow Condensed',sans-serif;font-size:clamp(16px,5vw,22px);font-weight:600;color:var(--gr3);letter-spacing:2px;text-transform:uppercase;margin-bottom:36px}
.idiv{width:100%;height:1px;background:var(--gr2);margin-bottom:28px}
.lbtn{background:var(--red);color:var(--wht);font-family:'Barlow Condensed',sans-serif;font-size:15px;font-weight:700;letter-spacing:4px;text-transform:uppercase;padding:18px 36px;border:none;cursor:pointer;-webkit-appearance:none;border-radius:0;width:100%;text-align:center;margin-bottom:20px;transition:background .15s}
.lbtn:active{background:var(--red)}
.igrid{display:grid;grid-template-columns:1fr 1fr;gap:0;width:100%}
.ig{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--gr2);font-size:clamp(11px,3.2vw,13px);color:#8892a4;font-weight:500}
.ig:nth-child(odd){border-right:1px solid #2a2e3a;padding-right:12px}
.ig:nth-child(even){padding-left:12px}
.inum{background:var(--red);color:var(--wht);font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:800;width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}

/* ── NEBULA CANVAS ── */
#nebula-cv{position:absolute;inset:0;width:100%!important;height:100%!important;pointer-events:none;z-index:0}
/* Sim nebula — same render, sits over the WebGL canvas with screen-blend so it
   adds atmospheric tint without darkening planets. Opacity tunable via tweaks. */

/* ── MOBILE BLOCK ── */
#mobile-wall{display:none;position:fixed;inset:0;z-index:9999;background:#000;align-items:center;justify-content:center}
html.is-mobile #mobile-wall{display:flex}
html.is-mobile body > *:not(#mobile-wall){display:none !important}
#mobile-wall-inner{text-align:center;padding:32px}
#mobile-title{display:flex;align-items:center;justify-content:center;gap:0;font-family:'Barlow Condensed',sans-serif;font-size:clamp(52px,18vw,96px);font-weight:100;letter-spacing:14px;color:rgba(232,234,240,0.88);line-height:1}
#mobile-divider{width:3px;height:1em;background:rgba(232,234,240,0.75);margin:0 clamp(8px,3vw,18px);flex-shrink:0}
#mobile-msg{font-family:'Barlow Condensed',sans-serif;font-size:clamp(11px,3.5vw,14px);font-weight:400;letter-spacing:4px;text-transform:uppercase;color:rgba(136,146,164,0.6);margin-top:24px}

/* ── DEVICE DETECTION ── */
#marker-cv{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:10;transition:opacity .4s ease}
#planet-labels{position:fixed;inset:0;pointer-events:none;z-index:11}
.plabel{position:absolute;transform:translate(-50%,calc(-100% - 6px));background:rgba(255,255,255,0.10);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:999px;padding:4px 10px;color:#fff;font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:600;letter-spacing:1.5px;white-space:nowrap;transition:opacity .25s}
#flare-cv{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:9;mix-blend-mode:screen}
#yaw-cv{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:1001}
body.is-desktop #tc{display:none !important}
#tc{display:none}
body.is-desktop .jlabel{display:none}
/* Desktop planet info: side panel instead of bottom sheet */
body.is-desktop #pinfo{
  left:auto;right:20px;top:50%;transform:translateY(-50%) translateX(calc(100% + 24px));width:380px;z-index:1004;
  height:fit-content;overflow:hidden;
  background:rgba(255,255,255,0.1);
  backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);
  border:none;
  border-radius:0;
  padding:50px;
  transition:transform .38s cubic-bezier(.32,.72,0,1);
}
body.is-desktop #pinfo.vis{transform:translateY(-50%) translateX(0)}
body.pinfo-open.is-desktop #pinfo.vis{transform:translateY(-50%) translateX(calc(180px - 23vw))}
body.is-desktop .handle{display:none}
/* Desktop mouse-look crosshair */
#crosshair{
  position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);
  pointer-events:none;z-index:12;display:none;
}
body.is-desktop #crosshair{display:none}
#crosshair::before,#crosshair::after{
  content:'';position:absolute;background:rgba(232,56,13,0.7);
}
#crosshair::before{width:16px;height:1px;top:0;left:-8px}
#crosshair::after{width:1px;height:16px;top:-8px;left:0}
/* Desktop: bigger HUD chips */
body.is-desktop .sc{min-width:110px;padding:8px 12px}
body.is-desktop .scv{font-size:clamp(18px,2vw,24px)}
/* Desktop intro: centered layout */
body.is-desktop #intro{align-items:center;justify-content:center;text-align:center}
body.is-desktop #intro h1{font-size:clamp(80px,10vw,140px)}
body.is-desktop .igrid{max-width:580px}
body.is-desktop .lbtn{max-width:320px;font-size:16px;padding:20px 48px}

/* ── HUD ── */
#hud{position:fixed;inset:0;z-index:1002;pointer-events:none;padding-top:calc(10px + var(--st));padding-left:calc(10px + var(--sl));padding-right:calc(10px + var(--sr));transition:opacity .4s ease}
#pos-display{position:fixed;top:50%;right:calc(18px + var(--sr));transform:translateY(-50%);font-family:monospace;font-size:11px;color:rgba(255,255,255,0.55);letter-spacing:0.05em;text-align:right;pointer-events:none;z-index:1003;line-height:1.9}
#sound-widget{position:fixed;top:calc(18px + var(--st));right:calc(16px + var(--sr));pointer-events:all;cursor:pointer;z-index:1002;text-align:right}
#radar-wrap{position:fixed;bottom:20px;left:calc(16px + var(--sl));z-index:1002;transform:translateY(160px);transition:transform .6s .08s cubic-bezier(.32,.72,0,1),opacity .35s ease}
body.bars-vis #radar-wrap{transform:translateY(0)}
body.hud-off #radar-wrap{transform:translateY(160px);opacity:0}
#radar-cv{display:none;pointer-events:none;opacity:0.85}
body.bars-vis.is-desktop #radar-cv{display:block}
#sim-sound-btn{display:none!important}
#sim-sound-btn:hover{border-color:rgba(255,255,255,0.25)}
#sim-sound-btn.muted{color:#e8380d;border-color:rgba(232,56,13,0.35)}
#sl{position:fixed;bottom:20px;right:calc(16px + var(--sr));display:flex;flex-direction:row-reverse;align-items:flex-end;gap:15px;z-index:1002;transform:translateY(160px);transition:transform .6s .08s cubic-bezier(.32,.72,0,1),opacity .35s ease}
#sl .sc{text-align:right;justify-content:flex-end}
#sl .sc-col{align-items:flex-end}
body.bars-vis #sl{transform:translateY(0)}
.sc{background:none;border:none;padding:0 0 8px 4px;width:auto;min-width:0;display:flex;flex-direction:row;align-items:flex-end;gap:10px}
.sc-title{font-family:'Barlow Condensed',sans-serif;font-size:16px;font-weight:300;letter-spacing:2px;color:rgba(255,255,255,0.40);text-transform:uppercase;margin-bottom:4px}
.sc-row{display:flex;flex-direction:row;gap:20px}
.sc-col{display:flex;flex-direction:column;min-width:60px}
.scl{font-family:'Barlow Condensed',sans-serif;font-size:16px;font-weight:300;letter-spacing:1px;color:rgba(255,255,255,0.55);text-transform:uppercase;margin-bottom:2px}
.scv{font-family:'Barlow Condensed',sans-serif;font-size:16px;font-weight:300;color:var(--wht);line-height:1}
.scv small{font-size:16px;color:var(--wht);font-weight:300}
.scb{display:none}.scbf{display:none}
.scb-v{width:3px;flex-shrink:0;background:rgba(255,255,255,0.20);position:relative;border-radius:2px}
.scbf-v{position:absolute;bottom:0;left:0;width:100%;background:rgba(255,255,255,1.0);transition:height .15s;border-radius:2px}
#debug-btn{
  position:fixed;right:calc(10px + var(--sr));bottom:calc(10px + var(--sb));
  z-index:26;pointer-events:all;
  background:rgba(13,15,20,0.85);border:1px solid var(--gr2);
  color:var(--gr3);font-family:'Barlow Condensed',sans-serif;
  font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  padding:6px 12px;cursor:pointer;backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);-webkit-appearance:none;border-radius:0;
  transition:background .15s,color .15s;
}
#debug-btn:hover,#debug-btn:active{background:var(--red);color:var(--wht);border-color:var(--red)}

/* Speed ring */
#spd-ring{position:absolute;top:calc(60px + var(--st));left:50%;transform:translateX(-50%);pointer-events:none}
#spd-ring svg{display:block}

#approach{position:absolute;top:50%;right:20px;left:auto;transform:translateY(-50%);background:none;backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:none;padding:28px 32px;text-align:left;pointer-events:none;opacity:0;transition:opacity .6s;width:min(300px,88vw)}
#ap-label{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:600;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,0.50);margin-bottom:8px}
#apname{font-family:'Barlow Condensed',sans-serif;font-size:clamp(36px,10vw,52px);font-weight:200;color:#ffffff;text-transform:uppercase;letter-spacing:-1px;line-height:.95;margin-bottom:12px}
#ap-msg{font-family:'Barlow',sans-serif;font-size:13px;color:rgba(255,255,255,0.65);line-height:1.65;margin:14px 0 18px;min-height:20px}
#ap-hint{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.75)}
.ap-key{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;letter-spacing:1px;color:#fff;background:rgba(255,255,255,0.18);border:1px solid rgba(255,255,255,0.45);border-bottom:2px solid rgba(255,255,255,0.45);border-radius:4px;padding:1px 7px;display:inline-block;vertical-align:middle;text-transform:none}
.apsub{display:none}

#notif{position:absolute;top:calc(60px + var(--st));left:50%;transform:translateX(-50%);background:var(--red);color:var(--wht);padding:8px 16px;font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;z-index:30;opacity:0;transition:opacity .4s;text-align:center;max-width:88vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ── ARCADE SPEED INDICATOR ── */
#boost-ring{position:absolute;bottom:calc(210px + var(--sb));left:50%;transform:translateX(-50%);pointer-events:none;opacity:0;transition:opacity .3s}

/* ── TOUCH CONTROLS ── */
body:not(.is-desktop) #tc{display:flex}
#tc{position:fixed;bottom:0;left:0;right:0;height:200px;z-index:20;justify-content:space-between;align-items:flex-end;padding:0 14px calc(16px + var(--sb));pointer-events:none}
.jz{width:130px;height:130px;position:relative;pointer-events:all;flex-shrink:0}
.jbase{width:100%;height:100%;border-radius:50%;border:1.5px solid #333;background:rgba(10,10,10,.75);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);position:relative;display:flex;align-items:center;justify-content:center}
.jbase::before,.jbase::after{content:'';position:absolute;background:#333}
.jbase::before{width:1px;height:40%;top:30%;left:50%;transform:translateX(-50%)}
.jbase::after{height:1px;width:40%;left:30%;top:50%;transform:translateY(-50%)}
.jlabel{font-family:'Barlow Condensed',sans-serif;font-size:9px;font-weight:700;letter-spacing:2px;color:var(--gr3);text-transform:uppercase;position:absolute;bottom:-18px;left:50%;transform:translateX(-50%);white-space:nowrap}
.jknob{width:46px;height:46px;border-radius:50%;background:var(--red);border:2px solid var(--wht);position:absolute;pointer-events:none;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 16px rgba(232,56,13,.6);transition:box-shadow .1s}

#acts{display:flex;flex-direction:column;gap:8px;align-items:center;padding-bottom:10px;pointer-events:all}
.ab{border:none;cursor:pointer;-webkit-appearance:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;pointer-events:all;touch-action:none;transition:transform .1s;border-radius:0}
.ab:active{transform:scale(.88)}
#bwarp{width:58px;height:58px;background:var(--blk);border:1.5px solid #444}
#bwarp.on{border-color:var(--wht);background:#1a1a1a;box-shadow:0 0 16px rgba(232,56,13,.4)}
#bmenu{width:58px;height:58px;background:var(--blk);border:1.5px solid #444}
.aico{font-size:20px;line-height:1}
.albl{font-family:'Barlow Condensed',sans-serif;font-size:8px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--wht);opacity:.7}

/* ── PLANET SHEET ── */
#pinfo-overlay{position:fixed;inset:0;z-index:999;display:none;cursor:default}
#pinfo-overlay.vis{display:block}
#pinfo{position:fixed;left:0;right:0;bottom:0;z-index:50;background:rgba(255,255,255,0.1);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:none;transform:translateY(100%);transition:transform .38s cubic-bezier(.32,.72,0,1);max-height:82vh;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0 20px calc(24px + var(--sb));pointer-events:all}
#pinfo.vis{transform:translateY(0)}
.handle{width:40px;height:3px;background:rgba(255,255,255,0.25);margin:12px auto 16px;border-radius:2px}
.shdr{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}
.stg{flex:1}
.ptag{background:rgba(255,255,255,0.15);color:#ffffff;font-family:'Barlow Condensed',sans-serif;font-size:9px;font-weight:700;letter-spacing:3px;padding:3px 8px;text-transform:uppercase;display:inline-block;margin-bottom:8px}
#iname{font-family:'Barlow Condensed',sans-serif;font-size:clamp(36px,10vw,52px);font-weight:200;color:#ffffff;text-transform:uppercase;letter-spacing:-1px;line-height:.95}
#isub{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:300;letter-spacing:2px;color:rgba(255,255,255,0.45);text-transform:uppercase;margin-top:5px}
#cinfo{background:rgba(255,255,255,0.12);border:none;color:#ffffff;width:36px;height:36px;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-appearance:none;border-radius:0;position:absolute;top:12px;right:12px}
#cinfo:active{background:rgba(255,255,255,0.25)}
.sdiv{height:1px;background:rgba(255,255,255,0.12);margin:14px 0}
#idesc{font-size:clamp(13px,3.5vw,15px);line-height:1.7;color:rgba(255,255,255,0.60);margin-bottom:14px;font-weight:300}
.stitle{font-family:'Barlow Condensed',sans-serif;font-size:10px;font-weight:300;letter-spacing:3px;color:rgba(255,255,255,0.40);text-transform:uppercase;margin-bottom:4px}
.srow{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid rgba(255,255,255,0.10);padding:9px 0;font-size:clamp(12px,3.2vw,14px)}
.slbl{color:rgba(255,255,255,0.45);font-weight:300}
.sval{color:rgba(255,255,255,0.85);font-weight:400;font-family:'Barlow Condensed',sans-serif;font-size:clamp(14px,3.8vw,16px);letter-spacing:.5px}
.pgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
.pi{position:relative;overflow:hidden;cursor:pointer}
.pi img{width:100%;height:110px;object-fit:cover;display:block;border-radius:2px;transition:transform .2s}
.pi:hover img{transform:scale(1.04)}
.pcap{position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,.75);font-size:8px;padding:4px 6px;color:var(--wht);font-family:'Barlow Condensed',sans-serif;font-weight:600;letter-spacing:1px;text-transform:uppercase}

/* ── PHOTO LIGHTBOX ── */
#lb-dim{position:fixed;inset:0;z-index:1003;background:transparent;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s,visibility .3s,backdrop-filter .3s,-webkit-backdrop-filter .3s}
#lb-dim.vis{backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
#lb-dim.vis{opacity:1;visibility:visible}
#photo-lightbox{position:fixed;left:0;width:900px;top:50%;transform:translateY(-50%) translateX(200px);z-index:1004;background:#000;overflow:hidden;transition:transform .38s cubic-bezier(.32,.72,0,1),opacity .38s;pointer-events:none;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden}
body.is-desktop #photo-lightbox.vis{transform:translateY(-50%) translateX(0);pointer-events:all;opacity:1;visibility:visible}
#lb-iframe{width:100%;height:100%;border:none;display:block}
#lb-top-mask{position:absolute;top:0;left:0;right:0;height:60px;background:#000;pointer-events:none;z-index:1;display:flex;flex-direction:column;justify-content:center;padding:0 16px;gap:2px}
#lb-vid-title{font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:600;letter-spacing:1px;color:rgba(232,234,240,0.9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#lb-vid-channel{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:400;letter-spacing:1px;color:rgba(136,146,164,0.7);text-decoration:none;pointer-events:all}
#lb-vid-channel:hover{color:rgba(232,234,240,0.9)}

/* ── MENU — FULL SCREEN ── */
#smenu{position:fixed;inset:0;z-index:60;background:#000;display:none;pointer-events:all;overflow:hidden}
#smenu.vis{display:block}
#menucanv{position:absolute;inset:0;width:100% !important;height:100% !important;display:block}
#menu-tilt-shift{position:absolute;inset:0;z-index:1;pointer-events:none}
#menucanv-ui{position:absolute;inset:0;width:100% !important;height:100% !important;display:block;pointer-events:none;z-index:3}
/* Menu button bar — bottom strip aligned to border div */
#menu-cta-group{
  position:absolute;bottom:72px;left:0;right:0;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;
  z-index:5;pointer-events:none;
}
#menu-cta-label{
  display:block;
  pointer-events:none;
  text-align:center;padding:0 24px;
  font-family:'Barlow Condensed',sans-serif;font-size:clamp(11px,1.4vw,16px);
  font-weight:400;letter-spacing:3px;color:rgba(136,146,164,0.65);text-transform:uppercase;
}
#menu-go-earth{
  pointer-events:all;
  background:#000;border:1px solid rgba(120,128,148,0.28);color:var(--wht);
  font-family:'Barlow Condensed',sans-serif;font-size:clamp(14px,3.5vw,18px);
  font-weight:500;letter-spacing:5px;text-transform:uppercase;
  padding:22px 64px;cursor:pointer;-webkit-appearance:none;border-radius:0;white-space:nowrap;
  transition:border-color .18s,opacity .18s;
}
#menu-go-earth:hover,#menu-go-earth:active{border-color:rgba(180,188,210,0.55);background:#000;}

/* FX */
#warpfx{position:fixed;inset:0;pointer-events:none;z-index:15;opacity:0;background:radial-gradient(ellipse at center,transparent 20%,rgba(232,56,13,.06) 60%,rgba(232,56,13,.12) 100%);transition:opacity .2s}
/* ── LOADER ── */
#loader-overlay{position:fixed;inset:0;z-index:2000;background:#050505;display:flex;align-items:center;justify-content:center;pointer-events:all;transition:opacity 0.6s ease}
.menu-disabled #loader-overlay{display:none !important}
#loader-pct{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-bottom:14vh;padding-left:0.08em;overflow:hidden;font-family:'Barlow Condensed',sans-serif;font-weight:300;font-size:130vh;line-height:1;color:#0c0c10;user-select:none;pointer-events:none;z-index:0;letter-spacing:0.08em;transition:opacity 0.5s ease}
#loader-pct.done{opacity:0}
#loader-box{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;width:220px;height:240px;z-index:1}
#loader-cursor{display:block;transition:opacity 0.4s ease;margin-bottom:20px}
@keyframes _border-sweep{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0% 0 0)}}
#loader-start-btn{background:#000;border:1px solid rgba(120,128,148,0.28);color:var(--wht);font-family:'Barlow Condensed',sans-serif;font-size:clamp(14px,3.5vw,18px);font-weight:500;letter-spacing:5px;text-transform:uppercase;padding:22px 64px;cursor:pointer;-webkit-appearance:none;border-radius:0;opacity:0;pointer-events:none;transition:opacity 0.5s ease;position:absolute;white-space:nowrap}
#loader-start-btn::before{content:'';position:absolute;inset:0;border:1px solid rgba(210,225,255,0.85);clip-path:inset(0 100% 0 0);pointer-events:none}
#loader-start-btn.ready{opacity:1;pointer-events:auto}
#loader-start-btn:hover,#loader-start-btn:active{border-color:rgba(180,188,210,.45)}
#loader-start-btn:hover::before,#loader-start-btn:active::before{animation:_border-sweep .25s ease-out forwards}

#speedlines{position:fixed;inset:0;pointer-events:none;z-index:14;opacity:0;transition:opacity .3s;background:repeating-linear-gradient(0deg,transparent,transparent 98px,rgba(255,255,255,.03) 100px)}
#speedlines-cv{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:14}

#bar-bot{position:fixed;left:0;width:100%;z-index:1000;pointer-events:none;background:rgba(255,255,255,0.03);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:transform .6s cubic-bezier(.32,.72,0,1),opacity .4s ease;bottom:0;height:100px;-webkit-mask-image:linear-gradient(to top,black 40%,transparent 100%);mask-image:linear-gradient(to top,black 40%,transparent 100%);transform:translateY(100%)}
body.bars-vis #bar-bot{transform:translateY(0)}


body.hud-off #hud{opacity:0;pointer-events:none}
body.hud-off #marker-cv{opacity:0;pointer-events:none}
body.hud-off #bar-bot{transform:translateY(100%);opacity:0}
body.hud-off #sl{transform:translateY(160px);opacity:0}

#letterbox-top,#letterbox-bot{position:fixed;left:0;width:100%;z-index:2;pointer-events:none;height:0;transition:height .75s cubic-bezier(0.22,1,0.36,1)}
#letterbox-top{top:0;background:#050505}
#letterbox-bot{bottom:0;background:linear-gradient(to bottom,#050505 0%,#0b0b0b 100%)}


body.pinfo-open #hud{opacity:0;pointer-events:none;transition:opacity .3s ease}
body.pinfo-open #bar-bot{opacity:0;pointer-events:none;transition:opacity .3s ease}
body.pinfo-open #marker-cv{opacity:0;pointer-events:none;transition:opacity .3s ease}
body.pinfo-open #planet-labels{opacity:0;pointer-events:none;transition:opacity .3s ease}
/* Fade menu text when ship select opens over the menu */
#menu-cta-group{transition:opacity .35s ease}
#menucanv-ui{transition:opacity .35s ease}
#planet-labels{transition:opacity .35s ease}
body.ship-sel-menu-open #menu-cta-group{opacity:0;pointer-events:none}
body.ship-sel-menu-open #menucanv-ui{opacity:0}
body.ship-sel-menu-open #planet-labels{opacity:0;pointer-events:none}
body.pinfo-open #yaw-cv{opacity:0;pointer-events:none;transition:opacity .3s ease}
body.pinfo-open #crosshair{opacity:0;pointer-events:none;transition:opacity .3s ease}
body.pinfo-open #warpfx{opacity:0;pointer-events:none;transition:opacity .3s ease}
body.pinfo-open #speedlines{opacity:0;pointer-events:none;transition:opacity .3s ease}
body.pinfo-open #speedlines-cv{opacity:0;pointer-events:none;transition:opacity .3s ease}
body.pinfo-open #tc{opacity:0;pointer-events:none;transition:opacity .3s ease}

.ch-key-lg{height:28px;font-size:15px;min-width:32px;padding:0 8px;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.14)}
.ch-lbl{font-family:'Barlow Condensed',sans-serif;font-size:7px;font-weight:300;letter-spacing:1.2px;color:rgba(255,255,255,0.45);text-transform:uppercase;white-space:nowrap}
.ch-divider{width:100%;height:1px;background:rgba(255,255,255,0.08);margin:2px 0}
.ch-jump-rows{display:flex;flex-direction:column;gap:4px;align-items:flex-end}
#jump-hint{display:none;position:fixed;left:20px;top:50%;transform:translateY(-50%) translateX(calc(-100% - 24px));flex-direction:column;gap:10px;pointer-events:none;z-index:1002;opacity:0;transition:transform .6s cubic-bezier(.32,.72,0,1),opacity .4s ease}
#jump-hint .ch-key-lg{border:none;background:rgba(0,0,0,0.3);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
body.is-desktop #jump-hint{display:flex}
body.bars-vis #jump-hint{opacity:1;transform:translateY(-50%) translateX(0)}
body.hud-off #jump-hint{opacity:0!important;transform:translateY(-50%) translateX(calc(-100% - 24px))}
.ch-jump-row{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px}
.ch-jump-lbl{font-family:'Barlow Condensed',sans-serif;font-size:9px;font-weight:300;letter-spacing:0.8px;color:rgba(255,255,255,0.5);text-transform:uppercase;white-space:nowrap;text-align:right}
.ch-wasd{display:flex;flex-direction:column;align-items:center;gap:2px}
.ch-wasd-top{display:flex;justify-content:center}
.ch-wasd-bot{display:flex;gap:3px}

#pinfo::-webkit-scrollbar{width:3px}
#pinfo::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.20)}#pinfo::-webkit-scrollbar-track{background:rgba(255,255,255,0.05)}

/* ── TWEAKS PANEL ── */
#tweaks-btn{
  position:fixed;top:calc(18px + var(--st));left:calc(16px + var(--sl));
  z-index:1010;pointer-events:all;cursor:pointer;
  background:rgba(0,0,0,0.1);backdrop-filter:blur(23px);-webkit-backdrop-filter:blur(23px);
  border:1px solid rgba(120,128,148,0.28);color:var(--wht);
  opacity:0.3;
  width:44px;height:44px;display:flex;align-items:center;justify-content:center;
  border-radius:0;-webkit-appearance:none;transition:border-color .18s,opacity .18s;
}
#tweaks-btn:hover{border-color:rgba(180,188,210,0.55);opacity:0.8}
#tweaks-btn.active{opacity:0;pointer-events:none}
#tweaks-drawer{
  position:fixed;top:0;left:0;height:100%;width:390px;
  z-index:1009;pointer-events:all;
  background:rgba(0,0,0,0.7);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-right:1px solid rgba(255,255,255,0.06);
  transform:translateX(-100%);transition:transform .38s ease-out;
  display:flex;flex-direction:column;
}
#tweaks-drawer.open{transform:translateX(0)}
#tweaks-header{
  flex-shrink:0;padding:16px 16px 14px;
  border-bottom:1px solid rgba(255,255,255,0.06);
  font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:600;
  letter-spacing:4px;color:rgba(136,146,164,0.5);text-transform:uppercase;
  display:flex;align-items:center;justify-content:space-between;
}
#tweaks-body{flex:1;overflow-y:auto;padding:8px 10px 40px;}
#tweaks-body::-webkit-scrollbar{width:3px}
#tweaks-body::-webkit-scrollbar-thumb{background:var(--gr2)}
.twk-section{
  background:none;
  border:none;border-bottom:1px solid #161616;border-radius:0;
  padding:12px 14px 10px;
  margin-bottom:0;
}
body.is-desktop #tweaks-drawer,body.is-desktop #tweaks-drawer *{cursor:default !important}
body.is-desktop #tweaks-drawer button,body.is-desktop #tweaks-drawer input[type=range],body.is-desktop #tweaks-drawer select{cursor:pointer !important}
.twk-controls-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 14px}
.twk-section-titlerow{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;cursor:pointer;user-select:none;-webkit-user-select:none}
.twk-section.collapsed .twk-section-titlerow{margin-bottom:0}
.twk-section.collapsed .twk-controls-grid{display:none}
.twk-section.collapsed .twk-copy-btn{display:none}
.twk-section.collapsed > .twk-group-body{display:none}
.twk-group-body{padding:4px 0 2px 0}
.twk-group-body .twk-section{margin-bottom:4px}
.twk-section--sm .twk-section-title{font-size:12px}
.twk-chevron{flex-shrink:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.4);margin-right:8px;transition:transform .2s}
.twk-section.collapsed .twk-chevron{transform:rotate(-90deg)}
.twk-section-title{
  font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:600;
  letter-spacing:3px;color:#ffffff;text-transform:uppercase;
  margin-bottom:0;flex:1;
}
.twk-copy-btn{
  flex-shrink:0;background:transparent;border:1px solid rgba(255,255,255,0.1);
  color:rgba(136,146,164,0.5);cursor:pointer;width:22px;height:22px;
  display:flex;align-items:center;justify-content:center;border-radius:0;
  -webkit-appearance:none;transition:border-color .15s,color .15s;padding:0;
}
.twk-copy-btn:hover{border-color:rgba(255,255,255,0.3);color:rgba(232,234,240,0.8)}
.twk-copy-btn.copied{border-color:rgba(0,210,140,0.6);color:rgba(0,210,140,0.9)}
.twk-live-dot{
  font-size:7px;margin-right:4px;vertical-align:middle;
  color:rgba(0,210,140,0.75);text-shadow:0 0 6px rgba(0,210,140,0.6);
}
.twk-live-off{color:rgba(136,146,164,0.3);text-shadow:none}
.twk-note{
  display:block;font-size:11px;letter-spacing:1px;
  color:rgba(232,130,13,0.6);margin-top:2px;font-weight:400;
}
.twk-subheader{grid-column:span 2;font-family:'Barlow Condensed',sans-serif;font-size:10px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:rgba(136,146,164,0.45);border-top:1px solid rgba(255,255,255,0.06);margin-top:8px;padding-top:8px;margin-bottom:0}
.twk-subheader:first-child{border-top:none;margin-top:0;padding-top:0}
.twk-row{margin-bottom:12px}
.twk-row-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:5px}
.twk-label{
  font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:400;
  letter-spacing:1.5px;color:rgba(232,234,240,0.65);text-transform:uppercase;
}
.twk-val{
  font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:500;
  letter-spacing:1px;color:rgba(232,234,240,0.9);font-variant-numeric:tabular-nums;
}
.twk-slider{
  -webkit-appearance:none;appearance:none;
  width:100%;height:2px;background:rgba(255,255,255,0.12);border-radius:1px;outline:none;cursor:pointer;
}
.twk-slider::-webkit-slider-thumb{
  -webkit-appearance:none;width:12px;height:12px;border-radius:50%;
  background:var(--wht);cursor:pointer;border:none;
}
.twk-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--wht);cursor:pointer;border:none}
.twk-row-toggle{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;grid-column:span 2}
.twk-switch{position:relative;display:inline-block;width:36px;height:20px;flex-shrink:0}
.twk-switch input{opacity:0;width:0;height:0;position:absolute}
.twk-switch-track{
  position:absolute;inset:0;border-radius:10px;
  background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.15);
  cursor:pointer;transition:background .18s,border-color .18s;
}
.twk-switch-track::after{
  content:'';position:absolute;left:3px;top:50%;transform:translateY(-50%);
  width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,0.4);transition:left .18s,background .18s;
}
.twk-switch input:checked + .twk-switch-track{background:rgba(255,255,255,0.18);border-color:rgba(255,255,255,0.45)}
.twk-switch input:checked + .twk-switch-track::after{left:calc(100% - 15px);background:rgba(255,255,255,0.95)}
#tweaks-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
#tweaks-reset-btn{
  padding:6px 14px;background:transparent;
  border:1px solid rgba(255,255,255,0.12);color:rgba(136,146,164,0.55);
  font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:600;
  letter-spacing:2.5px;text-transform:uppercase;cursor:pointer;border-radius:0;-webkit-appearance:none;
  transition:border-color .18s,color .18s;
}
#tweaks-reset-btn:hover{border-color:rgba(255,255,255,0.3);color:var(--wht)}
#tweaks-close-btn{
  padding:6px 14px;background:transparent;
  border:1px solid rgba(255,255,255,0.12);color:rgba(136,146,164,0.55);
  font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:600;
  letter-spacing:2.5px;text-transform:uppercase;cursor:pointer;border-radius:0;-webkit-appearance:none;
  transition:border-color .18s,color .18s;
}
#tweaks-close-btn:hover{border-color:rgba(255,255,255,0.3);color:var(--wht)}
#tweaks-reports-btn{
  padding:6px 14px;background:transparent;
  border:1px solid rgba(232,56,13,0.3);color:rgba(232,56,13,0.7);
  font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;
  letter-spacing:2.5px;text-transform:uppercase;cursor:pointer;
  text-decoration:none;display:inline-flex;align-items:center;
  transition:border-color .18s,color .18s,background .18s;
}
#tweaks-reports-btn:hover{border-color:var(--red);color:var(--red);background:rgba(232,56,13,0.06)}
#twk-lod-block{padding:10px 14px 12px;border-bottom:1px solid #161616}
.twk-lod-title{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:600;letter-spacing:3px;color:rgba(136,146,164,0.45);text-transform:uppercase;margin-bottom:8px}
.twk-lod-row{display:flex;align-items:center;gap:8px;margin-bottom:5px}
.twk-lod-name{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:400;letter-spacing:1px;text-transform:uppercase;color:rgba(232,234,240,0.5);width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.twk-lod-pips{display:flex;gap:3px;flex-shrink:0}
.twk-lod-pip{width:7px;height:7px;border-radius:1px;background:rgba(255,255,255,0.1)}
.twk-lod-pip.p0{background:#e8380d}.twk-lod-pip.p1{background:#f5a623}.twk-lod-pip.p2{background:#4cde7e}.twk-lod-pip.pend{background:rgba(255,255,255,0.4)}
.twk-lod-res{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:400;color:rgba(255,255,255,0.3);letter-spacing:.5px;min-width:48px}
.twk-lod-res.full{color:#4cde7e}

/* ── BELT MINI-GAME ── */
#bg-alert{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:80px 8%;z-index:50;pointer-events:none;text-align:center}
#bg-alert.bg-alert-anim{animation:bgAlertFade .3s ease both}
@keyframes bgAlertFade{from{opacity:0}to{opacity:1}}
/* top block: attention bar + title */
.bg-alert-top{width:clamp(480px,58vw,700px);margin:0 auto;transform:scale(0.8);transform-origin:top center;position:relative;z-index:1}
.bg-alert-attn{background:#be1414;display:flex;align-items:stretch;height:62px;animation:bgAttnGlow 1.2s ease-in-out infinite}
@keyframes bgAttnGlow{0%,100%{box-shadow:0 0 18px rgba(210,20,20,0.25),0 0 45px rgba(200,15,15,0.1)}50%{box-shadow:0 0 55px rgba(210,20,20,0.85),0 0 110px rgba(200,15,15,0.5)}}
.bg-attn-chevs{display:flex;align-items:stretch;flex-shrink:0}
.bg-attn-chev{width:28px;background:rgba(55,0,0,0.72);flex-shrink:0}
.bg-attn-chevs-l .bg-attn-chev{clip-path:polygon(0% 0%,60% 0%,100% 50%,60% 100%,0% 100%,40% 50%);margin-right:-8px}
.bg-attn-chevs-r .bg-attn-chev{clip-path:polygon(40% 0%,100% 0%,60% 50%,100% 100%,40% 100%,0% 50%);margin-left:-8px}
.bg-attn-chevs-l .bg-attn-chev:nth-child(1){opacity:.2}.bg-attn-chevs-l .bg-attn-chev:nth-child(2){opacity:.38}.bg-attn-chevs-l .bg-attn-chev:nth-child(3){opacity:.55}.bg-attn-chevs-l .bg-attn-chev:nth-child(4){opacity:.72}.bg-attn-chevs-l .bg-attn-chev:nth-child(5){opacity:.88}.bg-attn-chevs-l .bg-attn-chev:nth-child(6){opacity:1}
.bg-attn-chevs-r .bg-attn-chev:nth-child(1){opacity:1}.bg-attn-chevs-r .bg-attn-chev:nth-child(2){opacity:.88}.bg-attn-chevs-r .bg-attn-chev:nth-child(3){opacity:.72}.bg-attn-chevs-r .bg-attn-chev:nth-child(4){opacity:.55}.bg-attn-chevs-r .bg-attn-chev:nth-child(5){opacity:.38}.bg-attn-chevs-r .bg-attn-chev:nth-child(6){opacity:.2}
.bg-attn-label{flex:1;display:flex;align-items:center;justify-content:center;font-family:'Barlow Condensed',sans-serif;font-size:clamp(22px,2.8vw,30px);font-weight:900;letter-spacing:10px;color:#fff;text-transform:uppercase;text-shadow:0 1px 10px rgba(0,0,0,0.5)}
.bg-alert-title{font-family:'Barlow Condensed',sans-serif;font-size:clamp(36px,5.5vw,56px);font-weight:900;letter-spacing:3px;color:#fff;text-transform:uppercase;padding:16px 0 0;line-height:1}
/* bottom block: hazard box */
.bg-alert-bottom{width:min(59vw,670px);margin:0 auto;position:relative;z-index:1}
.bg-alert-hazard{border:3px solid #d81212;position:relative}
.bg-alert-hazard::before{content:'';position:absolute;inset:5px;border:8px solid #000;pointer-events:none;z-index:1}
.bg-alert-hazard-inner{background:repeating-linear-gradient(-45deg,rgba(150,10,10,0.82) 0px,rgba(150,10,10,0.82) 20px,rgba(55,3,3,0.82) 20px,rgba(55,3,3,0.82) 40px);padding:22px 36px 26px;position:relative}
.bg-alert-body{font-family:'Barlow Condensed',sans-serif;font-size:clamp(13px,1.7vw,16px);color:rgba(220,208,208,0.70);line-height:1.65;letter-spacing:.5px;margin-bottom:14px}
.bg-alert-enter{font-family:'Barlow Condensed',sans-serif;font-size:clamp(14px,1.8vw,18px);font-weight:800;letter-spacing:3px;color:#e81515;text-transform:uppercase}
.bg-alert-kbd{display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.1);border:1.5px solid rgba(255,255,255,0.55);border-bottom:3px solid rgba(255,255,255,0.55);border-radius:4px;padding:0 7px 2px;font-family:'Barlow Condensed',sans-serif;font-size:1em;font-weight:900;color:#fff;letter-spacing:1px;vertical-align:middle;margin:0 3px;animation:bgEnterPulse 1.2s ease-in-out infinite}
@keyframes bgEnterPulse{0%,100%{opacity:.45}50%{opacity:1}}
.bg-vignette{position:absolute;inset:0;box-shadow:inset 0 0 80px rgba(160,8,8,0.9);pointer-events:none;animation:bgVignettePulse 1.2s ease-in-out infinite;z-index:0}
@keyframes bgVignettePulse{0%,100%{opacity:.35}50%{opacity:1}}

#bg-countdown{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:'Barlow Condensed',sans-serif;font-size:clamp(100px,18vw,180px);font-weight:900;color:var(--wht);letter-spacing:-4px;line-height:1;pointer-events:none;z-index:50;text-shadow:0 0 60px rgba(255,255,255,0.25);animation:bgCdPop .25s cubic-bezier(.22,.68,0,1.3) both}
#bg-countdown.bg-cd-go{color:var(--red);text-shadow:0 0 80px rgba(232,56,13,0.5)}
@keyframes bgCdPop{from{transform:translate(-50%,-50%) scale(1.35);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}

#bg-topbar{position:absolute;top:0;left:0;right:0;padding:10px 20px 8px;background:linear-gradient(to bottom,rgba(0,0,0,0.55) 0%,transparent 100%);pointer-events:none;z-index:40}
#bg-bar-labels{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:5px}
#bg-bar-labels span{font-family:'Barlow Condensed',sans-serif;font-size:10px;font-weight:700;letter-spacing:3px;color:rgba(232,234,240,0.5);text-transform:uppercase}
#bg-bar-pct{color:var(--wht) !important;font-size:11px !important}
#bg-bar-track{height:3px;background:rgba(255,255,255,0.12);border-radius:2px;overflow:hidden;position:relative}
#bg-bar-fill{height:100%;width:0%;background:var(--red);border-radius:2px;transition:width .15s linear;box-shadow:0 0 6px rgba(232,56,13,0.6)}
#bg-phase-lbl{font-family:'Barlow Condensed',sans-serif;font-size:9px;font-weight:700;letter-spacing:3px;color:rgba(232,56,13,0.65);text-transform:uppercase;text-align:center;margin-top:5px}

#bg-result{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;z-index:50;pointer-events:none;text-align:center;animation:bgResFade .3s ease both}
@keyframes bgResFade{from{opacity:0}to{opacity:1}}
.bg-res-attn{background:#0c7a32;display:flex;align-items:stretch;height:62px;width:min(59vw,670px);box-shadow:0 0 40px rgba(20,200,80,0.55),0 0 80px rgba(15,180,65,0.25)}
.bg-res-chevs{display:flex;align-items:stretch;flex-shrink:0}
.bg-res-chev{width:28px;background:rgba(0,35,12,0.72);flex-shrink:0}
.bg-res-chevs-l .bg-res-chev{clip-path:polygon(0% 0%,60% 0%,100% 50%,60% 100%,0% 100%,40% 50%);margin-right:-8px}
.bg-res-chevs-r .bg-res-chev{clip-path:polygon(40% 0%,100% 0%,60% 50%,100% 100%,40% 100%,0% 50%);margin-left:-8px}
.bg-res-chevs-l .bg-res-chev:nth-child(1){opacity:.2}.bg-res-chevs-l .bg-res-chev:nth-child(2){opacity:.38}.bg-res-chevs-l .bg-res-chev:nth-child(3){opacity:.55}.bg-res-chevs-l .bg-res-chev:nth-child(4){opacity:.72}.bg-res-chevs-l .bg-res-chev:nth-child(5){opacity:.88}.bg-res-chevs-l .bg-res-chev:nth-child(6){opacity:1}
.bg-res-chevs-r .bg-res-chev:nth-child(1){opacity:1}.bg-res-chevs-r .bg-res-chev:nth-child(2){opacity:.88}.bg-res-chevs-r .bg-res-chev:nth-child(3){opacity:.72}.bg-res-chevs-r .bg-res-chev:nth-child(4){opacity:.55}.bg-res-chevs-r .bg-res-chev:nth-child(5){opacity:.38}.bg-res-chevs-r .bg-res-chev:nth-child(6){opacity:.2}
.bg-res-attn-label{font-family:'Barlow Condensed',sans-serif;font-size:clamp(20px,2.4vw,26px);font-weight:900;letter-spacing:9px;color:#fff;text-transform:uppercase;text-shadow:0 1px 10px rgba(0,0,0,0.5);margin-bottom:12px}
.bg-res-rating{font-family:'Barlow Condensed',sans-serif;font-size:clamp(60px,9vw,100px);font-weight:200;line-height:1;color:#4cde7e;letter-spacing:-2px;text-shadow:0 0 40px rgba(76,222,126,0.4)}
/* bottom block */
.bg-res-bottom{width:min(59vw,670px);position:relative;z-index:1}
.bg-res-hazard{border:3px solid #0d9e3f;position:relative}
.bg-res-hazard::before{content:'';position:absolute;inset:5px;border:8px solid #000;pointer-events:none;z-index:1}
.bg-res-hazard-inner{background:repeating-linear-gradient(-45deg,rgba(10,110,40,0.82) 0px,rgba(10,110,40,0.82) 20px,rgba(3,45,15,0.82) 20px,rgba(3,45,15,0.82) 40px);padding:22px 36px 26px;position:relative}
.bg-res-stats{font-family:'Barlow Condensed',sans-serif;font-size:clamp(13px,1.7vw,16px);color:rgba(200,230,210,0.70);line-height:1.65;letter-spacing:.5px;margin-bottom:10px}
.bg-res-reward{font-family:'Barlow Condensed',sans-serif;font-size:clamp(14px,1.8vw,18px);font-weight:800;letter-spacing:3px;color:#4cde7e;text-transform:uppercase}

#bg-hitflash{position:fixed;inset:0;pointer-events:none;z-index:45;box-shadow:inset 0 0 120px 40px rgba(232,56,13,0.55);display:none}

/* Run HUD — gate counter (top-center) + hull bar (bottom-center) */
#bg-run-hud{position:absolute;inset:0;pointer-events:none;z-index:40;display:none;flex-direction:column;justify-content:space-between;align-items:center;padding:18px 24px calc(28px + var(--sb))}
#bg-gate-ctr{text-align:center;line-height:1}
#bg-gate-nums{font-family:'Barlow Condensed',sans-serif;font-weight:900;line-height:1;color:var(--wht)}
#bg-gate-num{font-size:clamp(42px,7vw,64px);letter-spacing:-2px;display:inline-block}
#bg-gate-denom{font-size:clamp(20px,3.5vw,30px);letter-spacing:-1px;color:rgba(232,234,240,0.40)}
#bg-gate-lbl{font-family:'Barlow Condensed',sans-serif;font-size:9px;font-weight:700;letter-spacing:4px;color:rgba(232,234,240,0.35);text-transform:uppercase;margin-top:2px}
#bg-gate-num.gate-pop{animation:gateNumPop .35s cubic-bezier(.22,.68,0,1.3) both}
@keyframes gateNumPop{from{transform:scale(1.7);color:#00ddff}to{transform:scale(1);color:var(--wht)}}

#bg-hull-wrap{width:clamp(240px,38vw,440px);display:flex;flex-direction:column;gap:5px}
#bg-hull-lbl{font-family:'Barlow Condensed',sans-serif;font-size:9px;font-weight:700;letter-spacing:4px;color:rgba(232,234,240,0.40);text-transform:uppercase;text-align:center}
#bg-hull-track{height:5px;background:rgba(255,255,255,0.12);border-radius:3px;overflow:hidden}
#bg-hull-fill{height:100%;width:100%;background:#4cde7e;border-radius:3px;transition:width .18s ease,background .4s ease}
#bg-hull-pct{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;letter-spacing:2px;color:rgba(232,234,240,0.50);text-align:center}

/* Warp fuel bar */
#bg-warp-wrap{display:flex;align-items:center;gap:8px;margin-top:4px}
#bg-warp-lbl{font-size:9px;letter-spacing:0.12em;color:rgba(255,255,255,0.55);width:28px;text-align:right;flex-shrink:0}
#bg-warp-track{width:100px;height:4px;background:rgba(255,255,255,0.12);border-radius:2px;overflow:hidden}
#bg-warp-fill{height:100%;width:100%;border-radius:2px;transition:background 0.3s}

/* Course name shown during countdown */
#bg-course-name{position:fixed;top:calc(50% - 100px);left:50%;transform:translateX(-50%);text-align:center;pointer-events:none;z-index:120}
.bg-cn-name{font-size:13px;letter-spacing:0.25em;color:rgba(255,255,255,0.9);font-weight:600}
.bg-cn-sub{font-size:10px;letter-spacing:0.15em;color:rgba(255,255,255,0.45);margin-top:3px}

/* ── SETTINGS BUTTON ── */
#settings-btn{position:fixed;top:calc(18px + var(--st));left:calc(16px + var(--sl));z-index:1010;pointer-events:all;cursor:pointer;display:flex;align-items:center;gap:7px;background:rgba(255,255,255,0.1);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:none;color:var(--wht);height:44px;padding:0 14px;border-radius:0;-webkit-appearance:none;transition:opacity .18s}
#settings-btn:hover{opacity:0.85}
body.hud-off #settings-btn{opacity:0;pointer-events:none}
body.smenu-open #settings-btn{opacity:0;pointer-events:none}
/* ── SHIP SELECT BUTTON ── */
#ship-select-btn{position:fixed;top:calc(18px + var(--st));right:calc(16px + var(--sr));z-index:1010;pointer-events:all;cursor:pointer;display:flex;align-items:center;gap:7px;background:rgba(255,255,255,0.1);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:none;color:var(--wht);height:44px;padding:0 14px;border-radius:0;-webkit-appearance:none;transition:opacity .18s}
#ship-select-btn:hover{opacity:0.85}
body.hud-off #ship-select-btn{opacity:0;pointer-events:none}
body.smenu-open #ship-select-btn{opacity:0;pointer-events:none}
.ship-btn-lbl{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:rgba(232,234,240,0.75)}
.ship-btn-key{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:1.5px solid rgba(232,234,240,0.55);border-radius:3px;font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;color:rgba(232,234,240,0.85);line-height:1;box-shadow:0 1px 0 rgba(232,234,240,0.25)}
/* ── SHIP SELECT PANEL ── */
#ship-sel-overlay{position:fixed;inset:0;z-index:1020;background:rgba(0,0,0,0.5);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);opacity:0;pointer-events:none;transition:opacity .3s ease}
#ship-sel-overlay.vis{opacity:1;pointer-events:all}
#ship-sel-card{position:fixed;inset:0;width:100%;overflow-y:auto;z-index:1021;background:none;border:none;border-radius:0;padding:0;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s cubic-bezier(.32,.72,0,1);transform:scale(0.97);display:flex;flex-direction:column}
#ship-sel-card.vis{opacity:1;pointer-events:all;transform:scale(1)}
#ship-sel-inner{margin:auto;width:100%;padding:52px 8vw;box-sizing:border-box}
#ship-sel-card::-webkit-scrollbar{width:3px}
#ship-sel-card::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.20)}
#ship-sel-header{margin-bottom:32px;text-align:center}
#ship-sel-close{position:absolute;top:20px;right:20px;display:flex;align-items:center;gap:7px;background:rgba(255,255,255,0.1);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:none;color:var(--wht);height:44px;padding:0 14px;cursor:pointer;transition:opacity .18s}
#ship-sel-close:hover{opacity:0.85}
#ship-sel-title{font-family:'Barlow Condensed',sans-serif;font-size:clamp(22px,3.85vw,39px);font-weight:200;color:#fff;text-transform:uppercase;letter-spacing:-1px;line-height:.9;margin-top:4px}
#ship-sel-sub{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:300;letter-spacing:2px;color:rgba(255,255,255,0.45);text-transform:uppercase;margin-top:8px}
#ship-sel-grid{display:flex;flex-direction:row;gap:40px;width:100%;justify-content:center}
/* ── SHIP ITEM CARD ── */
.ship-item{display:flex;flex-direction:column;cursor:pointer;flex:1;min-width:0;width:0;max-width:360px;border:1px solid rgba(255,255,255,0.05);outline:none;padding:40px;background:rgba(255,255,255,0.01);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:box-shadow .2s ease}
.ship-item:hover,.ship-item:focus,.ship-item:focus-visible{box-shadow:none;outline:none;border:1px solid rgba(255,255,255,0.05)}
.ship-item.active{cursor:default;border:2px solid rgba(255,255,255,1)}
.ship-item.gp-focus{border:2px solid rgba(255,220,0,0.8);box-shadow:0 0 0 1px rgba(255,220,0,0.3)}
.ship-item-preview-wrap{position:relative;width:100%;height:240px;overflow:hidden;user-select:none;-webkit-user-select:none;margin-bottom:16px}
.ship-item-details{display:flex;flex-direction:column;flex:1;min-width:0}
.ship-item-preview-wrap:active{cursor:grabbing}
.ship-item-preview-wrap canvas{display:block;width:100% !important;height:100% !important;transition:transform .35s ease}
.ship-item:hover .ship-item-preview-wrap canvas{transform:none}
.ship-preview-progress{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:1px;width:0%;max-width:50%;background:rgba(255,255,255,0.85);transition:width .35s ease;pointer-events:none;z-index:2}
.ship-item-tag-row{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.ship-item-name-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.ship-item-badge{font-family:'Barlow Condensed',sans-serif;font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.9);background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.3);padding:2px 7px;white-space:nowrap;flex-shrink:0}
.ship-item-name{font-family:'Barlow Condensed',sans-serif;font-size:clamp(32px,4vw,52px);font-weight:200;letter-spacing:-1px;color:#fff;text-transform:uppercase;line-height:.95}
.ship-item-desc{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:400;letter-spacing:1px;color:rgba(255,255,255,0.5);text-transform:uppercase;margin-bottom:14px}
.ship-thr-swatches{display:flex;gap:7px;align-items:center}
.ship-thr-swatch{width:10px;height:10px;border-radius:50%}
.sett-esc{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;letter-spacing:1.5px;color:rgba(232,234,240,0.55);background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);border-radius:3px;padding:3px 9px;text-transform:uppercase}
.sett-lbl{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:rgba(232,234,240,0.75)}

/* ── SETTINGS OVERLAY & CARD ── */
#sett-overlay{position:fixed;inset:0;z-index:1020;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .3s ease}
#sett-overlay.vis{opacity:1;pointer-events:all}
#sett-card{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%) scale(0.97);width:min(500px,90vw);max-height:min(88vh,720px);overflow-y:auto;z-index:1021;background:rgba(255,255,255,0.1);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:none;border-radius:0;padding:40px 50px;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s cubic-bezier(.32,.72,0,1)}
#sett-card.vis{opacity:1;pointer-events:all;transform:translate(-50%,-50%) scale(1)}
#sett-card::-webkit-scrollbar{width:3px}
#sett-card::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.20)}
#sett-title{font-family:'Barlow Condensed',sans-serif;font-size:clamp(36px,8vw,52px);font-weight:200;color:#fff;text-transform:uppercase;letter-spacing:-1px;line-height:.95}
#sett-sub{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:300;letter-spacing:2px;color:rgba(255,255,255,0.45);text-transform:uppercase;margin-top:5px}
.sett-vol-row{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,0.10)}
.sett-slider-group{display:flex;align-items:center;gap:10px;flex:1;justify-content:flex-end}
.sett-slider{-webkit-appearance:none;appearance:none;width:120px;height:2px;background:rgba(255,255,255,0.12);border-radius:1px;outline:none;cursor:pointer}
.sett-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:var(--wht);cursor:pointer;border:none}
.sett-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--wht);cursor:pointer;border:none}
.sett-slider-val{font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:400;color:rgba(232,234,240,0.75);min-width:28px;text-align:right;letter-spacing:.5px}
.sett-toggle-row{display:flex;align-items:center;gap:10px;padding:12px 0}
.sett-tog-lbl{font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:400;letter-spacing:1px;color:rgba(232,234,240,0.35);text-transform:uppercase;transition:color .18s}
.sett-tog-lbl.active{color:rgba(232,234,240,0.95)}
.ch-key{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 7px;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.28);border-bottom:2px solid rgba(255,255,255,0.18);border-radius:4px;font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:600;letter-spacing:0.5px;color:rgba(255,255,255,0.9);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1)}
.ch-key-wide{min-width:58px;font-size:11px;letter-spacing:1px}
.sett-keys-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px 24px;padding:4px 0 16px}
.sett-key-row{display:flex;align-items:center;gap:8px}
.sett-key-lbl{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:400;letter-spacing:.5px;color:rgba(255,255,255,0.55)}
.sett-wasd-row{grid-column:span 2;display:flex;justify-content:space-evenly;align-items:center;padding:4px 0 8px}
.sett-wasd-left{display:flex;align-items:center;gap:14px}
.sett-wasd-right{display:flex;flex-direction:column;gap:7px;align-items:flex-start}
.sett-wasd-cluster{display:flex;flex-direction:column;align-items:center;gap:3px}
.sett-wasd-top{display:flex;justify-content:center}
.sett-wasd-bot{display:flex;gap:3px}
.sett-mouse-col{display:flex;flex-direction:column;align-items:center;gap:6px}
.sett-mouse-icon{opacity:0.75}
.sett-mouse-lbl{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:400;letter-spacing:.5px;color:rgba(255,255,255,0.55)}
.sett-actions{display:flex;justify-content:space-between;gap:12px;padding-top:4px}
.sett-act-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:9px;font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:600;letter-spacing:3px;text-transform:uppercase;padding:16px 24px;cursor:pointer;-webkit-appearance:none;border-radius:0;border:none;transition:opacity .18s}
.sett-act-btn--close{background:#000;color:#fff}
.sett-act-btn--close:hover{opacity:0.82}
.sett-act-btn--map{background:#fff;color:#000}
.sett-act-btn--map:hover{opacity:0.88}
.sett-btn-key{font-family:'Barlow Condensed',sans-serif;font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;background:rgba(255,255,255,0.18);border:1px solid rgba(255,255,255,0.35);border-radius:3px;padding:1px 5px;color:rgba(255,255,255,0.75)}
.sett-btn-key--dark{background:rgba(0,0,0,0.15);border-color:rgba(0,0,0,0.3);color:rgba(0,0,0,0.6)}

/* ── Comet Chase ────────────────────────────────────────────────────────── */
#co-alert{position:fixed;top:0;bottom:0;left:50%;transform:translateX(-50%);width:50%;min-width:380px;display:flex;flex-direction:column;justify-content:space-between;padding:80px 4%;z-index:50;pointer-events:none;text-align:center}
#co-alert.bg-alert-anim{animation:bgAlertFade .3s ease both}
/* Blue overrides for alert theme */
.co-attn{background:#0a4a7a !important;animation:none !important}
.co-attn .bg-attn-chev{background:rgba(0,20,55,0.72) !important}
.co-hazard{border-color:#1066bb !important}
.co-hazard::before{border-color:#000 !important}
.co-hazard-inner{background:repeating-linear-gradient(-45deg,rgba(8,60,130,0.82) 0px,rgba(8,60,130,0.82) 20px,rgba(3,25,60,0.82) 20px,rgba(3,25,60,0.82) 40px) !important}
.co-alert-enter{color:#44ccff !important}
.co-kbd{border-color:rgba(80,200,255,0.55) !important;color:#44ccff !important;animation:none !important}
/* HUD */
#co-hud{position:absolute;top:22px;left:50%;transform:translateX(-50%);z-index:40;pointer-events:none;text-align:center;background:rgba(0,5,18,0.60);border:1px solid rgba(80,180,255,0.30);border-radius:5px;padding:9px 26px 7px;backdrop-filter:blur(6px);display:none;flex-direction:column;align-items:center;gap:3px}
#co-label{font-family:'Barlow Condensed',sans-serif;font-size:clamp(10px,1.2vw,12px);font-weight:700;letter-spacing:5px;color:rgba(80,190,255,0.85);text-transform:uppercase}
#co-stats{font-family:'Barlow Condensed',sans-serif;font-size:clamp(14px,1.7vw,17px);font-weight:300;color:rgba(210,235,255,0.90);letter-spacing:2px}
/* Result */
#co-result{position:absolute;inset:0;display:none;flex-direction:column;justify-content:center;align-items:center;gap:18px;z-index:50;pointer-events:none;text-align:center;animation:bgResFade .3s ease both}
.co-res-check{color:#44ccff;text-shadow:0 0 40px rgba(68,200,255,0.5)}
.co-res-attn{background:#0a4a7a}
.co-res-hazard{border:3px solid #1066bb}
.co-res-hazard-inner{background:repeating-linear-gradient(-45deg,rgba(8,60,130,0.82) 0px,rgba(8,60,130,0.82) 20px,rgba(3,25,60,0.82) 20px,rgba(3,25,60,0.82) 40px)}
.co-res-reward{color:#44ccff;font-family:'Barlow Condensed',sans-serif;font-size:clamp(14px,1.8vw,18px);font-weight:800;letter-spacing:3px;text-transform:uppercase}
.co-res-miss-tag{font-family:'Barlow Condensed',sans-serif;font-size:clamp(28px,4vw,42px);font-weight:900;letter-spacing:4px;color:rgba(255,200,80,0.90);text-transform:uppercase;text-shadow:0 0 30px rgba(255,180,50,0.4)}
.co-res-miss-body{font-family:'Barlow Condensed',sans-serif;font-size:clamp(13px,1.6vw,16px);color:rgba(220,210,190,0.65);letter-spacing:.5px;line-height:1.7}
/* Arrow */
#co-arrow{position:fixed;z-index:45;pointer-events:none;width:58px;height:46px;filter:drop-shadow(0 0 9px rgba(60,190,255,0.95))}
#co-arrow::before,#co-arrow::after{content:'';position:absolute;width:32px;height:32px;top:50%;border-top:2.5px solid rgba(80,205,255,0.92);border-right:2.5px solid rgba(80,205,255,0.92);transform:translateY(-50%) rotate(45deg)}
#co-arrow::before{left:0}
#co-arrow::after{left:10px}
/* Mode select */
#bg-mode-select{position:fixed;inset:0;z-index:52;display:none;flex-direction:column;align-items:center;justify-content:center;gap:32px;background:rgba(0,0,0,0.78);backdrop-filter:blur(8px)}
.bg-mode-title{font-family:'Barlow Condensed',sans-serif;font-size:clamp(12px,1.4vw,15px);font-weight:700;letter-spacing:7px;color:rgba(200,220,210,0.5);text-transform:uppercase}
.bg-mode-btns{display:flex;gap:24px;align-items:stretch}
.bg-mode-btn{background:rgba(255,255,255,0.06);border:1.5px solid rgba(255,255,255,0.15);padding:40px 36px;cursor:pointer;transition:background .15s,border-color .15s;text-align:center;width:clamp(180px,18vw,240px);display:flex;flex-direction:column;align-items:center;gap:18px}
.bg-mode-btn:hover{background:rgba(255,255,255,0.10);border-color:rgba(255,255,255,0.35)}
.bg-mode-btn--sel{border:4px solid #fff !important;background:rgba(255,255,255,0.10) !important}
.bg-mode-icon{width:64px;height:64px;color:rgba(232,234,240,0.85);flex-shrink:0}
.bg-mode-icon svg{width:100%;height:100%}
.bg-mode-btn-label{font-family:'Barlow Condensed',sans-serif;font-size:clamp(20px,2.6vw,28px);font-weight:800;letter-spacing:4px;color:#fff;text-transform:uppercase}
.bg-mode-btn-sub{font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:1.5px;color:rgba(200,220,210,0.5);text-transform:uppercase;line-height:1.6}
.bg-mode-hint{font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:3px;color:rgba(200,220,210,0.3);text-transform:uppercase}
/* Bot name labels */
.bg-bot-label{position:fixed;z-index:60;pointer-events:none;flex-direction:column;align-items:center;gap:5px;transform:translate(-50%,-100%)}
.bg-bot-label-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;order:2}
.bg-bot-label-name{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;letter-spacing:2.5px;color:#fff;text-transform:uppercase;text-shadow:0 0 8px rgba(0,0,0,0.9),0 1px 3px rgba(0,0,0,1);order:1;background:rgba(0,0,0,0.45);padding:2px 7px;border-radius:2px}
/* Race position */
#bg-race-pos{font-family:'Barlow Condensed',sans-serif;font-size:clamp(28px,4vw,42px);font-weight:900;letter-spacing:3px;color:#fff;text-shadow:0 0 20px rgba(255,255,255,0.4);display:none}
