/* OmniSIM pre-Phase-5 visual overhaul.
   Presentation only: protected Battle/optimizer/Meta mechanics remain server owned. */

body.frozen-battle-page{
  --omni-bg:#031324;
  --omni-bg-2:#061d33;
  --omni-panel:rgba(4,26,45,.78);
  --omni-panel-deep:rgba(3,18,32,.9);
  --omni-panel-soft:rgba(8,42,67,.62);
  --omni-line:rgba(90,191,255,.38);
  --omni-line-soft:rgba(120,206,255,.19);
  --omni-line-strong:rgba(118,218,255,.72);
  --omni-cyan:#2fc5ff;
  --omni-cyan-2:#8fe8ff;
  --omni-ice:#e8f8ff;
  --omni-muted:#9bbbd2;
  --omni-muted-2:#6f95ad;
  --omni-red:#ff4e64;
  --omni-red-deep:#651a2a;
  --omni-blue:#16a9ff;
  --omni-blue-deep:#0b416e;
  --omni-display:Georgia,"Times New Roman",serif;
  --omni-ui:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --omni-glow:0 0 12px rgba(44,193,255,.24),0 0 34px rgba(44,193,255,.11);
  --omni-shadow:0 22px 70px rgba(0,7,16,.42);
  min-height:100vh!important;
  background:#031424!important;
  color:var(--omni-ice)!important;
  font-family:var(--omni-ui)!important;
}
body.frozen-battle-page::before{
  content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;
  background:
    radial-gradient(circle at 53% 25%,rgba(42,145,206,.18),transparent 38%),
    linear-gradient(180deg,rgba(1,13,25,.13) 0%,rgba(1,11,21,.58) 56%,rgba(1,10,19,.86) 100%);
}
body.frozen-battle-page::after{
  content:"";position:fixed!important;inset:0!important;z-index:-1!important;pointer-events:none!important;
  background:
    radial-gradient(ellipse at 50% 20%,transparent 0 35%,rgba(0,7,16,.28) 72%,rgba(0,5,12,.58) 100%),
    linear-gradient(90deg,rgba(1,12,24,.26),transparent 24%,transparent 76%,rgba(1,12,24,.28))!important;
}
body.frozen-battle-page #battleBackground{
  position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:-4!important;
  object-fit:cover!important;object-position:50% 42%!important;opacity:.92!important;
  filter:saturate(.75) brightness(.42) contrast(1.13) hue-rotate(-4deg)!important;
  transform:scale(1.055)!important;
}
body.frozen-battle-page .bg-overlay{
  position:fixed!important;inset:0!important;z-index:-2!important;pointer-events:none!important;
  background:
    linear-gradient(180deg,rgba(3,20,36,.16) 0,rgba(3,20,36,.18) 38%,rgba(2,14,27,.62) 72%,rgba(2,13,25,.92) 100%),
    radial-gradient(circle at 45% 10%,rgba(25,127,191,.14),transparent 35%)!important;
}

/* ================================
   Open OmniSIM navigation
   ================================ */
body.frozen-battle-page .omnisim-topbar{
  position:relative;z-index:100000;display:flex;align-items:center;width:100%;height:82px;
  padding:0 clamp(28px,2.8vw,58px);gap:0;border:0;border-bottom:1px solid rgba(78,172,232,.36);
  background:linear-gradient(180deg,rgba(3,24,43,.91),rgba(2,20,36,.74));
  box-shadow:0 10px 34px rgba(0,8,18,.2);backdrop-filter:blur(17px) saturate(1.18);
}
.omnisim-brand{display:flex;align-items:center;gap:17px;color:#effaff;text-decoration:none;min-width:max-content}
.omnisim-compass{display:block;fill:rgba(226,249,255,.94);stroke:rgba(111,216,255,.86);stroke-width:.7;filter:drop-shadow(0 0 8px rgba(89,201,255,.22))}
.omnisim-compass-nav{width:49px;height:49px}
.omnisim-wordmark{font:700 1.23rem/1 var(--omni-display);letter-spacing:.31em;color:#f4fbff;text-shadow:0 0 18px rgba(103,206,255,.17)}
.omnisim-nav-separator{display:block;width:1px;height:34px;margin:0 25px;background:linear-gradient(180deg,transparent,rgba(96,181,228,.55),transparent)}
.omnisim-nav-links{display:flex;align-items:center;gap:31px;min-width:0}
.omnisim-nav-links a{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 2px;color:#aec5d5;text-decoration:none;font-size:.78rem;font-weight:700;white-space:nowrap;transition:color .16s ease,text-shadow .16s ease}
.omnisim-nav-links a:hover,.omnisim-nav-links a:focus-visible{color:#effaff;text-shadow:0 0 12px rgba(74,196,255,.35);outline:none}
.omnisim-nav-links a.active{height:42px;padding:0 16px;border:1px solid rgba(54,152,220,.54);border-radius:8px!important;background:linear-gradient(180deg,rgba(13,62,101,.62),rgba(7,44,75,.72));box-shadow:inset 0 0 18px rgba(32,139,210,.14),0 0 20px rgba(31,134,202,.08);color:#e5f6ff}
.nav-active-dot{width:7px;height:7px;border-radius:50%;background:#2ec9ff;box-shadow:0 0 11px #2ec9ff}
.omnisim-nav-spacer{flex:1;min-width:18px}
.omnisim-search{display:flex;align-items:center;gap:10px;width:min(470px,28vw);height:42px;padding:0 13px;border:1px solid rgba(65,159,219,.42);border-radius:8px;background:rgba(4,25,44,.56);box-shadow:inset 0 0 18px rgba(22,90,139,.08)}
.omnisim-search svg{width:19px;height:19px;fill:none;stroke:#7dc2ea;stroke-width:1.9}
body.frozen-battle-page .omnisim-search input{width:100%;height:100%;padding:0!important;border:0!important;background:transparent!important;color:#e9f8ff!important;-webkit-text-fill-color:#e9f8ff!important;box-shadow:none!important;outline:0!important;font-size:.76rem!important}
.omnisim-search input::placeholder{color:#7ea3bc!important;opacity:1}
.omnisim-nav-separator-right{margin:0 20px}
.omnisim-nav-separator-account{margin:0 17px}
body.frozen-battle-page .omnisim-nav-icon,
body.frozen-battle-page .omnisim-account-orb{
  display:grid!important;place-items:center!important;flex:0 0 auto;width:39px!important;height:39px!important;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;color:#d9f4ff!important;box-shadow:none!important;text-decoration:none;cursor:pointer;
}
.omnisim-nav-icon svg{width:22px;height:22px;fill:none;stroke:#9bcceb;stroke-width:1.7}
body.frozen-battle-page .omnisim-nav-icon:hover{background:rgba(20,84,125,.22)!important}
body.frozen-battle-page .omnisim-account-orb{width:48px!important;height:48px!important;border:1px solid rgba(84,173,227,.48)!important;background:radial-gradient(circle at 50% 45%,rgba(21,77,113,.46),rgba(4,28,48,.82))!important;box-shadow:inset 0 0 14px rgba(63,176,230,.16),0 0 18px rgba(44,153,212,.1)!important}
.omnisim-account-orb .omnisim-compass{width:34px;height:34px}

/* ================================
   Page identity / open title band
   ================================ */
body.frozen-battle-page .command-hub.omnisim-workspace{
  width:min(1960px,calc(100vw - 88px))!important;max-width:none!important;margin:0 auto!important;padding:0 0 76px!important;
}
.omnisim-page-head{display:grid;grid-template-columns:154px minmax(360px,1fr) minmax(650px,auto);align-items:center;gap:30px;min-height:214px;padding:28px 0 18px}
.omnisim-side-mark{align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding-right:25px;border-right:1px solid rgba(75,164,217,.30);color:#90b8ce;text-align:center}
.omnisim-compass-hero{width:72px;height:72px;margin-bottom:2px}
.omnisim-side-mark span{font-size:.61rem;line-height:1.46;font-weight:800;letter-spacing:.22em;color:#90bdd6}
.omnisim-title-block{align-self:center}
.omnisim-title-block h1{margin:0;color:#f1fbff;font:700 clamp(2.85rem,3.4vw,4.45rem)/.94 var(--omni-display);letter-spacing:-.025em;text-shadow:0 0 28px rgba(85,194,245,.18)}
.omnisim-title-block h2{margin:10px 0 3px;color:#f0f8fc;font:700 clamp(1.35rem,1.8vw,2.1rem)/1.05 var(--omni-display)}
.omnisim-title-block p{margin:0;color:#a2c0d2;font-size:.92rem;font-weight:520}
.omnisim-top-controls{display:grid;grid-template-columns:minmax(430px,1.36fr) minmax(300px,1fr);gap:14px;align-items:end}
#battleContextHost,#battlePresentationHost{min-width:0}
body.frozen-battle-page .omnisim-control-shell{
  min-height:118px;padding:15px 16px 13px;border:1px solid rgba(77,174,235,.50)!important;border-radius:11px!important;
  background:linear-gradient(180deg,rgba(5,31,52,.70),rgba(4,26,45,.70))!important;box-shadow:inset 0 0 28px rgba(16,82,124,.08),0 12px 32px rgba(0,8,17,.14)!important;backdrop-filter:blur(9px);
}
.omnisim-control-label{display:flex;align-items:center;gap:9px;height:25px;color:#a9cbe0;font-size:.62rem;font-weight:850;letter-spacing:.20em;text-transform:uppercase}
body.frozen-battle-page .omnisim-info{
  position:relative;display:inline-grid!important;place-items:center!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;padding:0!important;border:1px solid rgba(154,216,247,.76)!important;border-radius:50%!important;background:rgba(5,30,49,.82)!important;color:#dff6ff!important;font:bold .64rem/1 var(--omni-ui)!important;text-transform:none!important;letter-spacing:0!important;cursor:help!important;box-shadow:none!important;
}
.omnisim-segmented{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important;width:100%!important;min-height:52px!important;margin-top:7px!important;padding:0!important;border:1px solid rgba(58,139,195,.32)!important;border-radius:9px!important;background:rgba(3,20,36,.64)!important;overflow:visible!important}
body.frozen-battle-page .battle-context-segmented button,
body.frozen-battle-page .battle-setup-view-btn{
  position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;min-height:50px!important;margin:0!important;padding:0 16px!important;border:0!important;border-radius:8px!important;background:transparent!important;color:#adc8da!important;box-shadow:none!important;font-size:.76rem!important;font-weight:760!important;white-space:nowrap!important;transition:background .16s ease,color .16s ease,box-shadow .16s ease!important;
}
body.frozen-battle-page .battle-context-segmented button+button,
body.frozen-battle-page .battle-setup-view-btn+.battle-setup-view-btn{border-left:1px solid rgba(60,139,190,.20)!important}
body.frozen-battle-page .battle-context-segmented button.active,
body.frozen-battle-page .battle-setup-view-btn.active{
  z-index:1!important;background:linear-gradient(180deg,rgba(31,150,225,.95),rgba(12,93,167,.96))!important;color:#fff!important;box-shadow:inset 0 0 24px rgba(105,221,255,.28),0 0 14px rgba(35,183,255,.58),0 0 36px rgba(35,183,255,.20)!important;
}
.context-mode-icon{font-size:1rem}.context-mode-copy{display:block!important}.context-mode-copy b{font:inherit!important;color:inherit!important}.context-mode-copy small{display:none!important}
body.frozen-battle-page .battle-setup-view-switch{margin:0!important;padding:15px 16px 13px!important}
body.frozen-battle-page .battle-setup-view-actions{display:grid!important;width:100%!important;gap:0!important;margin-top:7px!important}
body.frozen-battle-page .battle-setup-view-btn i,body.frozen-battle-page .battle-setup-view-tip{display:none!important}

/* Reusable mockup-style tooltip. */
[data-tip], [data-command-tip]{position:relative}
.omnisim-info[data-tip]::after,.omnisim-toggle-item[data-tip]::after,[data-command-tip]::after{
  content:attr(data-tip);position:absolute;z-index:100000;left:50%;bottom:calc(100% + 10px);width:max-content;max-width:300px;padding:9px 11px;border:1px solid rgba(92,178,244,.70);border-radius:7px;background:rgba(4,20,37,.97);box-shadow:0 10px 28px rgba(0,0,0,.42),0 0 16px rgba(41,156,231,.10);color:#e6f7ff;font:600 .67rem/1.4 var(--omni-ui);letter-spacing:0;text-transform:none;text-align:left;white-space:normal;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,5px);transition:.14s ease
}
.omnisim-info[data-tip]:hover::after,.omnisim-info[data-tip]:focus-visible::after,.omnisim-toggle-item[data-tip]:hover::after,.omnisim-toggle-item[data-tip]:focus-within::after,[data-command-tip]:hover::after,[data-command-tip]:focus-visible::after{opacity:1;visibility:visible;transform:translate(-50%,0)}

/* ================================
   Command composition: no outer card
   ================================ */
body.frozen-battle-page .battle-command-host{margin:0!important}
body.frozen-battle-page #battleRail.battle-command-center,
body.frozen-battle-page #battleRail.battle-command-center .rail-sticky{
  position:relative!important;inset:auto!important;width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;transform:none!important;
}
body.frozen-battle-page #battleRail.battle-command-center{z-index:4!important}
.omnisim-battle-main{display:grid!important;grid-template-columns:minmax(335px,.86fr) minmax(520px,1.22fr) minmax(335px,.86fr)!important;align-items:start!important;gap:16px!important;padding:0!important;background:transparent!important}
.omnisim-optimizer-column{min-width:0;margin-top:23px!important;background:transparent!important;border:0!important;box-shadow:none!important}
body.frozen-battle-page .omnisim-optimizer-action{
  position:relative!important;isolation:isolate!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;width:100%!important;min-height:356px!important;height:auto!important;padding:27px 28px 22px!important;border-radius:12px!important;overflow:hidden!important;text-align:left!important;color:#fff!important;cursor:pointer!important;box-shadow:0 19px 52px rgba(0,7,16,.30)!important;transition:transform .17s ease,filter .17s ease,box-shadow .17s ease!important;
}
body.frozen-battle-page .omnisim-optimizer-action::before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-repeat:no-repeat;transition:transform .3s ease;transform:scale(1.015)}
body.frozen-battle-page .omnisim-optimizer-action::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}
body.frozen-battle-page .omnisim-optimizer-action.att{border:1px solid rgba(255,76,102,.88)!important;border-left:7px solid #ff5268!important;background:#401523!important;box-shadow:0 0 18px rgba(255,63,92,.16),0 18px 50px rgba(0,6,14,.34)!important}
body.frozen-battle-page .omnisim-optimizer-action.att::before{background-image:linear-gradient(90deg,rgba(61,10,24,.20),rgba(70,12,26,.42)),url('/static/image/crazy-joe-photo.png');background-position:50% 33%;filter:saturate(.78) contrast(1.03) brightness(.65) hue-rotate(318deg)}
body.frozen-battle-page .omnisim-optimizer-action.att::after{background:linear-gradient(90deg,rgba(73,13,29,.86) 0%,rgba(76,15,31,.55) 42%,rgba(42,8,20,.34) 72%,rgba(35,6,16,.56) 100%),linear-gradient(180deg,rgba(30,7,16,.22),rgba(35,7,16,.67))}
body.frozen-battle-page .omnisim-optimizer-action.def{border:1px solid rgba(31,177,255,.91)!important;border-right:5px solid #23b8ff!important;background:#0a3458;box-shadow:0 0 18px rgba(37,181,255,.20),0 18px 50px rgba(0,6,14,.34)!important}
body.frozen-battle-page .omnisim-optimizer-action.def::before{background-image:url('/static/image/FDT-background-photo.webp');background-position:70% 47%;filter:saturate(.88) contrast(1.08) brightness(.67) hue-rotate(-5deg)}
body.frozen-battle-page .omnisim-optimizer-action.def::after{background:linear-gradient(90deg,rgba(6,47,82,.71),rgba(8,64,110,.42) 48%,rgba(4,39,69,.23)),linear-gradient(180deg,rgba(5,33,58,.20),rgba(3,29,52,.62))}
body.frozen-battle-page .omnisim-optimizer-action:hover{transform:translateY(-2px)!important;filter:brightness(1.07)!important}
body.frozen-battle-page .omnisim-optimizer-action:hover::before{transform:scale(1.045)}
.omnisim-optimizer-title{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:46px;position:relative;z-index:3}
.omnisim-optimizer-title b{font:700 clamp(1.55rem,1.55vw,2.05rem)/1.05 var(--omni-display)!important;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.36)}
.omnisim-chevron{font:300 3rem/1 var(--omni-display);color:#eaf9ff;text-shadow:0 0 13px currentColor;transform:translateY(-1px)}
.omnisim-optimizer-formation{position:relative;z-index:3;display:block;flex:1;margin-top:9px}
.omnisim-formation-body{display:flex;flex-direction:column;height:100%;min-height:252px}
.omnisim-lead-row{display:flex;align-items:flex-start;gap:10px;min-height:118px;margin-top:4px}
.omnisim-lead-hero{display:grid;grid-template-rows:76px auto;justify-items:center;gap:5px;min-width:0;width:82px}
.omnisim-lead-hero img{width:76px;height:76px;object-fit:cover;border:2px solid rgba(225,246,255,.64);border-radius:12px;box-shadow:0 7px 18px rgba(0,0,0,.32);background:#0a253b}
.att .omnisim-lead-hero img{border-color:rgba(255,101,119,.78)}.def .omnisim-lead-hero img{border-color:rgba(70,192,255,.88)}
.omnisim-lead-hero b{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;color:#f2fbff;font:700 .68rem/1.15 var(--omni-ui)}
.omnisim-joiner-row{display:flex;align-items:center;gap:6px;min-height:42px;margin:6px 0 4px;padding-top:7px;border-top:1px solid rgba(215,243,255,.13)}
.omnisim-joiner-caption{margin-right:2px;color:#a9c2d0;font-size:.58rem;font-weight:700}
.omnisim-joiner-hero{display:flex;align-items:center;gap:4px;max-width:90px}
.omnisim-joiner-hero img{width:31px;height:31px;border-radius:50%;object-fit:cover;border:1px solid rgba(220,246,255,.52);background:#0b293e}
.omnisim-joiner-hero b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dff3fa;font-size:.57rem}
.omnisim-formation-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:auto}
.omnisim-role-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 13px;border:1px solid currentColor;border-radius:7px;color:#dfefff;font:700 .72rem var(--omni-ui);background:rgba(6,28,46,.52)}
.att .omnisim-role-pill{color:#ff8494}.def .omnisim-role-pill{color:#82d6ff}
.omnisim-ratio-line{display:flex;align-items:center;gap:6px;color:#f1faff;font-size:.8rem;font-weight:780}
.omnisim-ratio-line>i{font-style:normal;color:#7398ad;font-weight:500}
.omnisim-ratio-part{display:flex;align-items:center;gap:3px}.omnisim-ratio-part img{width:19px;height:19px;object-fit:contain;filter:drop-shadow(0 0 5px rgba(111,212,255,.14))}.omnisim-ratio-part b{font-size:.86rem}

/* Optimizer recommendations appear only after real results exist. */
body.frozen-battle-page .optimizer-column-results.command-suggestions-empty{display:none!important}
body.frozen-battle-page .optimizer-column-results{margin-top:9px!important;min-height:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
body.frozen-battle-page .optimizer-recs{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
body.frozen-battle-page .optimizer-recommend-card{min-height:0!important;padding:10px!important;border-radius:8px!important;background:rgba(4,25,42,.88)!important;box-shadow:none!important}
body.frozen-battle-page .optimizer-recommend-card.att{border:1px solid rgba(255,80,100,.32)!important;border-left:3px solid rgba(255,80,100,.82)!important}
body.frozen-battle-page .optimizer-recommend-card.def{border:1px solid rgba(42,176,255,.32)!important;border-right:3px solid rgba(42,176,255,.82)!important}
body.frozen-battle-page .optimizer-recommend-card .optimizer-mini-hero img{width:32px!important;height:32px!important}
body.frozen-battle-page .optimizer-recommend-card .optimizer-apply-hint{display:none!important}

/* ================================
   Central simulation console
   ================================ */
body.frozen-battle-page .omnisim-simulation-console{
  position:relative!important;min-height:432px!important;padding:0 20px 17px!important;border:1px solid rgba(87,175,229,.64)!important;border-radius:12px!important;overflow:hidden!important;
  background:linear-gradient(180deg,rgba(7,40,66,.82),rgba(3,23,41,.92))!important;box-shadow:inset 0 0 36px rgba(52,147,205,.08),0 19px 52px rgba(0,7,16,.30)!important;
}
.omnisim-simulation-hero{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;height:158px;margin:0 -20px 8px;padding-top:7px;overflow:hidden;border-bottom:1px solid rgba(80,164,217,.34);background:linear-gradient(180deg,rgba(17,73,111,.25),rgba(4,32,54,.42)),url('/static/image/fdt/fdt-quasar.webp') center 42%/cover no-repeat}
.omnisim-simulation-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,27,47,.74),rgba(6,51,82,.19) 28%,rgba(6,51,82,.11) 70%,rgba(4,27,47,.72)),linear-gradient(180deg,rgba(8,45,73,.05),rgba(3,24,42,.60));pointer-events:none}
.omnisim-sim-kicker{position:relative;z-index:2;margin-bottom:5px;color:#a9d4ea;font-size:.61rem;font-weight:850;letter-spacing:.28em;text-transform:uppercase}
body.frozen-battle-page .omnisim-run-heading{
  position:relative!important;z-index:2!important;display:flex!important;align-items:center!important;gap:12px!important;width:auto!important;min-height:46px!important;margin:0!important;padding:0 6px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#f4fbff!important;font:700 clamp(1.75rem,1.8vw,2.25rem)/1 var(--omni-display)!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer!important;text-shadow:0 2px 18px rgba(0,0,0,.45),0 0 18px rgba(86,203,255,.18)!important;transition:color .15s ease,text-shadow .15s ease,transform .15s ease!important;
}
body.frozen-battle-page .omnisim-run-heading:hover,body.frozen-battle-page .omnisim-run-heading:focus-visible{color:#fff!important;text-shadow:0 0 14px rgba(92,217,255,.54),0 2px 18px rgba(0,0,0,.45)!important;transform:translateY(-1px);outline:none!important}
.omnisim-run-icon{font-size:1.1rem;color:#cfeeff;filter:drop-shadow(0 0 7px rgba(66,201,255,.7))}
.omnisim-run-score-row{display:grid!important;grid-template-columns:minmax(245px,.9fr) minmax(250px,1.1fr)!important;gap:12px!important;margin:0!important;padding:0!important}
.omnisim-run-count,.omnisim-score{display:flex!important;align-items:center!important;justify-content:center!important;min-height:52px!important;border:1px solid rgba(70,157,213,.48)!important;border-radius:8px!important;background:rgba(3,26,46,.72)!important;box-shadow:inset 0 0 18px rgba(20,86,130,.07)!important}
.omnisim-run-count{gap:8px!important;padding:5px 8px!important}
.omnisim-runs-label{display:flex;align-items:center;gap:7px;margin-right:auto;color:#b5cddd;font-size:.70rem;font-weight:730}
body.frozen-battle-page .omnisim-run-step{display:grid!important;place-items:center!important;width:42px!important;height:38px!important;padding:0!important;border:1px solid rgba(71,151,207,.50)!important;border-radius:6px!important;background:rgba(8,45,72,.76)!important;color:#cceaff!important;box-shadow:inset 0 0 13px rgba(34,118,169,.08)!important;font-size:1.35rem!important;line-height:1!important;cursor:pointer!important}
body.frozen-battle-page .omnisim-run-step:hover{border-color:rgba(75,201,255,.78)!important;background:rgba(12,68,105,.88)!important}
body.frozen-battle-page .omnisim-run-select{appearance:none!important;width:50px!important;height:38px!important;min-height:38px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#eff9ff!important;-webkit-text-fill-color:#eff9ff!important;box-shadow:none!important;text-align:center!important;font-size:.88rem!important;font-weight:820!important;cursor:pointer}
.omnisim-score{gap:12px;font:700 .84rem var(--omni-ui)}.omnisim-score .red{color:#ff4f64}.omnisim-score .blue{color:#3db8ff}.omnisim-score .dash{color:#78a0b7;font-weight:500}
.omnisim-percent-area{margin:10px 0 11px!important}.omnisim-percent-area .multi-bar-wrap{margin:0!important;padding:0!important;border:0!important;background:transparent!important}
.omnisim-percent-area .multi-bar{height:26px!important;padding:4px!important;border:1px solid rgba(76,169,227,.46)!important;border-radius:13px!important;background:rgba(3,20,35,.90)!important;box-shadow:inset 0 0 12px rgba(25,102,148,.13)!important;overflow:hidden!important}
.omnisim-percent-area .multi-red,.omnisim-percent-area .multi-blue{height:100%!important;box-shadow:inset 0 0 9px rgba(255,255,255,.18)!important}
.omnisim-percent-area .multi-red{background:linear-gradient(90deg,#d82744,#ff536b)!important;border-radius:8px 0 0 8px!important}.omnisim-percent-area .multi-blue{background:linear-gradient(90deg,#1e8fe0,#17b9ff)!important;border-radius:0 8px 8px 0!important}
.omnisim-sim-actions{display:grid;grid-template-columns:1fr minmax(118px,.34fr);gap:12px;margin:0 0 10px}
.omnisim-swap-host{display:block!important;margin:0!important;padding:0!important}
.omnisim-swap-host #battleSwapAction{height:100%!important;margin:0!important}
body.frozen-battle-page .omnisim-swap-host .battle-utility-btn.swap{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;width:100%!important;height:49px!important;min-height:49px!important;margin:0!important;padding:0 16px!important;border:1px solid rgba(70,157,213,.50)!important;border-radius:7px!important;background:rgba(3,27,47,.72)!important;color:#c8e5f4!important;box-shadow:none!important;font-size:.73rem!important;font-weight:750!important;
}
.omnisim-swap-host .battle-utility-btn.swap span{font-size:1.3rem!important}.omnisim-swap-host .battle-utility-btn.swap b{font-size:.74rem!important}
.omnisim-gen-control{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;height:49px!important;margin:0!important;padding:0 10px!important;border:1px solid rgba(70,157,213,.50)!important;border-radius:7px!important;background:rgba(3,27,47,.72)!important;color:#9fc5db!important;font-size:.66rem!important;font-weight:800!important}
body.frozen-battle-page .omnisim-gen-control select{width:56px!important;min-height:32px!important;border:0!important;background:transparent!important;color:#effaff!important;-webkit-text-fill-color:#effaff!important;font-weight:850!important;text-align:center!important}
body.frozen-battle-page .omnisim-report-open{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:11px!important;width:100%!important;min-height:51px!important;margin:0!important;padding:0 16px!important;border:1px solid rgba(72,164,221,.56)!important;border-radius:7px!important;background:linear-gradient(180deg,rgba(7,48,78,.82),rgba(4,31,53,.88))!important;color:#d7effa!important;box-shadow:inset 0 0 18px rgba(36,126,179,.08)!important;font:700 .77rem var(--omni-ui)!important;cursor:pointer!important
}
body.frozen-battle-page .omnisim-report-open:not(:disabled):hover{border-color:rgba(78,202,255,.80)!important;background:linear-gradient(180deg,rgba(12,74,112,.86),rgba(6,43,69,.92))!important}.omnisim-report-open:disabled{opacity:.48!important;cursor:not-allowed!important}
.omnisim-report-open>span:first-child{font-size:1.05rem}.omnisim-report-open .omnisim-info{margin-left:2px;pointer-events:none}
.omnisim-result-meta{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}

/* ================================
   Optimizer toggle strip
   ================================ */
.omnisim-toggle-strip{display:grid;grid-template-columns:repeat(4,1fr);align-items:stretch;margin-top:29px;border:1px solid rgba(57,139,194,.28);border-radius:9px;background:linear-gradient(180deg,rgba(5,31,51,.83),rgba(4,25,43,.84));box-shadow:0 14px 38px rgba(0,8,18,.18);overflow:visible}
body.frozen-battle-page .omnisim-toggle-item{
  position:relative!important;display:grid!important;grid-template-columns:42px 1fr 55px 18px!important;align-items:center!important;gap:12px!important;min-height:88px!important;margin:0!important;padding:0 25px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#d8eff9!important;cursor:pointer!important;outline:none!important
}
body.frozen-battle-page .omnisim-toggle-item:not(:last-child){border-right:1px solid rgba(66,145,194,.34)!important}
.omnisim-toggle-item::after{content:"i";display:grid;place-items:center;width:17px;height:17px;border:1px solid rgba(154,216,247,.65);border-radius:50%;color:#ceeefe;font:bold .6rem var(--omni-ui);grid-column:4}
.omnisim-toggle-icon{display:grid;place-items:center;width:35px;height:35px;color:#d8eff9}.omnisim-toggle-icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.omnisim-toggle-icon svg path[d*="A12"]{fill:rgba(207,239,255,.18)}
body.frozen-battle-page .omnisim-toggle-item .rail-joiner-copy{display:block!important;min-width:0!important;grid-column:2!important}.omnisim-toggle-item .rail-joiner-copy b{display:block!important;color:#e5f6fd!important;font-size:.77rem!important;font-weight:760!important;white-space:nowrap!important}.omnisim-toggle-item .rail-joiner-copy small{display:none!important}
body.frozen-battle-page .omnisim-toggle-item input{position:absolute!important;opacity:0!important;pointer-events:none!important}
body.frozen-battle-page .omnisim-toggle-item .rail-joiner-switch{position:relative!important;display:block!important;grid-column:3!important;width:54px!important;height:31px!important;margin:0!important;border:1px solid rgba(68,147,197,.52)!important;border-radius:17px!important;background:#071d31!important;box-shadow:inset 0 0 12px rgba(0,0,0,.25)!important;transition:.17s ease!important}
body.frozen-battle-page .omnisim-toggle-item .rail-joiner-switch::after{content:""!important;position:absolute!important;left:3px!important;top:3px!important;width:23px!important;height:23px!important;border:0!important;border-radius:50%!important;background:#d9ecf5!important;box-shadow:0 1px 5px rgba(0,0,0,.35)!important;transform:none!important;transition:transform .17s ease!important}
body.frozen-battle-page .omnisim-toggle-item input:checked+.rail-joiner-switch{border-color:#3ec9ff!important;background:linear-gradient(90deg,#178fdf,#20c4ff)!important;box-shadow:0 0 14px rgba(35,190,255,.48),inset 0 0 12px rgba(255,255,255,.18)!important}
body.frozen-battle-page .omnisim-toggle-item input:checked+.rail-joiner-switch::after{transform:translateX(23px)!important;background:#fff!important}
body.frozen-battle-page .omnisim-toggle-item:focus-visible{box-shadow:inset 0 0 0 1px rgba(83,205,255,.72)!important}
.omnisim-toggle-item[data-tip]::after{content:"i";position:static;width:17px;max-width:none;padding:0;border:1px solid rgba(154,216,247,.65);background:transparent;box-shadow:none;color:#ceeefe;font:bold .6rem/1 var(--omni-ui);opacity:1;visibility:visible;transform:none;pointer-events:none;text-align:center}
.omnisim-toggle-item[data-tip]::before{content:attr(data-tip);position:absolute;z-index:100000;left:50%;bottom:calc(100% + 9px);width:290px;padding:9px 11px;border:1px solid rgba(92,178,244,.70);border-radius:7px;background:rgba(4,20,37,.97);box-shadow:0 10px 28px rgba(0,0,0,.42),0 0 16px rgba(41,156,231,.10);color:#e6f7ff;font:600 .67rem/1.4 var(--omni-ui);white-space:normal;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,5px);transition:.14s ease}
.omnisim-toggle-item[data-tip]:hover::before,.omnisim-toggle-item[data-tip]:focus-within::before,.omnisim-toggle-item[data-tip]:focus::before{opacity:1;visibility:visible;transform:translate(-50%,0)}

/* ================================
   Meta Search scenic strip
   ================================ */
.omnisim-meta-strip{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,390px);align-items:center;gap:30px;min-height:158px;margin-top:22px;padding:20px 31px;border:1px solid rgba(73,160,217,.50);border-radius:10px;overflow:visible;background:linear-gradient(90deg,rgba(4,28,47,.92) 0%,rgba(6,42,69,.76) 55%,rgba(5,33,55,.68) 100%),url('/static/image/FDT-background-photo.webp') 68% 48%/cover no-repeat;box-shadow:inset 0 0 36px rgba(38,128,184,.08),0 14px 38px rgba(0,8,18,.19)}
.omnisim-meta-strip::after{content:"";position:absolute;inset:0;border-radius:10px;pointer-events:none;background:linear-gradient(90deg,rgba(4,30,49,.93) 0%,rgba(4,31,51,.77) 42%,rgba(4,30,50,.28) 72%,rgba(3,24,41,.46) 100%)}
.omnisim-meta-copy,.omnisim-meta-action{position:relative;z-index:2}
.omnisim-meta-copy{display:flex;align-items:center;gap:24px}.omnisim-meta-compass{display:grid;place-items:center;width:86px;height:86px;flex:0 0 86px;border:1px solid rgba(79,159,210,.30);border-radius:50%;background:rgba(3,28,48,.54);box-shadow:inset 0 0 22px rgba(34,124,180,.10)}.omnisim-meta-compass .omnisim-compass{width:54px;height:54px}
.omnisim-meta-copy>span:last-child{display:flex;flex-direction:column;gap:8px}.omnisim-meta-copy b{color:#e7f5fb;font:700 1.25rem/1.1 var(--omni-display)}.omnisim-meta-copy small{max-width:700px;color:#aac4d4;font-size:.78rem;line-height:1.42;font-weight:520}
.omnisim-meta-action{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:9px!important;background:transparent!important;border:0!important;box-shadow:none!important}
body.frozen-battle-page .omnisim-meta-action #exploreMetaBtn{
  position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:300px!important;min-height:66px!important;padding:0 25px!important;border:1px solid rgba(109,220,255,.86)!important;border-radius:8px!important;background:linear-gradient(180deg,rgba(42,165,231,.90),rgba(15,105,180,.94))!important;color:#f4fbff!important;box-shadow:inset 0 0 26px rgba(172,239,255,.22),0 0 16px rgba(55,196,255,.42),0 0 38px rgba(55,196,255,.15)!important;font:700 .95rem var(--omni-ui)!important;overflow:hidden!important
}
body.frozen-battle-page .omnisim-meta-action #exploreMetaBtn::before,body.frozen-battle-page .omnisim-meta-action #exploreMetaBtn::after{display:none!important;content:none!important}
body.frozen-battle-page .omnisim-meta-action #exploreMetaBtn:hover{background:linear-gradient(180deg,rgba(61,189,247,.96),rgba(20,121,197,.98))!important;box-shadow:inset 0 0 30px rgba(172,239,255,.28),0 0 20px rgba(55,196,255,.55),0 0 48px rgba(55,196,255,.19)!important}
.omnisim-meta-action .meta-button-content{position:relative!important;inset:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;width:auto!important;height:auto!important}.omnisim-meta-action .meta-crown{font-size:0!important}.omnisim-meta-action .meta-crown::before{content:"⌕";font-size:1.55rem;line-height:1}.omnisim-meta-action .meta-btn-spark{display:none!important}.omnisim-meta-action .meta-button-pct{font-size:.7rem!important}
body.frozen-battle-page .omnisim-meta-action .rail-meta-recalculate{min-height:44px!important;border:1px solid rgba(78,175,229,.45)!important;border-radius:7px!important;background:rgba(4,31,52,.84)!important;color:#cde8f5!important}
.omnisim-meta-action .rail-meta-tooltip{right:0!important;left:auto!important;bottom:calc(100% + 10px)!important;top:auto!important;transform:none!important}
.omnisim-meta-results:empty{display:none!important}

/* Progress is intentionally quiet until a search runs. */
.omnisim-progress{margin:12px 0 0!important;padding:0 2px!important;border:0!important;background:transparent!important;box-shadow:none!important}.omnisim-progress .optimizer-progress-track{height:4px!important;border-radius:2px!important;background:rgba(24,75,107,.42)!important}.omnisim-progress .optimizer-progress-fill{border-radius:2px!important;background:linear-gradient(90deg,#ff4f64,#58c9ff)!important}.omnisim-progress .command-progress-copy{margin-top:5px!important;color:#7898aa!important;font-size:.58rem!important}.omnisim-progress:not(.running) .optimizer-progress-track{opacity:.18}
.omnisim-note{margin:8px 0 0!important;padding:0!important;border:0!important;background:transparent!important;color:#718fa0!important;font-size:.6rem!important;text-align:center!important;min-height:0!important}.omnisim-note:empty{display:none!important}

/* Advanced options stay available without cluttering the mockup composition. */
body.frozen-battle-page .omnisim-advanced-settings{margin:13px 0 0!important;border:1px solid rgba(70,154,205,.20)!important;border-radius:8px!important;background:rgba(3,25,43,.50)!important;box-shadow:none!important;overflow:visible!important}
body.frozen-battle-page .omnisim-advanced-settings>summary{display:flex!important;align-items:center!important;gap:10px!important;min-height:44px!important;padding:0 15px!important;color:#9ebdce!important;cursor:pointer!important;font-size:.69rem!important;font-weight:740!important}.omnisim-advanced-settings>summary small{color:#6f91a4!important;font-size:.6rem!important;font-weight:550!important}.omnisim-advanced-settings .optimizer-settings-body{grid-template-columns:1.2fr 1fr .55fr!important;padding:13px!important}.omnisim-advanced-settings .optimizer-group{min-width:0!important}.omnisim-theme-toggle{min-height:38px!important;padding:0 12px!important;border:1px solid rgba(78,169,220,.34)!important;border-radius:6px!important;background:rgba(6,41,66,.72)!important;color:#c8e7f4!important;cursor:pointer!important}

/* ================================
   Lower army editor convergence
   ================================ */
body.frozen-battle-page .battle-mobile-side-switch{margin-top:24px!important;border:1px solid rgba(72,157,207,.22)!important;border-radius:8px!important;background:rgba(4,28,47,.63)!important}
body.frozen-battle-page #sidePanels{margin-top:17px!important;gap:17px!important}
body.frozen-battle-page #sidePanels>.army-panel{
  border-radius:10px!important;border:1px solid rgba(72,157,207,.28)!important;background:linear-gradient(180deg,rgba(5,31,51,.88),rgba(3,23,40,.90))!important;box-shadow:0 18px 50px rgba(0,8,18,.21),inset 0 1px rgba(255,255,255,.025)!important;overflow:visible!important
}
body.frozen-battle-page #sidePanels>.army-panel.att{border-top:2px solid rgba(255,76,98,.62)!important}body.frozen-battle-page #sidePanels>.army-panel.def{border-top:2px solid rgba(36,177,255,.66)!important}
body.frozen-battle-page #sidePanels :is(.section-title,.troop-section-title,.hero-section-title){color:#dff2fa!important;font-family:var(--omni-display)!important;text-transform:none!important;letter-spacing:0!important}
body.frozen-battle-page #sidePanels :is(.hero-card,.troop-card,.dynamic-loadout,.profile-stats-panel,.battle-dynamic-disclosure){border-radius:8px!important;border-color:rgba(81,162,208,.18)!important;background:rgba(4,27,45,.56)!important;box-shadow:none!important}
body.frozen-battle-page #sidePanels :is(input,select,textarea){border-radius:6px!important;background:rgba(3,21,37,.87)!important;border-color:rgba(75,156,205,.34)!important}
body.frozen-battle-page #sidePanels :is(button,.button,.btn){border-radius:6px!important}
body.frozen-battle-page .battle-dynamic-disclosure>summary{border-radius:7px!important;background:rgba(5,35,57,.58)!important}

/* Minimal cards keep canonical behavior but join the OmniSIM visual language. */
body.frozen-battle-page .battle-minimal-army-view{margin:2px 0 11px!important;padding:10px!important;border:0!important;border-radius:8px!important;background:rgba(3,24,41,.38)!important}
body.frozen-battle-page .battle-minimal-hero{border-radius:8px!important;background:rgba(3,22,38,.58)!important;border-color:rgba(83,160,202,.18)!important}
body.frozen-battle-page .battle-minimal-portrait img,body.frozen-battle-page .battle-minimal-no-hero{border-radius:10px!important}
body.frozen-battle-page .battle-minimal-ratio b{font-size:1.18rem!important}

/* Footer remains open on the atmosphere, like the mockup. */
.omnisim-footer{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:50px;padding:0 clamp(30px,3vw,62px);border-top:1px solid rgba(56,134,186,.20);background:rgba(2,19,33,.34);color:#75a4c1;font-size:.55rem;font-weight:800;letter-spacing:.28em;text-transform:uppercase}
.omnisim-footer span:first-child{display:flex;align-items:center;gap:13px}.omnisim-footer i{display:block;width:1px;height:13px;background:rgba(89,165,211,.45)}

/* Keep authentication/pickers integrated with the colder, thinner language. */
body.frozen-battle-page .loadout-dialog,body.frozen-battle-page .auth-dialog{border-radius:10px!important;border-color:rgba(82,176,230,.45)!important;background:linear-gradient(180deg,rgba(4,30,50,.98),rgba(3,22,39,.99))!important;box-shadow:0 26px 80px rgba(0,0,0,.52),0 0 30px rgba(39,145,205,.08)!important}
body.frozen-battle-page .loadout-dialog :is(button,select,input),body.frozen-battle-page .auth-dialog :is(button,select,input){border-radius:6px!important}

/* ================================
   Light theme: restrained frozen interpretation
   ================================ */
body.frozen-battle-page.light-theme{--omni-ice:#143b51;--omni-muted:#54788c;--omni-muted-2:#6b8b9c;background:#d9edf4!important;color:#173b50!important}
body.frozen-battle-page.light-theme #battleBackground{filter:saturate(.55) brightness(1.08) contrast(.83)!important;opacity:.34!important}
body.frozen-battle-page.light-theme .bg-overlay{background:linear-gradient(180deg,rgba(227,246,251,.72),rgba(222,242,248,.86) 45%,rgba(219,239,246,.95))!important}
body.frozen-battle-page.light-theme .omnisim-topbar{background:rgba(236,249,253,.91);border-bottom-color:rgba(44,123,164,.30)}
body.frozen-battle-page.light-theme .omnisim-wordmark,body.frozen-battle-page.light-theme .omnisim-nav-links a:hover{color:#163c51}.light-theme .omnisim-nav-links a{color:#54788c}.light-theme .omnisim-nav-links a.active{color:#15445c;background:rgba(127,202,229,.24);border-color:rgba(46,137,179,.38)}
body.frozen-battle-page.light-theme .omnisim-search{background:rgba(248,253,255,.68);border-color:rgba(51,134,176,.32)}body.frozen-battle-page.light-theme .omnisim-search input{color:#173d52!important;-webkit-text-fill-color:#173d52!important}
body.frozen-battle-page.light-theme .omnisim-title-block :is(h1,h2){color:#173c51}.light-theme .omnisim-title-block p,.light-theme .omnisim-side-mark{color:#52798d}
body.frozen-battle-page.light-theme .omnisim-control-shell{background:rgba(241,251,254,.78)!important;border-color:rgba(48,132,174,.34)!important}.light-theme .omnisim-control-label{color:#456f83}
body.frozen-battle-page.light-theme .battle-context-segmented button,body.frozen-battle-page.light-theme .battle-setup-view-btn{color:#456f83!important}.light-theme .omnisim-segmented{background:rgba(232,247,252,.70)!important;border-color:rgba(49,132,174,.30)!important}
body.frozen-battle-page.light-theme .omnisim-simulation-console{background:rgba(226,245,251,.91)!important;border-color:rgba(50,136,178,.42)!important}.light-theme .omnisim-simulation-hero{filter:saturate(.7) brightness(1.03)}
body.frozen-battle-page.light-theme .omnisim-run-count,body.frozen-battle-page.light-theme .omnisim-score,body.frozen-battle-page.light-theme .omnisim-gen-control,body.frozen-battle-page.light-theme .omnisim-swap-host .battle-utility-btn.swap,body.frozen-battle-page.light-theme .omnisim-report-open{background:rgba(245,252,254,.74)!important;color:#254f63!important;border-color:rgba(55,139,180,.32)!important}.light-theme .omnisim-score .dash{color:#688ba0}
body.frozen-battle-page.light-theme .omnisim-toggle-strip{background:rgba(238,250,253,.79);border-color:rgba(54,137,179,.28)}body.frozen-battle-page.light-theme .omnisim-toggle-item{color:#315f76!important}.light-theme .omnisim-toggle-item .rail-joiner-copy b{color:#244e62!important}
body.frozen-battle-page.light-theme .omnisim-meta-strip{background:linear-gradient(90deg,rgba(235,249,253,.93),rgba(232,248,252,.82)),url('/static/image/FDT-background-photo.webp') 68% 48%/cover no-repeat;border-color:rgba(53,139,181,.34)}body.frozen-battle-page.light-theme .omnisim-meta-strip::after{background:linear-gradient(90deg,rgba(239,251,254,.93),rgba(236,250,253,.78) 52%,rgba(232,248,252,.43) 82%,rgba(232,248,252,.64))}.light-theme .omnisim-meta-copy b{color:#234d62}.light-theme .omnisim-meta-copy small{color:#55798b}
body.frozen-battle-page.light-theme .omnisim-advanced-settings,body.frozen-battle-page.light-theme #sidePanels>.army-panel{background:rgba(239,250,253,.83)!important;color:#214b60!important;border-color:rgba(52,137,179,.28)!important}.light-theme .omnisim-footer{background:rgba(224,242,248,.70);color:#527b91;border-top-color:rgba(53,137,179,.23)}

/* ================================
   Responsive behavior
   ================================ */
@media(max-width:1720px){
  .omnisim-nav-links{gap:23px}.omnisim-search{width:min(390px,24vw)}
  .omnisim-page-head{grid-template-columns:135px minmax(320px,1fr) minmax(600px,auto);gap:24px}
  .omnisim-top-controls{grid-template-columns:minmax(380px,1.25fr) minmax(270px,1fr)}
  .omnisim-battle-main{grid-template-columns:minmax(305px,.84fr) minmax(475px,1.18fr) minmax(305px,.84fr)!important}
  body.frozen-battle-page .omnisim-optimizer-action{padding:24px 22px 20px!important}.omnisim-lead-hero{width:70px}.omnisim-lead-hero img{width:66px;height:66px}.omnisim-lead-row{gap:7px}
  body.frozen-battle-page .omnisim-toggle-item{padding:0 18px!important;grid-template-columns:36px 1fr 50px 17px!important;gap:9px!important}.omnisim-toggle-item .rail-joiner-switch{transform:scale(.94)}
}
@media(max-width:1450px){
  body.frozen-battle-page .omnisim-topbar{padding:0 26px}.omnisim-wordmark{font-size:1.05rem}.omnisim-nav-separator{margin:0 18px}.omnisim-nav-links{gap:18px}.omnisim-nav-links a{font-size:.71rem}.omnisim-search{width:300px}
  body.frozen-battle-page .command-hub.omnisim-workspace{width:min(100% - 48px,1500px)!important}.omnisim-page-head{grid-template-columns:112px minmax(285px,1fr) minmax(560px,auto);gap:20px}.omnisim-compass-hero{width:60px;height:60px}.omnisim-side-mark span{font-size:.53rem}
  .omnisim-battle-main{grid-template-columns:minmax(285px,.83fr) minmax(430px,1.14fr) minmax(285px,.83fr)!important;gap:12px!important}
  body.frozen-battle-page .omnisim-optimizer-action{min-height:342px!important;padding:22px 19px 18px!important}.omnisim-optimizer-title b{font-size:1.45rem!important}.omnisim-lead-hero{width:62px}.omnisim-lead-hero img{width:58px;height:58px}.omnisim-lead-hero b{font-size:.58rem}.omnisim-joiner-caption{display:none}.omnisim-formation-body{min-height:238px}
  body.frozen-battle-page .omnisim-simulation-console{min-height:414px!important;padding-left:15px!important;padding-right:15px!important}.omnisim-simulation-hero{margin-left:-15px;margin-right:-15px;height:149px}.omnisim-run-score-row{grid-template-columns:1fr!important;gap:7px!important}.omnisim-run-count,.omnisim-score{min-height:44px!important}.omnisim-percent-area{margin:7px 0 8px!important}.omnisim-sim-actions{grid-template-columns:1fr 110px;gap:7px}
  .omnisim-toggle-strip{grid-template-columns:repeat(2,1fr)}body.frozen-battle-page .omnisim-toggle-item:nth-child(2){border-right:0!important}body.frozen-battle-page .omnisim-toggle-item:nth-child(-n+2){border-bottom:1px solid rgba(66,145,194,.30)!important}
}
@media(max-width:1120px){
  body.frozen-battle-page .omnisim-topbar{height:auto;min-height:76px;flex-wrap:wrap;padding:12px 18px;row-gap:8px}.omnisim-nav-links{order:3;width:100%;justify-content:center}.omnisim-search{margin-left:auto;width:320px}.omnisim-nav-separator-right,.omnisim-nav-separator-account{margin:0 12px}
  body.frozen-battle-page .command-hub.omnisim-workspace{width:min(100% - 28px,1100px)!important}.omnisim-page-head{grid-template-columns:92px 1fr;min-height:0;padding:28px 0 18px}.omnisim-side-mark{grid-row:1;padding-right:15px}.omnisim-title-block{grid-row:1}.omnisim-top-controls{grid-column:1/-1;grid-row:2;grid-template-columns:1fr 1fr;width:100%;margin-top:5px}.omnisim-control-shell{min-height:105px!important}
  .omnisim-battle-main{grid-template-columns:1fr 1fr!important}.omnisim-simulation-console{grid-column:1/-1!important;grid-row:1!important}.omnisim-optimizer-column.att{grid-column:1;grid-row:2}.omnisim-optimizer-column.def{grid-column:2;grid-row:2}.omnisim-optimizer-column{margin-top:0!important}body.frozen-battle-page .omnisim-optimizer-action{min-height:316px!important}.omnisim-lead-hero{width:72px}.omnisim-lead-hero img{width:66px;height:66px}
  .omnisim-meta-strip{grid-template-columns:1fr minmax(260px,330px);padding:18px 20px}.omnisim-meta-copy small{max-width:500px}
  .omnisim-advanced-settings .optimizer-settings-body{grid-template-columns:1fr!important}
}
@media(max-width:760px){
  body.frozen-battle-page .omnisim-topbar{padding:10px 12px}.omnisim-brand{gap:10px}.omnisim-compass-nav{width:38px;height:38px}.omnisim-wordmark{font-size:.92rem;letter-spacing:.22em}.omnisim-nav-separator{display:none}.omnisim-search{order:2;width:calc(100% - 110px);height:38px;margin-left:auto}.omnisim-nav-icon{display:none!important}.omnisim-account-orb{width:40px!important;height:40px!important}.omnisim-nav-links{order:3;justify-content:flex-start;gap:8px;overflow-x:auto;padding:1px 0 2px;scrollbar-width:none}.omnisim-nav-links::-webkit-scrollbar{display:none}.omnisim-nav-links a{min-height:34px;padding:0 8px;font-size:.67rem}.omnisim-nav-links a.active{height:34px;padding:0 11px}
  body.frozen-battle-page .command-hub.omnisim-workspace{width:min(100% - 22px,760px)!important}.omnisim-page-head{grid-template-columns:1fr;gap:12px;padding:20px 0 15px}.omnisim-side-mark{display:none}.omnisim-title-block{text-align:left}.omnisim-title-block h1{font-size:2.55rem}.omnisim-title-block h2{font-size:1.32rem}.omnisim-title-block p{font-size:.78rem}.omnisim-top-controls{grid-column:1;grid-row:auto;grid-template-columns:1fr;gap:9px}.omnisim-control-shell{min-height:96px!important;padding:12px!important}
  .omnisim-battle-main{grid-template-columns:1fr!important;gap:11px!important}.omnisim-simulation-console{grid-column:1!important;grid-row:1!important}.omnisim-optimizer-column.att{grid-column:1;grid-row:2}.omnisim-optimizer-column.def{grid-column:1;grid-row:3}body.frozen-battle-page .omnisim-optimizer-action{min-height:300px!important}.omnisim-optimizer-title b{font-size:1.42rem!important}.omnisim-lead-row{justify-content:flex-start}.omnisim-lead-hero{width:76px}.omnisim-lead-hero img{width:70px;height:70px}.omnisim-formation-body{min-height:215px}
  .omnisim-toggle-strip{grid-template-columns:1fr!important;margin-top:16px}.omnisim-toggle-item{min-height:70px!important}.omnisim-toggle-item:not(:last-child){border-right:0!important;border-bottom:1px solid rgba(66,145,194,.28)!important}
  .omnisim-meta-strip{grid-template-columns:1fr;gap:16px;margin-top:14px;padding:16px}.omnisim-meta-copy{gap:14px}.omnisim-meta-compass{width:64px;height:64px;flex-basis:64px}.omnisim-meta-compass .omnisim-compass{width:42px;height:42px}.omnisim-meta-copy b{font-size:1.05rem}.omnisim-meta-copy small{font-size:.69rem}.omnisim-meta-action{justify-content:stretch!important}body.frozen-battle-page .omnisim-meta-action #exploreMetaBtn{min-width:0!important;min-height:58px!important}
  .omnisim-footer{flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;min-height:68px;padding:10px 15px;font-size:.47rem;letter-spacing:.19em}
}
@media(max-width:430px){
  .omnisim-search{width:calc(100% - 92px)}.omnisim-wordmark{font-size:.82rem}.omnisim-nav-links a{font-size:.62rem}
  .omnisim-run-score-row{gap:6px!important}.omnisim-run-count{padding:4px 6px!important}.omnisim-runs-label{font-size:.62rem}.omnisim-run-step{width:36px!important}.omnisim-sim-actions{grid-template-columns:1fr 96px}.omnisim-gen-control{padding:0 6px!important}.omnisim-optimizer-action{padding:19px 15px 16px!important}.omnisim-lead-row{gap:5px}.omnisim-lead-hero{width:65px}.omnisim-lead-hero img{width:60px;height:60px}.omnisim-ratio-line{gap:4px}.omnisim-ratio-part img{display:none}.omnisim-meta-copy{align-items:flex-start}.omnisim-meta-compass{width:54px;height:54px;flex-basis:54px}
}
@media(prefers-reduced-motion:reduce){body.frozen-battle-page *{scroll-behavior:auto!important}.omnisim-optimizer-action,.omnisim-optimizer-action::before,.omnisim-run-heading,.omnisim-toggle-item .rail-joiner-switch,.omnisim-toggle-item .rail-joiner-switch::after{transition:none!important}}
/* ID-specific override for the legacy primary fight-button rule. The same canonical
   #multiFightBtn remains the protected Battle trigger; only its presentation changes. */
body.frozen-battle-page .omnisim-simulation-console #multiFightBtn.omnisim-run-heading{
  position:relative!important;inset:auto!important;left:auto!important;top:auto!important;transform:none!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;
  width:auto!important;height:auto!important;min-height:46px!important;margin:0!important;padding:0 6px!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  color:#f4fbff!important;font:700 clamp(1.75rem,1.8vw,2.25rem)/1 var(--omni-display)!important;
  letter-spacing:0!important;text-transform:none!important;text-shadow:0 2px 18px rgba(0,0,0,.45),0 0 18px rgba(86,203,255,.18)!important;
}
body.frozen-battle-page .omnisim-simulation-console #multiFightBtn.omnisim-run-heading:hover,
body.frozen-battle-page .omnisim-simulation-console #multiFightBtn.omnisim-run-heading:focus-visible{
  transform:translateY(-1px)!important;filter:none!important;color:#fff!important;background:transparent!important;
  text-shadow:0 0 14px rgba(92,217,255,.54),0 2px 18px rgba(0,0,0,.45)!important;
}

/* 2048×1145 reference-canvas fidelity pass. The shared Frozen Tundra shell caps
   feature roots at 1510px, so OmniSIM deliberately breaks that Battle-only cap. */
body.frozen-shell-page.frozen-battle-page main.command-hub.omnisim-workspace{
  width:calc(100vw - 88px)!important;max-width:1960px!important;
}
@media(min-width:1721px){
  .omnisim-page-head{
    grid-template-columns:160px minmax(500px,1fr) minmax(950px,985px);
    min-height:225px;gap:24px;padding:28px 0 18px;
  }
  .omnisim-top-controls{grid-template-columns:minmax(535px,1.28fr) minmax(395px,1fr);gap:16px}
  .omnisim-battle-main{grid-template-columns:minmax(0,.72fr) minmax(0,1.04fr) minmax(0,.72fr)!important;gap:16px!important}
  body.frozen-battle-page .omnisim-simulation-console{min-height:460px!important}
  body.frozen-battle-page .omnisim-optimizer-action{min-height:382px!important;padding:29px 30px 23px!important}
  .omnisim-formation-body{min-height:274px}
  .omnisim-lead-row{min-height:133px;gap:12px}
  .omnisim-lead-hero{width:96px;grid-template-rows:90px auto}.omnisim-lead-hero img{width:88px;height:88px}.omnisim-lead-hero b{font-size:.72rem}
  .omnisim-optimizer-title b{font-size:2rem!important}
}
.omnisim-workspace::before{
  content:"";position:absolute;z-index:-1;left:50%;top:0;transform:translateX(-50%);width:100vw;height:1120px;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(3,21,38,.30) 0%,rgba(3,21,38,.18) 33%,rgba(2,16,29,.68) 76%,rgba(2,14,26,.95) 100%),
    url('/static/image/fdt/FDT-squad-architect-header.webp') center 4px/100% 455px no-repeat;
  opacity:.58;filter:saturate(.74) brightness(.75) contrast(1.08);
}
body.frozen-battle-page #battleBackground{opacity:.34!important;object-position:74% 38%!important;filter:saturate(.68) brightness(.37) contrast(1.12) hue-rotate(-4deg)!important}

/* Match the reference header scale/spacing more closely on large desktops. */
@media(min-width:1721px){
  .omnisim-wordmark{font-size:1.48rem;letter-spacing:.34em}
  .omnisim-nav-links{gap:38px}
  .omnisim-nav-links a{font-size:.88rem}
  .omnisim-search{width:min(490px,29vw);height:44px}.omnisim-search input{font-size:.82rem!important}
  .omnisim-compass-nav{width:54px;height:54px}
}

/* Reference artwork: mountains in the clash and Meta bands. */
.omnisim-simulation-hero{
  background:
    linear-gradient(180deg,rgba(12,55,88,.20),rgba(4,31,53,.52)),
    url('/static/image/fdt/FDT-squad-architect-header.webp') center 48%/cover no-repeat;
}
.omnisim-meta-strip{
  background:
    linear-gradient(90deg,rgba(4,28,47,.93) 0%,rgba(6,42,69,.80) 55%,rgba(5,33,55,.65) 100%),
    url('/static/image/fdt/FDT-squad-architect-header.webp') center 48%/cover no-repeat;
}

/* The legacy fight button used flex-direction:column. OmniSIM is one compact title/action. */
body.frozen-battle-page .omnisim-simulation-console #multiFightBtn.omnisim-run-heading{flex-direction:row!important;gap:10px!important}
.omnisim-run-icon{font-size:.92rem!important}

/* Before the first run, the mockup intentionally shows an even red/blue track. */
.omnisim-percent-area .multi-red:not(.battle-compat-width),
.omnisim-percent-area .multi-blue:not(.battle-compat-width){width:50%!important}
@media(min-width:1721px){
  body.frozen-shell-page.frozen-battle-page main.command-hub.omnisim-workspace{
    min-width:min(1960px,calc(100vw - 88px))!important;
  }
}
/* Scenic correction: keep the full-page atmosphere architectural/mountainous rather than
   letting character artwork dominate the command surface. */
.omnisim-workspace::before{
  background:
    linear-gradient(180deg,rgba(3,21,38,.28) 0%,rgba(3,21,38,.16) 34%,rgba(2,16,29,.68) 76%,rgba(2,14,26,.95) 100%),
    url('/static/image/FDT-background-photo.webp') 72% 4%/cover no-repeat;
  opacity:.43;filter:saturate(.74) brightness(.58) contrast(1.08);
}
.omnisim-simulation-hero{
  background:
    linear-gradient(180deg,rgba(12,55,88,.23),rgba(4,31,53,.60)),
    url('/static/image/fdt/FDT-squad-architect-header.webp') left 48%/140% auto no-repeat;
}
.omnisim-meta-strip{
  background:
    linear-gradient(90deg,rgba(4,28,47,.92) 0%,rgba(6,42,69,.75) 54%,rgba(5,33,55,.64) 100%),
    url('/static/image/FDT-background-photo.webp') 72% 50%/cover no-repeat;
}
@media(min-width:1721px){
  .omnisim-toggle-item .rail-joiner-copy b{font-size:.92rem!important}
  .omnisim-toggle-icon{width:39px;height:39px}.omnisim-toggle-icon svg{width:34px;height:34px}
  .omnisim-meta-copy b{font-size:1.46rem}.omnisim-meta-copy small{font-size:.86rem;max-width:760px}
  .omnisim-meta-compass{width:92px;height:92px;flex-basis:92px}.omnisim-meta-compass .omnisim-compass{width:59px;height:59px}
  body.frozen-battle-page .omnisim-meta-action #exploreMetaBtn{min-width:365px!important;min-height:66px!important;font-size:1.02rem!important}
}
/* Reusable Meta results keep the secondary Recalculate action quiet and below the
   primary search button, preserving the screenshot's one-action visual hierarchy. */
.omnisim-meta-action .rail-meta-wrap{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:6px!important;align-items:center!important;width:100%!important;max-width:390px!important;margin:0!important}
body.frozen-battle-page .omnisim-meta-action .rail-meta-recalculate{justify-self:center!important;width:auto!important;min-height:30px!important;padding:4px 11px!important;border-radius:999px!important;font-size:.56rem!important;font-weight:800!important;box-shadow:none!important;opacity:.82!important}
.rail-meta-wrap.omnisim-meta-action{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:6px!important;align-items:center!important;width:100%!important;max-width:390px!important;margin:0!important}
/* Only the primary Meta Search control owns the explainer tooltip; hovering the
   quiet Recalculate result action must not open it. */
.rail-meta-wrap.omnisim-meta-action .rail-meta-tooltip{opacity:0!important;visibility:hidden!important}
.rail-meta-wrap.omnisim-meta-action:has(#exploreMetaBtn:hover) .rail-meta-tooltip,
.rail-meta-wrap.omnisim-meta-action:has(#exploreMetaBtn:focus) .rail-meta-tooltip{opacity:1!important;visibility:visible!important}
.rail-meta-wrap.omnisim-meta-action:has(#recalculateMetaBtn:hover) .rail-meta-tooltip{opacity:0!important;visibility:hidden!important}
.rail-meta-wrap.omnisim-meta-action:has(#recalculateMetaBtn:hover) .rail-meta-tooltip{transition:none!important;opacity:0!important;visibility:hidden!important}
/* Optimizer results reveal as a readable ranked stack directly beneath their large
   formation action. Empty placeholders stay invisible so the composition remains open. */
body.frozen-battle-page .optimizer-column .command-suggestions.optimizer-recs{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}
body.frozen-battle-page .optimizer-column .command-suggestions-empty{display:none!important}

/* ================================================================
   OmniSIM interaction refinement — mockup fidelity pass 2026-09-18
   ================================================================ */
/* Tooltip ownership: command actions use data-command-tip, while information
   controls use data-tip. Keep the same compact frosted tooltip language. */
body.frozen-battle-page [data-command-tip]::after{content:attr(data-command-tip)!important}

/* Run Battle remains the single canonical simulation trigger. Match the original
   mockup more closely with crossed swords plus the small play affordance. */
.omnisim-run-swords{
  display:inline-grid;place-items:center;width:28px;height:28px;flex:0 0 28px;
  color:#dff6ff;font-size:1.25rem;line-height:1;
  filter:drop-shadow(0 0 8px rgba(77,202,255,.62));
}
.omnisim-run-icon{font-size:.72rem!important;margin-left:2px;color:#bfeaff!important;opacity:.92}

/* The mockup gives Swap Armies a deliberately secondary footprint. The real
   OCR reader now sits beside it in the main console instead of being buried in
   Search Settings. */
.omnisim-sim-actions{
  grid-template-columns:minmax(104px,118px) minmax(265px,1fr) minmax(92px,104px)!important;
  gap:10px!important;align-items:stretch!important;margin-bottom:10px!important;
}
body.frozen-battle-page .omnisim-swap-host .battle-utility-btn.swap{
  width:100%!important;height:49px!important;min-height:49px!important;padding:0 10px!important;
  gap:7px!important;font-size:.66rem!important;
}
.omnisim-swap-host .battle-utility-btn.swap span{font-size:1.05rem!important}
.omnisim-swap-host .battle-utility-btn.swap b{font-size:.67rem!important;letter-spacing:.01em}

.omnisim-reader-host{position:relative;min-width:0;height:49px}
body.frozen-battle-page .omnisim-reader-host .battle-reader-launch{
  position:relative!important;display:block!important;height:49px!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;
}
body.frozen-battle-page .omnisim-reader-host .battle-reader-launch::before,
body.frozen-battle-page .omnisim-reader-host .battle-reader-launch-copy{display:none!important}
body.frozen-battle-page .omnisim-reader-host .battle-utility-btn.reader{
  position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;
  gap:9px!important;width:100%!important;height:49px!important;min-height:49px!important;margin:0!important;padding:0 16px!important;
  border:1px solid rgba(78,181,235,.63)!important;border-radius:7px!important;
  background:linear-gradient(180deg,rgba(13,77,118,.90),rgba(6,47,78,.93))!important;
  color:#e2f7ff!important;box-shadow:inset 0 0 18px rgba(65,176,227,.09),0 0 14px rgba(36,160,222,.08)!important;
  font:760 .72rem/1 var(--omni-ui)!important;white-space:nowrap!important;
}
body.frozen-battle-page .omnisim-reader-host .battle-utility-btn.reader:hover,
body.frozen-battle-page .omnisim-reader-host .battle-utility-btn.reader:focus-visible{
  border-color:rgba(91,213,255,.88)!important;background:linear-gradient(180deg,rgba(18,101,151,.94),rgba(8,60,96,.96))!important;
  box-shadow:inset 0 0 22px rgba(96,207,255,.13),0 0 16px rgba(44,190,247,.18)!important;outline:none!important;
}
.omnisim-reader-host .battle-reader-icon{color:#dff7ff!important;font-size:1rem!important}
.omnisim-reader-host .battle-reader-help,.omnisim-report-help{
  display:inline-grid!important;place-items:center!important;width:18px!important;height:18px!important;flex:0 0 18px!important;
  border:1px solid rgba(165,225,250,.76)!important;border-radius:50%!important;color:#e8f9ff!important;
  font:800 .62rem/1 var(--omni-ui)!important;background:rgba(3,25,43,.54)!important;
}
body.frozen-battle-page .omnisim-reader-host .battle-reader-status{
  position:absolute!important;z-index:1000!important;left:0!important;top:calc(100% + 5px)!important;
  width:max-content!important;max-width:min(440px,80vw)!important;min-height:0!important;margin:0!important;padding:0!important;
  color:#9fc2d4!important;background:transparent!important;font-size:.60rem!important;text-align:left!important;pointer-events:none!important;
}
body.frozen-battle-page .omnisim-reader-host .battle-reader-status:not(:empty){
  padding:5px 8px!important;border:1px solid rgba(71,154,205,.34)!important;border-radius:6px!important;
  background:rgba(3,22,39,.94)!important;box-shadow:0 6px 18px rgba(0,0,0,.28)!important;
}

/* This is the simulated/example report generated by OmniSIM, not the live-game
   OCR reader above. Keep it visually secondary but immediately discoverable. */
body.frozen-battle-page .omnisim-report-open{position:relative!important}
.omnisim-report-open .omnisim-report-help{margin-left:2px}

/* Reference-accurate optimizer toggles: one horizontal row, icon + label +
   information mark together, with the switch anchored at the far right. */
.omnisim-toggle-strip{
  min-height:88px!important;margin-top:28px!important;border-radius:9px!important;
  background:linear-gradient(180deg,rgba(5,35,57,.88),rgba(4,26,45,.91))!important;
  border-color:rgba(73,157,211,.34)!important;
}
body.frozen-battle-page .omnisim-toggle-item{
  display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:13px!important;
  min-height:88px!important;padding:0 clamp(18px,1.9vw,35px)!important;
}
body.frozen-battle-page .omnisim-toggle-item .omnisim-toggle-icon{order:1;flex:0 0 39px;width:39px!important;height:39px!important}
body.frozen-battle-page .omnisim-toggle-item .omnisim-toggle-icon svg{width:35px!important;height:35px!important;stroke-width:1.8!important}
body.frozen-battle-page .omnisim-toggle-item .rail-joiner-copy{
  order:2!important;display:block!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;
  align-self:center!important;text-align:left!important;transform:none!important;
}
body.frozen-battle-page .omnisim-toggle-item .rail-joiner-copy b{
  display:block!important;margin:0!important;color:#e7f6fd!important;font-size:.94rem!important;line-height:1.1!important;
  font-weight:760!important;white-space:nowrap!important;text-align:left!important;
}
body.frozen-battle-page .omnisim-toggle-item::after{
  content:"!"!important;order:3;position:static!important;display:grid!important;place-items:center!important;
  width:19px!important;height:19px!important;flex:0 0 19px!important;max-width:none!important;margin:0!important;padding:0!important;
  border:1px solid rgba(164,222,248,.74)!important;border-radius:50%!important;background:rgba(4,27,46,.68)!important;
  color:#e3f6ff!important;box-shadow:none!important;font:800 .62rem/1 var(--omni-ui)!important;
  opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:none!important;text-align:center!important;
}
body.frozen-battle-page .omnisim-toggle-item .rail-joiner-switch{
  order:4!important;flex:0 0 56px!important;width:56px!important;height:32px!important;margin-left:auto!important;
  border-radius:18px!important;
}
body.frozen-battle-page .omnisim-toggle-item .rail-joiner-switch::after{width:24px!important;height:24px!important;left:3px!important;top:3px!important}
body.frozen-battle-page .omnisim-toggle-item input:checked+.rail-joiner-switch::after{transform:translateX(24px)!important}
/* The explanatory tooltip itself remains attached to the entire toggle and is
   revealed by hovering/focusing the item, including the visible ! mark. */
.omnisim-toggle-item[data-tip]::before{bottom:calc(100% + 10px)!important;width:min(320px,80vw)!important}

@media(max-width:900px){
  .omnisim-sim-actions{grid-template-columns:104px 1fr 92px!important}
  body.frozen-battle-page .omnisim-toggle-item{padding:0 18px!important}
  body.frozen-battle-page .omnisim-toggle-item .rail-joiner-copy b{font-size:.83rem!important}
}
@media(max-width:620px){
  .omnisim-sim-actions{grid-template-columns:92px 1fr!important}
  .omnisim-gen-control{grid-column:1/-1!important}
  .omnisim-toggle-strip{grid-template-columns:1fr!important}
  body.frozen-battle-page .omnisim-toggle-item{min-height:72px!important}
}

/* ================================================================
   OmniSIM refinement — real navigation + tundra scenic set
   ================================================================ */
/* The first mockup pass copied placeholder sections/search that do not exist as
   OmniWOS product navigation. Keep the visual language, but expose only real
   Battle-page destinations/actions from the existing shared shell. */
.omnisim-current-section{
  display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 16px;
  border:1px solid rgba(54,152,220,.54);border-radius:8px;
  background:linear-gradient(180deg,rgba(13,62,101,.62),rgba(7,44,75,.72));
  box-shadow:inset 0 0 18px rgba(32,139,210,.14),0 0 20px rgba(31,134,202,.08);
  color:#e5f6ff;text-decoration:none;font-size:.78rem;font-weight:760;white-space:nowrap;
}
.omnisim-real-actions{display:flex;align-items:center;gap:28px;min-width:max-content}
body.frozen-battle-page .omnisim-top-action{
  position:relative;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  min-width:0!important;width:auto!important;height:42px!important;min-height:42px!important;margin:0!important;padding:0 2px!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  color:#aec8d9!important;-webkit-text-fill-color:#aec8d9!important;text-decoration:none!important;
  font:760 .78rem/1 var(--omni-ui)!important;white-space:nowrap!important;cursor:pointer!important;
}
body.frozen-battle-page .omnisim-top-action:hover,body.frozen-battle-page .omnisim-top-action:focus-visible{
  color:#effaff!important;-webkit-text-fill-color:#effaff!important;text-shadow:0 0 12px rgba(74,196,255,.35)!important;outline:none!important;
}
body.frozen-battle-page .omnisim-top-action+.omnisim-top-action::before,
body.frozen-battle-page .omnisim-real-actions .omnisim-account-orb::before{
  content:"";position:absolute;left:-14px;width:1px;height:27px;background:linear-gradient(180deg,transparent,rgba(96,181,228,.46),transparent);
}
body.frozen-battle-page .omnisim-real-actions .omnisim-account-orb{position:relative!important}
body.frozen-battle-page .omnisim-login-action{padding:0 8px!important}

/* Purpose-built local OmniSIM scenic derivatives: one visual family rather than
   unrelated static-folder photos. */
body.frozen-battle-page #battleBackground{
  object-position:50% 47%!important;opacity:.96!important;
  filter:saturate(.90) brightness(.76) contrast(1.08)!important;transform:scale(1.025)!important;
}
.omnisim-workspace::before{
  background:
    linear-gradient(180deg,rgba(2,18,33,.22) 0%,rgba(2,18,33,.14) 34%,rgba(1,13,25,.65) 76%,rgba(1,12,23,.94) 100%),
    url('/static/image/omnisim/tundra-page-ai.png') center top/cover no-repeat!important;
  opacity:.48!important;filter:saturate(.92) brightness(.82) contrast(1.06)!important;
}
body.frozen-battle-page .omnisim-optimizer-action.att::before{
  background-image:url('/static/image/omnisim/tundra-attacker-ai.webp')!important;background-position:50% 52%!important;
  filter:saturate(.96) contrast(1.08) brightness(.82)!important;
}
body.frozen-battle-page .omnisim-optimizer-action.def::before{
  background-image:url('/static/image/omnisim/tundra-defender-ai.webp')!important;background-position:66% 48%!important;
  filter:saturate(.95) contrast(1.08) brightness(.84)!important;
}
.omnisim-simulation-hero{
  background:
    linear-gradient(180deg,rgba(10,48,79,.18),rgba(3,27,47,.56)),
    url('/static/image/omnisim/tundra-run-ai.webp') center 52%/cover no-repeat!important;
}
.omnisim-meta-strip{
  background:
    linear-gradient(90deg,rgba(4,28,47,.94) 0%,rgba(5,40,66,.75) 52%,rgba(4,31,53,.58) 100%),
    url('/static/image/omnisim/tundra-run-ai.webp') center 50%/cover no-repeat!important;
}

/* Run Battle: only the play mark remains, and it is deliberately text-scale. */
.omnisim-run-swords{display:none!important}
body.frozen-battle-page .omnisim-simulation-console #multiFightBtn.omnisim-run-heading{gap:12px!important}
body.frozen-battle-page .omnisim-run-icon{
  display:inline-grid!important;place-items:center!important;flex:0 0 auto!important;margin:0!important;
  color:#e6f8ff!important;font-size:1em!important;line-height:1!important;opacity:1!important;
  filter:drop-shadow(0 0 9px rgba(66,201,255,.72))!important;
}

/* Information glyphs use the same i convention everywhere. */
.omnisim-reader-host .battle-reader-help,.omnisim-report-help{font-style:normal!important;text-transform:none!important}
body.frozen-battle-page .omnisim-toggle-item::after{content:"i"!important;font-style:normal!important;text-transform:none!important}

@media(max-width:900px){
  .omnisim-real-actions{gap:18px}.omnisim-current-section{display:none}.omnisim-nav-separator{margin-right:15px}
}
@media(max-width:620px){
  body.frozen-battle-page .omnisim-topbar{height:auto;min-height:72px;padding:10px 14px;flex-wrap:wrap;row-gap:6px}
  .omnisim-real-actions{gap:14px;margin-left:auto}.omnisim-wordmark{font-size:.88rem}.omnisim-compass-nav{width:42px;height:42px}
  body.frozen-battle-page .omnisim-top-action{font-size:.67rem!important}
}


/* AI-generated OmniSIM asset pass: icon imagery and Frozen Tundra scenic art. */
.omnisim-compass-asset{object-fit:contain;display:block;filter:drop-shadow(0 0 10px rgba(100,217,255,.30))}
.omnisim-account-compass{width:34px;height:34px}
.omnisim-compass-nav.omnisim-compass-asset{width:49px;height:49px}
.omnisim-compass-hero.omnisim-compass-asset{width:72px;height:72px;margin-bottom:2px}
.omnisim-meta-strip{align-items:center!important}
.omnisim-meta-copy{align-items:center!important;gap:18px!important}
.omnisim-meta-hero{position:relative;display:block;flex:0 0 126px;width:126px;height:88px;border:1px solid rgba(88,176,227,.46);border-radius:18px;overflow:hidden;box-shadow:0 18px 42px rgba(0,11,22,.32), inset 0 0 0 1px rgba(200,240,255,.06)}
.omnisim-meta-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(4,31,53,.12),rgba(4,31,53,.02) 36%,rgba(115,204,255,.08) 100%);pointer-events:none}
.omnisim-meta-hero img{width:100%;height:100%;object-fit:cover;object-position:center 22%}
.omnisim-meta-copy-text{display:grid;gap:8px;min-width:0}
.omnisim-meta-copy b{font-size:1.68rem!important;line-height:1.05!important}
.omnisim-meta-copy small{font-size:.97rem!important;line-height:1.45!important;max-width:840px!important;color:#d6ebf5!important}
/* Fine tune scenic crops/filters for the generated art set. */
body.frozen-battle-page #battleBackground{object-position:53% 34%!important;opacity:.98!important;filter:saturate(.92) brightness(.72) contrast(1.05)!important;transform:scale(1.018)!important}
.omnisim-workspace::before{opacity:.41!important;filter:saturate(.94) brightness(.76) contrast(1.03)!important}
body.frozen-battle-page .omnisim-optimizer-action.att::before{background-position:50% 50%!important;filter:saturate(.95) contrast(1.02) brightness(.88)!important}
body.frozen-battle-page .omnisim-optimizer-action.def::before{background-position:62% 50%!important;filter:saturate(.96) contrast(1.02) brightness(.88)!important}
.omnisim-simulation-hero{background:linear-gradient(180deg,rgba(8,45,74,.22),rgba(3,27,47,.66)),url('/static/image/omnisim/tundra-run-ai.webp') center 55%/cover no-repeat!important}
.omnisim-meta-strip{background:linear-gradient(90deg,rgba(4,28,47,.94) 0%,rgba(7,41,68,.72) 52%,rgba(4,31,53,.55) 100%), url('/static/image/jeronimo-golden-banner.jpg') center 24%/cover no-repeat!important}
@media(max-width:760px){.omnisim-meta-hero{flex-basis:96px;width:96px;height:72px}.omnisim-meta-copy b{font-size:1.28rem!important}.omnisim-meta-copy small{font-size:.80rem!important}}

/* ===== OmniSIM detailed refinement pass from user spec ===== */
body.frozen-battle-page{
  --omni-ui:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --omni-display:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body.frozen-battle-page,
body.frozen-battle-page *:not(svg):not(path):not(img){font-family:var(--omni-ui)!important}

/* Brighter AI frozen-tundra page background, remove dim page overlays. */
body.frozen-battle-page::before,
body.frozen-battle-page::after{background:none!important;opacity:0!important}
body.frozen-battle-page .bg-overlay{display:none!important}
body.frozen-battle-page #battleBackground{
  object-position:50% 48%!important;
  opacity:1!important;
  filter:saturate(1.06) brightness(.97) contrast(1.02)!important;
  transform:scale(1.01)!important;
}
.omnisim-workspace::before{
  background:linear-gradient(180deg,rgba(2,15,28,.02) 0%,rgba(2,15,28,.05) 62%,rgba(2,12,24,.10) 100%),url('/static/image/omnisim/tundra-page-ai-v2.png') center 46%/cover no-repeat!important;
  opacity:.10!important;
  filter:none!important;
}

/* Animated radiating OmniWOS symbol. */
.omnisim-compass-asset{filter:drop-shadow(0 0 6px rgba(136,224,255,.24));animation:omniCompassPulse 2.8s ease-in-out infinite!important}
@keyframes omniCompassPulse{0%,100%{filter:drop-shadow(0 0 6px rgba(136,224,255,.24)) drop-shadow(0 0 12px rgba(84,190,255,.16))}50%{filter:drop-shadow(0 0 12px rgba(173,238,255,.56)) drop-shadow(0 0 26px rgba(84,190,255,.38))}}

/* Presentation control stacked like Battle Context. */
body.frozen-battle-page .battle-setup-view-switch{display:block!important}
body.frozen-battle-page .battle-setup-view-actions{display:grid!important;width:100%!important;gap:0!important;margin-top:10px!important}

/* Dedicated custom tooltips, not browser title tooltips. */
.omnisim-inline-help{display:inline-grid!important;place-items:center!important;flex:0 0 auto!important;margin-left:8px!important;cursor:pointer!important}
.omnisim-toggle-item .omnisim-inline-help{margin-left:auto!important}
.omnisim-info[data-tip],.omnisim-inline-help[data-tip],[data-command-tip]{position:relative!important}
.omnisim-info[data-tip]::after,.omnisim-inline-help[data-tip]::after,[data-command-tip]::after{
  content:attr(data-tip)!important;
  position:absolute!important;
  left:50%!important;bottom:calc(100% + 10px)!important;transform:translate(-50%,6px)!important;
  z-index:100001!important;min-width:180px!important;max-width:min(340px,84vw)!important;
  padding:10px 12px!important;border-radius:10px!important;border:1px solid rgba(96,183,237,.72)!important;
  background:linear-gradient(180deg,rgba(5,24,43,.98),rgba(3,18,33,.98))!important;color:#eaf8ff!important;
  box-shadow:0 14px 36px rgba(0,0,0,.38),0 0 22px rgba(57,180,255,.10)!important;
  font:600 .72rem/1.42 var(--omni-ui)!important;text-transform:none!important;letter-spacing:0!important;text-align:left!important;white-space:normal!important;
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .14s ease,transform .14s ease,visibility .14s ease!important;
}
.omnisim-info[data-tip]:hover::after,.omnisim-info[data-tip]:focus-visible::after,
.omnisim-inline-help[data-tip]:hover::after,.omnisim-inline-help[data-tip]:focus-visible::after,
[data-command-tip]:hover::after,[data-command-tip]:focus-visible::after{opacity:1!important;visibility:visible!important;transform:translate(-50%,0)!important}
.omnisim-runs-label .omnisim-info[data-tip]::after{left:0!important;transform:translate(0,6px)!important}
.omnisim-runs-label .omnisim-info[data-tip]:hover::after,.omnisim-runs-label .omnisim-info[data-tip]:focus-visible::after{transform:translate(0,0)!important}
body.frozen-battle-page .omnisim-simulation-console,
body.frozen-battle-page .omnisim-sim-actions,
body.frozen-battle-page .omnisim-run-score-row,
body.frozen-battle-page .omnisim-run-count,
body.frozen-battle-page .omnisim-reader-host,
body.frozen-battle-page .omnisim-swap-host{overflow:visible!important}

/* Attacker/defender cards: dimmer backgrounds, animated border glow only, no flying square. */
body.frozen-battle-page .omnisim-optimizer-action{overflow:hidden!important;transition:box-shadow .22s ease,transform .18s ease!important}
body.frozen-battle-page .omnisim-optimizer-action::before{transition:none!important;transform:none!important}
body.frozen-battle-page .omnisim-optimizer-action.att::before{background-image:url('/static/image/omnisim/tundra-attacker-ai.webp')!important;background-position:50% 50%!important;filter:saturate(.78) brightness(.42) contrast(1.02)!important}
body.frozen-battle-page .omnisim-optimizer-action.def::before{background-image:url('/static/image/omnisim/tundra-defender-ai.webp')!important;background-position:58% 50%!important;filter:saturate(.78) brightness(.42) contrast(1.02)!important}
body.frozen-battle-page .omnisim-optimizer-action.att::after{background:linear-gradient(180deg,rgba(31,5,12,.60),rgba(31,5,12,.66))!important}
body.frozen-battle-page .omnisim-optimizer-action.def::after{background:linear-gradient(180deg,rgba(4,24,41,.60),rgba(4,24,41,.66))!important}
body.frozen-battle-page .omnisim-optimizer-action:hover{transform:translateY(-1px)!important;filter:none!important}
body.frozen-battle-page .omnisim-optimizer-action:hover::before{transform:none!important}
body.frozen-battle-page .omnisim-optimizer-action.att:hover{animation:omniCardGlowRed 1.6s ease-in-out infinite!important}
body.frozen-battle-page .omnisim-optimizer-action.def:hover{animation:omniCardGlowBlue 1.6s ease-in-out infinite!important}
@keyframes omniCardGlowRed{0%,100%{box-shadow:0 0 0 1px rgba(255,92,116,.66),0 0 10px rgba(255,82,111,.18),0 18px 50px rgba(0,6,14,.34)}50%{box-shadow:0 0 0 1px rgba(255,92,116,.86),0 0 20px rgba(255,82,111,.30),0 18px 58px rgba(0,6,14,.38)}}
@keyframes omniCardGlowBlue{0%,100%{box-shadow:0 0 0 1px rgba(74,188,255,.68),0 0 10px rgba(74,188,255,.18),0 18px 50px rgba(0,6,14,.34)}50%{box-shadow:0 0 0 1px rgba(74,188,255,.88),0 0 20px rgba(74,188,255,.30),0 18px 58px rgba(0,6,14,.38)}}

/* Clear cancel overlay. */
body.frozen-battle-page .omnisim-optimizer-action.optimizer-cancel-state{filter:brightness(.48) saturate(.62)!important}
body.frozen-battle-page .omnisim-optimizer-action.optimizer-cancel-state::after{content:'CANCEL'!important;position:absolute!important;inset:0!important;z-index:6!important;display:grid!important;place-items:center!important;background:rgba(3,10,18,.58)!important;color:#f5fbff!important;font:900 clamp(1.7rem,2vw,2.35rem)/1 var(--omni-ui)!important;letter-spacing:.14em!important;text-shadow:0 0 16px rgba(145,230,255,.25)!important}
body.frozen-battle-page .omnisim-optimizer-action.optimizer-cancel-state .omnisim-optimizer-title,
body.frozen-battle-page .omnisim-optimizer-action.optimizer-cancel-state .omnisim-optimizer-formation{opacity:.14!important}

/* Utility buttons + reader status auto-hide panel style. */
body.frozen-battle-page .omnisim-reader-host .battle-utility-btn.reader,
body.frozen-battle-page .omnisim-report-open,
body.frozen-battle-page .omnisim-swap-host .battle-utility-btn.swap,
body.frozen-battle-page .optimizer-default-actions button,
body.frozen-battle-page .omnisim-advanced-settings summary{border-radius:11px!important;border:1px solid rgba(82,178,239,.38)!important;background:linear-gradient(180deg,rgba(7,41,68,.96),rgba(4,26,44,.96))!important;color:#eff8ff!important;box-shadow:inset 0 0 18px rgba(34,130,189,.10)!important}
body.frozen-battle-page .omnisim-reader-host .battle-reader-status{display:block!important;margin-top:8px!important;padding:8px 10px!important;border-radius:9px!important;background:rgba(3,27,47,.78)!important;border:1px solid rgba(73,162,220,.35)!important;color:#d4ecf8!important}
body.frozen-battle-page .omnisim-reader-host .battle-reader-status[hidden]{display:none!important}

/* Search speed stays beside toggles and remains adjustable. */
.omnisim-toggle-strip{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.omnisim-speed-item{display:grid!important;grid-template-columns:auto 1fr!important;grid-template-areas:'icon copy' 'slider slider'!important;align-items:center!important;row-gap:8px!important}
.omnisim-speed-item .omnisim-toggle-icon{grid-area:icon!important}
.omnisim-speed-item .rail-joiner-copy{grid-area:copy!important;display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important}
.omnisim-speed-item input[type='range'],.omnisim-speed-item .command-speed-bar{grid-area:slider!important;width:100%!important;min-width:0!important}
.omnisim-speed-item .command-speed-bar{-webkit-appearance:none!important;appearance:none!important;height:8px!important;border-radius:999px!important;background:linear-gradient(90deg,#53c9ff 0%,#7fdfff 100%)!important;box-shadow:inset 0 0 0 1px rgba(177,228,251,.20), inset 0 0 10px rgba(2,16,26,.35)!important}
.omnisim-speed-item .command-speed-bar::-webkit-slider-thumb{-webkit-appearance:none!important;appearance:none!important;width:18px!important;height:18px!important;border-radius:50%!important;background:#f8fcff!important;border:3px solid #53c9ff!important;box-shadow:0 0 0 4px rgba(83,201,255,.18),0 4px 14px rgba(0,8,16,.30)!important}
.omnisim-speed-item .command-speed-bar::-moz-range-thumb{width:18px!important;height:18px!important;border-radius:50%!important;background:#f8fcff!important;border:3px solid #53c9ff!important;box-shadow:0 4px 14px rgba(0,8,16,.30)!important}

/* Meta section: more apparent background + different AI icon. */
.omnisim-meta-strip{background:linear-gradient(90deg,rgba(4,30,50,.46) 0%,rgba(10,55,86,.28) 54%,rgba(4,28,47,.22) 100%),url('/static/image/jeronimo-golden-banner.jpg') center 22%/cover no-repeat!important}
.omnisim-meta-copy b{font-size:1.95rem!important;font-weight:800!important}
.omnisim-meta-copy small{font-size:1.02rem!important;color:#d6ebf6!important;max-width:760px!important}
.omnisim-meta-hero{width:88px!important;height:88px!important;border-radius:24px!important;background:radial-gradient(circle at 50% 50%,rgba(111,218,255,.20),rgba(5,24,41,.06) 62%,transparent 68%)!important}
.omnisim-meta-hero img{width:100%!important;height:100%!important;object-fit:contain!important;padding:10px!important;filter:drop-shadow(0 0 14px rgba(94,205,255,.28))}

/* Proper telemetry bar across command width with text inside. */
.omnisim-progress{display:block!important;width:100%!important;margin:14px 0 0!important}
.omnisim-progress .command-progress{position:relative!important}
.omnisim-progress .optimizer-progress-track{position:relative!important;height:16px!important;border-radius:999px!important;background:rgba(3,21,37,.90)!important;border:1px solid rgba(71,159,216,.42)!important;box-shadow:inset 0 0 14px rgba(0,0,0,.30)!important;overflow:hidden!important}
.omnisim-progress .optimizer-progress-fill{height:100%!important;background:linear-gradient(90deg,#ff506a 0%,#ff9b6e 35%,#51c8ff 100%)!important;box-shadow:0 0 16px rgba(84,200,255,.24)!important}
.omnisim-progress .command-progress-copy{position:absolute!important;inset:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding:0 14px!important;color:#eef9ff!important;font-size:.72rem!important;font-weight:800!important;pointer-events:none!important}
.omnisim-progress .command-progress-copy span{color:#eef9ff!important;text-shadow:0 1px 6px rgba(0,0,0,.34)!important}

/* Quick Army Settings inside middle panel. */
.omnisim-advanced-settings{margin-top:12px!important;border:1px solid rgba(72,164,223,.34)!important;background:rgba(4,23,39,.66)!important;border-radius:12px!important}
.omnisim-advanced-settings > summary{list-style:none!important;padding:12px 14px!important;cursor:pointer!important}
.omnisim-advanced-settings > summary::-webkit-details-marker{display:none}
.omnisim-advanced-settings .command-army-fields{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.omnisim-advanced-settings .optimizer-default-actions{display:flex!important;gap:10px!important;margin-top:12px!important}
.omnisim-advanced-settings select,.omnisim-advanced-settings input,.omnisim-advanced-settings button{min-height:42px!important}

/* Ratio bars from minus button to thumb. */
.ratio-wrap .formation-stack{display:flex!important;height:14px!important;border-radius:999px!important;background:rgba(2,17,29,.88)!important;border:1px solid rgba(76,169,227,.32)!important;box-shadow:inset 0 0 11px rgba(0,0,0,.28)!important;overflow:hidden!important}
.ratio-wrap .formation-seg{height:100%!important}
.ratio-control.inf .ratio-slider{background:linear-gradient(90deg,#33c85f 0 var(--fill,0%),rgba(31,47,67,.56) var(--fill,0%) 100%)!important}
.ratio-control.lancer .ratio-slider{background:linear-gradient(90deg,#4d95ff 0 var(--fill,0%),rgba(31,47,67,.56) var(--fill,0%) 100%)!important}
.ratio-control.marksman .ratio-slider{background:linear-gradient(90deg,#ff5a66 0 var(--fill,0%),rgba(31,47,67,.56) var(--fill,0%) 100%)!important}
.ratio-slider{height:9px!important;border-radius:999px!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:inset 0 1px 8px rgba(0,0,0,.38)!important}
.ratio-slider::-webkit-slider-thumb{-webkit-appearance:none!important;appearance:none!important;width:8px!important;height:32px!important;border-radius:999px!important;background:#f7fbff!important;border:2px solid rgba(26,42,66,.45)!important;box-shadow:0 1px 5px rgba(0,0,0,.42),0 0 0 2px rgba(255,255,255,.10)!important;cursor:pointer!important}
.ratio-slider::-moz-range-thumb{width:8px!important;height:32px!important;border-radius:999px!important;background:#f7fbff!important;border:2px solid rgba(26,42,66,.45)!important;box-shadow:0 1px 5px rgba(0,0,0,.38)!important;cursor:pointer!important}

@media (max-width:1180px){
  .omnisim-toggle-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .omnisim-advanced-settings .command-army-fields{grid-template-columns:1fr!important}
}
.omnisim-info,.omnisim-inline-help{width:19px!important;height:19px!important;border-radius:50%!important;border:1px solid rgba(120,204,246,.44)!important;background:rgba(7,35,58,.88)!important;color:#dff6ff!important;font:800 .68rem/1 var(--omni-ui)!important;box-shadow:0 0 10px rgba(66,181,255,.08)!important}
.omnisim-info[data-tip]:focus::after,.omnisim-inline-help[data-tip]:focus::after,[data-command-tip]:focus::after,
.omnisim-info[data-tip]:active::after,.omnisim-inline-help[data-tip]:active::after,[data-command-tip]:active::after{opacity:1!important;visibility:visible!important;transform:translate(-50%,0)!important}

/* ===== OmniSIM corrective pass v5 ===== */
/* Slightly darken the bright mountain background so the upper-left identity remains readable. */
body.frozen-battle-page #battleBackground{
  opacity:1!important;
  filter:saturate(1.04) brightness(.82) contrast(1.03)!important;
}
.omnisim-title-block h1,.omnisim-title-block h2,.omnisim-title-block p,.omnisim-side-mark{
  text-shadow:0 2px 10px rgba(0,10,22,.72),0 0 22px rgba(0,20,38,.28)!important;
}

/* One font family across OmniSIM, army panels, controls, modals and reports. */
html body.frozen-battle-page.frozen-shell-page *{
  font-family:var(--omni-ui)!important;
}

/* Remove the inherited sweeping rectangle from .optimizer-side-action.
   Only the static dark overlay and animated border glow remain. */
body.frozen-battle-page .omnisim-optimizer-action::after{
  transform:none!important;
  transition:none!important;
  animation:none!important;
}
body.frozen-battle-page .omnisim-optimizer-action:hover::after{
  transform:none!important;
  transition:none!important;
  animation:none!important;
}
body.frozen-battle-page .omnisim-optimizer-action::before,
body.frozen-battle-page .omnisim-optimizer-action:hover::before{
  transform:none!important;
  transition:none!important;
  animation:none!important;
}

/* Ensure the optimizer-running state shows only the centered overlay, never a small plain Cancel label. */
body.frozen-battle-page .omnisim-optimizer-action.optimizer-cancel-state .omnisim-optimizer-title,
body.frozen-battle-page .omnisim-optimizer-action.optimizer-cancel-state .omnisim-optimizer-formation{
  opacity:.10!important;
}
body.frozen-battle-page .omnisim-optimizer-action.optimizer-cancel-state::after{
  content:'CANCEL'!important;
  transform:none!important;
  transition:none!important;
}

/* Exactly one custom tooltip affordance per optimizer control. */
body.frozen-battle-page .omnisim-toggle-item::before,
body.frozen-battle-page .omnisim-toggle-item::after,
body.frozen-battle-page .omnisim-toggle-item.command-control-tip::before,
body.frozen-battle-page .omnisim-toggle-item.command-control-tip::after{
  content:none!important;
  display:none!important;
}
body.frozen-battle-page .omnisim-toggle-item .omnisim-inline-help{
  display:inline-grid!important;
}

/* Make the real Search Speed range control visible and interactive inside the fifth tile. */
body.frozen-battle-page .omnisim-speed-item input.command-speed-bar{
  position:static!important;
  inset:auto!important;
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  width:100%!important;
  min-width:0!important;
  height:8px!important;
  margin:2px 0 0!important;
  grid-area:slider!important;
  cursor:pointer!important;
}
body.frozen-battle-page .omnisim-speed-item .rail-joiner-copy{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}

/* Full-width optimizer/meta telemetry. The text is inside the bar, never under the cards. */
body.frozen-battle-page .omnisim-progress.command-progress{
  position:relative!important;
  display:none!important;
  width:100%!important;
  max-width:none!important;
  min-height:28px!important;
  margin:14px 0 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  overflow:visible!important;
}
body.frozen-battle-page #battleRail.optimizer-running .omnisim-progress.command-progress,
body.frozen-battle-page #battleRail.meta-running .omnisim-progress.command-progress{
  display:block!important;
}
body.frozen-battle-page .omnisim-progress.command-progress .optimizer-progress-track{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:28px!important;
  margin:0!important;
  border-radius:999px!important;
  overflow:hidden!important;
  border:1px solid rgba(83,180,238,.48)!important;
  background:rgba(3,20,35,.92)!important;
  box-shadow:inset 0 0 16px rgba(0,0,0,.34),0 0 20px rgba(62,177,241,.08)!important;
}
body.frozen-battle-page .omnisim-progress.command-progress .optimizer-progress-fill{
  height:100%!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#ff506a 0%,#ff9a6b 34%,#4bc8ff 100%)!important;
  box-shadow:0 0 18px rgba(75,200,255,.26)!important;
}
body.frozen-battle-page .omnisim-progress.command-progress .command-progress-copy{
  position:absolute!important;
  inset:0!important;
  z-index:3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin:0!important;
  padding:0 16px!important;
  pointer-events:none!important;
}
body.frozen-battle-page .omnisim-progress.command-progress .command-progress-copy span{
  margin:0!important;
  color:#f3fbff!important;
  font-size:.72rem!important;
  font-weight:850!important;
  line-height:1!important;
  text-shadow:0 1px 6px rgba(0,0,0,.55)!important;
}

/* Ratio tracks show the troop-color fill up to the current thumb position. */
body.frozen-battle-page .ratio-control .ratio-slider{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:10px!important;
  padding:0!important;
  border:1px solid rgba(102,187,238,.16)!important;
  border-radius:999px!important;
  box-shadow:inset 0 1px 7px rgba(0,0,0,.42)!important;
}
body.frozen-battle-page .ratio-control.inf .ratio-slider{
  background:linear-gradient(90deg,#2fc65f 0 var(--fill,0%),rgba(18,42,60,.88) var(--fill,0%) 100%)!important;
}
body.frozen-battle-page .ratio-control.lancer .ratio-slider{
  background:linear-gradient(90deg,#4a92ff 0 var(--fill,0%),rgba(18,42,60,.88) var(--fill,0%) 100%)!important;
}
body.frozen-battle-page .ratio-control.marksman .ratio-slider{
  background:linear-gradient(90deg,#f34c5d 0 var(--fill,0%),rgba(18,42,60,.88) var(--fill,0%) 100%)!important;
}
body.frozen-battle-page .ratio-control .ratio-slider::-webkit-slider-thumb{
  -webkit-appearance:none!important;
  appearance:none!important;
  width:8px!important;
  height:34px!important;
  border-radius:999px!important;
  background:#f7fbff!important;
  border:2px solid var(--ratio-color)!important;
  box-shadow:0 1px 5px rgba(0,0,0,.42),0 0 0 2px color-mix(in srgb,var(--ratio-color) 28%,transparent)!important;
}
body.frozen-battle-page .ratio-control .ratio-slider::-moz-range-thumb{
  width:8px!important;
  height:34px!important;
  border-radius:999px!important;
  background:#f7fbff!important;
  border:2px solid var(--ratio-color)!important;
  box-shadow:0 1px 5px rgba(0,0,0,.38)!important;
}

@media(max-width:1180px){
  body.frozen-battle-page .omnisim-progress.command-progress .command-progress-copy span{font-size:.64rem!important}
}

/* ===== OmniSIM corrective pass v6 ===== */
/* Remove the second scrolling copy of the page background entirely. */
body.frozen-battle-page .omnisim-workspace::before{
  content:none!important;
  display:none!important;
  background:none!important;
  opacity:0!important;
}

/* Context cards must read Solo March on both sides in wilderness mode. */
body.frozen-battle-page .omnisim-role-pill{font-family:var(--omni-ui)!important}

/* Whole scenic Run Battle hero is the button. */
body.frozen-battle-page .omnisim-simulation-hero{
  position:relative!important;
  border-radius:12px 12px 0 0!important;
  overflow:hidden!important;
}
body.frozen-battle-page .omnisim-sim-kicker{
  position:absolute!important;
  top:41px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  z-index:4!important;
  pointer-events:none!important;
}
body.frozen-battle-page .omnisim-simulation-console #multiFightBtn.omnisim-run-heading{
  position:absolute!important;
  inset:0!important;
  z-index:3!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:30px 18px 0!important;
  justify-content:center!important;
  border:1px solid transparent!important;
  border-radius:12px 12px 0 0!important;
  background:transparent!important;
  cursor:pointer!important;
}
body.frozen-battle-page .omnisim-simulation-console{
  border-radius:12px!important;
}

/* Safe outline-only moving light. No translated rectangle crosses card interiors. */
@property --omni-trace-angle{syntax:'<angle>';inherits:false;initial-value:0deg}
.omnisim-border-tracer,.omnisim-run-border-tracer{
  position:absolute!important;
  inset:-1px!important;
  z-index:8!important;
  padding:2px!important;
  border-radius:inherit!important;
  opacity:0!important;
  pointer-events:none!important;
  background:conic-gradient(from var(--omni-trace-angle),transparent 0deg 298deg,rgba(255,255,255,.02) 307deg,var(--trace-color,#75d8ff) 330deg,rgba(255,255,255,.95) 340deg,transparent 360deg)!important;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;
  -webkit-mask-composite:xor!important;
  mask-composite:exclude!important;
}
.omnisim-border-tracer.att{--trace-color:#ff5069}
.omnisim-border-tracer.def{--trace-color:#33baff}
body.frozen-battle-page .omnisim-optimizer-action:hover .omnisim-border-tracer,
body.frozen-battle-page .omnisim-optimizer-action:focus-visible .omnisim-border-tracer,
body.frozen-battle-page .omnisim-run-heading:hover .omnisim-run-border-tracer,
body.frozen-battle-page .omnisim-run-heading:focus-visible .omnisim-run-border-tracer{
  opacity:1!important;
  animation:omniOutlineTravel 1.65s linear infinite!important;
}
.omnisim-run-border-tracer{--trace-color:#72d8ff;padding:2px!important}
@keyframes omniOutlineTravel{to{--omni-trace-angle:360deg}}

/* Sample report is owned only by its inner i tooltip. Remove any outer pseudo artifact/blob. */
body.frozen-battle-page .omnisim-report-open::before,
body.frozen-battle-page .omnisim-report-open::after,
body.frozen-battle-page .omnisim-reader-host .battle-utility-btn.reader::before,
body.frozen-battle-page .omnisim-reader-host .battle-utility-btn.reader::after{
  content:none!important;
  display:none!important;
}
body.frozen-battle-page .omnisim-report-open .omnisim-info,
body.frozen-battle-page .omnisim-reader-host .omnisim-info{pointer-events:auto!important}

/* Telemetry: deliberately solid, readable and smoothly animated to server-reported progress. */
body.frozen-battle-page .omnisim-progress.command-progress{
  min-height:34px!important;
  margin:15px 0 0!important;
  opacity:1!important;
}
body.frozen-battle-page .omnisim-progress.command-progress .optimizer-progress-track{
  height:34px!important;
  border:1px solid rgba(91,198,255,.82)!important;
  background:#061c2f!important;
  box-shadow:inset 0 0 18px rgba(0,0,0,.46),0 0 18px rgba(54,183,255,.18)!important;
}
body.frozen-battle-page .omnisim-progress.command-progress .optimizer-progress-fill{
  opacity:1!important;
  background:linear-gradient(90deg,#e83f58 0%,#ff7968 34%,#27bdfc 100%)!important;
  box-shadow:inset 0 0 12px rgba(255,255,255,.16),0 0 20px rgba(55,190,255,.32)!important;
  transition:width .42s linear!important;
}
body.frozen-battle-page .omnisim-progress.command-progress .command-progress-copy{
  padding:0 18px!important;
}
body.frozen-battle-page .omnisim-progress.command-progress .command-progress-copy span{
  color:#fff!important;
  font-size:.76rem!important;
  font-weight:900!important;
  text-shadow:0 1px 7px rgba(0,0,0,.82)!important;
}

/* Meta primary action centered in its allocated section. */
body.frozen-battle-page .omnisim-meta-action{
  justify-content:center!important;
  justify-self:center!important;
  width:100%!important;
}
body.frozen-battle-page .omnisim-meta-action .rail-meta-wrap{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Formation summary ratio readability. */
body.frozen-battle-page .omnisim-ratio-line{
  font-size:1.05rem!important;
  font-weight:900!important;
  gap:8px!important;
}
body.frozen-battle-page .omnisim-ratio-part b{font-size:1.05rem!important}
body.frozen-battle-page .omnisim-ratio-part img{width:24px!important;height:24px!important}

/* Strong explicit ratio fill; inline --fill from compatibility_shell.js is the source. */
body.frozen-battle-page .army-panel .ratio-control .ratio-slider{
  -webkit-appearance:none!important;
  appearance:none!important;
  background-color:#10283a!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%!important;
}
body.frozen-battle-page .army-panel .ratio-control.inf .ratio-slider{
  background-image:linear-gradient(90deg,#24c35b 0 var(--fill),#10283a var(--fill) 100%)!important;
}
body.frozen-battle-page .army-panel .ratio-control.lancer .ratio-slider{
  background-image:linear-gradient(90deg,#398dff 0 var(--fill),#10283a var(--fill) 100%)!important;
}
body.frozen-battle-page .army-panel .ratio-control.marksman .ratio-slider{
  background-image:linear-gradient(90deg,#ef4455 0 var(--fill),#10283a var(--fill) 100%)!important;
}

/* Re-emphasize active widgets with a visible gold flame/mote treatment. */
body.frozen-battle-page .widget-box-v4.widget-active-fx{
  position:relative!important;
  overflow:hidden!important;
  border-color:rgba(251,196,62,.58)!important;
  box-shadow:inset 0 -22px 38px rgba(245,158,11,.11),0 0 22px rgba(250,204,21,.13)!important;
}
body.frozen-battle-page .widget-box-v4.widget-active-fx::before{
  content:""!important;
  position:absolute!important;
  z-index:1!important;
  left:-8%!important;
  right:-8%!important;
  bottom:-24px!important;
  height:84px!important;
  pointer-events:none!important;
  background:radial-gradient(ellipse at 12% 100%,rgba(255,244,145,.80) 0 8%,rgba(255,165,27,.60) 18%,transparent 47%),radial-gradient(ellipse at 36% 102%,rgba(255,228,100,.78) 0 9%,rgba(255,126,20,.54) 21%,transparent 48%),radial-gradient(ellipse at 61% 100%,rgba(255,245,156,.76) 0 8%,rgba(255,158,28,.58) 20%,transparent 48%),radial-gradient(ellipse at 86% 104%,rgba(255,221,84,.76) 0 10%,rgba(246,110,17,.50) 22%,transparent 49%)!important;
  filter:blur(1.2px) saturate(1.35)!important;
  animation:widgetOmniFlame 1.15s ease-in-out infinite alternate!important;
}
body.frozen-battle-page .widget-box-v4.widget-active-fx .widget-particles{display:block!important;opacity:1!important}
@keyframes widgetOmniFlame{0%{transform:translateY(8px) scaleY(.80);opacity:.55}100%{transform:translateY(-4px) scaleY(1.12);opacity:.92}}

/* Stat modes use dedicated dark OmniSIM tooltips; remove permanent explanatory paragraph. */
body.frozen-battle-page .stat-mode-help{display:none!important}
body.frozen-battle-page .omnisim-stat-tip{position:relative!important}
body.frozen-battle-page .omnisim-stat-tip[data-tip]::after{
  content:attr(data-tip)!important;
  position:absolute!important;
  z-index:100100!important;
  left:50%!important;
  bottom:calc(100% + 9px)!important;
  width:280px!important;
  max-width:min(320px,80vw)!important;
  padding:10px 12px!important;
  border:1px solid rgba(96,183,237,.72)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,rgba(5,24,43,.985),rgba(3,18,33,.985))!important;
  color:#eaf8ff!important;
  box-shadow:0 14px 36px rgba(0,0,0,.38),0 0 22px rgba(57,180,255,.10)!important;
  font:700 .72rem/1.42 var(--omni-ui)!important;
  white-space:normal!important;
  text-align:left!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translate(-50%,6px)!important;
  transition:opacity .12s ease,transform .12s ease,visibility .12s ease!important;
}
body.frozen-battle-page .omnisim-stat-tip[data-tip]:hover::after,
body.frozen-battle-page .omnisim-stat-tip[data-tip]:focus-visible::after{
  opacity:1!important;
  visibility:visible!important;
  transform:translate(-50%,0)!important;
}

/* Explicitly override old book-font/serif declarations in the exact controls reported. */
body.frozen-battle-page .army-panel .stat-mode-btn,
body.frozen-battle-page .army-panel .formation-mode-toggle button,
body.frozen-battle-page .army-panel .mode-toggle button,
body.frozen-battle-page .battle-minimal-hero,
body.frozen-battle-page .battle-minimal-hero *,
body.frozen-battle-page .battle-minimal-portrait,
body.frozen-battle-page .battle-minimal-portrait b,
body.frozen-battle-page .battle-minimal-level,
body.frozen-battle-page .battle-minimal-ratio,
body.frozen-battle-page .army-panel .ratio-label,
body.frozen-battle-page .army-panel .ratio-value{
  font-family:var(--omni-ui)!important;
}

/* v6.1: browser-safe ratio fill. Use background-size instead of a var() color-stop,
   which some Chromium builds discard as an invalid background-image. */
body.frozen-battle-page .army-panel .ratio-control .ratio-slider{
  background-color:#10283a!important;
  background-position:left center!important;
  background-repeat:no-repeat!important;
  background-size:var(--fill,0%) 100%!important;
}
body.frozen-battle-page .army-panel .ratio-control.inf .ratio-slider{
  background-image:linear-gradient(#24c35b,#24c35b)!important;
}
body.frozen-battle-page .army-panel .ratio-control.lancer .ratio-slider{
  background-image:linear-gradient(#398dff,#398dff)!important;
}
body.frozen-battle-page .army-panel .ratio-control.marksman .ratio-slider{
  background-image:linear-gradient(#ef4455,#ef4455)!important;
}

/* v6.2: explicit visual fill layer for ratio controls. The native range remains the
   interactive hit target, while this sibling layer guarantees a visible fill in Chromium. */
body.frozen-battle-page .army-panel .ratio-slider-shell{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:34px!important;
  --ratio-track:#10283a;
}
body.frozen-battle-page .army-panel .ratio-slider-shell::before{
  content:""!important;
  position:absolute!important;
  z-index:0!important;
  left:0!important;right:0!important;top:50%!important;
  height:9px!important;
  transform:translateY(-50%)!important;
  border-radius:999px!important;
  background:var(--ratio-track)!important;
  border:1px solid rgba(129,194,230,.20)!important;
  box-shadow:inset 0 1px 7px rgba(0,0,0,.45)!important;
  pointer-events:none!important;
}
body.frozen-battle-page .army-panel .ratio-slider-fill{
  position:absolute!important;
  z-index:1!important;
  left:0!important;top:50%!important;
  width:var(--fill,0%)!important;
  height:9px!important;
  transform:translateY(-50%)!important;
  border-radius:999px!important;
  pointer-events:none!important;
  transition:width .12s linear!important;
}
body.frozen-battle-page .army-panel .ratio-control.inf .ratio-slider-fill{background:linear-gradient(90deg,#22b956,#50df7d)!important;box-shadow:0 0 8px rgba(44,205,100,.18)!important}
body.frozen-battle-page .army-panel .ratio-control.lancer .ratio-slider-fill{background:linear-gradient(90deg,#347de9,#61aeff)!important;box-shadow:0 0 8px rgba(70,145,255,.18)!important}
body.frozen-battle-page .army-panel .ratio-control.marksman .ratio-slider-fill{background:linear-gradient(90deg,#dc394a,#fa6676)!important;box-shadow:0 0 8px rgba(239,68,85,.18)!important}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider{
  position:absolute!important;
  z-index:2!important;
  inset:0!important;
  width:100%!important;
  height:34px!important;
  margin:0!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider::-webkit-slider-runnable-track{
  height:9px!important;background:transparent!important;border:0!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider::-moz-range-track{
  height:9px!important;background:transparent!important;border:0!important;
}

/* v6.2 telemetry: fully opaque with continuous activity shimmer between real progress updates. */
body.frozen-battle-page .omnisim-progress.command-progress .optimizer-progress-track{
  overflow:hidden!important;
  opacity:1!important;
}
body.frozen-battle-page .omnisim-progress.command-progress .optimizer-progress-fill{
  position:relative!important;
  opacity:1!important;
  transition:width .24s linear!important;
}
body.frozen-battle-page #battleRail:is(.optimizer-running,.meta-running) .omnisim-progress.command-progress .optimizer-progress-track::after{
  content:""!important;
  position:absolute!important;
  top:0!important;bottom:0!important;
  width:120px!important;
  left:-140px!important;
  z-index:3!important;
  pointer-events:none!important;
  background:linear-gradient(90deg,transparent,rgba(226,249,255,.16),rgba(255,255,255,.38),rgba(226,249,255,.12),transparent)!important;
  transform:skewX(-18deg)!important;
  animation:omniTelemetrySweep 1.55s linear infinite!important;
}
@keyframes omniTelemetrySweep{to{left:calc(100% + 140px)}}
body.frozen-battle-page .widget-box-v4.widget-active-fx .widget-particle{
  left:var(--x,50%)!important;
  animation:widgetGoldRise var(--dur,2.8s) ease-out infinite!important;
  animation-delay:var(--delay,0s)!important;
  opacity:0;
}

/* v6.2: center the actual Meta Search action in the full Meta strip, not merely
   inside the former right-hand action column. */
@media (min-width:761px){
  body.frozen-battle-page .omnisim-meta-strip{
    grid-template-columns:minmax(0,1fr) minmax(365px,390px) minmax(0,1fr)!important;
    column-gap:20px!important;
  }
  body.frozen-battle-page .omnisim-meta-copy{
    grid-column:1!important;
    min-width:0!important;
  }
  body.frozen-battle-page .omnisim-meta-action{
    grid-column:2!important;
    justify-self:stretch!important;
    justify-content:center!important;
    width:100%!important;
  }
}

/* v6.2: Search Speed is the fifth optimizer-control tile, but unlike the four
   switches it must keep a real, comfortably sized adjustable range underneath. */
body.frozen-battle-page .omnisim-toggle-strip .omnisim-speed-item{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  grid-template-rows:auto 22px!important;
  grid-template-areas:'icon copy' 'slider slider'!important;
  align-content:center!important;
  align-items:center!important;
  column-gap:12px!important;
  row-gap:8px!important;
  padding-top:10px!important;
  padding-bottom:10px!important;
}
body.frozen-battle-page .omnisim-speed-item .omnisim-toggle-icon{grid-area:icon!important;order:initial!important}
body.frozen-battle-page .omnisim-speed-item .rail-joiner-copy{
  grid-area:copy!important;
  order:initial!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
}
body.frozen-battle-page .omnisim-speed-item input.command-speed-bar{
  grid-area:slider!important;
  width:100%!important;
  max-width:none!important;
  min-width:150px!important;
  justify-self:stretch!important;
}

/* Browser-gate modal stacking correction: reports/pickers must sit above the OmniSIM top bar. */
body.frozen-battle-page .battle-report-modal{z-index:2147483000!important}
body.frozen-battle-page .loadout-modal{z-index:2147482900!important}

/* Keep invisible custom tooltip geometry inside the viewport so it never creates page overflow. */
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item:nth-last-child(-n+2) .omnisim-inline-help[data-tip]::after{
  left:auto!important;right:0!important;transform:translate(0,6px)!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item:nth-last-child(-n+2) .omnisim-inline-help[data-tip]:hover::after,
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item:nth-last-child(-n+2) .omnisim-inline-help[data-tip]:focus-visible::after,
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item:nth-last-child(-n+2) .omnisim-inline-help[data-tip]:focus::after,
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item:nth-last-child(-n+2) .omnisim-inline-help[data-tip]:active::after{
  transform:translate(0,0)!important;
}
body.frozen-battle-page #battleBackground{transform:none!important}

/* Light-theme parity for lower setup surfaces after OmniSIM specificity overrides. */
body.frozen-battle-page.light-theme #sidePanels :is(.hero-card,.troop-card,.dynamic-loadout,.profile-stats-panel,.battle-dynamic-disclosure){
  background:rgba(248,252,253,.96)!important;
  border-color:#bfd9e1!important;
  color:#183f4e!important;
  box-shadow:0 7px 20px rgba(44,91,106,.07)!important;
}

/* Keep the right-most lower-panel stat tooltip inside the viewport at compact desktop widths. */
body.frozen-battle-page #sidePanels .stat-mode-wrap .stat-mode-btn:last-child[data-tip]::after{
  left:auto!important;right:0!important;transform:translate(0,6px)!important;
}
body.frozen-battle-page #sidePanels .stat-mode-wrap .stat-mode-btn:last-child[data-tip]:hover::after,
body.frozen-battle-page #sidePanels .stat-mode-wrap .stat-mode-btn:last-child[data-tip]:focus-visible::after,
body.frozen-battle-page #sidePanels .stat-mode-wrap .stat-mode-btn:last-child[data-tip]:focus::after{
  transform:translate(0,0)!important;
}

/* Final mobile optimizer-control layout: one full-width tile per row. */
@media (max-width:620px){
  body.frozen-battle-page .omnisim-toggle-strip{grid-template-columns:minmax(0,1fr)!important}
  body.frozen-battle-page .omnisim-toggle-item{width:100%!important;min-width:0!important;box-sizing:border-box!important}
  body.frozen-battle-page .omnisim-toggle-item .rail-joiner-copy{min-width:0!important;flex:1 1 auto!important}
  body.frozen-battle-page .omnisim-toggle-item .rail-joiner-copy b{white-space:normal!important}
  body.frozen-battle-page .omnisim-toggle-item .rail-joiner-switch{flex:0 0 54px!important;width:54px!important}
}

/* Mobile/narrow viewport tooltip containment: anchor right-side help bubbles inward so
   their invisible geometry never widens document.scrollWidth. */
@media (max-width:620px){
  body.frozen-battle-page .omnisim-reader-host .omnisim-inline-help[data-tip]::after,
  body.frozen-battle-page .omnisim-report-open .omnisim-inline-help[data-tip]::after{
    left:auto!important;
    right:0!important;
    transform:translate(0,6px)!important;
  }
  body.frozen-battle-page .omnisim-reader-host .omnisim-inline-help[data-tip]:hover::after,
  body.frozen-battle-page .omnisim-reader-host .omnisim-inline-help[data-tip]:focus-visible::after,
  body.frozen-battle-page .omnisim-reader-host .omnisim-inline-help[data-tip]:focus::after,
  body.frozen-battle-page .omnisim-report-open .omnisim-inline-help[data-tip]:hover::after,
  body.frozen-battle-page .omnisim-report-open .omnisim-inline-help[data-tip]:focus-visible::after,
  body.frozen-battle-page .omnisim-report-open .omnisim-inline-help[data-tip]:focus::after{
    transform:translate(0,0)!important;
  }
}

/* Final narrow tooltip geometry: keep every hidden tooltip box inside the viewport so
   opacity:0 tooltips cannot contribute to body.scrollWidth. */
@media (max-width:620px){
  body.frozen-battle-page .omnisim-info[data-tip]::after,
  body.frozen-battle-page .omnisim-inline-help[data-tip]::after,
  body.frozen-battle-page [data-command-tip]::after,
  body.frozen-battle-page .omnisim-stat-tip[data-tip]::after{
    min-width:0!important;
    width:280px!important;
    max-width:calc(100vw - 28px)!important;
  }
  body.frozen-battle-page .omnisim-toggle-item .omnisim-inline-help[data-tip]::after{
    left:0!important;
    right:auto!important;
    transform:translate(0,6px)!important;
  }
  body.frozen-battle-page .omnisim-toggle-item .omnisim-inline-help[data-tip]:hover::after,
  body.frozen-battle-page .omnisim-toggle-item .omnisim-inline-help[data-tip]:focus-visible::after,
  body.frozen-battle-page .omnisim-toggle-item .omnisim-inline-help[data-tip]:focus::after{
    transform:translate(0,0)!important;
  }
}
@media (max-width:620px){
  body.frozen-battle-page .omnisim-info[data-tip]::after,
  body.frozen-battle-page .omnisim-inline-help[data-tip]::after,
  body.frozen-battle-page [data-command-tip]::after,
  body.frozen-battle-page .omnisim-stat-tip[data-tip]::after{
    box-sizing:border-box!important;
  }
}


/* ===== OmniSIM corrective pass v8 ===== */
/* Use the requested new page background image and keep it only slightly dimmed for readability. */
body.frozen-battle-page #battleBackground{
  opacity:1!important;
  filter:saturate(1.02) brightness(.78) contrast(1.01)!important;
}
body.frozen-battle-page .omnisim-workspace::before{
  background:none!important;
  content:none!important;
}

/* Sample report button: remove any stray artifact on the left and keep tooltip above all rows. */
body.frozen-battle-page .omnisim-report-open{
  position:relative!important;
  isolation:isolate!important;
  z-index:8!important;
  overflow:hidden!important;
}
body.frozen-battle-page .omnisim-report-open > *{
  position:relative!important;
  z-index:2!important;
}
body.frozen-battle-page .omnisim-report-open .omnisim-inline-help,
body.frozen-battle-page .omnisim-report-open .omnisim-info{
  position:relative!important;
  z-index:25!important;
}
body.frozen-battle-page .omnisim-report-open .omnisim-inline-help[data-tip]::before,
body.frozen-battle-page .omnisim-report-open .omnisim-inline-help[data-tip]::after,
body.frozen-battle-page .omnisim-report-open .omnisim-info[data-tip]::before,
body.frozen-battle-page .omnisim-report-open .omnisim-info[data-tip]::after{
  z-index:100050!important;
}
body.frozen-battle-page .omnisim-simulation-console,
body.frozen-battle-page .omnisim-simulation-console > *,
body.frozen-battle-page .omnisim-sim-actions,
body.frozen-battle-page .omnisim-reader-host,
body.frozen-battle-page .omnisim-report-open,
body.frozen-battle-page .omnisim-advanced-settings,
body.frozen-battle-page .omnisim-battle-main{
  overflow:visible!important;
}
/* hard-kill any accidental decorative pseudo artifact anchored to the report button */
body.frozen-battle-page .omnisim-report-open > .blob,
body.frozen-battle-page .omnisim-report-open > .ornament,
body.frozen-battle-page .omnisim-report-open::marker{display:none!important}

/* Make the moving outline lights more visible and keep them active while the related action is running. */
.omnisim-border-tracer,.omnisim-run-border-tracer{
  padding:3px!important;
  background:conic-gradient(from var(--omni-trace-angle),transparent 0deg 282deg,rgba(255,255,255,.08) 292deg,var(--trace-color,#9de5ff) 320deg,rgba(255,255,255,.98) 336deg,var(--trace-color,#9de5ff) 350deg,transparent 360deg)!important;
}
body.frozen-battle-page .omnisim-optimizer-action:hover .omnisim-border-tracer,
body.frozen-battle-page .omnisim-optimizer-action:focus-visible .omnisim-border-tracer,
body.frozen-battle-page .omnisim-optimizer-action.running .omnisim-border-tracer,
body.frozen-battle-page .omnisim-run-heading:hover .omnisim-run-border-tracer,
body.frozen-battle-page .omnisim-run-heading:focus-visible .omnisim-run-border-tracer,
body.frozen-battle-page .rail-fight-btn.running .omnisim-run-border-tracer{
  opacity:1!important;
  animation:omniOutlineTravel 1.2s linear infinite!important;
}
body.frozen-battle-page .omnisim-optimizer-action.running .omnisim-border-tracer,
body.frozen-battle-page .rail-fight-btn.running .omnisim-run-border-tracer{
  z-index:8!important;
}

/* Optimizer and minimal-card ratio readability. */
body.frozen-battle-page .omnisim-ratio-line{
  font-size:1.16rem!important;
  font-weight:950!important;
  gap:10px!important;
}
body.frozen-battle-page .omnisim-ratio-part{
  gap:4px!important;
}
body.frozen-battle-page .omnisim-ratio-part b{
  font-size:1.18rem!important;
}
body.frozen-battle-page .omnisim-ratio-part img{
  width:26px!important;
  height:26px!important;
}

/* Lower-panel ratio bars: brighter fill, immediate movement, centered thumb. */
body.frozen-battle-page .army-panel .ratio-slider-shell{
  height:36px!important;
}
body.frozen-battle-page .army-panel .ratio-slider-fill{
  top:50%!important;
  height:10px!important;
  transform:translateY(-50%)!important;
  transition:none!important;
  opacity:1!important;
}
body.frozen-battle-page .army-panel .ratio-control.inf .ratio-slider-fill{
  background:linear-gradient(90deg,#28ca62,#6af29a)!important;
  box-shadow:0 0 14px rgba(68,239,121,.42)!important;
}
body.frozen-battle-page .army-panel .ratio-control.lancer .ratio-slider-fill{
  background:linear-gradient(90deg,#3b8fff,#81c0ff)!important;
  box-shadow:0 0 14px rgba(93,168,255,.42)!important;
}
body.frozen-battle-page .army-panel .ratio-control.marksman .ratio-slider-fill{
  background:linear-gradient(90deg,#ef4254,#ff8691)!important;
  box-shadow:0 0 14px rgba(255,101,118,.42)!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell::before{
  height:10px!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider{
  height:36px!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider::-webkit-slider-runnable-track{
  height:10px!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider::-moz-range-track{
  height:10px!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider::-webkit-slider-thumb{
  -webkit-appearance:none!important;
  appearance:none!important;
  width:10px!important;
  height:34px!important;
  margin-top:-12px!important;
  border-radius:999px!important;
  background:#f8fbff!important;
  border:2px solid rgba(26,42,66,.45)!important;
  box-shadow:0 1px 5px rgba(0,0,0,.42),0 0 0 2px rgba(255,255,255,.14)!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider::-moz-range-thumb{
  width:10px!important;
  height:34px!important;
  margin-top:0!important;
  border-radius:999px!important;
  background:#f8fbff!important;
  border:2px solid rgba(26,42,66,.45)!important;
  box-shadow:0 1px 5px rgba(0,0,0,.42),0 0 0 2px rgba(255,255,255,.14)!important;
}

/* One consistent font in the remaining areas the user flagged. */
body.frozen-battle-page .army-panel .stat-mode-btn,
body.frozen-battle-page .army-panel .formation-mode-toggle button,
body.frozen-battle-page .battle-minimal-hero b,
body.frozen-battle-page .battle-minimal-hero small,
body.frozen-battle-page .battle-minimal-ratio,
body.frozen-battle-page .battle-minimal-ratio b,
body.frozen-battle-page .battle-minimal-joiner b,
body.frozen-battle-page .battle-minimal-joiner small,
body.frozen-battle-page .omnisim-lead-hero b,
body.frozen-battle-page .omnisim-role-pill,
body.frozen-battle-page .omnisim-ratio-line,
body.frozen-battle-page .omnisim-ratio-part b{
  font-family:var(--omni-ui)!important;
  letter-spacing:0!important;
  text-transform:none!important;
  font-style:normal!important;
}


/* ===== OmniSIM corrective pass v9 ===== */
/* Search speed fill should only reach the thumb. */
body.frozen-battle-page .omnisim-speed-item input.command-speed-bar,
body.frozen-battle-page .omnisim-speed-item .command-speed-bar{
  --speed-fill:50%;
  background:linear-gradient(90deg,#67d4ff 0%,#7fe0ff var(--speed-fill),rgba(10,35,58,.92) var(--speed-fill),rgba(10,35,58,.92) 100%)!important;
  box-shadow:inset 0 0 0 1px rgba(177,228,251,.26), inset 0 0 10px rgba(2,16,26,.42)!important;
}
body.frozen-battle-page .omnisim-speed-item input.command-speed-bar::-webkit-slider-runnable-track{
  height:8px!important;
  border-radius:999px!important;
  background:transparent!important;
}
body.frozen-battle-page .omnisim-speed-item input.command-speed-bar::-moz-range-track{
  height:8px!important;
  border-radius:999px!important;
  background:transparent!important;
}
body.frozen-battle-page .omnisim-speed-item input.command-speed-bar::-moz-range-progress{
  height:8px!important;
  border-radius:999px!important;
  background:#7fe0ff!important;
}

/* Dim page background further, per user request. */
body.frozen-battle-page #battleBackground{
  filter:saturate(1.00) brightness(.66) contrast(1.02)!important;
}

/* Run Battle hero/button must have rounded top edges too. */
body.frozen-battle-page .omnisim-simulation-hero,
body.frozen-battle-page .omnisim-simulation-console #multiFightBtn.omnisim-run-heading,
body.frozen-battle-page .omnisim-simulation-console .omnisim-run-border-tracer{
  border-radius:12px!important;
}

/* Sample report button + tooltip: keep opaque even when disabled/grey, and force tooltip above everything. */
body.frozen-battle-page .omnisim-report-open,
body.frozen-battle-page .omnisim-report-open:disabled,
body.frozen-battle-page .omnisim-report-open[disabled]{
  opacity:1!important;
  filter:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
body.frozen-battle-page .omnisim-report-open .omnisim-inline-help[data-tip]::after,
body.frozen-battle-page .omnisim-report-open .omnisim-info[data-tip]::after{
  background:rgba(4,20,37,1)!important;
  opacity:0!important;
  color:#eaf7ff!important;
  border-color:rgba(92,178,244,.88)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.48),0 0 22px rgba(41,156,231,.16)!important;
}
body.frozen-battle-page .omnisim-report-open .omnisim-inline-help[data-tip]:hover::after,
body.frozen-battle-page .omnisim-report-open .omnisim-inline-help[data-tip]:focus-visible::after,
body.frozen-battle-page .omnisim-report-open .omnisim-info[data-tip]:hover::after,
body.frozen-battle-page .omnisim-report-open .omnisim-info[data-tip]:focus-visible::after{
  opacity:1!important;
}
/* Aggressively suppress any stray blob/artifact around the sample report button. */
body.frozen-battle-page .omnisim-report-open,
body.frozen-battle-page .omnisim-report-open::before,
body.frozen-battle-page .omnisim-report-open::after,
body.frozen-battle-page .omnisim-report-open > span:first-child,
body.frozen-battle-page .omnisim-report-open > b,
body.frozen-battle-page .omnisim-report-open > .omnisim-report-help{
  background-image:none!important;
}
body.frozen-battle-page .omnisim-report-open > span:first-child::before,
body.frozen-battle-page .omnisim-report-open > span:first-child::after,
body.frozen-battle-page .omnisim-report-open > b::before,
body.frozen-battle-page .omnisim-report-open > b::after{
  content:none!important;
  display:none!important;
}

/* Ratio fills should be vivid and centered. */
body.frozen-battle-page .army-panel .ratio-slider-shell::before{
  opacity:1!important;
  background:rgba(8,21,34,.98)!important;
}
body.frozen-battle-page .army-panel .ratio-slider-fill{
  opacity:1!important;
  height:12px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
}
body.frozen-battle-page .army-panel .ratio-control.inf .ratio-slider-fill,
body.frozen-battle-page .army-panel .ratio-control.inf .ratio-slider{
  background:linear-gradient(90deg,#2ddf79 0 var(--fill),#102235 var(--fill) 100%)!important;
  box-shadow:0 0 18px rgba(59,239,129,.34)!important;
}
body.frozen-battle-page .army-panel .ratio-control.lancer .ratio-slider-fill,
body.frozen-battle-page .army-panel .ratio-control.lancer .ratio-slider{
  background:linear-gradient(90deg,#4aa4ff 0 var(--fill),#102235 var(--fill) 100%)!important;
  box-shadow:0 0 18px rgba(85,169,255,.34)!important;
}
body.frozen-battle-page .army-panel .ratio-control.marksman .ratio-slider-fill,
body.frozen-battle-page .army-panel .ratio-control.marksman .ratio-slider{
  background:linear-gradient(90deg,#ff4f63 0 var(--fill),#102235 var(--fill) 100%)!important;
  box-shadow:0 0 18px rgba(255,99,122,.34)!important;
}

/* Force the remaining font inconsistencies into the OmniSIM UI font. */
body.frozen-battle-page .army-panel .stat-mode-wrap,
body.frozen-battle-page .army-panel .stat-mode-btn,
body.frozen-battle-page .army-panel .formation-mode-toggle,
body.frozen-battle-page .army-panel .formation-mode-toggle button,
body.frozen-battle-page .battle-minimal-portrait,
body.frozen-battle-page .battle-minimal-portrait span,
body.frozen-battle-page .battle-minimal-hero,
body.frozen-battle-page .battle-minimal-level,
body.frozen-battle-page .battle-minimal-level *,
body.frozen-battle-page .battle-minimal-ratio,
body.frozen-battle-page .battle-minimal-ratio *,
body.frozen-battle-page .battle-minimal-joiner,
body.frozen-battle-page .battle-minimal-joiner *,
body.frozen-battle-page .ratio-label,
body.frozen-battle-page .ratio-value,
body.frozen-battle-page .troop-head,
body.frozen-battle-page .troop-head-name,
body.frozen-battle-page .mode-toggle button,
body.frozen-battle-page .section-title + .mode-toggle button{
  font-family:var(--omni-ui)!important;
  letter-spacing:0!important;
  text-transform:none!important;
}


/* ===== OmniSIM focused validation corrections v9.1 ===== */
/* Empty report-reader status was the persistent oval/blob over the Sample Simulation button. */
body.frozen-battle-page .omnisim-reader-host .battle-reader-status:empty,
body.frozen-battle-page .omnisim-reader-host .battle-reader-status[hidden]{
  display:none!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
}

/* The report button must allow its child custom tooltip to escape its box, and the tooltip is fully opaque instantly. */
body.frozen-battle-page .omnisim-report-open{
  overflow:visible!important;
  z-index:5000!important;
}
body.frozen-battle-page .omnisim-report-open .omnisim-inline-help[data-tip]::after,
body.frozen-battle-page .omnisim-report-open .omnisim-info[data-tip]::after{
  background:#041425!important;
  transition:transform .10s ease,visibility .10s ease!important;
  opacity:0!important;
}
body.frozen-battle-page .omnisim-report-open .omnisim-inline-help[data-tip]:hover::after,
body.frozen-battle-page .omnisim-report-open .omnisim-inline-help[data-tip]:focus-visible::after,
body.frozen-battle-page .omnisim-report-open .omnisim-info[data-tip]:hover::after,
body.frozen-battle-page .omnisim-report-open .omnisim-info[data-tip]:focus-visible::after{
  opacity:1!important;
}

/* Run Battle scenic action: clip the artwork/button to genuinely rounded corners. */
body.frozen-battle-page .omnisim-simulation-hero{
  border-radius:14px!important;
  overflow:hidden!important;
}
body.frozen-battle-page .omnisim-simulation-console #multiFightBtn.omnisim-run-heading{
  border-radius:14px!important;
  overflow:hidden!important;
  clip-path:none!important;
}
body.frozen-battle-page .omnisim-simulation-console .omnisim-run-border-tracer{
  border-radius:14px!important;
}

/* Ratio fill element already has percentage width; color the entire width brightly, not a percentage of a percentage. */
body.frozen-battle-page .army-panel .ratio-control.inf .ratio-slider-fill{
  background:linear-gradient(90deg,#25db6c,#72ff9e)!important;
  box-shadow:0 0 13px rgba(73,255,137,.58),inset 0 0 5px rgba(255,255,255,.28)!important;
}
body.frozen-battle-page .army-panel .ratio-control.lancer .ratio-slider-fill{
  background:linear-gradient(90deg,#3794ff,#83c7ff)!important;
  box-shadow:0 0 13px rgba(79,164,255,.58),inset 0 0 5px rgba(255,255,255,.28)!important;
}
body.frozen-battle-page .army-panel .ratio-control.marksman .ratio-slider-fill{
  background:linear-gradient(90deg,#ff4056,#ff8c9a)!important;
  box-shadow:0 0 13px rgba(255,86,110,.58),inset 0 0 5px rgba(255,255,255,.28)!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Hard font-family reset on the exact controls previously inheriting the old book font. */
html body.frozen-battle-page .army-panel .stat-mode-btn,
html body.frozen-battle-page .army-panel .formation-mode-toggle button,
html body.frozen-battle-page .battle-minimal-portrait,
html body.frozen-battle-page .battle-minimal-portrait > span:last-child,
html body.frozen-battle-page .battle-minimal-hero b,
html body.frozen-battle-page .battle-minimal-hero small{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}

/* ===== OmniSIM corrective pass v11 ===== */
/* One actual typeface across the Battle page, including legacy components that still read --book-font. */
body.frozen-battle-page{
  --omni-ui:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --omni-display:var(--omni-ui);
  --book-font:var(--omni-ui);
  --ui-font:var(--omni-ui);
}

/* Requested darker background; keep identity copy crisp and bright over it. */
body.frozen-battle-page #battleBackground{
  filter:saturate(.96) brightness(.48) contrast(1.04)!important;
}
body.frozen-battle-page .omnisim-title-block h1,
body.frozen-battle-page .omnisim-title-block h2{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  text-shadow:0 3px 18px rgba(0,8,20,.88),0 0 24px rgba(170,232,255,.22)!important;
}
body.frozen-battle-page .omnisim-title-block p{
  color:#e5f5ff!important;
  -webkit-text-fill-color:#e5f5ff!important;
  font-weight:700!important;
  text-shadow:0 2px 12px rgba(0,8,20,.90)!important;
}
body.frozen-battle-page .omnisim-side-mark,
body.frozen-battle-page .omnisim-side-mark span{
  color:#d9f3ff!important;
  -webkit-text-fill-color:#d9f3ff!important;
  text-shadow:0 2px 12px rgba(0,8,20,.95),0 0 16px rgba(108,210,255,.20)!important;
}

/* Search Speed: fill ends at the thumb and the thumb is vertically centered on the 8px track. */
body.frozen-battle-page .omnisim-speed-item input.command-speed-bar{
  height:24px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:
    linear-gradient(90deg,#64d6ff 0%,#84e4ff var(--speed-fill),rgba(8,33,55,.96) var(--speed-fill),rgba(8,33,55,.96) 100%) center/100% 8px no-repeat!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.frozen-battle-page .omnisim-speed-item input.command-speed-bar::-webkit-slider-runnable-track{
  height:8px!important;
  border:1px solid rgba(126,204,242,.44)!important;
  border-radius:999px!important;
  background:transparent!important;
  box-shadow:inset 0 0 5px rgba(0,0,0,.36)!important;
}
body.frozen-battle-page .omnisim-speed-item input.command-speed-bar::-webkit-slider-thumb{
  -webkit-appearance:none!important;
  appearance:none!important;
  width:22px!important;
  height:22px!important;
  margin-top:-8px!important;
  border-radius:50%!important;
  background:#f8fcff!important;
  border:4px solid #49c8ff!important;
  box-shadow:0 0 0 5px rgba(73,200,255,.18),0 4px 13px rgba(0,8,16,.42)!important;
}
body.frozen-battle-page .omnisim-speed-item input.command-speed-bar::-moz-range-track{
  height:8px!important;
  border:1px solid rgba(126,204,242,.44)!important;
  border-radius:999px!important;
  background:rgba(8,33,55,.96)!important;
}
body.frozen-battle-page .omnisim-speed-item input.command-speed-bar::-moz-range-progress{
  height:8px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#64d6ff,#84e4ff)!important;
}
body.frozen-battle-page .omnisim-speed-item input.command-speed-bar::-moz-range-thumb{
  width:22px!important;
  height:22px!important;
  border-radius:50%!important;
  background:#f8fcff!important;
  border:4px solid #49c8ff!important;
  box-shadow:0 0 0 5px rgba(73,200,255,.18),0 4px 13px rgba(0,8,16,.42)!important;
}

/* Make troop-ratio fills unmistakably luminous. */
body.frozen-battle-page .army-panel .ratio-slider-shell::before{
  height:12px!important;
  background:#071a2b!important;
  border-color:rgba(92,171,218,.30)!important;
  box-shadow:inset 0 0 9px rgba(0,0,0,.55)!important;
}
body.frozen-battle-page .army-panel .ratio-slider-fill{
  z-index:2!important;
  height:12px!important;
  opacity:1!important;
  filter:saturate(1.35) brightness(1.22)!important;
  transition:none!important;
}
body.frozen-battle-page .army-panel .ratio-control.inf .ratio-slider-fill{
  background:#43f58a!important;
  box-shadow:0 0 7px rgba(67,245,138,.96),0 0 18px rgba(67,245,138,.55),inset 0 0 6px rgba(255,255,255,.42)!important;
}
body.frozen-battle-page .army-panel .ratio-control.lancer .ratio-slider-fill{
  background:#55aaff!important;
  box-shadow:0 0 7px rgba(85,170,255,.96),0 0 18px rgba(85,170,255,.55),inset 0 0 6px rgba(255,255,255,.40)!important;
}
body.frozen-battle-page .army-panel .ratio-control.marksman .ratio-slider-fill{
  background:#ff5267!important;
  box-shadow:0 0 7px rgba(255,82,103,.96),0 0 18px rgba(255,82,103,.55),inset 0 0 6px rgba(255,255,255,.40)!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider{
  z-index:3!important;
  height:36px!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider::-webkit-slider-runnable-track{
  height:12px!important;
  background:transparent!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider::-webkit-slider-thumb{
  width:10px!important;
  height:34px!important;
  margin-top:-12px!important;
  background:#ffffff!important;
  border:2px solid rgba(72,101,132,.80)!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.18),0 2px 7px rgba(0,0,0,.52)!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider::-moz-range-track{
  height:12px!important;
  background:transparent!important;
}
body.frozen-battle-page .army-panel .ratio-slider-shell .ratio-slider::-moz-range-thumb{
  width:10px!important;
  height:34px!important;
  background:#ffffff!important;
  border:2px solid rgba(72,101,132,.80)!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.18),0 2px 7px rgba(0,0,0,.52)!important;
}

/* Final hard reset of the exact typography areas called out by the user. */
html body.frozen-battle-page .army-panel .stat-mode-btn{
  font-family:var(--omni-ui)!important;
  font-size:.76rem!important;
  font-weight:750!important;
  font-style:normal!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
html body.frozen-battle-page .army-panel .formation-mode-toggle button,
html body.frozen-battle-page .army-panel .mode-toggle.formation-mode-toggle button{
  font-family:var(--omni-ui)!important;
  font-size:.78rem!important;
  font-weight:750!important;
  font-style:normal!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
html body.frozen-battle-page .battle-minimal-portrait,
html body.frozen-battle-page .battle-minimal-portrait > span:last-child,
html body.frozen-battle-page .battle-minimal-hero b,
html body.frozen-battle-page .battle-minimal-joiner b{
  font-family:var(--omni-ui)!important;
  font-size:.72rem!important;
  font-weight:750!important;
  font-style:normal!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

/* Average survivors directly above the win-percentage bar. */
body.frozen-battle-page .omnisim-percent-area{
  display:grid!important;
  gap:5px!important;
}
body.frozen-battle-page .omnisim-survivor-row{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
  padding:0 8px!important;
}
body.frozen-battle-page .omnisim-survivor{
  display:flex!important;
  align-items:baseline!important;
  gap:7px!important;
  min-width:0!important;
  color:#dff5ff!important;
  font-family:var(--omni-ui)!important;
}
body.frozen-battle-page .omnisim-survivor.att{justify-content:flex-start!important}
body.frozen-battle-page .omnisim-survivor.def{justify-content:flex-end!important}
body.frozen-battle-page .omnisim-survivor small{
  color:#9fc7db!important;
  font-size:.61rem!important;
  font-weight:750!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
}
body.frozen-battle-page .omnisim-survivor b{
  color:#ffffff!important;
  font-size:.82rem!important;
  font-weight:900!important;
}
body.frozen-battle-page .omnisim-survivor.att b{color:#ff9eaa!important}
body.frozen-battle-page .omnisim-survivor.def b{color:#9fdcff!important}
/* Pixel-center the 22px Search Speed thumb on the 8px track in Chromium. */
body.frozen-battle-page .omnisim-speed-item input.command-speed-bar::-webkit-slider-thumb{margin-top:-7px!important}
/* Ensure the native range itself never lays a dark gradient over the dedicated luminous fill layer. */
body.frozen-battle-page .army-panel .ratio-control .ratio-slider-shell input.ratio-slider,
body.frozen-battle-page .army-panel .ratio-control.inf .ratio-slider-shell input.ratio-slider,
body.frozen-battle-page .army-panel .ratio-control.lancer .ratio-slider-shell input.ratio-slider,
body.frozen-battle-page .army-panel .ratio-control.marksman .ratio-slider-shell input.ratio-slider{
  background:transparent!important;
  background-image:none!important;
  background-color:transparent!important;
  box-shadow:none!important;
}
/* Match the flagged controls to the same bold OmniSIM UI treatment used elsewhere. */
html body.frozen-battle-page .army-panel .stat-mode-btn,
html body.frozen-battle-page .army-panel .formation-mode-toggle button,
html body.frozen-battle-page .army-panel .mode-toggle.formation-mode-toggle button,
html body.frozen-battle-page .battle-minimal-portrait,
html body.frozen-battle-page .battle-minimal-portrait > span:last-child,
html body.frozen-battle-page .battle-minimal-hero b,
html body.frozen-battle-page .battle-minimal-joiner b{
  font-weight:800!important;
}
/* The generic #sidePanels input surface rule was still painting a dark background over ratio fills. */
html body.frozen-battle-page #sidePanels .army-panel .ratio-control .ratio-slider-shell input.ratio-slider{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border-color:transparent!important;
}
html body.frozen-battle-page #sidePanels .army-panel .ratio-control .ratio-slider-shell input.ratio-slider::-webkit-slider-runnable-track{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
html body.frozen-battle-page #sidePanels .army-panel .ratio-control .ratio-slider-shell input.ratio-slider::-moz-range-track{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border-color:transparent!important;
  box-shadow:none!important;
}

/* ===== OmniSIM temporary visual comparison + presentation refinements v12 ===== */
/* Temporary top-bar controls: compare the two accepted mountain scenes and tune brightness locally. */
body.frozen-battle-page{
  --omnisim-bg-brightness:.48;
}
body.frozen-battle-page #battleBackground{
  filter:saturate(.96) brightness(var(--omnisim-bg-brightness)) contrast(1.04)!important;
  transition:filter .12s linear,opacity .18s ease!important;
}
.omnisim-bg-lab{
  display:flex;align-items:center;gap:12px;min-width:360px;height:46px;padding:5px 10px;
  border:1px solid rgba(74,166,221,.30);border-radius:10px;background:rgba(3,25,44,.56);
  box-shadow:inset 0 0 18px rgba(30,126,184,.07);backdrop-filter:blur(10px)
}
.omnisim-bg-scene{display:flex;align-items:center;gap:5px;flex:0 0 auto}
.omnisim-bg-lab-label,.omnisim-bg-brightness>span{
  color:#9fc6da;font:800 .60rem/1 var(--omni-ui);letter-spacing:.07em;text-transform:uppercase;white-space:nowrap
}
.omnisim-bg-scene-btn{
  width:28px;height:28px;padding:0;border:1px solid rgba(82,170,222,.34);border-radius:7px;background:rgba(4,30,51,.78);
  color:#a9cada;font:850 .68rem/1 var(--omni-ui);cursor:pointer;transition:.14s ease
}
.omnisim-bg-scene-btn:hover,.omnisim-bg-scene-btn:focus-visible{color:#fff;border-color:rgba(94,205,255,.72);outline:none;box-shadow:0 0 12px rgba(61,189,255,.18)}
.omnisim-bg-scene-btn.active{color:#fff;background:linear-gradient(180deg,#249bd6,#17679e);border-color:#70d8ff;box-shadow:0 0 13px rgba(49,191,255,.30)}
.omnisim-bg-brightness{display:grid;grid-template-columns:auto minmax(88px,1fr) 34px;align-items:center;gap:7px;min-width:210px;margin:0}
.omnisim-bg-brightness input[type=range]{
  -webkit-appearance:none;appearance:none;width:100%;height:20px;margin:0;background:transparent;cursor:pointer
}
.omnisim-bg-brightness input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(90deg,#183750,#82dfff);border:1px solid rgba(126,204,242,.32)}
.omnisim-bg-brightness input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;margin-top:-6px;border-radius:50%;background:#f9fdff;border:3px solid #52caff;box-shadow:0 0 0 3px rgba(82,202,255,.15)}
.omnisim-bg-brightness input[type=range]::-moz-range-track{height:6px;border-radius:999px;background:linear-gradient(90deg,#183750,#82dfff);border:1px solid rgba(126,204,242,.32)}
.omnisim-bg-brightness input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#f9fdff;border:3px solid #52caff;box-shadow:0 0 0 3px rgba(82,202,255,.15)}
.omnisim-bg-brightness b{color:#dff6ff;font:850 .61rem/1 var(--omni-ui);text-align:right}

/* Optimizer recommendation results can be minimized without discarding them. */
.omnisim-recommend-disclosure{margin-top:9px;background:transparent;border:0;min-width:0}
.omnisim-recommend-disclosure:has(.command-suggestions-empty){display:none!important}
.omnisim-recommend-disclosure>summary{
  list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px;padding:0 8px;
  border:1px solid rgba(79,168,222,.24);border-radius:8px;background:rgba(4,27,46,.58);color:#dff6ff;cursor:pointer;
  font:800 .68rem/1 var(--omni-ui);user-select:none
}
.omnisim-recommend-disclosure>summary::-webkit-details-marker{display:none}
.omnisim-recommend-disclosure>summary::after{content:'−';color:#83dafb;font-size:1rem}
.omnisim-recommend-disclosure:not([open])>summary::after{content:'+'}
.omnisim-recommend-disclosure>summary small{color:#789eb3;font:700 .56rem/1 var(--omni-ui);margin-left:auto;margin-right:6px}
.omnisim-recommend-disclosure>.optimizer-column-results{margin-top:7px!important}

/* Wilderness is presentation-clean: keep the selected joiners in state, but hide them everywhere users edit/preview formations. */
body.battle-wilderness .battle-full-joiner-title,
body.battle-wilderness .battle-full-joiner-help,
body.battle-wilderness .battle-full-joiner-container,
body.battle-wilderness .battle-full-joiner-actions,
body.battle-wilderness .battle-minimal-joiners,
body.battle-wilderness .omnisim-joiner-row{
  display:none!important;
}

@media(max-width:1240px){
  .omnisim-bg-lab{order:4;width:100%;min-width:0;justify-content:center;height:40px;padding:3px 8px}
  .omnisim-bg-brightness{min-width:min(240px,48vw)}
}
@media(max-width:620px){
  .omnisim-bg-lab{gap:8px;justify-content:space-between}
  .omnisim-bg-lab-label{display:none}
  .omnisim-bg-brightness{grid-template-columns:auto minmax(70px,1fr) 31px;min-width:0;flex:1}
  .omnisim-bg-brightness>span{font-size:.54rem}
}
@media(max-width:1240px){
  .omnisim-real-actions{flex:1 1 520px;min-width:0!important;flex-wrap:wrap!important;justify-content:flex-end!important;row-gap:6px!important}
  .omnisim-bg-lab{order:5;flex:1 0 100%!important;width:auto!important;max-width:520px!important;margin-left:auto!important}
}
@media(max-width:620px){
  .omnisim-real-actions{flex:1 0 100%!important;width:100%!important;justify-content:center!important}
  .omnisim-bg-lab{max-width:none!important;margin-left:0!important}
}
body.battle-wilderness #sidePanels #att_joinerContainer,
body.battle-wilderness #sidePanels #def_joinerContainer,
body.battle-wilderness #sidePanels .joiner-actions{
  display:none!important;
}

/* City Attacks: keep Battle Context horizontally centered while Presentation
   stays in its original right-side position on the same row. */
body.frozen-battle-page .omnisim-page-head{position:relative!important}
body.frozen-battle-page .battle-context-segmented{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
body.frozen-battle-page .battle-context-segmented button{
  min-width:0!important;
  padding-left:10px!important;
  padding-right:10px!important;
}
/* The context buttons need their own unclipped tooltip surface. Put it below the
   selector so it cannot be cut off by the top of the header. */
body.frozen-battle-page .omnisim-page-head,
body.frozen-battle-page .omnisim-top-controls,
body.frozen-battle-page #battleContextHost,
body.frozen-battle-page .omnisim-context-control,
body.frozen-battle-page .battle-context-segmented{overflow:visible!important}
body.frozen-battle-page .battle-context-btn[data-tip]::after{
  content:attr(data-tip)!important;display:block!important;position:absolute!important;z-index:1000002!important;left:50%!important;top:calc(100% + 12px)!important;bottom:auto!important;
  width:min(520px,calc(100vw - 32px))!important;max-width:min(520px,calc(100vw - 32px))!important;min-width:300px!important;height:auto!important;padding:14px 16px!important;border:1px solid rgba(96,183,237,.82)!important;border-radius:14px!important;box-sizing:border-box!important;
  background:linear-gradient(180deg,rgba(5,24,43,.995),rgba(3,18,33,.995))!important;color:#eaf8ff!important;box-shadow:0 14px 36px rgba(0,0,0,.42),0 0 22px rgba(57,180,255,.12)!important;
  font:650 .78rem/1.55 var(--omni-ui)!important;letter-spacing:0!important;text-transform:none!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateX(-50%) translateY(-5px)!important;transition:opacity .14s ease,transform .14s ease,visibility .14s ease!important;
}
body.frozen-battle-page .battle-context-btn[data-tip]:hover::after,
body.frozen-battle-page .battle-context-btn[data-tip]:focus-visible::after{opacity:1!important;visibility:visible!important;transform:translate(-50%,0)!important}

@media(min-width:1400px){
  body.frozen-battle-page .omnisim-top-controls{
    position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;pointer-events:none!important;z-index:20!important;
  }
  body.frozen-battle-page #battleContextHost{
    position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;
    width:min(760px,40vw)!important;justify-self:auto!important;pointer-events:auto!important;
  }
  body.frozen-battle-page #battlePresentationHost{
    position:absolute!important;right:0!important;top:50%!important;transform:translateY(-50%)!important;
    width:min(395px,28vw)!important;justify-self:auto!important;pointer-events:auto!important;
  }
}
@media(min-width:761px) and (max-width:1399px){
  body.frozen-battle-page .omnisim-top-controls{position:static!important;display:grid!important;grid-template-columns:minmax(0,1.36fr) minmax(0,1fr)!important;gap:14px!important;align-items:end!important;width:100%!important;pointer-events:auto!important}
  body.frozen-battle-page #battleContextHost,body.frozen-battle-page #battlePresentationHost{position:static!important;transform:none!important;width:100%!important;justify-self:stretch!important}
}
@media(max-width:760px){
  body.frozen-battle-page .omnisim-top-controls{position:static!important;display:grid!important;grid-template-columns:1fr!important;gap:9px!important;width:100%!important;pointer-events:auto!important}
  body.frozen-battle-page #battleContextHost,body.frozen-battle-page #battlePresentationHost{position:static!important;transform:none!important;width:100%!important;justify-self:stretch!important}
  body.frozen-battle-page .battle-context-segmented{grid-template-columns:1fr!important}
  body.frozen-battle-page .battle-context-segmented button+button{border-left:0!important;border-top:1px solid rgba(60,139,190,.20)!important}
}

/* City/context tooltip polish: keep the centered header control above the battle rail
   and render its help below the label so it cannot be clipped by the viewport top. */
body.frozen-battle-page .omnisim-page-head{z-index:80!important;overflow:visible!important}
body.frozen-battle-page .omnisim-top-controls,
body.frozen-battle-page #battleContextHost{z-index:90!important;overflow:visible!important}
body.frozen-battle-page .omnisim-context-control{position:relative;z-index:90!important;overflow:visible!important}
body.frozen-battle-page .omnisim-context-control .omnisim-info[data-tip]::after{
  top:calc(100% + 10px)!important;
  bottom:auto!important;
  left:0!important;
  transform:translateY(-5px)!important;
  width:max-content!important;
  max-width:min(440px,82vw)!important;
  white-space:normal!important;
  text-align:left!important;
  z-index:1000004!important;
}
body.frozen-battle-page .omnisim-context-control .omnisim-info[data-tip]:hover::after,
body.frozen-battle-page .omnisim-context-control .omnisim-info[data-tip]:focus-visible::after{
  transform:translateY(0)!important;
}
body.frozen-battle-page .context-castle-icon{
  width:1rem;
  height:1rem;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  color:inherit;
}
body.frozen-battle-page .context-castle-icon svg{display:block;width:100%;height:100%;fill:currentColor}


/* =========================================================
   Layered dragon + OmniSIM hero rebuild (post-flat-banner fix)
   ========================================================= */
body.frozen-battle-page .omnisim-layered-hero{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  min-height:0!important;
  padding:12px 0 18px!important;
}
body.frozen-battle-page .omnisim-hero-stage{
  position:relative;
  width:100%;
  min-height:clamp(250px,25vw,420px);
  overflow:hidden;
  isolation:isolate;
  border-radius:26px;
  background:linear-gradient(180deg,rgba(6,18,33,.06),rgba(7,18,32,.00));
  pointer-events:none;
}
body.frozen-battle-page .omnisim-hero-stage::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 50% 42%,rgba(99,186,255,.18),transparent 26%),
    radial-gradient(circle at 63% 30%,rgba(255,136,70,.11),transparent 16%),
    linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,0) 28%);
  z-index:0;
  pointer-events:none;
}
body.frozen-battle-page .omnisim-hero-atmosphere{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    radial-gradient(circle at 14% 52%,rgba(179,233,255,.14),transparent 20%),
    radial-gradient(circle at 74% 44%,rgba(255,160,92,.10),transparent 18%),
    radial-gradient(circle at 50% 100%,rgba(197,232,255,.10),transparent 28%);
  filter:blur(12px);
  animation:omniHeroAtmosphere 11s ease-in-out infinite;
}
body.frozen-battle-page .omnisim-hero-layer{
  position:absolute;
  display:block;
  user-select:none;
  -webkit-user-drag:none;
  pointer-events:none;
}
body.frozen-battle-page .omnisim-hero-dragon-left{
  z-index:2;
  width:min(31vw,35%);
  left:-3.4%;
  top:-8%;
  transform-origin:78% 56%;
  filter:drop-shadow(0 16px 22px rgba(0,0,0,.18)) drop-shadow(0 0 24px rgba(94,189,255,.08));
  animation:omniDragonLeftFloat 8.8s ease-in-out infinite;
}
body.frozen-battle-page .omnisim-hero-dragon-right{
  z-index:2;
  width:min(31vw,35%);
  right:-2.2%;
  top:-7%;
  transform-origin:22% 54%;
  filter:drop-shadow(0 16px 22px rgba(0,0,0,.18)) drop-shadow(0 0 24px rgba(255,146,88,.08));
  animation:omniDragonRightFloat 9.2s ease-in-out infinite;
}
body.frozen-battle-page .omnisim-hero-brand-wrap{
  position:absolute;
  pointer-events:none;
}
body.frozen-battle-page .omnisim-hero-brand-left{
  z-index:4;
  left:3.1%;
  top:17%;
  width:18.6%;
  min-width:188px;
  max-width:330px;
  height:56%;
}
body.frozen-battle-page .omnisim-hero-compass{
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:auto;
  filter:drop-shadow(0 0 18px rgba(125,212,255,.18));
  animation:omniCompassShardPulse 7s ease-in-out infinite;
}
body.frozen-battle-page .omnisim-hero-divider{
  position:absolute;
  right:-12%;
  top:4%;
  width:1px;
  height:72%;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.32),rgba(255,255,255,.10));
  box-shadow:0 0 12px rgba(150,220,255,.20);
}
body.frozen-battle-page .omnisim-hero-brand-center{
  z-index:5;
  left:24.8%;
  top:10%;
  width:64.4%;
  height:60%;
}
body.frozen-battle-page .omnisim-hero-logo-shell{
  position:relative;
  width:100%;
  height:100%;
}
body.frozen-battle-page .omnisim-hero-logo{
  position:absolute;
  inset:0;
  margin:auto;
  width:100%;
  height:auto;
  filter:drop-shadow(0 0 16px rgba(76,182,255,.12)) drop-shadow(0 0 18px rgba(255,133,62,.10));
  animation:omniLogoBreath 5.4s ease-in-out infinite;
}
body.frozen-battle-page .omnisim-hero-logo-fire,
body.frozen-battle-page .omnisim-hero-logo-shards,
body.frozen-battle-page .omnisim-hero-breath-stream,
body.frozen-battle-page .omnisim-hero-particles{
  position:absolute;
  pointer-events:none;
}
body.frozen-battle-page .omnisim-hero-logo-fire{
  z-index:6;
  mix-blend-mode:screen;
  filter:blur(10px);
  animation:omniFireFlicker 3.3s ease-in-out infinite;
}
body.frozen-battle-page .omnisim-hero-logo-fire::before,
body.frozen-battle-page .omnisim-hero-logo-fire::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}
body.frozen-battle-page .omnisim-hero-logo-fire::before{
  background:
    radial-gradient(circle at 18% 52%,rgba(255,196,128,.55),transparent 10%),
    radial-gradient(circle at 44% 38%,rgba(255,133,67,.44),transparent 10%),
    radial-gradient(circle at 67% 54%,rgba(255,172,96,.50),transparent 10%),
    radial-gradient(circle at 87% 46%,rgba(255,128,54,.44),transparent 12%);
}
body.frozen-battle-page .omnisim-hero-logo-fire::after{
  background:linear-gradient(90deg,transparent 0%,rgba(255,161,84,.08) 14%,rgba(255,216,170,.40) 34%,rgba(255,126,58,.18) 50%,rgba(255,210,158,.35) 66%,rgba(255,119,54,.14) 84%,transparent 100%);
  mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.40) 16%,rgba(0,0,0,1) 42%,rgba(0,0,0,.84) 72%,transparent 100%);
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.40) 16%,rgba(0,0,0,1) 42%,rgba(0,0,0,.84) 72%,transparent 100%);
}
body.frozen-battle-page .omni-fire-left{inset:14% auto auto -1%;width:34%;height:54%;animation-delay:-.3s}
body.frozen-battle-page .omni-fire-mid{inset:21% auto auto 25%;width:34%;height:46%;animation-delay:-1.1s}
body.frozen-battle-page .omni-fire-right{inset:9% 0 auto auto;width:44%;height:62%;animation-delay:-1.7s}
body.frozen-battle-page .omnisim-hero-logo-shards{
  z-index:6;
  inset:0;
}
body.frozen-battle-page .omnisim-hero-logo-shards::before,
body.frozen-battle-page .omnisim-hero-logo-shards::after{
  content:"";
  position:absolute;
  pointer-events:none;
}
body.frozen-battle-page .omnisim-hero-logo-shards::before{
  left:-1%;
  top:12%;
  width:28%;
  height:64%;
  background:
    linear-gradient(145deg,transparent 0 35%,rgba(216,244,255,.92) 36% 58%,transparent 59%) 6% 74%/18px 72px no-repeat,
    linear-gradient(148deg,transparent 0 34%,rgba(216,244,255,.92) 35% 58%,transparent 59%) 18% 28%/16px 56px no-repeat,
    linear-gradient(144deg,transparent 0 34%,rgba(216,244,255,.90) 35% 60%,transparent 61%) 36% 52%/14px 52px no-repeat,
    linear-gradient(146deg,transparent 0 34%,rgba(216,244,255,.88) 35% 60%,transparent 61%) 58% 16%/13px 42px no-repeat,
    linear-gradient(146deg,transparent 0 34%,rgba(216,244,255,.86) 35% 60%,transparent 61%) 74% 68%/13px 38px no-repeat;
  filter:drop-shadow(0 0 6px rgba(129,214,255,.30));
  animation:omniGlacierBurst 7.2s ease-in-out infinite;
}
body.frozen-battle-page .omnisim-hero-logo-shards::after{
  right:-2%;
  top:8%;
  width:22%;
  height:72%;
  background:
    linear-gradient(146deg,transparent 0 34%,rgba(216,244,255,.92) 35% 58%,transparent 59%) 14% 18%/16px 56px no-repeat,
    linear-gradient(148deg,transparent 0 34%,rgba(216,244,255,.92) 35% 58%,transparent 59%) 32% 60%/14px 52px no-repeat,
    linear-gradient(146deg,transparent 0 34%,rgba(216,244,255,.90) 35% 60%,transparent 61%) 62% 28%/15px 54px no-repeat,
    linear-gradient(146deg,transparent 0 34%,rgba(216,244,255,.88) 35% 60%,transparent 61%) 78% 72%/14px 44px no-repeat;
  filter:drop-shadow(0 0 6px rgba(129,214,255,.30));
  animation:omniGlacierBurst 7.2s ease-in-out infinite reverse;
}
body.frozen-battle-page .omnisim-hero-breath-stream{
  z-index:4;
  opacity:.88;
  mix-blend-mode:screen;
  transform-origin:left center;
}
body.frozen-battle-page .omnisim-hero-breath-stream-left{
  left:15.7%;
  top:18.6%;
  width:20.5%;
  height:20%;
  background:
    radial-gradient(circle at 85% 50%,rgba(255,255,255,.78),transparent 16%),
    linear-gradient(90deg,rgba(125,214,255,0) 0%,rgba(184,239,255,.18) 14%,rgba(217,250,255,.82) 46%,rgba(111,208,255,.44) 74%,rgba(111,208,255,0) 100%),
    radial-gradient(circle at 54% 48%,rgba(211,248,255,.40),transparent 26%);
  clip-path:polygon(0 40%,18% 24%,58% 18%,100% 28%,100% 74%,56% 82%,18% 74%,0 58%);
  filter:blur(7px) drop-shadow(0 0 12px rgba(165,234,255,.34));
  transform:rotate(14deg);
  animation:omniLeftBreathFlow 2.9s ease-in-out infinite;
}
body.frozen-battle-page .omnisim-hero-breath-stream-right{
  left:72.6%;
  top:16.8%;
  width:15.4%;
  height:17%;
  background:
    radial-gradient(circle at 14% 50%,rgba(255,250,236,.74),transparent 16%),
    linear-gradient(90deg,rgba(255,126,56,0) 0%,rgba(255,158,78,.20) 12%,rgba(255,208,136,.86) 42%,rgba(255,118,49,.48) 72%,rgba(255,118,49,0) 100%),
    radial-gradient(circle at 48% 48%,rgba(255,188,118,.36),transparent 28%);
  clip-path:polygon(0 32%,18% 18%,68% 18%,100% 30%,100% 70%,65% 82%,16% 76%,0 58%);
  filter:blur(8px) drop-shadow(0 0 12px rgba(255,156,92,.30));
  transform:rotate(6deg);
  animation:omniRightBreathFlow 2.5s ease-in-out infinite;
}
body.frozen-battle-page .omnisim-hero-particles{
  z-index:7;
  inset:0;
  width:100%;
  height:100%;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-top-controls{
  position:static!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.36fr) minmax(0,1fr)!important;
  gap:14px!important;
  align-items:end!important;
  width:100%!important;
  pointer-events:auto!important;
}
@keyframes omniDragonLeftFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(-1deg) scale(1)}
  50%{transform:translate3d(0,-5px,0) rotate(1deg) scale(1.015)}
}
@keyframes omniDragonRightFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(1deg) scale(1)}
  50%{transform:translate3d(0,-4px,0) rotate(-1deg) scale(1.018)}
}
@keyframes omniHeroAtmosphere{
  0%,100%{opacity:.72;transform:translate3d(0,0,0)}
  50%{opacity:1;transform:translate3d(0,-5px,0)}
}
@keyframes omniCompassShardPulse{
  0%,100%{opacity:.90;transform:scale(1)}
  50%{opacity:1;transform:scale(1.022)}
}
@keyframes omniLogoBreath{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  25%{transform:translate3d(0,-1px,0) scale(1.008)}
  50%{transform:translate3d(0,0,0) scale(1.014)}
  75%{transform:translate3d(0,1px,0) scale(1.008)}
}
@keyframes omniFireFlicker{
  0%,100%{opacity:.48;transform:scale(1)}
  20%{opacity:.72;transform:scale(1.04,.96)}
  40%{opacity:.62;transform:scale(.98,1.02)}
  60%{opacity:.92;transform:scale(1.06,1)}
  80%{opacity:.70;transform:scale(1.01,.98)}
}
@keyframes omniGlacierBurst{
  0%,100%{opacity:.72;transform:translate3d(0,0,0)}
  50%{opacity:1;transform:translate3d(3px,-4px,0)}
}
@keyframes omniLeftBreathFlow{
  0%,100%{opacity:.50;transform:rotate(14deg) scaleX(.94) scaleY(.92)}
  45%{opacity:.98;transform:rotate(14deg) scaleX(1.08) scaleY(1.08)}
  70%{opacity:.72;transform:rotate(14deg) scaleX(1.02) scaleY(1)}
}
@keyframes omniRightBreathFlow{
  0%,100%{opacity:.56;transform:rotate(6deg) scaleX(.92) scaleY(.92)}
  44%{opacity:1;transform:rotate(6deg) scaleX(1.10) scaleY(1.06)}
  72%{opacity:.76;transform:rotate(6deg) scaleX(1.02) scaleY(1)}
}
@media(max-width:1400px){
  body.frozen-battle-page .omnisim-hero-brand-left{left:2.8%;width:19.4%;min-width:160px}
  body.frozen-battle-page .omnisim-hero-brand-center{left:23.8%;width:66%}
  body.frozen-battle-page .omnisim-hero-dragon-left{width:34%;left:-5%}
  body.frozen-battle-page .omnisim-hero-dragon-right{width:34%;right:-4%}
}
@media(max-width:980px){
  body.frozen-battle-page .omnisim-hero-stage{min-height:220px;border-radius:22px}
  body.frozen-battle-page .omnisim-hero-brand-left{top:16%;width:24%;min-width:120px}
  body.frozen-battle-page .omnisim-hero-brand-center{left:24%;top:13%;width:64%}
  body.frozen-battle-page .omnisim-hero-dragon-left{width:40%;left:-10%;top:-4%}
  body.frozen-battle-page .omnisim-hero-dragon-right{width:39%;right:-9%;top:-3%}
  body.frozen-battle-page .omnisim-hero-breath-stream-left{left:17%;top:21%;width:20%}
  body.frozen-battle-page .omnisim-hero-breath-stream-right{left:70%;top:19%;width:17%}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-top-controls{grid-template-columns:1fr!important}
}
@media(max-width:760px){
  body.frozen-battle-page .omnisim-layered-hero{gap:10px!important}
  body.frozen-battle-page .omnisim-hero-stage{min-height:180px;border-radius:18px}
  body.frozen-battle-page .omnisim-hero-brand-left{left:2%;top:20%;width:28%;min-width:0}
  body.frozen-battle-page .omnisim-hero-divider{display:none}
  body.frozen-battle-page .omnisim-hero-brand-center{left:20%;top:18%;width:74%}
  body.frozen-battle-page .omnisim-hero-dragon-left{width:44%;left:-15%;top:-3%}
  body.frozen-battle-page .omnisim-hero-dragon-right{width:44%;right:-16%;top:-2%}
  body.frozen-battle-page .omnisim-hero-breath-stream-left{left:16%;top:24%;width:24%;height:16%}
  body.frozen-battle-page .omnisim-hero-breath-stream-right{left:69%;top:22%;width:18%;height:14%}
}
@media(prefers-reduced-motion:reduce){
  body.frozen-battle-page .omnisim-hero-atmosphere,
  body.frozen-battle-page .omnisim-hero-dragon-left,
  body.frozen-battle-page .omnisim-hero-dragon-right,
  body.frozen-battle-page .omnisim-hero-compass,
  body.frozen-battle-page .omnisim-hero-logo,
  body.frozen-battle-page .omnisim-hero-logo-fire,
  body.frozen-battle-page .omnisim-hero-logo-shards::before,
  body.frozen-battle-page .omnisim-hero-logo-shards::after,
  body.frozen-battle-page .omnisim-hero-breath-stream-left,
  body.frozen-battle-page .omnisim-hero-breath-stream-right{animation:none!important}
}

/* High-fidelity live FX pass: moving breath + true flame canvases sit between the
   independent dragon/logo layers. These canvases never receive pointer events. */
body.frozen-battle-page .omnisim-hero-breath-canvas,
body.frozen-battle-page .omnisim-hero-fire-canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none;
  user-select:none;
}
body.frozen-battle-page .omnisim-hero-breath-canvas{
  z-index:3;
  mix-blend-mode:screen;
  opacity:.98;
}
body.frozen-battle-page .omnisim-hero-fire-canvas{
  z-index:6;
  mix-blend-mode:screen;
  opacity:.98;
}
body.frozen-battle-page .omnisim-hero-dragon-left{
  animation:omniDragonLeftAlive 6.8s cubic-bezier(.45,0,.55,1) infinite!important;
}
body.frozen-battle-page .omnisim-hero-dragon-right{
  animation:omniDragonRightAlive 7.4s cubic-bezier(.45,0,.55,1) infinite!important;
}
body.frozen-battle-page .omnisim-hero-logo{
  animation:omniLogoAlive 4.8s ease-in-out infinite!important;
}
body.frozen-battle-page .omnisim-hero-compass{
  animation:omniCompassAlive 6.2s ease-in-out infinite!important;
}
body.frozen-battle-page .omnisim-hero-breath-stream-left,
body.frozen-battle-page .omnisim-hero-breath-stream-right{
  opacity:.34!important;
}
body.frozen-battle-page .omnisim-hero-stage.fx-paused :is(
  .omnisim-hero-dragon-left,
  .omnisim-hero-dragon-right,
  .omnisim-hero-logo,
  .omnisim-hero-compass,
  .omnisim-hero-atmosphere,
  .omnisim-hero-logo-fire,
  .omnisim-hero-logo-shards::before,
  .omnisim-hero-logo-shards::after,
  .omnisim-hero-breath-stream-left,
  .omnisim-hero-breath-stream-right
){animation-play-state:paused!important}
@keyframes omniDragonLeftAlive{
  0%,100%{transform:translate3d(0,0,0) rotate(-1.1deg) scale(1);filter:drop-shadow(0 16px 22px rgba(0,0,0,.18)) drop-shadow(0 0 22px rgba(94,189,255,.08))}
  28%{transform:translate3d(2px,-5px,0) rotate(.2deg) scale(1.012);filter:drop-shadow(0 18px 24px rgba(0,0,0,.19)) drop-shadow(0 0 28px rgba(94,189,255,.13))}
  52%{transform:translate3d(0,-8px,0) rotate(1deg) scale(1.022);filter:drop-shadow(0 19px 25px rgba(0,0,0,.20)) drop-shadow(0 0 34px rgba(94,189,255,.18))}
  76%{transform:translate3d(-2px,-3px,0) rotate(.1deg) scale(1.009);filter:drop-shadow(0 17px 22px rgba(0,0,0,.18)) drop-shadow(0 0 25px rgba(94,189,255,.10))}
}
@keyframes omniDragonRightAlive{
  0%,100%{transform:translate3d(0,0,0) rotate(1deg) scale(1);filter:drop-shadow(0 16px 22px rgba(0,0,0,.18)) drop-shadow(0 0 22px rgba(255,146,88,.08))}
  24%{transform:translate3d(-2px,-4px,0) rotate(.2deg) scale(1.010);filter:drop-shadow(0 18px 24px rgba(0,0,0,.19)) drop-shadow(0 0 26px rgba(255,146,88,.12))}
  51%{transform:translate3d(0,-7px,0) rotate(-.9deg) scale(1.022);filter:drop-shadow(0 19px 25px rgba(0,0,0,.20)) drop-shadow(0 0 34px rgba(255,146,88,.18))}
  78%{transform:translate3d(2px,-3px,0) rotate(.1deg) scale(1.009);filter:drop-shadow(0 17px 22px rgba(0,0,0,.18)) drop-shadow(0 0 25px rgba(255,146,88,.10))}
}
@keyframes omniLogoAlive{
  0%,100%{transform:translate3d(0,0,0) scale(1);filter:drop-shadow(0 0 16px rgba(76,182,255,.12)) drop-shadow(0 0 18px rgba(255,133,62,.10))}
  34%{transform:translate3d(0,-1px,0) scale(1.006);filter:drop-shadow(0 0 22px rgba(76,182,255,.17)) drop-shadow(0 0 26px rgba(255,133,62,.16))}
  66%{transform:translate3d(0,1px,0) scale(1.012);filter:drop-shadow(0 0 27px rgba(76,182,255,.20)) drop-shadow(0 0 30px rgba(255,133,62,.20))}
}
@keyframes omniCompassAlive{
  0%,100%{transform:scale(1) rotate(0deg);filter:drop-shadow(0 0 18px rgba(125,212,255,.18))}
  50%{transform:scale(1.026) rotate(.8deg);filter:drop-shadow(0 0 28px rgba(125,212,255,.30))}
}
@media(prefers-reduced-motion:reduce){
  body.frozen-battle-page .omnisim-hero-breath-canvas,
  body.frozen-battle-page .omnisim-hero-fire-canvas{display:none!important}
}

/* Composition refinement after layered preview: keep the dragons visually obvious,
   make the title broader, and return the compass block to a compact left identity. */
body.frozen-battle-page .omnisim-hero-dragon-left{
  width:min(30vw,32%)!important;
  left:-1.5%!important;
  top:-12%!important;
}
body.frozen-battle-page .omnisim-hero-dragon-right{
  width:min(30vw,32%)!important;
  right:-1.4%!important;
  top:-11%!important;
}
body.frozen-battle-page .omnisim-hero-brand-left{
  left:2.6%!important;
  top:31%!important;
  width:15.2%!important;
  min-width:150px!important;
  max-width:260px!important;
  height:58%!important;
}
body.frozen-battle-page .omnisim-hero-divider{
  right:-17%!important;
  top:2%!important;
  height:60%!important;
}
body.frozen-battle-page .omnisim-hero-brand-center{
  left:20.5%!important;
  top:8%!important;
  width:71.2%!important;
  height:64%!important;
}
@media(max-width:1400px){
  body.frozen-battle-page .omnisim-hero-brand-left{left:2%!important;top:33%!important;width:17%!important;min-width:130px!important}
  body.frozen-battle-page .omnisim-hero-brand-center{left:20%!important;top:10%!important;width:72%!important}
  body.frozen-battle-page .omnisim-hero-dragon-left{width:34%!important;left:-4%!important;top:-9%!important}
  body.frozen-battle-page .omnisim-hero-dragon-right{width:34%!important;right:-4%!important;top:-8%!important}
}
@media(max-width:980px){
  body.frozen-battle-page .omnisim-hero-brand-left{left:1.5%!important;top:37%!important;width:20%!important;min-width:105px!important}
  body.frozen-battle-page .omnisim-hero-brand-center{left:18%!important;top:15%!important;width:78%!important}
  body.frozen-battle-page .omnisim-hero-dragon-left{width:39%!important;left:-9%!important;top:-5%!important}
  body.frozen-battle-page .omnisim-hero-dragon-right{width:39%!important;right:-10%!important;top:-4%!important}
}
@media(max-width:760px){
  body.frozen-battle-page .omnisim-hero-brand-left{left:1%!important;top:42%!important;width:22%!important;min-width:0!important}
  body.frozen-battle-page .omnisim-hero-brand-center{left:16%!important;top:20%!important;width:82%!important}
  body.frozen-battle-page .omnisim-hero-dragon-left{width:43%!important;left:-14%!important;top:-2%!important}
  body.frozen-battle-page .omnisim-hero-dragon-right{width:43%!important;right:-15%!important;top:-1%!important}
}

/* =========================================================
   Hero pass vNext: de-containerized single-dragon layout
   - no visible hero box/container
   - static dragon/logo/compass positions
   - animation only in breath/fire/particles
   ========================================================= */
body.frozen-battle-page .command-hub.omnisim-workspace,
body.frozen-battle-page .omnisim-page-head,
body.frozen-battle-page .omnisim-layered-hero,
body.frozen-battle-page .omnisim-hero-stage{
  overflow:visible!important;
}
body.frozen-battle-page .omnisim-layered-hero{
  gap:26px!important;
  padding:8px 0 20px!important;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-accessibility{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-stage{
  min-height:clamp(310px,28vw,440px)!important;
  background:none!important;
  border:none!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  isolation:isolate;
  pointer-events:none;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-stage::before,
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-stage::after,
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-atmosphere{
  animation:none!important;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-atmosphere{
  inset:-2% 0 10% 0;
  background:
    radial-gradient(circle at 13% 48%,rgba(175,232,255,.12),transparent 18%),
    radial-gradient(circle at 43% 44%,rgba(135,206,255,.10),transparent 16%),
    radial-gradient(circle at 66% 44%,rgba(255,149,74,.09),transparent 16%),
    radial-gradient(circle at 52% 100%,rgba(196,230,255,.08),transparent 24%);
  filter:blur(14px);
  opacity:.95;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-dragon-right,
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-breath-stream,
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-divider,
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-logo,
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-logo-fire,
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-logo-shards{
  display:none!important;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-dragon-left{
  z-index:3;
  width:clamp(310px,30vw,530px)!important;
  left:-0.8%!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  filter:drop-shadow(0 18px 30px rgba(0,0,0,.16)) drop-shadow(0 0 18px rgba(109,207,255,.12));
  animation:none!important;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-row{
  position:absolute;
  inset:0 2.4% 0 18.8%;
  display:flex;
  align-items:center;
  gap:clamp(18px,2.5vw,42px);
  z-index:4;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-wrap{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  max-width:none!important;
  pointer-events:none;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-left{
  flex:0 0 clamp(180px,17vw,290px);
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-compass{
  position:relative!important;
  width:100%!important;
  height:auto!important;
  display:block;
  animation:none!important;
  filter:drop-shadow(0 0 18px rgba(109,207,255,.14));
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-center{
  flex:1 1 auto;
  min-width:0;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-logo-shell{
  position:relative;
  min-height:clamp(112px,10vw,176px);
  width:100%;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-wordmark{
  position:relative;
  display:block;
  width:100%;
  font-size:clamp(5.6rem,10.4vw,11rem);
  line-height:.88;
  font-weight:900;
  letter-spacing:.015em;
  color:#f3fbff;
  background:linear-gradient(180deg,#f8feff 0%,#c8efff 25%,#95dbff 58%,#e9f6ff 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:
    0 0 2px rgba(255,255,255,.52),
    0 0 12px rgba(117,209,255,.22),
    0 0 28px rgba(99,189,255,.12);
  filter:drop-shadow(0 0 1px rgba(255,255,255,.26));
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-wordmark::before,
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-wordmark::after{
  content:attr(aria-hidden);
  content:"";
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-breath-canvas,
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-fire-canvas,
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-particles{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-breath-canvas{z-index:5}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-fire-canvas{z-index:6}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-particles{z-index:7}
body.frozen-battle-page .omnisim-layered-hero .omnisim-top-controls{
  position:static!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-areas:"context" "presentation";
  row-gap:14px!important;
  width:100%!important;
  margin-top:6px!important;
  align-items:start!important;
  pointer-events:auto!important;
}
body.frozen-battle-page .omnisim-layered-hero #battleContextHost{
  grid-area:context;
  width:min(820px,58vw)!important;
  justify-self:center!important;
  margin-top:2px!important;
}
body.frozen-battle-page .omnisim-layered-hero #battlePresentationHost{
  grid-area:presentation;
  width:min(340px,24vw)!important;
  justify-self:end!important;
  margin-right:3.5vw!important;
}
@media(max-width:1400px){
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-stage{min-height:clamp(290px,29vw,400px)!important}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-row{inset:0 1.8% 0 18.2%}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-dragon-left{width:clamp(290px,31vw,500px)!important}
}
@media(max-width:980px){
  body.frozen-battle-page .omnisim-layered-hero{gap:18px!important}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-stage{min-height:250px!important}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-row{inset:0 1% 0 22%}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-left{flex-basis:clamp(130px,17vw,200px)}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-wordmark{font-size:clamp(4rem,9vw,7.2rem)}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-dragon-left{width:clamp(220px,35vw,370px)!important;left:-5%!important}
  body.frozen-battle-page .omnisim-layered-hero #battleContextHost,
  body.frozen-battle-page .omnisim-layered-hero #battlePresentationHost{width:min(100%,680px)!important;justify-self:center!important;margin-right:0!important}
}
@media(max-width:760px){
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-stage{min-height:205px!important}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-row{inset:0 0 0 27%;gap:10px}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-left{flex-basis:96px}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-wordmark{font-size:clamp(2.8rem,8vw,4.6rem)}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-dragon-left{width:clamp(180px,42vw,300px)!important;left:-9%!important}
}
@media(prefers-reduced-motion:reduce){
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-breath-canvas,
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-fire-canvas,
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-particles{display:none!important}
}

/* =========================================================
   Feedback pass v2
   - full visible frost dragon
   - static logo art with embedded frostfire asset
   - context moved above Run Battle with matching width
   - presentation integrated into toggle/search-speed strip
   ========================================================= */
body.frozen-battle-page .omnisim-layered-hero{
  gap:22px!important;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-top-controls{
  display:none!important;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-stage{
  min-height:clamp(330px,27vw,420px)!important;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-row{
  inset:0 1.4% 0 23.2%;
  gap:clamp(16px,2.2vw,34px);
  align-items:center;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-left{
  flex:0 0 clamp(180px,16vw,260px);
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-center{
  flex:1 1 auto;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-logo-shell{
  min-height:clamp(126px,10vw,170px);
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-logo{
  position:relative!important;
  inset:auto!important;
  margin:0!important;
  width:100%!important;
  height:auto!important;
  display:block;
  animation:none!important;
  filter:drop-shadow(0 0 16px rgba(76,182,255,.14)) drop-shadow(0 0 16px rgba(255,133,62,.10));
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-dragon-left{
  width:clamp(250px,24.5vw,430px)!important;
  left:1.2%!important;
  top:51%!important;
  transform:translateY(-50%)!important;
  z-index:3!important;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-inline-context-host{
  width:100%!important;
  margin:0 0 14px!important;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-inline-context-host .omnisim-control-shell,
body.frozen-battle-page .omnisim-layered-hero .omnisim-inline-context-host .omnisim-context-control{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body.frozen-battle-page .omnisim-layered-hero .omnisim-inline-presentation-host{
  display:contents!important;
}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  grid-template-areas:'icon copy' 'segment segment'!important;
  row-gap:8px!important;
  align-items:center!important;
  width:min(310px,100%)!important;
  margin:0!important;
  padding:12px 14px!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,rgba(7,26,43,.95),rgba(8,26,42,.90))!important;
  border:1px solid rgba(83,201,255,.16)!important;
  box-shadow:0 12px 26px rgba(0,0,0,.22), inset 0 0 0 1px rgba(177,228,251,.08)!important;
}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline .omnisim-presentation-icon{
  grid-area:icon!important;
}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline .rail-joiner-copy{
  grid-area:copy!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline .battle-setup-view-actions{
  grid-area:segment!important;
  margin-top:0!important;
  width:100%!important;
}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline .battle-setup-view-btn{
  min-height:52px!important;
}
body.frozen-battle-page .omnisim-toggle-strip{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  align-items:stretch!important;
}
body.frozen-battle-page .omnisim-toggle-strip > #battlePresentationHost,
body.frozen-battle-page .omnisim-toggle-strip > .battle-setup-view-switch{
  min-width:0!important;
}
body.frozen-battle-page .simulation-console .omnisim-inline-context-host + .omnisim-simulation-hero{
  margin-top:0!important;
}
@media(max-width:1400px){
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-row{inset:0 0.8% 0 22.6%}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-dragon-left{width:clamp(230px,25vw,390px)!important}
}
@media(max-width:1150px){
  body.frozen-battle-page .omnisim-toggle-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:980px){
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-stage{min-height:270px!important}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-row{inset:0 1% 0 24%}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-left{flex-basis:clamp(128px,15vw,170px)}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-dragon-left{width:clamp(210px,28vw,320px)!important;left:0.2%!important}
  body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline{width:100%!important}
}
@media(max-width:760px){
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-stage{min-height:210px!important}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-row{inset:0 0 0 28%;gap:8px}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-brand-left{flex-basis:90px}
  body.frozen-battle-page .omnisim-layered-hero .omnisim-hero-dragon-left{width:clamp(150px,30vw,220px)!important;left:-2%!important}
  body.frozen-battle-page .omnisim-toggle-strip{grid-template-columns:1fr!important}
}

/* =========================================================
   Jeronimo dragon header pass
   ========================================================= */
body.frozen-battle-page .omnisim-layered-hero.omnisim-dragon-jeronimo-hero{
  padding-top:8px!important;
  gap:18px!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-stage,
body.frozen-battle-page .omnisim-dragon-jeronimo-hero{
  overflow:visible!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-stage{
  min-height:clamp(240px,20vw,330px)!important;
  background:none!important;
  border:none!important;
  border-radius:0!important;
  box-shadow:none!important;
  position:relative!important;
  isolation:isolate;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-atmosphere{
  inset:-4% 2% 8% 2%!important;
  background:
    radial-gradient(circle at 30% 50%,rgba(120,206,255,.08),transparent 20%),
    radial-gradient(circle at 50% 45%,rgba(95,176,255,.07),transparent 24%),
    radial-gradient(circle at 77% 50%,rgba(255,136,52,.08),transparent 24%)!important;
  filter:blur(16px)!important;
  opacity:1!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-row{
  position:absolute!important;
  inset:0!important;
  display:grid!important;
  grid-template-columns:minmax(150px,220px) minmax(520px,980px) minmax(270px,470px)!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(18px,2vw,30px)!important;
  z-index:4!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-wrap{
  position:relative!important;
  inset:auto!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  max-width:none!important;
  pointer-events:none!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-left{justify-self:end!important}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-center{justify-self:center!important; width:100%!important}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-right{justify-self:start!important}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-compass{
  width:clamp(145px,12vw,220px)!important;
  height:auto!important;
  display:block!important;
  filter:drop-shadow(0 0 18px rgba(95,203,255,.18))!important;
  animation:none!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-logo-shell{
  min-height:auto!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-logo{
  width:min(100%,960px)!important;
  max-width:100%!important;
  height:auto!important;
  display:block!important;
  margin:0 auto!important;
  filter:drop-shadow(0 0 18px rgba(99,181,255,.10))!important;
  animation:none!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-dragon-right{
  display:block!important;
  position:relative!important;
  width:clamp(250px,24vw,420px)!important;
  height:auto!important;
  right:auto!important;
  left:auto!important;
  top:auto!important;
  transform:none!important;
  filter:drop-shadow(0 14px 26px rgba(0,0,0,.18)) drop-shadow(0 0 18px rgba(255,116,48,.12))!important;
  animation:none!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-dragon-left,
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-wordmark,
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-logo-fire,
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-logo-shards,
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-divider,
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-breath-stream{
  display:none!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-top-controls{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:12px!important;
  margin-top:8px!important;
  pointer-events:auto!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero #battleContextHost{
  width:min(820px,58vw)!important;
  margin:0 auto!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero #battleContextHost .omnisim-control-shell,
body.frozen-battle-page .omnisim-dragon-jeronimo-hero #battleContextHost .omnisim-context-control{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero #battlePresentationHost{display:none!important}
body.frozen-battle-page .omnisim-toggle-strip{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  align-items:stretch!important;
}
body.frozen-battle-page .omnisim-inline-presentation-host{display:block!important}
body.frozen-battle-page .omnisim-toggle-strip > #battlePresentationHost{min-width:0!important}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline{
  display:grid!important;
  grid-template-columns:auto auto minmax(0,1fr)!important;
  grid-template-areas:'help icon copy' 'segment segment segment'!important;
  align-items:center!important;
  column-gap:10px!important;
  row-gap:8px!important;
  width:min(360px,100%)!important;
  margin:0!important;
  padding:12px 14px!important;
  background:linear-gradient(180deg,rgba(7,26,43,.95),rgba(8,26,42,.90))!important;
  border:1px solid rgba(83,201,255,.16)!important;
  border-radius:16px!important;
  box-shadow:0 12px 26px rgba(0,0,0,.22), inset 0 0 0 1px rgba(177,228,251,.08)!important;
}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline .omnisim-presentation-help{grid-area:help!important}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline .omnisim-presentation-icon{grid-area:icon!important}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline .rail-joiner-copy{grid-area:copy!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important;min-width:0!important}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline .battle-setup-view-actions{grid-area:segment!important;margin-top:0!important;width:100%!important}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline .battle-setup-view-btn{min-height:50px!important}
@media(max-width:1400px){
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-row{grid-template-columns:minmax(130px,190px) minmax(420px,1fr) minmax(230px,390px)!important}
}
@media(max-width:1100px){
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-stage{min-height:220px!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-row{grid-template-columns:minmax(96px,150px) minmax(300px,1fr) minmax(180px,290px)!important;gap:12px!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero #battleContextHost{width:min(92vw,760px)!important}
  body.frozen-battle-page .omnisim-toggle-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-stage{min-height:190px!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-row{grid-template-columns:84px minmax(0,1fr) 150px!important;gap:10px!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-compass{width:84px!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-dragon-right{width:150px!important}
  body.frozen-battle-page .omnisim-toggle-strip{grid-template-columns:1fr!important}
  body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline{width:100%!important}
}

/* =========================================================
   Jeronimo header feedback pass v2
   ========================================================= */
body.frozen-battle-page .omnisim-dragon-jeronimo-hero{
  gap:16px!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-stage{
  min-height:clamp(252px,20.5vw,330px)!important;
  padding-bottom:18px!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-row{
  display:block!important;
  position:absolute!important;
  inset:0!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-left,
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-center,
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-right{
  position:absolute!important;
  top:48.5%!important;
  transform:translateY(-50%)!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-left{
  left:5.2%!important;
  justify-self:auto!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-center{
  left:50%!important;
  width:min(52vw,860px)!important;
  transform:translate(-50%,-50%)!important;
  justify-self:auto!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-right{
  right:4.2%!important;
  justify-self:auto!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-logo{
  width:100%!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-compass{
  width:clamp(150px,11.5vw,215px)!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-dragon-right{
  width:clamp(270px,22vw,390px)!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-stage::after{
  content:""!important;
  position:absolute!important;
  left:7.5%!important;
  right:7.5%!important;
  bottom:3px!important;
  height:3px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,rgba(123,214,255,.15),rgba(123,214,255,.75) 22%,rgba(255,160,86,.9) 50%,rgba(123,214,255,.75) 78%,rgba(123,214,255,.15))!important;
  box-shadow:0 0 10px rgba(99,194,255,.24),0 0 20px rgba(255,138,64,.18)!important;
  opacity:.95!important;
  z-index:3!important;
  animation:omniHeroUnderlineGlow 3.2s ease-in-out infinite!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-stage::before{
  content:""!important;
  position:absolute!important;
  left:8%!important;
  bottom:1px!important;
  width:17%!important;
  height:8px!important;
  border-radius:999px!important;
  background:radial-gradient(circle at center,rgba(255,205,158,.98),rgba(255,124,46,.88) 48%,rgba(255,124,46,0) 76%)!important;
  box-shadow:0 0 22px rgba(255,133,54,.34)!important;
  z-index:4!important;
  animation:omniHeroUnderlineSweep 3.8s linear infinite!important;
}
@keyframes omniHeroUnderlineGlow{
  0%,100%{opacity:.88;filter:saturate(1)}
  50%{opacity:1;filter:saturate(1.18)}
}
@keyframes omniHeroUnderlineSweep{
  0%{transform:translateX(0) scaleX(.72);opacity:.35}
  10%{opacity:.95}
  50%{transform:translateX(235%) scaleX(1.05);opacity:1}
  90%{opacity:.8}
  100%{transform:translateX(470%) scaleX(.78);opacity:.2}
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-top-controls{
  margin-top:4px!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero #battleContextHost{
  width:min(780px,56vw)!important;
}
body.frozen-battle-page #battleCommandHost{
  margin-top:14px!important;
}
body.frozen-battle-page .omnisim-toggle-strip{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
}
body.frozen-battle-page .omnisim-toggle-item{
  min-width:0!important;
  overflow:hidden!important;
  padding:0 clamp(14px,1.2vw,22px)!important;
}
body.frozen-battle-page .omnisim-toggle-item .rail-joiner-copy{
  min-width:0!important;
  flex:1 1 auto!important;
}
body.frozen-battle-page .omnisim-toggle-item .rail-joiner-copy b,
body.frozen-battle-page .omnisim-toggle-item .rail-joiner-copy small{
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.frozen-battle-page .omnisim-toggle-strip .omnisim-speed-item input.command-speed-bar{
  min-width:110px!important;
}
body.frozen-battle-page #battlePresentationHost.omnisim-inline-presentation-host{
  display:block!important;
  min-width:0!important;
}
body.frozen-battle-page #battlePresentationHost.omnisim-inline-presentation-host:empty{
  display:none!important;
}
body.frozen-battle-page #battlePresentationHost.omnisim-inline-presentation-host > .battle-setup-view-switch{
  width:100%!important;
  max-width:none!important;
}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline{
  grid-template-columns:auto auto minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline .battle-setup-view-actions{
  min-width:0!important;
}
body.frozen-battle-page .battle-setup-view-switch.omnisim-presentation-inline .battle-setup-view-btn span{
  white-space:nowrap!important;
}
@media (max-width:1400px){
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-left{left:4.1%!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-right{right:2.8%!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-center{width:min(54vw,760px)!important}
}
@media (max-width:1100px){
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-stage{min-height:220px!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-left{left:2.4%!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-right{right:1.4%!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-center{width:min(56vw,610px)!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero #battleContextHost{width:min(92vw,760px)!important}
  body.frozen-battle-page .omnisim-toggle-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media (max-width:760px){
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-stage{min-height:180px!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-left{left:1.6%!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-center{width:min(58vw,420px)!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-right{right:.2%!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-compass{width:90px!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-dragon-right{width:162px!important}
  body.frozen-battle-page .omnisim-toggle-strip{grid-template-columns:1fr!important}
}

/* =========================================================
   Jeronimo header visual validation pass v3
   ========================================================= */
body.frozen-battle-page .omnisim-dragon-jeronimo-hero{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:0!important;
  padding:8px 0 18px!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-stage{
  flex:0 0 auto!important;
  min-height:clamp(252px,20.5vw,330px)!important;
  overflow:visible!important;
  padding:0 0 22px!important;
  margin:0!important;
}
/* Remove the stray moving fire bar. The lower underline is the only hero rule. */
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-stage::before{
  content:none!important;
  display:none!important;
  animation:none!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-stage::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:5.2%!important;
  right:5.2%!important;
  top:auto!important;
  bottom:2px!important;
  width:auto!important;
  height:2px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,rgba(104,207,255,.12),rgba(111,215,255,.72) 18%,rgba(214,246,255,.95) 50%,rgba(111,215,255,.72) 82%,rgba(104,207,255,.12))!important;
  box-shadow:0 0 10px rgba(99,194,255,.30),0 0 22px rgba(99,194,255,.12)!important;
  opacity:.94!important;
  transform:none!important;
  animation:omniHeroUnderlineGlow 3.6s ease-in-out infinite!important;
  z-index:3!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-center{
  left:50%!important;
  width:min(60vw,1040px)!important;
  transform:translate(-50%,-50%)!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-left{left:3.3%!important}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-right{right:2.8%!important}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-compass{width:clamp(152px,11.8vw,220px)!important}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-dragon-right{width:clamp(270px,22vw,390px)!important}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-top-controls{
  position:relative!important;
  display:block!important;
  width:100%!important;
  margin:18px 0 0!important;
  padding:0!important;
  transform:none!important;
  pointer-events:auto!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero #battleContextHost{
  display:block!important;
  width:min(780px,56vw)!important;
  margin:0 auto!important;
  position:relative!important;
  transform:none!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero #battlePresentationHost{display:none!important}
body.frozen-battle-page #battleCommandHost{
  margin-top:22px!important;
}
/* Six true optimizer-control segments: no truncation or boundary bleed. */
body.frozen-battle-page .omnisim-toggle-strip{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  overflow:visible!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item,
body.frozen-battle-page .omnisim-toggle-strip > #battlePresentationHost{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item{
  padding-left:clamp(10px,.9vw,17px)!important;
  padding-right:clamp(10px,.9vw,17px)!important;
  gap:9px!important;
  overflow:visible!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .omnisim-toggle-icon{
  flex-basis:32px!important;
  width:32px!important;
  height:32px!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .omnisim-toggle-icon svg{
  width:29px!important;
  height:29px!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy b{
  font-size:.78rem!important;
  line-height:1.08!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  max-width:none!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy small{
  font-size:.60rem!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-switch{
  flex-basis:48px!important;
  width:48px!important;
  height:29px!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-switch::after{
  width:21px!important;
  height:21px!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item input:checked+.rail-joiner-switch::after{
  transform:translateX(19px)!important;
}
body.frozen-battle-page .omnisim-toggle-strip .omnisim-speed-item{
  padding-left:12px!important;
  padding-right:12px!important;
  grid-template-columns:32px minmax(0,1fr)!important;
  column-gap:8px!important;
}
body.frozen-battle-page .omnisim-toggle-strip .omnisim-speed-item input.command-speed-bar{
  min-width:0!important;
  width:100%!important;
}
/* Presentation must physically occupy segment six, not render as a floating card. */
body.frozen-battle-page .omnisim-toggle-strip > #battlePresentationHost.omnisim-inline-presentation-host{
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  justify-self:stretch!important;
  align-self:stretch!important;
  overflow:visible!important;
}
body.frozen-battle-page #battlePresentationHost.omnisim-inline-presentation-host > .battle-setup-view-switch.omnisim-presentation-inline{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  width:100%!important;
  height:100%!important;
  min-height:88px!important;
  margin:0!important;
  padding:10px 11px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  grid-template-columns:auto 30px minmax(0,1fr)!important;
  grid-template-areas:'help icon copy' 'segment segment segment'!important;
  column-gap:7px!important;
  row-gap:6px!important;
  align-content:center!important;
  overflow:visible!important;
}
body.frozen-battle-page #battlePresentationHost .omnisim-presentation-help{
  grid-area:help!important;
  justify-self:start!important;
}
body.frozen-battle-page #battlePresentationHost .omnisim-presentation-icon{
  grid-area:icon!important;
  width:30px!important;
  height:30px!important;
  flex-basis:30px!important;
}
body.frozen-battle-page #battlePresentationHost .rail-joiner-copy{
  grid-area:copy!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  min-width:0!important;
}
body.frozen-battle-page #battlePresentationHost .rail-joiner-copy b{
  font-size:.78rem!important;
  white-space:nowrap!important;
}
body.frozen-battle-page #battlePresentationHost .rail-joiner-copy small{
  font-size:.60rem!important;
  white-space:nowrap!important;
}
body.frozen-battle-page #battlePresentationHost .battle-setup-view-actions{
  grid-area:segment!important;
  margin:0!important;
  min-height:34px!important;
}
body.frozen-battle-page #battlePresentationHost .battle-setup-view-btn{
  min-height:34px!important;
  padding:0 8px!important;
  font-size:.68rem!important;
}
@media(max-width:1200px){
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-center{width:min(59vw,760px)!important}
  body.frozen-battle-page .omnisim-toggle-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-center{width:min(58vw,430px)!important}
  body.frozen-battle-page .omnisim-toggle-strip{grid-template-columns:1fr!important}
}

/* =========================================================
   Jeronimo header visual validation pass v4
   ========================================================= */
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-center{
  width:min(66vw,1180px)!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-left{left:2.6%!important}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-right{right:1.8%!important}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-top-controls{
  margin-top:12px!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero #battleContextHost{
  width:min(690px,100%)!important;
}
body.frozen-battle-page #battleCommandHost{
  margin-top:18px!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy b,
body.frozen-battle-page #battlePresentationHost .rail-joiner-copy b{
  font-size:.72rem!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy small,
body.frozen-battle-page #battlePresentationHost .rail-joiner-copy small{
  font-size:.56rem!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item{
  gap:8px!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .omnisim-toggle-icon{
  flex-basis:29px!important;
  width:29px!important;
  height:29px!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .omnisim-toggle-icon svg{
  width:26px!important;
  height:26px!important;
}
@media(max-width:1400px){
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-center{width:min(65vw,940px)!important}
}

/* =========================================================
   Jeronimo header final layout stabilization pass v5
   ========================================================= */
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-stage{
  padding-bottom:14px!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-center{
  width:min(69vw,1240px)!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-top-controls{
  margin-top:14px!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero #battleContextHost{
  width:min(670px,100%)!important;
  margin:0 auto!important;
}
body.frozen-battle-page .battle-command-host,
body.frozen-battle-page #battleCommandHost{
  margin-top:18px!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy b,
body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy b{
  font-size:.70rem!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy small,
body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy small{
  font-size:.54rem!important;
}
body.frozen-battle-page #battlePresentationHost{
  display:none!important;
}
body.frozen-battle-page .omnisim-toggle-strip > #battlePresentationInlineHost.omnisim-inline-presentation-host{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  position:relative!important;
  justify-self:stretch!important;
  align-self:stretch!important;
  overflow:hidden!important;
  border-left:1px solid rgba(112,196,233,.14)!important;
}
body.frozen-battle-page #battlePresentationInlineHost.omnisim-inline-presentation-host > .battle-setup-view-switch.omnisim-presentation-inline{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  display:grid!important;
  width:100%!important;
  height:100%!important;
  min-height:88px!important;
  margin:0!important;
  padding:10px 11px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  grid-template-columns:auto 28px minmax(0,1fr)!important;
  grid-template-areas:'help icon copy' 'segment segment segment'!important;
  column-gap:7px!important;
  row-gap:6px!important;
  align-content:center!important;
  overflow:hidden!important;
}
body.frozen-battle-page #battlePresentationInlineHost .omnisim-presentation-help{grid-area:help!important;justify-self:start!important}
body.frozen-battle-page #battlePresentationInlineHost .omnisim-presentation-icon{grid-area:icon!important;width:28px!important;height:28px!important;flex-basis:28px!important}
body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy{grid-area:copy!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;min-width:0!important}
body.frozen-battle-page #battlePresentationInlineHost .battle-setup-view-actions{grid-area:segment!important;margin:0!important;min-height:34px!important;width:100%!important}
body.frozen-battle-page #battlePresentationInlineHost .battle-setup-view-btn{min-height:34px!important;padding:0 8px!important;font-size:.66rem!important}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item,
body.frozen-battle-page .omnisim-toggle-strip > #battlePresentationInlineHost{
  min-width:0!important;
  box-sizing:border-box!important;
}
@media(max-width:1400px){
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-brand-center{width:min(67vw,1020px)!important}
}

/* =========================================================
   Jeronimo header visual validation pass v6
   ========================================================= */
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-compass{
  width:clamp(170px,12.8vw,240px)!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-top-controls{
  position:relative!important;
  inset:auto!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  width:100%!important;
  height:auto!important;
  margin:16px 0 0!important;
  padding:0!important;
  transform:none!important;
  pointer-events:auto!important;
}
body.frozen-battle-page .omnisim-dragon-jeronimo-hero #battleContextHost{
  position:relative!important;
  inset:auto!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  justify-self:auto!important;
  width:min(680px,100%)!important;
  margin:0 auto!important;
  pointer-events:auto!important;
}
body.frozen-battle-page #battleCommandHost{
  margin-top:20px!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy b,
body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy b{
  font-size:.78rem!important;
  line-height:1.08!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy small,
body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy small{
  font-size:.60rem!important;
  line-height:1.1!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item{
  padding-left:12px!important;
  padding-right:12px!important;
}
body.frozen-battle-page .omnisim-toggle-strip,
body.frozen-battle-page #battlePresentationInlineHost.omnisim-inline-presentation-host,
body.frozen-battle-page #battlePresentationInlineHost .battle-setup-view-switch.omnisim-presentation-inline{
  overflow:visible!important;
}
body.frozen-battle-page #battlePresentationInlineHost.omnisim-inline-presentation-host{
  z-index:40!important;
}
body.frozen-battle-page #battlePresentationInlineHost .battle-setup-view-switch.omnisim-presentation-inline{
  z-index:41!important;
}
body.frozen-battle-page #battlePresentationInlineHost .omnisim-presentation-help[data-tip]{
  position:relative!important;
  z-index:100003!important;
}
body.frozen-battle-page #battlePresentationInlineHost .omnisim-presentation-help[data-tip]::after{
  left:auto!important;
  right:0!important;
  bottom:calc(100% + 11px)!important;
  top:auto!important;
  width:min(300px,72vw)!important;
  max-width:300px!important;
  transform:translate(0,6px)!important;
  z-index:100004!important;
}
body.frozen-battle-page #battlePresentationInlineHost .omnisim-presentation-help[data-tip]:hover::after,
body.frozen-battle-page #battlePresentationInlineHost .omnisim-presentation-help[data-tip]:focus-visible::after,
body.frozen-battle-page #battlePresentationInlineHost .omnisim-presentation-help[data-tip]:focus::after{
  transform:translate(0,0)!important;
}
@media(max-width:1400px){
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero .omnisim-hero-compass{width:clamp(156px,12.2vw,218px)!important}
  body.frozen-battle-page .omnisim-dragon-jeronimo-hero #battleContextHost{width:min(650px,92vw)!important}
}

/* Presentation tooltip escape hatch: keep the final strip segment visually open for its custom tooltip. */
body.frozen-battle-page .omnisim-toggle-strip > #battlePresentationInlineHost.omnisim-inline-presentation-host,
body.frozen-battle-page .omnisim-toggle-strip > #battlePresentationInlineHost.omnisim-inline-presentation-host > .battle-setup-view-switch.omnisim-toggle-item.omnisim-presentation-inline{
  overflow:visible!important;
}
/* 1440px fit polish: retain readable toggler labels without touching adjacent controls. */
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy b,
body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy b{
  font-size:.74rem!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy small,
body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy small{
  font-size:.58rem!important;
}


/* =========================================================
   Final micro-polish: larger toggler labels + refined dragon fire
   ========================================================= */
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy b,
body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy b{
  font-size:.82rem!important;
  line-height:1.08!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy small,
body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy small{
  font-size:.62rem!important;
  line-height:1.08!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item{
  padding-left:10px!important;
  padding-right:10px!important;
  gap:7px!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .omnisim-toggle-icon{
  width:27px!important;
  height:27px!important;
  flex-basis:27px!important;
}
@media(max-width:1500px){
  body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy b,
  body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy b{font-size:.77rem!important}
  body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy small,
  body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy small{font-size:.59rem!important}
  body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item{padding-left:8px!important;padding-right:8px!important;gap:6px!important}
}
@media(max-width:1250px){
  body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy b,
  body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy b{font-size:.72rem!important}
}


/* Micro-polish v2: increase final toggle label size while preserving 1440 fit. */
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy b,
body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy b{
  font-size:.85rem!important;
}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy small,
body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy small{
  font-size:.63rem!important;
}
@media(max-width:1500px){
  body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy b,
  body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy b{font-size:.80rem!important}
  body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy small,
  body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy small{font-size:.60rem!important}
}
@media(max-width:1250px){
  body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item .rail-joiner-copy b,
  body.frozen-battle-page #battlePresentationInlineHost .rail-joiner-copy b{font-size:.75rem!important}
}
@media(max-width:1500px){
  body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item{
    padding-left:6px!important;
    padding-right:6px!important;
    gap:5px!important;
  }
}

/* =========================================================
   Global-topbar integration: mobile width clamp
   Keep the Battle context/hero stack inside the viewport without affecting
   the validated desktop composition.
   ========================================================= */
@media(max-width:760px){
  body.frozen-battle-page .command-hub.omnisim-workspace,
  body.frozen-battle-page .omnisim-page-head.omnisim-layered-hero,
  body.frozen-battle-page .omnisim-layered-hero .omnisim-top-controls,
  body.frozen-battle-page .omnisim-layered-hero #battleContextHost,
  body.frozen-battle-page .omnisim-layered-hero #battleContextHost > *,
  body.frozen-battle-page .omnisim-context-control{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  body.frozen-battle-page .omnisim-layered-hero,
  body.frozen-battle-page .omnisim-top-controls,
  body.frozen-battle-page #battleContextHost,
  body.frozen-battle-page .omnisim-context-control{
    overflow-x:clip!important;
  }
  body.frozen-battle-page .omnisim-context-control .omnisim-control-label,
  body.frozen-battle-page .omnisim-context-control .omnisim-segmented,
  body.frozen-battle-page .omnisim-context-control .battle-context-actions{
    min-width:0!important;
    max-width:100%!important;
  }
}

/* My Heroes optimizer toggle adds one true control segment before Search Speed. */
body.frozen-battle-page .omnisim-toggle-strip{grid-template-columns:repeat(7,minmax(0,1fr))!important}
body.frozen-battle-page .omnisim-toggle-strip > .omnisim-toggle-item{min-width:0!important}
@media(max-width:1280px){body.frozen-battle-page .omnisim-toggle-strip{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:900px){body.frozen-battle-page .omnisim-toggle-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){body.frozen-battle-page .omnisim-toggle-strip{grid-template-columns:1fr!important}}

/* Viewport-level OmniSIM tooltip portal. Keeping tooltip content under <body> prevents
   optimizer/presentation cards with overflow from clipping help text. */
body.frozen-battle-page .omnisim-tooltip-portal{
  position:fixed!important;position-anchor:--omnisim-tooltip-anchor;position-area:bottom center;position-try-fallbacks:flip-block;inset:auto!important;margin:10px;z-index:2147482100!important;display:none;box-sizing:border-box;width:min(430px,calc(100vw - 32px));max-width:min(430px,calc(100vw - 32px));
  padding:10px 12px;border:1px solid rgba(96,183,237,.76);border-radius:10px;
  background:linear-gradient(180deg,rgba(5,24,43,.99),rgba(3,18,33,.99));color:#eaf8ff;
  box-shadow:0 16px 40px rgba(0,0,0,.48),0 0 22px rgba(57,180,255,.12);
  font:600 .74rem/1.45 var(--omni-ui);letter-spacing:0;text-transform:none;text-align:left;white-space:normal;overflow-wrap:normal;word-break:normal;
  pointer-events:none;
}
body.frozen-battle-page .omnisim-tooltip-portal.show{display:block!important}
body.frozen-battle-page .omnisim-tooltip-anchor{anchor-name:--omnisim-tooltip-anchor}
body.frozen-battle-page.omnisim-tooltip-portal-ready .omnisim-info[data-tip]::after,
body.frozen-battle-page.omnisim-tooltip-portal-ready .omnisim-inline-help[data-tip]::after,
body.frozen-battle-page.omnisim-tooltip-portal-ready [data-command-tip]::after{display:none!important}
/* Final browser-gate modal stacking correction: reports/pickers must sit above the OmniSIM top bar. */
body.frozen-battle-page .battle-report-modal{z-index:2147483000!important}
body.frozen-battle-page .loadout-modal{z-index:2147482900!important}


/* =========================================================
   2026-10-03 OmniSIM Bear-Hunt-style cinematic header pass
   Presentation only. Battle mechanics/search contracts are unchanged.
   ========================================================= */
body.frozen-battle-page .omnisim-cinematic-hero{
  display:block!important;
  width:100%!important;
  min-height:0!important;
  margin:18px 0 16px!important;
  padding:0!important;
  overflow:visible!important;
  z-index:5!important;
}
body.frozen-battle-page .omnisim-cinematic-hero .omnisim-hero-stage{
  position:relative!important;
  width:100%!important;
  height:clamp(380px,29vw,560px)!important;
  min-height:380px!important;
  overflow:hidden!important;
  isolation:isolate!important;
  border:1px solid rgba(108,207,255,.46)!important;
  border-radius:25px!important;
  background:#041727!important;
  box-shadow:0 28px 72px rgba(0,5,14,.38),inset 0 0 0 1px rgba(209,244,255,.04),0 0 34px rgba(57,180,238,.09)!important;
  pointer-events:auto!important;
}
body.frozen-battle-page .omnisim-hero-scene{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  object-fit:cover!important;object-position:center!important;
  opacity:0!important;visibility:hidden!important;transform:scale(1.005)!important;
  transition:opacity .36s ease,visibility .36s ease!important;
  filter:saturate(1.02) contrast(1.01) brightness(1.05)!important;
  user-select:none!important;-webkit-user-drag:none!important;pointer-events:none!important;
}
body.frozen-battle-page .omnisim-hero-scene.active{opacity:1!important;visibility:visible!important}
body.frozen-battle-page .omnisim-hero-vignette{
  position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(180deg,rgba(248,253,255,.04),rgba(7,24,39,.04) 62%,rgba(8,24,39,.14)),linear-gradient(90deg,rgba(5,20,34,.08),transparent 24%,transparent 80%,rgba(8,22,34,.06));
}
body.frozen-battle-page .omnisim-hero-project-mark{
  position:absolute!important;z-index:5!important;left:2.1%!important;top:11.5%!important;
  width:clamp(138px,12vw,230px)!important;aspect-ratio:1/1!important;
  display:grid!important;place-items:center!important;pointer-events:none!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(3,19,34,.73) 0 48%,rgba(3,19,34,.30) 65%,transparent 76%)!important;
  filter:drop-shadow(0 0 20px rgba(100,211,255,.19))!important;
}
body.frozen-battle-page .omnisim-hero-project-mark img{width:100%!important;height:100%!important;object-fit:contain!important;animation:omniCompassShardPulse 7s ease-in-out infinite!important}
body.frozen-battle-page .omnisim-hero-copy{display:none!important}
body.frozen-battle-page .omnisim-hero-copy{
  position:absolute!important;z-index:6!important;left:15.2%!important;top:44.5%!important;
  width:min(43%,850px)!important;min-height:19%!important;padding:clamp(14px,1.4vw,24px) clamp(18px,1.8vw,32px)!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  border:1px solid rgba(151,226,255,.82)!important;border-radius:13px!important;
  background:linear-gradient(180deg,rgba(5,34,59,.91),rgba(3,25,45,.86))!important;
  box-shadow:inset 0 0 0 1px rgba(225,249,255,.12),inset 0 0 28px rgba(100,203,255,.10),0 0 24px rgba(68,190,245,.20),0 16px 40px rgba(0,4,12,.24)!important;
  backdrop-filter:blur(5px)!important;-webkit-backdrop-filter:blur(5px)!important;
  clip-path:polygon(16px 0,calc(100% - 16px) 0,100% 16px,100% calc(100% - 16px),calc(100% - 16px) 100%,16px 100%,0 calc(100% - 16px),0 16px)!important;
  pointer-events:none!important;
}
body.frozen-battle-page .omnisim-hero-copy::before{
  content:"";position:absolute;inset:4px;pointer-events:none;border:1px solid rgba(162,225,255,.19);clip-path:inherit;
  box-shadow:inset 0 0 26px rgba(107,207,255,.08);
}
body.frozen-battle-page .omnisim-hero-copy p{
  position:relative;z-index:1;margin:0!important;color:#f2fbff!important;text-align:center!important;
  font:750 clamp(.94rem,1.02vw,1.18rem)/1.42 var(--omni-ui)!important;letter-spacing:.005em!important;
  text-shadow:0 2px 12px rgba(0,0,0,.62),0 0 14px rgba(113,210,255,.10)!important;
}
body.frozen-battle-page .omnisim-hero-scene-switch{
  position:absolute!important;right:18px!important;bottom:16px!important;z-index:9!important;
  display:flex!important;align-items:center!important;gap:6px!important;padding:6px 8px 6px 12px!important;
  border:1px solid rgba(127,211,247,.40)!important;border-radius:999px!important;
  background:rgba(3,21,37,.78)!important;box-shadow:0 10px 28px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(9px)!important;-webkit-backdrop-filter:blur(9px)!important;
}
body.frozen-battle-page .omnisim-hero-scene-switch>span{color:#98bed3;font-size:.58rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
body.frozen-battle-page .omnisim-hero-scene-switch button{
  width:34px!important;height:30px!important;display:grid!important;place-items:center!important;padding:0!important;
  border:1px solid rgba(111,196,237,.34)!important;border-radius:999px!important;background:rgba(7,38,61,.82)!important;
  color:#a9cfe1!important;font:850 .68rem/1 var(--omni-ui)!important;cursor:pointer!important;
}
body.frozen-battle-page .omnisim-hero-scene-switch button.active{border-color:rgba(120,221,255,.85)!important;background:linear-gradient(180deg,#209bd1,#146a9a)!important;color:#fff!important;box-shadow:0 0 16px rgba(55,192,246,.32)!important}

/* Battle context now owns the full width of the battle command surface. */
body.frozen-battle-page .omnisim-context-band{
  position:relative!important;display:block!important;width:100%!important;margin:0 0 18px!important;padding:0!important;
  overflow:visible!important;pointer-events:auto!important;z-index:90!important;
}
body.frozen-battle-page .omnisim-context-band #battleContextHost{
  position:static!important;left:auto!important;top:auto!important;transform:none!important;width:100%!important;max-width:none!important;margin:0!important;justify-self:stretch!important;overflow:visible!important;
}
body.frozen-battle-page .omnisim-context-band #battleContextHost .omnisim-control-shell{
  width:100%!important;max-width:none!important;min-height:132px!important;padding:14px!important;margin:0!important;
  border-radius:14px!important;background:linear-gradient(180deg,rgba(4,29,49,.86),rgba(3,21,38,.91))!important;
}
body.frozen-battle-page .omnisim-context-band #battlePresentationHost{display:none!important}
body.frozen-battle-page .omnisim-context-band .battle-context-segmented{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important;
  min-height:82px!important;margin-top:7px!important;padding:0!important;border:0!important;background:transparent!important;overflow:visible!important;
}
body.frozen-battle-page .omnisim-context-band .battle-context-segmented button{
  position:relative!important;isolation:isolate!important;min-height:82px!important;padding:0 18px!important;overflow:hidden!important;
  border:1px solid rgba(91,181,229,.34)!important;border-radius:10px!important;color:#d9edf8!important;background-color:#061e34!important;
  background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 8px 22px rgba(0,5,13,.18)!important;
}
body.frozen-battle-page .omnisim-context-band .battle-context-segmented button::before{
  content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(2,17,30,.88),rgba(3,24,41,.58) 52%,rgba(2,17,30,.72));transition:background .16s ease;
}
body.frozen-battle-page .omnisim-context-band .battle-context-segmented .context-rally{background-image:url('/static/image/omnisim/tundra-run-ai.webp')!important;background-position:50% 43%!important}
body.frozen-battle-page .omnisim-context-band .battle-context-segmented .context-wild{background-image:url('/static/image/omnisim/tundra-mountains.webp')!important;background-position:50% 50%!important}
body.frozen-battle-page .omnisim-context-band .battle-context-segmented .context-city{background-image:url('/static/image/omnisim/tundra-page-ai-v2.png')!important;background-position:57% 43%!important}
body.frozen-battle-page .omnisim-context-band .battle-context-segmented button:hover::before{background:linear-gradient(90deg,rgba(2,17,30,.72),rgba(3,30,50,.42),rgba(2,17,30,.62))}
body.frozen-battle-page .omnisim-context-band .battle-context-segmented button.active{
  border-color:rgba(102,216,255,.88)!important;color:#fff!important;box-shadow:0 0 0 1px rgba(91,211,255,.16),0 0 24px rgba(46,180,238,.25),inset 0 0 28px rgba(53,186,237,.10)!important;
}
body.frozen-battle-page .omnisim-context-band .battle-context-segmented button.active::before{background:linear-gradient(90deg,rgba(3,42,69,.72),rgba(14,109,158,.36),rgba(3,35,59,.62))}
body.frozen-battle-page .omnisim-context-band .context-mode-icon{position:relative;z-index:1;font-size:1.1rem!important;filter:drop-shadow(0 2px 8px rgba(0,0,0,.55))}
body.frozen-battle-page .omnisim-context-band .context-mode-copy{position:relative;z-index:1}
body.frozen-battle-page .omnisim-context-band .context-mode-copy b{font-size:.88rem!important;text-shadow:0 2px 10px rgba(0,0,0,.70)!important}

/* Attacker / simulation / defender now share one top and bottom edge on desktop. */
@media(min-width:1121px){
  body.frozen-battle-page .omnisim-battle-main{--omnisim-command-height:432px;align-items:start!important}
  body.frozen-battle-page .omnisim-optimizer-column{margin-top:0!important}
  body.frozen-battle-page .omnisim-optimizer-action,
  body.frozen-battle-page .omnisim-simulation-console{min-height:var(--omnisim-command-height)!important}
}
@media(min-width:1721px){
  body.frozen-battle-page .omnisim-battle-main{--omnisim-command-height:460px}
}

@media(max-width:1200px){
  body.frozen-battle-page .omnisim-cinematic-hero .omnisim-hero-stage{height:clamp(340px,43vw,500px)!important;min-height:340px!important}
  body.frozen-battle-page .omnisim-hero-project-mark{left:1.7%!important;top:11%!important;width:clamp(120px,16vw,190px)!important}
  body.frozen-battle-page .omnisim-hero-copy{left:15%!important;top:45%!important;width:46%!important;padding:13px 17px!important}
  body.frozen-battle-page .omnisim-hero-copy p{font-size:clamp(.78rem,1.3vw,.96rem)!important;line-height:1.38!important}
}
@media(max-width:760px){
  body.frozen-battle-page .omnisim-cinematic-hero{margin-top:10px!important}
  body.frozen-battle-page .omnisim-cinematic-hero .omnisim-hero-stage{height:320px!important;min-height:320px!important;border-radius:17px!important}
  body.frozen-battle-page .omnisim-hero-scene{object-position:56% center!important}
  body.frozen-battle-page .omnisim-hero-project-mark{left:8px!important;top:8px!important;width:100px!important}
  body.frozen-battle-page .omnisim-hero-copy{left:12px!important;right:12px!important;top:auto!important;bottom:52px!important;width:auto!important;min-height:0!important;padding:11px 13px!important}
  body.frozen-battle-page .omnisim-hero-copy p{font-size:.72rem!important;line-height:1.34!important;text-align:left!important}
  body.frozen-battle-page .omnisim-hero-scene-switch{right:9px!important;bottom:9px!important;padding:4px 5px 4px 9px!important}
  body.frozen-battle-page .omnisim-hero-scene-switch>span{display:none!important}
  body.frozen-battle-page .omnisim-hero-scene-switch button{width:30px!important;height:27px!important}
  body.frozen-battle-page .omnisim-context-band .battle-context-segmented{grid-template-columns:1fr!important;gap:7px!important}
  body.frozen-battle-page .omnisim-context-band .battle-context-segmented button{min-height:62px!important}
  body.frozen-battle-page .omnisim-context-band #battleContextHost .omnisim-control-shell{min-height:0!important;padding:11px!important}
}
/* Keep Battle Context tooltips outside the illustrated tabs. */
body.frozen-battle-page .omnisim-context-band .battle-context-segmented button{overflow:visible!important}
@media(min-width:1121px){
  body.frozen-battle-page .omnisim-battle-main{align-items:stretch!important}
  body.frozen-battle-page .omnisim-optimizer-column{padding:0!important;margin-top:0!important;align-self:stretch!important;height:100%!important}
  body.frozen-battle-page .omnisim-optimizer-column>.omnisim-optimizer-action{flex:1 1 auto!important;height:auto!important}
}
/* The cinematic header owns visible branding; this block is semantics only. */
body.frozen-battle-page .omnisim-hero-accessibility{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
/* Lock the three primary command cards to one shared visual height; recommendation disclosures grow below them. */
@media(min-width:1121px) and (max-width:1450px){
  body.frozen-battle-page .omnisim-optimizer-column>.omnisim-optimizer-action,
  body.frozen-battle-page .omnisim-simulation-console{height:554px!important;min-height:554px!important;max-height:554px!important;flex:0 0 554px!important}
}
@media(min-width:1451px){
  body.frozen-battle-page .omnisim-optimizer-column>.omnisim-optimizer-action,
  body.frozen-battle-page .omnisim-simulation-console{height:520px!important;min-height:520px!important;max-height:520px!important;flex:0 0 520px!important}
}

/* 2026-10-03 final Scene A text-source correction:
   the approved cinematic image already contains the exact OmniSIM description panel.
   Never render the HTML copy on top of it. Keep the separate project compass mark. */
body.frozen-battle-page .omnisim-cinematic-hero .omnisim-hero-copy{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

/* =========================================================
   2026-10-03 local header image tester
   Scene A keeps the bundled project asset by default. User-selected images are
   browser-local previews (IndexedDB Blob), never external/runtime URLs.
   ========================================================= */
body.frozen-battle-page .omnisim-hero-image-tools{
  position:absolute!important;
  left:18px!important;
  bottom:16px!important;
  z-index:10!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  max-width:min(620px,calc(100% - 220px))!important;
  padding:6px 8px!important;
  border:1px solid rgba(127,211,247,.40)!important;
  border-radius:999px!important;
  background:rgba(3,21,37,.82)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(9px)!important;
  -webkit-backdrop-filter:blur(9px)!important;
  pointer-events:auto!important;
}
body.frozen-battle-page .omnisim-hero-tool-btn{
  min-height:30px!important;
  padding:0 11px!important;
  border:1px solid rgba(111,196,237,.34)!important;
  border-radius:999px!important;
  background:rgba(7,38,61,.88)!important;
  color:#cceeff!important;
  font:850 .64rem/1 var(--omni-ui)!important;
  letter-spacing:.02em!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
body.frozen-battle-page .omnisim-hero-tool-btn:hover,
body.frozen-battle-page .omnisim-hero-tool-btn:focus-visible{
  border-color:rgba(120,221,255,.82)!important;
  background:rgba(12,74,110,.94)!important;
  color:#fff!important;
}
body.frozen-battle-page .omnisim-hero-tool-btn.primary{
  background:linear-gradient(180deg,#209bd1,#146a9a)!important;
  border-color:rgba(120,221,255,.82)!important;
  color:#fff!important;
  box-shadow:0 0 14px rgba(55,192,246,.20)!important;
}
body.frozen-battle-page .omnisim-hero-image-status{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#9ec7da!important;
  font:800 .58rem/1.2 var(--omni-ui)!important;
  letter-spacing:.04em!important;
}
body.frozen-battle-page .omnisim-cinematic-hero .omnisim-hero-stage.omnisim-custom-hero-active[data-scene="a"]{
  cursor:grab!important;
  touch-action:none!important;
}
body.frozen-battle-page .omnisim-cinematic-hero .omnisim-hero-stage.omnisim-custom-hero-dragging[data-scene="a"]{
  cursor:grabbing!important;
  user-select:none!important;
}
body.frozen-battle-page .omnisim-cinematic-hero .omnisim-hero-stage.omnisim-custom-hero-active[data-scene="a"]::after{
  content:"Drag image to reposition";
  position:absolute;
  left:50%;
  top:14px;
  z-index:8;
  transform:translateX(-50%);
  padding:6px 11px;
  border:1px solid rgba(142,220,251,.28);
  border-radius:999px;
  background:rgba(3,21,37,.70);
  color:rgba(230,248,255,.84);
  font:800 .58rem/1 var(--omni-ui);
  letter-spacing:.08em;
  text-transform:uppercase;
  pointer-events:none;
  backdrop-filter:blur(7px);
}
@media(max-width:760px){
  body.frozen-battle-page .omnisim-hero-image-tools{
    left:9px!important;
    bottom:44px!important;
    right:9px!important;
    max-width:none!important;
    width:auto!important;
    flex-wrap:wrap!important;
    border-radius:14px!important;
    padding:6px!important;
  }
  body.frozen-battle-page .omnisim-hero-tool-btn{min-height:28px!important;padding:0 9px!important;font-size:.58rem!important}
  body.frozen-battle-page .omnisim-hero-image-status{flex:1 1 100%!important;padding:2px 4px!important}
  body.frozen-battle-page .omnisim-cinematic-hero .omnisim-hero-stage.omnisim-custom-hero-active[data-scene="a"]::after{top:8px;font-size:.52rem!important}
}

/* OmniSIM battle-context artwork + title-over-image refinement */
body.frozen-battle-page .omnisim-context-band,
body.frozen-battle-page .omnisim-context-band #battleContextHost,
body.frozen-battle-page .omnisim-context-band .omnisim-context-control,
body.frozen-battle-page .omnisim-context-band .battle-context-segmented{
  overflow:visible!important;
}
/* The Battle Context shell should not add another visible card around the artwork. */
body.frozen-battle-page .omnisim-context-band #battleContextHost .omnisim-control-shell{
  min-height:0!important;
  padding:8px 0 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.frozen-battle-page .omnisim-context-band .battle-context-segmented{
  min-height:0!important;
  margin-top:4px!important;
  padding:0!important;
  gap:12px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode{
  position:relative!important;
  z-index:1!important;
  height:132px!important;
  min-height:132px!important;
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  isolation:isolate!important;
  transform:none!important;
}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode:hover,
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode:focus-visible,
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode.active{
  z-index:30!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
/* Scenic artwork is the only visible image container. It sits fully below the PNG title. */
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-visual{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:auto!important;
  aspect-ratio:2048 / 255!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:10px!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  pointer-events:none!important;
}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-banner{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:fill!important;
  object-position:center center!important;
  opacity:.22!important;
  filter:brightness(.42) saturate(.58) contrast(.92)!important;
  transform:none!important;
  transition:opacity .18s ease,filter .18s ease!important;
  pointer-events:none!important;
}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode:hover .context-mode-banner,
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode:focus-visible .context-mode-banner,
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode.active .context-mode-banner{
  opacity:1!important;
  filter:brightness(1) saturate(1) contrast(1)!important;
}
/* Selected/hovered state is expressed through the artwork itself, never an extra frame. */
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode:hover .context-mode-visual,
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode:focus-visible .context-mode-visual,
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode.active .context-mode-visual{
  filter:drop-shadow(0 0 10px rgba(78,194,244,.22))!important;
}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-visual::after{
  content:none!important;
  display:none!important;
}
/* Title PNG floats above the scenic image. Only its lower edge overlaps the image. */
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title{
  position:absolute!important;
  z-index:6!important;
  left:50%!important;
  bottom:56px!important;
  width:auto!important;
  height:76px!important;
  max-width:74%!important;
  object-fit:contain!important;
  opacity:1!important;
  filter:none!important;
  transform:translateX(-50%)!important;
  pointer-events:none!important;
  user-select:none!important;
  -webkit-user-drag:none!important;
}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title-rally{height:86px!important;max-width:68%!important}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title-wild{height:82px!important;max-width:78%!important}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title-city{height:84px!important;max-width:64%!important}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-icon,
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-copy{display:none!important}

/* Preserve the original per-mode floating tooltip behavior. */
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode[data-tip]::after{
  content:attr(data-tip)!important;
  display:block!important;
  position:absolute!important;
  z-index:1000002!important;
  left:50%!important;
  top:calc(100% + 10px)!important;
  bottom:auto!important;
  width:min(520px,calc(100vw - 32px))!important;
  max-width:min(520px,calc(100vw - 32px))!important;
  min-width:300px!important;
  height:auto!important;
  padding:14px 16px!important;
  border:1px solid rgba(96,183,237,.82)!important;
  border-radius:14px!important;
  box-sizing:border-box!important;
  background:linear-gradient(180deg,rgba(5,24,43,.995),rgba(3,18,33,.995))!important;
  color:#eaf8ff!important;
  box-shadow:0 14px 36px rgba(0,0,0,.42),0 0 22px rgba(57,180,255,.12)!important;
  font:650 .78rem/1.55 var(--omni-ui)!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-align:left!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateX(-50%) translateY(-5px)!important;
  transition:opacity .14s ease,transform .14s ease,visibility .14s ease!important;
}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode[data-tip]:hover::after,
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode[data-tip]:focus-visible::after{
  opacity:1!important;
  visibility:visible!important;
  transform:translateX(-50%) translateY(0)!important;
}
body.frozen-battle-page .sr-only{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
@media(max-width:760px){
  body.frozen-battle-page .omnisim-context-band .battle-context-segmented{gap:8px!important}
  body.frozen-battle-page .command-context .battle-context-btn.context-image-mode{height:110px!important;min-height:110px!important}
  body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title{bottom:42px!important;height:62px!important;max-width:70%!important}
  body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title-rally{height:70px!important;max-width:66%!important}
  body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title-wild{height:66px!important;max-width:76%!important}
  body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title-city{height:68px!important;max-width:63%!important}
  body.frozen-battle-page .command-context .battle-context-btn.context-image-mode[data-tip]::after{
    min-width:0!important;width:min(360px,calc(100vw - 28px))!important;max-width:min(360px,calc(100vw - 28px))!important;
  }
}


/* 2026-10-04 owner correction: restore ONE full-width Battle Context shell.
   The mode buttons themselves are only the scenic image area; title PNGs float
   above them inside the shared shell, with no per-mode empty/header rectangle. */
body.frozen-battle-page .omnisim-context-band #battleContextHost .omnisim-control-shell{
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  margin:0!important;
  padding:14px 14px 14px!important;
  border:1px solid rgba(93,190,235,.38)!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,rgba(4,29,49,.86),rgba(3,21,38,.91))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 12px 28px rgba(0,6,15,.18)!important;
  overflow:visible!important;
}
body.frozen-battle-page .omnisim-context-band .omnisim-control-label{
  position:relative!important;
  z-index:40!important;
  margin:0!important;
}
body.frozen-battle-page .omnisim-context-band .battle-context-segmented{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  min-height:0!important;
  margin-top:44px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode{
  position:relative!important;
  z-index:1!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:2048 / 255!important;
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:10px!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  isolation:isolate!important;
  transform:none!important;
}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-visual{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:10px!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  pointer-events:none!important;
}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-banner{
  width:100%!important;
  height:100%!important;
  object-fit:fill!important;
}
/* Preserve the approved title/image relationship: title mostly above, small overlap. */
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title{
  bottom:calc(100% - 24px)!important;
  height:76px!important;
  max-width:74%!important;
}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title-rally{height:86px!important;max-width:68%!important}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title-wild{height:82px!important;max-width:78%!important}
body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title-city{height:84px!important;max-width:64%!important}
@media(max-width:760px){
  body.frozen-battle-page .omnisim-context-band #battleContextHost .omnisim-control-shell{padding:11px!important}
  body.frozen-battle-page .omnisim-context-band .battle-context-segmented{grid-template-columns:1fr!important;gap:48px!important;margin-top:40px!important}
  body.frozen-battle-page .command-context .battle-context-btn.context-image-mode{aspect-ratio:2048 / 255!important}
  body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title{bottom:calc(100% - 18px)!important;height:58px!important;max-width:72%!important}
  body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title-rally{height:66px!important;max-width:66%!important}
  body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title-wild{height:62px!important;max-width:76%!important}
  body.frozen-battle-page .command-context .battle-context-btn.context-image-mode .context-mode-title-city{height:64px!important;max-width:63%!important}
}
