*{box-sizing:border-box}
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#02070b;color:#eefaff;font-family:Arial,Helvetica,sans-serif}
button{font:inherit}
#game{position:relative;width:100%;height:100%;overflow:hidden;background:radial-gradient(circle at 50% 45%,#08131a 0,#03090d 50%,#010406 100%)}

.hud{position:fixed;z-index:100;left:10px;right:10px;top:8px;display:grid;grid-template-columns:150px auto 100px;gap:7px;align-items:center;pointer-events:none}
.playerHud,.menuBtn,.credits{height:36px;border:1px solid rgba(90,224,255,.20);border-radius:8px;background:rgba(3,14,20,.78);backdrop-filter:blur(8px);pointer-events:auto}
.playerHud{padding:5px 8px 4px}
.playerTop{display:flex;gap:8px;align-items:baseline}
.playerTop strong{font-size:10px;letter-spacing:.04em}.playerTop span{font-size:7px;color:#61e7ff}
.xpTrack{height:2px;margin-top:5px;border-radius:4px;background:rgba(90,224,255,.12);overflow:hidden}.xpTrack i{display:block;height:100%;background:#65eaff}
.menuBtn{justify-self:center;min-width:74px;padding:0 10px;color:#e6fbff;font-size:7px;font-weight:800;letter-spacing:.08em}
.menuBtn span{color:#64e7ff;margin-left:4px}
.credits{justify-self:end;min-width:90px;padding:0 10px;display:flex;align-items:center;justify-content:flex-end;gap:6px}.credits span{font-size:14px}.credits strong{font-size:9px}

.menuDrop{position:fixed;z-index:110;top:51px;left:50%;transform:translateX(-50%);width:180px;padding:6px;border:1px solid rgba(90,224,255,.20);border-radius:8px;background:rgba(3,14,20,.96);display:grid;gap:5px}
.menuDrop.hidden{display:none}.menuDrop button{height:32px;border:1px solid rgba(90,224,255,.12);border-radius:6px;background:rgba(8,30,39,.5);color:#dffaff;font-size:7px;text-align:left;padding:0 10px}

#viewport{position:absolute;inset:0;overflow:hidden;cursor:grab;touch-action:none}
#viewport.dragging{cursor:grabbing}
#world{position:absolute;left:-50%;top:-50%;width:200%;height:200%;background:
 radial-gradient(circle at 20% 20%,rgba(255,255,255,.9) 0 1px,transparent 1.5px),
 radial-gradient(circle at 70% 35%,rgba(255,255,255,.7) 0 1px,transparent 1.5px),
 radial-gradient(circle at 40% 70%,rgba(255,255,255,.75) 0 1px,transparent 1.5px),
 radial-gradient(circle at 85% 80%,rgba(255,255,255,.8) 0 1px,transparent 1.5px);
 background-size:180px 180px,220px 220px,260px 260px,300px 300px}
.grid{position:absolute;inset:0;background-image:linear-gradient(rgba(69,175,215,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(69,175,215,.035) 1px,transparent 1px);background-size:90px 90px}

.carrier{position:absolute;transform:translate(-50%,-50%);width:150px;height:110px;z-index:20;transition:left .8s ease,top .8s ease;filter:drop-shadow(0 0 12px rgba(92,255,110,.28));cursor:pointer}
.carrier img{width:100%;height:100%;object-fit:contain;pointer-events:none}
.unitLabel{position:absolute;left:50%;top:98%;transform:translateX(-50%);text-align:center;text-shadow:0 1px 3px #000}.unitLabel strong,.unitLabel span{display:block}.unitLabel strong{font-size:7px}.unitLabel span{font-size:6px;color:#aeeab5}

.npc{position:absolute;transform:translate(-50%,-50%);width:76px;height:62px;border:0;background:transparent;color:#70ef7c;cursor:pointer;z-index:12}
.npc.neutral{color:#65dff3}
.npcShip{position:absolute;left:50%;top:2px;transform:translateX(-50%);width:48px;height:30px;clip-path:polygon(0 45%,16% 18%,38% 26%,50% 0,62% 26%,84% 18%,100% 45%,72% 62%,57% 100%,43% 100%,28% 62%);background:linear-gradient(180deg,#15222a,#071015);border:1px solid currentColor;filter:drop-shadow(0 0 6px currentColor)}
.npcShip.trader{clip-path:polygon(12% 15%,88% 15%,100% 50%,88% 85%,12% 85%,0 50%)}
.npcText{position:absolute;left:50%;bottom:0;transform:translateX(-50%);white-space:nowrap;font-size:6px;color:#e4f9ff;text-shadow:0 1px 3px #000}.npcText b{display:block;color:currentColor;font-size:6px}
.npc.selected .npcShip{animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{50%{transform:translateX(-50%) scale(1.1);filter:drop-shadow(0 0 12px currentColor)}}

.moveTarget{position:absolute;width:42px;height:42px;border:1px solid rgba(91,229,255,.55);border-radius:50%;transform:translate(-50%,-50%);z-index:6;background:radial-gradient(circle,rgba(88,229,255,.13) 0 16%,transparent 17%)}.moveTarget:before,.moveTarget:after{content:"";position:absolute;background:rgba(100,235,255,.65)}.moveTarget:before{left:50%;top:7px;bottom:7px;width:1px}.moveTarget:after{top:50%;left:7px;right:7px;height:1px}.moveTarget.hidden{display:none}

.targetCard{position:fixed;z-index:90;left:50%;bottom:70px;transform:translateX(-50%);width:min(92vw,420px);padding:7px 9px;border:1px solid rgba(89,225,255,.25);border-radius:9px;background:rgba(2,12,18,.93);display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.targetCard.hidden{display:none}.targetCard small,.targetCard strong,.targetCard span{display:block}.targetCard small{font-size:5px;color:#71e7ff}.targetCard strong{font-size:9px}.targetCard span{font-size:6px;color:#9fb6bf;margin-top:2px}.targetActions{display:flex;gap:5px}.targetActions button{height:28px;padding:0 10px;border:1px solid rgba(89,225,255,.22);border-radius:6px;background:rgba(8,30,39,.7);color:#dffaff;font-size:6px;font-weight:800}.targetActions .danger{border-color:rgba(255,80,80,.35);color:#ff9a9a}

.bottomDock{position:fixed;z-index:100;left:50%;bottom:10px;transform:translateX(-50%);height:50px;padding:4px 5px;border:1px solid rgba(89,225,255,.16);border-radius:10px;background:rgba(2,12,18,.92)}
.dockBtn{width:62px;height:40px;border:0;border-radius:7px;background:transparent;color:#61e6ff;display:grid;place-items:center;font-size:5px;gap:0}
.mapIcon{position:relative;width:22px;height:22px}.mapIcon:before{content:"";position:absolute;inset:3px;border:1.4px solid currentColor;border-radius:50%}.mapIcon:after{content:"";position:absolute;left:2px;right:2px;top:9px;height:5px;border:1.2px solid currentColor;border-radius:50%;transform:rotate(-18deg)}


/* ==========================================================
   V2 — HEAVY CARRIER MOVEMENT + ENGINE FX + NPC PATROL
   ========================================================== */

/* Carrier now moves like a heavy capital ship */
.carrier{
  transition:
    left 3.8s cubic-bezier(.22,.61,.36,1),
    top 3.8s cubic-bezier(.22,.61,.36,1),
    transform .25s ease!important;
}

/* Layered carrier foundation for future weapons/shields/damage */
.carrierLayer{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.carrierBody{z-index:3}
.carrierBody img{
  width:100%;
  height:100%;
  object-fit:contain;
}

/* Engines */
.engineLayer{z-index:2}
.engine{
  position:absolute;
  width:10px;
  height:20px;
  border-radius:50%;
  background:radial-gradient(circle at 50% 25%,#eaffff 0 12%,#58e8ff 25%,rgba(56,214,255,.35) 55%,transparent 72%);
  opacity:.22;
  filter:blur(.5px) drop-shadow(0 0 5px #4be8ff);
  transform:translate(-50%,-50%) scale(.8);
  transition:opacity .25s ease, transform .25s ease;
}

/* Approximate rear-engine points on current carrier artwork */
.engineLeft{left:27%;top:46%}
.engineCenter{left:38%;top:39%}
.engineRight{left:20%;top:57%}

.carrier.moving .engine{
  opacity:1;
  transform:translate(-50%,-50%) scale(1.45);
  animation:enginePulse .16s ease-in-out infinite alternate;
}
@keyframes enginePulse{
  from{filter:blur(.4px) drop-shadow(0 0 4px #4be8ff)}
  to{filter:blur(.9px) drop-shadow(0 0 11px #87f4ff)}
}

/* Exhaust / ion trail. More like energized vapor than car smoke. */
.exhaustLayer{z-index:1}
.exhaust{
  position:absolute;
  width:8px;
  height:38px;
  border-radius:50%;
  opacity:0;
  transform-origin:50% 0%;
  transform:translate(-50%,-50%) rotate(66deg) scaleY(.4);
  background:linear-gradient(180deg,rgba(235,255,255,.95),rgba(80,224,255,.52) 35%,rgba(74,143,255,.17) 70%,transparent);
  filter:blur(2px);
}
.exhaustLeft{left:22%;top:49%}
.exhaustCenter{left:34%;top:42%}
.exhaustRight{left:16%;top:60%}

.carrier.moving .exhaust{
  opacity:.8;
  animation:ionTrail .35s ease-in-out infinite alternate;
}
@keyframes ionTrail{
  from{transform:translate(-50%,-50%) rotate(66deg) scaleY(.72);opacity:.5}
  to{transform:translate(-50%,-50%) rotate(66deg) scaleY(1.28);opacity:.9}
}

/* Slight nose-lift while underway */
.carrier.moving{
  transform:translate(-50%,-50%) scale(1.025)!important;
}

/* NPC ships should feel alive */
.npcPatrol{
  transition:
    left 4.6s cubic-bezier(.25,.8,.25,1),
    top 4.6s cubic-bezier(.25,.8,.25,1)!important;
}
.npcPatrol .npcShip{
  transition:transform .35s ease;
}
.npcPatrol.patrolling .npcShip{
  animation:npcEnginePulse .55s ease-in-out infinite alternate;
}
@keyframes npcEnginePulse{
  from{filter:drop-shadow(0 0 4px currentColor)}
  to{filter:drop-shadow(0 0 10px currentColor)}
}


/* ==========================================================
   V3 — TRUE SHIP HEADING + SLOW CAPITAL-SHIP FLIGHT
   ========================================================== */

/*
 Carrier position is controlled by left/top on the outer unit.
 The inner visual rotates so movement logic and ship heading stay separate.
*/
.carrier{
  --ship-angle: 0deg;
  --bank-angle: 0deg;
  transition:
    left 8.6s cubic-bezier(.18,.72,.24,1),
    top 8.6s cubic-bezier(.18,.72,.24,1),
    filter .25s ease!important;
  transform:translate(-50%,-50%)!important;
}

.carrierVisual{
  position:absolute;
  inset:0;
  transform-origin:50% 50%;
  transform:rotate(var(--ship-angle)) rotateY(var(--bank-angle));
  transition:
    transform 1.15s cubic-bezier(.2,.9,.25,1),
    filter .25s ease;
  will-change:transform;
}

.carrier.turning .carrierVisual{
  filter:drop-shadow(0 0 15px rgba(94,235,255,.18));
}

.carrier.moving .carrierVisual{
  filter:drop-shadow(0 0 12px rgba(92,255,110,.28));
}

/* Visual layers now live inside carrierVisual */
.carrierVisual .carrierLayer{
  position:absolute;
  inset:0;
}

/* Stronger engine ignition after the turn is complete */
.carrier.moving .engine{
  opacity:1!important;
  transform:translate(-50%,-50%) scale(1.65)!important;
}
.carrier.moving .exhaust{
  opacity:.9!important;
}

/* Tiny bank during the initial turn, then settles */
.carrier.bankLeft{--bank-angle:-7deg}
.carrier.bankRight{--bank-angle:7deg}
.carrier.moving{--bank-angle:0deg}

/* Slight inertial drift impression */
.carrier.moving .carrierBody{
  animation:capitalShipHum 1.4s ease-in-out infinite alternate;
}
@keyframes capitalShipHum{
  from{transform:translateY(-1px)}
  to{transform:translateY(1px)}
}


/* ==========================================================
   V5 — 8-DIRECTION CARRIER SPRITE SYSTEM
   ========================================================== */

.carrierSpriteUnit{
  width:112px!important;
  height:112px!important;
  transform:translate(-50%,-50%)!important;
  transition:
    left 8.6s cubic-bezier(.18,.72,.24,1),
    top 8.6s cubic-bezier(.18,.72,.24,1)!important;
  filter:none!important;
  z-index:20!important;
}

.carrierSpriteUnit .carrierVisual,
.carrierSpriteUnit .carrierLayer,
.carrierSpriteUnit .engineLayer,
.carrierSpriteUnit .exhaustLayer{
  display:none!important;
}

.spriteWrap{
  position:absolute;
  inset:0;
  pointer-events:none;
}

.carrierSprite{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 0 5px rgba(81,255,112,.20));
  image-rendering:auto;
}

/* Thrusters are independent effects and positioned per direction in JS. */
.thruster{
  position:absolute;
  width:6px;
  height:22px;
  border-radius:50%;
  opacity:0;
  background:linear-gradient(
    180deg,
    rgba(245,255,255,.96),
    rgba(73,227,255,.72) 25%,
    rgba(62,136,255,.28) 62%,
    transparent
  );
  filter:blur(1.2px) drop-shadow(0 0 4px #55e7ff);
  transform-origin:50% 0%;
}
.carrierSpriteUnit.moving .thruster{
  opacity:.7;
  animation:v5Thrust .3s ease-in-out infinite alternate;
}
@keyframes v5Thrust{
  from{transform:var(--thruster-transform) scaleY(.72)}
  to{transform:var(--thruster-transform) scaleY(1.20)}
}

/* direction-specific rear-engine positions */
.carrierSpriteUnit[data-dir="N"] .thrusterLeft{left:42%;top:72%;--thruster-transform:rotate(0deg)}
.carrierSpriteUnit[data-dir="N"] .thrusterRight{left:58%;top:72%;--thruster-transform:rotate(0deg)}

.carrierSpriteUnit[data-dir="NE"] .thrusterLeft{left:30%;top:65%;--thruster-transform:rotate(45deg)}
.carrierSpriteUnit[data-dir="NE"] .thrusterRight{left:40%;top:76%;--thruster-transform:rotate(45deg)}

.carrierSpriteUnit[data-dir="E"] .thrusterLeft{left:24%;top:42%;--thruster-transform:rotate(90deg)}
.carrierSpriteUnit[data-dir="E"] .thrusterRight{left:24%;top:58%;--thruster-transform:rotate(90deg)}

.carrierSpriteUnit[data-dir="SE"] .thrusterLeft{left:30%;top:25%;--thruster-transform:rotate(135deg)}
.carrierSpriteUnit[data-dir="SE"] .thrusterRight{left:40%;top:35%;--thruster-transform:rotate(135deg)}

.carrierSpriteUnit[data-dir="S"] .thrusterLeft{left:42%;top:12%;--thruster-transform:rotate(180deg)}
.carrierSpriteUnit[data-dir="S"] .thrusterRight{left:58%;top:12%;--thruster-transform:rotate(180deg)}

.carrierSpriteUnit[data-dir="SW"] .thrusterLeft{left:60%;top:25%;--thruster-transform:rotate(225deg)}
.carrierSpriteUnit[data-dir="SW"] .thrusterRight{left:70%;top:35%;--thruster-transform:rotate(225deg)}

.carrierSpriteUnit[data-dir="W"] .thrusterLeft{left:76%;top:42%;--thruster-transform:rotate(270deg)}
.carrierSpriteUnit[data-dir="W"] .thrusterRight{left:76%;top:58%;--thruster-transform:rotate(270deg)}

.carrierSpriteUnit[data-dir="NW"] .thrusterLeft{left:60%;top:65%;--thruster-transform:rotate(315deg)}
.carrierSpriteUnit[data-dir="NW"] .thrusterRight{left:70%;top:76%;--thruster-transform:rotate(315deg)}

.carrierSpriteUnit .unitLabel{
  top:94%!important;
}
.carrierSpriteUnit .unitLabel strong{font-size:6px!important}
.carrierSpriteUnit .unitLabel span{font-size:5px!important}

@media(max-width:500px){
  .carrierSpriteUnit{
    width:88px!important;
    height:88px!important;
  }
  .thruster{
    width:5px!important;
    height:18px!important;
  }
}

/* V5.1 GREEN CARRIER GRAPHICS UPGRADE */
.carrierSprite{
  filter:
    drop-shadow(0 0 2px rgba(145,255,155,.38))
    drop-shadow(0 0 7px rgba(45,255,85,.22))!important;
}


/* ==========================================================
   V5.2 — ORIGINAL FIVE CARRIER ARTWORKS
   movement/direction system unchanged
   ========================================================== */

.carrierSpriteUnit[data-tier="1"] .carrierSprite{
  filter:drop-shadow(0 0 5px rgba(82,255,98,.28))!important;
}
.carrierSpriteUnit[data-tier="2"] .carrierSprite{
  filter:drop-shadow(0 0 5px rgba(76,166,255,.30))!important;
}
.carrierSpriteUnit[data-tier="3"] .carrierSprite{
  filter:drop-shadow(0 0 5px rgba(220,235,245,.22))!important;
}
.carrierSpriteUnit[data-tier="4"] .carrierSprite{
  filter:drop-shadow(0 0 5px rgba(255,76,76,.30))!important;
}
.carrierSpriteUnit[data-tier="5"] .carrierSprite{
  filter:drop-shadow(0 0 6px rgba(255,154,48,.34))!important;
}


/* ==========================================================
   V5.3 — CAPITAL SHIP FLIGHT PHYSICS + ENGINE FX
   ========================================================== */

.carrierSpriteUnit{
  transition:none!important;
  --thrust:.35;
}

/*
  Thrusters are intentionally subtle. The ship is the focus;
  exhaust is a cue, not a giant flame.
*/
.thruster{
  width:5px!important;
  height:15px!important;
  opacity:0!important;
  border-radius:50%!important;
  background:
    radial-gradient(ellipse at 50% 0%,
      rgba(250,255,255,.95) 0 10%,
      rgba(104,236,255,.72) 20%,
      rgba(74,192,255,.30) 47%,
      transparent 74%)!important;
  filter:blur(.75px) drop-shadow(0 0 3px rgba(85,226,255,.65))!important;
  transform-origin:50% 0!important;
  transition:opacity .18s ease!important;
}

.carrierSpriteUnit.moving .thruster{
  opacity:calc(.22 + (var(--thrust) * .48))!important;
  animation:none!important;
}

/* Cruising engine core gets only a faint bloom. */
.carrierSpriteUnit.cruising .carrierSprite{
  filter:
    drop-shadow(0 0 3px rgba(110,255,130,.22))
    drop-shadow(0 0 5px rgba(80,218,255,.10))!important;
}

/* During deceleration, thrust visibly tapers rather than abruptly stopping. */
.carrierSpriteUnit.decelerating .thruster{
  filter:blur(.85px) drop-shadow(0 0 2px rgba(85,226,255,.50))!important;
}

/* tiny floating motion so it feels like a vessel, not a sticker */
.carrierSpriteUnit.moving .spriteWrap{
  animation:carrierDriftV53 1.8s ease-in-out infinite alternate;
}
@keyframes carrierDriftV53{
  from{transform:translateY(-.6px)}
  to{transform:translateY(.6px)}
}

/* reduce exhaust further on phone */
@media(max-width:500px){
  .thruster{
    width:4px!important;
    height:12px!important;
  }
}


/* ==========================================================
   V6 — HIGH-RES CARRIER + REAL NPC SPRITES
   ========================================================== */

.carrierSprite{
  image-rendering:auto!important;
  backface-visibility:hidden;
  transform:translateZ(0);
}

.npcShip{display:none!important}

.npcSprite{
  position:absolute;
  left:50%;
  top:0;
  transform:translateX(-50%);
  width:54px;
  height:40px;
  object-fit:contain;
  filter:drop-shadow(0 0 5px currentColor);
  pointer-events:none;
  transition:filter .25s ease;
}

.npc.selected .npcSprite{
  filter:drop-shadow(0 0 10px currentColor);
}

.npcPatrol.patrolling .npcSprite{
  animation:npcSpriteThrum .8s ease-in-out infinite alternate;
}
@keyframes npcSpriteThrum{
  from{transform:translateX(-50%) translateY(-.5px)}
  to{transform:translateX(-50%) translateY(.5px)}
}

@media(max-width:500px){
  .npcSprite{
    width:48px;
    height:36px;
  }
}


/* ==========================================================
   V6.1 — NPC SPRITE RENDER FIX
   ========================================================== */

.npc{
  overflow:visible!important;
}

.npcSprite{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:4!important;
  position:absolute!important;
  left:50%!important;
  top:-8px!important;
  width:64px!important;
  height:48px!important;
  object-fit:contain!important;
  transform:translateX(-50%)!important;
  pointer-events:none!important;
}

.npcText{
  z-index:6!important;
  bottom:-3px!important;
}

.npcFallbackShip{
  display:none;
  position:absolute;
  left:50%;
  top:1px;
  transform:translateX(-50%);
  width:42px;
  height:26px;
  clip-path:polygon(0 45%,16% 18%,38% 26%,50% 0,62% 26%,84% 18%,100% 45%,72% 62%,57% 100%,43% 100%,28% 62%);
  border:1px solid currentColor;
  background:linear-gradient(180deg,#15222a,#071015);
  filter:drop-shadow(0 0 6px currentColor);
  z-index:3;
}

.npc.spriteFailed .npcFallbackShip{
  display:block!important;
}

@media(max-width:500px){
  .npcSprite{
    width:58px!important;
    height:44px!important;
  }
}


/* ==========================================================
   V6.2 — CLEAN NPC SHIPS + DIRECTION-CORRECT ENGINE OVERLAY
   ========================================================== */

/* old CSS plumes are retired */
.thruster{display:none!important}

/* one transparent engine overlay per direction */
.carrierEngineOverlay{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
  filter:drop-shadow(0 0 3px rgba(90,225,255,.40));
}
.carrierSpriteUnit.moving .carrierEngineOverlay{
  opacity:calc(.20 + (var(--thrust) * .45));
}
.carrierSpriteUnit.decelerating .carrierEngineOverlay{
  opacity:calc(.10 + (var(--thrust) * .25));
}

/* NPCs now use clean Carrier-style ships */
.npcSprite{
  width:58px!important;
  height:46px!important;
  top:-6px!important;
}
.npc.green .npcSprite{
  filter:drop-shadow(0 0 5px rgba(255,85,85,.42))!important;
}
.npc.neutral .npcSprite{
  filter:drop-shadow(0 0 5px rgba(85,220,255,.38))!important;
}


/* ==========================================================
   V6.3 — HEAVY CARRIER TURN / FLIGHT CONTROLLER
   ========================================================== */

.carrierSpriteUnit{
  width:92px!important;
  height:92px!important;
  transform-origin:50% 50%!important;
}

.spriteWrap{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  transform-origin:50% 50%!important;
}

.carrierSprite{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
}

/* Absolutely no main-engine plume while the hull is changing heading. */
.carrierSpriteUnit.turning .carrierEngineOverlay{
  opacity:0!important;
}
.carrierSpriteUnit.engineSpool .carrierEngineOverlay{
  opacity:.14!important;
}

/* Make sprite-to-sprite heading changes feel like a heavy vessel rather than a pop. */
.carrierSpriteUnit.turning .spriteWrap{
  animation:carrierTurnSettleV63 .31s ease-in-out both!important;
}
@keyframes carrierTurnSettleV63{
  0%{transform:scale(.985)}
  50%{transform:scale(1.012)}
  100%{transform:scale(1)}
}

/* During normal flight, keep the hull centered; only a tiny inertial float remains. */
.carrierSpriteUnit.moving .spriteWrap{
  animation:carrierCruiseFloatV63 2.4s ease-in-out infinite alternate!important;
}
@keyframes carrierCruiseFloatV63{
  from{transform:translateY(-.35px)}
  to{transform:translateY(.35px)}
}


/* ==========================================================
   V6.4 — NPC SHIP FOUNDATION
   ========================================================== */

.npc{
  width:104px!important;
  height:82px!important;
  overflow:visible!important;
}

.npcSprite{
  width:88px!important;
  height:66px!important;
  top:-8px!important;
  object-fit:contain!important;
  opacity:1!important;
}

.npcText{
  bottom:-2px!important;
  min-width:92px;
  text-align:center;
  line-height:8px!important;
  color:#edfaff!important;
}
.npcText b,
.npcText span{
  display:block!important;
}
.npcText b{
  font-size:6px!important;
  letter-spacing:.04em;
}
.npcText span{
  font-size:6px!important;
  color:#d6ebf1!important;
}

.npc.green .npcSprite{
  filter:
    drop-shadow(0 0 4px rgba(255,92,92,.40))
    drop-shadow(0 0 8px rgba(255,58,58,.14))!important;
}
.npc.neutral .npcSprite{
  filter:
    drop-shadow(0 0 4px rgba(90,225,255,.38))
    drop-shadow(0 0 8px rgba(74,204,255,.12))!important;
}

.npc.selected{
  z-index:30!important;
}
.npc.selected .npcSprite{
  transform:translateX(-50%) scale(1.08)!important;
  filter:
    drop-shadow(0 0 7px currentColor)
    drop-shadow(0 0 13px rgba(90,225,255,.14))!important;
}

/* Ships patrol like vessels, not twitchy icons. */
.npcPatrol{
  transition-property:left,top!important;
  transition-timing-function:cubic-bezier(.22,.61,.36,1)!important;
}

/* slight inertial float while moving */
.npcPatrol.patrolling .npcSprite{
  animation:npcCruiseV64 2.1s ease-in-out infinite alternate!important;
}
@keyframes npcCruiseV64{
  from{transform:translateX(-50%) translateY(-.4px)}
  to{transform:translateX(-50%) translateY(.4px)}
}

@media(max-width:500px){
  .npc{
    width:92px!important;
    height:74px!important;
  }
  .npcSprite{
    width:78px!important;
    height:58px!important;
  }
}


/* ==========================================================
   V6.5 — PLANET NAVIGATION / MINI-MAP / WARP FOUNDATION
   ========================================================== */
.navHud{
  position:absolute; top:14px; left:50%; transform:translateX(-50%);
  z-index:55; display:flex; gap:7px; align-items:center; pointer-events:auto;
}
.coordReadout,.warpBtn{
  height:27px; border:1px solid rgba(92,224,255,.28);
  background:rgba(3,12,18,.82); box-shadow:0 0 14px rgba(40,190,230,.08);
  color:#dffaff; font:600 8px/1 system-ui; letter-spacing:.08em;
}
.coordReadout{display:flex;align-items:center;gap:8px;padding:0 10px}
.coordReadout span{color:#6cecff}.coordReadout b{font-size:7px}
.warpBtn{padding:0 12px;color:#9af4ff;cursor:pointer}
.warpBtn.armed{border-color:rgba(255,195,70,.65);color:#ffd77c}

.miniMap{
  position:absolute; right:14px; bottom:66px; width:150px; height:118px;
  z-index:52; padding:6px; box-sizing:border-box; pointer-events:auto;
  border:1px solid rgba(86,219,255,.26); background:rgba(2,10,15,.80);
  box-shadow:0 0 18px rgba(30,170,220,.08);
}
.miniMapTitle{height:18px;display:flex;justify-content:space-between;align-items:center;
  color:#7deeff;font:700 6px/1 system-ui;letter-spacing:.12em}
.miniMapTitle b{color:#d8f8ff}
.miniMapField{position:relative;height:87px;overflow:hidden;cursor:crosshair;
  border:1px solid rgba(95,220,255,.12);
  background:
   linear-gradient(rgba(70,190,220,.05) 1px,transparent 1px),
   linear-gradient(90deg,rgba(70,190,220,.05) 1px,transparent 1px),
   radial-gradient(circle at 55% 42%,rgba(42,123,150,.12),transparent 52%);
  background-size:18px 18px,18px 18px,100% 100%}
.miniDot{position:absolute;width:5px;height:5px;border-radius:50%;transform:translate(-50%,-50%)}
.carrierDot{left:50%;top:50%;background:#74ff9b;box-shadow:0 0 7px #74ff9b}
.hostileDot{left:31%;top:28%;background:#ff6767;box-shadow:0 0 5px #ff6767}
.hostileTwo{left:72%;top:67%}
.neutralDot{left:67%;top:31%;background:#65ddff;box-shadow:0 0 5px #65ddff}
.miniTarget{position:absolute;width:8px;height:8px;border:1px solid #ffd36d;border-radius:50%;
 transform:translate(-50%,-50%);box-shadow:0 0 6px rgba(255,211,109,.55)}
.warpOverlay{position:absolute;inset:0;z-index:80;pointer-events:none;display:grid;place-items:center;
 background:radial-gradient(circle,rgba(64,210,255,.06),rgba(0,0,0,.08) 38%,rgba(0,0,0,.28))}
.warpRing{width:150px;height:150px;border:2px solid rgba(120,240,255,.55);border-radius:50%;
 box-shadow:0 0 18px #55dfff,inset 0 0 18px #55dfff;animation:warpChargeV65 .7s linear infinite}
.warpText{position:absolute;text-align:center;color:#dffcff;font:700 8px/1.5 system-ui;letter-spacing:.18em}
.warpText span{display:block;color:#7deaff;font-size:6px}
@keyframes warpChargeV65{from{transform:scale(.72) rotate(0);opacity:.35}to{transform:scale(1.15) rotate(180deg);opacity:.9}}
.warping .carrierSpriteUnit{filter:drop-shadow(0 0 14px #73eaff) brightness(1.25)}
.hidden{display:none!important}


/* V6.5.2 visibility hotfix */
.navHud,.miniMap{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
}
.miniMap{
  display:block!important;
  z-index:999!important;
}
.navHud{
  z-index:999!important;
}
.warpOverlay{
  z-index:1000!important;
}


/* V6.5.3 — click-map destination actions */
.mapActionPanel{
  position:fixed;
  z-index:1200;
  width:180px;
  padding:8px;
  box-sizing:border-box;
  border:1px solid rgba(87,225,255,.38);
  background:rgba(2,11,17,.94);
  box-shadow:0 0 18px rgba(40,200,240,.14);
  color:#dffaff;
  pointer-events:auto;
}
.mapActionHead{display:flex;justify-content:space-between;align-items:center;
  padding-bottom:6px;border-bottom:1px solid rgba(80,220,255,.12);
  font:700 6px/1 system-ui;letter-spacing:.12em}
.mapActionHead span{color:#74eaff}.mapActionHead b{color:#fff;font-size:6px}
.mapActionButtons{display:flex;gap:5px;padding-top:7px}
.mapActionButtons button{
  flex:1;height:25px;border:1px solid rgba(90,225,255,.28);
  background:rgba(5,20,29,.94);color:#dffaff;
  font:700 6px/1 system-ui;letter-spacing:.08em;cursor:pointer;
}
.mapActionButtons button:hover{border-color:#6deaff;box-shadow:0 0 8px rgba(70,220,255,.15)}
#mapWarpActionBtn{color:#ffd679;border-color:rgba(255,205,90,.34)}


/* ==========================================================
   V6.5.8 — SAFE TOP HUD REMOVAL
   Keeps the rest of map.css completely intact.
   ========================================================== */
#navHud,
.navHud{
  display:none!important;
}

/* V6.6 NPC COMBAT */
.npcCombatPanel{position:fixed;z-index:1250;width:230px;padding:10px;box-sizing:border-box;border:1px solid rgba(255,92,92,.42);background:rgba(3,10,15,.96);box-shadow:0 0 20px rgba(255,60,60,.10);color:#eafaff;pointer-events:auto}
.npcCombatHead{display:flex;justify-content:space-between;align-items:flex-start}.npcCombatHead span{display:block;color:#ff7777;font:700 7px/1 system-ui;letter-spacing:.13em}.npcCombatHead b{display:block;margin-top:3px;font:800 11px/1 system-ui}#npcCombatClose{border:0;background:transparent;color:#8ba6ad;font-size:17px;cursor:pointer}
.npcCombatStats{display:flex;gap:14px;margin:9px 0 8px;font:600 7px/1 system-ui;color:#8fb1ba}.npcCombatStats b{color:#eaffff}.npcBarLabel{display:flex;justify-content:space-between;margin-top:6px;font:700 6px/1 system-ui;color:#78e9ff}.npcBar{height:5px;margin-top:3px;background:rgba(255,255,255,.08);overflow:hidden}.npcBar i{display:block;height:100%;width:100%;background:#6de7ff;transition:width .2s}.hullLabel{color:#ff8a8a}.hullBar i{background:#ff6666}
.npcCombatActions{display:flex;gap:6px;margin-top:10px}.npcCombatActions button{flex:1;height:29px;border:1px solid rgba(255,105,105,.32);background:rgba(26,7,10,.9);color:#ffd9d9;font:700 7px/1 system-ui;cursor:pointer}#droneAttackBtn{border-color:rgba(90,220,255,.28);background:rgba(4,19,27,.9);color:#b9f5ff}
.npc.combatTarget .npcSprite{filter:drop-shadow(0 0 9px rgba(255,70,70,.9))!important}.npc.destroyed{pointer-events:none!important;opacity:0!important;transition:opacity .35s ease!important}
.carrierLaser{position:fixed;z-index:1100;height:2px;transform-origin:0 50%;background:linear-gradient(90deg,rgba(130,255,170,.95),rgba(90,255,150,.8),rgba(255,255,255,.1));box-shadow:0 0 6px rgba(90,255,150,.85);pointer-events:none;animation:carrierLaserV66 .16s ease-out forwards}@keyframes carrierLaserV66{from{opacity:1}to{opacity:0}}


/* V6.6.1 combat panel reliability */
#npcCombatPanel{
  z-index:1300!important;
}
#npcCombatPanel:not(.hidden){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}


/* ==========================================================
   V6.7 — REAL CARRIER BATTLE STATE
   ========================================================== */

.carrierCombatHud{
  position:fixed;
  left:14px;
  bottom:66px;
  z-index:1250;
  width:180px;
  padding:8px;
  box-sizing:border-box;
  border:1px solid rgba(90,225,255,.28);
  background:rgba(2,10,16,.94);
  box-shadow:0 0 18px rgba(70,210,255,.10);
  color:#eafaff;
}
.carrierCombatTitle{
  display:flex;
  justify-content:space-between;
  font:700 7px/1 system-ui;
  color:#71eaff;
  letter-spacing:.12em;
}
.carrierCombatTitle b{color:#fff}
.combatHudLabel{
  display:flex;
  justify-content:space-between;
  margin-top:7px;
  font:700 6px/1 system-ui;
  color:#77eaff;
}
.combatHudLabel.hull{color:#ff8c8c}
.combatHudBar{
  height:5px;
  margin-top:3px;
  background:rgba(255,255,255,.08);
  overflow:hidden;
}
.combatHudBar i{
  display:block;
  width:100%;
  height:100%;
  background:#6eeaff;
  transition:width .18s linear;
}
.combatHudBar.hull i{background:#ff6767}

.carrierRepairPanel{
  position:fixed;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  z-index:1400;
  width:240px;
  padding:14px;
  text-align:center;
  border:1px solid rgba(255,80,80,.48);
  background:rgba(8,4,7,.97);
  box-shadow:0 0 28px rgba(255,55,55,.16);
  color:#fff;
}
.carrierRepairPanel b{
  display:block;
  color:#ff7676;
  font:800 12px/1.2 system-ui;
  letter-spacing:.08em;
}
.carrierRepairPanel span{
  display:block;
  margin-top:7px;
  color:#c8dce2;
  font:600 8px/1.2 system-ui;
}
.carrierRepairPanel button{
  width:100%;
  height:34px;
  margin-top:12px;
  border:1px solid rgba(96,225,255,.32);
  background:rgba(6,24,32,.95);
  color:#b9f7ff;
  font:800 8px/1 system-ui;
  cursor:pointer;
}
.carrierRepairPanel small{
  display:block;
  min-height:10px;
  margin-top:7px;
  color:#ff8e8e;
  font:600 7px/1.2 system-ui;
}

.battleLocked .carrierSprite{
  filter:
    drop-shadow(0 0 7px rgba(80,235,255,.45))
    drop-shadow(0 0 12px rgba(50,180,255,.12))!important;
}
.npc.inBattle .npcSprite{
  filter:
    drop-shadow(0 0 7px rgba(255,90,90,.65))
    drop-shadow(0 0 12px rgba(255,50,50,.18))!important;
}

.battleLaserPlayer,
.battleLaserEnemy{
  position:fixed;
  height:2px;
  z-index:1320;
  transform-origin:0 50%;
  pointer-events:none;
}
.battleLaserPlayer{
  background:linear-gradient(90deg,#d9fff0,#67ff9f,rgba(80,255,145,.05));
  box-shadow:0 0 7px rgba(80,255,145,.9);
}
.battleLaserEnemy{
  background:linear-gradient(90deg,#ffe2e2,#ff5b5b,rgba(255,80,80,.05));
  box-shadow:0 0 7px rgba(255,75,75,.9);
}
.battleLaserPlayer,
.battleLaserEnemy{
  animation:battleLaserV67 .14s ease-out forwards;
}
@keyframes battleLaserV67{from{opacity:1}to{opacity:0}}

.shipExplosion{
  position:fixed;
  z-index:1350;
  width:18px;
  height:18px;
  margin-left:-9px;
  margin-top:-9px;
  border-radius:50%;
  pointer-events:none;
  background:
    radial-gradient(circle,#fff 0 10%,#ffd26a 20%,#ff6c38 38%,rgba(255,55,20,.25) 60%,transparent 72%);
  box-shadow:0 0 20px #ff7a36;
  animation:shipExplosionV67 .75s ease-out forwards;
}
@keyframes shipExplosionV67{
  from{transform:scale(.4);opacity:1}
  60%{transform:scale(4);opacity:1}
  to{transform:scale(6);opacity:0}
}


/* ==========================================================
   V6.7.2 — VISIBLE CARRIER SHIELD DAMAGE
   ========================================================== */

.carrierShieldImpact{
  position:fixed;
  z-index:1340;
  transform:translate(-50%,-50%);
  border-radius:50%;
  pointer-events:none;

  border:
    calc(1px + (var(--shield-strength) * 1px))
    solid rgba(98,232,255,calc(.40 + (var(--shield-strength) * .42)));

  background:
    radial-gradient(
      ellipse at center,
      rgba(91,225,255,.03) 0 53%,
      rgba(106,236,255,.10) 58%,
      rgba(111,239,255,.28) 64%,
      transparent 70%
    );

  box-shadow:
    0 0 7px rgba(89,226,255,.75),
    inset 0 0 9px rgba(90,225,255,.30);

  animation:carrierShieldHitV672 .50s ease-out forwards;
}

.carrierShieldImpact::before,
.carrierShieldImpact::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
.carrierShieldImpact::before{
  inset:8%;
  border:1px solid rgba(157,248,255,.32);
}
.carrierShieldImpact::after{
  inset:-8%;
  border:1px solid rgba(94,223,255,.20);
}

@keyframes carrierShieldHitV672{
  0%{
    opacity:.15;
    transform:translate(-50%,-50%) scale(.82);
  }
  22%{
    opacity:1;
    transform:translate(-50%,-50%) scale(1.04);
  }
  100%{
    opacity:0;
    transform:translate(-50%,-50%) scale(1.18);
  }
}

/* Permanent faint shield presence during battle.
   It weakens as shield HP falls. */
.carrierSpriteUnit.battleLocked:not(.shieldsDown)::after{
  content:"";
  position:absolute;
  z-index:25;
  left:50%;
  top:50%;
  width:128%;
  height:128%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:1px solid
    rgba(102,230,255,calc(.10 + (var(--carrier-shield-pct,1) * .18)));
  box-shadow:
    0 0 8px rgba(86,221,255,calc(.05 + (var(--carrier-shield-pct,1) * .12)));
  pointer-events:none;
}

.carrierSpriteUnit.shieldsDown::after{
  display:none!important;
}

/* Once shields are gone, laser hits visibly strike the hull. */
.carrierHullImpact{
  position:fixed;
  z-index:1342;
  width:14px;
  height:14px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  pointer-events:none;
  background:
    radial-gradient(circle,#fff 0 9%,#ffd070 18%,#ff6538 37%,rgba(255,75,40,.16) 62%,transparent 72%);
  box-shadow:0 0 10px rgba(255,92,54,.92);
  animation:carrierHullHitV672 .40s ease-out forwards;
}

@keyframes carrierHullHitV672{
  0%{opacity:1;transform:translate(-50%,-50%) scale(.45)}
  45%{opacity:1;transform:translate(-50%,-50%) scale(1.9)}
  100%{opacity:0;transform:translate(-50%,-50%) scale(2.8)}
}

.carrierSpriteUnit.shieldsDown .carrierSprite{
  filter:
    drop-shadow(0 0 5px rgba(255,86,60,.18))!important;
}


/* ==========================================================
   V6.8 — PWA GRAPHICS PASS
   Lightweight effects: transform + opacity; bounded particles.
   ========================================================== */

/* SPACE DEPTH — no image assets, no heavy canvas */
#world::before,
#world::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
}
#world::before{
  background:
    radial-gradient(ellipse at 18% 28%,rgba(32,79,118,.11),transparent 28%),
    radial-gradient(ellipse at 76% 68%,rgba(48,26,93,.10),transparent 30%),
    radial-gradient(ellipse at 56% 16%,rgba(25,86,88,.07),transparent 24%);
  mix-blend-mode:screen;
}
#world::after{
  opacity:.22;
  background-image:
    radial-gradient(circle at 20% 30%,rgba(255,255,255,.95) 0 1px,transparent 1.4px),
    radial-gradient(circle at 60% 10%,rgba(160,220,255,.8) 0 1px,transparent 1.4px),
    radial-gradient(circle at 80% 75%,rgba(255,255,255,.9) 0 1px,transparent 1.5px);
  background-size:310px 310px,430px 430px,520px 520px;
}

/* TARGET RING */
.npc.combatTarget::after{
  content:"";
  position:absolute;
  left:50%;
  top:36%;
  width:72px;
  height:72px;
  transform:translate(-50%,-50%);
  border:1px solid rgba(255,88,88,.55);
  border-radius:50%;
  box-shadow:
    0 0 7px rgba(255,72,72,.34),
    inset 0 0 7px rgba(255,72,72,.12);
  pointer-events:none;
  animation:targetPulseV68 1.25s ease-in-out infinite;
}
@keyframes targetPulseV68{
  0%,100%{opacity:.45;transform:translate(-50%,-50%) scale(.94)}
  50%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}
}

/* LASERS — brighter core + softer outer bloom */
.battleLaserPlayer,
.battleLaserEnemy{
  height:4px!important;
  border-radius:4px;
  overflow:visible;
}
.battleLaserPlayer{
  background:linear-gradient(90deg,
    rgba(225,255,235,.98) 0%,
    rgba(79,255,135,.95) 20%,
    rgba(75,255,141,.52) 75%,
    transparent 100%)!important;
  box-shadow:
    0 0 4px rgba(80,255,145,1),
    0 0 9px rgba(65,255,125,.62)!important;
}
.battleLaserEnemy{
  background:linear-gradient(90deg,
    rgba(255,235,235,.98) 0%,
    rgba(255,78,78,.95) 20%,
    rgba(255,68,68,.48) 75%,
    transparent 100%)!important;
  box-shadow:
    0 0 4px rgba(255,74,74,1),
    0 0 9px rgba(255,65,65,.55)!important;
}
.laserCore{
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:1px;
  transform:translateY(-50%);
  background:rgba(255,255,255,.94);
  box-shadow:0 0 2px #fff;
  pointer-events:none;
}

/* MUZZLE FLASH */
.muzzleFlash{
  position:fixed;
  width:18px;
  height:18px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  pointer-events:none;
  z-index:1332;
  animation:muzzleV68 .17s ease-out forwards;
}
.muzzleFlash.player{
  background:radial-gradient(circle,#fff 0 10%,#92ffc0 24%,rgba(67,255,135,.28) 52%,transparent 72%);
  box-shadow:0 0 10px rgba(70,255,140,.92);
}
.muzzleFlash.enemy{
  background:radial-gradient(circle,#fff 0 10%,#ff9999 24%,rgba(255,60,60,.30) 52%,transparent 72%);
  box-shadow:0 0 10px rgba(255,68,68,.92);
}
@keyframes muzzleV68{
  from{opacity:1;transform:translate(-50%,-50%) scale(.45)}
  to{opacity:0;transform:translate(-50%,-50%) scale(1.65)}
}

/* LASER END-POINT IMPACT */
.laserImpact{
  position:fixed;
  width:12px;
  height:12px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  pointer-events:none;
  z-index:1330;
  animation:laserImpactV68 .24s ease-out forwards;
}
.laserImpact.player{
  background:radial-gradient(circle,#fff,#7bffa8 30%,transparent 70%);
  box-shadow:0 0 7px rgba(88,255,140,.8);
}
.laserImpact.enemy{
  background:radial-gradient(circle,#fff,#ff7979 30%,transparent 70%);
  box-shadow:0 0 7px rgba(255,80,80,.8);
}
@keyframes laserImpactV68{
  from{opacity:1;transform:translate(-50%,-50%) scale(.35)}
  to{opacity:0;transform:translate(-50%,-50%) scale(1.7)}
}

/* NPC SHIELD IMPACT */
.npcShieldImpact{
  position:fixed;
  z-index:1335;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:1px solid rgba(102,230,255,.82);
  background:radial-gradient(ellipse at center,
    rgba(86,224,255,.03) 0 50%,
    rgba(96,231,255,.18) 57%,
    rgba(111,239,255,.36) 64%,
    transparent 71%);
  box-shadow:
    0 0 7px rgba(83,225,255,.68),
    inset 0 0 8px rgba(83,225,255,.24);
  pointer-events:none;
  animation:npcShieldV68 .42s ease-out forwards;
}
@keyframes npcShieldV68{
  from{opacity:.25;transform:translate(-50%,-50%) scale(.82)}
  30%{opacity:1;transform:translate(-50%,-50%) scale(1.03)}
  to{opacity:0;transform:translate(-50%,-50%) scale(1.16)}
}

/* NPC HULL HIT */
.npcHullSpark{
  position:fixed;
  z-index:1337;
  width:14px;
  height:14px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  pointer-events:none;
  background:radial-gradient(circle,#fff 0 8%,#ffd176 18%,#ff6a3d 38%,rgba(255,82,42,.18) 60%,transparent 73%);
  box-shadow:0 0 9px rgba(255,96,55,.9);
  animation:npcHullV68 .34s ease-out forwards;
}
@keyframes npcHullV68{
  from{opacity:1;transform:translate(-50%,-50%) scale(.35)}
  to{opacity:0;transform:translate(-50%,-50%) scale(2.2)}
}

/* EXPLOSION UPGRADE */
.shipExplosion{
  width:22px!important;
  height:22px!important;
  box-shadow:
    0 0 14px rgba(255,131,57,.95),
    0 0 28px rgba(255,72,35,.55)!important;
}
.shipExplosion::after{
  content:"";
  position:absolute;
  inset:-6px;
  border:1px solid rgba(255,185,91,.62);
  border-radius:50%;
  animation:explosionRingV68 .72s ease-out forwards;
}
@keyframes explosionRingV68{
  from{opacity:1;transform:scale(.3)}
  to{opacity:0;transform:scale(5)}
}

/* bounded explosion debris */
.shipDebris{
  position:fixed;
  z-index:1349;
  width:3px;
  height:7px;
  margin-left:-1px;
  margin-top:-3px;
  background:linear-gradient(#ffe1a1,#ff7445);
  box-shadow:0 0 4px rgba(255,108,60,.7);
  pointer-events:none;
  animation:debrisV68 .68s ease-out forwards;
}
@keyframes debrisV68{
  from{
    opacity:1;
    transform:translate(0,0) rotate(0deg) scale(1);
  }
  to{
    opacity:0;
    transform:translate(var(--dx),var(--dy)) rotate(var(--rot)) scale(.45);
  }
}

/* Mild battle presence, not permanent */
.carrierSpriteUnit.battleLocked .carrierSprite{
  filter:
    drop-shadow(0 0 4px rgba(85,235,255,.28))
    drop-shadow(0 0 10px rgba(55,190,255,.10))!important;
}

/* PWA / accessibility performance guard */
@media (prefers-reduced-motion: reduce){
  .npc.combatTarget::after,
  .muzzleFlash,
  .laserImpact,
  .npcShieldImpact,
  .npcHullSpark,
  .shipExplosion,
  .shipDebris{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
  }
}


/* ==========================================================
   V6.8.1 — STRONGER PWA VISUAL UPGRADE
   ========================================================== */

/* Carrier gets clear metallic depth and energy presence. */
.carrierSprite{
  filter:
    drop-shadow(0 2px 2px rgba(0,0,0,.88))
    drop-shadow(0 0 3px rgba(133,255,150,.42))
    drop-shadow(0 0 9px rgba(58,255,91,.20))!important;
}

.carrierSpriteUnit.moving .carrierSprite{
  filter:
    drop-shadow(0 3px 3px rgba(0,0,0,.90))
    drop-shadow(0 0 5px rgba(124,255,145,.58))
    drop-shadow(0 0 13px rgba(62,255,97,.28))!important;
}

.carrierSpriteUnit.carrierSelected::before{
  content:"";
  position:absolute;
  z-index:24;
  left:50%;
  top:50%;
  width:118%;
  height:118%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:1px solid rgba(102,235,255,.68);
  box-shadow:
    0 0 9px rgba(81,224,255,.45),
    inset 0 0 8px rgba(81,224,255,.12);
  pointer-events:none;
  animation:carrierSelectedV681 1.3s ease-in-out infinite;
}

@keyframes carrierSelectedV681{
  0%,100%{opacity:.55;transform:translate(-50%,-50%) scale(.95)}
  50%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}
}

/* Make engine overlays visually obvious but still PWA-light. */
.carrierEngineOverlay{
  filter:
    brightness(1.35)
    saturate(1.2)
    drop-shadow(0 0 5px rgba(89,228,255,.72))!important;
}

.carrierSpriteUnit.moving .carrierEngineOverlay{
  opacity:calc(.36 + (var(--thrust) * .56))!important;
}

/* NPC ships gain stronger depth. */
.npcSprite{
  filter:
    drop-shadow(0 2px 2px rgba(0,0,0,.90))
    drop-shadow(0 0 5px currentColor)!important;
}

.npc.inBattle .npcSprite{
  filter:
    drop-shadow(0 2px 2px rgba(0,0,0,.92))
    drop-shadow(0 0 7px rgba(255,87,87,.72))
    drop-shadow(0 0 13px rgba(255,54,54,.24))!important;
}

/* Make battle lasers impossible to miss. */
.battleLaserPlayer,
.battleLaserEnemy{
  height:6px!important;
}

.battleLaserPlayer{
  box-shadow:
    0 0 5px rgba(96,255,148,1),
    0 0 12px rgba(80,255,135,.92),
    0 0 18px rgba(60,255,118,.48)!important;
}

.battleLaserEnemy{
  box-shadow:
    0 0 5px rgba(255,92,92,1),
    0 0 12px rgba(255,65,65,.88),
    0 0 18px rgba(255,48,48,.46)!important;
}

/* Stronger shield readability. */
.carrierShieldImpact,
.npcShieldImpact{
  border-width:2px!important;
  box-shadow:
    0 0 10px rgba(90,231,255,.95),
    0 0 20px rgba(70,215,255,.42),
    inset 0 0 12px rgba(100,235,255,.30)!important;
}

/* Carrier info panel */
.carrierInfoPanel{
  position:fixed;
  z-index:1450;
  width:250px;
  padding:11px;
  box-sizing:border-box;
  border:1px solid rgba(83,227,255,.42);
  background:rgba(2,10,16,.97);
  box-shadow:0 0 22px rgba(52,208,255,.14);
  color:#eafbff;
  pointer-events:auto;
}

.carrierInfoHead{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  padding-bottom:8px;
  border-bottom:1px solid rgba(85,225,255,.12);
}

.carrierInfoHead span{
  display:block;
  color:#73eaff;
  font:700 7px/1 system-ui;
  letter-spacing:.14em;
}

.carrierInfoHead b{
  display:block;
  margin-top:4px;
  color:#fff;
  font:800 12px/1 system-ui;
}

#carrierInfoClose{
  border:0;
  background:transparent;
  color:#8ba8b0;
  font-size:18px;
  cursor:pointer;
}

.carrierInfoGrid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  margin-top:9px;
}

.carrierInfoGrid div{
  padding:7px;
  border:1px solid rgba(90,225,255,.12);
  background:rgba(4,20,28,.72);
}

.carrierInfoGrid span,
.carrierInfoStatus span{
  display:block;
  color:#7698a2;
  font:700 6px/1 system-ui;
  letter-spacing:.10em;
}

.carrierInfoGrid b,
.carrierInfoStatus b{
  display:block;
  margin-top:4px;
  color:#eaffff;
  font:800 9px/1 system-ui;
}

.carrierInfoLabel{
  display:flex;
  justify-content:space-between;
  margin-top:9px;
  color:#79ebff;
  font:700 6px/1 system-ui;
}

.carrierInfoLabel.hull{
  color:#ff8d8d;
}

.carrierInfoBar{
  height:6px;
  margin-top:4px;
  background:rgba(255,255,255,.08);
  overflow:hidden;
}

.carrierInfoBar i{
  display:block;
  height:100%;
  width:100%;
  background:linear-gradient(90deg,#48cfff,#8af3ff);
  box-shadow:0 0 6px rgba(85,226,255,.44);
  transition:width .18s linear;
}

.carrierInfoBar.hull i{
  background:linear-gradient(90deg,#ff5555,#ff8a75);
  box-shadow:0 0 6px rgba(255,86,72,.36);
}

.carrierInfoStatus{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-top:10px;
  padding-top:8px;
  border-top:1px solid rgba(85,225,255,.12);
}

#carrierInfoStatus{
  color:#8dffad;
  text-align:right;
}

@media(max-width:500px){
  .carrierInfoPanel{
    width:220px;
  }
}


/* ==========================================================
   V6.8.4 — FULL ATTACK + FIGHTER DRONE SUPPORT
   ========================================================== */

.npcCombatActions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:6px!important;
}

#fullAttackBtn{
  grid-column:1 / -1;
  height:31px!important;
  border:1px solid rgba(255,197,78,.48)!important;
  background:
    linear-gradient(180deg,rgba(49,29,6,.94),rgba(24,13,3,.96))!important;
  color:#ffd477!important;
  box-shadow:
    inset 0 0 8px rgba(255,185,61,.08),
    0 0 8px rgba(255,178,50,.07);
}

/* Visible fighter drone representation */
.combatFighterDrone{
  position:fixed;
  z-index:1325;
  width:12px;
  height:9px;
  margin-left:-6px;
  margin-top:-4px;
  pointer-events:none;

  clip-path:polygon(
    50% 0%,
    62% 30%,
    100% 48%,
    66% 62%,
    56% 100%,
    44% 100%,
    34% 62%,
    0% 48%,
    38% 30%
  );

  background:
    linear-gradient(180deg,#d9fff1 0%,#72ffae 20%,#16482d 60%,#07120d 100%);

  box-shadow:
    0 0 4px rgba(95,255,158,.86),
    0 2px 3px rgba(0,0,0,.85);

  transition:
    left .12s linear,
    top .12s linear;
}

.combatFighterDrone i{
  position:absolute;
  left:50%;
  bottom:0;
  width:3px;
  height:4px;
  transform:translateX(-50%);
  background:#86eaff;
  box-shadow:0 0 5px #61ddff;
}

.droneLaser{
  position:fixed;
  z-index:1328;
  height:2px;
  transform-origin:0 50%;
  pointer-events:none;

  background:
    linear-gradient(90deg,#eafff3,#7cffae 40%,rgba(88,255,143,.08));

  box-shadow:
    0 0 4px rgba(91,255,145,.85);

  animation:droneLaserV684 .13s ease-out forwards;
}

@keyframes droneLaserV684{
  from{opacity:1}
  to{opacity:0}
}

@media(max-width:500px){
  .combatFighterDrone{
    width:10px;
    height:8px;
  }
}


/* ==========================================================
   V6.8.5 — COORDINATED DRONE ATTACK RUNS
   ========================================================== */

.combatFighterDrone{
  transition:
    left .90s cubic-bezier(.22,.61,.36,1),
    top .90s cubic-bezier(.22,.61,.36,1),
    transform .42s ease!important;
}

.combatFighterDrone[data-wing="alpha"]{
  transform:rotate(-8deg);
}
.combatFighterDrone[data-wing="bravo"]{
  transform:rotate(8deg);
}

.combatFighterDrone.attackRun{
  transform:scale(1.06) rotate(0deg);
  filter:
    drop-shadow(0 0 4px rgba(104,255,160,.82))
    drop-shadow(0 2px 2px rgba(0,0,0,.88));
}

/* Slight wing-leader distinction without clutter. */
.combatFighterDrone[data-slot="1"],
.combatFighterDrone[data-slot="4"]{
  box-shadow:
    0 0 5px rgba(102,255,160,.92),
    0 2px 3px rgba(0,0,0,.88);
}


/* ==========================================================
   V6.8.7 — REAL FIGHTER DRONE + DRIFTER SKINS
   ========================================================== */

.combatFighterDrone{
  width:30px!important;
  height:20px!important;
  margin-left:-15px!important;
  margin-top:-10px!important;
  clip-path:none!important;
  background:transparent!important;
  box-shadow:none!important;

  transition:
    left 1.35s cubic-bezier(.22,.61,.36,1),
    top 1.35s cubic-bezier(.22,.61,.36,1),
    transform .55s ease!important;
}

.combatFighterDrone img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  pointer-events:none;
  filter:
    drop-shadow(0 1px 2px rgba(0,0,0,.92))
    drop-shadow(0 0 3px rgba(74,255,123,.68));
}

.combatFighterDrone i{
  left:14%!important;
  bottom:28%!important;
  width:3px!important;
  height:3px!important;
  border-radius:50%;
  background:#88efff!important;
  box-shadow:
    0 0 4px #71e5ff,
    0 0 7px rgba(85,220,255,.6)!important;
}

.combatFighterDrone.attackRun img{
  filter:
    drop-shadow(0 1px 2px rgba(0,0,0,.94))
    drop-shadow(0 0 5px rgba(90,255,145,.88));
}

/* Neutral Drifter gets its own completely different silhouette. */
.npc.neutral .npcSprite.drifterRealSkin{
  width:86px!important;
  height:68px!important;
  top:-10px!important;
  object-fit:contain!important;
  filter:
    drop-shadow(0 2px 3px rgba(0,0,0,.92))
    drop-shadow(0 0 6px rgba(78,220,255,.48))!important;
}

.npc.neutral.selected .npcSprite.drifterRealSkin{
  filter:
    drop-shadow(0 2px 3px rgba(0,0,0,.92))
    drop-shadow(0 0 9px rgba(78,220,255,.76))!important;
}

@media(max-width:500px){
  .combatFighterDrone{
    width:26px!important;
    height:18px!important;
    margin-left:-13px!important;
    margin-top:-9px!important;
  }

  .npc.neutral .npcSprite.drifterRealSkin{
    width:76px!important;
    height:60px!important;
  }
}


/* ==========================================================
   V6.8.8 — DRIFTER FIX + SMART NPC + CLEANER DRONES
   ========================================================== */

.npc.drifterNpc .npcSprite.drifterRealSkin{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:92px!important;
  height:72px!important;
  object-fit:contain!important;
  filter:
    drop-shadow(0 3px 3px rgba(0,0,0,.95))
    drop-shadow(0 0 7px rgba(73,224,255,.62))!important;
}

/* Cleaner drone rendering: use larger source texture and let browser downsample. */
.combatFighterDrone{
  width:34px!important;
  height:22px!important;
  margin-left:-17px!important;
  margin-top:-11px!important;
}

.combatFighterDrone img{
  image-rendering:auto!important;
  transform:translateZ(0);
  backface-visibility:hidden;
  filter:
    contrast(1.06)
    saturate(1.08)
    drop-shadow(0 1px 2px rgba(0,0,0,.94))
    drop-shadow(0 0 4px rgba(78,255,132,.66))!important;
}

/* Autonomous ambient NPC */
.smartNpcV688{
  position:fixed;
  z-index:22;
  width:78px;
  height:58px;
  transform:translate(-50%,-50%);
  pointer-events:none;
  will-change:left,top;
}

.smartNpcV688 img{
  width:100%;
  height:100%;
  object-fit:contain;
  filter:
    drop-shadow(0 3px 3px rgba(0,0,0,.92))
    drop-shadow(0 0 6px rgba(79,224,255,.46));
}

.smartNpcV688::after{
  content:"";
  position:absolute;
  left:15%;
  top:47%;
  width:13px;
  height:4px;
  border-radius:50%;
  background:rgba(95,225,255,.70);
  box-shadow:
    0 0 5px rgba(87,221,255,.86),
    0 0 10px rgba(75,208,255,.34);
  opacity:.72;
}

.smartNpcV688.smartNpcIdle::after{
  opacity:.18;
}

.smartNpcTag{
  position:absolute;
  left:50%;
  top:54px;
  transform:translateX(-50%);
  width:90px;
  text-align:center;
  white-space:nowrap;
  text-shadow:0 1px 2px #000;
}

.smartNpcTag b{
  display:block;
  color:#b8f6ff;
  font:800 6px/1 system-ui;
  letter-spacing:.08em;
}

.smartNpcTag span{
  display:block;
  margin-top:3px;
  color:#6d9ca5;
  font:700 5px/1 system-ui;
}

@media(max-width:500px){
  .smartNpcV688{
    width:66px;
    height:50px;
  }
  .smartNpcTag{top:47px}
}


/* ==========================================================
   V6.8.9 — ACTUAL NPC SMART FLIGHT
   ========================================================== */

/* Hide/remove old standalone Smart NPC if an older DOM copy somehow exists. */
#smartNpcV688,
.smartNpcV688{
  display:none!important;
}

.npc.smartFlying{
  will-change:left,top;
}

.npc.smartFlying .npcSprite{
  transition:
    transform .45s ease,
    filter .25s ease!important;
}

.npc.smartNpcIdle .npcSprite{
  opacity:.88!important;
}

/* Hostile AI gets a faint propulsion presence while roaming. */
.npc:not(.neutral).smartFlying:not(.smartNpcIdle)::before{
  content:"";
  position:absolute;
  left:24%;
  top:35%;
  width:12px;
  height:3px;
  border-radius:50%;
  background:rgba(255,91,76,.36);
  box-shadow:0 0 5px rgba(255,70,62,.42);
  pointer-events:none;
}

/* Drifter propulsion uses cool cyan. */
.npc.neutral.smartFlying:not(.smartNpcIdle)::before{
  content:"";
  position:absolute;
  left:24%;
  top:35%;
  width:12px;
  height:3px;
  border-radius:50%;
  background:rgba(95,226,255,.40);
  box-shadow:0 0 5px rgba(80,215,255,.46);
  pointer-events:none;
}


/* ==========================================================
   V6.9.1 — CLEAN NPC / DRONE VISUALS
   ========================================================== */

.npc .verifiedNpcSprite{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  object-fit:contain!important;
  image-rendering:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

.npc.cleanRaider{
  width:118px!important;
  height:88px!important;
}
.npc.cleanRaider .verifiedNpcSprite{
  width:100px!important;
  height:70px!important;
  top:-7px!important;
  filter:
    drop-shadow(0 4px 4px rgba(0,0,0,.96))
    drop-shadow(0 0 7px rgba(255,77,69,.70))
    drop-shadow(0 0 14px rgba(255,49,44,.21))!important;
}

/* Level 14 still reads heavier without changing the actual clean artwork. */
.npc.cleanRaider[data-level="14"]{
  width:138px!important;
  height:102px!important;
}
.npc.cleanRaider[data-level="14"] .verifiedNpcSprite{
  width:118px!important;
  height:84px!important;
  top:-11px!important;
  filter:
    drop-shadow(0 5px 5px rgba(0,0,0,.97))
    drop-shadow(0 0 9px rgba(255,73,64,.83))
    drop-shadow(0 0 18px rgba(255,42,38,.27))!important;
}

/* Fighter drones: actual ship only, no CSS polygon/card. */
.combatFighterDrone{
  width:42px!important;
  height:28px!important;
  margin-left:-21px!important;
  margin-top:-14px!important;
  clip-path:none!important;
  background:transparent!important;
  box-shadow:none!important;
}

.combatFighterDrone img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  image-rendering:auto!important;
  background:transparent!important;
  filter:
    drop-shadow(0 2px 2px rgba(0,0,0,.95))
    drop-shadow(0 0 5px rgba(78,172,255,.72))!important;
}

/* Remove any old card-like borders/backgrounds from NPC sprite wrappers. */
.npc.cleanRaider::after,
.npc.cleanDrifter::after{
  background:transparent!important;
}

/* V6.9.2 — STARTUP / CREDIT HUD FIX */
.npc{transform:translate(-50%,-50%)}
.npcPatrol,.npc.npcPatrol{transition:none!important}
.legacyCreditHudV692{display:none!important}

.creditHudV692{
  position:fixed;
  top:10px;
  right:12px;
  z-index:1400;
  min-width:88px;
  height:34px;
  padding:0 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:1px solid rgba(90,225,255,.24);
  border-radius:8px;
  background:rgba(3,13,18,.90);
  box-shadow:0 4px 12px rgba(0,0,0,.24);
  color:#f5fdff;
}
.creditHudV692 span{
  color:#ffd45f;
  font:900 16px/1 system-ui;
}
.creditHudV692 b{
  color:#f5fdff;
  font:800 12px/1 system-ui;
  letter-spacing:.03em;
}


/* ==========================================================
   V6.9.3 — TOP LEFT PLAYER / CREDITS / MENU TAB DOCK
   ========================================================== */

.legacyTopHudV693{
  display:none!important;
}

.topLeftTabsV693{
  position:fixed;
  top:10px;
  left:10px;
  z-index:1500;

  width:88px;

  display:flex;
  flex-direction:column;
  gap:5px;

  pointer-events:auto;
}

.topLeftTabsV693 button{
  height:35px;
  padding:0 8px;

  display:flex;
  align-items:center;
  gap:7px;

  border:1px solid rgba(91,224,255,.20);
  border-radius:7px;

  background:rgba(3,14,20,.88);

  color:#cfeef5;
  cursor:pointer;

  box-shadow:
    0 3px 10px rgba(0,0,0,.18),
    inset 0 0 7px rgba(64,211,255,.02);
}

.topLeftTabsV693 button.active{
  border-color:rgba(91,230,255,.55);
  background:rgba(5,26,35,.96);

  box-shadow:
    0 0 10px rgba(62,213,255,.12),
    inset 0 0 8px rgba(65,220,255,.06);
}

.topLeftTabsV693 .tabIcon{
  width:16px;
  color:#6cecff;

  font:900 12px/1 system-ui;
  text-align:center;
}

.topLeftTabsV693 button[data-tab="credits"] .tabIcon{
  color:#ffd65f;
}

.topLeftTabsV693 b{
  color:#eafcff;
  font:800 7px/1 system-ui;
  letter-spacing:.08em;
}

.topLeftPanelV693{
  position:fixed;
  top:10px;
  left:106px;
  z-index:1495;

  width:220px;
  padding:10px;

  border:1px solid rgba(89,225,255,.25);
  border-radius:8px;

  background:rgba(2,12,18,.96);

  box-shadow:
    0 5px 18px rgba(0,0,0,.28),
    0 0 12px rgba(58,210,255,.06);

  color:#eafaff;

  pointer-events:auto;
}

.topLeftPanelV693.hidden{
  display:none!important;
}

.topPanelHeading{
  padding-bottom:8px;
  margin-bottom:8px;

  border-bottom:1px solid rgba(87,220,255,.12);
}

.topPanelHeading span{
  display:block;

  color:#6cecff;
  font:700 6px/1 system-ui;
  letter-spacing:.14em;
}

.topPanelHeading b{
  display:block;
  margin-top:4px;

  color:#fff;
  font:900 13px/1 system-ui;
  letter-spacing:.06em;
}

.topPanelLevel{
  margin-bottom:8px;

  color:#88aab3;
  font:700 7px/1 system-ui;
  letter-spacing:.08em;
}

.topPanelLevel strong{
  color:#72efff;
}

.topPanelStat{
  display:flex;
  align-items:center;
  justify-content:space-between;

  min-height:28px;
  padding:0 7px;
  margin-top:5px;

  border:1px solid rgba(88,220,255,.09);
  border-radius:5px;

  background:rgba(7,27,35,.55);
}

.topPanelStat span{
  color:#7fa1aa;
  font:700 6px/1 system-ui;
}

.topPanelStat b{
  color:#e9fbff;
  font:800 7px/1 system-ui;
}

.topCreditAmount{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;

  min-height:52px;
}

.topCreditAmount span{
  color:#ffd55c;
  font:900 22px/1 system-ui;
}

.topCreditAmount b{
  color:#f5fdff;
  font:900 20px/1 system-ui;
}

/* Existing menu becomes part of the top-left section. */
.menuDrop{
  z-index:1490!important;
}

/* Carrier first frame must look exactly like its rest state. */
#carrier,
.carrier{
  --startup-rest-dir:E;
}

@media(max-width:500px){
  .topLeftTabsV693{
    width:80px;
    top:8px;
    left:8px;
  }

  .topLeftPanelV693{
    left:94px;
    top:8px;
    width:205px;
  }

  .topLeftTabsV693 button{
    height:34px;
  }
}


/* ==========================================================
   V6.9.4 — ORIGINAL DRIFTER VISUAL RESTORE
   ========================================================== */
.npc.neutral .npcSprite,
.npc .npcSprite.trader{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:88px!important;
  height:66px!important;
  top:-8px!important;
  object-fit:contain!important;
  image-rendering:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:
    drop-shadow(0 2px 2px rgba(0,0,0,.92))
    drop-shadow(0 0 4px rgba(90,225,255,.38))
    drop-shadow(0 0 8px rgba(74,204,255,.12))!important;
}


/* ==========================================================
   V6.9.5 — AUTHORITATIVE DRIFTER VISUAL
   ========================================================== */
.npc.drifterV695{
  width:104px!important;
  height:82px!important;
}

.npc.drifterV695 .npcSprite.drifterRestoredV695{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;

  width:88px!important;
  height:66px!important;

  position:absolute!important;
  left:50%!important;
  top:0!important;

  object-fit:contain!important;
  image-rendering:auto!important;

  background:transparent!important;
  border:0!important;
  box-shadow:none!important;

  filter:
    drop-shadow(0 3px 3px rgba(0,0,0,.94))
    drop-shadow(0 0 5px rgba(81,222,255,.48))!important;
}


/* ==========================================================
   V6.10.3 — FINAL SINGLE-SOURCE DRIFTER SYSTEM
   ========================================================== */
.npc.drifterFinal,
.npc.neutral[data-type="drifter"]{
  width:112px!important;
  height:86px!important;
  overflow:visible!important;
}

.npc.drifterFinal .npcSprite.drifterCleanFinal,
.npc.neutral[data-type="drifter"] .npcSprite{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;

  position:absolute!important;
  left:50%!important;
  top:-11px!important;

  width:96px!important;
  height:70px!important;

  object-fit:contain!important;
  image-rendering:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;

  transform:translateX(-50%)!important;
  transform-origin:50% 50%!important;

  transition:
    transform .38s ease,
    filter .25s ease!important;

  filter:
    drop-shadow(0 3px 3px rgba(0,0,0,.95))
    drop-shadow(0 0 6px rgba(72,205,255,.50))!important;
}

.npc.drifterFinal.smartFlying:not(.smartNpcIdle)::before,
.npc.neutral[data-type="drifter"].smartFlying:not(.smartNpcIdle)::before{
  content:"";
  position:absolute;
  left:22%;
  top:38%;
  width:16px;
  height:4px;
  border-radius:50%;
  background:linear-gradient(90deg,transparent,rgba(84,221,255,.78));
  box-shadow:0 0 6px rgba(72,213,255,.70);
  pointer-events:none;
}


/* ==========================================================
   V6.10.4 — HEAVY SIDE-FACING NPC FLIGHT
   Player-ship-inspired presentation.
   ========================================================== */

/*
  IMPORTANT:
  NPC WORLD MOTION is still free-form.
  Only the SPRITE presentation is restricted to LEFT / RIGHT.
*/

.npc .npcSideFlightSprite{
  image-rendering:auto!important;
  backface-visibility:hidden!important;
  transform-origin:50% 52%!important;

  transition:
    transform .34s cubic-bezier(.22,.61,.36,1),
    filter .28s ease!important;
}

/* Face right: normal side art. */
.npc.npcFacingRight .npcSideFlightSprite{
  transform:
    translateX(-50%)
    scaleX(1)
    rotate(var(--npc-bank,0deg))!important;
}

/* Face left: mirror the SAME artwork, keeping art quality/perspective identical. */
.npc.npcFacingLeft .npcSideFlightSprite{
  transform:
    translateX(-50%)
    scaleX(-1)
    rotate(calc(var(--npc-bank,0deg) * -1))!important;
}

/* Shared physical depth closer to the Carrier presentation. */
.npc:not(.neutral) .npcSideFlightSprite{
  filter:
    drop-shadow(0 3px 3px rgba(0,0,0,.94))
    drop-shadow(0 0 4px rgba(255,92,78,.48))
    drop-shadow(0 0 10px rgba(255,62,54,.15))!important;
}

.npc.neutral .npcSideFlightSprite,
.npc.drifterFinal .npcSideFlightSprite{
  filter:
    drop-shadow(0 3px 3px rgba(0,0,0,.94))
    drop-shadow(0 0 4px rgba(88,221,255,.48))
    drop-shadow(0 0 10px rgba(68,201,255,.15))!important;
}

/* Slightly heavier presence while actually moving. */
.npc.smartFlying:not(.smartNpcIdle) .npcSideFlightSprite{
  filter:
    drop-shadow(0 4px 4px rgba(0,0,0,.96))
    drop-shadow(0 0 6px currentColor)
    brightness(1.04)!important;
}

/*
  Engine trail sits BEHIND whichever way the ship faces.
  No engine glow popping above/below the ship anymore.
*/
.npc.smartFlying:not(.smartNpcIdle)::before{
  content:""!important;
  position:absolute!important;
  z-index:2!important;

  top:31%!important;
  width:21px!important;
  height:5px!important;
  border-radius:50%!important;

  pointer-events:none!important;

  transition:
    left .25s ease,
    right .25s ease,
    opacity .20s ease!important;
}

.npc:not(.neutral).smartFlying:not(.smartNpcIdle)::before{
  background:
    linear-gradient(90deg,
      rgba(255,75,59,0),
      rgba(255,104,77,.74))!important;
  box-shadow:
    0 0 5px rgba(255,79,62,.75),
    0 0 10px rgba(255,57,48,.23)!important;
}

.npc.neutral.smartFlying:not(.smartNpcIdle)::before{
  background:
    linear-gradient(90deg,
      rgba(80,213,255,0),
      rgba(105,235,255,.74))!important;
  box-shadow:
    0 0 5px rgba(82,219,255,.74),
    0 0 10px rgba(60,198,255,.23)!important;
}

/* RIGHT-facing ship: exhaust behind it on the LEFT. */
.npc.npcFacingRight.smartFlying:not(.smartNpcIdle)::before{
  left:4%!important;
  right:auto!important;
  transform:none!important;
}

/* LEFT-facing ship: exhaust behind it on the RIGHT, mirrored. */
.npc.npcFacingLeft.smartFlying:not(.smartNpcIdle)::before{
  right:4%!important;
  left:auto!important;
  transform:scaleX(-1)!important;
}

/* Natural tiny flight float, like the Carrier — never a spin. */
.npc.smartFlying:not(.inBattle) .npcSideFlightSprite{
  animation:npcHeavyFlightFloatV6104 1.9s ease-in-out infinite alternate;
}

@keyframes npcHeavyFlightFloatV6104{
  from{margin-top:-.7px}
  to{margin-top:.7px}
}

/* Heavy LV14 Raider gets more visual mass, not a different perspective. */
.npc[data-level="14"] .npcSideFlightSprite{
  width:78px!important;
  height:56px!important;
}

.npc[data-level="14"]{
  width:94px!important;
  height:72px!important;
}

/* LV5 remains visibly lighter/smaller. */
.npc[data-level="5"] .npcSideFlightSprite{
  width:64px!important;
  height:46px!important;
}

/* Drifter size closer to map scale of the Carrier/NPC fleet. */
.npc.drifterFinal .npcSideFlightSprite{
  width:74px!important;
  height:54px!important;
  top:-4px!important;
}

@media(max-width:500px){
  .npc[data-level="14"] .npcSideFlightSprite{
    width:68px!important;
    height:50px!important;
  }

  .npc[data-level="5"] .npcSideFlightSprite{
    width:58px!important;
    height:42px!important;
  }

  .npc.drifterFinal .npcSideFlightSprite{
    width:66px!important;
    height:48px!important;
  }
}


/* ==========================================================
   V6.10.5 — ATTACHED ANIMATED NPC ENGINES
   ========================================================== */

/* Remove the old detached red/cyan speck entirely. */
.npc.smartFlying::before,
.npc.smartFlying:not(.smartNpcIdle)::before,
.npc:not(.neutral).smartFlying:not(.smartNpcIdle)::before,
.npc.neutral.smartFlying:not(.smartNpcIdle)::before{
  content:none!important;
  display:none!important;
}

/* Animated exhaust is physically anchored to the rear of the ship wrapper. */
.npc.npcThrusting::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:0!important;
  pointer-events:none!important;

  top:35%!important;
  width:28px!important;
  height:7px!important;
  border-radius:60% 8% 8% 60%!important;

  opacity:.92!important;
  transform-origin:center!important;

  animation:npcEnginePulseV6105 .22s ease-in-out infinite alternate!important;
}

/* Facing RIGHT -> exhaust comes from left/rear side. */
.npc.npcFacingRight.npcThrusting::after{
  left:11px!important;
  right:auto!important;
  transform:translateX(-92%) scaleX(1)!important;
}

/* Facing LEFT -> exhaust comes from right/rear side. */
.npc.npcFacingLeft.npcThrusting::after{
  right:11px!important;
  left:auto!important;
  transform:translateX(92%) scaleX(-1)!important;
}

/* Raider engine flame */
.npc:not(.neutral).npcThrusting::after{
  background:linear-gradient(
    90deg,
    rgba(255,45,25,0) 0%,
    rgba(255,64,34,.20) 22%,
    rgba(255,101,56,.78) 62%,
    rgba(255,216,170,.98) 100%
  )!important;

  box-shadow:
    0 0 4px rgba(255,114,66,.96),
    0 0 8px rgba(255,75,42,.72),
    0 0 14px rgba(255,51,30,.28)!important;
}

/* Drifter engine flame */
.npc.neutral.npcThrusting::after,
.npc.drifterFinal.npcThrusting::after{
  background:linear-gradient(
    90deg,
    rgba(63,193,255,0) 0%,
    rgba(72,205,255,.20) 22%,
    rgba(103,228,255,.78) 62%,
    rgba(220,252,255,.98) 100%
  )!important;

  box-shadow:
    0 0 4px rgba(103,233,255,.96),
    0 0 8px rgba(73,209,255,.70),
    0 0 14px rgba(54,180,255,.27)!important;
}

/* Flicker + length change makes thrust look alive. */
@keyframes npcEnginePulseV6105{
  from{
    opacity:.62;
    width:22px;
    filter:brightness(.88);
  }
  to{
    opacity:1;
    width:32px;
    filter:brightness(1.30);
  }
}

/* Engine should be completely off when the ship isn't actively traveling. */
.npc.smartNpcIdle::after,
.npc.inBattle::after,
.npc.destroyed::after,
.npc:not(.npcThrusting)::after{
  content:none!important;
  display:none!important;
}

/* Add rear-side bloom directly to the ship itself while thrusting. */
.npc.npcFacingRight.npcThrusting .npcSideFlightSprite{
  filter:
    drop-shadow(-4px 0 4px rgba(255,91,57,.25))
    drop-shadow(0 3px 3px rgba(0,0,0,.94))
    drop-shadow(0 0 5px rgba(255,92,76,.35))!important;
}
.npc.npcFacingLeft.npcThrusting .npcSideFlightSprite{
  filter:
    drop-shadow(4px 0 4px rgba(255,91,57,.25))
    drop-shadow(0 3px 3px rgba(0,0,0,.94))
    drop-shadow(0 0 5px rgba(255,92,76,.35))!important;
}

.npc.neutral.npcFacingRight.npcThrusting .npcSideFlightSprite,
.npc.drifterFinal.npcFacingRight.npcThrusting .npcSideFlightSprite{
  filter:
    drop-shadow(-4px 0 4px rgba(82,217,255,.28))
    drop-shadow(0 3px 3px rgba(0,0,0,.94))
    drop-shadow(0 0 5px rgba(83,221,255,.36))!important;
}
.npc.neutral.npcFacingLeft.npcThrusting .npcSideFlightSprite,
.npc.drifterFinal.npcFacingLeft.npcThrusting .npcSideFlightSprite{
  filter:
    drop-shadow(4px 0 4px rgba(82,217,255,.28))
    drop-shadow(0 3px 3px rgba(0,0,0,.94))
    drop-shadow(0 0 5px rgba(83,221,255,.36))!important;
}

@media (prefers-reduced-motion: reduce){
  .npc.npcThrusting::after{
    animation:none!important;
  }
}


/* ==========================================================
   V6.10.6 — NPC ENGINE EFFECTS REMOVED COMPLETELY
   ========================================================== */
.npc::before,
.npc::after,
.npc.smartFlying::before,
.npc.smartFlying::after,
.npc.npcThrusting::before,
.npc.npcThrusting::after{
  content:none!important;
  display:none!important;
  background:none!important;
  box-shadow:none!important;
  animation:none!important;
}

/* Remove rear engine bloom from NPC ship sprites. */
.npc .npcSideFlightSprite,
.npc.smartFlying .npcSideFlightSprite,
.npc.npcFacingLeft .npcSideFlightSprite,
.npc.npcFacingRight .npcSideFlightSprite{
  filter:
    drop-shadow(0 3px 3px rgba(0,0,0,.94))
    drop-shadow(0 0 4px rgba(255,90,75,.24))!important;
}

.npc.neutral .npcSideFlightSprite,
.npc.drifterFinal .npcSideFlightSprite{
  filter:
    drop-shadow(0 3px 3px rgba(0,0,0,.94))
    drop-shadow(0 0 4px rgba(85,220,255,.24))!important;
}


/* ==========================================================
   V6.10.6 — CLEAN PLAYER FIGHTER DRONE SKIN
   ========================================================== */
.combatFighterDrone{
  width:44px!important;
  height:30px!important;
  margin-left:-22px!important;
  margin-top:-15px!important;

  background:transparent!important;
  border:0!important;
  clip-path:none!important;
  box-shadow:none!important;
}

.combatFighterDrone img.playerFighterDroneSkinV6106,
.combatFighterDrone img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;

  background:transparent!important;
  border:0!important;
  box-shadow:none!important;

  image-rendering:auto!important;
  transform:translateZ(0);
  backface-visibility:hidden;

  filter:
    drop-shadow(0 2px 2px rgba(0,0,0,.94))
    drop-shadow(0 0 4px rgba(74,255,128,.50))!important;
}

/* Keep the little blue engine dot off — artwork itself carries the ship visual. */
.combatFighterDrone i{
  display:none!important;
}


/* ==========================================================
   V6.10.7 — BLACK / BLUE FIGHTER DRONE VISUAL
   ========================================================== */
.combatFighterDrone{
  width:48px!important;
  height:32px!important;
  margin-left:-24px!important;
  margin-top:-16px!important;

  background:transparent!important;
  border:0!important;
  clip-path:none!important;
  box-shadow:none!important;
}

.combatFighterDrone img.fighterDroneBlackBlueV6107,
.combatFighterDrone img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;

  background:transparent!important;
  border:0!important;
  box-shadow:none!important;

  image-rendering:auto!important;
  backface-visibility:hidden!important;
  transform:translateZ(0);

  filter:
    drop-shadow(0 2px 2px rgba(0,0,0,.96))
    drop-shadow(0 0 4px rgba(69,163,255,.72))
    drop-shadow(0 0 8px rgba(45,128,255,.22))!important;
}

/* Artwork already contains blue engine light; no extra CSS engine dot. */
.combatFighterDrone i{
  display:none!important;
}

/* V6.10.8 — REQUESTED: tiny Fighter Drones */
.combatFighterDrone{
  width:20px!important;
  height:14px!important;
  margin-left:-10px!important;
  margin-top:-7px!important;
}

/* V6.10.9 — requested drone scale only */
.combatFighterDrone{
  width:16px!important;
  height:11px!important;
  margin-left:-8px!important;
  margin-top:-5.5px!important;
}

/* V6.10.9 — visible Fighter Drone weapons */
.droneLaserVisibleV6109{
  height:2px!important;
  border-radius:2px!important;
  background:linear-gradient(90deg,#efffff 0%,#6be7ff 20%,#38a9ff 68%,rgba(48,146,255,0) 100%)!important;
  box-shadow:
    0 0 3px rgba(221,252,255,.98),
    0 0 7px rgba(73,190,255,.88),
    0 0 11px rgba(46,129,255,.40)!important;
  animation:droneLaserVisibleV6109 .23s ease-out forwards!important;
}
.droneMuzzleV6109{
  position:fixed;
  z-index:1330;
  width:5px;
  height:5px;
  margin-left:-2.5px;
  margin-top:-2.5px;
  border-radius:50%;
  pointer-events:none;
  background:#eaffff;
  box-shadow:0 0 5px #83eaff,0 0 10px rgba(54,151,255,.9);
  animation:droneMuzzleV6109 .11s ease-out forwards;
}
@keyframes droneLaserVisibleV6109{from{opacity:1}to{opacity:0}}
@keyframes droneMuzzleV6109{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2.1)}}

/* ==========================================================
   V6.10.9 — MODERN TOP-LEFT COMMAND DOCK
   ========================================================== */
.topLeftTabsV693{
  width:108px!important;
  gap:6px!important;
}
.topLeftTabsV693 button{
  height:42px!important;
  padding:0 10px!important;
  gap:9px!important;
  border-radius:10px!important;
  border-color:rgba(92,221,255,.22)!important;
  background:
    linear-gradient(135deg,rgba(8,28,38,.96),rgba(2,13,20,.92))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 5px 14px rgba(0,0,0,.24)!important;
}
.topLeftTabsV693 button:hover,
.topLeftTabsV693 button.active{
  transform:translateX(2px);
  border-color:rgba(99,230,255,.58)!important;
  background:
    linear-gradient(135deg,rgba(10,42,54,.98),rgba(3,19,28,.96))!important;
}
.topLeftTabsV693 .tabIcon{
  width:18px!important;
  font-size:13px!important;
  text-shadow:0 0 8px rgba(90,225,255,.45);
}
.topLeftTabsV693 .tabCopy{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:3px;
}
.topLeftTabsV693 .tabCopy b{
  font:900 7px/1 system-ui!important;
  letter-spacing:.10em!important;
}
.topLeftTabsV693 .tabCopy small{
  color:#688c96;
  font:700 5px/1 system-ui;
  letter-spacing:.11em;
}
.topLeftPanelV693{
  left:128px!important;
  width:248px!important;
  padding:8px!important;
  border-radius:12px!important;
  background:
    linear-gradient(145deg,rgba(4,19,27,.985),rgba(1,10,16,.985))!important;
  box-shadow:
    0 12px 30px rgba(0,0,0,.42),
    0 0 18px rgba(54,196,255,.07)!important;
}
.modernPlayerCardV6109,.modernCreditsCardV6109{
  padding:7px;
}
.modernIdentityV6109{
  display:flex;align-items:center;gap:10px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(99,224,255,.10);
}
.modernAvatarV6109{
  width:38px;height:38px;border-radius:10px;
  display:grid;place-items:center;
  border:1px solid rgba(90,229,255,.35);
  background:radial-gradient(circle at 35% 30%,rgba(80,229,255,.25),rgba(4,26,35,.95) 65%);
  color:#dffcff;font:900 16px/1 system-ui;
  box-shadow:inset 0 0 14px rgba(61,218,255,.08),0 0 12px rgba(51,203,255,.08);
}
.modernIdentityV6109 div:last-child{display:flex;flex-direction:column;gap:3px}
.modernIdentityV6109 span,.modernPowerV6109 span,.modernBarRowV6109 span,
.modernCreditsTopV6109 span,.creditStatusV6109 span{
  color:#6f98a3;font:800 5px/1 system-ui;letter-spacing:.13em;
}
.modernIdentityV6109 b{color:#f2fdff;font:900 13px/1 system-ui;letter-spacing:.06em}
.modernIdentityV6109 small{color:#67e7ff;font:800 6px/1 system-ui;letter-spacing:.08em}
.modernPowerV6109{
  margin-top:8px;padding:9px 10px;border-radius:8px;
  display:flex;align-items:center;justify-content:space-between;
  background:rgba(12,42,53,.52);border:1px solid rgba(87,219,255,.09);
}
.modernPowerV6109 b{color:#fff;font:900 12px/1 system-ui}
.modernBarRowV6109{margin-top:9px}
.modernBarRowV6109>div{display:flex;justify-content:space-between;margin-bottom:5px}
.modernBarRowV6109 b{color:#c9f9ff;font:800 6px/1 system-ui}
.modernBarRowV6109 i{
  display:block;height:5px;border-radius:5px;overflow:hidden;background:rgba(255,255,255,.055);
}
.modernBarRowV6109 i em{
  display:block;height:100%;border-radius:inherit;
  background:linear-gradient(90deg,#35b7ff,#6deaff);
  box-shadow:0 0 7px rgba(71,202,255,.45);
}
.modernBarRowV6109.hull i em{
  background:linear-gradient(90deg,#3dc78d,#75efb7);
  box-shadow:0 0 7px rgba(72,222,157,.35);
}
.modernCreditsTopV6109{
  min-height:72px;display:flex;align-items:center;gap:13px;
  padding:8px 5px 12px;border-bottom:1px solid rgba(255,216,91,.10);
}
.creditCoinV6109{
  width:44px;height:44px;border-radius:50%;display:grid;place-items:center;
  color:#fff4bd;font:900 19px/1 system-ui;
  border:1px solid rgba(255,211,74,.48);
  background:radial-gradient(circle at 35% 30%,#b88719,#493006 68%);
  box-shadow:inset 0 0 12px rgba(255,221,101,.16),0 0 13px rgba(255,190,42,.10);
}
.modernCreditsTopV6109>div:last-child{display:flex;flex-direction:column;gap:4px}
.modernCreditsTopV6109 b{color:#fff7d1;font:900 20px/1 system-ui;letter-spacing:.03em}
.modernCreditsTopV6109 small{color:#806e3c;font:800 5px/1 system-ui;letter-spacing:.12em}
.creditStatusV6109{
  margin-top:8px;padding:8px 9px;border-radius:7px;
  display:flex;justify-content:space-between;
  background:rgba(40,35,12,.32);
}
.creditStatusV6109 b{color:#f4d36a;font:900 6px/1 system-ui;letter-spacing:.10em}
@media(max-width:500px){
  .topLeftTabsV693{width:98px!important}
  .topLeftPanelV693{left:114px!important;width:218px!important}
}


/* ==========================================================
   V6.11.0 — SLOW CARRIER DRONE LAUNCH / ORBIT / RETURN
   ========================================================== */

/* Normal drone position updates are intentionally slow and smooth. */
.combatFighterDrone{
  transition:
    left 2.4s cubic-bezier(.20,.62,.30,1),
    top 2.4s cubic-bezier(.20,.62,.30,1),
    opacity .65s ease,
    transform .65s ease!important;
}

/* Launching from the Carrier should be obvious, not instantaneous. */
.combatFighterDrone.droneLaunchingV6110{
  opacity:.92;
  transform:scale(.45);
}

/* Orbit is driven by small JS position steps; disable long positional transition
   only after they arrive so the circle stays smooth and slow. */
.combatFighterDrone.droneOrbitingV6110{
  transition:
    left .18s linear,
    top .18s linear,
    transform .18s linear!important;
}

/* Return trip is deliberately slow enough to watch them enter the Carrier. */
.combatFighterDrone.droneReturningV6110{
  transition:
    left 2.15s cubic-bezier(.32,0,.30,1),
    top 2.15s cubic-bezier(.32,0,.30,1),
    opacity 2.15s ease,
    transform 2.15s ease!important;
}


/* ==========================================================
   V6.11.3 — UNIFIED MODERN MENU / PANEL VISUAL LANGUAGE
   VISUAL-ONLY OVERRIDES. FUNCTIONALITY UNCHANGED.
   ========================================================== */

/* Existing center/dropdown menu */
.menuDrop{
  width:218px!important;
  padding:8px!important;
  gap:6px!important;

  border:1px solid rgba(88,222,255,.22)!important;
  border-radius:12px!important;

  background:
    linear-gradient(145deg,rgba(5,21,29,.985),rgba(1,10,16,.985))!important;

  box-shadow:
    0 14px 34px rgba(0,0,0,.45),
    0 0 18px rgba(60,205,255,.07)!important;
}

.menuDrop button{
  height:38px!important;
  padding:0 12px!important;

  border:1px solid rgba(83,214,255,.10)!important;
  border-radius:8px!important;

  background:
    linear-gradient(135deg,rgba(11,37,47,.72),rgba(4,20,28,.74))!important;

  color:#e9fbff!important;

  font:800 7px/1 system-ui!important;
  letter-spacing:.08em!important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025)!important;
}

.menuDrop button:hover{
  border-color:rgba(91,226,255,.42)!important;
  background:
    linear-gradient(135deg,rgba(14,51,63,.90),rgba(5,25,34,.90))!important;
}

/* Destination/map action panel */
.destinationMenu,
#destinationMenu,
.destinationPanel,
#destinationPanel,
.mapDestinationMenu,
#mapDestinationMenu{
  border:1px solid rgba(88,221,255,.22)!important;
  border-radius:12px!important;

  background:
    linear-gradient(145deg,rgba(4,20,28,.985),rgba(1,10,16,.985))!important;

  box-shadow:
    0 14px 34px rgba(0,0,0,.43),
    0 0 16px rgba(62,207,255,.06)!important;
}

/* NPC interaction / combat selection panel */
.npcPanel,
#npcPanel,
.npcCombatPanel,
#npcCombatPanel{
  border:1px solid rgba(255,89,78,.22)!important;
  border-radius:12px!important;

  background:
    linear-gradient(145deg,rgba(28,8,10,.985),rgba(8,4,7,.985))!important;

  box-shadow:
    0 14px 34px rgba(0,0,0,.46),
    0 0 17px rgba(255,65,53,.06)!important;
}

/* Carrier click/info panel */
.carrierInfoPanel{
  border-radius:12px!important;

  background:
    linear-gradient(145deg,rgba(5,22,30,.985),rgba(1,10,16,.985))!important;

  box-shadow:
    0 14px 34px rgba(0,0,0,.44),
    0 0 17px rgba(64,211,255,.07)!important;
}

/* Repair / destruction dialogs */
.repairPanel,
#repairPanel,
.repairDialog,
#repairDialog{
  border:1px solid rgba(255,153,74,.22)!important;
  border-radius:12px!important;

  background:
    linear-gradient(145deg,rgba(30,18,6,.985),rgba(9,7,4,.985))!important;

  box-shadow:
    0 14px 34px rgba(0,0,0,.45),
    0 0 17px rgba(255,146,56,.06)!important;
}

/* Generic action buttons inside modernized panels */
.destinationMenu button,
#destinationMenu button,
.destinationPanel button,
#destinationPanel button,
.mapDestinationMenu button,
#mapDestinationMenu button,
.npcPanel button,
#npcPanel button,
.npcCombatPanel button,
#npcCombatPanel button,
.carrierInfoPanel button,
.repairPanel button,
#repairPanel button,
.repairDialog button,
#repairDialog button{
  border-radius:8px!important;
}



/* ==========================================================
   V6.11.7 — TACTICAL MINI-MAP VISUAL OVERHAUL
   VISUAL ONLY. Mini-map behavior/click/warp logic unchanged.
   ========================================================== */

.miniMap{
  right:14px!important;
  bottom:66px!important;

  width:176px!important;
  height:142px!important;
  padding:7px!important;

  border:1px solid rgba(91,226,255,.30)!important;
  border-radius:12px!important;

  background:
    linear-gradient(145deg,rgba(5,22,30,.97),rgba(1,10,16,.96))!important;

  box-shadow:
    0 12px 28px rgba(0,0,0,.38),
    0 0 20px rgba(53,198,255,.08),
    inset 0 1px 0 rgba(255,255,255,.025)!important;

  overflow:hidden;
}

/* thin tactical light strip */
.miniMap::before{
  content:"";
  position:absolute;
  left:14px;
  right:14px;
  top:0;
  height:1px;

  background:linear-gradient(
    90deg,
    transparent,
    rgba(92,232,255,.62),
    transparent
  );

  opacity:.72;
}

.miniMapTitle{
  position:relative;
  z-index:4;

  height:23px!important;
  padding:0 3px!important;

  color:#72eaff!important;
  font:800 6px/1 system-ui!important;
  letter-spacing:.14em!important;
}

.miniMapTitle::before{
  content:"TACTICAL";
  margin-right:auto;

  color:#426c78;
  font:800 5px/1 system-ui;
  letter-spacing:.14em;
}

.miniMapTitle b{
  color:#dffbff!important;
  margin-left:8px;

  font:900 7px/1 system-ui!important;
  letter-spacing:.08em!important;
}

/* Radar field */
.miniMapField{
  position:relative!important;

  height:102px!important;

  border:1px solid rgba(95,225,255,.14)!important;
  border-radius:8px!important;

  overflow:hidden!important;

  background:
    linear-gradient(rgba(70,203,230,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(70,203,230,.055) 1px,transparent 1px),
    radial-gradient(circle at 50% 50%,
      rgba(69,208,236,.055) 0 1px,
      transparent 2px 23%,
      rgba(74,210,235,.055) 24% 24.8%,
      transparent 25% 47%,
      rgba(74,210,235,.045) 48% 48.8%,
      transparent 49% 72%,
      rgba(74,210,235,.035) 73% 73.8%,
      transparent 74%),
    radial-gradient(circle at 50% 50%,
      rgba(27,92,110,.24),
      rgba(2,10,15,.86) 74%)!important;

  background-size:
    17px 17px,
    17px 17px,
    100% 100%,
    100% 100%!important;

  box-shadow:
    inset 0 0 20px rgba(31,155,188,.07),
    inset 0 0 36px rgba(0,0,0,.30)!important;
}

/* Crosshair / radar center lines */
.miniMapField::before,
.miniMapField::after{
  content:"";
  position:absolute;
  z-index:1;
  pointer-events:none;

  background:rgba(83,218,242,.055);
}

.miniMapField::before{
  left:50%;
  top:0;
  width:1px;
  height:100%;
}

.miniMapField::after{
  left:0;
  top:50%;
  width:100%;
  height:1px;
}

/* Tactical blips */
.miniDot{
  z-index:5!important;

  width:6px!important;
  height:6px!important;

  border-radius:50%!important;

  border:1px solid rgba(255,255,255,.38)!important;

  transform:translate(-50%,-50%)!important;
}

.carrierDot{
  background:#72f8a3!important;

  border-color:#c7ffdc!important;

  box-shadow:
    0 0 4px #71ff9f,
    0 0 10px rgba(72,255,143,.68)!important;

  animation:miniCarrierPulseV6117 1.35s ease-in-out infinite alternate;
}

.hostileDot{
  background:#ff5c5c!important;
  border-color:#ffc1bd!important;

  box-shadow:
    0 0 4px #ff5656,
    0 0 9px rgba(255,65,65,.66)!important;
}

.neutralDot{
  background:#62dcff!important;
  border-color:#c7f7ff!important;

  box-shadow:
    0 0 4px #62deff,
    0 0 9px rgba(64,201,255,.58)!important;
}

/* target marker is now a tactical lock */
.miniTarget{
  z-index:6!important;

  width:13px!important;
  height:13px!important;

  border:1px solid rgba(255,211,92,.92)!important;
  border-radius:2px!important;

  background:transparent!important;

  box-shadow:
    0 0 7px rgba(255,210,80,.45),
    inset 0 0 5px rgba(255,210,80,.08)!important;

  transform:
    translate(-50%,-50%)
    rotate(45deg)!important;

  animation:miniTargetPulseV6117 .8s ease-in-out infinite alternate;
}

/* tiny corner targeting brackets */
.miniMapField{
  --corner:rgba(89,226,255,.34);
}

.miniMapField{
  outline:1px solid rgba(0,0,0,0);
}

@keyframes miniCarrierPulseV6117{
  from{
    transform:translate(-50%,-50%) scale(.92);
    opacity:.78;
  }
  to{
    transform:translate(-50%,-50%) scale(1.14);
    opacity:1;
  }
}

@keyframes miniTargetPulseV6117{
  from{
    opacity:.56;
    box-shadow:0 0 4px rgba(255,210,80,.28);
  }
  to{
    opacity:1;
    box-shadow:0 0 10px rgba(255,210,80,.65);
  }
}

/* compact on smaller PWA screens */
@media(max-width:500px){
  .miniMap{
    width:158px!important;
    height:130px!important;
    right:10px!important;
    bottom:62px!important;
  }

  .miniMapField{
    height:91px!important;
  }
}


/* ==========================================================
   V6.11.8 — MODERN MAP CLICK DESTINATION MENU
   VISUAL ONLY. FLY/WARP behavior unchanged.
   ========================================================== */

.mapActionPanel{
  min-width:220px!important;
  padding:10px!important;

  border:1px solid rgba(88,223,255,.26)!important;
  border-radius:12px!important;

  background:
    linear-gradient(145deg,rgba(5,22,30,.985),rgba(1,10,16,.985))!important;

  box-shadow:
    0 16px 36px rgba(0,0,0,.48),
    0 0 18px rgba(55,201,255,.08),
    inset 0 1px 0 rgba(255,255,255,.025)!important;

  overflow:hidden!important;
}

/* subtle top scan line */
.mapActionPanel::before{
  content:"";
  position:absolute;
  left:14px;
  right:14px;
  top:0;
  height:1px;

  background:
    linear-gradient(90deg,transparent,rgba(91,231,255,.62),transparent);

  opacity:.72;
  pointer-events:none;
}

/* Header / destination text */
.mapActionPanel .mapActionTitle,
.mapActionPanel h3,
.mapActionPanel strong:first-child{
  color:#eefcff!important;
  font:900 9px/1 system-ui!important;
  letter-spacing:.10em!important;
}

.mapActionPanel .mapActionSubtitle,
.mapActionPanel .mapActionCoords,
.mapActionPanel small{
  color:#6f9aa4!important;
  font:800 6px/1.35 system-ui!important;
  letter-spacing:.08em!important;
}

/* If coordinates are rendered as spans/bold values, sharpen them. */
.mapActionPanel b,
.mapActionPanel .coords,
.mapActionPanel .coord{
  color:#71eaff!important;
}

/* Action area */
.mapActionPanel button{
  min-height:38px!important;
  padding:0 12px!important;

  border-radius:8px!important;

  font:900 7px/1 system-ui!important;
  letter-spacing:.09em!important;

  transition:
    transform .15s ease,
    border-color .15s ease,
    background .15s ease,
    box-shadow .15s ease!important;
}

.mapActionPanel button:hover{
  transform:translateY(-1px);
}

/* FLY action */
.mapActionPanel button[data-action="fly"],
.mapActionPanel .flyBtn,
.mapActionPanel #flyBtn{
  border:1px solid rgba(87,224,255,.30)!important;

  background:
    linear-gradient(180deg,rgba(12,56,70,.92),rgba(5,27,36,.96))!important;

  color:#a9f4ff!important;

  box-shadow:
    inset 0 0 9px rgba(69,214,255,.05),
    0 0 10px rgba(54,196,255,.05)!important;
}

.mapActionPanel button[data-action="fly"]:hover,
.mapActionPanel .flyBtn:hover,
.mapActionPanel #flyBtn:hover{
  border-color:rgba(91,234,255,.58)!important;
  background:
    linear-gradient(180deg,rgba(15,71,88,.98),rgba(6,34,45,.98))!important;
}

/* WARP action */
.mapActionPanel button[data-action="warp"],
.mapActionPanel .warpActionBtn,
.mapActionPanel #warpActionBtn{
  border:1px solid rgba(255,203,82,.30)!important;

  background:
    linear-gradient(180deg,rgba(74,52,9,.94),rgba(30,21,4,.97))!important;

  color:#ffdc78!important;

  box-shadow:
    inset 0 0 9px rgba(255,204,72,.05),
    0 0 10px rgba(255,183,43,.05)!important;
}

.mapActionPanel button[data-action="warp"]:hover,
.mapActionPanel .warpActionBtn:hover,
.mapActionPanel #warpActionBtn:hover{
  border-color:rgba(255,211,91,.58)!important;
  background:
    linear-gradient(180deg,rgba(91,65,12,.98),rgba(39,27,5,.98))!important;
}

/* Cancel / close action stays quiet */
.mapActionPanel button[data-action="cancel"],
.mapActionPanel .cancelBtn,
.mapActionPanel .closeBtn{
  border:1px solid rgba(137,159,166,.15)!important;
  background:rgba(8,20,25,.62)!important;
  color:#7e9aa2!important;
}

/* Give stacked buttons consistent separation */
.mapActionPanel .mapActionButtons,
.mapActionPanel .actions,
.mapActionPanel .buttonRow{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:7px!important;
  margin-top:9px!important;
}

/* Compact on smaller screens */
@media(max-width:500px){
  .mapActionPanel{
    min-width:205px!important;
    padding:9px!important;
  }

  .mapActionPanel button{
    min-height:36px!important;
  }
}


/* ==========================================================
   V6.11.9 — SMALLER MAP CLICK MENU
   SIZE ONLY. Styling/functionality remains locked.
   ========================================================== */
.mapActionPanel{
  min-width:168px!important;
  width:168px!important;
  padding:7px!important;
  border-radius:10px!important;
}

.mapActionPanel button{
  min-height:30px!important;
  padding:0 8px!important;
  font-size:6px!important;
}

.mapActionPanel .mapActionButtons,
.mapActionPanel .actions,
.mapActionPanel .buttonRow{
  gap:5px!important;
  margin-top:6px!important;
}

.mapActionPanel .mapActionTitle,
.mapActionPanel h3,
.mapActionPanel strong:first-child{
  font-size:7px!important;
}

.mapActionPanel .mapActionSubtitle,
.mapActionPanel .mapActionCoords,
.mapActionPanel small{
  font-size:5px!important;
}

@media(max-width:500px){
  .mapActionPanel{
    min-width:158px!important;
    width:158px!important;
    padding:6px!important;
  }
}


/* ==========================================================
   V6.12.1 — DRONE COMBAT HUD
   ========================================================== */
.droneCombatHudV6121{
  position:fixed;
  left:50%;
  top:58px;
  transform:translateX(-50%);
  z-index:1510;

  width:250px;
  padding:9px 10px;

  border:1px solid rgba(75,180,255,.28);
  border-radius:11px;

  background:
    linear-gradient(145deg,rgba(5,19,31,.97),rgba(2,10,18,.97));

  box-shadow:
    0 12px 28px rgba(0,0,0,.38),
    0 0 16px rgba(59,147,255,.07);

  color:#eefaff;
  pointer-events:none;
}

.droneCombatHudV6121.hidden{
  display:none!important;
}

.droneHudTopV6121{
  display:flex;
  justify-content:space-between;
  align-items:center;

  padding-bottom:7px;
  margin-bottom:7px;

  border-bottom:1px solid rgba(85,177,255,.10);
}

.droneHudTopV6121 span{
  color:#74cfff;
  font:900 6px/1 system-ui;
  letter-spacing:.13em;
}

.droneHudTopV6121 b{
  color:#dff5ff;
  font:900 7px/1 system-ui;
  letter-spacing:.06em;
}

.droneHudRowV6121{
  margin-top:7px;
}

.droneHudRowV6121>div{
  display:flex;
  justify-content:space-between;
  align-items:center;

  margin-bottom:4px;
}

.droneHudRowV6121 span{
  color:#6f8e9c;
  font:800 5px/1 system-ui;
  letter-spacing:.10em;
}

.droneHudRowV6121 b{
  color:#d8f6ff;
  font:800 6px/1 system-ui;
}

.droneHudRowV6121 i{
  display:block;
  height:5px;

  border-radius:5px;
  overflow:hidden;

  background:rgba(255,255,255,.05);
}

.droneHudRowV6121 i em{
  display:block;
  height:100%;
  width:100%;

  border-radius:inherit;

  background:
    linear-gradient(90deg,#3a8eff,#6edfff);

  box-shadow:
    0 0 7px rgba(69,161,255,.42);
}

.droneHudRowV6121.hull i em{
  background:
    linear-gradient(90deg,#32bf89,#70e8b3);

  box-shadow:
    0 0 7px rgba(56,211,153,.34);
}

@media(max-width:500px){
  .droneCombatHudV6121{
    top:52px;
    width:220px;
  }
}


/* ==========================================================
   V6.13.0 — GALAXY VISUAL QUALITY PASS
   VISUAL ONLY — gameplay systems remain locked.
   ========================================================== */

/* Deep layered space instead of a flat black playfield */
#world{
  background:
    radial-gradient(ellipse at 16% 22%,rgba(32,78,126,.20) 0%,rgba(14,42,75,.09) 18%,transparent 39%),
    radial-gradient(ellipse at 77% 67%,rgba(61,37,111,.18) 0%,rgba(32,20,69,.08) 22%,transparent 43%),
    radial-gradient(ellipse at 58% 13%,rgba(23,112,128,.10) 0%,transparent 31%),
    radial-gradient(circle at 50% 50%,rgba(7,18,31,.94),rgba(1,5,11,.995) 72%)!important;
  isolation:isolate;
}

/* two procedural star-depth layers */
#world::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  opacity:.78;
  background-image:
    radial-gradient(circle,rgba(255,255,255,.90) 0 1px,transparent 1.25px),
    radial-gradient(circle,rgba(125,210,255,.72) 0 1px,transparent 1.3px),
    radial-gradient(circle,rgba(255,255,255,.48) 0 .7px,transparent 1px);
  background-size:137px 137px,211px 211px,73px 73px;
  background-position:19px 31px,83px 117px,41px 9px;
  filter:drop-shadow(0 0 2px rgba(145,213,255,.28));
}

#world::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.46;
  background:
    radial-gradient(ellipse at 28% 72%,rgba(20,120,151,.15),transparent 28%),
    radial-gradient(ellipse at 73% 29%,rgba(82,51,151,.14),transparent 30%),
    radial-gradient(circle at 35% 30%,rgba(255,255,255,.7) 0 .8px,transparent 1.2px),
    radial-gradient(circle at 68% 64%,rgba(148,224,255,.7) 0 .8px,transparent 1.2px);
  background-size:auto,auto,181px 181px,257px 257px;
}

/* Carrier: preserve artwork and orientation; improve depth/readability only */
.carrierSprite{
  filter:
    drop-shadow(0 5px 5px rgba(0,0,0,.92))
    drop-shadow(0 0 8px rgba(80,191,255,.17))
    drop-shadow(0 0 18px rgba(65,128,255,.07))!important;
}

.carrierSpriteUnit:hover .carrierSprite{
  filter:
    drop-shadow(0 5px 5px rgba(0,0,0,.94))
    drop-shadow(0 0 10px rgba(93,220,255,.29))
    drop-shadow(0 0 22px rgba(67,149,255,.10))!important;
}

/* NPC art remains exactly the same image; improve separation from background */
.npcSprite{
  filter:
    drop-shadow(0 4px 4px rgba(0,0,0,.95))
    drop-shadow(0 0 6px rgba(83,203,255,.12))!important;
}

.npc.selected .npcSprite{
  filter:
    drop-shadow(0 4px 4px rgba(0,0,0,.95))
    drop-shadow(0 0 8px currentColor)
    drop-shadow(0 0 16px rgba(91,215,255,.20))!important;
}

/* Better floating ship labels */
.npcText,
.carrierSpriteUnit .unitLabel{
  text-shadow:
    0 1px 2px rgba(0,0,0,1),
    0 0 5px rgba(0,0,0,.92)!important;
}

/* Laser beams: sharper core + bloom, no damage/timing changes */
.laser,
.droneLaser{
  border-radius:3px!important;
  transform-origin:0 50%!important;
}

.laser.player{
  height:2px!important;
  background:linear-gradient(90deg,#efffff 0%,#78eeff 20%,#28a9ff 72%,rgba(40,151,255,0) 100%)!important;
  box-shadow:
    0 0 3px rgba(235,255,255,.98),
    0 0 7px rgba(71,201,255,.82),
    0 0 13px rgba(43,128,255,.30)!important;
}

.laser.enemy{
  height:2px!important;
  background:linear-gradient(90deg,#fff1ee 0%,#ff8c7f 20%,#ff443c 72%,rgba(255,53,48,0) 100%)!important;
  box-shadow:
    0 0 3px rgba(255,238,234,.95),
    0 0 7px rgba(255,75,65,.80),
    0 0 13px rgba(255,50,44,.28)!important;
}

/* Combat objects feel lifted from the map */
.npc.inBattle{
  z-index:42!important;
}

.carrier.battleLocked,
.carrierSpriteUnit.battleLocked{
  z-index:43!important;
}

/* Shield flashes get a more energetic layered glow */
.carrierShieldFlash,
.npcShieldFlash,
.shieldFlash{
  border-width:1px!important;
  box-shadow:
    0 0 8px rgba(79,218,255,.75),
    0 0 18px rgba(52,157,255,.38),
    inset 0 0 12px rgba(116,231,255,.16)!important;
}

/* Drone artwork unchanged; better tiny-ship legibility */
.combatFighterDrone img{
  filter:
    drop-shadow(0 2px 2px rgba(0,0,0,.92))
    drop-shadow(0 0 3px rgba(68,185,255,.38))!important;
}

/* Modern glass depth for existing HUD/panels */
.topLeftPanelV693,
.mapActionPanel,
.miniMap,
.carrierInfoPanel,
.droneCombatHudV6121{
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
}

/* subtle vignette around the PWA viewport */
#mapViewport::after,
.mapViewport::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:100;
  pointer-events:none;
  box-shadow:
    inset 0 0 80px rgba(0,0,0,.30),
    inset 0 -50px 80px rgba(0,0,0,.18);
}

/* Keep visuals efficient on smaller/mobile PWA screens */
@media(max-width:500px){
  #world::before{opacity:.64}
  #world::after{opacity:.38}
  .topLeftPanelV693,
  .mapActionPanel,
  .miniMap,
  .carrierInfoPanel,
  .droneCombatHudV6121{
    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
  }
}


/* ==========================================================
   V6.13.1 — PLANET 1 LARGE WORLD
   ========================================================== */

#world{
  left:-200%!important;
  top:-200%!important;
  width:500%!important;
  height:500%!important;

  /*
    APPROVED PLANET 1 ART.
    One large continuous world image stretched across Planet 1.
  */
  background:
    linear-gradient(rgba(1,5,11,.12),rgba(1,5,11,.18)),
    url("/assets/backgrounds/planet1-dust-v6131.png") center center / cover no-repeat!important;

  box-shadow:
    inset 0 0 180px rgba(0,0,0,.28)!important;
}

/*
  The approved artwork already contains dust, stars and nebula detail.
  Keep earlier procedural layers extremely subtle so we don't fight it.
*/
#world::before{
  opacity:.14!important;
}

#world::after{
  opacity:.10!important;
}

/* Large, faint world identity embedded into the actual galaxy. */
#world > .planetOneBackdropLabelV6131{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);

  z-index:0;
  pointer-events:none;
  user-select:none;

  color:rgba(161,226,255,.065);
  font:900 clamp(42px,7vw,110px)/1 system-ui;
  letter-spacing:.34em;
  white-space:nowrap;

  text-shadow:
    0 0 22px rgba(81,189,255,.06),
    0 0 55px rgba(72,151,255,.04);
}

/* ==========================================================
   V6.13.1 — MINI-MAP MATCHES PLANET 1
   ========================================================== */

.miniMapTitle::after{
  content:"PLANET 1";
  color:#84eaff;
  font:900 6px/1 system-ui;
  letter-spacing:.12em;
  margin-left:7px;
}

.miniMapField{
  /*
    Same Planet 1 art, seen from the whole-world tactical view.
  */
  background:
    linear-gradient(rgba(1,7,12,.36),rgba(1,7,12,.42)),
    url("/assets/backgrounds/planet1-dust-v6131.png") center center / cover no-repeat!important;

  border-color:rgba(96,227,255,.18)!important;

  box-shadow:
    inset 0 0 24px rgba(2,9,15,.42),
    inset 0 0 8px rgba(73,201,255,.06)!important;
}

/* Tactical grid sits over the Planet 1 image. */
.miniMapField::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;

  width:auto!important;
  height:auto!important;
  left:0!important;
  top:0!important;

  z-index:1!important;
  pointer-events:none!important;

  background:
    linear-gradient(rgba(97,217,239,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(97,217,239,.055) 1px,transparent 1px)!important;

  background-size:18px 18px!important;
}

.miniMapField::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;

  width:auto!important;
  height:auto!important;
  left:0!important;
  top:0!important;

  z-index:2!important;
  pointer-events:none!important;

  background:
    radial-gradient(circle at 50% 50%,
      transparent 0 23%,
      rgba(98,221,245,.055) 24% 24.7%,
      transparent 25% 48%,
      rgba(98,221,245,.045) 49% 49.7%,
      transparent 50% 73%,
      rgba(98,221,245,.035) 74% 74.7%,
      transparent 75%)!important;
}

/* Keep all blips above the art/grid. */
.miniDot,
.miniTarget{
  z-index:5!important;
}


/* ==========================================================
   V6.13.2 — LARGE PLANET CAMERA FIX
   ========================================================== */

/*
  Camera JS now owns left/top and zoom.
  Do not let the old V6.13.1 !important offsets override it.
*/
#world{
  left:0;
  top:0;
  will-change:left,top,transform;
}

/* Essential for PWA touch dragging: browser must not claim the gesture as page scroll. */
#viewport{
  touch-action:none!important;
  overscroll-behavior:none!important;
  cursor:grab;
}

#viewport.dragging{
  cursor:grabbing!important;
}

/* Avoid accidental text/image selection while dragging the large world. */
#viewport,
#world{
  user-select:none;
  -webkit-user-select:none;
}

#world{
  left:0!important;
  top:0!important;
}


/* ==========================================================
   V6.13.3 — TRUE CAMERA LAYER
   ========================================================== */
#world{
  left:0!important;
  top:0!important;
  transform-origin:0 0!important;
  will-change:transform!important;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}

#viewport{
  overflow:hidden!important;
  touch-action:none!important;
  overscroll-behavior:none!important;
  cursor:grab!important;
}

#viewport.dragging{
  cursor:grabbing!important;
}

/* ==========================================================
   V6.13.4 — CORRECT LAYERED PLANET 1 BACKGROUND
   ========================================================== */
#world{
  background:
    radial-gradient(circle at 50% 50%,rgba(8,18,28,.88),rgba(1,5,10,.995) 72%),
    #02070d!important;
}

/* Base stars only. No full-map nebula wallpaper. */
#world::before{
  opacity:.70!important;
  background-image:
    radial-gradient(circle,rgba(255,255,255,.90) 0 1px,transparent 1.25px),
    radial-gradient(circle,rgba(116,204,255,.60) 0 .9px,transparent 1.2px),
    radial-gradient(circle,rgba(255,255,255,.38) 0 .65px,transparent .95px)!important;
  background-size:149px 149px,233px 233px,83px 83px!important;
  background-position:17px 29px,91px 121px,43px 11px!important;
  filter:drop-shadow(0 0 2px rgba(135,211,255,.18))!important;
}
#world::after{
  opacity:0!important;
  background:none!important;
}
.planetOneBackdropLabelV6131{display:none!important;}

.planetDustRegionV6134{
  position:absolute;
  left:7%;
  top:13%;
  width:39%;
  height:auto;
  z-index:0;
  pointer-events:none;
  user-select:none;
  opacity:.82;
  filter:saturate(.88) brightness(.82) contrast(.94)
         drop-shadow(0 0 28px rgba(41,111,172,.09));
  transform:rotate(-7deg);
  transform-origin:center;
  mix-blend-mode:screen;
}
@media(max-width:500px){
  .planetDustRegionV6134{
    opacity:.74;
    filter:saturate(.82) brightness(.78) contrast(.92);
  }
}

/* Mini-map now matches the rebuilt dark Planet 1 instead of old stretched art. */
.miniMapField{
  background:
    radial-gradient(circle at 50% 50%,rgba(8,19,29,.96),rgba(1,7,12,.995) 76%)!important;
}
.miniMapField::before{
  background:
    linear-gradient(rgba(97,217,239,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(97,217,239,.055) 1px,transparent 1px)!important;
  background-size:18px 18px!important;
}

.miniMapField::after{
  content:""!important;
  position:absolute!important;
  left:7%!important;
  top:13%!important;
  width:39%!important;
  height:31%!important;
  z-index:0!important;
  pointer-events:none!important;
  background:
    url("/assets/backgrounds/planet1-dust-region-01-v6134.png")
    center / contain no-repeat!important;
  opacity:.60!important;
  transform:rotate(-7deg)!important;
  transform-origin:center!important;
  mix-blend-mode:screen!important;
}
.miniMapField .miniDot,
.miniMapField .miniTarget{
  z-index:5!important;
}


/* ==========================================================
   V6.13.5 — PLANET 1 DUST / NEBULA REGION 02
   ========================================================== */
.planetDustRegion02V6135{
  position:absolute;
  left:54%;
  top:52%;
  width:40%;
  height:auto;

  z-index:0;
  pointer-events:none;
  user-select:none;

  opacity:.72;

  filter:
    saturate(.90)
    brightness(.82)
    contrast(.94)
    drop-shadow(0 0 30px rgba(74,78,170,.08));

  transform:rotate(6deg);
  transform-origin:center;
  mix-blend-mode:screen;
}

.miniMapField .miniDustRegion02V6135{
  position:absolute;
  left:54%;
  top:52%;
  width:40%;
  height:34%;

  z-index:0;
  pointer-events:none;

  background:
    url("/assets/backgrounds/planet1-dust-region-02-v6137.png")
    center / contain no-repeat;

  opacity:.48;
  transform:rotate(6deg);
  transform-origin:center;
  mix-blend-mode:screen;
}

.miniMapField .miniDot,
.miniMapField .miniTarget{
  z-index:5!important;
}

@media(max-width:500px){
  .planetDustRegion02V6135{
    opacity:.66;
    filter:
      saturate(.86)
      brightness(.78)
      contrast(.92);
  }
}


/* ==========================================================
   V6.13.7 — REGION 02 TRUE TRANSPARENCY
   ========================================================== */
.planetDustRegion02V6135{
  opacity:.62!important;
  mix-blend-mode:screen!important;
  filter:
    saturate(.88)
    brightness(.80)
    contrast(.92)
    drop-shadow(0 0 30px rgba(70,88,170,.05))!important;
}

.miniMapField .miniDustRegion02V6135{
  opacity:.40!important;
  mix-blend-mode:screen!important;
  background-image:
    url("/assets/backgrounds/planet1-dust-region-02-v6137.png")!important;
}


/* ==========================================================
   V6.13.8 — PLANET 1 REGION 03
   Separate transparent purple/blue cosmic dust region.
   ========================================================== */
.planetDustRegion03V6138{
  position:absolute;
  left:56%;
  top:9%;
  width:34%;
  height:auto;

  z-index:0;
  pointer-events:none;
  user-select:none;

  opacity:.59;

  filter:
    saturate(.88)
    brightness(.78)
    contrast(.92)
    drop-shadow(0 0 32px rgba(112,67,180,.055));

  transform:rotate(-4deg);
  transform-origin:center;
  mix-blend-mode:screen;
}

.miniMapField .miniDustRegion03V6138{
  position:absolute;
  left:56%;
  top:9%;
  width:34%;
  height:29%;

  z-index:0;
  pointer-events:none;

  background:
    url("/assets/backgrounds/planet1-dust-region-03-v6138.png")
    center / contain no-repeat;

  opacity:.37;
  transform:rotate(-4deg);
  transform-origin:center;
  mix-blend-mode:screen;
}

.miniMapField .miniDot,
.miniMapField .miniTarget{
  z-index:5!important;
}

@media(max-width:500px){
  .planetDustRegion03V6138{
    opacity:.54;
    filter:saturate(.84) brightness(.75) contrast(.90);
  }
}


/* ==========================================================
   V6.13.9 — PLANET 1 REGION 04
   Blue / orange / purple spiral nebula.
   ========================================================== */

.planetDustRegion04V6139{
  position:absolute;

  left:9%;
  top:58%;
  width:36%;
  height:auto;

  z-index:0;
  pointer-events:none;
  user-select:none;

  opacity:.58;

  filter:
    saturate(.90)
    brightness(.78)
    contrast(.92)
    drop-shadow(0 0 34px rgba(72,96,188,.055));

  transform:rotate(5deg);
  transform-origin:center;

  mix-blend-mode:screen;
}

.miniMapField .miniDustRegion04V6139{
  position:absolute;

  left:9%;
  top:58%;
  width:36%;
  height:30%;

  z-index:0;
  pointer-events:none;

  background:
    url("/assets/backgrounds/planet1-dust-region-04-v6139.png")
    center / contain no-repeat;

  opacity:.36;

  transform:rotate(5deg);
  transform-origin:center;

  mix-blend-mode:screen;
}

.miniMapField .miniDot,
.miniMapField .miniTarget{
  z-index:5!important;
}

@media(max-width:500px){
  .planetDustRegion04V6139{
    opacity:.53;
    filter:
      saturate(.86)
      brightness(.75)
      contrast(.90);
  }
}


/* ==========================================================
   V6.13.10 — PLANET 1 ENVIRONMENT BRIGHTNESS PASS
   Artwork only. No camera/gameplay/layout changes.
   ========================================================== */

/* Region 01 — brighter blue dust while preserving its alpha blend. */
.planetDustRegionV6134{
  opacity:.94!important;
  filter:
    saturate(1.10)
    brightness(1.16)
    contrast(1.02)
    drop-shadow(0 0 34px rgba(58,132,205,.14))!important;
}

/* Region 02 — bring the cleaned transparent nebula forward. */
.planetDustRegion02V6135{
  opacity:.82!important;
  filter:
    saturate(1.12)
    brightness(1.18)
    contrast(1.03)
    drop-shadow(0 0 38px rgba(86,99,202,.13))!important;
}

/* Region 03 — stronger purple/blue cloud detail. */
.planetDustRegion03V6138{
  opacity:.80!important;
  filter:
    saturate(1.13)
    brightness(1.20)
    contrast(1.03)
    drop-shadow(0 0 38px rgba(126,78,207,.13))!important;
}

/* Region 04 — preserve the vivid blue/orange/purple artwork instead of dimming it. */
.planetDustRegion04V6139{
  opacity:.84!important;
  filter:
    saturate(1.15)
    brightness(1.20)
    contrast(1.04)
    drop-shadow(0 0 40px rgba(91,111,222,.14))!important;
}

/* Mini-map should visually reflect the brighter real world without overpowering markers. */
.miniMapField::after{
  opacity:.72!important;
}
.miniMapField .miniDustRegion02V6135{
  opacity:.56!important;
}
.miniMapField .miniDustRegion03V6138{
  opacity:.54!important;
}
.miniMapField .miniDustRegion04V6139{
  opacity:.55!important;
}

/* Mobile/PWA: keep the same brighter art direction, just slightly restrained. */
@media(max-width:500px){
  .planetDustRegionV6134{
    opacity:.88!important;
    filter:saturate(1.05) brightness(1.10) contrast(1.01)!important;
  }
  .planetDustRegion02V6135{
    opacity:.76!important;
    filter:saturate(1.07) brightness(1.12) contrast(1.02)!important;
  }
  .planetDustRegion03V6138{
    opacity:.74!important;
    filter:saturate(1.08) brightness(1.13) contrast(1.02)!important;
  }
  .planetDustRegion04V6139{
    opacity:.78!important;
    filter:saturate(1.10) brightness(1.14) contrast(1.03)!important;
  }
}


/* ==========================================================
   V6.13.11 — RETURN TO CARRIER CAMERA BUTTON
   ========================================================== */

.returnCarrierBtnV61311{
  position:fixed;
  right:18px;
  bottom:224px;

  z-index:1560;

  width:52px;
  height:52px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;

  border:1px solid rgba(91,226,255,.34);
  border-radius:50%;

  background:
    radial-gradient(circle at 35% 30%,
      rgba(39,112,139,.92),
      rgba(4,26,36,.96) 56%,
      rgba(1,12,18,.98) 100%);

  color:#dffbff;

  box-shadow:
    0 8px 20px rgba(0,0,0,.38),
    0 0 14px rgba(61,204,255,.10),
    inset 0 1px 0 rgba(255,255,255,.04);

  cursor:pointer;
  pointer-events:auto;

  transition:
    opacity .18s ease,
    transform .18s ease,
    border-color .18s ease;
}

.returnCarrierBtnV61311.hidden{
  display:none!important;
}

.returnCarrierBtnV61311:hover{
  transform:scale(1.06);
  border-color:rgba(105,236,255,.62);
}

.returnCarrierArrowV61311{
  display:block;

  color:#72eaff;
  font:900 18px/1 system-ui;

  transform:rotate(var(--return-angle,0deg));
  transform-origin:center;

  text-shadow:
    0 0 6px rgba(82,224,255,.72);

  transition:transform .18s linear;
}

.returnCarrierBtnV61311 b{
  color:#bdefff;
  font:900 5px/1 system-ui;
  letter-spacing:.11em;
}

@media(max-width:500px){
  .returnCarrierBtnV61311{
    right:12px;
    bottom:205px;
    width:46px;
    height:46px;
  }

  .returnCarrierArrowV61311{
    font-size:16px;
  }
}


/* ==========================================================
   V6.13.12 — PLANET 1 REGION 05
   Bright orange / blue / purple nebula.
   ========================================================== */
.planetDustRegion05V61312{
  position:absolute;
  left:32%;
  top:69%;
  width:34%;
  height:auto;
  z-index:0;
  pointer-events:none;
  user-select:none;

  opacity:.86;
  filter:
    saturate(1.16)
    brightness(1.18)
    contrast(1.04)
    drop-shadow(0 0 42px rgba(111,91,220,.15));

  transform:rotate(-3deg);
  transform-origin:center;
  mix-blend-mode:screen;
}

.miniMapField .miniDustRegion05V61312{
  position:absolute;
  left:32%;
  top:69%;
  width:34%;
  height:25%;
  z-index:0;
  pointer-events:none;
  background:
    url("/assets/backgrounds/planet1-dust-region-05-v61312.png")
    center / contain no-repeat;
  opacity:.55;
  transform:rotate(-3deg);
  transform-origin:center;
  mix-blend-mode:screen;
}

.miniMapField .miniDot,
.miniMapField .miniTarget{
  z-index:5!important;
}

@media(max-width:500px){
  .planetDustRegion05V61312{
    opacity:.80;
    filter:saturate(1.10) brightness(1.12) contrast(1.03);
  }
}






/* ==========================================================
   V6.13.16 — FLOATING ASTEROIDS 01–06
   Small environmental entities only.
   ========================================================== */
.planetFloatingAsteroidV61316{
  position:absolute;
  z-index:2;
  pointer-events:none;
  user-select:none;
  transform:translate(-50%,-50%);
}

.planetFloatingAsteroidV61316 img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  transform-origin:center;
  filter:
    saturate(1.08)
    brightness(1.06)
    contrast(1.05);
  animation:
    planetAsteroidFloatV61316 var(--ast-drift) ease-in-out var(--ast-phase) infinite alternate,
    planetAsteroidSpinV61316 var(--ast-spin) linear var(--ast-phase) infinite;
}

@keyframes planetAsteroidFloatV61316{
  0%   { translate:-2px -3px; }
  35%  { translate: 2px -1px; }
  70%  { translate:-1px  3px; }
  100% { translate: 3px  1px; }
}

@keyframes planetAsteroidSpinV61316{
  from{ rotate:0deg; }
  to{ rotate:360deg; }
}

@media(max-width:500px){
  .planetFloatingAsteroidV61316{
    scale:.88;
  }
}


/* ==========================================================
   V6.13.17 — PLANET 1 VISIBILITY BALANCE
   Dust dimmed so floating asteroid silhouettes read clearly.
   ========================================================== */
.planetDustRegionV6134{
  opacity:.60!important;
  filter:saturate(.92) brightness(.78) contrast(.96)!important;
}
.planetDustRegion02V6135{
  opacity:.55!important;
  filter:saturate(.94) brightness(.76) contrast(.96)!important;
}
.planetDustRegion03V6138{
  opacity:.54!important;
  filter:saturate(.95) brightness(.76) contrast(.96)!important;
}
.planetDustRegion04V6139{
  opacity:.57!important;
  filter:saturate(.96) brightness(.78) contrast(.97)!important;
}
.planetDustRegion05V61312{
  opacity:.58!important;
  filter:saturate(.98) brightness(.80) contrast(.98)!important;
}

/* Mini-map environment follows the quieter dust treatment. */
.miniMapField::after{opacity:.44!important;}
.miniMapField .miniDustRegion02V6135{opacity:.34!important;}
.miniMapField .miniDustRegion03V6138{opacity:.33!important;}
.miniMapField .miniDustRegion04V6139{opacity:.34!important;}
.miniMapField .miniDustRegion05V61312{opacity:.35!important;}


/* ==========================================================
   V6.13.18 — DESTROYED CARRIER / SALVAGE LANDMARK
   ========================================================== */
.destroyedCarrierV61318{
  position:absolute;
  left:70%;
  top:61%;
  width:132px;
  height:92px;
  padding:0;
  border:0;
  background:transparent;
  z-index:3;
  cursor:pointer;
  transform:translate(-50%,-50%) rotate(-7deg);
  transform-origin:center;
  animation:wreckFloatV61318 10.5s ease-in-out infinite alternate;
}

.destroyedCarrierV61318 img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  filter:
    brightness(.96)
    contrast(1.05)
    saturate(1.02)
    drop-shadow(0 0 9px rgba(43,169,255,.13));
}

.destroyedCarrierV61318:hover img{
  filter:
    brightness(1.10)
    contrast(1.06)
    saturate(1.08)
    drop-shadow(0 0 12px rgba(66,208,255,.26));
}

.destroyedCarrierTagV61318{
  position:absolute;
  left:50%;
  top:94%;
  transform:translateX(-50%);
  white-space:nowrap;
  color:rgba(168,231,244,.78);
  font:900 5px/1 system-ui;
  letter-spacing:.12em;
  text-shadow:0 2px 3px #000;
}

@keyframes wreckFloatV61318{
  from{translate:-50% -50%;}
  to{translate:calc(-50% + 3px) calc(-50% + 5px);}
}

.miniDestroyedCarrierV61318{
  position:absolute;
  left:70%;
  top:61%;
  width:7px;
  height:4px;
  margin:-2px 0 0 -3px;
  border:1px solid rgba(255,154,69,.82);
  background:rgba(255,104,43,.34);
  box-shadow:0 0 6px rgba(255,104,43,.44);
  transform:rotate(-8deg);
  z-index:6;
}

.salvagePanelV61318{
  position:fixed;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:min(330px,calc(100vw - 28px));
  z-index:1900;
  padding:20px;
  border:1px solid rgba(74,215,246,.38);
  border-radius:10px;
  background:
    linear-gradient(145deg,rgba(5,27,36,.98),rgba(2,12,18,.99));
  box-shadow:
    0 22px 60px rgba(0,0,0,.64),
    0 0 25px rgba(43,189,230,.10);
  color:#dffaff;
}

.salvagePanelV61318 h2{
  margin:3px 0 2px;
  font:900 21px/1 system-ui;
  letter-spacing:.12em;
  color:#7cecff;
}

.salvagePanelV61318 p{
  margin:0 0 16px;
  color:#8aaeb7;
  font:700 10px/1.3 system-ui;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.salvageEyebrowV61318{
  color:#ff9d55;
  font:900 7px/1 system-ui;
  letter-spacing:.16em;
}

.salvageCloseV61318{
  position:absolute;
  right:10px;
  top:8px;
  border:0;
  background:transparent;
  color:#9edbe8;
  font-size:22px;
  cursor:pointer;
}

.salvageScanV61318{
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px 14px;
  padding:12px;
  border:1px solid rgba(81,192,218,.18);
  background:rgba(0,0,0,.18);
  font:800 8px/1.2 system-ui;
  letter-spacing:.08em;
}

.salvageScanV61318 b{
  color:#ffb36d;
  font-size:7px;
}

.salvageActionV61318{
  width:100%;
  margin-top:14px;
  padding:11px;
  border:1px solid rgba(86,225,255,.42);
  border-radius:6px;
  background:rgba(25,110,133,.24);
  color:#c9f7ff;
  font:900 9px/1 system-ui;
  letter-spacing:.13em;
  cursor:pointer;
}

.salvagePanelV61318 small{
  display:block;
  margin-top:9px;
  color:#5f8189;
  font:600 7px/1.4 system-ui;
}

@media(max-width:500px){
  .destroyedCarrierV61318{
    width:112px;
    height:78px;
  }
}


/* ==========================================================
   V6.13.19 — ENGINEER DRONE WRECK SALVAGE
   ========================================================== */
.wreckEngineerDroneV61319{
  position:absolute;
  width:11px;
  height:7px;
  z-index:8;
  pointer-events:none;
  transform:translate(-50%,-50%);
  filter:drop-shadow(0 0 4px rgba(73,226,255,.55));
}
.wreckEngineerCoreV61319{
  display:block;
  width:100%;
  height:100%;
  border:1px solid rgba(105,235,255,.88);
  border-radius:50% 45% 45% 50%;
  background:
    radial-gradient(circle at 35% 50%,#d8fbff 0 10%,#4eddf8 12% 26%,#123c4b 29% 63%,#07171e 66%);
  box-shadow:0 0 5px rgba(63,218,255,.48);
}
.wreckEngineerDroneV61319.salvagingV61319{
  animation:engineerSalvageWorkV61319 .8s ease-in-out infinite alternate;
}
@keyframes engineerSalvageWorkV61319{
  from{translate:-2px -1px;filter:drop-shadow(0 0 3px rgba(73,226,255,.5));}
  to{translate:2px 1px;filter:drop-shadow(0 0 8px rgba(255,174,74,.72));}
}
.wreckDroneStatusV61319{
  position:fixed;
  left:50%;
  bottom:78px;
  transform:translateX(-50%);
  z-index:1950;
  padding:8px 13px;
  border:1px solid rgba(80,218,245,.28);
  border-radius:6px;
  background:rgba(2,17,24,.94);
  color:#9cecff;
  font:900 7px/1 system-ui;
  letter-spacing:.13em;
  box-shadow:0 8px 25px rgba(0,0,0,.38);
  pointer-events:none;
}
.wreckDroneStatusV61319.completeV61319{
  color:#ffd18a;
  border-color:rgba(255,181,88,.32);
}


/* ==========================================================
   V6.13.20 — TRUE ASTEROID MAP DRIFT
   ========================================================== */
.planetFloatingAsteroidV61316{
  transform:translate(-50%,-50%)!important;
  will-change:left,top;
}
.planetFloatingAsteroidV61316 img{
  animation:
    planetAsteroidSpinV61316 var(--ast-spin,42s) linear var(--ast-phase,0s) infinite!important;
}


/* ==========================================================
   V6.13.20 — TRADER PANEL
   ========================================================== */
.traderPanelV61320{
  position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);
  z-index:1920;width:min(330px,calc(100vw - 26px));padding:18px;
  border:1px solid rgba(72,224,255,.34);border-radius:11px;
  background:linear-gradient(145deg,rgba(4,25,34,.985),rgba(1,11,17,.99));
  box-shadow:0 24px 65px rgba(0,0,0,.64),0 0 24px rgba(63,210,245,.09);
  color:#dffaff;
}
.traderPanelV61320 small{color:#6bdff7;font:900 6px/1 system-ui;letter-spacing:.16em}
.traderPanelV61320 h2{margin:5px 0 12px;font:900 18px/1 system-ui;letter-spacing:.08em}
.traderCloseV61320{position:absolute;right:9px;top:7px;border:0;background:transparent;color:#9feafa;font-size:20px;cursor:pointer}
.traderBalanceV61320{display:flex;justify-content:space-between;padding:9px 10px;border:1px solid rgba(90,213,239,.14);font:800 8px/1 system-ui;letter-spacing:.1em}
.traderBalanceV61320 b{color:#ffd66d}
.traderGoodsV61320{display:grid;gap:7px;margin-top:10px}
.traderGoodsV61320 button{display:flex;justify-content:space-between;padding:10px;border:1px solid rgba(89,219,245,.20);border-radius:6px;background:rgba(11,49,61,.45);color:#c9f7ff;font:800 8px/1 system-ui;cursor:pointer}
.traderGoodsV61320 button:hover{border-color:rgba(100,235,255,.50);background:rgba(17,67,82,.58)}
.traderGoodsV61320 b{color:#ffcc6a}
.traderMsgV61320{margin-top:10px;color:#789da6;font:800 7px/1 system-ui;letter-spacing:.08em}


/* ==========================================================
   V6.13.21 — COMBAT RANGE
   ========================================================== */
.combatRangeMsgV61321{
  position:fixed;
  left:50%;
  top:18%;
  transform:translateX(-50%);
  z-index:2050;

  min-width:210px;
  padding:10px 14px;

  border:1px solid rgba(255,93,78,.42);
  border-radius:8px;

  background:
    linear-gradient(145deg,rgba(42,8,9,.96),rgba(15,4,6,.98));

  box-shadow:
    0 10px 28px rgba(0,0,0,.48),
    0 0 14px rgba(255,62,52,.10);

  text-align:center;
  pointer-events:none;
}

.combatRangeMsgV61321.hidden{
  display:none!important;
}

.combatRangeMsgV61321 b{
  display:block;
  color:#ff7568;
  font:900 9px/1 system-ui;
  letter-spacing:.13em;
}

.combatRangeMsgV61321 span{
  display:block;
  margin-top:5px;
  color:#b88983;
  font:800 6px/1 system-ui;
  letter-spacing:.08em;
}

.npcCombatActions button.outOfRangeV61321{
  opacity:.56;
  border-color:rgba(150,84,80,.22)!important;
  filter:saturate(.58);
}


/* ==========================================================
   V6.13.22 — APPROACH TARGET BEFORE COMBAT
   ========================================================== */
.combatRangeMsgV61321{
  display:none!important;
}

.npcCombatActions button.outOfRangeV61321{
  opacity:1!important;
  filter:none!important;
}

.combatApproachMsgV61322{
  position:fixed;
  left:50%;
  top:17%;
  transform:translateX(-50%);
  z-index:2050;

  min-width:210px;
  padding:9px 13px;

  border:1px solid rgba(89,222,255,.31);
  border-radius:8px;

  background:
    linear-gradient(145deg,rgba(4,28,38,.96),rgba(1,12,18,.98));

  box-shadow:
    0 10px 28px rgba(0,0,0,.46),
    0 0 14px rgba(58,198,240,.08);

  color:#8eeaff;
  text-align:center;

  font:900 7px/1 system-ui;
  letter-spacing:.12em;

  pointer-events:none;
}

.combatApproachMsgV61322.hidden{
  display:none!important;
}


/* ==========================================================
   V6.14.0 — THREE CARRIER ROLES
   ========================================================== */
.carrierRoleMsgV6140{
  position:fixed;
  left:50%;
  top:17%;
  transform:translateX(-50%);
  z-index:2110;
  min-width:230px;
  padding:10px 14px;
  border:1px solid rgba(255,181,76,.36);
  border-radius:8px;
  background:linear-gradient(145deg,rgba(39,24,6,.97),rgba(13,8,3,.99));
  color:#ffd17d;
  font:900 7px/1 system-ui;
  letter-spacing:.11em;
  text-align:center;
  box-shadow:0 12px 30px rgba(0,0,0,.48),0 0 14px rgba(255,174,66,.08);
  pointer-events:none;
}
.carrierRoleMsgV6140.hidden{display:none!important;}

.modernCarrierRoleV6140{
  margin:9px 0 7px;
  padding:9px 10px;
  border:1px solid rgba(84,214,244,.15);
  border-radius:8px;
  background:rgba(7,33,43,.48);
}
.modernCarrierRoleV6140>div{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
}
.modernCarrierRoleV6140 span{
  color:#668e98;
  font:800 5px/1 system-ui;
  letter-spacing:.11em;
}
.modernCarrierRoleV6140 b{
  color:#bff7ff;
  font:900 7px/1 system-ui;
  letter-spacing:.07em;
}
.modernCarrierRoleV6140 small{
  display:block;
  margin-top:5px;
  color:#6b9faa;
  font:800 5px/1 system-ui;
  letter-spacing:.07em;
}

.carrierRoleSelectorV6140{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:5px;
  margin-bottom:8px;
}
.carrierRoleSelectorV6140 button{
  min-width:0;
  padding:8px 4px;
  border:1px solid rgba(78,185,211,.14);
  border-radius:7px;
  background:rgba(5,23,30,.70);
  cursor:pointer;
  text-align:center;
}
.carrierRoleSelectorV6140 button b{
  display:block;
  color:#8eb7c0;
  font:900 6px/1 system-ui;
  letter-spacing:.05em;
}
.carrierRoleSelectorV6140 button small{
  display:block;
  margin-top:4px;
  color:#4f747d;
  font:800 4px/1 system-ui;
}
.carrierRoleSelectorV6140 button.active{
  border-color:rgba(92,226,255,.46);
  background:rgba(14,64,78,.68);
  box-shadow:inset 0 0 12px rgba(72,211,244,.05);
}
.carrierRoleSelectorV6140 button.active b{color:#d3faff;}
.carrierRoleSelectorV6140 button.active small{color:#7bdced;}

.carrierInfoRoleV6140{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:8px;
  padding:7px 8px;
  border:1px solid rgba(84,205,233,.12);
  border-radius:6px;
  background:rgba(4,27,35,.42);
}
.carrierInfoRoleV6140 span{
  color:#5f8590;
  font:800 5px/1 system-ui;
  letter-spacing:.10em;
}
.carrierInfoRoleV6140 b{
  color:#a8f0ff;
  font:900 6px/1 system-ui;
  letter-spacing:.07em;
}

.npcCombatActions button.roleDisabledV6140{
  opacity:.34!important;
  filter:saturate(.35)!important;
  cursor:not-allowed!important;
}

/* Role identity is visible without replacing any locked Carrier artwork. */
#carrier[data-carrier-role="fighter"] .carrierSprite,
.carrier[data-carrier-role="fighter"] .carrierSprite{
  filter:drop-shadow(0 4px 5px rgba(0,0,0,.92))
         drop-shadow(0 0 7px rgba(77,190,255,.16))!important;
}
#carrier[data-carrier-role="engineer"] .carrierSprite,
.carrier[data-carrier-role="engineer"] .carrierSprite{
  filter:drop-shadow(0 4px 5px rgba(0,0,0,.92))
         drop-shadow(0 0 8px rgba(255,181,75,.20))!important;
}
#carrier[data-carrier-role="harvester"] .carrierSprite,
.carrier[data-carrier-role="harvester"] .carrierSprite{
  filter:drop-shadow(0 4px 5px rgba(0,0,0,.92))
         drop-shadow(0 0 9px rgba(79,234,166,.20))!important;
}

#carrier .spriteWrap{width:120px!important;height:88px!important;overflow:visible!important}
#carrier .carrierSprite.carrierRoleArtV6141{width:120px!important;height:88px!important;object-fit:contain!important;transform:rotate(var(--carrier-role-rotation,0deg))!important;transition:transform .16s ease!important;filter:drop-shadow(0 5px 7px rgba(0,0,0,.85))!important}
#carrierEngineOverlay{display:none!important}
.planet1HomeBaseV6141{position:absolute;width:300px;height:210px;transform:translate(-50%,-50%);padding:0;border:0;background:transparent;cursor:pointer;z-index:2}
.planet1HomeBaseV6141 img{width:100%;height:100%;object-fit:contain;filter:brightness(.9) drop-shadow(0 10px 18px rgba(0,0,0,.7))}
.planet1HomeBaseV6141 span{position:absolute;left:50%;bottom:0;transform:translateX(-50%);background:rgba(2,16,22,.88);border:1px solid rgba(83,218,247,.25);padding:5px 8px;color:#7faab4;font:800 6px/1 system-ui;white-space:nowrap}.planet1HomeBaseV6141 span b{display:block;color:#c4f8ff;font-size:8px}
.miniHomeBaseV6141{position:absolute;left:50%;top:50%;width:11px;height:11px;transform:translate(-50%,-50%) rotate(45deg);border:1px solid #82edff;background:#14667b;box-shadow:0 0 7px rgba(85,225,255,.7);z-index:12;cursor:pointer}
.galaxyGarageV6141{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2300;width:min(620px,calc(100vw - 24px));max-height:86vh;overflow:auto;padding:20px;border:1px solid rgba(78,220,250,.32);border-radius:12px;background:linear-gradient(145deg,rgba(4,25,34,.99),rgba(1,10,16,.995));box-shadow:0 30px 90px rgba(0,0,0,.72);color:#dffaff}
.galaxyGarageV6141 h2{margin:5px 0;font:900 22px/1 system-ui;letter-spacing:.12em}.galaxyGarageV6141>small{color:#68dff8;font:900 6px/1 system-ui;letter-spacing:.17em}.galaxyGarageV6141>p{color:#6e9ba5;font:800 7px/1 system-ui}.garageCloseV6141{position:absolute;right:10px;top:7px;border:0;background:transparent;color:#9eeeff;font-size:23px}
.garageFleetV6141{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.garageFleetV6141>button{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:7px;padding:8px;border:1px solid rgba(79,194,220,.16);border-radius:8px;background:rgba(7,34,43,.56);color:#d4f8ff;text-align:left}.garageFleetV6141>button.active{border-color:rgba(91,226,255,.5);background:rgba(12,60,74,.65)}.garageFleetV6141 img{width:90px;height:58px;object-fit:contain}.garageFleetV6141 span b{display:block;font:900 7px/1 system-ui}.garageFleetV6141 span small{display:block;margin-top:4px;color:#638f99;font:800 5px/1 system-ui}.garageFleetV6141 em{color:#77e9ff;font:900 6px/1 system-ui;font-style:normal}.garageFleetV6141 .active em{color:#ffbd64}.carrierRoleSelectorV6140.garageLockedV6141{grid-template-columns:1fr!important}
@media(max-width:600px){.planet1HomeBaseV6141{width:240px;height:170px}.garageFleetV6141{grid-template-columns:1fr}}

#mapFlyBtn{display:none!important}
.npc{transition:none!important}
.planet1HomeBaseV6141{z-index:18!important;pointer-events:auto!important}
.planet1HomeBaseV6141 img,.planet1HomeBaseV6141 span{pointer-events:none!important}
.enterBasePromptV6142,.planet1BaseMenuV6142{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2600;border:1px solid rgba(80,222,250,.34);border-radius:11px;background:linear-gradient(145deg,rgba(4,26,35,.99),rgba(1,10,16,.995));box-shadow:0 26px 75px rgba(0,0,0,.72);color:#dffaff}
.enterBasePromptV6142{width:min(340px,calc(100vw - 28px));padding:20px}
.enterBasePromptV6142 small,.baseMenuHeaderV6142 small,.basePageCardV6142>small{color:#66def7;font:900 6px/1 system-ui;letter-spacing:.16em}
.enterBasePromptV6142 h2{margin:6px 0 8px;font:900 21px/1 system-ui;letter-spacing:.11em}
.enterBasePromptV6142 p,.basePageCardV6142 p{color:#71939b;font:700 8px/1.45 system-ui}
.enterBasePromptV6142>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.enterBasePromptV6142 button,.basePageCardV6142 button,.baseMenuHeaderV6142 button{padding:10px;border:1px solid rgba(86,221,250,.27);border-radius:7px;background:rgba(10,50,62,.58);color:#caf6ff;font:900 7px/1 system-ui;letter-spacing:.08em;cursor:pointer}
.baseDockingV6142{z-index:30!important;pointer-events:none!important}
.planet1BaseMenuV6142{width:min(760px,calc(100vw - 22px));max-height:88vh;overflow:auto;padding:14px;z-index:2550}
.baseMenuHeaderV6142{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 3px 12px;border-bottom:1px solid rgba(79,191,216,.14)}
.baseMenuHeaderV6142 h2{margin:5px 0 0;font:900 20px/1 system-ui;letter-spacing:.12em}
.baseMenuLayoutV6142{display:grid;grid-template-columns:155px minmax(0,1fr);gap:12px;margin-top:12px}
.baseMenuTabsV6142{display:grid;gap:6px;align-content:start}
.baseMenuTabsV6142 button{min-height:48px;padding:9px 10px;border:1px solid rgba(76,178,202,.13);border-radius:7px;background:rgba(5,26,34,.62);color:#8eb4bd;text-align:left;font:900 7px/1 system-ui;letter-spacing:.07em;cursor:pointer}
.baseMenuTabsV6142 button small{display:block;margin-top:5px;color:#4d7079;font:800 5px/1 system-ui}
.baseMenuTabsV6142 button.active{border-color:rgba(87,226,255,.45);background:rgba(13,60,74,.67);color:#d6faff}
.baseMenuTabsV6142 button.active small{color:#74cfe1}
.basePageCardV6142{min-height:260px;padding:18px;border:1px solid rgba(79,193,217,.13);border-radius:9px;background:rgba(4,22,29,.52)}
.basePageCardV6142 h3{margin:7px 0 8px;font:900 23px/1 system-ui;letter-spacing:.1em}
.basePageCardV6142 p b{color:#ffbf67}
.baseStatV6142{display:flex;justify-content:space-between;gap:12px;margin-top:8px;padding:10px;border:1px solid rgba(76,181,205,.12);border-radius:6px;background:rgba(3,16,22,.54);color:#71959e;font:800 7px/1 system-ui;letter-spacing:.07em}
.baseStatV6142 b{color:#d1f8ff}
@media(max-width:580px){.baseMenuLayoutV6142{grid-template-columns:1fr}.baseMenuTabsV6142{grid-template-columns:repeat(3,1fr)}.baseMenuTabsV6142 button{text-align:center}}


/* ==========================================================
   V6.14.3 — COMPLETE CARRIER FLEET MENU
   ========================================================== */
.carrierFleetMenuV6143{
  width:min(920px,calc(100vw - 22px))!important;
  max-height:90vh!important;
  overflow:auto!important;
}

.carrierFleetHeadV6143{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(77,194,220,.14);
}

.carrierFleetHeadV6143 small{
  color:#68dff8;
  font:900 6px/1 system-ui;
  letter-spacing:.16em;
}

.carrierFleetHeadV6143 h2{
  margin:5px 0 4px;
  font:900 24px/1 system-ui;
  letter-spacing:.11em;
}

.carrierFleetHeadV6143 p{
  margin:0;
  color:#6d929b;
  font:800 7px/1 system-ui;
  letter-spacing:.08em;
}

.carrierFleetHeadV6143 p b{
  color:#ffbe65;
}

.carrierFleetGridV6143{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}

.carrierFleetCardV6143{
  min-width:0;
  padding:10px;
  border:1px solid rgba(76,183,207,.15);
  border-radius:10px;
  background:linear-gradient(145deg,rgba(5,28,37,.80),rgba(2,16,23,.88));
  color:#d9f8ff;
  text-align:left;
  cursor:pointer;
}

.carrierFleetCardV6143:hover{
  border-color:rgba(90,224,255,.38);
  background:linear-gradient(145deg,rgba(10,48,60,.82),rgba(3,22,30,.90));
}

.carrierFleetCardV6143.active{
  border-color:rgba(94,228,255,.54);
  box-shadow:inset 0 0 22px rgba(65,207,242,.05);
}

.carrierFleetArtV6143{
  position:relative;
  height:145px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:8px;
  overflow:hidden;
  background:radial-gradient(circle at 50% 55%,rgba(24,81,96,.30),rgba(2,13,19,.08) 58%,rgba(0,0,0,.18));
}

.carrierFleetArtV6143 img{
  width:96%;
  height:135px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 8px 12px rgba(0,0,0,.72));
}

.carrierFleetArtV6143 span{
  position:absolute;
  right:7px;
  top:7px;
  padding:5px 7px;
  border:1px solid rgba(87,220,249,.22);
  border-radius:5px;
  background:rgba(2,15,21,.82);
  color:#76dff3;
  font:900 5px/1 system-ui;
  letter-spacing:.1em;
}

.carrierFleetCardV6143.active .carrierFleetArtV6143 span{
  color:#ffc56e;
  border-color:rgba(255,187,88,.32);
}

.carrierFleetIdentityV6143{
  margin-top:8px;
}

.carrierFleetIdentityV6143 small{
  color:#67919b;
  font:900 5px/1 system-ui;
  letter-spacing:.12em;
}

.carrierFleetIdentityV6143 h3{
  margin:4px 0 5px;
  font:900 13px/1 system-ui;
  letter-spacing:.07em;
}

.carrierFleetIdentityV6143 p{
  min-height:28px;
  margin:0;
  color:#708f97;
  font:700 7px/1.4 system-ui;
}

.carrierFleetStatsV6143{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5px;
  margin-top:9px;
}

.carrierFleetStatsV6143>div{
  display:flex;
  justify-content:space-between;
  gap:8px;
  padding:7px 8px;
  border:1px solid rgba(75,169,191,.10);
  border-radius:5px;
  background:rgba(2,15,20,.47);
}

.carrierFleetStatsV6143 .wide{
  grid-column:1/-1;
}

.carrierFleetStatsV6143 span{
  color:#587980;
  font:800 5px/1 system-ui;
  letter-spacing:.07em;
}

.carrierFleetStatsV6143 b{
  color:#c6f5ff;
  font:900 6px/1 system-ui;
  letter-spacing:.05em;
}

.carrierFleetCardV6143>em{
  display:block;
  margin-top:9px;
  padding:9px;
  border:1px solid rgba(82,210,238,.19);
  border-radius:6px;
  color:#77e7fb;
  background:rgba(12,55,67,.40);
  font:900 7px/1 system-ui;
  font-style:normal;
  text-align:center;
  letter-spacing:.09em;
}

.carrierFleetCardV6143.active>em{
  color:#ffc671;
  border-color:rgba(255,187,87,.24);
  background:rgba(88,50,9,.23);
}

.carrierFleetFooterV6143{
  margin-top:10px;
  color:#577981;
  font:800 6px/1.3 system-ui;
  letter-spacing:.07em;
  text-align:center;
}

.baseCarrierStripV6143{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:6px;
  margin:14px 0 4px;
}

.baseCarrierStripV6143>div{
  padding:6px;
  border:1px solid rgba(77,175,198,.10);
  border-radius:7px;
  background:rgba(3,17,23,.45);
  text-align:center;
}

.baseCarrierStripV6143>div.active{
  border-color:rgba(89,222,250,.38);
  background:rgba(11,54,66,.50);
}

.baseCarrierStripV6143 img{
  width:100%;
  height:60px;
  object-fit:contain;
  display:block;
}

.baseCarrierStripV6143 span{
  display:block;
  margin-top:4px;
  color:#648790;
  font:900 5px/1 system-ui;
  letter-spacing:.07em;
}

.baseCarrierStripV6143>div.active span{
  color:#baf3ff;
}

@media(max-width:650px){
  .carrierFleetGridV6143{
    grid-template-columns:1fr;
  }
  .carrierFleetArtV6143{
    height:125px;
  }
  .carrierFleetArtV6143 img{
    height:115px;
  }
  .baseCarrierStripV6143{
    grid-template-columns:repeat(2,1fr);
  }
}


/* V6.14.8 — CARRIER CHOOSER */
.carrierChooserV6148{
  width:min(940px,calc(100vw - 22px))!important;
  max-height:91vh!important;
  overflow:auto!important;
}
.carrierChooserHeadV6148{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(79,193,217,.14);
}
.carrierChooserHeadV6148 small{
  color:#68def7;font:900 6px/1 system-ui;letter-spacing:.16em;
}
.carrierChooserHeadV6148 h2{
  margin:5px 0 4px;color:#d9fbff;font:900 24px/1 system-ui;letter-spacing:.10em;
}
.carrierChooserHeadV6148 p{
  margin:0;color:#688f99;font:800 7px/1 system-ui;letter-spacing:.08em;
}
.carrierChooserHeadV6148 p b{color:#ffbd67}
.carrierChooserGridV6148{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}
.carrierChoiceCardV6148{
  min-width:0;padding:10px;border:1px solid rgba(79,186,210,.14);border-radius:10px;
  background:linear-gradient(145deg,rgba(5,28,37,.78),rgba(2,15,21,.90));
  color:#d7f8ff;text-align:left;cursor:pointer;
  transition:border-color .14s ease,background .14s ease,transform .14s ease;
}
.carrierChoiceCardV6148:hover{border-color:rgba(90,225,255,.35)}
.carrierChoiceCardV6148.selected{
  border-color:rgba(92,229,255,.70);
  background:linear-gradient(145deg,rgba(12,64,78,.82),rgba(3,25,33,.93));
  transform:translateY(-1px);
}
.carrierChoiceCardV6148.active{box-shadow:inset 0 0 20px rgba(255,178,74,.04)}
.carrierChoiceArtV6148{
  position:relative;height:155px;display:flex;align-items:center;justify-content:center;overflow:hidden;
  border-radius:8px;background:radial-gradient(circle at 50% 55%,rgba(30,89,104,.28),rgba(2,13,18,.06) 60%);
}
.carrierChoiceArtV6148 img{
  width:97%;height:145px;object-fit:contain;display:block;filter:drop-shadow(0 8px 13px rgba(0,0,0,.72));
}
.carrierChoiceStatusV6148{
  position:absolute;right:7px;top:7px;padding:5px 7px;border:1px solid rgba(94,226,255,.24);
  border-radius:5px;background:rgba(2,15,21,.88);color:#83e9fb;font:900 5px/1 system-ui;letter-spacing:.10em;
}
.carrierChoiceCardV6148.active .carrierChoiceStatusV6148{color:#ffc672;border-color:rgba(255,188,90,.28)}
.carrierChoiceCopyV6148{margin-top:8px}
.carrierChoiceCopyV6148 small{color:#65919b;font:900 5px/1 system-ui;letter-spacing:.11em}
.carrierChoiceCopyV6148 h3{margin:4px 0 5px;font:900 13px/1 system-ui;letter-spacing:.07em}
.carrierChoiceCopyV6148 p{min-height:28px;margin:0;color:#6d9099;font:700 7px/1.4 system-ui}
.carrierChoiceStatsV6148{
  display:grid;grid-template-columns:repeat(2,1fr);gap:5px;margin-top:9px;
}
.carrierChoiceStatsV6148>div{
  display:flex;justify-content:space-between;gap:8px;padding:7px 8px;border:1px solid rgba(73,167,189,.10);
  border-radius:5px;background:rgba(2,15,20,.50);
}
.carrierChoiceStatsV6148 span{color:#56777f;font:800 5px/1 system-ui}
.carrierChoiceStatsV6148 b{color:#c8f6ff;font:900 6px/1 system-ui}
.carrierChooserDeployV6148{
  display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:11px;
  border:1px solid rgba(78,184,207,.14);border-radius:8px;background:rgba(4,22,29,.60);
}
.carrierChooserDeployV6148>div span{display:block;color:#5d7d85;font:800 5px/1 system-ui;letter-spacing:.09em}
.carrierChooserDeployV6148>div b{display:block;margin-top:4px;color:#c9f8ff;font:900 8px/1 system-ui;letter-spacing:.07em}
.carrierChooserDeployV6148 button{
  min-width:145px;padding:10px 13px;border:1px solid rgba(89,224,254,.32);border-radius:7px;
  background:rgba(13,64,78,.72);color:#d0faff;font:900 7px/1 system-ui;letter-spacing:.08em;cursor:pointer;
}
.carrierChooserDeployV6148 button:disabled{opacity:.52;cursor:default;color:#7da1a9}
.carrierChooserMsgV6148{
  margin-top:8px;color:#668b94;font:800 6px/1.35 system-ui;letter-spacing:.07em;text-align:center;
}
@media(max-width:650px){
  .carrierChooserGridV6148{grid-template-columns:1fr}
  .carrierChoiceArtV6148{height:130px}
  .carrierChoiceArtV6148 img{height:120px}
  .carrierChooserDeployV6148{align-items:stretch;flex-direction:column}
  .carrierChooserDeployV6148 button{width:100%}
}

/* V6.14.9 — Carrier chooser interaction/scope hotfix */
.carrierChooserV6148{
  z-index:5000!important;
  pointer-events:auto!important;
}
.carrierChooserV6148 *{
  pointer-events:auto;
}
.carrierChoiceCardV6148,
#deployCarrierBtnV6148,
.carrierChooserV6148 .garageCloseV6141{
  position:relative;
  z-index:5001;
  pointer-events:auto!important;
}


/* ==========================================================
   V6.17.0 — WARP-ONLY / NPC CLICK / LARGER HOME BASE
   ========================================================== */
.npc{
  pointer-events:auto!important;
  z-index:45!important;
}
.npc .npcSprite,
.npc .npcText,
.npc .npcFallbackShip{
  pointer-events:none!important;
}
.planet1HomeBaseV6141{
  width:430px!important;
  height:300px!important;
  z-index:16!important;
}
@media(max-width:600px){
  .planet1HomeBaseV6141{
    width:340px!important;
    height:240px!important;
  }
}
.warpCoreMessageV6170{
  position:fixed;
  left:50%;
  top:78px;
  transform:translateX(-50%);
  z-index:2800;
  padding:8px 12px;
  border:1px solid rgba(94,225,255,.35);
  border-radius:7px;
  background:rgba(2,15,22,.94);
  color:#bff6ff;
  font:900 8px/1 system-ui;
  letter-spacing:.08em;
  pointer-events:none;
}
#mapWarpActionBtn:disabled{
  opacity:.58;
  cursor:not-allowed!important;
}


/* V6.18.0 — Fuel asteroid mining + Carrier Fuel display */
.fuelAsteroidV6180{
  appearance:none;
  border:0;
  padding:0;
  background:transparent;
  cursor:pointer;
  pointer-events:auto!important;
  z-index:14!important;
}
.fuelAsteroidV6180 img{pointer-events:none!important;}
.fuelAsteroidV6180:hover{filter:brightness(1.25) drop-shadow(0 0 8px rgba(68,176,255,.75));}
.carrierInfoBar.fuelV6180 i{background:linear-gradient(90deg,#1e80ff,#6edcff);}
.carrierInfoLabel.oreV6180{margin-top:9px;}
.fuelMineToastV6180{
  position:fixed;left:50%;top:86px;transform:translateX(-50%);
  z-index:2900;padding:9px 13px;border:1px solid rgba(80,180,255,.45);
  border-radius:7px;background:rgba(2,14,24,.96);color:#bfeaff;
  font:900 9px/1.2 system-ui;letter-spacing:.06em;pointer-events:none;
}


/* V6.18.5 — mined Fuel asteroid breakup */
.fuelAsteroidBreakingV6185{
  pointer-events:none!important;
}
.fuelAsteroidFragmentV6185{
  position:absolute;
  z-index:15;
  pointer-events:none;
  transform:translate(-50%,-50%);
  transform-origin:50% 50%;
  will-change:left,top,transform,opacity;
}
.fuelAsteroidFragmentV6185 img{
  width:100%;
  height:100%;
  object-fit:contain;
  pointer-events:none;
  filter:
    brightness(1.08)
    saturate(1.10)
    drop-shadow(0 0 5px rgba(70,170,255,.30));
}

/* V6.19.0 STEP 1 — P1 Fuel Mining Portal / Region */
.p1FuelMiningPortalV6190{position:absolute;width:132px;height:132px;transform:translate(-50%,-50%);border:0;background:transparent;z-index:21;cursor:pointer;pointer-events:auto}
.p1FuelMiningPortalV6190>i{position:absolute;inset:12px;border-radius:50%;border:2px solid rgba(92,225,255,.72);box-shadow:0 0 18px rgba(69,215,255,.55),inset 0 0 18px rgba(59,185,255,.22)}
.p1FuelMiningPortalV6190 .portalRingOneV6190{animation:p1PortalSpinV6190 5s linear infinite}
.p1FuelMiningPortalV6190 .portalRingTwoV6190{inset:25px;border-style:dashed;animation:p1PortalSpinV6190 3.4s linear infinite reverse}
.p1FuelMiningPortalV6190 strong{position:absolute;inset:40px;border-radius:50%;background:radial-gradient(circle,#b9fbff 0,#37d9ff 20%,rgba(48,85,255,.68) 43%,rgba(75,20,180,.18) 68%,transparent 72%);box-shadow:0 0 28px rgba(79,211,255,.8);animation:p1PortalPulseV6190 1.7s ease-in-out infinite alternate}
.p1FuelMiningPortalV6190>span{position:absolute;left:50%;top:108px;transform:translateX(-50%);min-width:150px;padding:5px 8px;border:1px solid rgba(76,216,247,.25);background:rgba(2,15,22,.9);color:#bdf8ff;font:900 6px/1 system-ui;white-space:nowrap}
.p1FuelMiningPortalV6190>span b{display:block;font-size:8px}.p1FuelMiningPortalV6190>span small{display:block;margin-top:3px;color:#648c97;font-size:5px}
@keyframes p1PortalSpinV6190{to{transform:rotate(360deg)}}@keyframes p1PortalPulseV6190{from{transform:scale(.9);opacity:.7}to{transform:scale(1.08);opacity:1}}
.p1FuelMiningRegionV6190{position:absolute;inset:0;z-index:3;overflow:visible;pointer-events:none}
.p1FuelMiningRegionV6190 .fuelAsteroidV6180,.p1FuelMiningRegionV6190 .fuelMiningExitPortalV6190{pointer-events:auto!important}
.fuelMiningRegionBackdropV6190{position:absolute;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(circle at 48% 45%,rgba(17,73,117,.18),transparent 28%),radial-gradient(circle at 72% 22%,rgba(70,24,120,.14),transparent 22%),radial-gradient(circle at 25% 75%,rgba(18,87,122,.12),transparent 20%)}
.fuelMiningRegionTitleV6190{position:absolute;left:50%;top:6%;transform:translateX(-50%);text-align:center;pointer-events:none;color:#c8f8ff;z-index:4}
.fuelMiningRegionTitleV6190 small,.fuelMiningRegionTitleV6190 span{display:block;color:#648d98;font:900 6px/1 system-ui;letter-spacing:.16em}.fuelMiningRegionTitleV6190 b{display:block;margin:5px 0;font:900 17px/1 system-ui;letter-spacing:.12em}
.fuelMiningExitPortalV6190{position:absolute;left:50%;top:88%;width:110px;height:110px;transform:translate(-50%,-50%);border:0;background:transparent;cursor:pointer;z-index:20}
.fuelMiningExitPortalV6190 i{position:absolute;inset:15px;border:2px solid rgba(96,230,255,.7);border-radius:50%;box-shadow:0 0 18px rgba(71,215,255,.5),inset 0 0 16px rgba(63,186,255,.18)}
.fuelMiningExitPortalV6190 span{position:absolute;top:92px;left:50%;transform:translateX(-50%);white-space:nowrap;color:#b9f6ff;background:rgba(2,14,20,.9);border:1px solid rgba(87,218,247,.23);padding:5px 8px;font:900 6px/1 system-ui}
.fuelPortalPromptV6190{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3000;width:min(360px,calc(100vw - 28px));padding:20px;border:1px solid rgba(76,218,250,.36);border-radius:11px;background:linear-gradient(145deg,rgba(3,24,34,.99),rgba(1,9,15,.995));box-shadow:0 28px 80px rgba(0,0,0,.75);color:#d9faff}
.fuelPortalPromptV6190 small{color:#66dff8;font:900 6px/1 system-ui;letter-spacing:.16em}.fuelPortalPromptV6190 h2{margin:7px 0 8px;font:900 19px/1 system-ui;letter-spacing:.08em}.fuelPortalPromptV6190 p{color:#72949d;font:700 8px/1.45 system-ui}
.fuelPortalPromptV6190>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.fuelPortalPromptV6190 button{min-height:38px;border:1px solid rgba(84,219,248,.3);border-radius:7px;background:rgba(9,46,59,.65);color:#c9f7ff;font:900 7px/1 system-ui;cursor:pointer}
body.p1FuelMiningActiveV6190 .npc,body.p1FuelMiningActiveV6190 .planet1HomeBaseV6141,body.p1FuelMiningActiveV6190 .destroyedCarrierV61318,body.p1FuelMiningActiveV6190 .planetDustRegion05V61312,body.p1FuelMiningActiveV6190 .p1FuelMiningPortalV6190{display:none!important}
body:not(.p1FuelMiningActiveV6190) #p1FuelMiningRegionV6190{display:none!important}


/* ==========================================================
   V6.19.1 — APPROVED P1 PORTAL ART
   Keep the portal mechanics from V6.19.0; replace only its visual.
   ========================================================== */
.p1FuelMiningPortalV6190{
  width:230px!important;
  height:230px!important;
}
.p1FuelMiningPortalV6190>i,
.p1FuelMiningPortalV6190>strong{
  display:none!important;
}
.p1FuelMiningPortalArtV6191{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  pointer-events:none;
  filter:drop-shadow(0 0 12px rgba(42,183,255,.48));
}
.p1FuelMiningPortalV6190>span{
  top:205px!important;
}

.fuelMiningExitPortalV6190{
  width:170px!important;
  height:170px!important;
}
.fuelMiningExitPortalV6190>i{
  display:none!important;
}
.fuelMiningExitPortalV6190>img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  pointer-events:none;
  filter:drop-shadow(0 0 10px rgba(42,183,255,.42));
}
.fuelMiningExitPortalV6190 span{
  top:150px!important;
}


/* ==========================================================
   V6.19.2 — PORTAL ANIMATION
   Visual-only. Approved portal artwork remains unchanged.
   ========================================================== */
.p1FuelMiningPortalV6190,
.fuelMiningExitPortalV6190{
  overflow:visible;
}

.p1PortalVortexV6192{
  position:absolute;
  left:50%;
  top:50%;
  width:42%;
  height:42%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  pointer-events:none;
  background:
    conic-gradient(
      from 0deg,
      rgba(105,226,255,0) 0deg,
      rgba(92,217,255,.45) 55deg,
      rgba(101,69,255,.18) 115deg,
      rgba(255,115,255,.38) 175deg,
      rgba(69,175,255,.18) 245deg,
      rgba(105,226,255,0) 360deg
    );
  filter:
    blur(3px)
    drop-shadow(0 0 8px rgba(85,205,255,.52));
  mix-blend-mode:screen;
  opacity:.72;
  animation:p1PortalVortexSpinV6192 6.5s linear infinite;
}

.p1PortalEnergyRingV6192{
  position:absolute;
  left:50%;
  top:50%;
  width:50%;
  height:50%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  pointer-events:none;
  border:2px solid rgba(115,230,255,.35);
  box-shadow:
    0 0 10px rgba(65,205,255,.48),
    0 0 24px rgba(65,145,255,.28),
    inset 0 0 12px rgba(123,218,255,.24);
  animation:p1PortalEnergyPulseV6192 1.8s ease-in-out infinite alternate;
}

.p1PortalArcV6192{
  position:absolute;
  left:50%;
  top:50%;
  width:30%;
  height:2px;
  transform-origin:left center;
  pointer-events:none;
  background:linear-gradient(
    90deg,
    rgba(138,243,255,0),
    rgba(171,248,255,.9),
    rgba(104,164,255,.25)
  );
  filter:
    blur(.35px)
    drop-shadow(0 0 5px rgba(127,227,255,.88));
  opacity:0;
}

.p1PortalArcV6192.arcOne{
  transform:translate(-8%,-50%) rotate(32deg);
  animation:p1PortalArcFlashV6192 2.7s steps(1,end) infinite;
}
.p1PortalArcV6192.arcTwo{
  transform:translate(-4%,-50%) rotate(208deg);
  animation:p1PortalArcFlashV6192 3.4s steps(1,end) .9s infinite;
}

.p1FuelMiningPortalArtV6191,
.fuelMiningExitPortalV6190>img{
  animation:p1PortalArtPulseV6192 2.2s ease-in-out infinite alternate;
}

@keyframes p1PortalVortexSpinV6192{
  from{transform:translate(-50%,-50%) rotate(0deg) scale(.96)}
  50%{transform:translate(-50%,-50%) rotate(180deg) scale(1.02)}
  to{transform:translate(-50%,-50%) rotate(360deg) scale(.96)}
}

@keyframes p1PortalEnergyPulseV6192{
  from{
    opacity:.45;
    transform:translate(-50%,-50%) scale(.94);
    box-shadow:
      0 0 8px rgba(65,205,255,.35),
      0 0 18px rgba(65,145,255,.20),
      inset 0 0 9px rgba(123,218,255,.18);
  }
  to{
    opacity:.92;
    transform:translate(-50%,-50%) scale(1.06);
    box-shadow:
      0 0 16px rgba(85,225,255,.72),
      0 0 34px rgba(75,155,255,.46),
      inset 0 0 18px rgba(153,228,255,.33);
  }
}

@keyframes p1PortalArcFlashV6192{
  0%,72%,78%,100%{opacity:0}
  73%{opacity:.95}
  74%{opacity:.15}
  75%{opacity:.88}
  76%{opacity:.08}
  77%{opacity:.72}
}

@keyframes p1PortalArtPulseV6192{
  from{
    filter:
      drop-shadow(0 0 10px rgba(42,183,255,.38))
      brightness(.98);
  }
  to{
    filter:
      drop-shadow(0 0 18px rgba(65,205,255,.62))
      brightness(1.08);
  }
}


/* ==========================================================
   V6.19.3 — VISIBLE PORTAL ENERGY FIX
   Previous animation was too subtle / obscured by portal PNG.
   ========================================================== */
.p1FuelMiningPortalV6190 .p1FuelMiningPortalArtV6191,
.fuelMiningExitPortalV6190>img{
  z-index:2!important;
}

.p1FuelMiningPortalV6190 .p1PortalVortexV6192,
.fuelMiningExitPortalV6190 .p1PortalVortexV6192{
  z-index:3!important;
  width:38%!important;
  height:38%!important;
  opacity:.95!important;
  filter:blur(1.5px) drop-shadow(0 0 14px rgba(84,225,255,.95))!important;
  background:
    conic-gradient(
      from 0deg,
      rgba(0,245,255,.05) 0deg,
      rgba(61,221,255,.95) 45deg,
      rgba(69,75,255,.32) 95deg,
      rgba(199,72,255,.86) 150deg,
      rgba(38,207,255,.35) 225deg,
      rgba(125,244,255,.92) 290deg,
      rgba(0,245,255,.05) 360deg
    )!important;
  -webkit-mask:radial-gradient(circle,transparent 0 18%,#000 25% 100%);
  mask:radial-gradient(circle,transparent 0 18%,#000 25% 100%);
  animation:p1PortalVortexVisibleV6193 2.8s linear infinite!important;
}

.p1FuelMiningPortalV6190 .p1PortalEnergyRingV6192,
.fuelMiningExitPortalV6190 .p1PortalEnergyRingV6192{
  z-index:4!important;
  width:43%!important;
  height:43%!important;
  border:3px solid rgba(132,244,255,.92)!important;
  opacity:1!important;
  box-shadow:
    0 0 10px rgba(101,235,255,.95),
    0 0 24px rgba(57,187,255,.8),
    0 0 42px rgba(91,78,255,.45),
    inset 0 0 16px rgba(160,242,255,.72)!important;
  animation:p1PortalRingVisibleV6193 1.05s ease-in-out infinite alternate!important;
}

.p1FuelMiningPortalV6190 .p1PortalArcV6192{
  z-index:5!important;
  height:3px!important;
  opacity:0;
  filter:drop-shadow(0 0 6px rgba(184,250,255,1))!important;
}

/* bright rotating core */
.p1FuelMiningPortalV6190::before,
.fuelMiningExitPortalV6190::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:28%;
  height:28%;
  transform:translate(-50%,-50%);
  z-index:3;
  border-radius:50%;
  pointer-events:none;
  background:
    radial-gradient(circle at 48% 46%,
      rgba(230,255,255,.95) 0 5%,
      rgba(83,231,255,.75) 8%,
      rgba(52,115,255,.48) 28%,
      rgba(123,48,255,.42) 47%,
      rgba(8,20,58,.28) 65%,
      transparent 72%);
  box-shadow:0 0 18px rgba(75,225,255,.9),0 0 42px rgba(80,87,255,.6);
  animation:p1PortalCoreV6193 .85s ease-in-out infinite alternate;
}

@keyframes p1PortalVortexVisibleV6193{
  from{transform:translate(-50%,-50%) rotate(0deg) scale(.93)}
  50%{transform:translate(-50%,-50%) rotate(180deg) scale(1.06)}
  to{transform:translate(-50%,-50%) rotate(360deg) scale(.93)}
}
@keyframes p1PortalRingVisibleV6193{
  from{transform:translate(-50%,-50%) scale(.88);filter:brightness(.85)}
  to{transform:translate(-50%,-50%) scale(1.10);filter:brightness(1.55)}
}
@keyframes p1PortalCoreV6193{
  from{transform:translate(-50%,-50%) scale(.82) rotate(-5deg);opacity:.68}
  to{transform:translate(-50%,-50%) scale(1.13) rotate(5deg);opacity:1}
}

/* Keep labels over all effects */
.p1FuelMiningPortalV6190>span,
.fuelMiningExitPortalV6190>span{
  z-index:8!important;
}


/* V6.19.8 — minimap portal marker only. Home Base visual CSS untouched. */
.miniFuelPortalV6198{
  position:absolute;
  left:88%;
  top:84%;
  width:15px;
  height:15px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:1px solid #89ecff;
  background:radial-gradient(circle,#eaffff 0 10%,#27cfff 22%,#4638d9 53%,rgba(14,30,60,.92) 72%);
  box-shadow:0 0 8px rgba(65,211,255,.82);
  z-index:13;
  cursor:pointer;
}


/* V6.20.0 — approved NPC skin fit */
.npc .npcSprite.npcApprovedSkinV6200{
  object-fit:contain!important;
  transform-origin:50% 50%;
  filter:
    drop-shadow(0 3px 4px rgba(0,0,0,.92))
    drop-shadow(0 0 4px rgba(255,45,45,.24))!important;
}

/* V6.20.2 — unique hostile NPC ship art */
.npc .npcSprite.npcUniqueHostileSkinV6202{
  object-fit:contain!important;
  transform-origin:50% 50%;
}


/* ==========================================================
   V6.20.3 — P1 AURELIAN WAYFARER
   Neutral planet ships are intentionally much larger than combat NPCs.
   ========================================================== */
.npc.neutral.p1PlanetNeutralV6203{
  width:390px!important;
  height:300px!important;
  overflow:visible!important;
  z-index:28!important;
  color:#78efd1!important;
}
.npc.neutral.p1PlanetNeutralV6203 .p1WayfarerSpriteV6203{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:absolute!important;
  left:50%!important;
  top:0!important;
  width:360px!important;
  height:270px!important;
  object-fit:contain!important;
  transform:translateX(-50%)!important;
  filter:
    drop-shadow(0 10px 12px rgba(0,0,0,.94))
    drop-shadow(0 0 12px rgba(84,238,194,.30))!important;
}
.npc.neutral.p1PlanetNeutralV6203 .npcText{
  bottom:-3px!important;
  transform:translateX(-50%) scale(1.18)!important;
}
.npc.neutral.p1PlanetNeutralV6203.selected .p1WayfarerSpriteV6203{
  filter:
    drop-shadow(0 10px 12px rgba(0,0,0,.94))
    drop-shadow(0 0 20px rgba(92,244,203,.58))!important;
}

/* Wayfarer market */
.wayfarerPanelV6203{
  width:min(680px,calc(100vw - 28px))!important;
  max-height:88vh;
  overflow:auto;
}
.wayfarerRoleV6203{
  margin:4px 0 12px;
  color:#73e8c7;
  font:900 7px/1 system-ui;
  letter-spacing:.1em;
}
.wayfarerReserveV6203{
  padding:11px;
  border:1px solid rgba(85,229,195,.24);
  border-radius:8px;
  background:rgba(7,36,37,.50);
}
.wayfarerReserveV6203>span,.wayfarerReserveV6203>small{display:block;color:#6aa7a0;font:800 6px/1.2 system-ui}
.wayfarerReserveV6203>b{display:block;margin:5px 0;color:#ddfff5;font:900 17px/1 system-ui}
.wayfarerReserveV6203>i{display:block;height:7px;border-radius:9px;background:rgba(6,14,18,.8);overflow:hidden}
.wayfarerReserveV6203>i>em{display:block;height:100%;background:linear-gradient(90deg,#30cfbc,#8dffd8)}
.wayfarerReserveV6203>small{margin-top:6px}
.wayfarerStatsV6203{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:9px 0}
.wayfarerStatsV6203>div{padding:8px;border:1px solid rgba(91,210,196,.14);border-radius:7px;background:rgba(4,24,29,.56)}
.wayfarerStatsV6203 span{display:block;color:#638e91;font:800 5.5px/1 system-ui}
.wayfarerStatsV6203 b{display:block;margin-top:4px;color:#d9fbf6;font:900 9px/1 system-ui}
.wayfarerSectionV6203{margin-top:10px;padding:10px;border:1px solid rgba(82,194,198,.16);border-radius:8px;background:rgba(3,20,27,.55)}
.wayfarerSectionV6203 h3{margin:0 0 5px;color:#aafbed;font:900 9px/1 system-ui}
.wayfarerSectionV6203 p{margin:0 0 8px;color:#72999b;font:700 7px/1.35 system-ui}
.wayfarerActionsV6203{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.wayfarerActionsV6203 button{min-height:46px;padding:7px;border:1px solid rgba(89,224,204,.22);border-radius:7px;background:rgba(9,49,51,.62);color:#d4fff5;font:900 7px/1.15 system-ui;cursor:pointer}
.wayfarerActionsV6203 button b,.wayfarerActionsV6203 button small{display:block;margin-top:4px;color:#75dbc7;font-size:6px}
.wayfarerMsgV6203{margin-top:10px;padding:9px;border-radius:7px;background:rgba(9,47,43,.65);color:#9ff9e1;font:900 7px/1.25 system-ui}
@media(max-width:650px){
  .npc.neutral.p1PlanetNeutralV6203{width:320px!important;height:250px!important}
  .npc.neutral.p1PlanetNeutralV6203 .p1WayfarerSpriteV6203{width:295px!important;height:220px!important}
  .wayfarerStatsV6203{grid-template-columns:repeat(2,1fr)}
  .wayfarerActionsV6203{grid-template-columns:1fr}
}


/* ==========================================================
   V6.20.4 — FORCE APPROVED P1 WAYFARER SKIN / HEAVY FUEL SHIP SCALE
   This overrides every older neutral/trader sprite rule.
   ========================================================== */
.npc.neutral.p1PlanetNeutralV6204{
  width:560px!important;
  height:430px!important;
  overflow:visible!important;
  z-index:30!important;
  background:transparent!important;
  border:0!important;
  color:#78efd1!important;
}
.npc.neutral.p1PlanetNeutralV6204 .p1WayfarerSpriteV6204{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:absolute!important;
  left:50%!important;
  top:0!important;
  width:530px!important;
  height:395px!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  image-rendering:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  transform:translateX(-50%)!important;
  transform-origin:50% 50%!important;
  animation:none!important;
  filter:
    drop-shadow(0 14px 14px rgba(0,0,0,.96))
    drop-shadow(0 0 16px rgba(84,238,194,.32))!important;
  pointer-events:none!important;
}
.npc.neutral.p1PlanetNeutralV6204 .npcFallbackShip,
.npc.neutral.p1PlanetNeutralV6204 .traderFallback,
.npc.neutral.p1PlanetNeutralV6204::before,
.npc.neutral.p1PlanetNeutralV6204::after{
  display:none!important;
  content:none!important;
}
.npc.neutral.p1PlanetNeutralV6204 .npcText{
  position:absolute!important;
  left:50%!important;
  bottom:-4px!important;
  transform:translateX(-50%) scale(1.25)!important;
  white-space:nowrap!important;
}
.npc.neutral.p1PlanetNeutralV6204.selected .p1WayfarerSpriteV6204{
  filter:
    drop-shadow(0 14px 14px rgba(0,0,0,.96))
    drop-shadow(0 0 25px rgba(92,244,203,.65))!important;
}
@media(max-width:650px){
  .npc.neutral.p1PlanetNeutralV6204{
    width:440px!important;
    height:340px!important;
  }
  .npc.neutral.p1PlanetNeutralV6204 .p1WayfarerSpriteV6204{
    width:415px!important;
    height:310px!important;
  }
}


/* V6.20.5 — BLUE AURELIAN WAYFARER / giant heavy fuel vessel */
.npc.neutral.p1PlanetNeutralV6205{
  width:600px!important;
  height:465px!important;
  overflow:visible!important;
  z-index:30!important;
  background:transparent!important;
  border:0!important;
  color:#6fe7ff!important;
  /* V6.27.14 — almost-stationary P1 neutral drift. */
  transition:left 180s linear,top 180s linear!important;
  will-change:left,top;
}
.npc.neutral.p1PlanetNeutralV6205 .p1WayfarerSpriteV6205{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:absolute!important;
  left:50%!important;
  top:0!important;
  width:570px!important;
  height:425px!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  transform:translateX(-50%)!important;
  transform-origin:50% 50%!important;
  animation:none!important;
  filter:
    drop-shadow(0 14px 15px rgba(0,0,0,.96))
    drop-shadow(0 0 18px rgba(55,199,255,.36))!important;
  pointer-events:none!important;
}
.npc.neutral.p1PlanetNeutralV6205 .npcFallbackShip,
.npc.neutral.p1PlanetNeutralV6205::before,
.npc.neutral.p1PlanetNeutralV6205::after{display:none!important;content:none!important}
.npc.neutral.p1PlanetNeutralV6205 .npcText{
  position:absolute!important;
  left:50%!important;
  bottom:-2px!important;
  transform:translateX(-50%) scale(1.28)!important;
  white-space:nowrap!important;
}
@media(max-width:650px){
  .npc.neutral.p1PlanetNeutralV6205{width:470px!important;height:365px!important}
  .npc.neutral.p1PlanetNeutralV6205 .p1WayfarerSpriteV6205{width:445px!important;height:330px!important}
}


/* ==========================================================
   V6.20.6 — WAYFARER PERFORMANCE / TRANSFER EFFECTS
   ========================================================== */
.npc.neutral.p1PlanetNeutralV6205{
  contain:layout style!important;
}
.npc.neutral.p1PlanetNeutralV6205 .p1WayfarerSpriteV6205{
  filter:drop-shadow(0 8px 8px rgba(0,0,0,.82)) drop-shadow(0 0 7px rgba(55,199,255,.20))!important;
  backface-visibility:hidden;
}
.wayfarerRefuelDroneV6206{
  position:absolute;
  width:52px;
  height:38px;
  transform:translate(-50%,-50%);
  z-index:80;
  pointer-events:none;
}
.wayfarerRefuelDroneV6206 i{
  position:absolute;
  inset:6px 8px 10px;
  border-radius:50% 50% 42% 42%;
  background:
    radial-gradient(circle at 50% 45%,#dfffff 0 8%,#4ddcff 9% 24%,#153c58 25% 53%,#08141e 54% 100%);
  border:1px solid rgba(109,231,255,.8);
  box-shadow:0 0 8px rgba(70,210,255,.48);
}
.wayfarerRefuelDroneV6206::after{
  content:"";
  position:absolute;
  left:50%;
  top:25px;
  width:4px;
  height:14px;
  transform:translateX(-50%);
  background:linear-gradient(#dfffff,#51dcff 35%,transparent);
  filter:blur(.3px);
}
.wayfarerRefuelDroneV6206 b{
  position:absolute;
  left:50%;
  top:34px;
  transform:translateX(-50%);
  white-space:nowrap;
  color:#9ceeff;
  font:900 5px/1 system-ui;
}
.wayfarerFuelTransferPulseV6206{
  position:absolute;
  left:50%;
  top:50%;
  width:62px;
  height:62px;
  transform:translate(-50%,-50%);
  border:2px solid rgba(109,235,255,.75);
  border-radius:50%;
  animation:wayfarerFuelPulseV6206 .75s ease-out infinite;
}
@keyframes wayfarerFuelPulseV6206{
  from{transform:translate(-50%,-50%) scale(.35);opacity:1}
  to{transform:translate(-50%,-50%) scale(1.1);opacity:0}
}

/* Keep rendering work lower on this very large map. */
.npc:not(.selected) .npcText{
  text-shadow:none!important;
}
.combatFighterDrone,
.fuelMiningDroneV6183,
.wayfarerRefuelDroneV6206{
  will-change:transform;
}


/* ==========================================================
   V6.20.7 — PARK ACTIVE CARRIER ON THE VISIBLE HOME BASE HELIPAD
   Approved base artwork is untouched.
   ========================================================== */
.carrier.baseParkedOnHelipadV6207{
  z-index:19!important;
  transform:translate(-50%,-50%) scale(.54)!important;
  transition:none!important;
  filter:
    drop-shadow(0 5px 5px rgba(0,0,0,.88))
    drop-shadow(0 0 7px rgba(82,210,255,.22))!important;
  pointer-events:none!important;
}


/* V6.20.8 — direct Warp landing only; no base-entry flight animation */
.carrier.baseDockingV6142{
  transition:none!important;
}


/* ==========================================================
   V6.20.9 — POLISHED DIRECT HELIPAD PARKING
   ========================================================== */

/* Old parking class disabled so it cannot conflict. */
.carrier.baseParkedOnHelipadV6207{
  transform:translate(-50%,-50%)!important;
}

/* Carrier sits visually centered and grounded on the small pad. */
.carrier.baseParkedOnHelipadV6209{
  z-index:19!important;
  transform:translate(-50%,-50%) scale(.47)!important;
  transform-origin:50% 58%!important;
  transition:none!important;
  opacity:1!important;
  pointer-events:none!important;
  filter:
    drop-shadow(0 7px 5px rgba(0,0,0,.82))
    drop-shadow(0 0 4px rgba(91,214,255,.22))!important;
}

/* Soft pad contact shadow/glow directly below the parked Carrier. */
.carrier.baseParkedOnHelipadV6209::before{
  content:"";
  position:absolute;
  left:50%;
  top:68%;
  width:118px;
  height:42px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(
    ellipse,
    rgba(80,213,255,.25) 0%,
    rgba(51,157,205,.12) 42%,
    rgba(0,0,0,.28) 66%,
    transparent 78%
  );
  filter:blur(4px);
  z-index:-1;
  pointer-events:none;
}

/* Warp materialization flash centered on the pad. */
.baseHelipadWarpFlashV6209{
  position:absolute;
  width:150px;
  height:150px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  z-index:18;
  pointer-events:none;
  background:radial-gradient(
    circle,
    rgba(236,255,255,.98) 0 4%,
    rgba(91,230,255,.82) 10%,
    rgba(66,156,255,.42) 28%,
    rgba(77,70,255,.18) 48%,
    transparent 70%
  );
  box-shadow:
    0 0 18px rgba(112,235,255,.92),
    0 0 42px rgba(78,151,255,.55);
  animation:baseHelipadWarpFlashAnimV6209 .62s ease-out forwards;
}

/* Ground ring makes the materialization look attached to the helipad. */
.baseHelipadLandingRingV6209{
  position:absolute;
  width:132px;
  height:58px;
  transform:translate(-50%,-50%);
  border:3px solid rgba(119,232,255,.85);
  border-radius:50%;
  z-index:17;
  pointer-events:none;
  box-shadow:
    0 0 10px rgba(104,229,255,.75),
    inset 0 0 10px rgba(86,174,255,.28);
  animation:baseHelipadRingAnimV6209 .88s ease-out forwards;
}

@keyframes baseHelipadWarpFlashAnimV6209{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.22)}
  18%{opacity:1;transform:translate(-50%,-50%) scale(.72)}
  55%{opacity:.9;transform:translate(-50%,-50%) scale(1.02)}
  100%{opacity:0;transform:translate(-50%,-50%) scale(1.22)}
}

@keyframes baseHelipadRingAnimV6209{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.35)}
  25%{opacity:1}
  100%{opacity:0;transform:translate(-50%,-50%) scale(1.18)}
}


/* ==========================================================
   V6.21.0 — FUEL BASE NPC EXCLUSION RADIUS INDICATOR
   Visual only; gameplay radius is enforced in JS.
   ========================================================== */
#planet1HomeBaseV6141::after{
  content:"NPC SAFE ZONE";
  position:absolute;
  left:50%;
  top:50%;
  width:760px;
  height:760px;
  transform:translate(-50%,-50%);
  border:1px dashed rgba(63,205,255,.11);
  border-radius:50%;
  box-shadow:0 0 18px rgba(46,165,215,.025);
  color:rgba(101,210,235,.20);
  font:900 7px/1 system-ui;
  letter-spacing:.14em;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  padding-top:12px;
  box-sizing:border-box;
  pointer-events:none;
  z-index:-1;
}


/* ==========================================================
   V6.21.2 — PERFORMANCE PASS
   ========================================================== */

/* Giant moving Wayfarer: expensive multi-layer drop shadows force large repaints. */
.npc.neutral.p1PlanetNeutralV6205 .p1WayfarerSpriteV6205{
  filter:drop-shadow(0 7px 6px rgba(0,0,0,.58))!important;
  will-change:auto!important;
}

/* Do not blur giant moving containers. */
.npc.neutral.p1PlanetNeutralV6205{
  backface-visibility:hidden;
  perspective:1000px;
}

/* Large background overlays should not request expensive compositing filters. */
#world::before,
#world::after{
  filter:none!important;
}

/* NPC sprites keep readable art without stacking several shadows. */
.npc:not(.selected) .npcSprite{
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.65))!important;
}
.npc.selected .npcSprite{
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.75)) drop-shadow(0 0 5px currentColor)!important;
}

/* Limit blur effects on always-visible map HUD. */
.miniMap,
.topLeftPanelV693,
.carrierInfoPanel{
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}




/* ==========================================================
   V6.21.4 — WARP ENDURANCE INSIDE CARRIER INFO
   ========================================================== */
.carrierWarpEnduranceV6214{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  margin:10px 0 11px;
}
.carrierWarpEnduranceV6214>div{
  padding:8px 9px;
  border:1px solid rgba(82,194,232,.17);
  border-radius:7px;
  background:rgba(5,24,33,.58);
}
.carrierWarpEnduranceV6214 span{
  display:block;
  color:#648c9d;
  font:900 6px/1 system-ui;
  letter-spacing:.08em;
}
.carrierWarpEnduranceV6214 b{
  display:block;
  margin-top:5px;
  color:#d8f8ff;
  font:900 11px/1 system-ui;
}


/* ==========================================================
   V6.21.5 — IMMEDIATE WARP DESTINATION FEEDBACK
   ========================================================== */
.mapWarpPreviewV6215{
  margin-top:7px;
  padding:7px 8px;
  border:1px solid rgba(90,220,255,.14);
  border-radius:5px;
  background:rgba(4,20,28,.78);
}
.mapWarpPreviewV6215 b,
.mapWarpPreviewV6215 span{
  display:block;
}
.mapWarpPreviewV6215 b{
  font:900 8px/1 system-ui;
  letter-spacing:.07em;
}
.mapWarpPreviewV6215 span{
  margin-top:4px;
  color:#7899a6;
  font:800 7px/1 system-ui;
}
.mapWarpPreviewV6215.valid{
  border-color:rgba(78,229,169,.34);
  background:rgba(5,35,29,.72);
  color:#8fffd0;
}
.mapWarpPreviewV6215.invalid{
  border-color:rgba(255,92,92,.42);
  background:rgba(49,10,14,.80);
  color:#ff8b8b;
}
#mapWarpActionBtn:disabled{
  opacity:.56;
  cursor:not-allowed!important;
}
#moveTarget.warpTargetInvalidV6215,
.moveTarget.warpTargetInvalidV6215{
  border-color:rgba(255,75,75,.92)!important;
  box-shadow:0 0 14px rgba(255,52,52,.65)!important;
  filter:none!important;
}


/* ==========================================================
   V6.21.6 — COLLAPSIBLE COMMAND TAB DRAWER
   Selected tab stands alone; drawer can retract to its handle.
   ========================================================== */
.topLeftTabsV693{
  overflow:visible!important;
  transition:transform .22s ease,opacity .22s ease!important;
}

/* Slim retract/expand handle attached to the outside edge. */
.topLeftTabsV693 .topHudHandleV6216{
  position:absolute!important;
  left:-22px!important;
  top:50%!important;
  width:22px!important;
  height:42px!important;
  transform:translateY(-50%)!important;
  padding:0!important;
  margin:0!important;
  border:1px solid rgba(76,200,237,.28)!important;
  border-right:0!important;
  border-radius:7px 0 0 7px!important;
  background:rgba(3,17,25,.94)!important;
  color:#8edff3!important;
  font:900 18px/1 system-ui!important;
  cursor:pointer!important;
  z-index:2!important;
}

/* When one section is open, hide the other two buttons completely. */
.topLeftTabsV693 button[data-tab].tabHiddenV6216{
  display:none!important;
}

/* Active button feels attached to the panel it opened. */
.topLeftTabsV693 button[data-tab].active{
  min-width:108px!important;
  border-color:rgba(83,222,255,.48)!important;
  box-shadow:0 0 10px rgba(55,190,230,.10)!important;
}

/* Retract the whole control offscreen, leaving only the handle visible. */
.topLeftTabsV693.collapsedV6216{
  transform:translateX(calc(100% + 2px))!important;
}
.topLeftTabsV693.collapsedV6216 .topHudHandleV6216{
  left:-24px!important;
}

/* Panel slides visually from the command dock rather than popping abruptly. */
.topLeftPanelV693:not(.hidden){
  animation:topHudPanelDeployV6216 .18s ease-out both;
}
@keyframes topHudPanelDeployV6216{
  from{opacity:0;transform:translateX(12px) scale(.985)}
  to{opacity:1;transform:translateX(0) scale(1)}
}


/* ==========================================================
   V6.21.7 — TRUE EDGE-HOVER COMMAND DRAWER
   Nothing visible until the player reaches the right screen edge.
   ========================================================== */

/* Disable the previous manual-arrow drawer behavior. */
.topLeftTabsV693 .topHudHandleV6216{
  display:none!important;
}
.topLeftTabsV693.collapsedV6216{
  transform:none!important;
}

/* Command dock is completely beyond the right edge by default. */
.topLeftTabsV693{
  right:0!important;
  left:auto!important;
  transform:translateX(calc(100% + 12px))!important;
  opacity:0!important;
  pointer-events:none!important;
  transition:transform .20s ease-out,opacity .14s ease-out!important;
}

/* Hovering the invisible edge zone slides the whole tab group onto screen. */
.topLeftTabsV693.hoverOpenV6217{
  transform:translateX(0)!important;
  opacity:1!important;
  pointer-events:auto!important;
}

/* Invisible activation strip on the extreme right edge. */
.topHudHoverZoneV6217{
  position:fixed;
  top:0;
  right:0;
  width:12px;
  height:190px;
  z-index:2147482000;
  background:transparent;
  pointer-events:auto;
}

/* Active content still deploys beside/below the selected command tab. */
.topLeftPanelV693:not(.hidden){
  animation:topHudPanelDeployV6216 .18s ease-out both;
}


/* ==========================================================
   V6.21.8 — EDGE HOVER HOTSPOT FIX
   Larger invisible activation zone so the hidden menu is easy to reveal.
   ========================================================== */
.topHudHoverZoneV6217{
  top:0!important;
  right:0!important;
  width:72px!important;
  height:320px!important;
  z-index:2147483646!important;
  pointer-events:auto!important;
  background:transparent!important;
}

/* Drawer itself must sit above the hotspot once deployed. */
.topLeftTabsV693{
  z-index:2147483647!important;
}


/* ==========================================================
   V6.21.9 — HIDDEN COMMAND DRAWER MOVED TO LEFT EDGE
   ========================================================== */
.topHudHoverZoneV6217{
  left:0!important;
  right:auto!important;
}

/* Hide beyond LEFT edge instead of right. */
.topLeftTabsV693{
  left:0!important;
  right:auto!important;
  transform:translateX(calc(-100% - 12px))!important;
}
.topLeftTabsV693.hoverOpenV6217{
  transform:translateX(0)!important;
}


/* ==========================================================
   V6.22.0 — MOBILE-FIRST HUD CLEANUP
   ========================================================== */

/* Old bottom MAP dock is retired. */
.bottomDock{
  display:none!important;
}

/* Phone: larger invisible left-edge touch target; no visible button. */
@media (max-width: 820px), (pointer: coarse){
  .topHudHoverZoneV6217{
    left:0!important;
    right:auto!important;
    top:0!important;
    width:34px!important;
    height:52vh!important;
    min-height:280px!important;
    max-height:520px!important;
    touch-action:manipulation!important;
  }

  .topLeftTabsV693{
    max-width:calc(100vw - 16px)!important;
  }

  .topLeftTabsV693 button[data-tab]{
    min-height:48px!important;
    padding:0 15px!important;
    font-size:10px!important;
    touch-action:manipulation!important;
  }

  .topLeftPanelV693{
    width:min(92vw,360px)!important;
    max-height:72vh!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }

  /* Keep tactical mini-map clear of the phone's bottom gesture area. */
  .miniMap{
    right:8px!important;
    bottom:calc(12px + env(safe-area-inset-bottom))!important;
    width:142px!important;
    height:116px!important;
  }
  .miniMapField{
    height:78px!important;
  }
}


/* ==========================================================
   V6.22.1 — FUEL MINE WRECKS + SLIGHTLY LARGER MINI-MAP
   ========================================================== */
.fuelMineWreckV6221{
  position:absolute!important;
  transform:translate(-50%,-50%) scale(var(--wreck-scale-v6221, .82))!important;
  z-index:12!important;
}
.fuelMineWreckV6221 .destroyedCarrierTagV61318{
  white-space:nowrap;
}
.miniMap{
  width:188px!important;
  height:151px!important;
}
.miniMapField{
  height:110px!important;
}
@media (max-width:820px), (pointer:coarse){
  .miniMap{
    width:158px!important;
    height:130px!important;
  }
  .miniMapField{
    height:91px!important;
  }
}


/* V6.22.1 — Carrier Distress + P1 service UI */
.carrierDistressBtnV6221{
  width:100%;
  min-height:42px;
  margin:2px 0 10px;
  border:1px solid rgba(255,108,108,.40);
  border-radius:7px;
  background:rgba(67,12,18,.72);
  color:#ffb2b2;
  font:900 9px/1 system-ui;
  letter-spacing:.09em;
}
.p1DistressPanelV6221{
  position:fixed;
  left:50%;top:50%;
  transform:translate(-50%,-50%);
  z-index:3500;
  width:min(92vw,390px);
  padding:15px;
  border:1px solid rgba(255,103,103,.34);
  border-radius:12px;
  background:rgba(4,15,22,.97);
  box-shadow:0 18px 50px rgba(0,0,0,.60);
  color:#dffaff;
}
.p1DistressPanelV6221 h2{margin:5px 0 4px;font:900 18px/1 system-ui;color:#ff9d9d}
.p1DistressPanelV6221>small{font:900 7px/1 system-ui;letter-spacing:.12em;color:#738f9b}
.p1DistressPanelV6221>p{margin:0 0 12px;color:#8da8b3;font:700 9px/1.35 system-ui}
.p1DistressPanelV6221>button[data-service]{
  display:block;width:100%;min-height:58px;margin:8px 0;padding:10px 12px;text-align:left;
  border:1px solid rgba(88,203,235,.18);border-radius:8px;background:rgba(5,29,39,.82);color:#d8f7ff;
}
.p1DistressPanelV6221>button[data-service] b,
.p1DistressPanelV6221>button[data-service] span{display:block}
.p1DistressPanelV6221>button[data-service] b{font:900 10px/1 system-ui}
.p1DistressPanelV6221>button[data-service] span{margin-top:5px;color:#789ca9;font:700 8px/1.25 system-ui}
.p1DistressCloseV6221{position:absolute;right:8px;top:7px;border:0;background:transparent;color:#91b5c0;font-size:22px}
.p1DistressStatusV6221{margin-top:10px;padding:9px;border-radius:6px;background:rgba(0,0,0,.22);color:#8edff3;font:900 8px/1.2 system-ui;text-align:center}
.p1ServiceShipV6221{
  position:absolute;z-index:80;width:105px;height:72px;transform:translate(-50%,-50%);pointer-events:none;
}
.p1ServiceShipV6221 img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 8px rgba(82,211,255,.42))}
.p1ServiceShipV6221.medic img{filter:drop-shadow(0 0 8px rgba(95,255,190,.42))}
.p1ServiceShipV6221.servicing{animation:p1ServicePulseV6221 .35s ease-in-out infinite alternate}
@keyframes p1ServicePulseV6221{from{opacity:.68}to{opacity:1}}
@media (max-width:820px),(pointer:coarse){
  .carrierDistressBtnV6221{min-height:48px}
  .p1DistressPanelV6221{width:calc(100vw - 20px);max-height:82vh;overflow:auto;padding:14px}
  .p1DistressPanelV6221>button[data-service]{min-height:64px}
}


/* ==========================================================
   V6.22.2 — READABLE ACTION MENUS
   Click/tap menus now live in the upper HUD lane, like Carrier info.
   They never spawn underneath the tactical mini-map.
   ========================================================== */

/* Destination panel uses the Carrier panel's visual language. */
#mapActionPanel,
.carrierStyleActionV6222{
  position:fixed!important;
  z-index:3200!important;
  box-sizing:border-box!important;
  border:1px solid rgba(88,221,255,.24)!important;
  border-radius:12px!important;
  background:
    linear-gradient(145deg,rgba(5,22,30,.985),rgba(1,10,16,.985))!important;
  box-shadow:
    0 14px 34px rgba(0,0,0,.44),
    0 0 17px rgba(64,211,255,.07)!important;
  color:#dffaff!important;
}

/* Wreck / neutral / service menus open high on the LEFT, away from mini-map. */
.salvagePanelV61318.carrierStyleActionV6222,
.traderPanelV61320.carrierStyleActionV6222,
.p1DistressPanelV6221.carrierStyleActionV6222{
  left:18px!important;
  right:auto!important;
  top:82px!important;
  bottom:auto!important;
  transform:none!important;
  width:min(390px,calc(100vw - 36px))!important;
  max-height:calc(100vh - 108px)!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
}

/* Make these feel like the Carrier card instead of floating popup boxes. */
.carrierStyleActionV6222 h2{
  margin:5px 0 7px!important;
  color:#dffaff!important;
  font:900 15px/1 system-ui!important;
  letter-spacing:.04em!important;
}
.carrierStyleActionV6222>small,
.salvageEyebrowV61318{
  color:#6fcfe8!important;
  font:900 7px/1.2 system-ui!important;
  letter-spacing:.11em!important;
}
.carrierStyleActionV6222 button{
  border-radius:8px!important;
}

/* Phone-first: readable top sheet/card, leaving bottom-right minimap untouched. */
@media (max-width:820px), (pointer:coarse){
  #mapActionPanel,
  .salvagePanelV61318.carrierStyleActionV6222,
  .traderPanelV61320.carrierStyleActionV6222,
  .p1DistressPanelV6221.carrierStyleActionV6222{
    left:10px!important;
    right:auto!important;
    top:calc(72px + env(safe-area-inset-top))!important;
    bottom:auto!important;
    width:calc(100vw - 20px)!important;
    max-width:360px!important;
    max-height:56vh!important;
    transform:none!important;
    overflow:auto!important;
    padding:12px!important;
  }

  #mapActionPanel button,
  .carrierStyleActionV6222 button{
    min-height:46px!important;
    touch-action:manipulation!important;
  }
}


/* ==========================================================
   V6.22.3 — REFUEL STATION MENU POSITION FIX
   Fuel/refuel station always opens in the Carrier-style upper HUD lane.
   ========================================================== */
.traderPanelV61320,
.traderPanelV61320.wayfarerPanelV6203,
.wayfarerPanelV6203,
.traderPanelV61320.carrierStyleActionV6222{
  position:fixed!important;
  left:18px!important;
  right:auto!important;
  top:82px!important;
  bottom:auto!important;
  transform:none!important;
  z-index:3600!important;
  width:min(390px,calc(100vw - 36px))!important;
  max-height:calc(100vh - 110px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
}

/* Keep refuel menu above the tactical map regardless of legacy mini-map z-index. */
.miniMap{
  z-index:1200!important;
}

@media (max-width:820px), (pointer:coarse){
  .traderPanelV61320,
  .traderPanelV61320.wayfarerPanelV6203,
  .wayfarerPanelV6203,
  .traderPanelV61320.carrierStyleActionV6222{
    left:10px!important;
    right:auto!important;
    top:calc(72px + env(safe-area-inset-top))!important;
    bottom:auto!important;
    transform:none!important;
    width:calc(100vw - 20px)!important;
    max-width:360px!important;
    max-height:56vh!important;
    padding:12px!important;
  }

  .wayfarerActionsV6203 button,
  .traderPanelV61320 button{
    min-height:48px!important;
    touch-action:manipulation!important;
  }
}


/* ==========================================================
   V6.22.4 — NPC / OBJECT TARGET CARD MOVED OFF BOTTOM
   This is the AURELIAN WAYFARER selection bar with CLOSE / FUEL MARKET,
   plus the same generic target card used for hostile NPCs.
   ========================================================== */
#targetCard.targetCard,
.targetCard.targetCardCarrierStyleV6224{
  position:fixed!important;
  left:18px!important;
  right:auto!important;
  top:82px!important;
  bottom:auto!important;
  transform:none!important;

  width:250px!important;
  max-width:calc(100vw - 36px)!important;
  min-height:unset!important;
  padding:11px!important;

  z-index:3700!important;

  display:block!important;
  box-sizing:border-box!important;
  border:1px solid rgba(88,221,255,.24)!important;
  border-radius:12px!important;
  background:
    linear-gradient(145deg,rgba(5,22,30,.985),rgba(1,10,16,.985))!important;
  box-shadow:
    0 14px 34px rgba(0,0,0,.44),
    0 0 17px rgba(64,211,255,.07)!important;
  color:#dffaff!important;
}

#targetCard.targetCard.hidden,
.targetCard.targetCardCarrierStyleV6224.hidden{
  display:none!important;
}

#targetCard .targetActions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:7px!important;
  margin-top:10px!important;
}

#targetCard .targetActions button{
  width:100%!important;
  min-height:38px!important;
  height:auto!important;
  padding:8px 10px!important;
  border-radius:8px!important;
  font:900 7px/1 system-ui!important;
  letter-spacing:.06em!important;
}

#targetCard small{
  color:#6fcfe8!important;
  font:900 6px/1.1 system-ui!important;
  letter-spacing:.1em!important;
}

#targetCard strong{
  margin-top:4px!important;
  color:#e0fbff!important;
  font:900 12px/1.05 system-ui!important;
}

#targetCard span{
  margin-top:5px!important;
  color:#8ba9b3!important;
  font:800 7px/1.2 system-ui!important;
}

/* Phone-first layout: same top card behavior as Carrier info. */
@media (max-width:820px), (pointer:coarse){
  #targetCard.targetCard,
  .targetCard.targetCardCarrierStyleV6224{
    left:10px!important;
    right:auto!important;
    top:calc(72px + env(safe-area-inset-top))!important;
    bottom:auto!important;
    transform:none!important;

    width:min(320px,calc(100vw - 20px))!important;
    max-width:calc(100vw - 20px)!important;
    padding:12px!important;
  }

  #targetCard .targetActions button{
    min-height:48px!important;
    font-size:9px!important;
    touch-action:manipulation!important;
  }

  #targetCard strong{
    font-size:14px!important;
  }

  #targetCard span{
    font-size:8px!important;
  }
}


/* ==========================================================
   V6.22.5 — SMALLER TARGET CARD + ACTION AUTO-CLOSE
   ========================================================== */
#targetCard.targetCard,
.targetCard.targetCardCarrierStyleV6224{
  width:190px!important;
  max-width:calc(100vw - 24px)!important;
  padding:8px!important;
  border-radius:9px!important;
}

#targetCard small{
  font-size:5px!important;
}

#targetCard strong{
  font-size:10px!important;
  margin-top:3px!important;
}

#targetCard span{
  font-size:6px!important;
  margin-top:3px!important;
}

#targetCard .targetActions{
  gap:5px!important;
  margin-top:7px!important;
}

#targetCard .targetActions button{
  min-height:30px!important;
  padding:6px 7px!important;
  font-size:6px!important;
}

@media (max-width:820px), (pointer:coarse){
  #targetCard.targetCard,
  .targetCard.targetCardCarrierStyleV6224{
    width:210px!important;
    max-width:calc(100vw - 20px)!important;
    padding:9px!important;
  }

  #targetCard strong{
    font-size:11px!important;
  }

  #targetCard span{
    font-size:7px!important;
  }

  #targetCard .targetActions button{
    min-height:40px!important;
    font-size:8px!important;
  }
}


/* ==========================================================
   V6.22.6 — BOTTOM-RIGHT ACTION MENU LANE
   All click/action menus live together here instead of top-left.
   Mini-map remains visible below them.
   ========================================================== */

/* Mini-map anchors at bottom-right. */
.miniMap{
  right:12px!important;
  left:auto!important;
  bottom:12px!important;
  z-index:1200!important;
}

/* Shared action lane sits ABOVE the mini-map. */
#mapActionPanel,
#targetCard.targetCard,
.targetCard.targetCardCarrierStyleV6224,
.salvagePanelV61318.carrierStyleActionV6222,
.traderPanelV61320,
.traderPanelV61320.wayfarerPanelV6203,
.wayfarerPanelV6203,
.p1DistressPanelV6221,
.planetJumpMenuV6226{
  position:fixed!important;
  right:12px!important;
  left:auto!important;
  bottom:176px!important;
  top:auto!important;
  transform:none!important;
  z-index:3600!important;
}

/* Compact target card remains especially small. */
#targetCard.targetCard,
.targetCard.targetCardCarrierStyleV6224{
  width:190px!important;
}

/* Larger content/action cards. */
#mapActionPanel,
.salvagePanelV61318.carrierStyleActionV6222,
.traderPanelV61320,
.traderPanelV61320.wayfarerPanelV6203,
.wayfarerPanelV6203,
.p1DistressPanelV6221,
.planetJumpMenuV6226{
  width:min(360px,calc(100vw - 28px))!important;
  max-height:calc(100vh - 210px)!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
}

/* Planet jump nav button */
.planetJumpBtnV6226{
  padding:0 11px;
  border:1px solid rgba(128,111,255,.30);
  background:rgba(20,15,50,.78);
  color:#c8bcff;
  font:900 7px/1 system-ui;
  letter-spacing:.08em;
  cursor:pointer;
}

/* Planet Jump card */
.planetJumpMenuV6226{
  padding:12px!important;
  border:1px solid rgba(125,111,255,.32)!important;
  border-radius:12px!important;
  background:
    linear-gradient(145deg,rgba(12,15,35,.985),rgba(3,8,18,.985))!important;
  box-shadow:
    0 14px 34px rgba(0,0,0,.48),
    0 0 18px rgba(109,87,255,.08)!important;
  color:#e8f8ff;
}
.planetJumpHeadV6226{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.planetJumpHeadV6226 small{
  color:#897fd2;
  font:900 6px/1 system-ui;
  letter-spacing:.12em;
}
.planetJumpHeadV6226 h2{
  margin:5px 0 4px;
  font:900 16px/1 system-ui;
}
.planetJumpHeadV6226 p{
  margin:0;
  color:#8499aa;
  font:800 7px/1.2 system-ui;
}
.planetJumpHeadV6226 button{
  width:34px;height:34px;
  border:0;
  background:transparent;
  color:#aeb9c3;
  font-size:22px;
}
.planetJumpListV6226{
  display:grid;
  gap:6px;
  margin-top:11px;
}
.planetJumpListV6226>button{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  width:100%;
  min-height:48px;
  padding:8px 10px;
  text-align:left;
  border-radius:8px;
  border:1px solid rgba(95,165,210,.15);
  background:rgba(5,22,33,.70);
  color:#dffaff;
}
.planetJumpListV6226 button span,
.planetJumpListV6226 button b,
.planetJumpListV6226 button small{
  display:block;
}
.planetJumpListV6226 button b{
  font:900 9px/1 system-ui;
}
.planetJumpListV6226 button small{
  margin-top:4px;
  color:#718b98;
  font:800 6px/1 system-ui;
}
.planetJumpListV6226 button em{
  max-width:120px;
  text-align:right;
  color:#738491;
  font:900 6px/1.15 system-ui;
  font-style:normal;
}
.planetJumpListV6226 button.available{
  border-color:rgba(91,225,180,.30);
  background:rgba(4,38,31,.76);
}
.planetJumpListV6226 button.available em{
  color:#80f1c4;
}
.planetJumpListV6226 button.current{
  border-color:rgba(112,144,255,.28);
  background:rgba(18,26,55,.74);
}
.planetJumpListV6226 button.locked{
  opacity:.42;
}
.planetJumpRuleV6226{
  margin-top:9px;
  padding:8px;
  border-radius:7px;
  background:rgba(0,0,0,.20);
}
.planetJumpRuleV6226 b,
.planetJumpRuleV6226 span{
  display:block;
}
.planetJumpRuleV6226 b{
  color:#cfc7ff;
  font:900 7px/1 system-ui;
}
.planetJumpRuleV6226 span{
  margin-top:4px;
  color:#718791;
  font:800 6px/1.25 system-ui;
}
.planetJumpStatusV6226{
  margin-top:8px;
  padding:8px;
  text-align:center;
  border:1px solid rgba(106,177,214,.13);
  border-radius:6px;
  color:#8edff3;
  font:900 7px/1.1 system-ui;
}

/* Mobile-first: slightly larger touch interface, still bottom-right. */
@media (max-width:820px), (pointer:coarse){
  .miniMap{
    right:8px!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
  }

  #mapActionPanel,
  #targetCard.targetCard,
  .targetCard.targetCardCarrierStyleV6224,
  .salvagePanelV61318.carrierStyleActionV6222,
  .traderPanelV61320,
  .traderPanelV61320.wayfarerPanelV6203,
  .wayfarerPanelV6203,
  .p1DistressPanelV6221,
  .planetJumpMenuV6226{
    right:8px!important;
    left:auto!important;
    bottom:calc(150px + env(safe-area-inset-bottom))!important;
    top:auto!important;
    transform:none!important;
  }

  #targetCard.targetCard,
  .targetCard.targetCardCarrierStyleV6224{
    width:210px!important;
  }

  #mapActionPanel,
  .salvagePanelV61318.carrierStyleActionV6222,
  .traderPanelV61320,
  .traderPanelV61320.wayfarerPanelV6203,
  .wayfarerPanelV6203,
  .p1DistressPanelV6221,
  .planetJumpMenuV6226{
    width:min(330px,calc(100vw - 16px))!important;
    max-height:58vh!important;
  }

  .planetJumpBtnV6226{
    min-height:42px;
    padding:0 13px;
    font-size:9px;
    touch-action:manipulation;
  }

  .planetJumpListV6226>button{
    min-height:54px;
    touch-action:manipulation;
  }
}


/* ==========================================================
   V6.22.7 — ACTION MENUS MOVED TO BOTTOM-LEFT
   User correction: selection/action cards belong lower-left.
   Tactical mini-map stays lower-right.
   ========================================================== */
#mapActionPanel,
#targetCard.targetCard,
.targetCard.targetCardCarrierStyleV6224,
.salvagePanelV61318.carrierStyleActionV6222,
.traderPanelV61320,
.traderPanelV61320.wayfarerPanelV6203,
.wayfarerPanelV6203,
.p1DistressPanelV6221,
.planetJumpMenuV6226{
  left:12px!important;
  right:auto!important;
  bottom:12px!important;
  top:auto!important;
  transform:none!important;
}

/* The tactical mini-map remains in its own bottom-right corner. */
.miniMap{
  left:auto!important;
  right:12px!important;
  bottom:12px!important;
}

@media (max-width:820px), (pointer:coarse){
  #mapActionPanel,
  #targetCard.targetCard,
  .targetCard.targetCardCarrierStyleV6224,
  .salvagePanelV61318.carrierStyleActionV6222,
  .traderPanelV61320,
  .traderPanelV61320.wayfarerPanelV6203,
  .wayfarerPanelV6203,
  .p1DistressPanelV6221,
  .planetJumpMenuV6226{
    left:8px!important;
    right:auto!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
    top:auto!important;
  }

  .miniMap{
    left:auto!important;
    right:8px!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
  }
}


/* ==========================================================
   V6.22.8 — GALAXY WARP NAVIGATION BUTTON
   ========================================================== */
.galaxyWarpBtnV6228{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:92px!important;
  min-height:38px!important;
  padding:0 12px!important;
  border:1px solid rgba(139,117,255,.58)!important;
  border-radius:7px!important;
  background:linear-gradient(180deg,rgba(52,36,110,.94),rgba(19,15,52,.96))!important;
  box-shadow:0 0 14px rgba(120,93,255,.18)!important;
  color:#e2dcff!important;
  font:900 8px/1 system-ui!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
}
@media (max-width:820px),(pointer:coarse){
  .galaxyWarpBtnV6228{
    min-width:104px!important;
    min-height:46px!important;
    font-size:9px!important;
    touch-action:manipulation!important;
  }
}


/* ==========================================================
   V6.22.9 — READABLE PLAYER + NPC WORLD LABELS
   Larger, higher-contrast labels for phone screens.
   ========================================================== */

/* Player Carrier name + level */
#playerUnit .unitLabel,
.playerUnit .unitLabel{
  min-width:88px!important;
  padding:4px 7px!important;
  border:1px solid rgba(88,220,255,.18)!important;
  border-radius:5px!important;
  background:rgba(1,10,16,.76)!important;
  box-shadow:0 2px 8px rgba(0,0,0,.55)!important;
  text-align:center!important;
  text-shadow:0 1px 2px #000,0 0 4px #000!important;
}
#playerUnit .unitLabel strong,
.playerUnit .unitLabel strong{
  display:block!important;
  color:#f0fcff!important;
  font-size:9px!important;
  line-height:11px!important;
  font-weight:900!important;
  letter-spacing:.05em!important;
}
#playerUnit .unitLabel span,
.playerUnit .unitLabel span{
  display:block!important;
  margin-top:1px!important;
  color:#72dff8!important;
  font-size:7px!important;
  line-height:9px!important;
  font-weight:900!important;
}

/* NPC level/tier + name */
.npcText{
  min-width:108px!important;
  padding:3px 5px!important;
  border-radius:4px!important;
  background:rgba(0,7,11,.72)!important;
  box-shadow:0 2px 7px rgba(0,0,0,.55)!important;
  text-align:center!important;
  line-height:9px!important;
  text-shadow:0 1px 2px #000,0 0 4px #000!important;
}
.npcText b{
  color:#9edff0!important;
  font-size:7px!important;
  line-height:9px!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
}
.npcText span{
  color:#f1fbff!important;
  font-size:8px!important;
  line-height:10px!important;
  font-weight:900!important;
  letter-spacing:.025em!important;
}

/* Hostiles retain a readable warning tint on their level line. */
.npc.green .npcText b{
  color:#ff9b9b!important;
}
/* Neutrals get a clear cyan identity line. */
.npc.neutral .npcText b{
  color:#74e8ff!important;
}

@media (max-width:820px),(pointer:coarse){
  #playerUnit .unitLabel,
  .playerUnit .unitLabel{
    min-width:98px!important;
    padding:5px 8px!important;
  }
  #playerUnit .unitLabel strong,
  .playerUnit .unitLabel strong{
    font-size:11px!important;
    line-height:13px!important;
  }
  #playerUnit .unitLabel span,
  .playerUnit .unitLabel span{
    font-size:8px!important;
    line-height:10px!important;
  }

  .npcText{
    min-width:116px!important;
    padding:4px 6px!important;
    line-height:10px!important;
  }
  .npcText b{
    font-size:8px!important;
    line-height:10px!important;
  }
  .npcText span{
    font-size:10px!important;
    line-height:12px!important;
  }
}


/* ==========================================================
   V6.23.0 — LARGER WORLD NAMES
   Make player + NPC identity readable at normal map zoom.
   ========================================================== */

/* PLAYER */
#playerUnit .unitLabel,
.playerUnit .unitLabel{
  min-width:120px!important;
  padding:6px 10px!important;
}
#playerUnit .unitLabel strong,
.playerUnit .unitLabel strong{
  font-size:14px!important;
  line-height:16px!important;
  letter-spacing:.045em!important;
}
#playerUnit .unitLabel span,
.playerUnit .unitLabel span{
  margin-top:2px!important;
  font-size:10px!important;
  line-height:12px!important;
}

/* NPC */
.npcText{
  min-width:138px!important;
  padding:5px 8px!important;
  line-height:12px!important;
}
.npcText b{
  font-size:10px!important;
  line-height:12px!important;
}
.npcText span{
  font-size:13px!important;
  line-height:15px!important;
  letter-spacing:.025em!important;
}

/* PHONE / TOUCH — intentionally larger */
@media (max-width:820px),(pointer:coarse){
  #playerUnit .unitLabel,
  .playerUnit .unitLabel{
    min-width:132px!important;
    padding:7px 11px!important;
  }
  #playerUnit .unitLabel strong,
  .playerUnit .unitLabel strong{
    font-size:16px!important;
    line-height:18px!important;
  }
  #playerUnit .unitLabel span,
  .playerUnit .unitLabel span{
    font-size:12px!important;
    line-height:14px!important;
  }

  .npcText{
    min-width:150px!important;
    padding:6px 9px!important;
  }
  .npcText b{
    font-size:11px!important;
    line-height:13px!important;
  }
  .npcText span{
    font-size:15px!important;
    line-height:17px!important;
  }
}


/* ==========================================================
   V6.23.1 — SPACE DRIFT / SPACE BRAKES VISUALS
   ========================================================== */
.carrierFlightControlV6231{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:9px;
  margin:9px 0;
  padding:8px 9px;
  border:1px solid rgba(97,205,235,.16);
  border-radius:7px;
  background:rgba(4,24,33,.62);
}
.carrierFlightControlV6231 span,
.carrierFlightControlV6231 b{
  display:block;
}
.carrierFlightControlV6231 span{
  color:#688c9a;
  font:900 6px/1 system-ui;
  letter-spacing:.09em;
}
.carrierFlightControlV6231 b{
  margin-top:4px;
  color:#8fffc8;
  font:900 9px/1 system-ui;
}
.carrierFlightControlV6231 b.released{
  color:#ffd070;
}
.carrierFlightControlV6231 button{
  min-width:76px;
  min-height:34px;
  border:1px solid rgba(91,222,255,.25)!important;
  background:rgba(7,33,43,.86)!important;
  color:#c9f7ff!important;
  font:900 7px/1 system-ui!important;
}
.carrierFlightControlV6231 button.engage{
  border-color:rgba(255,191,75,.34)!important;
  color:#ffd684!important;
}

/* The Carrier should feel suspended, not glued to the map. */
.carrier .spriteWrap{
  transform-origin:50% 54%;
}
.carrier.spaceDriftingV6231 .spriteWrap{
  animation:carrierVacuumFloatV6231 5.8s ease-in-out infinite alternate;
}
.carrier.spaceBrakesEngagedV6231:not(.spaceDriftingV6231) .spriteWrap{
  animation:carrierStationKeepingV6231 3.2s ease-in-out infinite alternate;
}

/* Small station-keeping thruster glow when brakes are holding the ship. */
.carrier.spaceBrakesEngagedV6231::after{
  content:"";
  position:absolute;
  left:50%;
  top:64%;
  width:42%;
  height:18%;
  transform:translateX(-50%);
  pointer-events:none;
  opacity:.25;
  background:radial-gradient(ellipse,rgba(90,220,255,.30),transparent 68%);
  animation:carrierBrakeThrusterPulseV6231 1.8s ease-in-out infinite alternate;
}

@keyframes carrierVacuumFloatV6231{
  from{transform:translate3d(-1px,-2px,0) rotate(-.35deg)}
  to{transform:translate3d(2px,2px,0) rotate(.35deg)}
}
@keyframes carrierStationKeepingV6231{
  from{transform:translate3d(0,-.8px,0) rotate(-.10deg)}
  to{transform:translate3d(.7px,.8px,0) rotate(.10deg)}
}
@keyframes carrierBrakeThrusterPulseV6231{
  from{opacity:.12;transform:translateX(-50%) scale(.92)}
  to{opacity:.32;transform:translateX(-50%) scale(1.05)}
}

@media (max-width:820px),(pointer:coarse){
  .carrierFlightControlV6231{
    min-height:54px;
    padding:9px 10px;
  }
  .carrierFlightControlV6231 span{
    font-size:7px;
  }
  .carrierFlightControlV6231 b{
    font-size:10px;
  }
  .carrierFlightControlV6231 button{
    min-height:44px!important;
    min-width:86px!important;
    font-size:8px!important;
    touch-action:manipulation!important;
  }
}

/* Respect reduced motion on phones/OS settings. Physics still works; only decorative bobbing stops. */
@media (prefers-reduced-motion:reduce){
  .carrier.spaceDriftingV6231 .spriteWrap,
  .carrier.spaceBrakesEngagedV6231 .spriteWrap,
  .carrier.spaceBrakesEngagedV6231::after{
    animation:none!important;
  }
}


/* ==========================================================
   V6.23.2 — CARRIER MENU BOTTOM-LEFT + CONTROLLED SPACE DRIFT
   ========================================================== */
#carrierInfoPanel.carrierInfoPanel,
.carrierInfoPanel{
  position:fixed!important;
  left:12px!important;
  right:auto!important;
  top:auto!important;
  bottom:12px!important;
  transform:none!important;
  z-index:3650!important;
  width:250px!important;
  max-width:calc(100vw - 24px)!important;
  max-height:calc(100vh - 24px)!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
}

@media (max-width:820px),(pointer:coarse){
  #carrierInfoPanel.carrierInfoPanel,
  .carrierInfoPanel{
    left:8px!important;
    right:auto!important;
    top:auto!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
    width:min(300px,calc(100vw - 16px))!important;
    max-height:60vh!important;
  }
}



/* V6.28.31 — bottom TEST MODE / FUEL / CREDITS indicator removed. */



/* V6.24.9 — compact warp status: left side only, never full-screen centered */
.warpOverlay{
  inset:0 !important;
  display:block !important;
  background:transparent !important;
}
.warpOverlay.hidden{display:none !important;}
.warpOverlay .warpText{
  position:absolute !important;
  left:14px !important;
  top:50% !important;
  right:auto !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  width:min(230px,56vw) !important;
  margin:0 !important;
}

/* V6.24.9 — Carrier page owns both Carrier Fleet + Drone Fleet */
.baseFleetActionsV6249{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:10px;
}
.baseDroneFleetV6249{
  margin-top:12px;
  padding:10px;
  border:1px solid rgba(91,190,255,.24);
  background:rgba(5,18,35,.54);
  border-radius:10px;
}
.baseDroneStripV6249{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  margin-top:8px;
}
.baseDroneStripV6249>div{
  min-height:42px;
  display:grid;
  place-items:center;
  text-align:center;
  border:1px solid rgba(91,190,255,.18);
  background:rgba(9,29,52,.66);
  border-radius:8px;
  padding:7px;
}
.baseDroneStripV6249 span{
  font-size:10px;
  letter-spacing:.08em;
}
.baseDroneFleetV6249:not(.open) .baseDroneStripV6249{display:none;}


/* V6.25.0 — warp HUD belongs in the BOTTOM LEFT */
.warpOverlay .warpText,
.warpText{
  position:fixed !important;
  left:14px !important;
  bottom:74px !important;
  top:auto !important;
  right:auto !important;
  transform:none !important;
  width:min(230px,58vw) !important;
  margin:0 !important;
  text-align:left !important;
  z-index:3100 !important;
}
.warpOverlay .warpRing{
  position:fixed !important;
  left:18px !important;
  bottom:112px !important;
  top:auto !important;
  right:auto !important;
  width:58px !important;
  height:58px !important;
  transform:none !important;
}

/* V6.25.0 — Drone Fleet uses visual ship-style cards */
.baseDroneCardV6250{
  min-height:92px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
}
.baseDroneCardV6250 img{
  display:block;
  width:74px;
  height:54px;
  object-fit:contain;
  filter:drop-shadow(0 0 8px rgba(84,205,255,.30));
  pointer-events:none;
}
.baseDroneCardV6250 span{
  display:block;
  text-align:center;
}


/* V6.25.1 — Drone Fleet Management mirrors Carrier Fleet Management */
.baseDroneManagementV6251{margin-top:10px;}
.baseDroneStripV6251 img{
  width:100% !important;
  max-width:82px !important;
  height:58px !important;
  object-fit:contain !important;
}
.droneGarageV6251 .carrierChoiceArtV6148 img{
  object-fit:contain !important;
}




/* V6.25.3 — keep the slightly larger Home Base */
.planet1HomeBaseV6141{
  width:390px !important;
  height:275px !important;
}

/* Make the EXISTING player name + level under the Carrier readable.
   No duplicate nameplate is created. */
#carrier .unitLabel{
  top:96% !important;
  min-width:124px !important;
  padding:5px 9px !important;
  border:1px solid rgba(88,220,255,.28) !important;
  border-radius:5px !important;
  background:rgba(1,10,16,.84) !important;
  box-shadow:0 2px 8px rgba(0,0,0,.65) !important;
  text-align:center !important;
  text-shadow:0 1px 2px #000,0 0 5px #000 !important;
  white-space:nowrap !important;
}
#carrier .unitLabel strong{
  display:block !important;
  color:#f0fcff !important;
  font-size:13px !important;
  line-height:15px !important;
  font-weight:900 !important;
  letter-spacing:.045em !important;
}
#carrier .unitLabel span{
  display:block !important;
  margin-top:2px !important;
  color:#72dff8 !important;
  font-size:9px !important;
  line-height:11px !important;
  font-weight:900 !important;
}

/* Hide hostile NPC static spawn points until patrol JS owns their live position. */
.npc:not(.neutral):not(.npcPatrolReadyV6253){
  visibility:hidden !important;
}
.npc.npcPatrolReadyV6253{
  visibility:visible !important;
}


/* ==========================================================
   V6.26.1 — MAP HUD REHALL — EXACT CURRENT BUILD
   Mini-map: TOP RIGHT
   Warp / NPC / fuel / target action panels: BOTTOM RIGHT
   ========================================================== */

/* Tactical mini-map */
#miniMap.miniMap,
.miniMap{
  position:fixed !important;
  top:58px !important;
  right:12px !important;
  bottom:auto !important;
  left:auto !important;
  transform:none !important;
  z-index:2600 !important;
}

/* Destination / warp click menu */
#mapActionPanel.mapActionPanel,
.mapActionPanel{
  position:fixed !important;
  right:12px !important;
  bottom:72px !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;
  z-index:3600 !important;
}

/* Normal NPC selection card */
#targetCard.targetCard,
.targetCard.targetCardCarrierStyleV6224{
  position:fixed !important;
  right:12px !important;
  bottom:72px !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;
  z-index:3650 !important;
}

/* Aggressive / hostile NPC combat panel */
#npcCombatPanel.npcCombatPanel,
.npcCombatPanel{
  position:fixed !important;
  right:12px !important;
  bottom:72px !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;
  z-index:3700 !important;
}

/* Fuel station / neutral trader / salvage / distress / galaxy panels */
.fuelPortalPromptV6190,
.traderPanelV61320,
.traderPanelV61320.wayfarerPanelV6203,
.wayfarerPanelV6203,
.salvagePanelV61318,
.p1DistressPanelV6221,
.planetJumpMenuV6226,
#carrierInfoPanel.carrierInfoPanel,
.carrierInfoPanel{
  position:fixed !important;
  right:12px !important;
  bottom:72px !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;
  z-index:3720 !important;
  max-height:min(62vh,520px) !important;
  overflow:auto !important;
  -webkit-overflow-scrolling:touch !important;
}

/* Warp effect/status */
#warpOverlay.warpOverlay,
.warpOverlay{
  position:fixed !important;
  inset:0 !important;
  z-index:3800 !important;
  pointer-events:none !important;
  background:transparent !important;
}
#warpOverlay .warpRing,
.warpOverlay .warpRing{
  position:fixed !important;
  width:66px !important;
  height:66px !important;
  right:18px !important;
  bottom:126px !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;
}
#warpOverlay .warpText,
.warpOverlay .warpText,
.warpText{
  position:fixed !important;
  width:230px !important;
  max-width:calc(100vw - 24px) !important;
  right:12px !important;
  bottom:82px !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;
  text-align:right !important;
}
.warpCoreMessageV6170{
  position:fixed !important;
  right:12px !important;
  bottom:72px !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;
}

/* ==========================================================
   V6.26.1 — LIVE GALAXY CHAT
   GLOBAL · FUEL PLANET A · PRIVATE · SUPPORT
   ========================================================== */
.galaxyChatToggleV6261{
  position:fixed;
  left:12px;
  bottom:72px;
  z-index:3900;
  width:98px;
  min-height:40px;
  padding:7px 10px;
  border:1px solid rgba(88,220,255,.35);
  border-radius:8px;
  background:linear-gradient(180deg,rgba(7,31,43,.97),rgba(2,13,20,.98));
  color:#dffaff;
  box-shadow:0 8px 20px rgba(0,0,0,.40),0 0 14px rgba(62,204,255,.08);
  cursor:pointer;
  text-align:left;
}
.galaxyChatToggleV6261 small,
.galaxyChatToggleV6261 b{display:block}
.galaxyChatToggleV6261 small{
  color:#6596a3;
  font:900 6px/1 system-ui;
  letter-spacing:.11em;
}
.galaxyChatToggleV6261 b{
  margin-top:4px;
  color:#c9f7ff;
  font:900 11px/1 system-ui;
  letter-spacing:.08em;
}

.galaxyChatV6261{
  position:fixed;
  left:12px;
  bottom:120px;
  z-index:3950;
  width:min(380px,calc(100vw - 24px));
  height:min(440px,calc(100vh - 150px));
  display:grid;
  grid-template-rows:auto auto auto auto 1fr auto auto;
  border:1px solid rgba(83,216,247,.32);
  border-radius:12px;
  background:linear-gradient(160deg,rgba(5,20,29,.99),rgba(1,8,13,.99));
  box-shadow:0 20px 48px rgba(0,0,0,.62),0 0 25px rgba(52,190,236,.08);
  color:#dffaff;
  overflow:hidden;
  box-sizing:border-box;
}
.galaxyChatV6261.hidden{display:none !important}

.galaxyChatHeadV6261{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:10px 11px 8px;
  border-bottom:1px solid rgba(82,205,236,.13);
}
.galaxyChatHeadV6261 small{
  display:block;
  color:#5c8e9a;
  font:900 6px/1 system-ui;
  letter-spacing:.13em;
}
.galaxyChatHeadV6261 h2{
  margin:4px 0 0;
  color:#effdff;
  font:900 15px/1 system-ui;
  letter-spacing:.08em;
}
.galaxyChatHeadV6261 button{
  width:30px;height:30px;border:0;background:transparent;
  color:#88aeb8;font-size:20px;cursor:pointer;
}

.galaxyChatTabsV6261{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:4px;
  padding:7px;
}
.galaxyChatTabsV6261 button{
  min-height:34px;
  padding:4px;
  border:1px solid rgba(84,194,222,.16);
  border-radius:5px;
  background:rgba(6,28,39,.72);
  color:#7198a2;
  font:900 6px/1.1 system-ui;
  letter-spacing:.035em;
  cursor:pointer;
}
.galaxyChatTabsV6261 button.active{
  color:#c9f8ff;
  border-color:rgba(86,222,255,.43);
  background:rgba(10,58,72,.74);
}

.galaxyChatAllianceLaterV6261{
  margin:0 7px 6px;
  padding:5px 7px;
  border:1px dashed rgba(255,194,75,.18);
  border-radius:5px;
  color:#9b8050;
  background:rgba(40,27,7,.28);
  font:900 6px/1 system-ui;
  letter-spacing:.08em;
  text-align:center;
}

.galaxyPrivateTargetV6261{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:8px;
  padding:0 8px 7px;
}
.galaxyPrivateTargetV6261.hidden{display:none !important}
.galaxyPrivateTargetV6261 label{
  color:#728f98;
  font:900 6px/1 system-ui;
  letter-spacing:.08em;
}
.galaxyPrivateTargetV6261 input{
  min-width:0;
  height:30px;
  box-sizing:border-box;
  border:1px solid rgba(84,201,230,.22);
  border-radius:5px;
  background:rgba(1,11,17,.84);
  color:#e8fbff;
  padding:0 8px;
  outline:none;
  font:800 8px/1 system-ui;
}

.galaxyChatRoomTitleV6261{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:7px 9px;
  border-top:1px solid rgba(77,199,228,.08);
  border-bottom:1px solid rgba(77,199,228,.10);
  background:rgba(5,27,37,.50);
}
.galaxyChatRoomTitleV6261 b{
  color:#bdf5ff;
  font:900 8px/1 system-ui;
  letter-spacing:.08em;
}
.galaxyChatRoomTitleV6261 span{
  color:#537b86;
  font:900 6px/1 system-ui;
  letter-spacing:.07em;
}

.galaxyChatMessagesV6261{
  min-height:0;
  overflow:auto;
  padding:8px;
}
.galaxyChatMessageV6261{
  margin-bottom:7px;
  padding:7px 8px;
  border-left:2px solid rgba(83,213,244,.22);
  border-radius:0 6px 6px 0;
  background:rgba(7,27,36,.54);
}
.galaxyChatMessageV6261.mine{
  border-left-color:rgba(105,239,181,.42);
  background:rgba(7,39,32,.48);
}
.galaxyChatMessageV6261>div{
  display:flex;
  justify-content:space-between;
  gap:8px;
  align-items:center;
}
.galaxyChatMessageV6261 b{
  color:#91ebff;
  font:900 7px/1 system-ui;
}
.galaxyChatMessageV6261.mine b{color:#8ff3bf}
.galaxyChatMessageV6261 time{
  color:#4f7078;
  font:800 6px/1 system-ui;
}
.galaxyChatMessageV6261 p{
  margin:5px 0 0;
  color:#d9edf1;
  font:700 8px/1.35 system-ui;
  overflow-wrap:anywhere;
}
.galaxyChatMessageV6261 small{
  display:block;
  margin-top:4px;
  color:#5f7880;
  font:800 5px/1 system-ui;
}
.galaxyChatEmptyV6261{
  padding:20px 12px;
  color:#587681;
  text-align:center;
  font:800 7px/1.4 system-ui;
}

.galaxyChatComposerV6261{
  display:grid;
  grid-template-columns:1fr auto;
  gap:6px;
  padding:8px;
  border-top:1px solid rgba(85,203,232,.12);
}
.galaxyChatComposerV6261 input{
  min-width:0;
  height:34px;
  box-sizing:border-box;
  border:1px solid rgba(83,201,230,.22);
  border-radius:6px;
  background:rgba(1,10,15,.90);
  color:#e9fbff;
  padding:0 9px;
  outline:none;
  font:700 8px/1 system-ui;
}
.galaxyChatComposerV6261 button{
  min-width:58px;
  border:1px solid rgba(77,224,255,.34);
  border-radius:6px;
  background:rgba(8,55,68,.82);
  color:#bcf6ff;
  font:900 7px/1 system-ui;
  letter-spacing:.06em;
  cursor:pointer;
}
.galaxyChatStatusV6261{
  padding:0 8px 7px;
  color:#486a74;
  font:900 5px/1 system-ui;
  letter-spacing:.07em;
  text-align:right;
}

@media (max-width:820px),(pointer:coarse){
  #miniMap.miniMap,.miniMap{
    top:52px !important;
    right:8px !important;
    bottom:auto !important;
  }

  #mapActionPanel.mapActionPanel,
  .mapActionPanel,
  #targetCard.targetCard,
  .targetCard.targetCardCarrierStyleV6224,
  #npcCombatPanel.npcCombatPanel,
  .npcCombatPanel,
  .fuelPortalPromptV6190,
  .traderPanelV61320,
  .traderPanelV61320.wayfarerPanelV6203,
  .wayfarerPanelV6203,
  .salvagePanelV61318,
  .p1DistressPanelV6221,
  .planetJumpMenuV6226,
  #carrierInfoPanel.carrierInfoPanel,
  .carrierInfoPanel{
    right:8px !important;
    bottom:calc(68px + env(safe-area-inset-bottom)) !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
    max-width:calc(100vw - 16px) !important;
  }

  #warpOverlay .warpText,
  .warpOverlay .warpText,
  .warpText{
    right:8px !important;
    bottom:calc(80px + env(safe-area-inset-bottom)) !important;
  }

  #warpOverlay .warpRing,
  .warpOverlay .warpRing{
    right:14px !important;
    bottom:calc(124px + env(safe-area-inset-bottom)) !important;
  }

  .galaxyChatToggleV6261{
    left:8px;
    bottom:calc(68px + env(safe-area-inset-bottom));
  }
  .galaxyChatV6261{
    left:8px;
    bottom:calc(116px + env(safe-area-inset-bottom));
    width:calc(100vw - 16px);
    height:min(440px,calc(100vh - 142px));
  }
}


/* ==========================================================
   V6.26.3 — BOTTOM-RIGHT MENU ALIGNMENT
   One anchor, one width, one spacing system for all action panels.
   ========================================================== */

:root{
  --br-menu-right-v6263: 12px;
  --br-menu-bottom-v6263: 72px;
  --br-menu-width-v6263: 286px;
}

/* Every bottom-right action panel uses the exact same anchor + width. */
#mapActionPanel.mapActionPanel,
.mapActionPanel,
#targetCard.targetCard,
.targetCard.targetCardCarrierStyleV6224,
#npcCombatPanel.npcCombatPanel,
.npcCombatPanel,
.fuelPortalPromptV6190,
.traderPanelV61320,
.traderPanelV61320.wayfarerPanelV6203,
.wayfarerPanelV6203,
.salvagePanelV61318,
.p1DistressPanelV6221,
.planetJumpMenuV6226,
#carrierInfoPanel.carrierInfoPanel,
.carrierInfoPanel{
  position:fixed !important;
  right:var(--br-menu-right-v6263) !important;
  bottom:var(--br-menu-bottom-v6263) !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;

  width:var(--br-menu-width-v6263) !important;
  max-width:calc(100vw - 24px) !important;
  box-sizing:border-box !important;

  margin:0 !important;
}

/* Keep internal spacing visually consistent. */
#mapActionPanel.mapActionPanel,
.mapActionPanel,
#targetCard.targetCard,
.targetCard.targetCardCarrierStyleV6224,
#npcCombatPanel.npcCombatPanel,
.npcCombatPanel{
  padding:10px !important;
  border-radius:10px !important;
}

/* Warp text and ring line up to the same right edge as the menus. */
#warpOverlay .warpText,
.warpOverlay .warpText,
.warpText{
  right:var(--br-menu-right-v6263) !important;
  width:var(--br-menu-width-v6263) !important;
  max-width:calc(100vw - 24px) !important;
  text-align:right !important;
}

#warpOverlay .warpRing,
.warpOverlay .warpRing{
  right:calc(var(--br-menu-right-v6263) + 4px) !important;
}

/* Core notices align to same edge/width instead of floating differently. */
.warpCoreMessageV6170{
  right:var(--br-menu-right-v6263) !important;
  width:var(--br-menu-width-v6263) !important;
  max-width:calc(100vw - 24px) !important;
  box-sizing:border-box !important;
  text-align:center !important;
}

/* Phone/PWA */
@media (max-width:820px),(pointer:coarse){
  :root{
    --br-menu-right-v6263: 8px;
    --br-menu-bottom-v6263: calc(68px + env(safe-area-inset-bottom));
    --br-menu-width-v6263: min(286px,calc(100vw - 16px));
  }

  #mapActionPanel.mapActionPanel,
  .mapActionPanel,
  #targetCard.targetCard,
  .targetCard.targetCardCarrierStyleV6224,
  #npcCombatPanel.npcCombatPanel,
  .npcCombatPanel,
  .fuelPortalPromptV6190,
  .traderPanelV61320,
  .traderPanelV61320.wayfarerPanelV6203,
  .wayfarerPanelV6203,
  .salvagePanelV61318,
  .p1DistressPanelV6221,
  .planetJumpMenuV6226,
  #carrierInfoPanel.carrierInfoPanel,
  .carrierInfoPanel{
    width:var(--br-menu-width-v6263) !important;
    max-width:calc(100vw - 16px) !important;
  }
}


/* ==========================================================
   V6.26.4 — HOME BASE UI EXCLUSIVE MODE
   IMPORTANT: nothing is deleted. Chat + mini-map + map menus
   are hidden ONLY while Base Command is open, then restored.
   ========================================================== */

/* Mini-map */
body.p1BaseUiExclusiveV6264 #miniMap,
body.p1BaseUiExclusiveV6264 .miniMap,

/* Chat — preserve the real chat system, only hide it inside Home Base */
body.p1BaseUiExclusiveV6264 .galaxyChatToggleV6261,
body.p1BaseUiExclusiveV6264 .galaxyChatV6261,

/* Warp / destination */
body.p1BaseUiExclusiveV6264 #mapActionPanel,
body.p1BaseUiExclusiveV6264 .mapActionPanel,
body.p1BaseUiExclusiveV6264 #warpOverlay,
body.p1BaseUiExclusiveV6264 .warpOverlay,
body.p1BaseUiExclusiveV6264 .warpCoreMessageV6170,

/* Player / NPC / aggressive NPC menus */
body.p1BaseUiExclusiveV6264 #targetCard,
body.p1BaseUiExclusiveV6264 .targetCard,
body.p1BaseUiExclusiveV6264 #npcCombatPanel,
body.p1BaseUiExclusiveV6264 .npcCombatPanel,
body.p1BaseUiExclusiveV6264 #carrierInfoPanel,
body.p1BaseUiExclusiveV6264 .carrierInfoPanel,

/* Fuel / trader / salvage / service menus */
body.p1BaseUiExclusiveV6264 .fuelPortalPromptV6190,
body.p1BaseUiExclusiveV6264 .traderPanelV61320,
body.p1BaseUiExclusiveV6264 .wayfarerPanelV6203,
body.p1BaseUiExclusiveV6264 .salvagePanelV61318,
body.p1BaseUiExclusiveV6264 .p1DistressPanelV6221,
body.p1BaseUiExclusiveV6264 .planetJumpMenuV6226,

/* Generic map dropdown */
body.p1BaseUiExclusiveV6264 #menuDrop{
  display:none !important;
}

/* Base itself must remain visible above everything. */
body.p1BaseUiExclusiveV6264 .planet1BaseMenuV6142{
  display:block !important;
  z-index:5000 !important;
}


/* ==========================================================
   V6.26.5 — ACTIVE WARP HUD POSITION TUNE
   Pull the active Warp display slightly left so it does not
   sit against the far-right edge of the screen.
   ========================================================== */
#warpOverlay .warpText,
.warpOverlay .warpText,
.warpText{
  right:34px !important;
}

#warpOverlay .warpRing,
.warpOverlay .warpRing{
  right:40px !important;
}

.warpCoreMessageV6170{
  right:34px !important;
}

@media (max-width:820px),(pointer:coarse){
  #warpOverlay .warpText,
  .warpOverlay .warpText,
  .warpText{
    right:28px !important;
  }

  #warpOverlay .warpRing,
  .warpOverlay .warpRing{
    right:34px !important;
  }

  .warpCoreMessageV6170{
    right:28px !important;
  }
}


/* ==========================================================
   V6.26.6 — CORNER-ALIGNED CHAT + WARP
   Chat locks the UI while open so another screen cannot cover it.
   ========================================================== */

/* CHAT — sit cleanly in the bottom-left corner */
.galaxyChatToggleV6261{
  left:12px !important;
  bottom:12px !important;
}
.galaxyChatV6261{
  left:12px !important;
  bottom:12px !important;
}

/* Hide the small launcher while the full chat window is open. */
body.galaxyChatExclusiveV6266 .galaxyChatToggleV6261{
  display:none !important;
}

/* While Chat is open, no map/action screen is allowed to appear over it. */
body.galaxyChatExclusiveV6266 #miniMap,
body.galaxyChatExclusiveV6266 .miniMap,
body.galaxyChatExclusiveV6266 #mapActionPanel,
body.galaxyChatExclusiveV6266 .mapActionPanel,
body.galaxyChatExclusiveV6266 #targetCard,
body.galaxyChatExclusiveV6266 .targetCard,
body.galaxyChatExclusiveV6266 #npcCombatPanel,
body.galaxyChatExclusiveV6266 .npcCombatPanel,
body.galaxyChatExclusiveV6266 #carrierInfoPanel,
body.galaxyChatExclusiveV6266 .carrierInfoPanel,
body.galaxyChatExclusiveV6266 .fuelPortalPromptV6190,
body.galaxyChatExclusiveV6266 .traderPanelV61320,
body.galaxyChatExclusiveV6266 .wayfarerPanelV6203,
body.galaxyChatExclusiveV6266 .salvagePanelV61318,
body.galaxyChatExclusiveV6266 .p1DistressPanelV6221,
body.galaxyChatExclusiveV6266 .planetJumpMenuV6226,
body.galaxyChatExclusiveV6266 #warpOverlay,
body.galaxyChatExclusiveV6266 .warpOverlay,
body.galaxyChatExclusiveV6266 .warpCoreMessageV6170,
body.galaxyChatExclusiveV6266 #menuDrop{
  display:none !important;
}

/* WARP — sit cleanly in the bottom-right corner */
#warpOverlay .warpText,
.warpOverlay .warpText,
.warpText{
  right:12px !important;
  bottom:12px !important;
  text-align:right !important;
}
#warpOverlay .warpRing,
.warpOverlay .warpRing{
  right:18px !important;
  bottom:52px !important;
}
.warpCoreMessageV6170{
  right:12px !important;
  bottom:12px !important;
}

/* Phone/PWA corner alignment */
@media (max-width:820px),(pointer:coarse){
  .galaxyChatToggleV6261{
    left:8px !important;
    bottom:8px !important;
  }
  .galaxyChatV6261{
    left:8px !important;
    bottom:8px !important;
    width:calc(100vw - 16px) !important;
    height:min(440px,calc(100vh - 16px)) !important;
  }

  #warpOverlay .warpText,
  .warpOverlay .warpText,
  .warpText{
    right:8px !important;
    bottom:8px !important;
  }
  #warpOverlay .warpRing,
  .warpOverlay .warpRing{
    right:14px !important;
    bottom:48px !important;
  }
  .warpCoreMessageV6170{
    right:8px !important;
    bottom:8px !important;
  }
}


/* ==========================================================
   V6.26.7 — RETURN-TO-SHIP BUTTON POSITION
   Bottom-center, lined up with the bottom-left Chat launcher.
   ========================================================== */

#returnCarrierBtnV61311,
.returnCarrierBtnV61311{
  position:fixed !important;
  left:50% !important;
  right:auto !important;
  bottom:12px !important;
  top:auto !important;
  transform:translateX(-50%) !important;
  margin:0 !important;
  z-index:3900 !important;
}

/* Keep the return-to-ship control out of exclusive screens. */
body.p1BaseUiExclusiveV6264 #returnCarrierBtnV61311,
body.p1BaseUiExclusiveV6264 .returnCarrierBtnV61311,
body.galaxyChatExclusiveV6266 #returnCarrierBtnV61311,
body.galaxyChatExclusiveV6266 .returnCarrierBtnV61311{
  display:none !important;
}

@media (max-width:820px),(pointer:coarse){
  #returnCarrierBtnV61311,
  .returnCarrierBtnV61311{
    left:50% !important;
    right:auto !important;
    bottom:8px !important;
    top:auto !important;
    transform:translateX(-50%) !important;
  }
}


/* ==========================================================
   V6.26.8 — PLAYER PLANET IDENTITY BADGE
   Tiny polished planet insignia beside PLAYER NAMES.
   P1 / Fuel Planet = electric blue.
   ========================================================== */

.playerNameWithPlanetV6268,
.chatPlayerNameV6268{
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
}

.playerPlanetBadgeV6268{
  position:relative;
  display:inline-block;
  flex:0 0 auto;
  width:15px;
  height:15px;
  border-radius:50%;
  vertical-align:-3px;
  overflow:visible;
  background:
    radial-gradient(circle at 34% 28%,rgba(220,252,255,.98) 0 5%,rgba(76,220,255,.95) 7%,rgba(12,118,232,.96) 36%,rgba(4,36,106,.98) 68%,rgba(1,11,42,1) 100%);
  border:1px solid rgba(111,229,255,.86);
  box-shadow:
    inset -3px -3px 5px rgba(0,5,30,.82),
    inset 2px 2px 3px rgba(188,249,255,.28),
    0 0 4px rgba(68,211,255,.88),
    0 0 9px rgba(28,145,255,.46);
}

.playerPlanetBadgeV6268::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:-3px;
  top:-3px;
  width:19px;
  height:19px;
  border-radius:50%;
  border:1px solid rgba(70,214,255,.20);
  box-shadow:0 0 7px rgba(45,185,255,.32);
}

.playerPlanetBadgeV6268::after{
  content:"";
  position:absolute;
  left:2px;
  top:4px;
  width:9px;
  height:3px;
  border-radius:50%;
  border-top:1px solid rgba(166,241,255,.62);
  transform:rotate(-16deg);
  opacity:.9;
}

.playerPlanetSurfaceV6268{
  position:absolute;
  left:4px;
  top:8px;
  width:5px;
  height:2px;
  border-radius:60%;
  background:rgba(84,210,255,.56);
  box-shadow:
    4px -5px 0 -1px rgba(109,230,255,.45),
    -2px -3px 0 -1px rgba(41,151,239,.68);
  transform:rotate(18deg);
}

/* Carrier label: slightly stronger badge because it is viewed on the map. */
#carrier .unitLabel .playerPlanetBadgeV6268{
  width:16px;
  height:16px;
}

/* Chat keeps the badge compact so the sender line remains readable. */
.galaxyChatV6261 .playerPlanetBadgeV6268{
  width:13px;
  height:13px;
  margin-right:1px;
  vertical-align:-2px;
}
.galaxyChatV6261 .playerPlanetBadgeV6268::before{
  left:-2px;
  top:-2px;
  width:15px;
  height:15px;
}


/* ==========================================================
   V6.26.9 — PLAYER MAP LABEL CLEANUP
   Final layout:
       [PLANET] WICKED
   No LV 1 line underneath. Player level is moving elsewhere.
   ========================================================== */

#carrier .unitLabel{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:124px !important;
  padding:6px 10px !important;
}

#carrier .unitLabel strong.playerNameWithPlanetV6268{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  margin:0 !important;
  line-height:16px !important;
}

/* Remove the old LV 1 line from underneath the player's name. */
#carrier .unitLabel > span:not(.playerPlanetBadgeV6268){
  display:none !important;
}

/* Keep the planet badge directly beside the name on the same line. */
#carrier .unitLabel .playerPlanetBadgeV6268{
  display:inline-block !important;
  flex:0 0 16px !important;
  margin:0 !important;
}


/* ==========================================================
   V6.27.0 — LIVE CARRIER SYSTEM DAMAGE HUD
   ========================================================== */
.carrierSystemsV6270{
  margin-top:8px;
  padding-top:7px;
  border-top:1px solid rgba(88,220,255,.16);
  display:grid;
  gap:5px;
}
.carrierSystemRowV6270{
  display:grid;
  grid-template-columns:82px minmax(64px,1fr) 48px;
  align-items:center;
  gap:6px;
  min-height:15px;
}
.carrierSystemRowV6270>span{
  font-size:8px;
  line-height:10px;
  font-weight:900;
  letter-spacing:.055em;
  color:rgba(216,245,255,.88);
  white-space:nowrap;
}
.carrierSystemRowV6270>i{
  display:block;
  height:5px;
  overflow:hidden;
  border-radius:5px;
  background:rgba(6,18,28,.88);
  border:1px solid rgba(80,205,240,.16);
}
.carrierSystemRowV6270>i>em{
  display:block;
  width:100%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,rgba(31,132,255,.88),rgba(91,233,255,.98));
  box-shadow:0 0 7px rgba(66,213,255,.48);
  transition:width .20s linear;
}
.carrierSystemRowV6270>b{
  font-size:8px;
  text-align:right;
  color:#bff8ff;
  white-space:nowrap;
}
.carrierSystemRowV6270.criticalV6270>span,
.carrierSystemRowV6270.criticalV6270>b{color:#ffb46b}
.carrierSystemRowV6270.criticalV6270>i>em{
  background:linear-gradient(90deg,rgba(255,80,48,.90),rgba(255,183,73,.98));
  box-shadow:0 0 7px rgba(255,104,45,.48);
}
.carrierSystemRowV6270.offlineV6270>b{color:#ff695d}


/* ==========================================================
   V6.27.1 — COMBAT MENUS BOTTOM-RIGHT LOCK
   New map menus default to this corner going forward.
   ========================================================== */
#carrierCombatHud,
.carrierCombatHud,
#npcCombatPanel,
.npcCombatPanel{
  position:fixed !important;
  left:auto !important;
  top:auto !important;
  right:var(--br-menu-right-v6263,12px) !important;
  bottom:var(--br-menu-bottom-v6263,72px) !important;
  width:var(--br-menu-width-v6263,286px) !important;
  max-width:calc(100vw - 24px) !important;
  transform:none !important;
  margin:0 !important;
}

@media (max-width:600px){
  #carrierCombatHud,
  .carrierCombatHud,
  #npcCombatPanel,
  .npcCombatPanel{
    right:8px !important;
    bottom:calc(68px + env(safe-area-inset-bottom)) !important;
    width:min(286px,calc(100vw - 16px)) !important;
    max-width:calc(100vw - 16px) !important;
  }
}


/* V6.27.1 — Global Chat planet + player name on one clean line. */
.globalChatNameWithPlanetV6271,
.chatPlanetIdentityV6271{
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
}
.globalChatPlanetBadgeV6271{
  width:13px !important;
  height:13px !important;
  flex:0 0 13px !important;
  margin:0 !important;
}


/* ==========================================================
   V6.27.2 — HOME BASE SIZE INCREASE
   Make the existing Home Base substantially larger on the map.
   Artwork, skin, interaction, and gameplay remain untouched.
   ========================================================== */
#planet1HomeBaseV6142,
.planet1HomeBaseV6142{
  width:340px !important;
  height:340px !important;
  min-width:340px !important;
  min-height:340px !important;
}

#planet1HomeBaseV6142 img,
.planet1HomeBaseV6142 img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
}

/* Keep its click/visual footprint large enough on phones too. */
@media (max-width:600px){
  #planet1HomeBaseV6142,
  .planet1HomeBaseV6142{
    width:300px !important;
    height:300px !important;
    min-width:300px !important;
    min-height:300px !important;
  }
}


/* ==========================================================
   V6.27.3 — GLOBAL CHAT PLANET BADGE DIRECT RENDER FIX
   Uses the exact approved V6.26.8 player planet artwork.
   ========================================================== */
.globalChatPlanetBadgeV6273{
  display:inline-block !important;
  width:13px !important;
  height:13px !important;
  min-width:13px !important;
  min-height:13px !important;
  margin:0 5px 0 0 !important;
  vertical-align:-2px !important;
}

/* ==========================================================
   V6.27.4 — MILITARY RANK BADGES + RANK MENU (PHASE 1)
   ========================================================== */
#menuDrop [data-open-military-rank-v6274]{display:grid;grid-template-columns:24px 1fr;grid-template-rows:1fr 1fr;column-gap:7px;align-items:center;height:38px!important}
#menuDrop [data-open-military-rank-v6274] .rankMenuIconV6274{grid-row:1/3;width:22px;height:22px;display:grid;place-items:center;border:1px solid rgba(255,198,77,.55);clip-path:polygon(50% 0,94% 24%,94% 72%,50% 100%,6% 72%,6% 24%);color:#ffd675;background:rgba(90,56,5,.28);font-size:10px;text-align:center}
#menuDrop [data-open-military-rank-v6274] b{font:900 8px/1 system-ui;color:#f4fbff;letter-spacing:.8px}
#menuDrop [data-open-military-rank-v6274] small{font:700 5px/1 system-ui;color:#75b7c6;letter-spacing:.55px}

.militaryRankPanelV6274{position:fixed!important;z-index:156!important;right:var(--br-menu-right-v6263,12px)!important;bottom:var(--br-menu-bottom-v6263,72px)!important;width:min(430px,calc(100vw - 24px))!important;max-height:min(76vh,680px);overflow:hidden;border:1px solid rgba(92,220,255,.36);border-radius:13px;background:linear-gradient(180deg,rgba(4,18,26,.985),rgba(3,11,17,.985));box-shadow:0 18px 48px rgba(0,0,0,.55),inset 0 0 35px rgba(52,183,232,.05);color:#e8f9ff;display:flex;flex-direction:column}
.militaryRankPanelV6274.hidden{display:none!important}
.rankPanelHeadV6274{display:flex;align-items:center;justify-content:space-between;padding:12px 13px 10px;border-bottom:1px solid rgba(91,220,255,.16);background:linear-gradient(90deg,rgba(24,99,128,.18),transparent 66%)}
.rankPanelHeadV6274 small{display:block;color:#62bdd0;font:800 5px/1 system-ui;letter-spacing:1.3px;margin-bottom:4px}
.rankPanelHeadV6274 h2{margin:0;color:#effcff;font:1000 13px/1 system-ui;letter-spacing:1.25px}
.rankPanelCloseV6274{width:31px;height:31px;border:1px solid rgba(105,225,255,.22);border-radius:7px;background:rgba(7,36,47,.65);color:#b7f4ff;font:400 20px/1 system-ui}

.rankCurrentV6274{display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:10px;margin:10px 11px 7px;padding:10px;border:1px solid rgba(255,196,73,.32);border-radius:10px;background:radial-gradient(circle at 14% 44%,rgba(255,178,42,.12),transparent 40%),rgba(8,24,31,.82)}
.rankCurrentBadgeV6274{display:grid;place-items:center;width:68px;height:68px}
.rankCurrentCopyV6274{min-width:0}.rankCurrentCopyV6274 small,.rankCurrentBuffV6274 small{display:block;color:#80c9d7;font:800 5px/1 system-ui;letter-spacing:.8px;margin-bottom:5px}.rankCurrentCopyV6274 h3{margin:0;color:#fff6da;font:1000 12px/1.1 system-ui;letter-spacing:.5px}.rankCurrentCopyV6274 span{display:block;color:#ffcc66;font:900 7px/1 system-ui;margin-top:5px}
.rankCurrentBuffV6274{text-align:right}.rankCurrentBuffV6274 b{display:block;color:#ffd36f;font:1000 17px/1 system-ui}.rankCurrentBuffV6274 span{display:block;color:#8fb8c1;font:800 4.5px/1.15 system-ui;margin-top:4px;max-width:64px}

.rankStrengthPlaceholderV6274{margin:0 11px 8px;padding:8px 9px;border:1px solid rgba(91,220,255,.14);border-radius:8px;background:rgba(8,29,38,.55);display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 8px}.rankStrengthPlaceholderV6274 span{color:#6eb7c5;font:800 5px/1 system-ui;letter-spacing:.7px}.rankStrengthPlaceholderV6274 b{color:#dffaff;font:900 7px/1 system-ui}.rankStrengthPlaceholderV6274 small{grid-column:1/-1;color:#557c85;font:700 5px/1.2 system-ui}
.rankRosterTitleV6274{display:flex;justify-content:space-between;align-items:center;padding:0 12px 6px}.rankRosterTitleV6274 span{color:#88e8fa;font:900 6px/1 system-ui;letter-spacing:.9px}.rankRosterTitleV6274 b{color:#6c8d95;font:800 5px/1 system-ui;letter-spacing:.7px}
.rankRosterV6274{overflow:auto;padding:0 10px 10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;scrollbar-width:thin;scrollbar-color:rgba(90,220,255,.2) transparent}
.rankCardV6274{min-width:0;display:grid;grid-template-columns:48px 1fr;gap:7px;align-items:center;padding:7px;border:1px solid rgba(86,183,211,.14);border-radius:8px;background:linear-gradient(135deg,rgba(9,33,43,.85),rgba(5,20,28,.76))}.rankCardV6274.currentV6274{border-color:rgba(255,199,80,.55);background:linear-gradient(135deg,rgba(87,58,11,.32),rgba(9,28,34,.88))}.rankCardBadgeV6274{display:grid;place-items:center;width:46px;height:46px}.rankCardCopyV6274{min-width:0}.rankCardCopyV6274 small{display:block;color:#5f9dab;font:800 4.6px/1 system-ui;letter-spacing:.55px;margin-bottom:4px}.rankCardCopyV6274 b{display:block;overflow:hidden;text-overflow:ellipsis;color:#eafaff;font:950 6.8px/1.08 system-ui;letter-spacing:.25px}.rankCardCopyV6274 span{display:block;color:#f2bd58;font:900 5.5px/1 system-ui;margin-top:5px}
.rankBuffLegendV6274{padding:8px 11px 10px;border-top:1px solid rgba(91,220,255,.12);background:rgba(3,14,20,.82)}.rankBuffLegendV6274 span{display:block;color:#5caebe;font:800 4.7px/1 system-ui;letter-spacing:.8px;margin-bottom:4px}.rankBuffLegendV6274 b{display:block;color:#c8edf4;font:850 5.5px/1.25 system-ui;letter-spacing:.25px}

.militaryRankBadgeV6274{display:inline-grid;place-items:center;flex:0 0 auto;vertical-align:middle}.militaryRankBadgeV6274.compactV6274{width:16px;height:16px;margin-right:4px}.militaryRankSvgV6274{display:block;overflow:visible}.rankShieldV6274{fill:rgba(5,20,29,.96);stroke:var(--rank-accent);stroke-width:1.7}.rankMarkV6274{fill:none;stroke:var(--rank-accent-2);stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}.rankMarkV6274 polygon,.rankMarkV6274 rect,.rankMarkV6274 circle{fill:var(--rank-accent);stroke:var(--rank-accent-2);stroke-width:1.3}.playerNameWithRankV6274{display:inline-flex!important;align-items:center!important}.playerNameWithRankV6274>.militaryRankBadgeV6274{order:0}.playerNameWithRankV6274>.playerPlanetBadgeV6268{order:1}.playerNameWithRankV6274{gap:0!important}

body.p1BaseUiExclusiveV6264 #militaryRankPanelV6274,body.galaxyChatExclusiveV6266 #militaryRankPanelV6274{display:none!important}

@media(max-width:600px){
  .militaryRankPanelV6274{right:8px!important;bottom:calc(68px + env(safe-area-inset-bottom))!important;width:min(356px,calc(100vw - 16px))!important;max-height:72vh}
  .rankCurrentV6274{grid-template-columns:62px 1fr auto}.rankCurrentBadgeV6274{width:58px;height:58px}.rankCurrentBadgeV6274 .militaryRankSvgV6274{width:58px;height:58px}
  .rankRosterV6274{grid-template-columns:1fr}.rankCardV6274{grid-template-columns:44px 1fr;padding:6px}.rankCardBadgeV6274{width:42px;height:42px}.rankCardBadgeV6274 .militaryRankSvgV6274{width:42px;height:42px}
}

/* ==========================================================
   V6.27.5 — MINI-MAP TIGHT TOP-RIGHT CORNER ALIGNMENT ONLY
   Keeps the approved mini-map size/art; placement only.
   ========================================================== */
#miniMap.miniMap,
.miniMap{
  position:fixed !important;
  top:12px !important;
  right:12px !important;
  bottom:auto !important;
  left:auto !important;
  transform:none !important;
}

@media (max-width:820px),(pointer:coarse){
  #miniMap.miniMap,
  .miniMap{
    top:8px !important;
    right:8px !important;
    bottom:auto !important;
    left:auto !important;
  }
}

/* ==========================================================
   V6.27.6 — COMPACT POLISHED MILITARY RANK PANEL ONLY
   Smaller footprint + cleaner hierarchy. No gameplay/art changes.
   ========================================================== */
.militaryRankPanelV6274{
  width:min(332px,calc(100vw - 24px))!important;
  max-height:min(66vh,560px)!important;
  border-radius:11px!important;
  border-color:rgba(103,220,255,.28)!important;
  background:
    linear-gradient(180deg,rgba(7,25,34,.985),rgba(3,12,18,.99))!important;
  box-shadow:
    0 14px 36px rgba(0,0,0,.52),
    inset 0 1px 0 rgba(183,243,255,.05),
    inset 0 0 28px rgba(43,179,222,.035)!important;
}

.rankPanelHeadV6274{
  padding:9px 10px 8px!important;
  background:linear-gradient(90deg,rgba(21,94,121,.19),rgba(7,29,38,.04) 72%)!important;
}
.rankPanelHeadV6274 small{
  font-size:4.4px!important;
  letter-spacing:1.05px!important;
  margin-bottom:3px!important;
  color:#66bfd2!important;
}
.rankPanelHeadV6274 h2{
  font-size:11px!important;
  letter-spacing:1px!important;
}
.rankPanelCloseV6274{
  width:27px!important;
  height:27px!important;
  border-radius:6px!important;
  font-size:17px!important;
}

.rankCurrentV6274{
  grid-template-columns:52px minmax(0,1fr) auto!important;
  gap:8px!important;
  margin:8px 8px 6px!important;
  padding:8px!important;
  border-radius:8px!important;
  border-color:rgba(255,199,83,.36)!important;
  background:
    radial-gradient(circle at 13% 48%,rgba(255,183,50,.10),transparent 36%),
    linear-gradient(135deg,rgba(13,35,42,.92),rgba(6,22,29,.88))!important;
  box-shadow:inset 0 0 16px rgba(255,188,58,.025)!important;
}
.rankCurrentBadgeV6274{
  width:50px!important;
  height:50px!important;
}
.rankCurrentBadgeV6274 .militaryRankSvgV6274{
  width:50px!important;
  height:50px!important;
}
.rankCurrentCopyV6274 small,
.rankCurrentBuffV6274 small{
  font-size:4.2px!important;
  margin-bottom:4px!important;
  letter-spacing:.65px!important;
}
.rankCurrentCopyV6274 h3{
  font-size:10px!important;
  line-height:1.05!important;
}
.rankCurrentCopyV6274 span{
  font-size:5.9px!important;
  margin-top:4px!important;
}
.rankCurrentBuffV6274 b{
  font-size:14px!important;
}
.rankCurrentBuffV6274 span{
  font-size:4px!important;
  max-width:53px!important;
}

.rankStrengthPlaceholderV6274{
  margin:0 8px 6px!important;
  padding:6px 7px!important;
  border-radius:7px!important;
  background:linear-gradient(90deg,rgba(8,31,41,.62),rgba(5,22,30,.58))!important;
}
.rankStrengthPlaceholderV6274 span{
  font-size:4.4px!important;
}
.rankStrengthPlaceholderV6274 b{
  font-size:6.2px!important;
}
.rankStrengthPlaceholderV6274 small{
  font-size:4.35px!important;
}

.rankRosterTitleV6274{
  padding:0 9px 5px!important;
}
.rankRosterTitleV6274 span{
  font-size:5.2px!important;
}
.rankRosterTitleV6274 b{
  font-size:4.4px!important;
}

.rankRosterV6274{
  padding:0 8px 8px!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:5px!important;
}
.rankCardV6274{
  grid-template-columns:34px minmax(0,1fr)!important;
  gap:5px!important;
  padding:5px!important;
  min-height:46px!important;
  border-radius:7px!important;
  border-color:rgba(93,190,216,.13)!important;
  background:linear-gradient(135deg,rgba(10,34,43,.80),rgba(5,19,27,.83))!important;
  transition:border-color .15s ease,background .15s ease!important;
}
.rankCardV6274.currentV6274{
  border-color:rgba(255,201,85,.52)!important;
  background:linear-gradient(135deg,rgba(74,54,17,.34),rgba(7,28,35,.92))!important;
  box-shadow:inset 2px 0 0 rgba(255,202,88,.58)!important;
}
.rankCardBadgeV6274{
  width:32px!important;
  height:32px!important;
}
.rankCardBadgeV6274 .militaryRankSvgV6274{
  width:32px!important;
  height:32px!important;
}
.rankCardCopyV6274 small{
  font-size:3.8px!important;
  margin-bottom:3px!important;
  letter-spacing:.42px!important;
}
.rankCardCopyV6274 b{
  font-size:5.7px!important;
  line-height:1.08!important;
}
.rankCardCopyV6274 span{
  font-size:4.6px!important;
  margin-top:3px!important;
}

.rankBuffLegendV6274{
  padding:6px 8px 7px!important;
  background:linear-gradient(90deg,rgba(4,18,24,.92),rgba(5,23,30,.78))!important;
}
.rankBuffLegendV6274 span{
  font-size:4px!important;
  margin-bottom:3px!important;
}
.rankBuffLegendV6274 b{
  font-size:4.75px!important;
  line-height:1.2!important;
  color:#bde6ee!important;
}

@media(max-width:600px){
  .militaryRankPanelV6274{
    right:8px!important;
    width:min(304px,calc(100vw - 16px))!important;
    max-height:64vh!important;
  }
  .rankCurrentV6274{
    grid-template-columns:48px minmax(0,1fr) auto!important;
  }
  .rankCurrentBadgeV6274,
  .rankCurrentBadgeV6274 .militaryRankSvgV6274{
    width:46px!important;
    height:46px!important;
  }
  .rankRosterV6274{
    grid-template-columns:1fr!important;
  }
  .rankCardV6274{
    grid-template-columns:32px minmax(0,1fr) auto!important;
  }
  .rankCardCopyV6274 span{
    margin-top:2px!important;
  }
}

/* =========================================================
   V6.27.7 — RANK MENU READABILITY / CRISP TEXT ONLY
   Keeps compact V6.27.6 layout; increases tiny text sizes and
   removes soft text rendering effects that made labels blurry.
   ========================================================= */
.militaryRankPanelV6274,
.militaryRankPanelV6274 *{
  text-shadow:none!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
.rankHeaderV6274 span{font-size:9px!important;letter-spacing:1px!important;}
.rankHeaderV6274 b{font-size:12px!important;letter-spacing:.7px!important;}
.rankCurrentCopyV6274 small{font-size:8px!important;letter-spacing:.7px!important;}
.rankCurrentCopyV6274 b{font-size:13px!important;line-height:1.05!important;}
.rankCurrentCopyV6274 span{font-size:8px!important;line-height:1.2!important;}
.rankCurrentBuffV6274 small{font-size:7px!important;}
.rankCurrentBuffV6274 b{font-size:11px!important;}
.rankStrengthPlaceholderV6274 span{font-size:8px!important;letter-spacing:.45px!important;}
.rankStrengthPlaceholderV6274 b{font-size:11px!important;}
.rankStrengthPlaceholderV6274 small{font-size:7px!important;line-height:1.2!important;}
.rankRosterTitleV6274 span{font-size:9px!important;letter-spacing:.7px!important;}
.rankRosterTitleV6274 b{font-size:7px!important;}
.rankCardCopyV6274 small{font-size:7px!important;letter-spacing:.4px!important;margin-bottom:2px!important;}
.rankCardCopyV6274 b{font-size:9px!important;line-height:1.08!important;letter-spacing:.15px!important;}
.rankCardCopyV6274 span{font-size:8px!important;line-height:1.1!important;margin-top:2px!important;}
.rankBuffLegendV6274 span{font-size:7px!important;letter-spacing:.45px!important;}
.rankBuffLegendV6274 b{font-size:8px!important;line-height:1.25!important;}

/* ==========================================================
   V6.27.13 — CARRIER IDENTITY INLINE ALIGNMENT FIX
   Own planet: [RANK] NAME
   Visiting:   [PLANET] [RANK] NAME
   Keep all identity badges and the player name on ONE line.
   ========================================================== */
#carrier .unitLabel strong.playerNameWithRankV6274,
#carrier .unitLabel strong.playerNameWithPlanetV6268.playerNameWithRankV6274{
  display:inline-flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:center !important;
  gap:5px !important;
  margin:0 !important;
  white-space:nowrap !important;
  line-height:16px !important;
}

#carrier .unitLabel strong.playerNameWithRankV6274 > .militaryRankBadgeV6274,
#carrier .unitLabel strong.playerNameWithRankV6274 > .playerPlanetBadgeV6268{
  display:inline-grid !important;
  flex:0 0 auto !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  vertical-align:middle !important;
}

#carrier .unitLabel strong.playerNameWithRankV6274 > .militaryRankBadgeV6274.compactV6274{
  width:16px !important;
  height:16px !important;
  margin-right:0 !important;
}

/* ==========================================================
   V6.27.18 — P1 HOME BASE FLOAT / HOVER FX
   Repair Bay moved off P1; stale Repair Bay CSS removed.
   ========================================================== */
@keyframes p1StationFloatV62716{
  0%,100%{transform:translate3d(0,0,0) rotate(-0.18deg)}
  50%{transform:translate3d(0,-7px,0) rotate(0.18deg)}
}
@keyframes p1StationGlowV62716{
  0%,100%{opacity:.54;transform:translateX(-50%) scaleX(.92) scaleY(.92)}
  50%{opacity:.82;transform:translateX(-50%) scaleX(1.06) scaleY(1.05)}
}
@keyframes p1StationThrusterV62716{
  0%,100%{opacity:.52;transform:translateX(-50%) scaleY(.86)}
  50%{opacity:.90;transform:translateX(-50%) scaleY(1.12)}
}
#planet1HomeBaseV6141 > img,
.planet1HomeBaseV6141 > img{
  transform-origin:50% 58%;
  animation:p1StationFloatV62716 8.6s ease-in-out infinite;
  will-change:transform;
}
#planet1HomeBaseV6141::before,
.planet1HomeBaseV6141::before{
  content:"";position:absolute;left:50%;bottom:5%;width:68%;height:22%;
  transform:translateX(-50%);border-radius:50%;pointer-events:none;z-index:-1;
  background:radial-gradient(ellipse at center,rgba(70,211,255,.26) 0%,rgba(29,151,226,.15) 35%,rgba(8,75,130,.06) 58%,transparent 76%);
  filter:blur(8px);animation:p1StationGlowV62716 4.8s ease-in-out infinite;
}
#planet1HomeBaseV6141::after,
.planet1HomeBaseV6141::after{
  content:"";position:absolute;left:50%;bottom:-7%;width:64%;height:30%;
  transform:translateX(-50%);transform-origin:50% 0;pointer-events:none;z-index:-1;
  background:
    radial-gradient(ellipse at 18% 0%,rgba(163,240,255,.78) 0 3%,rgba(54,189,255,.42) 5%,rgba(22,116,218,.12) 18%,transparent 35%),
    radial-gradient(ellipse at 36% 0%,rgba(163,240,255,.86) 0 3%,rgba(54,189,255,.48) 5%,rgba(22,116,218,.13) 18%,transparent 34%),
    radial-gradient(ellipse at 50% 0%,rgba(195,247,255,.92) 0 3%,rgba(60,196,255,.52) 5%,rgba(21,121,224,.15) 20%,transparent 36%),
    radial-gradient(ellipse at 64% 0%,rgba(163,240,255,.86) 0 3%,rgba(54,189,255,.48) 5%,rgba(22,116,218,.13) 18%,transparent 34%),
    radial-gradient(ellipse at 82% 0%,rgba(163,240,255,.78) 0 3%,rgba(54,189,255,.42) 5%,rgba(22,116,218,.12) 18%,transparent 35%);
  filter:blur(3px) drop-shadow(0 8px 9px rgba(34,166,255,.22));
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.78) 36%,transparent 100%);
  mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.78) 36%,transparent 100%);
  animation:p1StationThrusterV62716 2.7s ease-in-out infinite;
}
@media (prefers-reduced-motion:reduce){
  #planet1HomeBaseV6141 > img,.planet1HomeBaseV6141 > img,
  #planet1HomeBaseV6141::before,.planet1HomeBaseV6141::before,
  #planet1HomeBaseV6141::after,.planet1HomeBaseV6141::after{animation:none!important;}
}

/* V6.27.19 — Next rank power requirement emphasis */
#militaryRankPanelV6274 .rankStrengthPlaceholderV6274 .rankPowerNeededV62719{
  display:block;
  margin-top:3px;
  white-space:normal;
}
#militaryRankPanelV6274 .rankStrengthPlaceholderV6274 .rankPowerNeededV62719 strong{
  font:inherit;
  font-weight:900;
  letter-spacing:.45px;
}

/* ==========================================================
   V6.27.37 — UNIFIED COMMAND MENU READABILITY
   Visual-only pass. Keeps all existing placement/behavior and
   deliberately leaves the locked Military Rank panel untouched.
   ========================================================== */
:root{
  --menu-ui-bg-v62737:linear-gradient(180deg,rgba(7,24,34,.985),rgba(2,10,16,.99));
  --menu-ui-card-v62737:rgba(12,39,51,.72);
  --menu-ui-line-v62737:rgba(102,220,246,.28);
  --menu-ui-line-soft-v62737:rgba(102,220,246,.13);
  --menu-ui-text-v62737:#effcff;
  --menu-ui-muted-v62737:#91b2bb;
  --menu-ui-accent-v62737:#76eaff;
  --menu-ui-radius-v62737:12px;
}

/* One visual shell for normal map/action/player/combat menus. */
.menuDrop,
.mapActionPanel,
.targetCard,
.carrierInfoPanel,
.npcCombatPanel,
.carrierCombatHud,
.droneCombatHudV6121,
.fuelPortalPromptV6190,
.traderPanelV61320,
.wayfarerPanelV6203,
.salvagePanelV61318,
.p1DistressPanelV6221,
.planetJumpMenuV6226,
.topLeftPanelV693,
.galaxyChatV6261,
.enterBasePromptV6142,
.planet1BaseMenuV6142,
.carrierRepairPanel{
  border:1px solid var(--menu-ui-line-v62737)!important;
  border-radius:var(--menu-ui-radius-v62737)!important;
  background:var(--menu-ui-bg-v62737)!important;
  color:var(--menu-ui-text-v62737)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.52),0 0 18px rgba(71,203,240,.07),inset 0 1px 0 rgba(255,255,255,.025)!important;
  backdrop-filter:blur(9px);
  -webkit-backdrop-filter:blur(9px);
}

/* Cleaner top MENU button/dropdown. */
.menuBtn{
  border:1px solid var(--menu-ui-line-v62737)!important;
  border-radius:9px!important;
  background:linear-gradient(180deg,rgba(10,39,51,.96),rgba(3,16,24,.98))!important;
  color:#f0fcff!important;
  font-size:8px!important;
  letter-spacing:.11em!important;
  box-shadow:0 8px 22px rgba(0,0,0,.28),0 0 12px rgba(78,209,242,.07)!important;
}
.menuDrop{width:210px!important;padding:8px!important;gap:6px!important}
.menuDrop button{
  min-height:38px!important;
  padding:0 12px!important;
  border:1px solid var(--menu-ui-line-soft-v62737)!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,rgba(14,48,61,.72),rgba(5,24,33,.82))!important;
  color:#eafcff!important;
  font:800 9px/1 system-ui!important;
  letter-spacing:.075em!important;
  text-shadow:0 1px 1px rgba(0,0,0,.6)!important;
}

/* Unified readable header treatment. */
.mapActionHead,
.carrierInfoHead,
.npcCombatHead,
.carrierCombatTitle,
.droneHudTopV6121,
.galaxyChatHeadV6261,
.baseMenuHeaderV6142{
  min-height:30px;
  padding-bottom:8px!important;
  border-bottom:1px solid var(--menu-ui-line-soft-v62737)!important;
  color:var(--menu-ui-accent-v62737)!important;
  font-size:8px!important;
  letter-spacing:.10em!important;
}
.mapActionHead b,
.carrierInfoHead b,
.npcCombatHead b,
.carrierCombatTitle b,
.droneHudTopV6121 b{
  color:#fff!important;
  font-size:10px!important;
  line-height:1.15!important;
}

/* General copy: larger, brighter, less washed-out. */
.mapActionPanel small,.mapActionPanel span,.mapActionPanel b,
.targetCard small,.targetCard span,.targetCard strong,
.carrierInfoPanel small,.carrierInfoPanel span,.carrierInfoPanel b,
.npcCombatPanel small,.npcCombatPanel span,.npcCombatPanel b,
.carrierCombatHud small,.carrierCombatHud span,.carrierCombatHud b,
.droneCombatHudV6121 small,.droneCombatHudV6121 span,.droneCombatHudV6121 b,
.fuelPortalPromptV6190 small,.fuelPortalPromptV6190 span,.fuelPortalPromptV6190 b,
.traderPanelV61320 small,.traderPanelV61320 span,.traderPanelV61320 b,
.wayfarerPanelV6203 small,.wayfarerPanelV6203 span,.wayfarerPanelV6203 b,
.salvagePanelV61318 small,.salvagePanelV61318 span,.salvagePanelV61318 b,
.p1DistressPanelV6221 small,.p1DistressPanelV6221 span,.p1DistressPanelV6221 b,
.planetJumpMenuV6226 small,.planetJumpMenuV6226 span,.planetJumpMenuV6226 b,
.topLeftPanelV693 small,.topLeftPanelV693 span,.topLeftPanelV693 b{
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

.targetCard small,
.carrierInfoGrid span,.carrierInfoStatus span,
.npcCombatStats,.npcBarLabel,
.combatHudLabel,
.droneHudRowV6121 span{
  color:var(--menu-ui-muted-v62737)!important;
  font-size:7px!important;
  line-height:1.2!important;
  letter-spacing:.055em!important;
}
.targetCard strong{font-size:12px!important;line-height:1.15!important;color:#fff!important}
.targetCard span{font-size:8px!important;color:#b6d0d7!important;line-height:1.3!important}
.npcCombatStats b,.npcBarLabel b,.combatHudLabel b,.carrierInfoGrid b,.carrierInfoStatus b{
  color:#f4fdff!important;
  font-size:8px!important;
}

/* Matching inner cards/rows across the menus. */
.carrierInfoGrid div,
.carrierInfoStatus,
.modernPowerV6109,
.modernBarRowV6109,
.basePageCardV6142,
.droneHudRowV6121{
  border-color:var(--menu-ui-line-soft-v62737)!important;
  background:var(--menu-ui-card-v62737)!important;
  border-radius:8px!important;
}

/* Buttons all share the same clean command-button language. */
.mapActionButtons button,
.targetActions button,
.npcCombatActions button,
.carrierInfoPanel button,
.droneCombatHudV6121 button,
.fuelPortalPromptV6190 button,
.traderPanelV61320 button,
.wayfarerPanelV6203 button,
.salvagePanelV61318 button,
.p1DistressPanelV6221 button,
.planetJumpMenuV6226 button,
.topLeftPanelV693 button,
.enterBasePromptV6142 button,
.basePageCardV6142 button,
.baseMenuHeaderV6142 button,
.carrierRepairPanel button{
  min-height:34px;
  border:1px solid rgba(101,221,247,.25)!important;
  border-radius:7px!important;
  background:linear-gradient(180deg,rgba(14,55,69,.82),rgba(5,27,37,.92))!important;
  color:#e7fbff!important;
  font:800 7px/1 system-ui!important;
  letter-spacing:.065em!important;
  text-shadow:0 1px 1px rgba(0,0,0,.65);
}

/* Preserve danger/action meaning without changing the shared shell. */
.targetActions .danger,
#carrierAttackBtn{
  border-color:rgba(255,105,105,.38)!important;
  color:#ffd0d0!important;
}
#mapWarpActionBtn{
  border-color:rgba(255,203,103,.38)!important;
  color:#ffe1a3!important;
}

/* Match player and NPC combat HUD presentation. */
#npcCombatPanel.npcCombatPanel,
#carrierCombatHud.carrierCombatHud{
  width:286px!important;
  max-width:calc(100vw - 16px)!important;
  padding:11px!important;
}
.npcBar,.combatHudBar{
  height:7px!important;
  margin-top:4px!important;
  border:1px solid rgba(255,255,255,.045)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.075)!important;
}
.npcBar i,.combatHudBar i{border-radius:999px!important}

/* Cleaner player-side panel without changing any content or behavior. */
.topLeftPanelV693{padding:10px!important}
.modernIdentityV6109 b{font-size:14px!important}
.modernIdentityV6109 small{font-size:7px!important;color:#82eaff!important}
.modernPowerV6109 b{font-size:13px!important}
.modernIdentityV6109 span,.modernPowerV6109 span,.modernBarRowV6109 span,
.modernCreditsTopV6109 span,.creditStatusV6109 span{font-size:6px!important;color:#8fb0ba!important}

/* Chat uses the same frame/readability while keeping its unique layout. */
.galaxyChatHeadV6261 h2{font-size:15px!important;color:#f4fdff!important}
.galaxyChatTabsV6261 button{font-size:7px!important;min-height:36px!important}
.galaxyChatMessageV6261 p{font-size:9px!important;line-height:1.4!important;color:#e7f4f7!important}
.galaxyChatMessageV6261 b{font-size:8px!important}

/* Mobile readability: do not shrink text into unreadable micro-copy. */
@media(max-width:820px),(pointer:coarse){
  .menuDrop{width:min(230px,calc(100vw - 16px))!important}
  .mapActionPanel,.targetCard,.carrierInfoPanel,.npcCombatPanel,.carrierCombatHud,
  .droneCombatHudV6121,.fuelPortalPromptV6190,.traderPanelV61320,.wayfarerPanelV6203,
  .salvagePanelV61318,.p1DistressPanelV6221,.planetJumpMenuV6226{
    font-size:9px!important;
  }
  .mapActionButtons button,.targetActions button,.npcCombatActions button,
  .carrierInfoPanel button,.planetJumpMenuV6226 button{min-height:38px!important;font-size:8px!important}
}

/* IMPORTANT: #militaryRankPanelV6274 intentionally receives no V6.27.37 overrides. */


/* ==========================================================
   V6.27.39 — PLAYER / DISTRESS MENU CLEANUP
   Keeps locked Military Rank panel styling unchanged.
   ========================================================== */
/* Distress service panel belongs in the approved bottom-right menu stack. */
.p1DistressPanelV6221,
.p1DistressPanelV6221.carrierStyleActionV6222{
  position:fixed!important;
  left:auto!important;
  right:12px!important;
  top:auto!important;
  bottom:12px!important;
  transform:none!important;
  margin:0!important;
  z-index:12050!important;
}

/* Distress action on the Carrier menu: unmistakable red emergency button, white label. */
#carrierDistressBtnV6221.carrierDistressBtnV6221{
  width:100%!important;
  min-height:40px!important;
  margin-top:10px!important;
  border:1px solid rgba(255,118,118,.68)!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,rgba(185,35,43,.98),rgba(104,14,23,.99))!important;
  color:#fff!important;
  font:900 9px/1 system-ui!important;
  letter-spacing:.11em!important;
  text-shadow:0 1px 2px rgba(0,0,0,.72)!important;
  box-shadow:0 8px 18px rgba(102,0,8,.26),inset 0 1px 0 rgba(255,255,255,.10)!important;
}

/* PLAYER card: rank badge only, larger readable identity and cleaner values. */
.modernPlayerCardV6109{padding:10px!important}
.modernIdentityV6109{gap:12px!important;padding:3px 2px 11px!important}
.playerRankBadgeButtonV62739.modernAvatarV6109{
  flex:0 0 48px!important;
  width:48px!important;
  height:48px!important;
  padding:4px!important;
  border:1px solid rgba(111,230,255,.34)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,rgba(14,48,61,.80),rgba(4,19,27,.94))!important;
  cursor:pointer;
}
.playerRankBadgeButtonV62739 .militaryRankBadgeV6274{display:grid!important;place-items:center!important;margin:auto!important}
.playerRankBadgeButtonV62739 .militaryRankSvgV6274{width:34px!important;height:34px!important}
.playerIdentityCopyV62739{min-width:0!important;gap:4px!important}
.playerIdentityCopyV62739>span{font-size:7px!important;color:#8fb2bd!important;letter-spacing:.13em!important}
.playerIdentityCopyV62739>b{font-size:16px!important;line-height:1!important;color:#fff!important;letter-spacing:.045em!important}
.playerIdentityCopyV62739>small{font-size:8px!important;line-height:1.2!important;color:#7cecff!important;letter-spacing:.07em!important}
.modernCarrierRoleV6140{margin-top:9px!important;padding:9px 10px!important;border:1px solid rgba(102,220,246,.13)!important;border-radius:8px!important;background:rgba(12,39,51,.72)!important}
.modernCarrierRoleV6140 span{font-size:7px!important;color:#8fb2bd!important}
.modernCarrierRoleV6140 b{font-size:10px!important;color:#fff!important}
.modernCarrierRoleV6140 small{font-size:7px!important;line-height:1.3!important;color:#8fb2bd!important}
.modernPowerV6109{padding:10px 11px!important}
.modernPowerV6109 span{font-size:7px!important;line-height:1.25!important;color:#8fb2bd!important}
.modernPowerV6109 b{font-size:14px!important;color:#fff!important}
.modernBarRowV6109>div span{font-size:7px!important;color:#9ab7bf!important}
.modernBarRowV6109>div b{font-size:8px!important;color:#effcff!important}

/* General MENU is Settings-only now; keep it compact. */
#menuDrop.menuDrop{width:160px!important}
#menuDrop.menuDrop>button{min-height:40px!important}

@media(max-width:820px),(pointer:coarse){
  .p1DistressPanelV6221,
  .p1DistressPanelV6221.carrierStyleActionV6222{
    right:8px!important;
    bottom:8px!important;
    left:auto!important;
    width:min(286px,calc(100vw - 16px))!important;
  }
}


/* ==========================================================
   V6.27.40 — PLAYER RANK BADGE CENTER + TARGET ATTACK RESTORE
   Visual-only badge centering. Military Rank art/system stays locked.
   ========================================================== */
.playerRankBadgeButtonV62739.modernAvatarV6109{
  display:grid!important;
  place-items:center!important;
  align-items:center!important;
  justify-items:center!important;
  line-height:0!important;
}
.playerRankBadgeButtonV62739.modernAvatarV6109>.militaryRankBadgeV6274{
  width:36px!important;
  height:36px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  align-self:center!important;
  justify-self:center!important;
}
.playerRankBadgeButtonV62739.modernAvatarV6109 .militaryRankSvgV6274{
  width:34px!important;
  height:34px!important;
  margin:0!important;
  display:block!important;
}

/* ==========================================================
   V6.27.41 — TARGET COMBAT CHOICES + MIRRORED NPC HUD
   Only styles the existing target/combat controls.
   ========================================================== */
#targetCard #droneAttackTargetV62742,
#targetCard #combinedAssaultTargetV62741{
  border-color:rgba(95,232,255,.48)!important;
  background:linear-gradient(180deg,rgba(8,38,46,.96),rgba(4,18,25,.96))!important;
  color:#d9fbff!important;
}
#targetCard #attackTarget:not(.hidden),
#targetCard #droneAttackTargetV62742:not(.hidden),
#targetCard #combinedAssaultTargetV62741:not(.hidden){
  min-height:34px!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
}
#targetCard #attackTarget:disabled,
#targetCard #droneAttackTargetV62742:disabled,
#targetCard #combinedAssaultTargetV62741:disabled{
  opacity:.38!important;
  cursor:not-allowed!important;
  filter:saturate(.35)!important;
}

/* Left hostile HUD uses the exact same readable bar footprint as the player HUD. */
body.combatUiExclusiveV62729 #npcCombatPanel .combatHudBar,
body.combatUiExclusiveV62729 #carrierCombatHud .combatHudBar{
  position:relative!important;
  display:block!important;
  min-height:7px!important;
  overflow:hidden!important;
}
body.combatUiExclusiveV62729 #npcCombatPanel .combatHudBar > i,
body.combatUiExclusiveV62729 #carrierCombatHud .combatHudBar > i{
  display:block!important;
  height:100%!important;
  min-width:0!important;
  transition:width .18s linear!important;
}
body.combatUiExclusiveV62729 #npcCombatPanel .carrierSystemsV6270,
body.combatUiExclusiveV62729 #carrierCombatHud .carrierSystemsV6270{
  display:block!important;
}

/* ==========================================================
   V6.27.53 — LOCKED PORTAL ART + GALAXY MINE PORTAL ONLY
   Fuel Mining mechanics/position stay unchanged.
   Galaxy Mine portal is visual-only until its map is added.
   ========================================================== */
.p1FuelMiningPortalV6190{
  width:250px!important;
  height:230px!important;
}
.p1FuelMiningPortalV6190 .p1FuelMiningPortalArtV6191{
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  animation:none!important;
  filter:drop-shadow(0 0 14px rgba(42,183,255,.48))!important;
}
.p1FuelMiningPortalV6190::before,
.p1FuelMiningPortalV6190>span,
.p1FuelMiningPortalV6190>i{
  display:none!important;
}

.galaxyMinePortalV62753{
  position:absolute;
  width:250px;
  height:230px;
  transform:translate(-50%,-50%);
  border:0;
  padding:0;
  margin:0;
  background:transparent;
  z-index:21;
  cursor:pointer;
  pointer-events:auto;
  overflow:visible;
}
.galaxyMinePortalV62753>img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  pointer-events:none;
  filter:drop-shadow(0 0 15px rgba(255,42,42,.50));
}
.galaxyMinePortalV62753:hover>img{
  filter:drop-shadow(0 0 22px rgba(255,48,48,.72)) brightness(1.04);
}
body.p1FuelMiningActiveV6190 .galaxyMinePortalV62753{
  display:none!important;
}


/* ==========================================================
   V6.27.54 — PORTAL ENERGY ANIMATION ONLY
   Approved portal artwork is unchanged. These effects are CSS
   overlays placed over the locked PNGs to bring both portals alive.
   ========================================================== */

/* Re-enable the existing Fuel Portal energy layers that V6.27.53 hid. */
.p1FuelMiningPortalV6190 > .p1PortalVortexV6192,
.p1FuelMiningPortalV6190 > .p1PortalEnergyRingV6192,
.p1FuelMiningPortalV6190 > .p1PortalArcV6192{
  display:block!important;
}

.p1FuelMiningPortalV6190 .p1FuelMiningPortalArtV6191{
  z-index:2!important;
  transform-origin:50% 48%!important;
  animation:portalArtAliveBlueV62754 2.35s ease-in-out infinite alternate!important;
}

/* Put the blue movement directly inside the visible portal opening. */
.p1FuelMiningPortalV6190 .p1PortalVortexV6192{
  left:50%!important;
  top:42%!important;
  width:45%!important;
  height:49%!important;
  z-index:3!important;
  opacity:.92!important;
  mix-blend-mode:screen!important;
  background:
    conic-gradient(from 0deg,
      rgba(0,240,255,.05) 0deg,
      rgba(66,226,255,.96) 45deg,
      rgba(29,96,255,.22) 96deg,
      rgba(133,67,255,.82) 151deg,
      rgba(31,181,255,.30) 224deg,
      rgba(156,247,255,.95) 300deg,
      rgba(0,240,255,.05) 360deg)!important;
  -webkit-mask:radial-gradient(circle,transparent 0 18%,#000 27% 100%)!important;
  mask:radial-gradient(circle,transparent 0 18%,#000 27% 100%)!important;
  filter:blur(1.2px) drop-shadow(0 0 15px rgba(76,220,255,.95))!important;
  animation:portalVortexBlueV62754 2.4s linear infinite!important;
}
.p1FuelMiningPortalV6190 .p1PortalEnergyRingV6192{
  left:50%!important;
  top:42%!important;
  width:48%!important;
  height:52%!important;
  z-index:4!important;
  border:2px solid rgba(174,249,255,.86)!important;
  box-shadow:0 0 10px rgba(87,230,255,.92),0 0 25px rgba(31,140,255,.72),inset 0 0 16px rgba(135,236,255,.62)!important;
  animation:portalRingBlueV62754 1.05s ease-in-out infinite alternate!important;
}
.p1FuelMiningPortalV6190 .p1PortalArcV6192{
  left:50%!important;
  top:42%!important;
  z-index:5!important;
  width:26%!important;
  height:2px!important;
  background:linear-gradient(90deg,transparent,rgba(220,255,255,.98),rgba(56,165,255,.14))!important;
  filter:drop-shadow(0 0 6px rgba(139,239,255,1))!important;
}

/* Moving light sweep makes the baked portal lettering appear to power on. */
.p1FuelMiningPortalV6190::after,
.galaxyMinePortalV62753::after{
  content:"";
  position:absolute;
  left:16%;
  bottom:2%;
  width:68%;
  height:23%;
  z-index:6;
  pointer-events:none;
  opacity:0;
  transform:translateX(-65%) skewX(-16deg);
  mix-blend-mode:screen;
}
.p1FuelMiningPortalV6190::after{
  display:block!important;
  background:linear-gradient(90deg,transparent 0%,rgba(152,245,255,.12) 37%,rgba(224,255,255,.88) 50%,rgba(80,196,255,.20) 63%,transparent 100%);
  filter:blur(2px) drop-shadow(0 0 7px rgba(79,218,255,.85));
  animation:portalLabelSweepBlueV62754 3.1s ease-in-out infinite;
}

/* Galaxy Mine portal layers. */
.galaxyMinePortalV62753 > img{
  z-index:2;
  transform-origin:50% 48%;
  animation:portalArtAliveRedV62754 2.1s ease-in-out infinite alternate;
}
.galaxyMinePortalV62753 > i{
  position:absolute;
  display:block;
  pointer-events:none;
}
.galaxyMinePortalV62753 .galaxyPortalVortexV62754{
  left:50%;
  top:42%;
  width:45%;
  height:49%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  z-index:3;
  opacity:.94;
  mix-blend-mode:screen;
  background:conic-gradient(from 0deg,
    rgba(255,22,22,.04) 0deg,
    rgba(255,68,31,.92) 46deg,
    rgba(118,0,0,.20) 103deg,
    rgba(255,15,58,.90) 164deg,
    rgba(255,100,24,.27) 225deg,
    rgba(255,196,106,.92) 299deg,
    rgba(255,22,22,.04) 360deg);
  -webkit-mask:radial-gradient(circle,transparent 0 17%,#000 27% 100%);
  mask:radial-gradient(circle,transparent 0 17%,#000 27% 100%);
  filter:blur(1.2px) drop-shadow(0 0 15px rgba(255,54,31,.95));
  animation:portalVortexRedV62754 2.05s linear infinite reverse;
}
.galaxyMinePortalV62753 .galaxyPortalEnergyRingV62754{
  left:50%;
  top:42%;
  width:48%;
  height:52%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  z-index:4;
  border:2px solid rgba(255,146,112,.85);
  box-shadow:0 0 10px rgba(255,72,43,.95),0 0 26px rgba(255,15,20,.72),inset 0 0 16px rgba(255,123,76,.64);
  animation:portalRingRedV62754 .92s ease-in-out infinite alternate;
}
.galaxyMinePortalV62753 .galaxyPortalArcV62754{
  left:50%;
  top:42%;
  width:27%;
  height:2px;
  transform-origin:left center;
  z-index:5;
  opacity:0;
  background:linear-gradient(90deg,transparent,rgba(255,239,220,.98),rgba(255,53,29,.15));
  filter:drop-shadow(0 0 7px rgba(255,85,48,1));
}
.galaxyMinePortalV62753 .galaxyPortalArcV62754.arcOne{
  transform:translate(-5%,-50%) rotate(26deg);
  animation:portalArcRedV62754 2.05s steps(1,end) infinite;
}
.galaxyMinePortalV62753 .galaxyPortalArcV62754.arcTwo{
  transform:translate(-5%,-50%) rotate(205deg);
  animation:portalArcRedV62754 2.75s steps(1,end) .62s infinite;
}
.galaxyMinePortalV62753::after{
  background:linear-gradient(90deg,transparent 0%,rgba(255,73,34,.10) 37%,rgba(255,226,209,.92) 50%,rgba(255,55,34,.22) 63%,transparent 100%);
  filter:blur(2px) drop-shadow(0 0 8px rgba(255,47,30,.92));
  animation:portalLabelSweepRedV62754 2.8s ease-in-out infinite .25s;
}

/* Tiny energy halo around both complete portal structures. */
.p1FuelMiningPortalV6190:hover .p1FuelMiningPortalArtV6191,
.galaxyMinePortalV62753:hover > img{
  animation-duration:1.15s!important;
}

@keyframes portalVortexBlueV62754{
  from{transform:translate(-50%,-50%) rotate(0deg) scale(.94)}
  50%{transform:translate(-50%,-50%) rotate(180deg) scale(1.03)}
  to{transform:translate(-50%,-50%) rotate(360deg) scale(.94)}
}
@keyframes portalVortexRedV62754{
  from{transform:translate(-50%,-50%) rotate(0deg) scale(.95)}
  50%{transform:translate(-50%,-50%) rotate(180deg) scale(1.04)}
  to{transform:translate(-50%,-50%) rotate(360deg) scale(.95)}
}
@keyframes portalRingBlueV62754{
  from{opacity:.48;transform:translate(-50%,-50%) scale(.94)}
  to{opacity:1;transform:translate(-50%,-50%) scale(1.045)}
}
@keyframes portalRingRedV62754{
  from{opacity:.44;transform:translate(-50%,-50%) scale(.93)}
  to{opacity:1;transform:translate(-50%,-50%) scale(1.055)}
}
@keyframes portalArtAliveBlueV62754{
  from{transform:translateY(1px) scale(.995);filter:drop-shadow(0 0 12px rgba(42,183,255,.42)) brightness(.96)}
  to{transform:translateY(-2px) scale(1.008);filter:drop-shadow(0 0 22px rgba(56,209,255,.72)) brightness(1.09)}
}
@keyframes portalArtAliveRedV62754{
  from{transform:translateY(1px) scale(.995);filter:drop-shadow(0 0 13px rgba(255,42,42,.46)) brightness(.95)}
  to{transform:translateY(-2px) scale(1.009);filter:drop-shadow(0 0 24px rgba(255,47,34,.76)) brightness(1.10)}
}
@keyframes portalLabelSweepBlueV62754{
  0%,16%{opacity:0;transform:translateX(-70%) skewX(-16deg)}
  28%{opacity:.95}
  61%{opacity:.72}
  76%,100%{opacity:0;transform:translateX(80%) skewX(-16deg)}
}
@keyframes portalLabelSweepRedV62754{
  0%,18%{opacity:0;transform:translateX(-70%) skewX(-16deg)}
  30%{opacity:1}
  62%{opacity:.74}
  78%,100%{opacity:0;transform:translateX(80%) skewX(-16deg)}
}
@keyframes portalArcRedV62754{
  0%,69%,75%,100%{opacity:0}
  70%{opacity:1}
  71%{opacity:.12}
  72%{opacity:.88}
  73%{opacity:.08}
  74%{opacity:.72}
}

@media (prefers-reduced-motion:reduce){
  .p1FuelMiningPortalV6190 .p1FuelMiningPortalArtV6191,
  .p1FuelMiningPortalV6190 .p1PortalVortexV6192,
  .p1FuelMiningPortalV6190 .p1PortalEnergyRingV6192,
  .p1FuelMiningPortalV6190 .p1PortalArcV6192,
  .galaxyMinePortalV62753 > img,
  .galaxyMinePortalV62753 > i,
  .p1FuelMiningPortalV6190::after,
  .galaxyMinePortalV62753::after{animation:none!important}
}


/* ==========================================================
   V6.27.55 — MOVING FUEL PORTAL + 500x500 HOME BASE
   Galaxy Mine Portal remains fixed. Locked art is untouched.
   ========================================================== */
#planet1HomeBaseV6141,
.planet1HomeBaseV6141{
  width:500px!important;
  height:500px!important;
  min-width:500px!important;
  min-height:500px!important;
}
#planet1HomeBaseV6141>img,
.planet1HomeBaseV6141>img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

/* Keep the moving portal's whole visual smooth while JS updates position. */
.p1FuelMiningPortalV6190.fuelPortalSquarePatrolV62755{
  will-change:left,top;
}

@media(max-width:600px){
  #planet1HomeBaseV6141,
  .planet1HomeBaseV6141{
    width:500px!important;
    height:500px!important;
    min-width:500px!important;
    min-height:500px!important;
  }
}

/* ==========================================================
   V6.27.56 — PORTALS 50% SMALLER ONLY
   Keep all locked artwork, animation, positions, and movement.
   ========================================================== */
.p1FuelMiningPortalV6190,
.galaxyMinePortalV62753{
  width:125px!important;
  height:115px!important;
}

/* ==========================================================
   V6.27.59 — P1 PORTAL POSITION + FUEL MINE FUEL BAY
   - Fuel Mining Portal restored to original bottom-right location.
   - Galaxy Mine Portal aligned beneath the Fuel Planet/Home Base.
   - Fuel Mine return portal uses the locked Fuel Mining Portal art.
   - Locked Fuel Bay artwork added inside the Fuel Mining Region.
   ========================================================== */
.fuelMiningExitPortalV6190{
  width:125px!important;
  height:115px!important;
}
.fuelMiningExitPortalV6190>span{display:none!important;}
.fuelMiningExitPortalV6190>img{
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  z-index:2!important;
}
.p1FuelBayV62759{
  position:absolute;
  left:80%;
  top:76%;
  width:280px;
  height:190px;
  transform:translate(-50%,-50%);
  z-index:12;
  pointer-events:none;
  filter:drop-shadow(0 0 18px rgba(42,183,255,.30));
}
.p1FuelBayV62759>img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  pointer-events:none;
}
@media(max-width:600px){
  .p1FuelBayV62759{width:230px;height:156px;}
}

/* ==========================================================
   V6.27.60 — STATIC NPCS + SIMPLE DRONE ATTACK CONFIRMATION
   ========================================================== */
/* Hostile selection is now a clear red CANCEL / ATTACK confirmation. */
#targetCard.droneAttackConfirmV62760{
  border-color:rgba(255,55,70,.78)!important;
  background:linear-gradient(180deg,rgba(34,5,10,.97),rgba(13,2,5,.98))!important;
  box-shadow:0 0 0 1px rgba(255,70,80,.16),0 0 22px rgba(220,22,42,.22)!important;
}
#targetCard.droneAttackConfirmV62760 small{
  color:#ff6d78!important;
}
#targetCard.droneAttackConfirmV62760 #attackTarget{
  border-color:rgba(255,75,84,.9)!important;
  background:linear-gradient(180deg,rgba(130,15,25,.98),rgba(60,5,12,.98))!important;
  color:#fff!important;
  box-shadow:inset 0 0 12px rgba(255,60,70,.18),0 0 10px rgba(255,45,58,.16)!important;
}
#targetCard.droneAttackConfirmV62760 #closeTarget{
  border-color:rgba(180,195,205,.32)!important;
  background:rgba(14,21,25,.92)!important;
  color:#dce8ec!important;
}

/* Remove the old Carrier / Drone / Combined combat action row from the battle HUD.
   The attack command happens once from the red target confirmation card. */
#npcCombatPanel .npcCombatActions{
  display:none!important;
}
#targetCard #droneAttackTargetV62742,
#targetCard #combinedAssaultTargetV62741{
  display:none!important;
}

/* ==========================================================
   V6.27.61 — WAR / INCOMING COMBAT CLEANUP
   ========================================================== */
.incomingAttackV62761{position:fixed;right:var(--br-menu-right-v6263,12px);bottom:var(--br-menu-bottom-v6263,72px);z-index:190;width:min(300px,calc(100vw - 24px));padding:12px 14px;border:1px solid rgba(255,70,70,.72);border-radius:12px;background:rgba(25,3,7,.96);box-shadow:0 16px 42px rgba(0,0,0,.55);display:none;color:#fff}
.incomingAttackV62761.showV62761{display:grid;gap:5px}.incomingAttackV62761 small{font:800 8px/1 system-ui;letter-spacing:.16em;color:#ff9a9a}.incomingAttackV62761 b{font:950 17px/1.05 system-ui;letter-spacing:.08em;color:#ff5454}.incomingAttackV62761 span{font:800 9px/1.2 system-ui;color:#ffd6d6}
.warPanelV62761{display:grid;gap:8px}.warHeadV62761{display:grid;gap:3px;padding:8px;border-bottom:1px solid var(--menu-ui-line-soft-v62737)}.warHeadV62761 span{font:900 8px/1 system-ui;color:#ff6f6f;letter-spacing:.15em}.warHeadV62761 b{font:950 14px/1 system-ui;color:#fff}.warReportV62761{display:grid!important;text-align:left!important;gap:4px!important;padding:9px!important}.warReportV62761 span{font:900 8px/1 system-ui;color:#ff7a7a}.warReportV62761 b{font:900 11px/1 system-ui;color:#fff}.warReportV62761 small,.warReportV62761 em{font:700 7px/1.3 system-ui;color:#8fb8c2;font-style:normal}.warEmptyV62761{padding:18px 8px;text-align:center;font:800 8px/1 system-ui;color:#76949c;letter-spacing:.1em}
/* Keep combat presentation lightweight: no continuous beam/muzzle/impact FX. Drone craft and final destruction remain visible. */
.droneLaser,.droneMuzzleV6109,.laser,.laserBeam,.impactFlash,.npcShieldFlash,.carrierShieldFlash{display:none!important}


/* ==========================================================
   V6.27.62 — CLEAN WAR COMBAT + SINGLE DRONE MARCH
   ========================================================== */
/* Retire the old live battle HUDs. Results now live in WAR and incoming
   defense uses the bottom-right Captain alert. */
#npcCombatPanel,
.npcCombatPanel,
#carrierCombatHud,
.carrierCombatHud,
#droneCombatHudV6121,
.droneCombatHudV6121{display:none!important;}

/* One clean Fighter Drone represents an outbound march. */
.fighterMarchV62762{
  position:fixed;
  width:34px;
  height:24px;
  z-index:185;
  pointer-events:none;
  will-change:left,top,transform;
  filter:drop-shadow(0 0 7px rgba(80,205,255,.55));
}
.fighterMarchV62762 img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  pointer-events:none;
}
/* Keep the post-arrival combat representation to one ship as well. */
.combatFighterDrone:not(:first-of-type){display:none!important;}

/* ==========================================================
   V6.27.63 — CLEAN DRONE-MARCH COMBAT PRESENTATION
   Only the single march drone and final explosion/result remain visible.
   Legacy battle HUDs/effects are permanently suppressed without changing
   progression, rank, power, NPC balance, or approved map artwork.
   ========================================================== */
#carrierCombatHud,
#npcCombatPanel,
.npcCombatPanel,
#droneCombatHudV6121,
.droneCombatHudV6121,
.npcCombatActions,
#carrierAttackBtn,
#droneAttackBtn,
#fullAttackBtn,
.droneLaser,
.droneMuzzleV6109,
.combatLaser,
.laserBeam,
.npcDamageReadoutV62731,
.carrierDamageReadoutV62732,
.damageNumber,
.combatDamageNumber{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

.fighterMarchV62762{
  z-index:10035!important;
  width:56px!important;
  height:40px!important;
  filter:drop-shadow(0 0 8px rgba(82,221,255,.7));
}
.fighterMarchV62762 img{width:100%!important;height:100%!important;object-fit:contain!important;}

.fighterMarchResultV62763{
  position:fixed;
  z-index:10034;
  width:58px;
  height:42px;
  transform:translate(-50%,-50%);
  pointer-events:none;
}
.fighterMarchResultV62763 img{width:100%;height:100%;object-fit:contain;}

.topLeftTabsV693 button[data-tab="war"]{position:relative;}
.warUnreadV62763{
  position:absolute;
  right:4px;
  top:4px;
  min-width:18px;
  height:18px;
  padding:0 5px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#d9182b;
  border:1px solid #ff7180;
  box-shadow:0 0 10px rgba(255,34,58,.75);
  color:#fff;
  font:900 10px/1 system-ui,sans-serif;
  font-style:normal;
}
.warUnreadV62763.hidden{display:none!important;}
.topLeftTabsV693 button.warHasUnreadV62763 .tabCopy small{color:#ff6574!important;}

.warPanelV62761{max-height:72vh;overflow:auto;}
.warReportV62763{
  display:block;
  margin:8px 0;
  padding:10px;
  border:1px solid rgba(100,196,224,.28);
  background:rgba(4,15,24,.94);
  border-radius:8px;
}
.warReportV62763.unread{border-color:rgba(255,56,78,.75);}
.warReportTopV62763{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px;}
.warReportTopV62763 span{font-size:10px;font-weight:900;letter-spacing:.08em;color:#ff6574;}
.warReportTopV62763 b{font-size:12px;color:#eafaff;text-align:right;}
.warPowerGridV62763{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;margin:7px 0;}
.warPowerGridV62763>div{padding:8px;background:rgba(13,35,49,.8);border:1px solid rgba(87,191,224,.2);border-radius:6px;}
.warPowerGridV62763 span,.warStatGridV62763 span,.warBarsV62763 span,.warWhyV62763 span{display:block;font-size:8px;letter-spacing:.08em;color:#7fa9ba;font-weight:800;}
.warPowerGridV62763 b{display:block;font-size:15px;color:#fff;}
.warPowerGridV62763 small{font-size:8px;color:#78dafa;}
.warPowerGridV62763>i{font-style:normal;font-size:9px;font-weight:900;color:#ff6574;}
.warStatGridV62763{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:6px 0;}
.warStatGridV62763>div{padding:6px;background:rgba(10,27,38,.8);border-radius:5px;}
.warStatGridV62763 b{display:block;font-size:11px;color:#f0fbff;margin-top:2px;}
.warBarsV62763{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:7px 0;}
.warBarsV62763>div{padding:6px;background:rgba(10,27,38,.62);border-radius:5px;}
.warBarsV62763 b{font-size:9px;color:#dff8ff;}
.warWhyV62763{margin-top:8px;padding:8px;border-left:2px solid #ff485d;background:rgba(75,11,20,.25);}
.warWhyV62763 p{margin:3px 0 0;font-size:10px;line-height:1.35;color:#e7f7fb;}

/* ==========================================================
   V6.27.64 — STATIC NPCS + SMALL INDEPENDENT DRONE MARCH
   ========================================================== */
/* NPCs are map targets now, not ambient flying ships. Keep the approved
   sprite that is already assigned to each NPC and suppress old flight motion. */
.npc,
.npcPatrol,
.npc.npcPatrol,
.npc .npcSprite,
.npc .npcShip{
  transition:none!important;
  animation:none!important;
}
.npc.smartFlying,
.npc.npcThrusting,
.npc.patrolling{
  animation:none!important;
}

/* The march is one small Fighter Drone inside world coordinates. */
.fighterMarchV62762{
  position:absolute!important;
  width:22px!important;
  height:16px!important;
  z-index:185!important;
  pointer-events:none!important;
  filter:drop-shadow(0 0 4px rgba(82,221,255,.58))!important;
  transition:none!important;
  animation:none!important;
  will-change:left,top!important;
}
.fighterMarchV62762 img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  animation:none!important;
  transition:none!important;
}

/* No legacy combat drone formation/orbit is allowed to appear after arrival. */
.combatFighterDrone{
  display:none!important;
  visibility:hidden!important;
  animation:none!important;
}

/* ==========================================================
   V6.27.66 — FIGHTER MARCH READABILITY
   Keep the exact approved Fighter Drone artwork and flight behavior.
   Only enlarge the single outbound/return march representative.
   ========================================================== */
.fighterMarchV62762{
  width:40px!important;
  height:29px!important;
}


/* ==========================================================
   V6.27.69 — CARRIER LEVEL PEEK + BOTTOM-RIGHT MARCH CARD
   Narrow UI-only patch. Locked Military Rank styling/content is untouched.
   ========================================================== */
#carrier .unitLabel.carrierLevelPeekV62769 > strong,
#carrier .unitLabel.carrierLevelPeekV62769 > span:not(.carrierLevelIdentityV62769){
  opacity:0!important;
}
#carrier .unitLabel .carrierLevelIdentityV62769{
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0 8px!important;
  color:#f3fdff!important;
  font:1000 13px/1 system-ui!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
  pointer-events:none!important;
  text-shadow:0 0 5px #fff,0 0 10px rgba(82,221,255,.9),0 1px 2px #000!important;
}

/* Hostile target / Fighter Drone march command card now lives in the
   approved bottom-right map-menu area instead of covering the playfield. */
#targetCard.targetCard,
.targetCard.targetCardCarrierStyleV6224{
  left:auto!important;
  right:var(--br-menu-right-v6263,12px)!important;
  top:auto!important;
  bottom:var(--br-menu-bottom-v6263,72px)!important;
  transform:none!important;
}

@media (max-width:820px),(pointer:coarse){
  #targetCard.targetCard,
  .targetCard.targetCardCarrierStyleV6224{
    left:auto!important;
    right:8px!important;
    top:auto!important;
    bottom:calc(68px + env(safe-area-inset-bottom))!important;
    transform:none!important;
  }
}

/* ==========================================================
   V6.27.70 — CARRIER STATUS + CLICKABLE MARCH UI
   UI-only additions. V6.27.68 building routing/collision is untouched.
   ========================================================== */
.carrierInfoHeadCompactV62770{
  min-height:32px!important;
}
.carrierInfoHeadCompactV62770>div{
  display:flex!important;
  align-items:center!important;
}
.carrierInfoHeadCompactV62770>div>span{
  font-size:9px!important;
  letter-spacing:.14em!important;
  color:#88e8ff!important;
  font-weight:900!important;
}
.carrierSystemLevelsV62770{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  margin-top:9px;
}
.carrierSystemLevelsV62770>div{
  min-width:0;
  padding:7px 6px;
  border:1px solid rgba(89,225,255,.16);
  border-radius:7px;
  background:rgba(7,31,41,.62);
}
.carrierSystemLevelsV62770 span,
.carrierSystemLevelsV62770 b{
  display:block;
}
.carrierSystemLevelsV62770 span{
  font:900 7px/1.1 system-ui;
  letter-spacing:.08em;
  color:#8db5c0;
}
.carrierSystemLevelsV62770 b{
  margin-top:4px;
  font:950 11px/1 system-ui;
  color:#f0fbff;
}
.carrierSystemLevelsV62770 i{font-style:normal;}

/* The clicked Carrier identity cycles LEVEL -> POWER -> PLANET. */
#carrier .unitLabel .carrierLevelIdentityV62769{
  font-size:11px!important;
  letter-spacing:.06em!important;
}

/* The representative Fighter Drone is now a real clickable march marker. */
.fighterMarchV62762[data-march-clickable-v62770="1"]{
  pointer-events:auto!important;
  cursor:pointer!important;
}

.fighterMarchInfoV62770{
  position:fixed;
  left:var(--bl-menu-left-v6263,12px);
  bottom:72px;
  z-index:10060;
  width:min(292px,calc(100vw - 24px));
  padding:10px;
  border:1px solid rgba(83,215,249,.34);
  border-radius:10px;
  background:linear-gradient(180deg,rgba(4,22,31,.97),rgba(2,11,17,.98));
  box-shadow:0 14px 36px rgba(0,0,0,.52),0 0 16px rgba(61,194,232,.09);
  color:#eafaff;
}
.fighterMarchInfoV62770.hidden{display:none!important;}
.fighterMarchInfoHeadV62770{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding-bottom:8px;
  border-bottom:1px solid rgba(91,205,235,.16);
}
.fighterMarchInfoHeadV62770 small,
.fighterMarchInfoHeadV62770 b{display:block;}
.fighterMarchInfoHeadV62770 small{font:900 7px/1 system-ui;letter-spacing:.16em;color:#6bdfff;}
.fighterMarchInfoHeadV62770 b{margin-top:3px;font:950 13px/1 system-ui;letter-spacing:.06em;color:#fff;}
.fighterMarchInfoHeadV62770 button{
  width:30px;height:30px;border:1px solid rgba(101,211,240,.22);border-radius:7px;
  background:rgba(8,32,42,.8);color:#dffaff;font:900 17px/1 system-ui;
}
.fighterMarchInfoGridV62770{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px;}
.fighterMarchInfoGridV62770>div{padding:7px;border:1px solid rgba(80,188,220,.14);border-radius:6px;background:rgba(7,26,36,.72);min-width:0;}
.fighterMarchInfoGridV62770 span,.fighterMarchInfoGridV62770 b{display:block;}
.fighterMarchInfoGridV62770 span{font:900 7px/1 system-ui;letter-spacing:.1em;color:#7da9b7;}
.fighterMarchInfoGridV62770 b{margin-top:4px;font:900 10px/1.15 system-ui;color:#f1fcff;overflow-wrap:anywhere;}

.fighterMarchTimerV62770{
  position:fixed;
  right:var(--br-menu-right-v6263,12px);
  bottom:var(--br-menu-bottom-v6263,72px);
  z-index:10061;
  width:190px;
  padding:9px 12px;
  border:1px solid rgba(82,221,255,.38);
  border-radius:9px;
  background:linear-gradient(180deg,rgba(4,24,34,.98),rgba(2,12,18,.98));
  box-shadow:0 12px 30px rgba(0,0,0,.5),0 0 14px rgba(82,221,255,.10);
  color:#eafcff;
  text-align:left;
  cursor:pointer;
}
.fighterMarchTimerV62770.hidden{display:none!important;}
.fighterMarchTimerV62770 small,.fighterMarchTimerV62770 b,.fighterMarchTimerV62770 span{display:block;}
.fighterMarchTimerV62770 small{font:900 7px/1 system-ui;letter-spacing:.16em;color:#6fe4ff;}
.fighterMarchTimerV62770 b{margin-top:4px;font:950 11px/1 system-ui;color:#fff;letter-spacing:.08em;}
.fighterMarchTimerV62770 span{position:absolute;right:12px;top:50%;transform:translateY(-50%);font:950 18px/1 system-ui;color:#8eeaff;}

@media (max-width:820px),(pointer:coarse){
  .fighterMarchInfoV62770{
    left:8px;
    bottom:calc(68px + env(safe-area-inset-bottom));
    width:min(280px,calc(100vw - 16px));
  }
  .fighterMarchTimerV62770{
    right:8px;
    bottom:calc(68px + env(safe-area-inset-bottom));
    width:178px;
  }
}


/* ==========================================================
   V6.27.71 — RELIABLE CARRIER READOUT + TECH TIER DETAILS
   UI-only. Locked combat, skins, Military Rank, and building collision untouched.
   ========================================================== */
#carrier.carrierLevelPeekV62771 > .unitLabel{
  opacity:0!important;
  visibility:hidden!important;
}
#carrier > .carrierLiveIdentityV62771{
  position:absolute!important;
  left:50%!important;
  top:-23px!important;
  transform:translateX(-50%)!important;
  z-index:40!important;
  min-width:max-content!important;
  padding:3px 8px!important;
  border:1px solid rgba(100,225,255,.28)!important;
  border-radius:6px!important;
  background:rgba(2,16,24,.86)!important;
  color:#f3fdff!important;
  font:1000 11px/1.1 system-ui!important;
  letter-spacing:.07em!important;
  white-space:nowrap!important;
  text-align:center!important;
  pointer-events:none!important;
  text-shadow:0 0 5px rgba(255,255,255,.7),0 0 9px rgba(82,221,255,.65),0 1px 2px #000!important;
  box-shadow:0 3px 12px rgba(0,0,0,.45),0 0 10px rgba(82,221,255,.08)!important;
}

.carrierSystemLevelsV62770{
  grid-template-columns:1fr!important;
}
.carrierSystemLevelsV62770 .carrierSystemTileV62771{
  position:relative;
  padding:8px 9px!important;
  border-left-width:3px!important;
}
.carrierSystemLevelsV62770 .carrierSystemTileV62771 b{
  font-size:11px!important;
}
.carrierSystemLevelsV62770 .carrierSystemTileV62771 small{
  display:block;
  margin-top:4px;
  font:900 8px/1.15 system-ui;
  letter-spacing:.07em;
  color:#aac3ca;
}
.carrierSystemLevelsV62770 .carrierSystemTileV62771 small i,
.carrierSystemLevelsV62770 .carrierSystemTileV62771 small strong{
  font-style:normal;
  color:var(--tech-tier-v62771,#78ff9f);
}
.carrierSystemTileV62771[data-tech-tier="green"]{--tech-tier-v62771:#78ff9f;border-color:rgba(120,255,159,.46)!important;}
.carrierSystemTileV62771[data-tech-tier="blue"]{--tech-tier-v62771:#63cfff;border-color:rgba(99,207,255,.52)!important;}
.carrierSystemTileV62771[data-tech-tier="black"]{--tech-tier-v62771:#c6cbd3;border-color:rgba(125,135,150,.62)!important;background:linear-gradient(90deg,rgba(18,20,25,.94),rgba(7,31,41,.62))!important;}
.carrierSystemTileV62771[data-tech-tier="red"]{--tech-tier-v62771:#ff6262;border-color:rgba(255,98,98,.54)!important;}
.carrierSystemTileV62771[data-tech-tier="orange"]{--tech-tier-v62771:#ffad45;border-color:rgba(255,173,69,.60)!important;}
.carrierSystemTileV62771[data-tech-tier]::after{
  content:"";position:absolute;right:8px;top:8px;width:6px;height:6px;border-radius:50%;
  background:var(--tech-tier-v62771);box-shadow:0 0 8px var(--tech-tier-v62771);
}

/* ==========================================================
   V6.27.72 — Carrier hardware / power breakdown
   Additive only; preserves the approved V6.27.71 panel styling.
   ========================================================== */
.carrierHardwareSummaryV62772,
.carrierCombatBreakdownV62772{
  display:grid;
  gap:7px;
  margin-top:9px;
}
.carrierHardwareTitleV62772,
.carrierHardwareGridV62772>div,
.carrierCombatBreakdownV62772>div{
  border:1px solid rgba(102,210,255,.30);
  background:linear-gradient(90deg,rgba(5,23,34,.88),rgba(5,13,22,.78));
  border-radius:8px;
  padding:8px 9px;
}
.carrierHardwareTitleV62772{
  display:grid;
  grid-template-columns:1fr auto auto;
  align-items:center;
  gap:8px;
}
.carrierHardwareTitleV62772 span,
.carrierHardwareGridV62772 span,
.carrierCombatBreakdownV62772 span{
  font-size:10px;
  font-weight:800;
  letter-spacing:.11em;
  color:rgba(220,245,255,.82);
}
.carrierHardwareTitleV62772 b,
.carrierHardwareGridV62772 b,
.carrierCombatBreakdownV62772 b{
  font-size:12px;
  color:#f3fbff;
}
.carrierHardwareTitleV62772 small,
.carrierHardwareGridV62772 small,
.carrierCombatBreakdownV62772 small{
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
  color:rgba(151,225,255,.76);
}
.carrierHardwareGridV62772{
  display:grid;
  grid-template-columns:1fr;
  gap:6px;
}
.carrierHardwareGridV62772>div,
.carrierCombatBreakdownV62772>div{
  display:grid;
  grid-template-columns:1fr auto;
  gap:3px 8px;
  align-items:center;
}
.carrierHardwareGridV62772 small,
.carrierHardwareGridV62772 em,
.carrierCombatBreakdownV62772 small,
.carrierCombatBreakdownV62772 em{
  grid-column:1/-1;
}
.carrierHardwareGridV62772 em,
.carrierCombatBreakdownV62772 em{
  display:flex;
  justify-content:space-between;
  gap:12px;
  font-size:9px;
  font-style:normal;
  font-weight:800;
  letter-spacing:.07em;
  color:rgba(190,231,244,.72);
}
.carrierHardwareGridV62772 i,
.carrierCombatBreakdownV62772 i{
  font-style:normal;
  color:#f4fbff;
}
.carrierHardwareGridV62772 strong,
.carrierCombatBreakdownV62772 strong{
  color:#fff;
}
.carrierOverallPowerV62772{
  border-color:rgba(255,187,74,.48)!important;
  background:linear-gradient(90deg,rgba(42,28,5,.80),rgba(8,22,31,.84))!important;
}
.carrierOverallPowerV62772 b{
  font-size:15px!important;
}

/* ==========================================================
   V6.27.73 — Unified Carrier stats + matching-color bonus
   ========================================================== */
#carrierColorBonusV62773{
  font-style:normal;
  font-weight:900;
  letter-spacing:.08em;
}
#carrierColorBonusV62773[data-tier="green"]{color:#78ff9f;}
#carrierColorBonusV62773[data-tier="blue"]{color:#63cfff;}
#carrierColorBonusV62773[data-tier="black"]{color:#c6cbd3;}
#carrierColorBonusV62773[data-tier="red"]{color:#ff6262;}
#carrierColorBonusV62773[data-tier="orange"]{color:#ffad45;}
.carrierOverallPowerV62772 em{
  grid-column:1/-1;
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:2px;
  font-size:9px;
  font-style:normal;
  font-weight:800;
  letter-spacing:.07em;
  color:rgba(190,231,244,.72);
}

/* ==========================================================
   V6.27.74 — Tier outlines for Carrier progression breakdown
   The outline itself carries Green / Blue / Black / Red / Orange.
   ========================================================== */
.carrierHardwareTitleV62772[data-progress-tier],
.carrierHardwareGridV62772>div[data-progress-tier],
.carrierCombatBreakdownV62772>div[data-progress-tier]{
  --progress-tier-v62774:#78ff9f;
  border-color:var(--progress-tier-v62774)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--progress-tier-v62774) 24%,transparent),0 0 10px color-mix(in srgb,var(--progress-tier-v62774) 12%,transparent)!important;
}
.carrierHardwareTitleV62772[data-progress-tier="green"],
.carrierHardwareGridV62772>div[data-progress-tier="green"],
.carrierCombatBreakdownV62772>div[data-progress-tier="green"]{--progress-tier-v62774:#78ff9f;}
.carrierHardwareTitleV62772[data-progress-tier="blue"],
.carrierHardwareGridV62772>div[data-progress-tier="blue"],
.carrierCombatBreakdownV62772>div[data-progress-tier="blue"]{--progress-tier-v62774:#63cfff;}
.carrierHardwareTitleV62772[data-progress-tier="black"],
.carrierHardwareGridV62772>div[data-progress-tier="black"],
.carrierCombatBreakdownV62772>div[data-progress-tier="black"]{--progress-tier-v62774:#c6cbd3;}
.carrierHardwareTitleV62772[data-progress-tier="red"],
.carrierHardwareGridV62772>div[data-progress-tier="red"],
.carrierCombatBreakdownV62772>div[data-progress-tier="red"]{--progress-tier-v62774:#ff6262;}
.carrierHardwareTitleV62772[data-progress-tier="orange"],
.carrierHardwareGridV62772>div[data-progress-tier="orange"],
.carrierCombatBreakdownV62772>div[data-progress-tier="orange"]{--progress-tier-v62774:#ffad45;}
.carrierHardwareTitleV62772[data-progress-tier] small,
.carrierHardwareGridV62772>div[data-progress-tier] i,
.carrierCombatBreakdownV62772>div[data-progress-tier] i,
.carrierCombatBreakdownV62772>div[data-progress-tier] strong{
  color:var(--progress-tier-v62774);
}

/* ==========================================================
   V6.27.76 — COMPACT CARRIER STATUS MENU
   Visual spacing only. No stat, combat, progression, tier,
   art, routing, or gameplay calculations changed.
   ========================================================== */
#carrierInfoPanel.carrierInfoPanel{
  padding:8px!important;
}
#carrierInfoPanel .carrierInfoHeadCompactV62770{
  min-height:24px!important;
  padding-bottom:5px!important;
}
#carrierInfoPanel #carrierInfoClose{
  min-height:24px!important;
  width:26px!important;
  padding:0!important;
  font-size:16px!important;
}
#carrierInfoPanel .carrierInfoLabel{
  margin-top:5px!important;
  font-size:6px!important;
}
#carrierInfoPanel .carrierInfoBar{
  height:4px!important;
  margin-top:2px!important;
}

#carrierInfoPanel .carrierHardwareSummaryV62772,
#carrierInfoPanel .carrierCombatBreakdownV62772{
  gap:4px!important;
  margin-top:5px!important;
}
#carrierInfoPanel .carrierHardwareTitleV62772,
#carrierInfoPanel .carrierHardwareGridV62772>div,
#carrierInfoPanel .carrierCombatBreakdownV62772>div{
  padding:5px 7px!important;
  border-radius:6px!important;
}
#carrierInfoPanel .carrierHardwareTitleV62772{
  gap:5px!important;
}
#carrierInfoPanel .carrierHardwareGridV62772{
  gap:4px!important;
}
#carrierInfoPanel .carrierHardwareTitleV62772 span,
#carrierInfoPanel .carrierHardwareGridV62772 span,
#carrierInfoPanel .carrierCombatBreakdownV62772 span{
  font-size:8px!important;
  letter-spacing:.075em!important;
}
#carrierInfoPanel .carrierHardwareTitleV62772 b,
#carrierInfoPanel .carrierHardwareGridV62772 b,
#carrierInfoPanel .carrierCombatBreakdownV62772 b{
  font-size:10px!important;
}
#carrierInfoPanel .carrierHardwareTitleV62772 small,
#carrierInfoPanel .carrierHardwareGridV62772 small,
#carrierInfoPanel .carrierCombatBreakdownV62772 small{
  font-size:7px!important;
  line-height:1.12!important;
  letter-spacing:.045em!important;
}
#carrierInfoPanel .carrierHardwareGridV62772>div,
#carrierInfoPanel .carrierCombatBreakdownV62772>div{
  gap:2px 6px!important;
}
#carrierInfoPanel .carrierHardwareGridV62772 em,
#carrierInfoPanel .carrierCombatBreakdownV62772 em,
#carrierInfoPanel .carrierOverallPowerV62772 em{
  gap:8px!important;
  margin-top:0!important;
  font-size:7px!important;
  line-height:1.12!important;
  letter-spacing:.04em!important;
}
#carrierInfoPanel .carrierOverallPowerV62772 b{
  font-size:12px!important;
}

/* Keep the approved system tiles, but make each one a compact row. */
#carrierInfoPanel .carrierSystemLevelsV62770{
  gap:4px!important;
  margin-top:5px!important;
}
#carrierInfoPanel .carrierSystemLevelsV62770 .carrierSystemTileV62771{
  display:grid!important;
  grid-template-columns:1fr auto!important;
  align-items:center!important;
  gap:2px 7px!important;
  padding:5px 7px!important;
  border-radius:6px!important;
}
#carrierInfoPanel .carrierSystemLevelsV62770 .carrierSystemTileV62771>span{
  font-size:7px!important;
}
#carrierInfoPanel .carrierSystemLevelsV62770 .carrierSystemTileV62771>b{
  margin-top:0!important;
  font-size:9px!important;
  text-align:right!important;
}
#carrierInfoPanel .carrierSystemLevelsV62770 .carrierSystemTileV62771>small{
  grid-column:1/-1!important;
  margin-top:0!important;
  font-size:7px!important;
  line-height:1.08!important;
}
#carrierInfoPanel .carrierSystemTileV62771[data-tech-tier]::after{
  right:5px!important;
  top:5px!important;
  width:4px!important;
  height:4px!important;
}

#carrierInfoPanel .carrierWarpEnduranceV6214{
  gap:4px!important;
  margin-top:5px!important;
}
#carrierInfoPanel .carrierWarpEnduranceV6214>div{
  padding:5px!important;
}
#carrierInfoPanel .carrierWarpEnduranceV6214 span{
  font-size:6px!important;
}
#carrierInfoPanel .carrierWarpEnduranceV6214 b{
  margin-top:2px!important;
  font-size:8px!important;
}
#carrierInfoPanel .carrierFlightControlV6231{
  margin-top:5px!important;
  padding:5px 7px!important;
}
#carrierInfoPanel .carrierFlightControlV6231 button{
  min-height:28px!important;
  padding:0 8px!important;
  font-size:7px!important;
}
#carrierInfoPanel #carrierDistressBtnV6221.carrierDistressBtnV6221{
  min-height:30px!important;
  margin-top:5px!important;
  font-size:8px!important;
}
#carrierInfoPanel .carrierInfoLabel.oreV6180{
  margin-top:5px!important;
}

@media(max-width:820px),(pointer:coarse){
  #carrierInfoPanel.carrierInfoPanel{
    padding:7px!important;
    max-height:66vh!important;
  }
  #carrierInfoPanel button{
    min-height:30px!important;
  }
}

/* ==========================================================
   V6.27.77 — CARRIER CLEANUP + CENTER MARCH STATUS
   Display-only cleanup plus march HUD positioning. Existing art,
   combat routing, progression colors, and locked building collision untouched.
   ========================================================== */

/* Equipment is intentionally player-facing only: Equipment / Lasers X. */
#carrierInfoPanel .carrierHardwareSimpleV62777{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-height:34px!important;
  padding:7px 9px!important;
  border:1px solid rgba(75,225,132,.34)!important;
  border-radius:7px!important;
  background:rgba(6,28,22,.62)!important;
}
#carrierInfoPanel .carrierHardwareSimpleV62777>span{
  font:900 8px/1 system-ui!important;
  letter-spacing:.13em!important;
  color:#8fb6aa!important;
}
#carrierInfoPanel .carrierHardwareSimpleV62777>b{
  font:950 11px/1 system-ui!important;
  letter-spacing:.06em!important;
  color:#f2fff8!important;
}
#carrierInfoPanel .carrierHardwareSimpleV62777>b i{
  font:inherit!important;
  font-style:normal!important;
  color:inherit!important;
}
#carrierInfoPanel .carrierHardwareSimpleV62777[data-progress-tier="blue"]{border-color:rgba(70,170,255,.52)!important;}
#carrierInfoPanel .carrierHardwareSimpleV62777[data-progress-tier="black"]{border-color:rgba(155,165,185,.48)!important;}
#carrierInfoPanel .carrierHardwareSimpleV62777[data-progress-tier="red"]{border-color:rgba(255,82,82,.54)!important;}
#carrierInfoPanel .carrierHardwareSimpleV62777[data-progress-tier="orange"]{border-color:rgba(255,164,55,.60)!important;}

/* March status stays centered at the bottom from launch through combat resolution. */
.fighterMarchTimerV62770{
  left:50%!important;
  right:auto!important;
  bottom:calc(18px + env(safe-area-inset-bottom))!important;
  transform:translateX(-50%)!important;
  width:min(286px,calc(100vw - 28px))!important;
  padding:8px 12px 9px!important;
  text-align:center!important;
}
.fighterMarchTimerV62770>small{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  font:900 7px/1 system-ui!important;
  letter-spacing:.14em!important;
}
.fighterMarchTimerV62770>small>span{color:#6fe4ff!important;}
.fighterMarchTimerV62770>small>strong{color:#dff9ff!important;font:900 8px/1 system-ui!important;letter-spacing:.06em!important;}
.fighterMarchTimerV62770>b{
  display:block!important;
  margin-top:6px!important;
  font:950 13px/1 system-ui!important;
  letter-spacing:.10em!important;
  color:#fff!important;
}
.fighterMarchTimerV62770>em{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  margin-top:5px!important;
  font-style:normal!important;
}
.fighterMarchTimerV62770>em>span{
  position:static!important;
  transform:none!important;
  font:900 9px/1 system-ui!important;
  letter-spacing:.10em!important;
  color:#8eeaff!important;
}
.fighterMarchTimerV62770>em>strong{
  font:950 11px/1 system-ui!important;
  color:#fff!important;
}
@media (max-width:820px),(pointer:coarse){
  .fighterMarchTimerV62770{
    left:50%!important;
    right:auto!important;
    bottom:calc(12px + env(safe-area-inset-bottom))!important;
    width:min(278px,calc(100vw - 20px))!important;
  }
}


/* ==========================================================
   V6.27.78 — compact Drone level + single march HUD
   ========================================================== */
#carrierInfoPanel .carrierProgressSimpleV62778{
  position:relative!important;
  display:grid!important;
  grid-template-columns:1fr auto!important;
  align-items:center!important;
  gap:7px!important;
  min-height:30px!important;
  padding:5px 7px!important;
  border-radius:6px!important;
}
#carrierInfoPanel .carrierProgressSimpleV62778>span{
  font:900 7px/1 system-ui!important;
  letter-spacing:.11em!important;
}
#carrierInfoPanel .carrierProgressSimpleV62778>b{
  font:950 9px/1 system-ui!important;
  text-align:right!important;
}
#carrierInfoPanel .carrierProgressSimpleV62778[data-progress-tier="green"]{--progress-tier-v62778:#78ff9f;border-color:rgba(120,255,159,.46)!important;}
#carrierInfoPanel .carrierProgressSimpleV62778[data-progress-tier="blue"]{--progress-tier-v62778:#63cfff;border-color:rgba(99,207,255,.52)!important;}
#carrierInfoPanel .carrierProgressSimpleV62778[data-progress-tier="black"]{--progress-tier-v62778:#c6cbd3;border-color:rgba(125,135,150,.62)!important;}
#carrierInfoPanel .carrierProgressSimpleV62778[data-progress-tier="red"]{--progress-tier-v62778:#ff6262;border-color:rgba(255,98,98,.54)!important;}
#carrierInfoPanel .carrierProgressSimpleV62778[data-progress-tier="orange"]{--progress-tier-v62778:#ffad45;border-color:rgba(255,173,69,.60)!important;}
#carrierInfoPanel .carrierProgressSimpleV62778::after{
  content:""!important;
  position:absolute!important;
  right:5px!important;
  top:5px!important;
  width:4px!important;
  height:4px!important;
  border-radius:50%!important;
  background:var(--progress-tier-v62778,#78ff9f)!important;
  box-shadow:0 0 8px var(--progress-tier-v62778,#78ff9f)!important;
}

/* Only the centered march status card is player-facing. */
.fighterMarchInfoV62770{display:none!important;}
.fighterMarchTimerV62770>small>span{
  position:static!important;
  transform:none!important;
  display:block!important;
  color:#6fe4ff!important;
}
.fighterMarchTimerV62770>small>span>i{
  font:inherit!important;
  font-style:normal!important;
  color:#b8f4ff!important;
}
.fighterMarchTimerV62770>em{
  min-height:12px!important;
}
.fighterMarchTimerV62770>em>strong{
  display:block!important;
  font:950 11px/1 system-ui!important;
  color:#fff!important;
}


/* ==========================================================
   V6.27.79 — Carrier accordions + persistent centered march HUD
   ========================================================== */
#carrierInfoPanel .carrierAccordionV62779{margin-top:5px!important;}
#carrierInfoPanel .carrierAccordionToggleV62779{
  width:100%!important;min-height:31px!important;padding:6px 8px!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  border:1px solid rgba(85,220,255,.24)!important;border-radius:7px!important;
  background:rgba(4,20,27,.74)!important;color:#e8fbff!important;
}
#carrierInfoPanel .carrierAccordionToggleV62779 span{font:950 8px/1 system-ui!important;letter-spacing:.12em!important;}
#carrierInfoPanel .carrierAccordionToggleV62779 b{font:950 14px/1 system-ui!important;color:#79e7ff!important;transition:transform .16s ease!important;}
#carrierInfoPanel .carrierAccordionToggleV62779[aria-expanded="true"] b{transform:rotate(180deg)!important;}
#carrierInfoPanel .carrierAccordionBodyV62779{padding:4px 0 0!important;}
#carrierInfoPanel .carrierAccordionBodyV62779.hidden{display:none!important;}
#carrierInfoPanel .carrierEquipmentRowV62779{
  position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
  min-height:27px!important;padding:5px 8px!important;margin-top:3px!important;border:1px solid rgba(120,255,159,.34)!important;
  border-radius:6px!important;background:rgba(4,22,18,.48)!important;
}
#carrierInfoPanel .carrierEquipmentRowV62779>span{font:900 7px/1 system-ui!important;letter-spacing:.09em!important;color:#b8d3cc!important;}
#carrierInfoPanel .carrierEquipmentRowV62779>b{display:flex!important;align-items:center!important;gap:7px!important;font:950 9px/1 system-ui!important;color:#fff!important;}
#carrierInfoPanel .carrierEquipmentRowV62779 i{font:inherit!important;font-style:normal!important;}
#carrierInfoPanel .carrierEquipmentRowV62779 small{font:900 6px/1 system-ui!important;letter-spacing:.08em!important;}
#carrierInfoPanel .carrierEquipmentRowV62779[data-progress-tier="green"]{border-color:rgba(120,255,159,.44)!important;}
#carrierInfoPanel .carrierEquipmentRowV62779[data-progress-tier="blue"]{border-color:rgba(99,207,255,.54)!important;}
#carrierInfoPanel .carrierEquipmentRowV62779[data-progress-tier="black"]{border-color:rgba(155,165,185,.55)!important;}
#carrierInfoPanel .carrierEquipmentRowV62779[data-progress-tier="red"]{border-color:rgba(255,98,98,.56)!important;}
#carrierInfoPanel .carrierEquipmentRowV62779[data-progress-tier="orange"]{border-color:rgba(255,173,69,.62)!important;}
#carrierInfoPanel .carrierAccordionBodyV62779 .carrierSystemLevelsV62770{margin-top:0!important;}

/* One clean march card: MARCH / EN ROUTE / seconds, Fighter Drones, march size. */
.fighterMarchTimerV62770{
  left:50%!important;right:auto!important;bottom:calc(16px + env(safe-area-inset-bottom))!important;
  transform:translateX(-50%)!important;width:min(300px,calc(100vw - 24px))!important;
  padding:9px 12px!important;border-radius:10px!important;z-index:4200!important;
  background:linear-gradient(145deg,rgba(3,18,27,.97),rgba(2,10,16,.98))!important;
  border:1px solid rgba(94,225,255,.34)!important;box-shadow:0 14px 32px rgba(0,0,0,.45),0 0 18px rgba(78,218,255,.08)!important;
}
.fighterMarchTimerV62770>small{display:grid!important;grid-template-columns:auto 1fr auto!important;align-items:center!important;gap:9px!important;}
.fighterMarchTimerV62770>small>span{position:static!important;transform:none!important;color:#79e7ff!important;font:950 7px/1 system-ui!important;letter-spacing:.15em!important;}
.fighterMarchTimerV62770>small>i{font:950 7px/1 system-ui!important;font-style:normal!important;letter-spacing:.12em!important;text-align:center!important;color:#b9f5ff!important;}
.fighterMarchTimerV62770>small>strong{font:950 10px/1 system-ui!important;color:#fff!important;text-align:right!important;}
.fighterMarchTimerV62770>b{display:block!important;margin-top:6px!important;font:950 13px/1 system-ui!important;letter-spacing:.11em!important;color:#fff!important;text-align:center!important;}
.fighterMarchTimerV62770>em{display:block!important;margin-top:5px!important;min-height:0!important;font:900 8px/1 system-ui!important;font-style:normal!important;letter-spacing:.08em!important;color:#8eeaff!important;text-align:center!important;}
.fighterMarchInfoV62770{display:none!important;}


/* ==========================================================
   V6.27.80 — video cleanup: rank legend + march polish
   ========================================================== */
.rankBuffLegendV6274{display:none!important;}
.fighterMarchTimerV62770{
  pointer-events:none!important;
  min-height:0!important;
  overflow:hidden!important;
}
.fighterMarchTimerV62770>small{
  padding-bottom:6px!important;
  border-bottom:1px solid rgba(93,224,255,.14)!important;
}
.fighterMarchTimerV62770>small>i{
  padding:3px 7px!important;
  border:1px solid rgba(111,228,255,.22)!important;
  border-radius:999px!important;
  background:rgba(41,159,190,.09)!important;
}
.fighterMarchTimerV62770>b{margin-top:7px!important;}
.fighterMarchTimerV62770>em{margin-top:6px!important;}

/* ==========================================================
   V6.27.81 — CARRIER MILITARY RANK + PLAYER MENU CLEANUP
   ========================================================== */
#carrierInfoPanel .carrierMilitaryRankV62781{
  width:100%;
  min-height:48px;
  display:grid;
  grid-template-columns:1fr auto;
  grid-template-rows:auto auto;
  align-items:center;
  gap:2px 8px;
  padding:7px 9px;
  border:1px solid rgba(120,255,159,.32);
  border-radius:8px;
  background:rgba(4,18,22,.72);
  color:#eafff0;
  text-align:left;
  cursor:pointer;
  box-sizing:border-box;
}
#carrierInfoPanel .carrierMilitaryRankV62781>span{
  font-size:9px;
  letter-spacing:.12em;
  color:#8fa9b3;
  font-weight:800;
}
#carrierInfoPanel .carrierMilitaryRankV62781>b{
  grid-row:1 / span 2;
  grid-column:2;
  display:flex;
  align-items:center;
  gap:6px;
  font-size:11px;
  color:#ecfbff;
}
#carrierInfoPanel .carrierMilitaryRankV62781>b i{
  display:inline-flex;
  align-items:center;
}
#carrierInfoPanel .carrierMilitaryRankV62781>b strong{
  font-style:normal;
  white-space:nowrap;
}
#carrierInfoPanel .carrierMilitaryRankV62781>small{
  font-size:9px;
  color:#8fa9b3;
}
#carrierInfoPanel .carrierMilitaryRankV62781>small em{
  color:#78ff9f;
  font-style:normal;
  font-weight:900;
}
#carrierInfoPanel .carrierMilitaryRankV62781:hover{
  border-color:rgba(120,255,159,.62);
  background:rgba(8,28,31,.88);
}

/* V6.27.82 — explicit close controls for screens that previously relied on
   clicking their tab again. Existing Carrier/Target/Rank close controls stay unchanged. */
#topLeftPanelV693,
#menuDrop{position:relative;}
.screenExitV62782{
  position:absolute;
  top:7px;
  right:7px;
  z-index:50;
  width:28px;
  height:28px;
  padding:0;
  border:1px solid rgba(129,221,255,.58);
  border-radius:7px;
  background:rgba(4,13,22,.92);
  color:#e9f9ff;
  font:700 20px/26px Arial,sans-serif;
  text-align:center;
  cursor:pointer;
  box-shadow:0 0 12px rgba(72,196,255,.18);
}
.screenExitV62782:hover,
.screenExitV62782:focus-visible{
  border-color:rgba(181,239,255,.95);
  outline:none;
}

/* ==========================================================
   V6.27.84 — CARRIER COMMAND UI CONDENSE
   Visual-only Carrier menu redesign. No gameplay rules changed.
   ========================================================== */
#carrierInfoPanel.carrierInfoPanel[data-command-ui-v62784="1"]{
  width:min(930px,calc(100vw - 24px))!important;
  max-width:930px!important;
  height:min(560px,calc(100vh - 24px))!important;
  max-height:560px!important;
  left:50%!important;
  right:auto!important;
  top:50%!important;
  bottom:auto!important;
  transform:translate(-50%,-50%)!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(91,220,255,.46)!important;
  border-radius:14px!important;
  background:
    radial-gradient(circle at 42% 36%,rgba(31,152,203,.10),transparent 30%),
    linear-gradient(145deg,rgba(4,20,29,.995),rgba(1,8,14,.995))!important;
  box-shadow:0 28px 70px rgba(0,0,0,.64),0 0 30px rgba(73,208,255,.14),inset 0 0 0 1px rgba(255,255,255,.025)!important;
  z-index:10020!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierInfoHead{
  height:54px!important;min-height:54px!important;padding:0 12px 0 15px!important;margin:0!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  border-bottom:1px solid rgba(91,219,255,.22)!important;
  background:linear-gradient(90deg,rgba(8,34,47,.96),rgba(3,18,27,.98))!important;
}
.carrierCommandTitleV62784{display:flex;align-items:center;gap:10px;min-width:0}
.carrierCommandTitleV62784>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.carrierCommandTitleV62784 small{font:800 7px/1 system-ui;letter-spacing:.18em;color:rgba(128,224,255,.68)}
.carrierCommandTitleV62784 strong{font:900 16px/1 system-ui;letter-spacing:.12em;color:#effbff;text-shadow:0 0 12px rgba(80,220,255,.22)}
.carrierCommandEmblemV62784{width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(91,222,255,.55);clip-path:polygon(50% 0,100% 26%,88% 100%,12% 100%,0 26%);background:linear-gradient(180deg,rgba(38,151,194,.28),rgba(5,31,45,.68));font:900 13px/1 system-ui;color:#9eeaff;box-shadow:inset 0 0 12px rgba(61,205,255,.15)}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierCommandCloseV62784{position:static!important;width:32px!important;height:32px!important;min-height:32px!important;border-radius:8px!important;border:1px solid rgba(105,222,255,.25)!important;background:rgba(7,27,37,.72)!important;color:#dff8ff!important;font-size:20px!important}
.carrierCommandShellV62784{height:calc(100% - 54px);display:grid;grid-template-columns:126px minmax(230px,30%) 1fr;min-height:0}
.carrierCommandNavV62784{padding:12px 9px;display:flex;flex-direction:column;gap:8px;border-right:1px solid rgba(88,213,255,.14);background:linear-gradient(180deg,rgba(4,22,31,.82),rgba(2,13,20,.92));overflow:auto}
.carrierCommandNavV62784 button{height:48px!important;min-height:48px!important;padding:0 9px!important;display:grid!important;grid-template-columns:26px 1fr!important;align-items:center!important;gap:7px!important;text-align:left!important;border:1px solid rgba(90,216,255,.13)!important;border-radius:8px!important;background:linear-gradient(135deg,rgba(10,41,53,.68),rgba(3,22,31,.74))!important;color:rgba(217,244,252,.72)!important;font:900 7px/1 system-ui!important;letter-spacing:.09em!important;transition:.16s ease!important}
.carrierCommandNavV62784 button:hover,.carrierCommandNavV62784 button.active{border-color:rgba(85,220,255,.52)!important;background:linear-gradient(135deg,rgba(14,70,88,.86),rgba(5,31,42,.92))!important;color:#effcff!important;box-shadow:inset 3px 0 0 #5bdcff,0 0 12px rgba(65,209,255,.08)!important}
.carrierNavGlyphV62784{width:24px;height:24px;display:grid;place-items:center;border:1px solid rgba(103,225,255,.30);border-radius:6px;background:rgba(11,57,73,.48);font-size:12px;color:#81e7ff;text-shadow:0 0 8px rgba(90,226,255,.35)}
.carrierCommandVisualV62784{position:relative;min-width:0;padding:14px 14px 12px;display:flex;flex-direction:column;border-right:1px solid rgba(88,213,255,.14);background:radial-gradient(circle at 50% 39%,rgba(39,162,207,.15),transparent 40%),linear-gradient(180deg,rgba(3,16,24,.84),rgba(2,11,17,.94));overflow:hidden}
.carrierVisualBadgeV62784{display:flex;justify-content:space-between;align-items:center;padding:7px 8px;border:1px solid rgba(102,225,255,.22);border-radius:7px;background:rgba(5,31,43,.56)}
.carrierVisualBadgeV62784 span{font:900 7px/1 system-ui;letter-spacing:.16em;color:#7fdef6}.carrierVisualBadgeV62784 b{font:900 9px/1 system-ui;letter-spacing:.08em;color:#eefbff}
.carrierVisualArtFrameV62784{position:relative;flex:1;min-height:190px;display:grid;place-items:center;margin:10px 0;border:1px solid rgba(85,211,250,.20);border-radius:12px;overflow:hidden;background:radial-gradient(circle,rgba(24,107,140,.14),rgba(1,10,15,.1) 55%),linear-gradient(rgba(74,205,241,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(74,205,241,.04) 1px,transparent 1px);background-size:auto,22px 22px,22px 22px}
.carrierVisualArtFrameV62784::before,.carrierVisualArtFrameV62784::after{content:"";position:absolute;width:46px;height:46px;border-color:rgba(92,222,255,.45);pointer-events:none}.carrierVisualArtFrameV62784::before{left:8px;top:8px;border-left:1px solid;border-top:1px solid}.carrierVisualArtFrameV62784::after{right:8px;bottom:8px;border-right:1px solid;border-bottom:1px solid}
.carrierVisualArtFrameV62784 img{position:relative;z-index:2;width:94%;max-height:230px;object-fit:contain;filter:drop-shadow(0 18px 20px rgba(0,0,0,.44)) drop-shadow(0 0 11px rgba(55,196,255,.11));user-select:none}
.carrierVisualSweepV62784{position:absolute;z-index:1;left:5%;right:5%;height:1px;top:22%;background:linear-gradient(90deg,transparent,#63ddff,transparent);opacity:.45;box-shadow:0 0 10px #63ddff;animation:carrierSweepV62784 4.5s linear infinite}@keyframes carrierSweepV62784{0%{top:18%;opacity:.1}50%{opacity:.55}100%{top:82%;opacity:.1}}
.carrierVisualPowerV62784{padding:9px 10px;border:1px solid rgba(255,184,67,.28);border-radius:8px;background:linear-gradient(90deg,rgba(50,34,7,.58),rgba(6,27,37,.76));display:flex;justify-content:space-between;align-items:center}.carrierVisualPowerV62784 small{font:900 7px/1 system-ui;letter-spacing:.12em;color:#d3b67a}.carrierVisualPowerV62784 strong{font:900 15px/1 system-ui;color:#fff0b8;text-shadow:0 0 10px rgba(255,190,72,.18)}
.carrierVisualIdentityV62784{display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:center;padding:9px 3px 0}.carrierVisualIdentityV62784 b{font:900 8px/1 system-ui;letter-spacing:.09em;color:#dff8ff}.carrierVisualIdentityV62784 small{font:900 7px/1 system-ui;letter-spacing:.12em;color:#6ce2a6}.carrierVisualDotV62784{width:6px;height:6px;border-radius:50%;background:#70efae;box-shadow:0 0 9px #70efae}
.carrierCommandContentV62784{min-width:0;min-height:0;overflow:hidden;padding:14px;background:linear-gradient(180deg,rgba(3,17,25,.74),rgba(1,9,14,.88))}
.carrierCommandPageV62784{display:none;height:100%;overflow:auto;padding-right:3px}.carrierCommandPageV62784.active{display:block}
.carrierPageHeadV62784{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid rgba(91,218,255,.15)}.carrierPageHeadV62784>div{display:flex;flex-direction:column;gap:3px}.carrierPageHeadV62784 small{font:900 7px/1 system-ui;letter-spacing:.16em;color:rgba(111,216,246,.62)}.carrierPageHeadV62784 strong{font:900 15px/1 system-ui;letter-spacing:.11em;color:#e9faff}.carrierPageBadgeV62784{padding:6px 8px;border:1px solid rgba(89,220,255,.31);border-radius:6px;background:rgba(6,46,60,.55);font:900 7px/1 system-ui;letter-spacing:.1em;color:#8ae7ff}
.carrierLiveBarsV62784{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:5px 9px;padding:10px;border:1px solid rgba(89,214,255,.18);border-radius:9px;background:rgba(3,26,36,.52)}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierLiveBarsV62784 .carrierInfoLabel{margin:0!important;min-width:122px!important;font-size:7px!important}#carrierInfoPanel[data-command-ui-v62784="1"] .carrierLiveBarsV62784 .carrierInfoBar{margin:0!important;height:7px!important}
.carrierOverviewGridV62784{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.carrierOverviewGridV62784>*{margin:0!important;min-height:48px!important}.carrierOverviewGridV62784 .carrierMilitaryRankV62781{grid-column:1/-1!important}
.carrierStatusUtilitiesV62784{display:grid;gap:8px;margin-top:10px}.carrierStatusUtilitiesV62784>*{margin:0!important}
.carrierCommandHiddenToggleV62784{display:none!important}#carrierInfoPanel[data-command-ui-v62784="1"] .carrierAccordionV62779{margin:0!important;border:0!important;background:none!important}#carrierInfoPanel[data-command-ui-v62784="1"] .carrierAccordionBodyV62779{display:block!important;padding:0!important}.carrierCommandPageV62784[data-carrier-page-v62784="equipment"] .carrierEquipmentRowV62779,.carrierCommandPageV62784[data-carrier-page-v62784="systems"] .carrierSystemTileV62771{margin-bottom:8px!important;padding:11px 12px!important;border-radius:8px!important}
.carrierEquipmentHeroV62784,.carrierConditionHeroV62784,.carrierRepairHeroV62784,.carrierDroneHeroV62784{display:grid;grid-template-columns:100px 1fr;gap:12px;align-items:center;padding:10px;margin-bottom:11px;border:1px solid rgba(91,216,255,.18);border-radius:9px;background:linear-gradient(90deg,rgba(6,35,47,.64),rgba(3,17,25,.42))}.carrierEquipmentHeroV62784 img,.carrierConditionHeroV62784 img{width:100px;height:72px;object-fit:contain;filter:drop-shadow(0 10px 10px rgba(0,0,0,.38))}.carrierEquipmentHeroV62784>div,.carrierConditionHeroV62784>div,.carrierRepairHeroV62784>div,.carrierDroneHeroV62784>div{display:flex;flex-direction:column;gap:4px}.carrierEquipmentHeroV62784 small,.carrierConditionHeroV62784 small,.carrierRepairHeroV62784 small,.carrierDroneHeroV62784 small{font:900 7px/1 system-ui;letter-spacing:.13em;color:#77d9f3}.carrierEquipmentHeroV62784 strong,.carrierConditionHeroV62784 strong,.carrierRepairHeroV62784 strong,.carrierDroneHeroV62784 strong{font:900 11px/1.2 system-ui;letter-spacing:.06em;color:#ecfbff}.carrierEquipmentHeroV62784 span,.carrierConditionHeroV62784 span,.carrierRepairHeroV62784 span,.carrierDroneHeroV62784 span{font:700 8px/1.35 system-ui;color:rgba(193,229,239,.65)}
.carrierConditionGridV62784{display:grid;grid-template-columns:1fr 1fr;gap:8px}.carrierConditionGridV62784>div{position:relative;padding:10px;border:1px solid rgba(87,210,245,.18);border-radius:8px;background:rgba(4,28,38,.52)}.carrierConditionGridV62784 span{display:block;font:900 7px/1 system-ui;letter-spacing:.1em;color:rgba(157,222,239,.68)}.carrierConditionGridV62784 b{display:block;margin-top:5px;font:900 10px/1 system-ui;color:#f2fbff}.carrierConditionGridV62784 i{display:block;height:5px;margin-top:8px;border-radius:999px;overflow:hidden;background:rgba(92,197,224,.10)}.carrierConditionGridV62784 em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#42d7ff,#82f2c0);box-shadow:0 0 8px rgba(73,219,255,.2)}.carrierConditionGridV62784 small{position:absolute;right:10px;top:10px;font:900 7px/1 system-ui;color:#88e7ff}
.carrierSystemBadgeRowV62784{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.carrierSystemBadgeRowV62784 span{height:52px;display:grid;place-items:center;border:1px solid rgba(91,219,255,.21);clip-path:polygon(12% 0,88% 0,100% 24%,92% 100%,8% 100%,0 24%);background:linear-gradient(180deg,rgba(20,81,102,.52),rgba(4,28,39,.70));font:900 8px/1 system-ui;letter-spacing:.1em;color:#a2eaff}
.carrierDroneHeroV62784{grid-template-columns:130px 1fr}.carrierDroneArtV62784{height:116px!important;display:grid!important;grid-template-rows:1fr auto!important;place-items:center!important;padding:6px;border:1px solid rgba(90,219,255,.18);border-radius:8px;background:radial-gradient(circle,rgba(40,163,204,.14),transparent 62%)}.carrierDroneArtV62784 img{width:112px;height:78px;object-fit:contain;filter:drop-shadow(0 10px 10px rgba(0,0,0,.4))}.carrierDroneArtV62784 span{font:900 7px/1 system-ui!important;letter-spacing:.1em!important;color:#8ee8ff!important}.carrierCommandPageV62784[data-carrier-page-v62784="drones"] [data-carrier-slot-v62784="drones"]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.carrierCommandPageV62784[data-carrier-page-v62784="drones"] [data-carrier-slot-v62784="drones"]>*{margin:0!important}
.carrierRepairHeroV62784{grid-template-columns:64px 1fr;border-color:rgba(255,109,93,.20);background:linear-gradient(90deg,rgba(64,20,18,.46),rgba(4,23,31,.45))}.carrierRepairGlyphV62784{width:52px;height:52px;display:grid;place-items:center;clip-path:polygon(50% 0,100% 22%,88% 100%,12% 100%,0 22%);background:linear-gradient(180deg,rgba(207,65,54,.58),rgba(73,22,20,.64));font:900 22px/1 system-ui;color:#ffb3aa;text-shadow:0 0 10px rgba(255,88,72,.4)}.carrierRepairActionsV62784{display:grid;grid-template-columns:1fr 1fr;gap:9px}.carrierRepairActionsV62784 button{height:42px!important;border:1px solid rgba(99,217,249,.25)!important;border-radius:8px!important;background:linear-gradient(135deg,rgba(9,50,65,.8),rgba(3,28,38,.9))!important;font:900 7px/1 system-ui!important;letter-spacing:.08em!important;color:#e8faff!important}.carrierRepairActionsV62784 button:disabled{opacity:.35!important;cursor:default!important}.carrierRepairActionsV62784 #carrierDistressBtnV6221{margin:0!important;width:100%!important}.carrierRepairNoticeV62784{margin-top:10px;padding:9px;border:1px solid rgba(91,214,247,.12);border-radius:7px;font:700 7px/1.35 system-ui;color:rgba(180,221,233,.57);letter-spacing:.03em}
@media (max-width:760px){#carrierInfoPanel.carrierInfoPanel[data-command-ui-v62784="1"]{width:calc(100vw - 12px)!important;height:calc(100vh - 12px)!important;max-height:none!important}.carrierCommandShellV62784{grid-template-columns:86px 1fr}.carrierCommandVisualV62784{display:none}.carrierCommandNavV62784{padding:8px 6px}.carrierCommandNavV62784 button{grid-template-columns:22px 1fr!important;padding:0 5px!important;font-size:6px!important}.carrierNavGlyphV62784{width:20px;height:20px}.carrierCommandContentV62784{padding:10px}.carrierConditionGridV62784,.carrierOverviewGridV62784{grid-template-columns:1fr}.carrierOverviewGridV62784 .carrierMilitaryRankV62781{grid-column:auto!important}.carrierDroneHeroV62784{grid-template-columns:105px 1fr}}


/* V6.27.85 — Carrier Command badges + in-screen Military Rank. Visual/read-only only. */
.carrierBadgeRailV62785{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 10px}
.carrierFeatureBadgeV62785{min-height:58px;padding:8px 9px;display:grid;grid-template-columns:38px 1fr;align-items:center;gap:8px;border:1px solid rgba(93,220,255,.22);border-radius:9px;background:linear-gradient(145deg,rgba(10,48,63,.78),rgba(3,22,31,.88));box-shadow:inset 0 0 18px rgba(60,210,255,.04)}
.carrierFeatureBadgeV62785>div{min-width:0;display:flex;flex-direction:column;gap:3px}.carrierFeatureBadgeV62785 small{font:800 6px/1 system-ui;letter-spacing:.16em;color:rgba(150,224,244,.62)}.carrierFeatureBadgeV62785 b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:900 9px/1 system-ui;letter-spacing:.06em;color:#effcff}
.carrierFeatureIconV62785{width:34px;height:38px;display:grid;place-items:center;clip-path:polygon(50% 0,92% 18%,100% 68%,50% 100%,0 68%,8% 18%);border:1px solid rgba(106,230,255,.6);background:radial-gradient(circle at 50% 35%,rgba(53,189,236,.45),rgba(4,40,55,.86));font:900 15px/1 system-ui;color:#b8f3ff;text-shadow:0 0 10px rgba(82,220,255,.8)}
.carrierFeatureRankV62785,.carrierNavRankBadgeV62785{display:grid;place-items:center}.carrierFeatureRankV62785 .militaryRankBadgeV6274{transform:scale(1.3)}
.carrierCommandNavV62784 .carrierRankNavV62785{grid-template-columns:26px 1fr!important}.carrierNavRankBadgeV62785 .militaryRankBadgeV6274{display:grid;place-items:center}.carrierNavRankBadgeV62785 .militaryRankSvgV6274{width:22px!important;height:22px!important}
.carrierRankHeroV62785{display:grid;grid-template-columns:105px minmax(150px,1fr) minmax(115px,.7fr) minmax(155px,.9fr);gap:10px;align-items:center;padding:13px;margin-bottom:12px;border:1px solid rgba(100,220,255,.24);border-radius:10px;background:radial-gradient(circle at 10% 50%,rgba(71,173,216,.17),transparent 34%),linear-gradient(145deg,rgba(8,36,49,.82),rgba(2,18,26,.92))}
.carrierRankHeroBadgeV62785{display:grid;place-items:center;min-height:90px}.carrierRankHeroBadgeV62785 .militaryRankSvgV6274{width:82px!important;height:82px!important}.carrierRankHeroCopyV62785,.carrierRankHeroStatV62785{display:flex;flex-direction:column;gap:5px;min-width:0}.carrierRankHeroV62785 small{font:800 6px/1 system-ui;letter-spacing:.17em;color:rgba(150,224,244,.64)}.carrierRankHeroCopyV62785 strong{font:900 18px/1.05 system-ui;letter-spacing:.08em;color:#f1fbff}.carrierRankHeroCopyV62785 span{font:800 8px/1 system-ui;color:#8edfff}.carrierRankHeroStatV62785 b{font:900 16px/1 system-ui;color:#f7d46a;text-shadow:0 0 11px rgba(255,201,78,.24)}.carrierRankHeroStatV62785 span{font:700 7px/1.25 system-ui;color:rgba(204,235,244,.63)}
.carrierRankLadderV62785{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-bottom:4px}.carrierRankCardV62785{min-height:76px;padding:8px 10px;display:grid;grid-template-columns:58px 1fr;align-items:center;gap:8px;border:1px solid rgba(85,197,232,.14);border-radius:8px;background:rgba(3,22,31,.72)}.carrierRankCardV62785.current{border-color:rgba(255,199,70,.55);background:linear-gradient(135deg,rgba(91,65,16,.22),rgba(5,28,38,.82));box-shadow:inset 3px 0 0 rgba(255,198,69,.8)}.carrierRankCardV62785>div{display:grid;place-items:center}.carrierRankCardV62785 .militaryRankSvgV6274{width:48px!important;height:48px!important}.carrierRankCardV62785 section{display:flex;flex-direction:column;gap:4px;min-width:0}.carrierRankCardV62785 small{font:800 6px/1 system-ui;letter-spacing:.12em;color:rgba(145,216,235,.58)}.carrierRankCardV62785 b{font:900 9px/1 system-ui;color:#ebfaff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.carrierRankCardV62785 span{font:700 6px/1.2 system-ui;color:rgba(199,232,242,.62)}
@media (max-width:760px){.carrierBadgeRailV62785{grid-template-columns:repeat(2,minmax(0,1fr))}.carrierRankHeroV62785{grid-template-columns:82px 1fr}.carrierRankHeroStatV62785{grid-column:span 1}.carrierRankLadderV62785{grid-template-columns:1fr}}

/* ==========================================================
   V6.27.86 — Carrier Command visual badge pass
   UI-only. Existing systems/data/math remain untouched.
   ========================================================== */
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierBadgeGlyphV62786{
  position:relative;isolation:isolate;overflow:visible;
  clip-path:polygon(50% 0,91% 18%,100% 67%,50% 100%,0 67%,9% 18%);
  border:0!important;
  background:linear-gradient(180deg,rgba(18,76,99,.94),rgba(3,28,39,.96))!important;
  box-shadow:0 0 0 1px rgba(112,230,255,.42),inset 0 0 14px rgba(80,220,255,.16),0 0 10px rgba(63,205,255,.12)!important;
  color:#dffaff!important;text-shadow:0 0 9px currentColor!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierBadgeGlyphV62786::after{
  content:"";position:absolute;inset:4px;z-index:-1;
  clip-path:inherit;border:1px solid rgba(209,248,255,.18);
  background:radial-gradient(circle at 50% 30%,rgba(134,237,255,.13),transparent 58%);
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierBadgeGlyphV62786.carrierV62786{color:#8fe9ff!important}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierBadgeGlyphV62786.statusV62786{color:#8fe9ff!important}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierBadgeGlyphV62786.conditionV62786{color:#65f0ca!important;background:linear-gradient(180deg,rgba(16,86,75,.94),rgba(3,39,38,.96))!important}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierBadgeGlyphV62786.equipmentV62786{color:#ffd16c!important;background:linear-gradient(180deg,rgba(104,72,21,.94),rgba(44,29,5,.96))!important}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierBadgeGlyphV62786.systemsV62786{color:#a9a4ff!important;background:linear-gradient(180deg,rgba(64,55,115,.94),rgba(24,20,59,.96))!important}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierBadgeGlyphV62786.dronesV62786{color:#7df0a2!important;background:linear-gradient(180deg,rgba(23,88,49,.94),rgba(5,43,24,.96))!important}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierBadgeGlyphV62786.repairV62786{color:#ff8f83!important;background:linear-gradient(180deg,rgba(112,37,32,.94),rgba(52,12,13,.96))!important}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierCommandNavV62784 button.active .carrierBadgeGlyphV62786{box-shadow:0 0 0 1px currentColor,inset 0 0 18px rgba(255,255,255,.12),0 0 15px currentColor!important}

#carrierInfoPanel[data-command-ui-v62784="1"] .carrierSystemBadgeRowV62786 span{
  height:60px!important;display:grid!important;grid-template-columns:40px 1fr!important;place-items:center start!important;
  padding:0 12px!important;clip-path:polygon(8% 0,92% 0,100% 22%,94% 100%,6% 100%,0 22%)!important;
  border:0!important;box-shadow:inset 0 0 0 1px rgba(108,226,255,.22)!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierSystemBadgeRowV62786 i{
  width:34px;height:38px;display:grid;place-items:center;font:900 16px/1 system-ui;font-style:normal;
  clip-path:polygon(50% 0,92% 18%,100% 68%,50% 100%,0 68%,8% 18%);background:rgba(4,26,36,.82);text-shadow:0 0 10px currentColor;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierSystemBadgeRowV62786 b{font:900 8px/1 system-ui;letter-spacing:.13em;color:#eafaff}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierSystemBadgeRowV62786 .shieldV62786{background:linear-gradient(180deg,rgba(19,76,108,.64),rgba(3,30,45,.84))!important}.carrierSystemBadgeRowV62786 .shieldV62786 i{color:#63d7ff}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierSystemBadgeRowV62786 .laserV62786{background:linear-gradient(180deg,rgba(107,47,31,.60),rgba(50,19,15,.84))!important}.carrierSystemBadgeRowV62786 .laserV62786 i{color:#ff9b68}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierSystemBadgeRowV62786 .warpV62786{background:linear-gradient(180deg,rgba(67,49,116,.62),rgba(27,20,61,.84))!important}.carrierSystemBadgeRowV62786 .warpV62786 i{color:#b49cff}

/* ==========================================================
   V6.27.87 — Carrier Command readability / spacing cleanup
   UI-only. No gameplay, progression, combat, rank, or stat logic changed.
   ========================================================== */
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierBadgeRailV62785{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierFeatureBadgeV62785{
  min-width:0!important;
  min-height:54px!important;
  grid-template-columns:34px minmax(0,1fr)!important;
  gap:8px!important;
  padding:7px 9px!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierFeatureIconV62785{
  width:31px!important;
  height:35px!important;
  font-size:13px!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierFeatureBadgeV62785 small{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierFeatureBadgeV62785 b{
  font-size:8px!important;
  line-height:1.12!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierFeatureRankV62785 .militaryRankBadgeV6274{
  transform:scale(1.08)!important;
  transform-origin:center!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierVisualPowerV62784{
  min-height:42px!important;
  gap:10px!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierVisualPowerV62784 strong{
  white-space:nowrap!important;
  font-size:14px!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierVisualIdentityV62784{
  min-height:25px!important;
  padding-top:7px!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierVisualIdentityV62784 b,
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierVisualIdentityV62784 small{
  white-space:nowrap!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierOverviewGridV62784{
  align-items:stretch!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierOverviewGridV62784 .carrierMilitaryRankV62781{
  min-width:0!important;
  overflow:hidden!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierRankHeroV62785{
  grid-template-columns:90px minmax(145px,1.15fr) minmax(110px,.7fr) minmax(145px,.9fr)!important;
  gap:8px!important;
  padding:11px!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierRankHeroBadgeV62785{
  min-height:78px!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierRankHeroBadgeV62785 .militaryRankSvgV6274{
  width:68px!important;
  height:68px!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierRankHeroCopyV62785 strong{
  font-size:16px!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierRankHeroStatV62785 b{
  font-size:14px!important;
  white-space:nowrap!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierRankLadderV62785{
  gap:7px!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierRankCardV62785{
  min-height:68px!important;
  grid-template-columns:50px minmax(0,1fr)!important;
  gap:7px!important;
  padding:7px 9px!important;
}
#carrierInfoPanel[data-command-ui-v62784="1"] .carrierRankCardV62785 .militaryRankSvgV6274{
  width:42px!important;
  height:42px!important;
}
@media (max-width:760px){
  #carrierInfoPanel[data-command-ui-v62784="1"] .carrierCommandTitleV62784 strong{font-size:13px!important;letter-spacing:.08em!important}
  #carrierInfoPanel[data-command-ui-v62784="1"] .carrierCommandTitleV62784 small{font-size:6px!important}
  #carrierInfoPanel[data-command-ui-v62784="1"] .carrierBadgeRailV62785{grid-template-columns:1fr 1fr!important}
  #carrierInfoPanel[data-command-ui-v62784="1"] .carrierRankHeroV62785{grid-template-columns:72px minmax(0,1fr)!important}
  #carrierInfoPanel[data-command-ui-v62784="1"] .carrierRankHeroStatV62785{grid-column:auto!important}
  #carrierInfoPanel[data-command-ui-v62784="1"] .carrierRankHeroBadgeV62785 .militaryRankSvgV6274{width:58px!important;height:58px!important}
  #carrierInfoPanel[data-command-ui-v62784="1"] .carrierRankLadderV62785{grid-template-columns:1fr!important}
}

/* V6.27.88 PREVIEW — use the already-approved home-planet badge in the Carrier live identity. */
#carrier > .carrierLiveIdentityV62771 .carrierHomePlanetIdentityV62788{
  display:inline-flex!important;
  width:14px!important;
  height:14px!important;
  margin-right:3px!important;
  vertical-align:middle!important;
  transform:none!important;
}
#carrier > .carrierLiveIdentityV62771 .carrierHomePlanetIdentityV62788 .playerPlanetSurfaceV6268{
  width:100%!important;
  height:100%!important;
}


/* ==========================================================
   V6.27.90 — COMPACT 4-TAB CARRIER MENU
   ========================================================== */
#carrierInfoPanel.carrierInfoPanel{
  width:min(430px,calc(100vw - 16px))!important;max-width:430px!important;
  max-height:min(78vh,650px)!important;padding:0!important;overflow:hidden!important;
  border:1px solid rgba(80,207,244,.5)!important;border-radius:11px!important;
  background:linear-gradient(180deg,rgba(4,17,26,.985),rgba(2,9,15,.99))!important;
  box-shadow:0 14px 42px rgba(0,0,0,.55),inset 0 0 28px rgba(45,180,224,.045)!important;
}
.carrierInfoHeadCompactV62790{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:9px 10px 8px!important;border-bottom:1px solid rgba(87,199,233,.18)!important}
.carrierInfoHeadCompactV62790>div>span{display:block;color:#75a8b9;font:800 7px/1 system-ui;letter-spacing:.12em}
.carrierInfoHeadCompactV62790>div>b{display:block;margin-top:2px;color:#f0fbff;font:900 13px/1 system-ui;letter-spacing:.04em}
.carrierInfoHeadCompactV62790 #carrierInfoClose{width:30px!important;height:30px!important;padding:0!important;border-radius:7px!important}
.carrierTabsV62790{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:rgba(5,24,35,.75);border-bottom:1px solid rgba(82,188,224,.2)}
.carrierTabsV62790 button{min-width:0!important;padding:9px 2px 8px!important;border:0!important;border-right:1px solid rgba(82,188,224,.11)!important;border-radius:0!important;background:transparent!important;color:#7ca7b7!important;font:900 8px/1 system-ui!important;letter-spacing:.045em!important}
.carrierTabsV62790 button:last-child{border-right:0!important}
.carrierTabsV62790 button.active{color:#eafcff!important;background:linear-gradient(180deg,rgba(37,150,189,.18),rgba(13,64,84,.1))!important;box-shadow:inset 0 -2px 0 #57d8ff!important}
.carrierTabPagesV62790{max-height:calc(min(78vh,650px) - 79px);overflow:auto;overscroll-behavior:contain}
.carrierTabPageV62790{display:none;padding:10px}.carrierTabPageV62790.active{display:block}
.carrierHiddenSyncV62790{display:none!important}
.carrierPrimaryStatsV62790{display:grid;grid-template-columns:.65fr 1.35fr;gap:7px;margin-bottom:8px}
.carrierPrimaryStatsV62790>div,.carrierEquipmentGridV62790>div,.carrierDroneStatsV62790>div{padding:8px;border:1px solid rgba(80,181,215,.18);border-radius:7px;background:rgba(9,29,41,.78)}
.carrierPrimaryStatsV62790 span,.carrierEquipmentGridV62790 span,.carrierDroneStatsV62790 span,.carrierSectionTitleV62790{display:block;color:#7ea8b9;font:800 7px/1.15 system-ui;letter-spacing:.09em}
.carrierPrimaryStatsV62790 b{display:block;margin-top:3px;color:#fff;font:900 15px/1 system-ui}
.carrierSectionTitleV62790{margin:11px 0 6px;color:#9ed9ec}
.carrierEquipmentGridV62790{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.carrierEquipmentGridV62790 b{display:block;margin-top:3px;color:#f6fcff;font:900 12px/1 system-ui}
.carrierWarpCompactV62790{margin-top:9px!important}.carrierFlightCompactV62790{margin-top:7px!important}
.carrierSystemsGridV62790{display:grid!important;gap:7px!important}
.carrierIconRowV62790{display:grid!important;grid-template-columns:44px 1fr!important;align-items:center!important;gap:9px!important;min-height:62px!important;padding:8px!important;border:1px solid rgba(72,196,118,.25)!important;border-radius:8px!important;background:linear-gradient(90deg,rgba(10,48,28,.33),rgba(8,29,39,.8))!important}
.carrierIconRowV62790>div>span{display:block;color:#9adcb1;font:900 8px/1 system-ui;letter-spacing:.08em}.carrierIconRowV62790>div>b{display:block;margin:4px 0;color:#f3fff7;font:900 12px/1 system-ui}.carrierIconRowV62790>div>small{display:block;color:#86ae96;font:800 7px/1.15 system-ui}
.carrierTechIconV62790{width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(94,228,136,.42);border-radius:9px;background:rgba(23,86,48,.22);color:#62e68d}
.carrierTechIconV62790 svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.carrierDroneCardV62790{display:grid;grid-template-columns:82px 1fr;gap:10px;align-items:center;padding:8px;border:1px solid rgba(84,194,229,.22);border-radius:8px;background:rgba(9,29,41,.82)}
.carrierDroneArtV62790{height:62px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle,rgba(66,180,222,.15),transparent 70%)}.carrierDroneArtV62790 img{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 0 7px rgba(77,210,255,.32))}
.carrierDroneIdentityV62790 span{display:block;color:#789fb0;font:800 7px/1 system-ui;letter-spacing:.08em}.carrierDroneIdentityV62790 b{display:block;margin:4px 0 3px;color:#f2fbff;font:900 13px/1 system-ui}.carrierDroneIdentityV62790 small{color:#65dfff;font:800 8px/1 system-ui}
.carrierDroneStatsV62790{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:7px}.carrierDroneStatsV62790 b{display:block;margin-top:4px;color:#f4fcff;font:900 12px/1 system-ui}
.carrierCommandGridV62790{display:grid;gap:7px}
.carrierCommandCardV62790{width:100%;display:grid!important;grid-template-columns:48px 1fr!important;align-items:center!important;gap:9px!important;min-height:64px!important;padding:8px!important;text-align:left!important;border:1px solid rgba(82,190,224,.2)!important;border-radius:8px!important;background:rgba(9,29,41,.82)!important}
.carrierCommandCardV62790>div>span{display:block;color:#7fa9b8;font:800 7px/1 system-ui;letter-spacing:.08em}.carrierCommandCardV62790>div>b{display:block;margin:4px 0 3px;color:#f3fbff;font:900 12px/1 system-ui}.carrierCommandCardV62790>div>small{display:block;color:#88afbd;font:800 7px/1.2 system-ui}
.carrierCommandCardV62790 i,.carrierCommandCardV62790 em{font-style:normal}
.carrierCommandIconV62790{width:44px;height:44px;display:grid;place-items:center;border-radius:10px;border:1px solid rgba(85,207,244,.28);background:rgba(14,54,69,.35);color:#68dfff}.carrierCommandIconV62790 svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.carrierCommandIconV62790.heroV62790{color:#61e88d;border-color:rgba(97,232,141,.36);background:rgba(18,74,41,.3)}.carrierCommandIconV62790.wrenchV62790{color:#ff7f8c;border-color:rgba(255,98,114,.38);background:rgba(86,18,29,.34)}
.carrierCommandIconV62790.rankV62790{padding:3px}.carrierCommandIconV62790.rankV62790 .militaryRankBadgeV6274{transform:scale(1.6);transform-origin:center}
.carrierMaintenanceDetailsV62790{display:grid;gap:7px;padding:9px;border:1px solid rgba(85,190,223,.18);border-radius:8px;background:rgba(5,22,32,.72)}.carrierMaintenanceDetailsV62790.hidden{display:none!important}
.carrierMaintenanceDetailsV62790>div{display:grid;grid-template-columns:1fr auto;gap:5px 8px;align-items:center}.carrierMaintenanceDetailsV62790 span{color:#91b2bf;font:800 7px/1 system-ui;letter-spacing:.07em}.carrierMaintenanceDetailsV62790 b{color:#effbff;font:900 9px/1 system-ui}.carrierMaintenanceDetailsV62790 i{grid-column:1/-1;display:block;height:5px;border-radius:4px;background:rgba(110,146,158,.16);overflow:hidden}.carrierMaintenanceDetailsV62790 i>em{display:block;height:100%;width:100%;border-radius:inherit;background:#67d8f8}
@media (max-width:380px){#carrierInfoPanel.carrierInfoPanel{width:calc(100vw - 12px)!important}.carrierTabsV62790 button{font-size:7px!important;padding-left:1px!important;padding-right:1px!important}.carrierTabPageV62790{padding:8px}.carrierEquipmentGridV62790{grid-template-columns:1fr}.carrierCommandCardV62790{grid-template-columns:42px 1fr!important}.carrierCommandIconV62790{width:40px;height:40px}}


/* ==========================================================
   V6.27.91 — TARGETED CARRIER / WAR POLISH
   ========================================================== */

/* HOME PLANET badge: keep the approved planet itself, remove the stray outer halo. */
#carrier > .carrierLiveIdentityV62771 .carrierHomePlanetIdentityV62788::before,
#carrier > .carrierLiveIdentityV62771 .carrierHomePlanetIdentityV62788::after{
  display:none!important;
  content:none!important;
}
#carrier > .carrierLiveIdentityV62771 .carrierHomePlanetIdentityV62788{
  overflow:hidden!important;
  box-shadow:inset -2px -2px 4px rgba(0,5,30,.72),0 0 4px rgba(68,211,255,.55)!important;
}

/* Five compact tabs, including the new dedicated WARP FUEL page. */
.carrierTabsV62790{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.carrierTabsV62790 button{font-size:7px!important;letter-spacing:.025em!important}
.carrierWarpFuelHeroV62791{
  display:grid;grid-template-columns:52px 1fr;gap:10px;align-items:center;
  padding:9px;margin-bottom:8px;border:1px solid rgba(80,202,238,.22);
  border-radius:8px;background:linear-gradient(90deg,rgba(11,57,76,.55),rgba(6,25,36,.82))
}
.carrierWarpFuelIconV62791{
  width:48px;height:48px;display:grid;place-items:center;border-radius:10px;
  color:#67ddff;border:1px solid rgba(103,221,255,.38);background:rgba(17,76,98,.3)
}
.carrierWarpFuelIconV62791 svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round}
.carrierWarpFuelHeroV62791 div>span{display:block;color:#82adbd;font:800 7px/1 system-ui;letter-spacing:.09em}
.carrierWarpFuelHeroV62791 div>b{display:block;margin:4px 0;color:#effbff;font:900 13px/1 system-ui}
.carrierWarpFuelHeroV62791 div>small{color:#6fb4ca;font:800 7px/1 system-ui}

/* Cleaner, stronger system icon presentation. */
.carrierTechIconV62790{
  border-width:1px!important;
  box-shadow:inset 0 0 14px rgba(78,235,130,.08),0 0 8px rgba(78,235,130,.08)!important;
}
.carrierTechIconV62790 svg{width:31px!important;height:31px!important;stroke-width:2.5!important}

/* Hero symbol: centered command silhouette. */
.carrierCommandIconV62790.heroV62790 svg{width:34px!important;height:34px!important}

/* Military badge: flush dead-center in its badge box. */
#carrierMilitaryRankBadgeV62781{
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:0!important;overflow:hidden!important;
}
#carrierMilitaryRankBadgeV62781 .militaryRankBadgeV6274{
  width:38px!important;height:38px!important;margin:0!important;transform:none!important;
  display:grid!important;place-items:center!important;
}
#carrierMilitaryRankBadgeV62781 .militaryRankSvgV6274{
  width:38px!important;height:38px!important;margin:0!important;display:block!important;
}

/* Drones page is intentionally leaner. */
.carrierDroneStatsV62790{grid-template-columns:repeat(2,minmax(0,1fr))!important}

/* WAR report overlay remains scrollable and no longer modal-locks gameplay. */
#topLeftPanelV693 .warPanelV62761{
  max-height:min(70vh,560px)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  touch-action:pan-y!important;
  -webkit-overflow-scrolling:touch!important;
}

@media(max-width:380px){
  .carrierTabsV62790 button{font-size:6px!important;letter-spacing:0!important}
}


/* ==========================================================
   V6.27.92 — CENTERED WAR REPORT + SHARED SCREEN OWNERSHIP
   ========================================================== */
body.nonameMajorScreenOpenV62792 .galaxyChatToggleV6261,
body.nonameMajorScreenOpenV62792 .galaxyChatV6261,
body.nonameMajorScreenOpenV62792 #miniMap,
body.nonameMajorScreenOpenV62792 .miniMap,
body.nonameMajorScreenOpenV62792 .navHud{
  display:none!important;visibility:hidden!important;pointer-events:none!important;
}

#topLeftPanelV693.warScreenV62792{
  position:fixed!important;left:50%!important;top:50%!important;right:auto!important;bottom:auto!important;
  transform:translate(-50%,-50%)!important;width:min(760px,calc(100vw - 20px))!important;max-width:760px!important;
  max-height:min(84vh,760px)!important;padding:0!important;margin:0!important;overflow:hidden!important;z-index:2200!important;
  border:1px solid rgba(84,214,249,.5)!important;border-radius:13px!important;
  background:linear-gradient(180deg,rgba(4,17,26,.995),rgba(2,9,14,.997))!important;
  box-shadow:0 18px 55px rgba(0,0,0,.62),inset 0 0 32px rgba(60,190,230,.05)!important;
}
#topLeftPanelV693.warScreenV62792>.screenExitV62782{display:none!important}
.warPanelV62792{position:relative;display:flex;flex-direction:column;max-height:min(84vh,760px);color:#eaf9ff}
.warCloseV62792{position:absolute;z-index:4;right:10px;top:9px;width:32px;height:32px;padding:0!important;border:1px solid rgba(101,215,247,.35)!important;border-radius:8px!important;background:rgba(7,31,43,.9)!important;color:#e9fbff!important;font:900 18px/1 system-ui!important}
.warHeadV62792{padding:12px 50px 10px 13px;border-bottom:1px solid rgba(92,210,242,.17)}
.warHeadV62792 span{display:block;color:#66dcff;font:900 7px/1 system-ui;letter-spacing:.15em}
.warHeadV62792 b{display:block;margin:3px 0;color:#f5fdff;font:900 17px/1 system-ui;letter-spacing:.045em}
.warHeadV62792 small{display:block;color:#799fac;font:800 7px/1 system-ui;letter-spacing:.08em}
.warReportListV62792{overflow-y:auto;padding:10px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.warReportCardV62792{padding:10px;margin-bottom:10px;border:1px solid rgba(91,188,219,.18);border-radius:10px;background:rgba(7,25,35,.76)}
.warReportCardV62792.victory{box-shadow:inset 3px 0 0 rgba(85,228,143,.7)}
.warReportCardV62792.defeat{box-shadow:inset 3px 0 0 rgba(255,96,112,.72)}
.warResultV62792{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.warResultV62792 span{color:#cdefff;font:900 8px/1 system-ui;letter-spacing:.08em}.warResultV62792 small{color:#6f929f;font:700 6px/1 system-ui}
.warNamesV62792{display:grid;grid-template-columns:1fr 36px 1fr;align-items:center;gap:7px;margin-bottom:8px}
.warNamesV62792>div{padding:8px;border:1px solid rgba(89,195,228,.18);border-radius:7px;background:rgba(11,38,51,.7)}
.warNamesV62792>div:last-child{text-align:right}.warNamesV62792 span{display:block;color:#6e9eaf;font:800 6px/1 system-ui;letter-spacing:.11em}.warNamesV62792 b{display:block;margin-top:3px;color:#f2fbff;font:900 12px/1 system-ui}.warNamesV62792>i{text-align:center;color:#67dcff;font:900 8px/1 system-ui;font-style:normal}
.warCompareV62792{display:grid;gap:4px}.warCompareRowV62792{display:grid;grid-template-columns:112px 1fr 1fr;gap:5px;align-items:stretch}
.warCompareRowV62792>span{display:flex;align-items:center;padding:7px;color:#729aaa;font:800 6px/1.15 system-ui;letter-spacing:.075em;border:1px solid rgba(81,170,200,.11);border-radius:6px;background:rgba(5,20,28,.55)}
.warCompareRowV62792>div{padding:7px;border:1px solid rgba(81,170,200,.13);border-radius:6px;background:rgba(8,29,40,.62)}.warCompareRowV62792>div:last-child{text-align:right}
.warCompareRowV62792 b{display:block;color:#effaff;font:900 9px/1.1 system-ui}.warCompareRowV62792 small{display:block;margin-top:2px;color:#6f9aaa;font:800 6px/1 system-ui}
.warCompareRowV62792.emphasis>div b{color:#8ff0ae}.warCompareRowV62792.power{margin-top:2px}.warCompareRowV62792.power>div{border-color:rgba(91,218,251,.27);background:rgba(12,55,70,.42)}.warCompareRowV62792.power b{font-size:12px;color:#dffaff}
.warDroneResultV62792,.warProgressV62792{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:8px}
.warDroneResultV62792>div,.warProgressV62792>div{padding:8px;border:1px solid rgba(88,183,215,.14);border-radius:7px;background:rgba(6,25,35,.64)}
.warDroneResultV62792 span,.warProgressV62792 span{display:block;color:#718f9a;font:800 6px/1 system-ui;letter-spacing:.07em}.warDroneResultV62792 b,.warProgressV62792 b{display:block;margin-top:4px;color:#f0fbff;font:900 10px/1 system-ui}
.warWhyV62792{margin-top:8px;padding:8px;border:1px solid rgba(89,185,217,.13);border-radius:7px;background:rgba(4,18,26,.58)}.warWhyV62792 span{display:block;color:#65dfff;font:900 6px/1 system-ui;letter-spacing:.1em}.warWhyV62792 p{margin:4px 0 0;color:#9bb7c1;font:700 7px/1.35 system-ui}
.warEmptyV62792{padding:30px 10px;text-align:center;color:#769ca9;font:900 8px/1 system-ui;letter-spacing:.1em}
@media(max-width:600px){
  #topLeftPanelV693.warScreenV62792{width:calc(100vw - 12px)!important;max-height:86vh!important}
  .warReportListV62792{padding:7px}.warCompareRowV62792{grid-template-columns:84px 1fr 1fr;gap:4px}
  .warCompareRowV62792>span{padding:6px 4px;font-size:5px}.warCompareRowV62792>div{padding:6px 5px}.warCompareRowV62792 b{font-size:8px}
}
@media(max-width:390px){.warNamesV62792 b{font-size:10px}.warCompareRowV62792{grid-template-columns:72px 1fr 1fr}.warCompareRowV62792.power b{font-size:10px}.warDroneResultV62792 span,.warProgressV62792 span{font-size:5px}.warDroneResultV62792 b,.warProgressV62792 b{font-size:8px}}


/* ==========================================================
   V6.27.93 — WAR REPORT READABILITY + NPC POWER BAND
   ========================================================== */
.warSideLabelsV62793{
  display:grid;grid-template-columns:1fr 112px 1fr;align-items:center;margin:2px 0 5px;
}
.warSideLabelsV62793 b{
  color:#8ccfe4;font:900 6px/1 system-ui;letter-spacing:.11em;padding:0 7px;
}
.warSideLabelsV62793 b:last-child{text-align:right}
.warSideLabelsV62793 span{height:1px;background:rgba(96,215,247,.18)}

.warSplitV62793{position:relative}
.warSplitV62793::after{
  content:"";position:absolute;top:0;bottom:0;left:calc(112px + (100% - 122px)/2);
  width:1px;background:linear-gradient(180deg,transparent,rgba(89,218,252,.48) 8%,rgba(89,218,252,.48) 92%,transparent);
  box-shadow:0 0 7px rgba(89,218,252,.18);pointer-events:none;
}
.warSplitV62793 .warCompareRowV62792>div:nth-child(2){padding-right:11px}
.warSplitV62793 .warCompareRowV62792>div:nth-child(3){padding-left:11px}

.warLevelProgressV62793{
  margin-top:7px;padding:8px;border:1px solid rgba(91,205,238,.17);
  border-radius:7px;background:rgba(7,29,40,.68)
}
.warLevelProgressV62793>div{display:flex;justify-content:space-between;align-items:center;gap:10px}
.warLevelProgressV62793 span{color:#78a4b3;font:800 6px/1 system-ui;letter-spacing:.08em}
.warLevelProgressV62793 b{color:#effbff;font:900 9px/1 system-ui}
.warLevelProgressV62793>i{
  display:block;height:6px;margin:6px 0 4px;border-radius:5px;overflow:hidden;
  background:rgba(107,155,170,.15)
}
.warLevelProgressV62793>i>em{
  display:block;height:100%;border-radius:inherit;background:#65dcff
}
.warLevelProgressV62793 small{display:block;color:#6f98a7;font:800 6px/1 system-ui}

@media(max-width:600px){
  .warSideLabelsV62793{grid-template-columns:1fr 84px 1fr}
  .warSplitV62793::after{left:calc(84px + (100% - 94px)/2)}
}
@media(max-width:390px){
  .warSideLabelsV62793{grid-template-columns:1fr 72px 1fr}
  .warSplitV62793::after{left:calc(72px + (100% - 82px)/2)}
}


/* ==========================================================
   V6.27.94 — FIGHTER DRONE FULL-MARCH READABILITY
   ========================================================== */
#carrierDroneMarchCapV62772{
  font-variant-numeric:tabular-nums;
}


/* V6.27.95 — exact approved locked menu icon badges */
.carrierOfficialIconV62795{overflow:visible!important}
.carrierOfficialIconV62795 img{
  width:100%!important;height:100%!important;object-fit:contain!important;display:block!important;
}
.carrierIconStatV62795{
  display:grid!important;grid-template-columns:24px 1fr auto!important;align-items:center!important;gap:6px!important;
}
.carrierIconStatV62795>img,.carrierIconLabelV62795>img,.carrierMaintIconRowV62795>img{
  width:22px!important;height:22px!important;object-fit:contain!important;display:block!important;
}
.carrierIconLabelV62795{
  display:grid!important;grid-template-columns:22px 1fr auto!important;align-items:center!important;gap:6px!important;
}
.carrierMaintIconRowV62795{
  display:grid!important;grid-template-columns:22px 1fr auto!important;align-items:center!important;gap:6px!important;
}
.carrierMaintIconRowV62795>i{grid-column:1/-1!important}
@media(max-width:390px){
  .carrierIconStatV62795{grid-template-columns:20px 1fr auto!important}
  .carrierIconStatV62795>img,.carrierIconLabelV62795>img,.carrierMaintIconRowV62795>img{width:19px!important;height:19px!important}
  .carrierIconLabelV62795,.carrierMaintIconRowV62795{grid-template-columns:19px 1fr auto!important}
}


/* V6.27.96 — transparent locked icons + Fuel City crystal */
.carrierHeaderIdentityV62796{min-width:0}
.carrierHeaderPowerV62796{
  display:flex!important;align-items:center!important;gap:5px!important;
  margin-top:5px!important;color:#83adbc!important;
  font:800 6px/1 system-ui!important;letter-spacing:.07em!important;
}
.carrierHeaderPowerV62796 img{
  width:20px!important;height:20px!important;object-fit:contain!important;flex:0 0 20px!important;
}
.carrierHeaderPowerV62796 strong{
  margin-left:2px!important;color:#effbff!important;font:900 9px/1 system-ui!important;letter-spacing:0!important;
}
.carrierPrimaryStatsSingleV62796{grid-template-columns:1fr!important}
.carrierFuelCrystalV62796 img{
  width:100%!important;height:100%!important;object-fit:contain!important;display:block!important;
}
.carrierInfoLabel.fuelV6180.carrierIconLabelV62795>img{
  filter:drop-shadow(0 0 5px rgba(0,145,255,.45));
}
@media(max-width:390px){
  .carrierHeaderPowerV62796 img{width:18px!important;height:18px!important;flex-basis:18px!important}
  .carrierHeaderPowerV62796 strong{font-size:8px!important}
}

/* V6.27.97 — official equipment badges + Fuel City identity */
.carrierEquipmentBadgeV62797{
  display:grid!important;
  grid-template-columns:28px 1fr auto!important;
  align-items:center!important;
  gap:6px!important;
}
.carrierEquipmentBadgeV62797>img{
  width:28px!important;height:28px!important;object-fit:contain!important;display:block!important;
  background:transparent!important;
}
.carrierFuelCrystalV62796,.carrierFuelCrystalV62796 img,
.carrierInfoLabel.fuelV6180.carrierIconLabelV62795>img{background:transparent!important}
@media(max-width:390px){
  .carrierEquipmentBadgeV62797{grid-template-columns:24px 1fr auto!important}
  .carrierEquipmentBadgeV62797>img{width:24px!important;height:24px!important}
}


/* V6.27.97a — equipment badge visibility + clean Fuel City crystal */
#carrierLaserEquipmentV62779,
#carrierShieldEquipmentV62779,
#carrierWarpEquipmentV62779{
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:7px!important;
  min-height:46px!important;
}
#carrierLaserEquipmentV62779>img,
#carrierShieldEquipmentV62779>img,
#carrierWarpEquipmentV62779>img{
  display:block!important;
  width:30px!important;
  height:30px!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.carrierWarpFuelIconV62791{
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
.carrierWarpFuelIconV62791 img{
  display:block!important;
  width:46px!important;
  height:46px!important;
  object-fit:contain!important;
  background:transparent!important;
}


/* ==========================================================
   V6.27.98 — GLOBAL MENU ICON AUDIT
   Official locked badges everywhere their matching feature appears.
   ========================================================== */
.menuAuditLabelV62798{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  min-width:0!important;
}
.menuAuditHeadingV62798{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
}
.menuAuditIconV62798{
  width:22px!important;
  height:22px!important;
  object-fit:contain!important;
  display:inline-block!important;
  flex:0 0 22px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.menuAuditHeadingV62798>.menuAuditIconV62798{
  width:26px!important;
  height:26px!important;
  flex-basis:26px!important;
}

/* Remove visual backing plates behind all official icon images */
img[src^="/assets/menu-icons/"]{
  background:transparent!important;
}
.carrierOfficialIconV62795,
.carrierWarpFuelIconV62791,
.carrierEquipIconV62790,
.carrierCommandIconV62790{
  background:transparent!important;
}
.carrierOfficialIconV62795::before,
.carrierOfficialIconV62795::after,
.carrierWarpFuelIconV62791::before,
.carrierWarpFuelIconV62791::after{
  display:none!important;
  content:none!important;
}

@media(max-width:390px){
  .menuAuditIconV62798{width:19px!important;height:19px!important;flex-basis:19px!important}
  .menuAuditHeadingV62798>.menuAuditIconV62798{width:22px!important;height:22px!important;flex-basis:22px!important}
}


/* V6.27.99 — locked Shield Generator + new Fuel City crystal */
#carrierShieldEquipmentV62779>img[src="/assets/menu-icons/shield-generator.png"]{
  width:30px!important;height:30px!important;object-fit:contain!important;
  display:block!important;background:transparent!important;
}
img[src="/assets/menu-icons/fuel-city-crystal.png"],
img[src="/assets/menu-icons/shield-generator.png"]{
  background:transparent!important;border:0!important;box-shadow:none!important;
}


/* V6.28.00 — COMMAND duplicate-icon cleanup / dedicated Shield Generator */
#carrierShieldEquipmentV62779>img{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  object-fit:contain!important;
}


/* V6.28.01 — COMMAND Shield Generator official icon */
.carrierMaintShieldGenIconV62801{
  display:grid!important;
  grid-template-columns:22px 1fr auto!important;
  align-items:center!important;
  gap:6px!important;
}
.carrierMaintShieldGenIconV62801>img{
  width:22px!important;
  height:22px!important;
  object-fit:contain!important;
  display:block!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.carrierMaintShieldGenIconV62801>i{
  grid-column:1/-1!important;
}
@media(max-width:390px){
  .carrierMaintShieldGenIconV62801{grid-template-columns:19px 1fr auto!important}
  .carrierMaintShieldGenIconV62801>img{width:19px!important;height:19px!important}
}


/* V6.28.02 — Battle Report requested icons only */
.warIconRowV62802>span{
  gap:5px!important;
}
.warIconRowV62802>span>img{
  width:19px!important;
  height:19px!important;
  object-fit:contain!important;
  display:block!important;
  flex:0 0 19px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
@media(max-width:390px){
  .warIconRowV62802>span>img{
    width:16px!important;
    height:16px!important;
    flex-basis:16px!important;
  }
}


/* ==========================================================
   V6.28.09 — ONE MERGED FIGHTER MARCH MENU
   Existing march card + detail panel merged. No new map labels.
   ========================================================== */
.fighterMarchInfoV62770{display:none!important;}
.fighterMarchTimerV62770{
  pointer-events:auto!important;
  cursor:pointer!important;
  overflow:visible!important;
}
.fighterMarchMergedDetailsV62809{
  display:none;
  grid-template-columns:1fr 1fr;
  gap:6px;
  margin-top:8px;
  padding-top:8px;
  border-top:1px solid rgba(93,224,255,.14);
}
.fighterMarchTimerV62770.expandedV62809 .fighterMarchMergedDetailsV62809{display:grid;}
.fighterMarchMergedDetailsV62809>div{
  min-width:0;
  padding:7px;
  border:1px solid rgba(80,188,220,.14);
  border-radius:6px;
  background:rgba(7,26,36,.72);
  text-align:left;
}
.fighterMarchMergedDetailsV62809>div>span,
.fighterMarchMergedDetailsV62809>div>b{display:block!important;position:static!important;transform:none!important;}
.fighterMarchMergedDetailsV62809>div>span{font:900 7px/1 system-ui!important;letter-spacing:.10em!important;color:#7da9b7!important;}
.fighterMarchMergedDetailsV62809>div>b{margin-top:4px!important;font:900 10px/1.15 system-ui!important;color:#f1fcff!important;overflow-wrap:anywhere!important;text-align:left!important;}
.fighterMarchRecallV62809{
  grid-column:1 / -1;
  width:100%;
  min-height:38px;
  margin-top:2px;
  border:1px solid rgba(255,112,98,.48);
  border-radius:7px;
  background:rgba(92,22,20,.72);
  color:#fff;
  font:950 10px/1 system-ui;
  letter-spacing:.14em;
  cursor:pointer;
}
.fighterMarchRecallV62809:disabled{opacity:.46;cursor:default;}
body.fighterMarchMenuOpenV62809 #miniMap,
body.fighterMarchMenuOpenV62809 .miniMap,
body.fighterMarchMenuOpenV62809 .galaxyChatToggleV6261,
body.fighterMarchMenuOpenV62809 .galaxyChatV6261{display:none!important;}


/* V6.28.10 — approved No Name signup/login cover. */
.authScreen{
  position:fixed; inset:0; z-index:100000;
  display:flex; align-items:center; justify-content:center;
  background:#02060b; overflow:hidden;
}
.authScreen.hidden{display:none!important}
.authArtFrame{
  position:relative;
  height:100vh;
  width:min(100vw,66.6666667vh);
  aspect-ratio:2/3;
  flex:0 0 auto;
}
.authCoverArt{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;display:block}
.authHotspots{position:absolute;inset:0}
.authTabHit,.authBottomLogin,.authSubmit{
  position:absolute;border:0;background:transparent;cursor:pointer;padding:0;
}
.authSignupTabHit{left:29.5%;top:63.7%;width:20.5%;height:3.6%}
.authLoginTabHit{left:50%;top:63.7%;width:20.5%;height:3.6%}
.authForm{position:absolute;left:29.6%;top:67.6%;width:40.8%;height:22.8%}
.authForm input{
  position:absolute;left:0;width:100%;height:3.15%;
  min-height:0;box-sizing:border-box;border:0;outline:none;
  background:rgba(2,10,19,.30);color:#e8f3ff;
  font:500 clamp(10px,1.05vh,18px)/1.1 Arial,sans-serif;
  padding:0 5.8%;border-radius:5px;
}
.authForm input::placeholder{color:transparent}
.authSignupForm input:nth-of-type(1){top:0;height:13.5%}
.authSignupForm input:nth-of-type(2){top:17.0%;height:13.5%}
.authSignupForm input:nth-of-type(3){top:34.0%;height:13.5%}
.authSignupForm input:nth-of-type(4){top:51.0%;height:13.5%}
.authSubmit{left:0;top:70.5%;width:100%;height:14.5%}
.authBottomLogin{left:36%;top:90.3%;width:28%;height:2.8%}
.authMessage{
  position:absolute;left:27%;right:27%;top:93.2%;
  color:#8fd9ff;text-align:center;
  font:600 clamp(9px,.9vh,14px)/1.2 Arial,sans-serif;
  text-shadow:0 1px 3px #000;
}
.authLoginForm{top:68.5%;height:17%}
.authLoginForm input:nth-of-type(1){top:0;height:18%}
.authLoginForm input:nth-of-type(2){top:25%;height:18%}
.authLoginForm .authLoginSubmit{top:54%;height:20%}
.authForm.hidden{display:none!important}
@media (max-aspect-ratio:2/3){
  .authArtFrame{width:100vw;height:150vw;max-height:100vh}
}


/* V6.28.11 — login/signup artwork fills the entire viewport on PC and mobile. */
.authScreen{
  width:100vw;
  height:100dvh;
  min-height:100vh;
}
.authArtFrame{
  width:100vw!important;
  height:100dvh!important;
  min-height:100vh;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:auto!important;
}
.authCoverArt{
  width:100%!important;
  height:100%!important;
  object-fit:fill!important;
}
@media (max-aspect-ratio:2/3){
  .authArtFrame{
    width:100vw!important;
    height:100dvh!important;
    max-height:none!important;
  }
}

/* V6.28.13 — signup/login interaction reliability on PC + phones. */
.authScreen{
  height:100vh!important;
  min-height:100vh!important;
  overscroll-behavior:none;
  touch-action:manipulation;
}
.authArtFrame{
  width:100vw!important;
  height:100vh!important;
  min-height:100vh!important;
}
.authHotspots{z-index:2;pointer-events:auto}
.authTabHit,.authBottomLogin,.authSubmit{z-index:6;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.authForm{z-index:5;pointer-events:auto}
.authForm input{
  z-index:7;
  pointer-events:auto;
  font-size:max(16px,1.05vh)!important;
  -webkit-appearance:none;
  appearance:none;
}
.authMessage{z-index:8;pointer-events:none}
@supports(height:100svh){
  .authScreen,.authArtFrame{height:100svh!important;min-height:100svh!important}
}


/* V6.28.16 — REAL SIGNUP / LOGIN PANEL.
   Approved art is wallpaper only. All account controls below are real HTML. */
.authScreen{
  position:fixed!important;
  inset:0!important;
  z-index:100000!important;
  width:100vw!important;
  height:100dvh!important;
  min-height:100vh!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#02060b!important;
}
.authScreen.hidden{display:none!important}

.authWallpaperV62816{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:fill;
  display:block;
  user-select:none;
  pointer-events:none;
}
.authShadeV62816{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,5,12,.10),rgba(0,5,12,.18) 45%,rgba(0,5,12,.48)),
    linear-gradient(0deg,rgba(0,5,12,.38),transparent 48%);
  pointer-events:none;
}

.authPanelV62816{
  position:relative;
  z-index:5;
  width:min(430px,calc(100vw - 32px));
  max-height:calc(100dvh - 28px);
  overflow:auto;
  box-sizing:border-box;
  padding:22px 22px 18px;
  border:1px solid rgba(116,210,255,.62);
  border-radius:16px;
  background:rgba(3,12,24,.92);
  box-shadow:
    0 0 0 1px rgba(255,255,255,.04) inset,
    0 20px 60px rgba(0,0,0,.58),
    0 0 30px rgba(45,173,255,.16);
  backdrop-filter:blur(9px);
  -webkit-backdrop-filter:blur(9px);
  color:#eaf7ff;
}

.authBrandV62816{
  text-align:center;
  margin-bottom:16px;
}
.authBrandV62816 b{
  display:block;
  font:900 clamp(25px,4vw,38px)/1 system-ui,sans-serif;
  letter-spacing:.12em;
  color:#f4fbff;
  text-shadow:0 0 16px rgba(111,214,255,.5);
}
.authBrandV62816 span{
  display:block;
  margin-top:7px;
  font:800 10px/1.2 system-ui,sans-serif;
  letter-spacing:.25em;
  color:#8bcfed;
}

.authTabsV62816{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-bottom:14px;
}
.authTabV62816{
  height:42px;
  border:1px solid rgba(112,204,246,.38);
  border-radius:9px;
  background:rgba(8,28,47,.78);
  color:#8fbfd5;
  font:900 12px/1 system-ui,sans-serif;
  letter-spacing:.12em;
  cursor:pointer;
  touch-action:manipulation;
}
.authTabV62816.active{
  color:#fff;
  border-color:#72d4ff;
  background:linear-gradient(180deg,rgba(31,130,181,.88),rgba(8,62,96,.9));
  box-shadow:0 0 16px rgba(67,190,255,.18);
}

.authFormV62816{
  position:static!important;
  left:auto!important;
  top:auto!important;
  width:auto!important;
  height:auto!important;
  display:grid;
  gap:10px;
  z-index:auto!important;
  pointer-events:auto!important;
}
.authFormV62816.hidden{display:none!important}

.authFormV62816 label{
  display:grid;
  gap:5px;
}
.authFormV62816 label>span{
  font:850 10px/1 system-ui,sans-serif;
  letter-spacing:.11em;
  color:#a9d7ed;
}

.authFormV62816 input{
  position:static!important;
  width:100%!important;
  height:46px!important;
  min-height:46px!important;
  box-sizing:border-box!important;
  padding:0 13px!important;
  border:1px solid rgba(112,204,246,.34)!important;
  border-radius:9px!important;
  outline:none!important;
  background:rgba(2,11,21,.94)!important;
  color:#fff!important;
  font:600 16px/1 system-ui,sans-serif!important;
  -webkit-appearance:none;
  appearance:none;
  pointer-events:auto!important;
}
.authFormV62816 input::placeholder{
  color:#5f8495!important;
}
.authFormV62816 input:focus{
  border-color:#74d7ff!important;
  box-shadow:0 0 0 2px rgba(66,188,255,.12)!important;
}

.authSubmitV62816{
  position:static!important;
  width:100%;
  height:48px;
  margin-top:3px;
  border:1px solid #79dcff;
  border-radius:9px;
  background:linear-gradient(180deg,#1688bc,#075480);
  color:#fff;
  font:950 12px/1 system-ui,sans-serif;
  letter-spacing:.13em;
  cursor:pointer;
  touch-action:manipulation;
  box-shadow:0 0 18px rgba(52,187,255,.18);
}
.authSubmitV62816:active{transform:translateY(1px)}

.authBottomLoginV62816{
  display:block;
  width:100%;
  margin:12px 0 0;
  padding:6px;
  border:0;
  background:transparent;
  color:#8eafbf;
  font:700 11px/1.25 system-ui,sans-serif;
  cursor:pointer;
  touch-action:manipulation;
}
.authBottomLoginV62816 b{color:#86dbff}

.authMessageV62816{
  min-height:18px;
  margin-top:7px;
  text-align:center;
  color:#8fdcff;
  font:800 10px/1.35 system-ui,sans-serif;
  letter-spacing:.05em;
}

@media (min-width:900px){
  .authPanelV62816{
    margin-left:auto;
    margin-right:7vw;
    width:min(430px,34vw);
  }
}
@media (max-width:899px){
  .authShadeV62816{
    background:linear-gradient(0deg,rgba(0,5,12,.68),rgba(0,5,12,.08) 70%);
  }
  .authPanelV62816{
    width:min(430px,calc(100vw - 22px));
    padding:18px 16px 15px;
    border-radius:14px;
  }
}
@media (max-height:720px){
  .authPanelV62816{
    max-height:calc(100dvh - 14px);
    padding-top:14px;
    padding-bottom:12px;
  }
  .authBrandV62816{margin-bottom:10px}
  .authBrandV62816 b{font-size:24px}
  .authFormV62816{gap:7px}
  .authFormV62816 input{height:42px!important;min-height:42px!important}
  .authSubmitV62816{height:44px}
}
@supports(height:100svh){
  .authScreen{height:100svh!important;min-height:100svh!important}
  .authPanelV62816{max-height:calc(100svh - 24px)}
}


/* V6.28.17 — LOGIN COMPOSITION FIX
   Keep approved artwork, visually remove its painted fake form, and center the real UI. */
.authScreen{
  align-items:center!important;
  justify-content:center!important;
}

.authWallpaperV62816{
  object-fit:cover!important;
  object-position:center center!important;
}

/* Covers the painted signup card on the right side of the original concept.
   This is intentionally part of the page composition, not another form. */
.authConceptFormMaskV62817{
  position:absolute;
  z-index:2;
  top:0;
  right:0;
  width:42%;
  height:100%;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 0% 46%, rgba(7,22,36,.18) 0%, rgba(5,17,29,.78) 48%, rgba(3,11,20,.97) 78%),
    linear-gradient(90deg, rgba(3,12,22,0) 0%, rgba(3,12,22,.76) 35%, rgba(3,12,22,.98) 100%);
}

.authShadeV62816{
  z-index:3!important;
  background:
    radial-gradient(circle at 50% 48%,rgba(0,5,12,.03) 0%,rgba(0,5,12,.12) 45%,rgba(0,5,12,.34) 100%)!important;
}

.authPanelV62816{
  position:absolute!important;
  z-index:5!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  margin:0!important;
  width:min(410px,calc(100vw - 32px))!important;
  max-height:calc(100dvh - 34px)!important;
  padding:20px 22px 18px!important;
  background:linear-gradient(180deg,rgba(4,15,28,.94),rgba(2,9,18,.96))!important;
  border:1px solid rgba(112,211,255,.58)!important;
  box-shadow:
    0 18px 55px rgba(0,0,0,.64),
    0 0 28px rgba(53,185,255,.14),
    inset 0 0 28px rgba(54,170,225,.035)!important;
}

/* The NO NAME logo/tagline belongs to the background art; do not duplicate it in HTML. */
.authBrandV62816{display:none!important}

@media (min-width:900px){
  .authPanelV62816{
    left:50%!important;
    right:auto!important;
    margin:0!important;
    width:min(410px,34vw)!important;
  }
}

@media (max-width:899px){
  .authWallpaperV62816{
    object-position:center center!important;
  }
  .authConceptFormMaskV62817{
    /* On portrait/mobile the old painted card occupies more of the visible right side. */
    width:54%;
    background:
      radial-gradient(ellipse at 0% 48%,rgba(4,15,27,.12) 0%,rgba(4,15,27,.72) 45%,rgba(2,9,17,.98) 82%),
      linear-gradient(90deg,rgba(2,10,18,0),rgba(2,10,18,.94));
  }
  .authPanelV62816{
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    width:min(400px,calc(100vw - 24px))!important;
    max-height:calc(100svh - 24px)!important;
    padding:17px 16px 15px!important;
  }
}

@media (max-height:700px){
  .authPanelV62816{
    top:50%!important;
    max-height:calc(100svh - 12px)!important;
    overflow:auto!important;
    padding-top:12px!important;
    padding-bottom:11px!important;
  }
  .authTabsV62816{margin-bottom:9px!important}
  .authFormV62816{gap:7px!important}
}


/* V6.28.18 — CODED NO NAME AUTH SCREEN
   Uses the exact game artwork already shipped in NoNameGame(10).
   There is NO signup/login UI baked into any background image. */
.authScreenV62818{
  position:fixed!important;
  inset:0!important;
  z-index:100000!important;
  width:100vw!important;
  height:100dvh!important;
  min-height:100vh!important;
  overflow:hidden!important;
  display:block!important;
  background:#02060c!important;
  color:#edfaff!important;
}
.authScreenV62818.hidden{display:none!important}

.authSceneV62818{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:#02060c;
}
.authNebulaV62818{
  position:absolute;
  inset:-4%;
  background:
    linear-gradient(180deg,rgba(0,4,10,.05),rgba(0,5,12,.26) 58%,rgba(0,3,8,.86)),
    url("/assets/backgrounds/planet1-dust-v6131.png") center/cover no-repeat;
  filter:saturate(.82) brightness(.72) contrast(1.06);
  transform:scale(1.04);
}
.authPlanetGlowV62818{
  position:absolute;
  width:min(60vw,860px);
  aspect-ratio:1;
  right:-14vw;
  top:-29vw;
  border-radius:50%;
  border:2px solid rgba(97,186,255,.32);
  background:
    radial-gradient(circle at 36% 62%,rgba(132,199,255,.20),rgba(42,91,148,.07) 44%,rgba(4,11,23,.95) 72%);
  box-shadow:
    0 0 65px rgba(67,153,255,.28),
    inset 0 0 55px rgba(87,172,255,.13);
  opacity:.92;
}
.authSceneV62818 img{
  position:absolute;
  display:block;
  user-select:none;
  pointer-events:none;
  filter:drop-shadow(0 20px 26px rgba(0,0,0,.7));
}
.authSceneHomeBaseV62818{
  width:min(54vw,900px);
  right:-10vw;
  bottom:-13vh;
  opacity:.78;
}
.authSceneFuelBayV62818{
  width:min(29vw,500px);
  left:-5vw;
  bottom:-5vh;
  opacity:.88;
}
.authScenePortalV62818{
  width:min(18vw,290px);
  right:4vw;
  bottom:3vh;
  opacity:.90;
}
.authSceneCarrierV62818{
  width:min(53vw,840px);
  left:-5vw;
  top:15vh;
  transform:rotate(-2deg);
  opacity:.96;
  filter:
    drop-shadow(0 24px 34px rgba(0,0,0,.78))
    drop-shadow(0 0 18px rgba(28,137,255,.18));
}
.authSceneTankerV62818{
  width:min(23vw,370px);
  left:5vw;
  bottom:7vh;
  transform:rotate(3deg);
  opacity:.85;
}

.authTitleV62818{
  position:absolute;
  z-index:4;
  left:50%;
  top:4.3vh;
  transform:translateX(-50%);
  width:min(760px,86vw);
  text-align:center;
  pointer-events:none;
}
.authNoNameV62818{
  font:950 clamp(38px,5.4vw,82px)/.92 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.08em;
  color:#e9f7ff;
  text-shadow:
    0 2px 0 #6a7f8d,
    0 0 8px rgba(145,224,255,.75),
    0 0 24px rgba(40,147,255,.34),
    0 12px 28px rgba(0,0,0,.82);
}
.authTaglineV62818{
  margin-top:10px;
  font:850 clamp(9px,1.15vw,15px)/1 system-ui,sans-serif;
  letter-spacing:.31em;
  color:#9edcff;
  text-shadow:0 0 12px rgba(71,181,255,.55);
}

.authPanelV62818{
  position:absolute!important;
  z-index:10!important;
  left:50%!important;
  top:55%!important;
  transform:translate(-50%,-50%)!important;
  width:min(430px,calc(100vw - 34px))!important;
  max-height:calc(100dvh - 180px)!important;
  overflow:auto!important;
  box-sizing:border-box!important;
  padding:18px 21px 16px!important;
  border:1px solid rgba(91,203,255,.72)!important;
  border-radius:13px!important;
  background:
    linear-gradient(180deg,rgba(4,18,33,.94),rgba(2,10,21,.97))!important;
  color:#edfaff!important;
  box-shadow:
    0 0 0 1px rgba(128,222,255,.08) inset,
    0 0 24px rgba(34,168,255,.20),
    0 25px 64px rgba(0,0,0,.74)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}

.authTabsV62818{
  display:grid;
  grid-template-columns:1fr 1fr;
  border-bottom:1px solid rgba(107,189,226,.24);
  margin-bottom:14px;
}
.authTabV62818{
  position:relative;
  height:43px;
  border:0;
  background:transparent;
  color:#7698aa;
  font:900 12px/1 system-ui,sans-serif;
  letter-spacing:.13em;
  cursor:pointer;
  touch-action:manipulation;
}
.authTabV62818.active{color:#dff7ff}
.authTabV62818.active::after{
  content:"";
  position:absolute;
  left:13%;
  right:13%;
  bottom:-1px;
  height:2px;
  background:#62d7ff;
  box-shadow:0 0 11px rgba(74,204,255,.9);
}

.authFormV62818{
  position:static!important;
  inset:auto!important;
  width:auto!important;
  height:auto!important;
  display:grid!important;
  gap:10px!important;
  pointer-events:auto!important;
}
.authFormV62818.hidden{display:none!important}
.authFormV62818 label{
  display:grid;
  gap:5px;
}
.authFormV62818 label>span{
  font:850 9px/1 system-ui,sans-serif;
  letter-spacing:.15em;
  color:#83bad2;
}
.authFormV62818 input{
  position:static!important;
  width:100%!important;
  height:44px!important;
  min-height:44px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(103,184,219,.34)!important;
  border-radius:7px!important;
  background:rgba(0,8,17,.75)!important;
  color:#f0fbff!important;
  outline:none!important;
  padding:0 13px!important;
  font:650 16px/1 system-ui,sans-serif!important;
  pointer-events:auto!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}
.authFormV62818 input::placeholder{color:#527184!important}
.authFormV62818 input:focus{
  border-color:#5fd4ff!important;
  box-shadow:
    0 0 0 2px rgba(59,190,255,.10),
    inset 0 0 18px rgba(33,129,181,.07)!important;
}
.authSubmitV62818{
  width:100%;
  height:47px;
  margin-top:3px;
  border:1px solid #72dfff;
  border-radius:7px;
  background:linear-gradient(180deg,#148cc8,#07558b);
  color:#fff;
  font:950 12px/1 system-ui,sans-serif;
  letter-spacing:.14em;
  cursor:pointer;
  touch-action:manipulation;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 0 18px rgba(43,181,255,.20);
}
.authSubmitV62818:active{transform:translateY(1px)}
.authBottomLoginV62818{
  display:block;
  width:100%;
  border:0;
  background:transparent;
  margin:11px 0 0;
  padding:4px;
  color:#7599aa;
  font:700 11px/1.3 system-ui,sans-serif;
  cursor:pointer;
  touch-action:manipulation;
}
.authBottomLoginV62818 b{color:#72d7ff}
.authMessageV62818{
  min-height:17px;
  margin-top:5px;
  text-align:center;
  color:#82ddff;
  font:850 10px/1.35 system-ui,sans-serif;
  letter-spacing:.06em;
}

.authWorldLabelV62818{
  position:absolute;
  z-index:3;
  padding:8px 11px 7px;
  border-left:2px solid rgba(79,197,255,.74);
  background:linear-gradient(90deg,rgba(3,18,33,.84),rgba(3,18,33,0));
  color:#dff8ff;
  text-shadow:0 2px 5px #000;
  pointer-events:none;
}
.authWorldLabelV62818 b{
  display:block;
  font:950 clamp(10px,1.1vw,15px)/1 system-ui,sans-serif;
  letter-spacing:.12em;
}
.authWorldLabelV62818 span{
  display:block;
  margin-top:4px;
  font:800 clamp(6px,.65vw,9px)/1 system-ui,sans-serif;
  letter-spacing:.14em;
  color:#7ecbee;
}
.authFuelCityLabelV62818{right:3.8vw;top:42vh}
.authFuelBayLabelV62818{left:2.8vw;bottom:24vh}
.authPortalLabelV62818{right:3vw;bottom:7vh}

.authFooterV62818{
  position:absolute;
  z-index:5;
  left:50%;
  bottom:2.2vh;
  transform:translateX(-50%);
  white-space:nowrap;
  font:850 clamp(7px,.8vw,11px)/1 system-ui,sans-serif;
  letter-spacing:.32em;
  color:#87cce9;
  text-shadow:0 2px 7px #000;
  pointer-events:none;
}

/* Completely retire the old painted-login wallpaper/mask implementation. */
.authWallpaperV62816,
.authConceptFormMaskV62817,
.authShadeV62816,
.authPanelV62816{display:none!important}

@media(max-width:899px){
  .authTitleV62818{top:3vh;width:94vw}
  .authNoNameV62818{font-size:clamp(32px,10vw,52px)}
  .authTaglineV62818{font-size:8px;letter-spacing:.22em;margin-top:7px}
  .authPanelV62818{
    top:56%!important;
    width:min(410px,calc(100vw - 20px))!important;
    max-height:calc(100svh - 135px)!important;
    padding:15px 15px 13px!important;
  }
  .authSceneCarrierV62818{
    width:98vw;
    left:-36vw;
    top:19vh;
    opacity:.62;
  }
  .authSceneHomeBaseV62818{
    width:94vw;
    right:-42vw;
    bottom:-5vh;
    opacity:.52;
  }
  .authSceneFuelBayV62818{
    width:55vw;
    left:-19vw;
    bottom:1vh;
    opacity:.58;
  }
  .authScenePortalV62818{
    width:34vw;
    right:-8vw;
    bottom:2vh;
    opacity:.66;
  }
  .authSceneTankerV62818{
    width:50vw;
    left:-13vw;
    bottom:12vh;
    opacity:.58;
  }
  .authPlanetGlowV62818{
    width:92vw;
    right:-46vw;
    top:-25vw;
  }
  .authWorldLabelV62818{display:none}
  .authFooterV62818{
    bottom:1.4vh;
    font-size:6px;
    letter-spacing:.17em;
  }
}

@media(max-height:720px){
  .authTitleV62818{top:2vh}
  .authTaglineV62818{margin-top:5px}
  .authPanelV62818{
    top:57%!important;
    max-height:calc(100svh - 102px)!important;
    padding-top:11px!important;
    padding-bottom:10px!important;
  }
  .authTabsV62818{margin-bottom:9px}
  .authTabV62818{height:36px}
  .authFormV62818{gap:7px!important}
  .authFormV62818 input{height:40px!important;min-height:40px!important}
  .authSubmitV62818{height:42px}
}
@supports(height:100svh){
  .authScreenV62818{height:100svh!important;min-height:100svh!important}
}


/* ============================================================
   V6.28.23 — CHOOSE YOUR PLANET
   Real HTML/CSS UI using existing No Name game artwork.
   ============================================================ */
.planetSelectScreenV62823{
  position:fixed;
  inset:0;
  z-index:1000002;
  overflow:auto;
  box-sizing:border-box;
  padding:18px 24px 14px;
  color:#dff6ff;
  background:
    radial-gradient(circle at 50% 52%,rgba(0,101,190,.22),transparent 35%),
    linear-gradient(180deg,#030b17 0%,#06162a 45%,#020711 100%);
  font-family:inherit;
}
.planetSelectScreenV62823.hidden{display:none!important}
.planetSelectBackdropV62823{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.planetSelectStarsV62823{
  position:absolute;inset:0;
  opacity:.52;
  background-image:
    radial-gradient(circle at 8% 18%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 19% 72%,#8dd8ff 0 1px,transparent 1.7px),
    radial-gradient(circle at 31% 10%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 41% 37%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 56% 13%,#9fdfff 0 1px,transparent 1.5px),
    radial-gradient(circle at 69% 61%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 78% 21%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 91% 73%,#7fd5ff 0 1px,transparent 1.5px);
  background-size:190px 150px,230px 210px,280px 170px,220px 190px,260px 240px,210px 180px,250px 200px,280px 230px;
}
.planetSelectHorizonV62823{
  position:absolute;left:7%;right:7%;top:-25%;height:52%;
  border-radius:50%;
  background:radial-gradient(ellipse at 50% 100%,#1b79c9 0 24%,#0d386b 44%,#06142d 62%,transparent 67%);
  box-shadow:0 0 70px rgba(62,168,255,.42);
  opacity:.62;
}
.planetSelectHeaderV62823,
.planetCardsV62823,
.planetDetailGridV62823,
.planetSelectFooterV62823{position:relative;z-index:1}
.planetSelectHeaderV62823{
  min-height:94px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:20px;
  border-bottom:1px solid rgba(76,183,255,.3);
}
.planetSelectBrandV62823{display:flex;flex-direction:column;line-height:1}
.planetSelectBrandV62823 strong{
  font-size:clamp(27px,3.5vw,56px);
  letter-spacing:.09em;
  color:#f3fbff;
  text-shadow:0 0 14px rgba(84,190,255,.9),0 3px 0 #233f57;
}
.planetSelectBrandV62823 span{font-size:10px;letter-spacing:.35em;color:#a7dfff;margin-top:7px}
.planetSelectHeaderV62823 h1{
  margin:0;
  font-size:clamp(23px,2.5vw,40px);
  letter-spacing:.08em;
  color:#e9f9ff;
  text-shadow:0 0 14px #329ff7;
  white-space:nowrap;
}
.planetCardsV62823{
  display:grid;
  grid-template-columns:repeat(5,minmax(130px,1fr));
  gap:13px;
  max-width:1500px;
  margin:18px auto 14px;
}
.planetCardV62823{
  position:relative;
  min-height:174px;
  padding:12px 10px 10px;
  border:1px solid rgba(80,190,255,.72);
  border-radius:4px;
  background:linear-gradient(180deg,rgba(5,24,43,.9),rgba(2,11,23,.95));
  color:#cfeeff;
  cursor:pointer;
  overflow:hidden;
  box-shadow:inset 0 0 22px rgba(30,132,217,.08);
}
.planetCardV62823:not(:disabled):hover,
.planetCardV62823.active{
  border-color:#5ccaff;
  box-shadow:0 0 20px rgba(32,157,255,.5),inset 0 0 30px rgba(26,138,230,.18);
}
.planetCardV62823.active:after{
  content:"";position:absolute;inset:3px;border:1px solid rgba(113,218,255,.38);pointer-events:none;
}
.planetCardV62823:disabled{cursor:default;opacity:.62}
.planetCardNumberV62823{
  position:absolute;top:8px;left:11px;
  font-weight:900;font-size:28px;color:#cdefff;text-shadow:0 0 10px #31aaff;
}
.planetOrbV62823{
  width:88px;height:88px;margin:3px auto 7px;border-radius:50%;
  display:grid;place-items:center;position:relative;
  box-shadow:inset -18px -18px 25px rgba(0,0,0,.45),0 0 18px rgba(71,177,255,.35);
}
.planetOrbFuelV62823{
  background:
    radial-gradient(circle at 35% 30%,rgba(132,255,224,.88) 0 8%,transparent 9%),
    radial-gradient(circle at 59% 47%,rgba(81,166,87,.9) 0 16%,transparent 17%),
    radial-gradient(circle at 35% 67%,rgba(51,136,73,.9) 0 13%,transparent 14%),
    radial-gradient(circle at 42% 35%,#66c9ff,#1762a2 48%,#082b57 74%,#031125);
}
.planetOrbResourceV62823{
  background:
    radial-gradient(circle at 38% 34%,rgba(240,164,67,.95) 0 10%,transparent 11%),
    radial-gradient(circle at 62% 58%,rgba(133,80,36,.95) 0 19%,transparent 20%),
    radial-gradient(circle at 45% 45%,#bd7132,#6c3a20 50%,#26160f 76%,#090706);
}
.planetOrbDroneV62823{
  background:
    radial-gradient(circle at 35% 35%,#8d72ff,#3a2f8b 42%,#1c1759 68%,#08081e 88%);
}
.planetOrbComingV62823{
  background:radial-gradient(circle at 35% 35%,#34485d,#182434 52%,#080d14 76%,#03060a);
  filter:grayscale(1);
}
.planetOrbV62823 img{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 0 8px #58cfff)}
.planetOrbFuelV62823 img{
  position:absolute;bottom:-6px;width:37px;height:37px;
  padding:4px;border-radius:50%;background:rgba(3,22,43,.86);border:1px solid #5dcfff;
}
.planetGlyphV62823{font-size:42px;color:#ffc479;text-shadow:0 0 12px #ff9836}
.planetDroneGlyphV62823{color:#8fddff;text-shadow:0 0 12px #53baff}
.planetCardV62823 b{display:block;font-size:16px;letter-spacing:.05em;color:#e9f8ff}
.planetCardV62823 small{display:block;margin-top:6px;font-size:10px;letter-spacing:.2em;color:#95bcd6}
.planetCardV62823 .planetStatusOpenV62823{color:#45efb8}
.planetDetailGridV62823{
  display:grid;
  grid-template-columns:minmax(275px,31%) 1fr;
  gap:14px;
  max-width:1500px;
  margin:0 auto;
}
.planetDescriptionV62823,
.planetBasePreviewV62823{
  border:1px solid rgba(74,185,255,.68);
  background:linear-gradient(180deg,rgba(3,17,32,.94),rgba(2,9,20,.97));
  box-shadow:inset 0 0 30px rgba(35,130,207,.08),0 0 18px rgba(0,91,163,.15);
}
.planetDescriptionV62823{padding:20px 22px;min-height:430px}
.planetDescriptionV62823>div:first-of-type{float:left;margin-right:11px}
.planetDescriptionIconV62823{
  width:48px;height:48px;display:grid;place-items:center;
  border:1px solid #4bc8ff;background:rgba(11,55,88,.7);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);
}
.planetDescriptionIconV62823 img{width:31px;height:31px;object-fit:contain}
.planetDescriptionV62823 h2{margin:0;font-size:26px;letter-spacing:.08em;color:#e6f8ff}
.planetDescriptionTagV62823{margin:4px 0 18px;color:#83cfff;font-size:11px;letter-spacing:.23em}
.planetDescriptionV62823>p:not(.planetDescriptionTagV62823){clear:both;padding-top:14px;line-height:1.55;color:#b8daee;font-size:14px}
.planetDescriptionV62823 ul{list-style:none;padding:4px 0 0;margin:0}
.planetDescriptionV62823 li{
  position:relative;padding:9px 0 9px 31px;border-bottom:1px solid rgba(79,169,224,.09);color:#c8e9f9;font-size:13px;
}
.planetDescriptionV62823 li:before{
  content:"››";position:absolute;left:2px;color:#63d5ff;font-weight:900;letter-spacing:-2px;text-shadow:0 0 8px #45baff;
}
.planetDescriptionFootV62823{
  margin-top:18px;padding-top:13px;border-top:1px solid rgba(85,187,246,.44);
  text-align:center;font-size:10px;letter-spacing:.24em;color:#8dc9e9;
}
.planetBasePreviewV62823{position:relative;min-height:430px;overflow:hidden}
.planetBasePreviewSceneV62823{
  position:absolute;inset:0 0 82px;overflow:hidden;
  background:
    radial-gradient(circle at 67% 28%,rgba(50,141,217,.2),transparent 33%),
    linear-gradient(180deg,#06172a,#06101c 60%,#02060b);
}
.planetPreviewPlanetV62823{
  position:absolute;width:66%;aspect-ratio:2/1;border-radius:50% 50% 0 0;
  right:-4%;top:-8%;
  background:radial-gradient(ellipse at 45% 80%,#45a8e5 0 20%,#1f5b93 40%,#102e59 58%,#071225 70%);
  box-shadow:0 0 42px rgba(67,177,255,.55);opacity:.8;transform:rotate(-8deg);
}
.planetPreviewBaseV62823{
  position:absolute;left:9%;bottom:-8%;width:67%;max-height:92%;object-fit:contain;
  filter:drop-shadow(0 0 16px rgba(62,176,255,.3));
}
.planetPreviewCarrierV62823{
  position:absolute;right:0%;top:22%;width:33%;transform:rotate(-3deg);
  filter:drop-shadow(0 0 12px rgba(67,179,255,.35));
}
.planetPreviewTankerV62823{
  position:absolute;left:2%;bottom:7%;width:27%;
  filter:drop-shadow(0 0 11px rgba(62,175,255,.35));
}
.planetBasePreviewCopyV62823{
  position:absolute;left:0;right:0;bottom:0;height:82px;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:10px 16px;
  background:linear-gradient(180deg,rgba(2,11,20,.72),rgba(1,8,16,.96));
  border-top:1px solid rgba(74,187,255,.48);
}
.planetBasePreviewCopyV62823 h2{margin:0;font-size:22px;letter-spacing:.05em}
.planetBasePreviewCopyV62823 span{font-size:10px;letter-spacing:.18em;color:#94c6e4}
.enterPlanetBtnV62823{
  min-width:250px;height:52px;padding:0 22px;
  border:1px solid #77d8ff;border-radius:4px;
  color:white;background:linear-gradient(180deg,#138ef0,#0753a6);
  box-shadow:0 0 18px rgba(22,144,255,.65),inset 0 0 15px rgba(155,225,255,.16);
  font-weight:900;font-size:17px;letter-spacing:.04em;cursor:pointer;
}
.enterPlanetBtnV62823 span{font-size:23px;color:#bfeeff}
.enterPlanetBtnV62823:disabled{filter:grayscale(.7);opacity:.5;cursor:not-allowed;box-shadow:none}
.planetSelectMessageV62823{
  position:absolute;right:16px;bottom:87px;min-height:18px;
  color:#9cd7f3;font-size:11px;letter-spacing:.13em;text-transform:uppercase;
}
.planetSelectFooterV62823{
  max-width:1500px;margin:13px auto 0;
  padding:10px 13px;border-top:1px solid rgba(72,172,232,.3);
  display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;
  color:#9fcee7;font-size:10px;letter-spacing:.2em;
}
.planetSelectFooterV62823 b{text-align:center;color:#b9def1;font-weight:500}
.planetSelectFooterV62823 span:last-child{text-align:right}

@media (max-width:900px){
  .planetSelectScreenV62823{padding:10px 10px 14px}
  .planetSelectHeaderV62823{grid-template-columns:1fr;min-height:auto;text-align:center;padding:8px 0 12px}
  .planetSelectBrandV62823{align-items:center}
  .planetSelectHeaderV62823 h1{font-size:23px}
  .planetCardsV62823{grid-template-columns:repeat(5,minmax(118px,1fr));overflow-x:auto;padding-bottom:8px}
  .planetCardV62823{min-height:148px}
  .planetOrbV62823{width:70px;height:70px}
  .planetDetailGridV62823{grid-template-columns:1fr}
  .planetDescriptionV62823{min-height:0}
  .planetBasePreviewV62823{min-height:390px}
  .planetSelectFooterV62823{grid-template-columns:1fr;text-align:center}
  .planetSelectFooterV62823 span:last-child{text-align:center}
}
@media (max-width:600px){
  .planetCardsV62823{grid-template-columns:repeat(5,132px)}
  .planetCardV62823{min-height:140px}
  .planetDetailGridV62823{gap:10px}
  .planetDescriptionV62823{padding:16px}
  .planetBasePreviewV62823{min-height:335px}
  .planetBasePreviewSceneV62823{inset:0 0 110px}
  .planetPreviewBaseV62823{width:84%;left:3%}
  .planetPreviewCarrierV62823{width:42%;top:17%}
  .planetPreviewTankerV62823{width:36%}
  .planetBasePreviewCopyV62823{
    height:110px;box-sizing:border-box;flex-direction:column;align-items:stretch;justify-content:center;
  }
  .enterPlanetBtnV62823{width:100%;min-width:0;height:45px}
  .planetSelectMessageV62823{position:static;padding:5px 14px 10px}
}


/* ============================================================
   V6.28.24 — FUEL PLANET LOADING SCREEN
   ============================================================ */
.planetLoadingScreenV62824{
  position:fixed;
  inset:0;
  z-index:1000003;
  overflow:hidden;
  color:#e8f9ff;
  background:
    radial-gradient(circle at 58% 42%,rgba(25,129,219,.24),transparent 34%),
    linear-gradient(180deg,#020914 0%,#06192c 52%,#020711 100%);
  font-family:inherit;
}
.planetLoadingScreenV62824.hidden{display:none!important}
.planetLoadingBackdropV62824{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.planetLoadingStarsV62824{
  position:absolute;inset:0;opacity:.62;
  background-image:
    radial-gradient(circle at 10% 18%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 18% 66%,#77cfff 0 1px,transparent 1.5px),
    radial-gradient(circle at 28% 31%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 40% 12%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 56% 19%,#9fdcff 0 1px,transparent 1.5px),
    radial-gradient(circle at 68% 64%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 79% 28%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 91% 70%,#79d4ff 0 1px,transparent 1.5px);
  background-size:210px 170px,240px 210px,260px 180px,230px 200px,290px 230px,220px 190px,250px 210px,300px 240px;
}
.planetLoadingGlowV62824{
  position:absolute;
  width:78vw;height:78vw;
  min-width:760px;min-height:760px;
  right:-17vw;top:-37vw;
  border-radius:50%;
  background:
    radial-gradient(circle at 40% 63%,rgba(67,177,255,.86) 0 5%,rgba(19,91,157,.82) 22%,rgba(7,35,72,.8) 46%,rgba(2,11,25,.85) 65%,transparent 68%);
  box-shadow:0 0 90px rgba(58,166,255,.44);
}
.planetLoadingBaseV62824{
  position:absolute;
  width:min(900px,65vw);
  right:4vw;bottom:-11%;
  object-fit:contain;
  opacity:.92;
  filter:drop-shadow(0 0 23px rgba(57,166,255,.34));
}
.planetLoadingCarrierV62824{
  position:absolute;
  width:min(560px,40vw);
  right:5vw;top:15%;
  transform:rotate(-4deg);
  filter:drop-shadow(0 0 20px rgba(80,186,255,.45));
}
.planetLoadingTankerV62824{
  position:absolute;
  width:min(360px,25vw);
  right:35vw;bottom:7%;
  filter:drop-shadow(0 0 15px rgba(64,176,255,.38));
}
.planetLoadingHudV62824{
  position:relative;
  z-index:2;
  height:100%;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  padding:clamp(20px,4vw,58px);
}
.planetLoadingBrandV62824{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  line-height:1;
}
.planetLoadingBrandV62824 strong{
  font-size:clamp(34px,5vw,74px);
  letter-spacing:.08em;
  color:#f5fbff;
  text-shadow:0 0 18px rgba(69,179,255,.9),0 3px 0 #1d3851;
}
.planetLoadingBrandV62824 span{
  margin-top:8px;
  font-size:clamp(8px,1vw,12px);
  letter-spacing:.34em;
  color:#9edcff;
}
.planetLoadingPlanetMarkV62824{
  margin-top:auto;
  width:min(620px,72vw);
  display:flex;
  align-items:center;
  gap:18px;
}
.planetLoadingPlanetMarkV62824 img{
  width:66px;height:66px;object-fit:contain;
  padding:9px;
  border:1px solid #5acbff;
  background:rgba(2,20,38,.76);
  clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);
  filter:drop-shadow(0 0 12px #3cbaff);
}
.planetLoadingPlanetMarkV62824 small{
  display:block;
  font-size:10px;
  letter-spacing:.28em;
  color:#7ec7ec;
}
.planetLoadingPlanetMarkV62824 h1{
  margin:3px 0 0;
  font-size:clamp(34px,5vw,68px);
  letter-spacing:.07em;
  color:#effbff;
  text-shadow:0 0 18px rgba(51,167,255,.72);
}
.planetLoadingStatusWrapV62824{
  width:min(650px,78vw);
  margin-top:24px;
}
.planetLoadingStatusLineV62824{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
  color:#bde9ff;
  font-size:11px;
  letter-spacing:.17em;
}
.planetLoadingStatusLineV62824 b{
  color:#fff;
  font-size:14px;
}
.planetLoadingBarV62824{
  height:10px;
  margin-top:9px;
  padding:2px;
  box-sizing:border-box;
  border:1px solid rgba(94,206,255,.78);
  background:rgba(1,11,22,.82);
  box-shadow:0 0 15px rgba(35,156,244,.28),inset 0 0 9px rgba(32,131,206,.15);
}
#planetLoadingBarFillV62824{
  width:0%;
  height:100%;
  background:linear-gradient(90deg,#0b67be,#30b6ff,#a5efff);
  box-shadow:0 0 12px rgba(65,196,255,.8);
  transition:width .18s linear;
}
.planetLoadingSubV62824{
  margin-top:8px;
  font-size:9px;
  letter-spacing:.24em;
  color:#6faed0;
}
.planetLoadingFooterV62824{
  margin-top:30px;
  display:flex;
  width:min(650px,78vw);
  justify-content:space-between;
  gap:20px;
  padding-top:12px;
  border-top:1px solid rgba(79,177,231,.28);
  font-size:9px;
  letter-spacing:.18em;
  color:#79b9da;
}
@media(max-width:700px){
  .planetLoadingHudV62824{padding:22px 18px}
  .planetLoadingGlowV62824{
    width:110vw;height:110vw;min-width:0;min-height:0;
    right:-35vw;top:-20vw;
  }
  .planetLoadingBaseV62824{
    width:100vw;right:-18vw;bottom:10%;
    opacity:.62;
  }
  .planetLoadingCarrierV62824{
    width:66vw;right:-6vw;top:24%;
    opacity:.84;
  }
  .planetLoadingTankerV62824{display:none}
  .planetLoadingPlanetMarkV62824,
  .planetLoadingStatusWrapV62824,
  .planetLoadingFooterV62824{width:100%}
  .planetLoadingPlanetMarkV62824 h1{font-size:38px}
  .planetLoadingFooterV62824{flex-direction:column;gap:7px}
}

/* ==========================================================
   V6.28.63 — DESKTOP READABILITY PASS
   PC / fine-pointer only. Mobile/PWA layout remains untouched.
   ========================================================== */
@media (min-width:821px) and (pointer:fine){
  :root{
    --br-menu-width-v6263:340px;
  }

  .playerTop strong{font-size:13px!important;line-height:1.1!important}
  .playerTop span{font-size:10px!important;line-height:1.15!important}
  .menuBtn{min-height:38px!important;font-size:11px!important;padding:0 14px!important}
  .menuDrop{width:240px!important}
  .menuDrop button{min-height:42px!important;font-size:11px!important;line-height:1.15!important}
  .credits{min-width:118px!important}
  .credits span{font-size:17px!important}
  .credits strong{font-size:12px!important}

  .topLeftTabsV693{width:142px!important;gap:8px!important}
  .topLeftTabsV693 button[data-tab]{height:52px!important;min-height:52px!important;padding:0 12px!important;gap:10px!important}
  .topLeftTabsV693 .tabIcon{width:22px!important;font-size:17px!important}
  .topLeftTabsV693 .tabCopy{gap:4px!important}
  .topLeftTabsV693 .tabCopy b{font-size:11px!important;line-height:1!important}
  .topLeftTabsV693 .tabCopy small{font-size:8px!important;line-height:1.05!important}
  .topLeftPanelV693:not(.warScreenV62792){left:160px!important;width:320px!important;padding:12px!important}

  .modernIdentityV6109 span,.modernPowerV6109 span,.modernBarRowV6109 span,
  .modernCreditsTopV6109 span,.creditStatusV6109 span{font-size:9px!important;line-height:1.15!important}
  .modernIdentityV6109 b{font-size:17px!important}
  .modernIdentityV6109 small{font-size:9px!important}
  .modernPowerV6109 b{font-size:16px!important}
  .modernBarRowV6109 b{font-size:10px!important}
  .modernCreditsTopV6109 b{font-size:24px!important}
  .modernCreditsTopV6109 small{font-size:8px!important}
  .creditStatusV6109 b{font-size:10px!important}

  .mapActionHead,.carrierInfoHead,.npcCombatHead,.carrierCombatTitle,.droneHudTopV6121,.baseMenuHeaderV6142{
    font-size:10px!important;
  }
  .mapActionHead b,.carrierInfoHead b,.npcCombatHead b,.carrierCombatTitle b,.droneHudTopV6121 b{
    font-size:13px!important;
  }
  .targetCard small,.carrierInfoGrid span,.carrierInfoStatus span,.npcCombatStats,.npcBarLabel,.combatHudLabel,.droneHudRowV6121 span{
    font-size:9px!important;line-height:1.3!important;
  }
  .targetCard strong{font-size:16px!important}
  .targetCard span{font-size:11px!important;line-height:1.4!important}
  .npcCombatStats b,.npcBarLabel b,.combatHudLabel b,.carrierInfoGrid b,.carrierInfoStatus b{font-size:11px!important}
  .mapActionButtons button,.targetActions button,.npcCombatActions button,.carrierInfoPanel button,
  .droneCombatHudV6121 button,.fuelPortalPromptV6190 button,.traderPanelV61320 button,
  .wayfarerPanelV6203 button,.salvagePanelV61318 button,.p1DistressPanelV6221 button,
  .planetJumpMenuV6226 button,.topLeftPanelV693 button,.enterBasePromptV6142 button,
  .basePageCardV6142 button,.baseMenuHeaderV6142 button,.carrierRepairPanel button{
    min-height:40px!important;font-size:10px!important;line-height:1.15!important;
  }

  .npcText,.npcText b{font-size:9px!important;line-height:1.15!important}

  .galaxyChatToggleV6261{width:118px!important;min-height:46px!important}
  .galaxyChatToggleV6261 small{font-size:8px!important}
  .galaxyChatToggleV6261 b{font-size:13px!important}
  .galaxyChatV6261{width:430px!important;height:min(500px,calc(100vh - 150px))!important}
  .galaxyChatHeadV6261 small{font-size:8px!important}
  .galaxyChatHeadV6261 h2{font-size:18px!important}
  .galaxyChatTabsV6261 button{font-size:10px!important;min-height:40px!important}
  .galaxyChatAllianceLaterV6261,.galaxyPrivateTargetV6261 label{font-size:8px!important}
  .galaxyPrivateTargetV6261 input{font-size:11px!important;height:34px!important}
  .galaxyChatRoomTitleV6261 b{font-size:11px!important}
  .galaxyChatRoomTitleV6261 span{font-size:8px!important}
  .galaxyChatMessageV6261 b{font-size:10px!important}
  .galaxyChatMessageV6261 time{font-size:8px!important}
  .galaxyChatMessageV6261 p{font-size:12px!important;line-height:1.5!important}
  .galaxyChatMessageV6261 small{font-size:8px!important}
  .galaxyChatEmptyV6261{font-size:10px!important}
  .galaxyChatComposerV6261 input{font-size:11px!important;height:38px!important}
  .galaxyChatComposerV6261 button{font-size:10px!important;min-width:68px!important}
  .galaxyChatStatusV6261{font-size:8px!important}

  #carrierInfoPanel.carrierInfoPanel{width:min(540px,calc(100vw - 24px))!important;max-width:540px!important;max-height:min(82vh,720px)!important}
  .carrierInfoHeadCompactV62790>div>span{font-size:9px!important}
  .carrierInfoHeadCompactV62790>div>b{font-size:16px!important}
  .carrierTabsV62790 button{font-size:10px!important;min-height:42px!important}
  .carrierPrimaryStatsV62790 span,.carrierEquipmentGridV62790 span,.carrierDroneStatsV62790 span,.carrierSectionTitleV62790{font-size:9px!important;line-height:1.25!important}
  .carrierPrimaryStatsV62790 b{font-size:18px!important}
  .carrierEquipmentGridV62790 b{font-size:14px!important}
  .carrierIconRowV62790>div>span{font-size:10px!important}
  .carrierIconRowV62790>div>b{font-size:15px!important}
  .carrierIconRowV62790>div>small{font-size:9px!important;line-height:1.3!important}
  .carrierDroneIdentityV62790 span{font-size:9px!important}
  .carrierDroneIdentityV62790 b{font-size:16px!important}
  .carrierDroneIdentityV62790 small{font-size:10px!important}
  .carrierDroneStatsV62790 b{font-size:14px!important}
  .carrierCommandCardV62790>div>span{font-size:9px!important}
  .carrierCommandCardV62790>div>b{font-size:15px!important}
  .carrierCommandCardV62790>div>small{font-size:9px!important;line-height:1.3!important}
  .carrierMaintenanceDetailsV62790 span{font-size:9px!important}
  .carrierMaintenanceDetailsV62790 b{font-size:11px!important}
  .carrierWarpFuelHeroV62791 div>span,.carrierWarpFuelHeroV62791 div>small{font-size:9px!important}
  .carrierWarpFuelHeroV62791 div>b{font-size:16px!important}

  #topLeftPanelV693.warScreenV62792{width:min(860px,calc(100vw - 28px))!important;max-width:860px!important}
  .warHeadV62792 span{font-size:10px!important}
  .warHeadV62792 b{font-size:21px!important}
  .warHeadV62792 small{font-size:10px!important}
  .warResultV62792 span{font-size:11px!important}
  .warResultV62792 small{font-size:9px!important}
  .warNamesV62792 span{font-size:9px!important}
  .warNamesV62792 b{font-size:15px!important}
  .warNamesV62792>i{font-size:11px!important}
  .warCompareRowV62792{grid-template-columns:140px 1fr 1fr!important}
  .warCompareRowV62792>span{font-size:9px!important;line-height:1.25!important}
  .warCompareRowV62792 b{font-size:12px!important}
  .warCompareRowV62792 small{font-size:9px!important}
  .warCompareRowV62792.power b{font-size:15px!important}
  .warDroneResultV62792 span,.warProgressV62792 span{font-size:9px!important}
  .warDroneResultV62792 b,.warProgressV62792 b{font-size:13px!important}
  .warWhyV62792 span{font-size:9px!important}
  .warWhyV62792 p{font-size:11px!important;line-height:1.45!important}
  .warEmptyV62792{font-size:11px!important}
  .warSideLabelsV62793 b{font-size:9px!important}

  .mailWindowV62831{width:min(680px,calc(100vw - 32px))!important}
  .mailHeaderV62831 span,.mailHeaderV62831 small{font-size:11px!important}
  .mailHeaderV62831 b{font-size:28px!important}
  .mailMessageHeadV62831 span{font-size:10px!important}
  .mailMessageHeadV62831 b{font-size:17px!important}
  .mailMessageHeadV62831 em{font-size:10px!important}
  .mailMessageV62831 p{font-size:14px!important;line-height:1.55!important}
  .mailRewardV62831 span{font-size:10px!important}
  .mailRewardV62831 b{font-size:20px!important}
  .mailRewardV62831 button,.mailErrorV62831 button{font-size:11px!important;min-height:40px!important}
  .mailDateV62831{font-size:10px!important}
  .mailLoadingV62831,.mailErrorV62831{font-size:12px!important}
  .mailErrorV62831 span{font-size:11px!important}
}

/* ==========================================================
   V6.28.66 — LIVE HARVESTER DRONE MINING
   Uses the approved Harvester Drone artwork; no Carrier skin changes.
   ========================================================== */
.harvesterMiningDroneV62866{
  position:absolute;
  width:42px;
  height:30px;
  z-index:18;
  pointer-events:none;
  transform:translate(-50%,-50%);
  filter:drop-shadow(0 0 7px rgba(73,226,255,.65));
}
.harvesterMiningDroneV62866>img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.harvesterMiningDroneV62866.salvagingV61319{
  animation:engineerSalvageWorkV61319 .8s ease-in-out infinite alternate;
}


/* V6.28.73 — STORAGE resource badges; keeps the existing compact PC/phone grid. */
.storageBadgesV62873 > div{min-width:0}
.storageBadgesV62873 .storageLabelV62873{display:flex;align-items:center;gap:7px;min-width:0}
.storageBadgesV62873 .storageLabelV62873 img{width:20px;height:20px;object-fit:contain;flex:0 0 20px;filter:drop-shadow(0 0 3px rgba(75,205,255,.28))}
.storageBadgesV62873 .storageLabelV62873 em{font-style:normal;min-width:0}
@media (max-width:700px){
  .storageBadgesV62873 .storageLabelV62873{gap:5px}
  .storageBadgesV62873 .storageLabelV62873 img{width:17px;height:17px;flex-basis:17px}
}


/* V6.28.74 — visible Harvester rock level badge. */
.fuelAsteroidV6180{overflow:visible!important;}
.fuelRockLevelV62874{
  position:absolute;left:50%;top:100%;transform:translate(-50%,3px);
  min-width:28px;padding:2px 4px;border:1px solid rgba(91,190,255,.42);
  border-radius:5px;background:rgba(3,16,28,.9);color:#bfeaff;
  font:900 8px/1 system-ui;letter-spacing:.04em;text-align:center;
  white-space:nowrap;pointer-events:none;text-shadow:0 1px 2px #000;
}
