.boss-hud {
  display: grid;
  gap: 6px;
  margin-top: 10px;
  padding: 9px 11px;
  border: 1px solid rgba(255, 99, 128, 0.34);
  border-radius: 13px;
  background: rgba(64, 8, 25, 0.62);
  box-shadow: inset 0 0 22px rgba(255, 61, 104, 0.06);
}
.boss-hud[hidden] { display: none; }
.boss-hud__meta { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:.62rem; font-weight:900; letter-spacing:.1em; color:#ffc2cf; }
.boss-hud__meta strong { color:#fff0f4; }
.boss-hud__track { height:7px; overflow:hidden; border-radius:999px; background:rgba(0,0,0,.45); }
.boss-hud__track span { display:block; width:100%; height:100%; border-radius:inherit; background:linear-gradient(90deg,#ff365f,#ff9b55); transition:width 90ms linear; }
.boss-warning { position:absolute; z-index:8; top:42%; left:50%; transform:translate(-50%,-50%); width:min(88%,320px); padding:13px 16px; border:1px solid rgba(255,95,123,.62); border-radius:14px; background:rgba(43,4,16,.92); box-shadow:0 0 32px rgba(255,50,91,.2); color:#fff0f4; text-align:center; font-weight:1000; letter-spacing:.12em; pointer-events:none; }
.boss-warning[hidden] { display:none; }
.boss-warning small { display:block; margin-top:4px; color:#ffadbf; font-size:.58rem; letter-spacing:.1em; }
.combat-enemy--elite { width:46px; height:46px; }
.combat-enemy--elite .combat-enemy__body { width:34px; height:34px; border-color:#ffb05f; background:radial-gradient(circle at 50% 38%,#fff0bd 0 10%,#d86f24 14% 46%,#4a1c0b 48% 100%); box-shadow:0 0 24px rgba(255,145,67,.38); }
.combat-enemy--boss { width:70px; height:70px; filter:drop-shadow(0 0 15px rgba(255,48,91,.24)); }
.combat-enemy--boss .combat-enemy__body { width:52px; height:52px; border-width:3px; border-radius:15px; border-color:#ff4c72; background:radial-gradient(circle at 50% 42%,#ffd7df 0 8%,#d72751 10% 34%,#6e1028 36% 62%,#220710 64% 100%); box-shadow:0 0 30px rgba(255,48,91,.48), inset 0 0 18px rgba(255,255,255,.08); }
.combat-stage[data-boss-phase="2"] .combat-enemy--boss .combat-enemy__body { animation:boss-phase-pulse .72s ease-in-out infinite alternate; }
.combat-enemy--boss .combat-enemy__hp { display:none; }

.victory-overlay {
  position:fixed;
  inset:0;
  z-index:1600;
  display:grid;
  place-items:center;
  padding:20px;
  background:rgba(2,8,13,.88);
  backdrop-filter:blur(8px);
}
.victory-overlay[hidden] { display:none; }
.victory-panel {
  width:min(92vw,430px);
  padding:24px;
  border:1px solid rgba(120,244,211,.34);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(10,42,42,.97),rgba(4,18,24,.98));
  box-shadow:0 24px 80px rgba(0,0,0,.45),0 0 40px rgba(83,237,198,.08);
  text-align:center;
}
.victory-panel__eyebrow { color:#7ef0d3; font-size:.65rem; font-weight:1000; letter-spacing:.14em; }
.victory-panel h2 { margin:8px 0 6px; font-size:clamp(1.7rem,7vw,2.5rem); color:#effffb; }
.victory-panel p { margin:0 0 18px; color:#a9d9d1; line-height:1.5; }
.victory-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:8px; margin-bottom:16px; }
.victory-stats span { padding:10px; border-radius:12px; background:rgba(124,240,211,.07); color:#9bcfc5; font-size:.64rem; font-weight:800; letter-spacing:.08em; }
.victory-stats strong { display:block; margin-top:3px; color:#f1fffb; font-size:1rem; }
.victory-restart { width:100%; min-height:52px; border:1px solid rgba(116,243,207,.35); border-radius:14px; background:rgba(51,151,128,.24); color:#eafff9; font-weight:1000; letter-spacing:.08em; cursor:pointer; }

.defeat-overlay { background:rgba(13,3,8,.9); }
.defeat-panel {
  border-color:rgba(255,108,134,.34);
  background:linear-gradient(180deg,rgba(47,13,24,.98),rgba(18,6,12,.99));
  box-shadow:0 24px 80px rgba(0,0,0,.5),0 0 40px rgba(255,72,108,.08);
}
.defeat-panel__eyebrow { color:#ff9caf; }
.defeat-panel h2 { color:#fff1f4; }
.defeat-panel p { color:#d9aab4; }
.defeat-stats span { background:rgba(255,108,134,.07); color:#d9aab4; }
.defeat-stats strong { color:#fff4f6; }
.defeat-restart {
  border-color:rgba(255,108,134,.38);
  background:linear-gradient(180deg,rgba(139,38,62,.55),rgba(88,20,38,.6));
  color:#fff4f7;
}

@keyframes boss-phase-pulse { from{filter:brightness(1)} to{filter:brightness(1.45);transform:rotate(45deg) scale(1.08)} }
@media (max-width:720px){.boss-warning{top:38%;}.combat-enemy--boss{width:60px;height:60px}.combat-enemy--boss .combat-enemy__body{width:46px;height:46px}.victory-panel{padding:20px}}
@media (prefers-reduced-motion:reduce){.combat-stage[data-boss-phase="2"] .combat-enemy--boss .combat-enemy__body{animation:none}}
