/* A self-contained first chapter. Scope every rule to avoid changing the shop or other zones. */
body #hq .neon-episode{--neon-cyan:#8af5ed;--neon-gold:#edc88b;position:relative;isolation:isolate;overflow:hidden;margin:12px 0 24px;border:1px solid #82c5d342;border-radius:22px;background:#080f19;color:#edf6ff;font-size:14px;line-height:1.55;box-shadow:0 24px 65px #0005;text-align:left}
body #hq .neon-episode *{box-sizing:border-box}
body #hq .neon-episode h2,body #hq .neon-episode h3,body #hq .neon-episode p{margin:0}
body #hq .neon-episode button{font-family:inherit;cursor:pointer;touch-action:manipulation}
body #hq .neon-episode button:focus-visible{outline:3px solid #b5fff5;outline-offset:4px}
body #hq .neon-episode button:disabled{cursor:not-allowed;opacity:.48}
body #hq .neon-scene{position:relative;min-height:300px;padding:34px;background:linear-gradient(90deg,#07101be8 0%,#07101b94 48%,#07101b12),linear-gradient(0deg,#080f19 0%,transparent 42%),url('./assets/expedition-citadel-v1.png') center 46%/cover no-repeat}
body #hq .neon-header{position:relative;z-index:1;max-width:640px}
body #hq .neon-header>small,body #hq .neon-eyebrow{display:block;margin-bottom:12px;font-size:11px;font-weight:800;letter-spacing:.18em;color:var(--neon-cyan);text-transform:uppercase}
body #hq .neon-header h2{max-width:550px;margin:8px 0 14px;font-size:clamp(28px,4vw,46px);font-weight:850;line-height:1.1;letter-spacing:-.035em;text-wrap:balance}
body #hq .neon-header p{max-width:500px;color:#c6d4e3;font-size:15px;line-height:1.65}
body #hq .neon-route{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:20px 28px;border-bottom:1px solid #ffffff12;background:#0b1421}
body #hq .neon-node{position:relative;display:grid;gap:4px;min-width:0;padding:11px 10px;border:1px solid #ffffff13;border-radius:12px;color:#8d9eb3;background:#101c2b}
body #hq .neon-node b,body #hq .neon-node strong{font-size:13px;line-height:1.3;color:inherit}
body #hq .neon-node small{font-size:11px;line-height:1.3}
body #hq .neon-node i{font-style:normal;color:var(--neon-gold)}
body #hq .neon-node[data-state="current"],body #hq .neon-node.current{border-color:#74e2dca3;background:linear-gradient(135deg,#154344,#102630);color:#e7fffb;box-shadow:0 0 22px #47dab011}
body #hq .neon-node[data-state="done"],body #hq .neon-node.done{color:#9ddcc0;border-color:#579e7944}
body #hq .neon-briefing,body #hq .neon-event,body #hq .neon-complete,body #hq .neon-combat{padding:26px 30px}
body #hq .neon-objectives{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}
body #hq .neon-objectives>*,body #hq .neon-reward-preview{padding:16px;border:1px solid #b5d8ef20;border-radius:14px;background:#ffffff04}
body #hq .neon-objectives b,body #hq .neon-objectives strong{display:block;margin-bottom:7px;font-size:15px;color:#edf6ff}
body #hq .neon-objectives p,body #hq .neon-objectives small{color:#a9bbd0;font-size:13px;line-height:1.55}
body #hq .neon-reward-preview{margin:16px 0;color:#e7cfac;border-color:#ddb16d38;background:linear-gradient(100deg,#95734316,transparent)}
body #hq .neon-primary{display:inline-flex;align-items:center;justify-content:center;min-height:50px;gap:10px;padding:14px 25px;border:1px solid #a0ffee88;border-radius:11px;background:linear-gradient(115deg,#99f5d7,#72d8e9);color:#062528;font-size:15px;font-weight:850;box-shadow:0 6px 25px #4bcbb519}
body #hq .neon-primary:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}
body #hq .neon-fighters{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:8px 0 20px}
body #hq .neon-fighter{position:relative;display:grid;grid-template-columns:130px 1fr;gap:10px 18px;align-items:center;min-width:0;padding:15px;border:1px solid #ffffff15;border-radius:16px;background:linear-gradient(135deg,#142f3b66,#101927)}
body #hq .neon-fighter.neon-enemy{background:linear-gradient(135deg,#452b3566,#101927)}
body #hq .neon-portrait{grid-row:span 3;position:relative;overflow:hidden;width:130px;height:155px;border-radius:11px;background-color:#090f18;object-fit:cover;object-position:center;box-shadow:0 8px 25px #0005}
body #hq .neon-portrait img{width:100%;height:100%;object-fit:cover}
body #hq .neon-fighter h3,body #hq .neon-fighter b{font-size:18px;line-height:1.25;overflow-wrap:anywhere}
body #hq .neon-fighter small{color:#a7bdcf;font-size:12px}
body #hq .neon-health-track{width:100%;height:9px;overflow:hidden;border-radius:20px;background:#030914}
body #hq .neon-health-bar{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#39b88d,#a1f1cd);transition:width .35s ease}
body #hq .neon-fighter.neon-enemy .neon-health-bar{background:linear-gradient(90deg,#be596b,#f4a899)}
body #hq .neon-intent{display:grid;gap:4px;margin:18px 0;padding:16px 19px;border:1px solid #66d3dd44;border-left:3px solid #74e3d7;border-radius:10px;background:#12313a77;color:#ccefed}
body #hq .neon-intent[data-intent="POWER"]{border-color:#f4b16b65;border-left-color:#ffbb7b;background:#6843222b;color:#ffe1bd}
body #hq .neon-intent b{font-size:16px}
body #hq .neon-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}
body #hq .neon-action{display:flex;flex-direction:column;justify-content:center;gap:8px;min-height:94px;padding:15px 12px;border:1px solid #809bb43d;border-radius:12px;background:#162332;color:#e2ebf7;text-align:left}
body #hq .neon-action b{font-size:15px;line-height:1.3}
body #hq .neon-action small{font-size:12px;line-height:1.5;color:#adbed2}
body #hq .neon-action:hover:not(:disabled){background:#21384a;border-color:#8fd0d1}
body #hq .neon-action.recommended,body #hq .neon-action[data-recommended="true"]{border-color:#7be2ca;background:linear-gradient(140deg,#174237,#132b35);box-shadow:inset 0 0 0 1px #7be2ca20}
body #hq .neon-action[data-action="skill"]{border-color:#b49bdf66;background:linear-gradient(140deg,#39294f,#19243a)}
body #hq .neon-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0}
body #hq .neon-choice{display:flex;flex-direction:column;gap:12px;min-height:160px;padding:20px;border:1px solid #d2c39b33;border-radius:14px;background:#17212f;color:#f0e9db;text-align:left}
body #hq .neon-choice b{font-size:18px}
body #hq .neon-choice small,body #hq .neon-choice p{font-size:13px;line-height:1.65;color:#bcc8d6}
body #hq .neon-choice:hover:not(:disabled){border-color:#d8c18c;background:#24313e;transform:translateY(-2px)}
body #hq .neon-status,body #hq .neon-note{margin-top:12px;color:#a0b3c8;font-size:12px;line-height:1.6}
body #hq .neon-last-turn{margin:14px 0;padding:13px 17px;border:1px solid #ffffff12;border-radius:10px;background:#03091488;color:#ccd9e6;font-size:13px}
body #hq .neon-complete{border-top:1px solid #7ddfc34d;background:linear-gradient(120deg,#10392c55,#0b1724)}
body #hq .neon-complete h3{margin-bottom:12px;font-size:26px;color:#a0ebc5}
@media(max-width:700px){body #hq .neon-scene{min-height:275px;padding:25px 20px;background-position:center,center,60% center}body #hq .neon-header p{font-size:14px;max-width:340px}body #hq .neon-route{padding:14px 12px;gap:5px}body #hq .neon-node{padding:9px 5px;border-radius:8px;text-align:center}body #hq .neon-node b,body #hq .neon-node strong{font-size:11px}body #hq .neon-node small{font-size:9px}body #hq .neon-briefing,body #hq .neon-event,body #hq .neon-complete,body #hq .neon-combat{padding:20px 16px}body #hq .neon-objectives{grid-template-columns:1fr;gap:8px}body #hq .neon-objectives>*{padding:13px}body #hq .neon-primary{width:100%}body #hq .neon-fighters{gap:10px}body #hq .neon-fighter{display:flex;flex-direction:column;gap:8px;padding:10px;text-align:center}body #hq .neon-portrait{width:100%;height:145px}body #hq .neon-fighter h3,body #hq .neon-fighter b{font-size:15px}body #hq .neon-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}body #hq .neon-action{min-height:98px;padding:13px 11px}body #hq .neon-choices{grid-template-columns:1fr;gap:10px}body #hq .neon-choice{min-height:115px;padding:17px}body #hq .neon-episode{border-radius:17px}body #hq .neon-intent{padding:13px}body #hq .neon-intent b{font-size:14px}}
/* Override the compact legacy combat layout only for the new chapter. */
body #hq #world-screen .neon-episode.combat-stage{max-width:none!important;width:100%;padding:0!important;margin:12px 0 20px!important}
body #hq #world-screen #dungeonMap:not([data-world-view="loot"]) .neon-episode-legacy{display:none!important}
body #hq .neon-header.neon-scene{display:flex;justify-content:space-between;gap:20px;max-width:none;min-height:320px}
body #hq .neon-header>div{max-width:570px}
body #hq .neon-header>div>small{font-size:11px;font-weight:850;letter-spacing:.2em;color:var(--neon-cyan)}
body #hq .neon-header em{display:block;margin-top:19px;font-size:12px;font-style:normal;color:#a6c8d0}
body #hq .neon-header>b{align-self:flex-start;white-space:nowrap;padding:8px 12px;border:1px solid #95d1d044;border-radius:8px;background:#081622bb;color:#bde6e5;font-size:12px}
body #hq .neon-node span{font-size:12px;line-height:1.3;overflow-wrap:anywhere}
body #hq .neon-node i{font-weight:800;font-size:19px}
body #hq .neon-node[data-state="complete"]{color:#9ddcc0;border-color:#579e7944}
body #hq .neon-briefing h3,body #hq .neon-event h2,body #hq .neon-briefing h2{margin:6px 0 12px;font-size:25px;letter-spacing:-.02em;line-height:1.2}
body #hq .neon-briefing>small,body #hq .neon-event>small,body #hq .neon-complete>small{font-size:10px;letter-spacing:.16em;color:var(--neon-gold);font-weight:800}
body #hq .neon-briefing>p,body #hq .neon-event>p,body #hq .neon-complete>p{color:#b8c9d9}
body #hq .neon-action.primary{width:100%;max-width:360px;min-height:62px;border-color:#a0ffee88;background:linear-gradient(115deg,#99f5d7,#72d8e9);color:#062528;text-align:center;align-items:center;gap:3px}
body #hq .neon-action.primary span{color:#1c595b;font-size:12px}
body #hq .neon-fighters{grid-template-columns:minmax(0,1fr) 25px minmax(0,1fr);margin:24px 26px 18px;align-items:stretch}
body #hq .neon-versus{align-self:center;color:#7c8da7;font-size:12px;font-weight:900;text-align:center}
body #hq .neon-fighter>.neon-portrait{grid-row:1 / span 4;align-self:stretch;height:auto;min-height:165px}
body #hq .neon-fighter>small,body #hq .neon-fighter>b,body #hq .neon-fighter>.neon-health-track,body #hq .neon-fighter>span{grid-column:2}
body #hq .neon-fighter>.neon-health-track{align-self:end}
body #hq .neon-fighter>span{font-size:12px;color:#b5cbdc}
body #hq .neon-fighter.neon-enemy>.neon-portrait:empty{background-image:url('./assets/enemies-atlas-v2.png');background-size:500% 300%;background-position:calc(var(--neon-enemy-index)*25%) 0;background-repeat:no-repeat}
body #hq .neon-episode>.neon-intent,body #hq .neon-episode>.neon-actions,body #hq .neon-episode>.neon-combat-log{margin-left:26px;margin-right:26px}
body #hq .neon-action>span{font-size:12px;line-height:1.5;color:#adbed2}
body #hq .neon-event-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0 0}
body #hq .neon-choice>span{font-size:13px;line-height:1.65;color:#bcc8d6}
body #hq .neon-choice>i{font-size:25px;font-style:normal}
body #hq .neon-combat-log{margin-top:17px;margin-bottom:22px;padding:15px;border:1px solid #ffffff16;border-radius:12px;background:#03091477;color:#c3d3e1;font-size:13px}
body #hq .neon-reward-preview{margin:4px 26px 26px}
body #hq .neon-reward-preview>small{display:block;margin-bottom:10px;color:#b6a48a;font-size:10px;letter-spacing:.15em}
body #hq .neon-reward-preview>div{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:11px}
body #hq .neon-reward-preview span{display:inline-block;border:1px solid #e2c28e22;border-radius:7px;padding:5px 9px;background:#080c12;font-size:12px;color:#d2dbea}
body #hq .neon-reward-preview>b{font-size:12px;font-weight:650}
body #hq .neon-episode[data-neon-state="combat"] .neon-header.neon-scene{min-height:160px;padding:20px 26px;background-position:center,center,center 47%}
body #hq .neon-episode[data-neon-state="combat"] .neon-header h2{font-size:28px;margin:6px 0}
body #hq .neon-episode[data-neon-state="combat"] .neon-header em{display:none}
body #hq .neon-boss-phase{display:grid;gap:9px;margin:18px 26px;padding:16px 18px;border:1px solid #d89e6555;border-radius:12px;background:linear-gradient(110deg,#462d253d,#101722);color:#e9c3a3}
body #hq .neon-boss-phase>div{display:flex;justify-content:space-between;gap:12px;font-size:14px}
body #hq .neon-boss-phase>div>span{font-size:12px;color:#a9b7c9}
body #hq .neon-boss-phase>i{display:block;height:4px;border-radius:10px;overflow:hidden;background:#ffffff0b}
body #hq .neon-boss-phase>i>em{display:block;height:100%;background:linear-gradient(90deg,#d79765,#f6c388)}
body #hq .neon-boss-phase>small{font-size:12px;color:#c2b6ad}
body #hq .neon-boss-phase>strong{font-size:13px;color:#ffd0a0}
body #hq .neon-action.recommended::after{content:'Сильный ответ';font-size:10px;font-weight:700;letter-spacing:.02em;color:#a1e8cb}
body #hq .neon-episode.is-pending .neon-actions{opacity:.72}
@media(max-width:700px){body #hq .neon-boss-phase{margin:14px;padding:13px}body #hq .neon-boss-phase>div{flex-wrap:wrap;gap:3px}}
@media(max-width:700px){body #hq .neon-header.neon-scene{display:block;min-height:305px}body #hq .neon-header>b{display:inline-block;margin-top:18px}body #hq .neon-header h2{font-size:31px}body #hq .neon-header em{margin-top:12px}body #hq .neon-node span{font-size:10px}body #hq .neon-fighters{grid-template-columns:minmax(0,1fr) 15px minmax(0,1fr);gap:6px;margin:18px 12px 14px}body #hq .neon-fighter>.neon-portrait{height:155px;min-height:0;align-self:auto}body #hq .neon-episode>.neon-intent,body #hq .neon-episode>.neon-actions,body #hq .neon-episode>.neon-combat-log{margin-left:14px;margin-right:14px}body #hq .neon-event-choices{grid-template-columns:1fr;gap:10px}body #hq .neon-reward-preview{margin:4px 14px 18px}body #hq .neon-action.primary{max-width:none}body #hq .neon-episode[data-neon-state="combat"] .neon-header.neon-scene{padding:16px;min-height:0}body #hq .neon-episode[data-neon-state="combat"] .neon-header h2{font-size:24px}body #hq .neon-episode[data-neon-state="combat"] .neon-header p{display:none}body #hq .neon-episode[data-neon-state="combat"] .neon-header>b{margin-top:8px;padding:4px 8px}body #hq .neon-episode[data-neon-state="combat"] .neon-route{padding:10px 12px}}
@media(prefers-reduced-motion:reduce){body #hq .neon-episode *,body #hq .neon-episode *::before,body #hq .neon-episode *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
