/* archimonde — spécifique. Tronc commun : assets/guide.css */
:root{--h1:76px}
#bg{background-image:url("../media/ce375b8e6554163570f0.jpg")}

.room{fill:rgba(8,16,22,.28);stroke:rgba(235,245,240,.32);stroke-width:2.5}
.room-inner{fill:none;stroke:rgba(220,238,232,.12);stroke-width:1.5}
[data-step="2"] #grip,[data-step="3"] #airburst,[data-step="4"] #doomfire,[data-step="5"] #fear,[data-step="6"] #melee,[data-step="7"] #soul{opacity:1}
#boss{animation:breathe 3.6s ease-in-out infinite;filter:drop-shadow(0 0 16px rgba(140,240,126,.55))}
@keyframes breathe{50%{transform:scale(1.05)}}
.limit{fill:none;stroke:var(--ember);stroke-width:3;stroke-dasharray:14 12;opacity:0;transition:opacity .5s}
.limit-label{font-family:'JetBrains Mono',monospace;font-size:19px;fill:var(--ember);letter-spacing:.08em;
  opacity:0;transition:opacity .5s;paint-order:stroke;stroke:rgba(5,10,16,.9);stroke-width:5px}
[data-step="6"] .limit,[data-step="6"] .limit-label{opacity:1}
[data-step="6"] .limit{animation:pulse 2.4s ease-in-out infinite}
.spacing-halo{fill:none;stroke:rgba(235,240,230,.6);stroke-width:1.5;stroke-dasharray:4 7;opacity:0;transition:opacity .5s}
[data-step="1"] .spacing-halo{opacity:.65}
[data-step="3"] #ab-target{animation:lift 4.2s ease-in-out infinite}
@keyframes lift{0%,12%{transform:translate(0,0) scale(1)}40%,58%{transform:translate(0,-52px) scale(1.45)}86%,100%{transform:translate(0,0) scale(1)}}
.ab-halo{fill:none;stroke:var(--ember);stroke-width:3}
#ab-shadow{opacity:0}
[data-step="3"] #ab-shadow{animation:shadowPulse 4.2s ease-in-out infinite}
@keyframes shadowPulse{0%,12%{opacity:0;r:10}40%,58%{opacity:.55;r:22}86%,100%{opacity:0;r:10}}
#ab-cue{opacity:0;font-family:'JetBrains Mono',monospace;font-weight:700;font-size:16px;fill:var(--ember);
  text-anchor:middle;letter-spacing:.06em;paint-order:stroke;stroke:rgba(5,10,16,.9);stroke-width:5px}
[data-step="3"] #ab-cue{animation:cueFlash 4.2s ease-in-out infinite}
@keyframes cueFlash{0%,44%{opacity:0}56%,74%{opacity:1}86%,100%{opacity:0}}
.safe-path{fill:none;stroke:#F2EEE0;stroke-width:3;stroke-dasharray:9 9;opacity:.85;animation:dash 1.4s linear infinite}
.bad-path{fill:none;stroke:#E8443C;stroke-width:3;opacity:.85}
.flame{fill:var(--ember)}
#flame-head{filter:drop-shadow(0 0 18px rgba(255,122,51,.9))}
[data-step="4"] #flame-head{offset-path:path("M 0 190 C 60 120, 150 60, 230 20");animation:walk 4.6s ease-in-out infinite}
@keyframes walk{0%{offset-distance:0%}70%,100%{offset-distance:100%}}
.trail circle{fill:var(--ember);opacity:0}
[data-step="4"] .trail circle{animation:ignite 4.6s ease-in-out infinite}
@keyframes ignite{0%,8%{opacity:0}22%{opacity:.85}100%{opacity:.15}}
[data-step="4"] #runner{offset-path:path("M 0 190 C 110 210, 200 170, 250 90");animation:flee 4.6s ease-in-out infinite}
@keyframes flee{0%{offset-distance:0%}70%,100%{offset-distance:100%}}
.fear-wave{fill:none;stroke:#B58BF5;stroke-width:3.5;opacity:0}
[data-step="5"] .fear-wave{animation:wave 3s ease-out infinite}
[data-step="5"] .fear-wave:nth-of-type(2){animation-delay:1s}
@keyframes wave{0%{r:40;opacity:.9}100%{r:340;opacity:0}}
.totem{fill:rgba(5,10,16,.6);stroke:var(--ember);stroke-width:3}
.curse-ring{fill:rgba(140,240,126,.16);stroke:#8CF07E;stroke-width:3}
.ct2{font-family:'Archivo Black',sans-serif;font-size:26px;fill:#8CF07E;text-anchor:middle}
[data-step="2"] .cursed{animation:pulse 1.5s ease-in-out infinite;animation-delay:var(--d,0s)}
.melee-ring{fill:rgba(242,193,78,.1);stroke:#F2C14E;stroke-width:3;stroke-dasharray:8 10;
  animation:dash 4s linear infinite}
.finger{stroke:#E8443C;stroke-width:4;stroke-dasharray:380;stroke-dashoffset:380;
  filter:drop-shadow(0 0 8px rgba(232,68,60,.8))}
[data-step="6"] .finger{animation:zap 3.6s ease-in infinite}
@keyframes zap{0%,30%{stroke-dashoffset:380;opacity:0}36%{opacity:1}50%{stroke-dashoffset:0;opacity:1}70%,100%{opacity:0}}
.finger-hit{fill:none;stroke:#E8443C;stroke-width:3.5;opacity:0}
[data-step="6"] .finger-hit{animation:hit 3.6s ease-out infinite}
@keyframes hit{0%,50%{r:14;opacity:0}58%{r:14;opacity:1}80%,100%{r:60;opacity:0}}
.corpse{fill:rgba(90,45,60,.75);stroke:#8A4A5E;stroke-width:2.5}
.soul-bolt{stroke:#8CF07E;stroke-width:3;stroke-dasharray:6 10;opacity:.95;
  filter:drop-shadow(0 0 8px rgba(140,240,126,.6));animation:dash 1s linear infinite}

