/* V8 arsenals, portrait scenes and readable progression. */
.combat-links{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 16px}.combat-links button{padding:10px 14px}.combat-links .selected,.training-choice.selected{border-color:#66eadb;background:#154950;color:#bcfff5}.combat-status:empty{display:none}.combat-status p{line-height:1.6}.combat-status:has(p){padding:12px 16px;border:1px solid #bd9257;border-radius:14px;margin-bottom:16px;background:#29283b}.combat-status button{margin-bottom:4px}.arsenal-intro,.soap-intro{background:linear-gradient(135deg,#20344d,#172236)}.arsenal-intro h2,.soap-intro h2{font-size:clamp(24px,5vw,34px);margin:12px 0}.arsenal-intro p,.soap-intro p{color:#d0dbee;line-height:1.7}.arsenal-intro details{margin-top:18px;padding:14px;background:#111f32;border-radius:12px}.arsenal-intro summary{cursor:pointer}.talent-grid{display:grid;gap:18px;grid-template-columns:1fr}.talent-card{border-top:3px solid #62dbed}.branch-weapon_poison{border-top-color:#b695ff}.branch-weapon_dynamite{border-top-color:#ffb473}.talent-icon{font-size:38px}.combat-progress{height:9px;overflow:hidden;border-radius:20px;background:#0b1729;margin:12px 0}.combat-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#40c7d5,#94ffe2);transition:width .7s ease}.branch-weapon_poison .combat-progress i{background:linear-gradient(90deg,#9178df,#e1c3ff)}.branch-weapon_dynamite .combat-progress i{background:linear-gradient(90deg,#e18a4b,#ffdb9b)}.combat-between{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.training-choice{width:100%;margin:18px 0 8px;min-height:44px}.talent-option{display:grid;grid-template-columns:1fr auto;gap:10px;padding:18px 0;border-top:1px solid #36475d}.talent-option small{display:block;line-height:1.6;color:#aebfd8;margin-top:5px}.talent-option strong{color:#a4fbe7}.talent-buttons{grid-column:1/-1;display:flex;gap:8px}.talent-buttons button{flex:1;min-height:42px}.soap-grid,.combat-goals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.soap-balance{display:block;font-size:30px;color:#aaf9e5;margin:16px 0}.soap-art{display:grid;place-items:center;font-size:62px;min-height:120px;border-radius:14px;background:radial-gradient(ellipse,#3c638850,transparent)}.soap-item h3{min-height:2.5em;line-height:1.5}.soap-item .stat-pills{margin:18px 0}.soap-item.gold{border-color:#d5ae60}.soap-item.purple{border-color:#a187d3}.soap-item.blue{border-color:#6896c2}.combat-rewards{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.combat-rewards span{border-radius:8px;padding:8px 10px;background:#102738;color:#bff3e5;font-size:12px}.combat-rewards b{white-space:nowrap}.combat-goal h3{line-height:1.5}.combat-goal.claimed{opacity:.75}.combat-attack{display:flex;flex-direction:column;align-items:center;gap:8px;min-height:110px;padding:14px 8px!important}.combat-attack b{font-size:14px}.combat-attack small{line-height:1.5;color:inherit}.combat-attack>span{font-size:12px;color:#91ecdb}.combat-attack.resource-hit{background:linear-gradient(145deg,#254964,#1d2e4c);border-color:#4e7390}.combat-attack.free-hit{background:#162a39;border-color:#41605b}.attack-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.combat-portrait{display:block;flex-shrink:0;width:80px;aspect-ratio:1;background-image:url('/assets/live/boss-portraits-v8.png');background-size:500% 300%;background-position:var(--portrait-x) var(--portrait-y);border-radius:12px;border:1px solid #638495}.boss-row>.combat-portrait{float:left;margin:0 14px 12px 0}.boss-row:after{content:'';display:block;clear:both}.boss-card .combat-portrait{width:100%;max-width:220px;margin:0 auto 16px}.boss-v8-stage{height:270px!important;display:flex!important;align-items:center;justify-content:center;overflow:hidden;position:relative;background:radial-gradient(ellipse at center,#436064,#0b1726 70%)!important}.boss-v8-stage:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,#78eaff22 50%,transparent 65%);background-size:300% 100%;animation:bossLightV8 6s ease-in-out infinite}.boss-v8-stage .combat-portrait{width:270px;border:0;border-radius:0;animation:bossBreathV8 6s ease-in-out infinite;box-shadow:0 0 65px #98dada33;will-change:transform}.boss-v8-stage:after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 -20px 35px #0b1726}.boss-v8-stage .scene-caption{z-index:2}#combatTimer{margin:18px 0;padding:16px;background:#102437;border:1px solid #3b657d;border-radius:14px}#combatTimer strong{font-size:24px;color:#b1f8e8}.brigade-arsenal{padding:18px;border:1px solid #47738b;border-radius:14px;margin:18px 0;background:#132c3b}.brigade-arsenal p{line-height:1.65}.combat-attack:disabled,.talent-buttons button:disabled{opacity:.4}.combat-attack:focus-visible,.combat-links button:focus-visible{outline:2px solid #a0ffef;outline-offset:3px}
@keyframes bossBreathV8{0%,100%{transform:translateY(3px) scale(1.015)}50%{transform:translateY(-3px) scale(1.04)}}@keyframes bossLightV8{0%,100%{background-position:100% 0}50%{background-position:0 0}}.motion-off .boss-v8-stage:before,.motion-off .boss-v8-stage .combat-portrait,.scene-paused.boss-v8-stage:before,.scene-paused.boss-v8-stage .combat-portrait{animation-play-state:paused}.motion-off .combat-progress i{transition:none}@media(prefers-reduced-motion:reduce){.boss-v8-stage:before,.boss-v8-stage .combat-portrait{animation:none}.combat-progress i{transition:none}}@media(max-width:540px){.soap-grid,.combat-goals{grid-template-columns:1fr}.attack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.talent-card{padding:18px}.combat-links button{flex:1;padding:10px}.boss-row>.combat-portrait{width:66px}.boss-v8-stage{height:240px!important}.boss-v8-stage .combat-portrait{width:240px}}

/* Mutual boss assistance */
.friend-combat-card{border-color:#377d83;background:linear-gradient(145deg,#12323f,#1d2543);display:grid;gap:14px}
.friend-combat-card h2,.friend-combat-card h3,.friend-combat-card p{margin:0}
.friend-combat-card p{line-height:1.6}
.friend-combat-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.friend-combat-stats>div{padding:14px;background:#102133;border-radius:14px;border:1px solid #315765;min-width:0}
.friend-combat-stats small,.friend-combat-log small{display:block;color:#bfd4e8;font-size:12px;line-height:1.5}
.friend-combat-stats strong{display:block;font-size:clamp(20px,5vw,30px);color:#7ef1da;overflow-wrap:anywhere}
.friend-combat-breakdown{padding:12px;background:#122137;border-radius:12px;font-size:13px}
.friend-combat-log{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.friend-combat-log li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #365061}
.friend-combat-log li>div{min-width:0;overflow-wrap:anywhere}.friend-combat-log li>strong{color:#7ef1da;white-space:nowrap}
.friend-combat-card details{font-size:13px;line-height:1.6}.friend-combat-card summary{cursor:pointer;color:#7de9ef}.friend-combat-card details p{margin-top:10px}
