/* Native-size combat UI: text is never scaled with the battlefield. */
#contest-overlay, #wf-overlay.combat-scene {font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#edf5fb;letter-spacing:normal;box-sizing:border-box;background:#07101e}
#contest-overlay *, #wf-overlay.combat-scene * {box-sizing:border-box}
#contest-overlay {position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);overflow:hidden;touch-action:none}
.combat-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:linear-gradient(110deg,#172c40,#091422);border-bottom:1px solid #385366;flex-shrink:0}
.combat-heading h2 {margin:0;font-size:20px;line-height:1.2;letter-spacing:0;font-weight:750;color:#f1f8ff}
.combat-kicker {margin:0 0 4px;font-size:13px;line-height:1.3;color:#a5c3d4;letter-spacing:.06em;text-transform:uppercase}
#contest-abort,#wf-overlay #wf-exit-btn {position:static;flex-shrink:0;min-height:44px;padding:10px 14px;border:1px solid #9f796e;border-radius:10px;background:#302529;color:#ffdbcb;font:600 15px system-ui;letter-spacing:0;touch-action:manipulation;z-index:20}
.contest-telemetry {display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:14px;padding:12px 16px;background:#0c1928;border-bottom:1px solid #294353;flex-shrink:0}
.contest-telemetry span {display:block;font-size:14px;color:#b3cad8;line-height:1.4}
.contest-telemetry strong {display:block;font-size:20px;font-variant-numeric:tabular-nums;color:#fff;line-height:1.5}
.contest-telemetry progress {display:block;appearance:none;width:100%;height:6px;border:0;border-radius:6px;background:#263644;accent-color:#72e1d0}
.contest-telemetry progress::-webkit-progress-bar {background:#263644;border-radius:6px}
.contest-telemetry progress::-webkit-progress-value {background:#72e1d0;border-radius:6px}
.combat-objective {margin:0;padding:9px 16px;font-size:15px;line-height:1.45;color:#d9e6ed;background:#102333;flex-shrink:0}
#contest-stage {flex:1;min-height:0;width:100%;position:relative;overflow:hidden;background:#050c19}
#contest-canvas {display:block;touch-action:none}
#contest-touch-controls {width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;padding:12px 20px;background:linear-gradient(#122333,#0a1521);border-top:1px solid #355063;user-select:none;-webkit-user-select:none}
.contest-dpad {display:grid;grid-template-columns:52px 52px 52px;grid-template-rows:48px 48px;gap:5px}
#contest-touch-controls button {border:1px solid #7499b0;border-radius:12px;background:linear-gradient(#294b64,#183045);color:#f0faff;font:700 21px system-ui;touch-action:none;-webkit-tap-highlight-color:transparent;box-shadow:inset 0 1px 0 #82b0c333,0 3px 0 #020d17}
#contest-touch-controls button:active {background:#45788b;transform:translateY(2px)}
#contest-touch-controls [data-contest-key="Space"] {width:84px;height:84px;border-radius:50%;background:radial-gradient(circle at 40% 30%,#ab5e39,#5a2e24);border:2px solid #e8ad7f;color:#fff0d5;font-size:18px}
#contest-keyboard-hint {padding:10px;text-align:center;color:#c1d3de;font-size:15px;flex-shrink:0}
#wf-overlay.combat-scene {z-index:1000;overflow:hidden;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}
#wf-overlay .combat-heading {position:relative;z-index:12}
#wf-overlay #wf-hud {display:grid;grid-template-columns:1fr;gap:0;padding:10px 14px!important;font:15px system-ui!important;background:#0c1928;border:0}
#wf-overlay #wf-hud-left {display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:16px}
#wf-overlay .wf-resource label {display:flex;align-items:baseline;justify-content:space-between;gap:6px;font-size:14px;color:#c0d2de;line-height:1.8}
#wf-overlay .wf-resource b {font-size:16px;color:#f4fbff;font-variant-numeric:tabular-nums}
#wf-overlay .wf-bar-bg {width:100%;height:6px;border-radius:5px;background:#2b3d4c}
#wf-overlay .wf-bar-fill {border-radius:5px}
#wf-overlay #wf-timer {font-size:20px;color:#ffe1a2;font-weight:750;font-variant-numeric:tabular-nums}
#wf-overlay #wf-match-status {font-size:14px;color:#adcadb}
#wf-overlay #wf-tactical {display:grid;grid-template-columns:1fr 76px;gap:12px;padding:9px 14px;background:#102333;border-block:1px solid #304d5f;flex-shrink:0}
#wf-overlay #wf-hud-right {display:flex;gap:6px;font-size:14px;color:#c0d4dd;line-height:1.5;flex-wrap:wrap}
#wf-overlay #wf-score-a {color:#85e8f3;font-size:17px;font-weight:750}
#wf-overlay #wf-score-b {color:#ffae9c;font-size:17px;font-weight:750}
#wf-overlay #wf-score-bar {position:static;transform:none;display:flex;width:100%;max-width:none;height:4px;margin:5px 0;border:0;border-radius:3px;overflow:hidden;background:#294253}
#wf-overlay #wf-objective {font-size:14px;color:#ffe4a3;line-height:1.3}
#wf-overlay #wf-minimap {position:static;width:76px!important;height:54px!important;border:1px solid #6c8b9b;border-radius:6px}
#wf-overlay #wf-canvas {display:block;flex:none;min-height:0;touch-action:none}
#wf-overlay #wf-controls {position:relative;height:172px;flex-shrink:0;inset:auto;background:linear-gradient(#142838,#0b1723);border-top:1px solid #3a5364}
#wf-overlay #wf-joystick-area {width:112px;height:112px;left:12px;bottom:25px;background:radial-gradient(circle,#253e50,#122532);border:1px solid #85a7b9;box-shadow:inset 0 0 0 12px #57758620}
#wf-overlay #wf-joystick-area::after {content:'MOVE';position:absolute;bottom:-23px;left:0;right:0;text-align:center;font-size:13px;color:#afc9d7;letter-spacing:.08em}
#wf-overlay #wf-joystick-knob {width:46px;height:46px;background:linear-gradient(#a8d4e1,#487284);border:1px solid #c8f4ff;box-shadow:0 4px 14px #020e18}
#wf-overlay .wf-skill-btn {width:64px;height:48px;border-radius:12px;font:600 14px system-ui;color:#f0faff;letter-spacing:0;line-height:1.1;border:1px solid #7b9eb2;background:linear-gradient(#2b4a60,#1a2e42);box-shadow:inset 0 1px #c4f4ff25;overflow:hidden;touch-action:none}
#wf-overlay .wf-skill-btn.atk-btn {right:10px!important;bottom:10px!important;background:linear-gradient(#825334,#492d26);border-color:#e4b087;color:#fff1ce}
#wf-overlay #wf-btn-dodge {right:82px!important;bottom:10px!important}
#wf-overlay #wf-btn-skill1 {right:10px!important;bottom:62px!important}
#wf-overlay #wf-btn-skill2 {right:82px!important;bottom:62px!important}
#wf-overlay #wf-btn-heal {right:10px!important;bottom:114px!important;border-color:#80cdb3;color:#c8ffdf}
#wf-overlay #wf-btn-elite {right:82px!important;bottom:114px!important;border-color:#d9b976;color:#ffe6a9}
#wf-overlay .wf-skill-btn:active {filter:brightness(1.3)}
#wf-overlay #wf-interact-btn {bottom:calc(182px + env(safe-area-inset-bottom,0px));right:12px;width:auto;min-width:96px;height:48px;padding:8px 15px;border-radius:12px;font:700 15px system-ui;letter-spacing:0;background:#163c43;border:1px solid #88e3da;color:#e9fffb}
#wf-overlay.combat-desktop #wf-interact-btn {bottom:12px}
#wf-overlay #wf-rig-select {justify-content:flex-start;gap:14px;overflow-y:auto;overscroll-behavior:contain;padding:100px 16px 24px;background:radial-gradient(ellipse at 80% 10%,#244255,#091422 70%);z-index:10}
#wf-overlay #wf-rig-select h3 {font-size:23px;letter-spacing:0;margin:0}
#wf-overlay .wf-select-intro {font-size:16px;line-height:1.5;margin:0;max-width:600px;color:#c6d9e6;text-align:center}
#wf-overlay .wf-rig-card {display:block;position:relative;width:560px;max-width:100%;padding:18px;text-align:left;color:#edf5fa;background:linear-gradient(120deg,#254357,#142536);border:1px solid #668695;border-radius:16px;cursor:pointer;font-family:inherit;flex-shrink:0}
#wf-overlay .wf-rig-card:hover,#wf-overlay .wf-rig-card:focus-visible {border-color:#a1eff2;background:#284b60;outline:2px solid #a1eff2;outline-offset:2px}
#wf-overlay .wf-rig-name {font-size:22px;letter-spacing:0;color:#f1faff;line-height:1.4}
#wf-overlay .wf-rig-role {font-size:14px;letter-spacing:.04em;color:#92e3e8;line-height:1.5;margin-bottom:10px}
#wf-overlay .wf-rig-desc {font-size:16px;line-height:1.5;color:#c7dbe8}
#wf-overlay .wf-rig-stats {font-size:15px;line-height:1.5;margin-top:12px;color:#f7dfaf}
#wf-overlay .wf-rig-pick {display:inline-block;margin-top:14px;background:#9adce3;color:#07212b;padding:10px 14px;border-radius:9px;font-size:16px;font-weight:700}
#wf-overlay #wf-result {overflow-y:auto;justify-content:flex-start;padding:110px 20px 24px;background:#091422f5;z-index:11;font:16px/1.6 system-ui}
#wf-overlay #wf-result-body {font:16px/1.6 system-ui;letter-spacing:0;color:#d6e5ee}
#wf-overlay .wf-result-btn {min-height:48px;font:600 16px system-ui;padding:12px 20px;border-radius:10px}
#wf-overlay button:focus-visible,#contest-overlay button:focus-visible {outline:3px solid #fff0b4;outline-offset:3px}
.port-menu .influence-card {margin:18px 0;padding:20px;border:1px solid #486676;border-radius:16px;background:linear-gradient(135deg,#193746,#102131);font:16px/1.6 system-ui;letter-spacing:0;color:#d4e6ed}
.port-menu .influence-card h3 {font-size:22px;color:#f0faff;margin:0}
.port-menu .influence-value {font-size:40px;color:#a8f2df;font-weight:750;line-height:1.4}
.port-menu .influence-card progress {width:100%;height:12px;accent-color:#7ee0c3}
.port-menu .influence-card p {font-size:16px;line-height:1.6;letter-spacing:0;color:#d4e6ed;margin:12px 0}
.port-menu .influence-steps {display:flex;justify-content:space-between;gap:12px;font-size:14px;color:#afc9d7;margin-top:8px}
@media(max-width:350px){.combat-heading{padding:10px}.combat-heading h2{font-size:18px}.contest-telemetry{padding:10px;gap:8px}#contest-touch-controls{padding:10px 12px}.contest-dpad{grid-template-columns:48px 48px 48px}#wf-overlay #wf-hud-left{gap:10px}#wf-overlay #wf-joystick-area{left:8px;width:104px;height:104px}}
@media(max-height:480px) and (orientation:landscape){#contest-overlay.combat-touch{padding-right:190px}#contest-overlay.combat-touch #contest-touch-controls{position:absolute;right:0;top:0;bottom:0;width:190px;flex-direction:column;justify-content:center;padding:12px;gap:20px;border-left:1px solid #355063}#contest-keyboard-hint{padding:5px}.combat-heading{padding:6px 12px}.contest-telemetry{padding:5px 12px}.contest-telemetry strong{font-size:18px}.combat-objective{padding:4px 12px;font-size:14px}#wf-overlay #wf-controls{height:120px}#wf-overlay #wf-joystick-area{width:90px;height:90px;bottom:22px}#wf-overlay #wf-btn-heal{right:154px!important;bottom:62px!important}#wf-overlay #wf-btn-elite{right:154px!important;bottom:10px!important}#wf-overlay #wf-interact-btn{bottom:130px}#wf-overlay #wf-tactical{grid-template-columns:1fr 64px;padding:4px 12px}#wf-overlay #wf-minimap{width:64px!important;height:44px!important}#wf-overlay #wf-hud{padding:5px 12px!important}#wf-overlay .wf-resource label{line-height:1.4}}
/* Keep long planet names and legacy result-section labels readable. */
.combat-heading > div:first-child {min-width:0;overflow-wrap:anywhere}
#wf-overlay #wf-result-body > div[style*="font-size:10px"] {font-size:14px!important;color:#b7d0df!important;letter-spacing:.06em!important}
