/* Dragon Ball RPG — règles communes de l’interface (écrans de modes, combat compact, guilde, lisibilité…).
   V10 : les styles Arène Néon et Shōnen Pop ont été retirés ; la direction artistique unique est dans capsule.css. */

/* ===================================================================== Paramètres (communs) */
.dbrpg-set{display:grid;gap:14px;max-width:880px;margin:0 auto}
.dbrpg-set-head h2{margin:2px 0 4px}
.dbrpg-set-head p{margin:0;font-weight:700;color:var(--m-ink-2)}
.dbrpg-set-card{display:grid;gap:10px;padding:14px;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:var(--m-radius);background:var(--m-paper);box-shadow:var(--m-shadow-sm)}
.dbrpg-set-card h3{margin:0;font-size:1.25rem}
.dbrpg-set-card p{margin:0;font-weight:700;color:var(--m-ink-2)}
.dbrpg-set-styles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:10px}
.dbrpg-app .dbrpg-set-style{position:relative;display:grid;gap:4px;justify-items:start;padding:10px;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:var(--m-radius);background:var(--m-blank);color:var(--m-ink);text-align:left;font:inherit;cursor:pointer;box-shadow:var(--m-shadow-sm)}
.dbrpg-app .dbrpg-set-style.is-on{outline:3px solid var(--m-violet);outline-offset:2px}
.dbrpg-set-style b{font:400 1.2rem/1.1 var(--m-font-display);letter-spacing:.02em}
.dbrpg-set-style small{font-weight:700;font-size:.78rem;color:var(--m-ink-2)}
.dbrpg-set-style em{position:absolute;top:8px;right:8px;padding:0 8px;border-radius:999px;background:var(--m-success);color:#fff;font-style:normal;font-weight:900;font-size:.7rem}
.dbrpg-set-swatch{display:flex;align-items:flex-end;gap:6px;width:100%;height:64px;padding:8px;border-radius:calc(var(--m-radius) - 4px);background:var(--a);border:1px solid #0003}
.dbrpg-set-swatch i{display:block;flex:1;border-radius:6px;border:2px solid var(--d)}
.dbrpg-set-swatch i:nth-child(1){height:60%;background:var(--b)}.dbrpg-set-swatch i:nth-child(2){height:85%;background:var(--c)}.dbrpg-set-swatch i:nth-child(3){height:40%;background:var(--d)}
.dbrpg-set-rows{display:grid;gap:6px}
.dbrpg-set-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:var(--m-radius-sm);background:var(--m-paper-2);cursor:pointer}
.dbrpg-set-row b{display:block;font-weight:900}
.dbrpg-set-row small{font-weight:700;font-size:.78rem;color:var(--m-ink-2)}
.dbrpg-set-row input{flex:none;width:22px;height:22px;accent-color:var(--m-violet)}

/* ===================================================================== V8.3 · Sélection des modes en grandes cartes (tous les styles) */
.dbrpg-mhub-head{display:flex;align-items:center;gap:12px;margin:0 0 12px}
.dbrpg-mhub-head>i{display:grid;place-items:center;flex:none;width:46px;height:46px;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius);background:var(--nav,var(--m-violet));color:#fff;box-shadow:var(--m-shadow-sm)}
.dbrpg-mhub-head>i .dbrpg-icon{width:26px;height:26px}
.dbrpg-mhub-head h2{margin:0;font-size:2rem;line-height:1}
.dbrpg-mhub-head p{margin:2px 0 0;font-weight:700;font-size:.85rem;color:var(--m-ink-2)}
.dbrpg-mcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:12px}
.dbrpg-app .dbrpg-mcard{position:relative;display:block;height:104px;padding:0;overflow:hidden;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius-lg);background:var(--m-paper);color:var(--m-ink);text-align:left;font:inherit;cursor:pointer;box-shadow:var(--m-shadow);transition:transform var(--m-speed),box-shadow var(--m-speed)}
.dbrpg-app .dbrpg-mcard:hover{transform:translate(-1px,-2px)}
.dbrpg-app .dbrpg-mcard:active{transform:translate(2px,2px);box-shadow:var(--m-shadow-press)}
.dbrpg-mcard-art{position:absolute;inset:0 0 0 30%;background:var(--art) center/cover no-repeat}
.dbrpg-mcard.no-art .dbrpg-mcard-art{inset:0 0 0 45%;display:grid;place-items:center;background:radial-gradient(circle at 60% 50%,color-mix(in srgb,var(--nav) 55%,transparent),transparent 70%),repeating-linear-gradient(135deg,color-mix(in srgb,var(--nav) 18%,transparent) 0 10px,transparent 10px 20px)}
.dbrpg-mcard-art>i{font-style:normal}.dbrpg-mcard-art>i :is(svg,img,.dbrpg-icon,.dbrpg-pixel){width:58px;height:58px;color:var(--nav)}
.dbrpg-mcard.has-art .dbrpg-mcard-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--m-paper) 0%,color-mix(in srgb,var(--m-paper) 70%,transparent) 22%,transparent 60%)}
.dbrpg-mcard-text{position:absolute;left:16px;top:50%;z-index:1;display:grid;gap:2px;max-width:62%;transform:translateY(-50%)}
.dbrpg-mcard-text b{font:400 1.7rem/1 var(--m-font-display);letter-spacing:.03em}
.dbrpg-mcard-text small{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:800;font-size:.76rem;line-height:1.25;color:var(--m-ink-2)}
.dbrpg-mcard>.dbrpg-hud-badge{position:absolute;top:8px;right:8px;z-index:2}
.dbrpg-mcard.is-locked{filter:grayscale(.85);opacity:.75}
/* en-tête d’un mode : retour vers la sélection */
.dbrpg-modehead{display:flex;align-items:center;gap:10px;margin:0 0 10px}
.dbrpg-app .dbrpg-modehead-back{flex:none;padding:5px 12px;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:999px;background:var(--m-paper);color:var(--m-ink);font:900 .85rem var(--m-font-body);cursor:pointer;box-shadow:var(--m-shadow-sm)}
.dbrpg-app .dbrpg-modehead-back:hover{background:var(--m-paper-2)}
.dbrpg-modehead>b{overflow:hidden;font:400 1.6rem/1 var(--m-font-display);letter-spacing:.03em;white-space:nowrap;text-overflow:ellipsis}
.dbrpg-modehead+.dbrpg-mode-bar:not(:has(*)){display:none}
/* Néon : verre et lueur */
/* Pop : cases de BD penchées */
@media (max-width:760px){
  .dbrpg-app .dbrpg-mcard{height:92px}
  .dbrpg-mcard-text b{font-size:1.5rem}
  .dbrpg-mhub-head h2{font-size:1.7rem}
  .dbrpg-modehead>b{font-size:1.35rem}
}

/* ===================================================================== V8.3 · Menu de combat compact sur téléphone (tous les styles) */
@media (max-width:760px){
  .dbrpg-app .dbrpg-fighter-img,.dbrpg-app .is-combat-focus .dbrpg-team.has-companion .dbrpg-fighter .dbrpg-fighter-img,.dbrpg-app .dbrpg-team .dbrpg-fighter .dbrpg-fighter-img{width:min(124px,100%);max-width:124px;margin-inline:auto}
  .dbrpg-app .dbrpg-fighter h3{font-size:.95rem}
  .dbrpg-app .dbrpg-arena{min-height:0;padding-top:48px}
  .dbrpg-app .dbrpg-combat-actions{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:row dense;gap:6px;padding:7px}
  .dbrpg-app .dbrpg-combat-actions>button{grid-template-columns:1fr;grid-template-rows:auto auto;justify-items:center;align-content:center;row-gap:2px;min-height:50px;padding:5px 3px;text-align:center}
  .dbrpg-app .dbrpg-combat-actions>button .dbrpg-icon{grid-row:auto;width:20px;height:20px}
  .dbrpg-app .dbrpg-combat-actions>button b{max-width:100%;font-size:.82rem;line-height:1.05;white-space:normal;overflow-wrap:anywhere}
  .dbrpg-app .dbrpg-combat-actions>button small{display:none}
  .dbrpg-combat-actions>[data-action=attack]{order:1}.dbrpg-combat-actions>[data-toggle-skills]{order:2}.dbrpg-combat-actions>[data-toggle-support]{order:3}.dbrpg-combat-actions>[data-toggle-ultimates]{order:4}
  /* pouvoirs du mentor et du compagnon : pleine demi-largeur, nom et effet lisibles */
  .dbrpg-app .dbrpg-combat-actions>button.mentor-power{order:5;grid-column:span 2;justify-items:start;min-height:48px;padding:6px 10px;text-align:left}
  .dbrpg-app .dbrpg-combat-actions>button.mentor-power b{font-size:.86rem}
  .dbrpg-app .dbrpg-combat-actions>button.mentor-power small{display:block;max-width:100%;font-size:.66rem;line-height:1.15;white-space:normal;overflow:visible;text-overflow:clip}
  /* actions secondaires : petites, sur une ligne */
  .dbrpg-combat-actions>[data-action=guard]{order:7}.dbrpg-combat-actions>[data-action=transform]{order:8}.dbrpg-combat-actions>[data-toggle-items]{order:9}.dbrpg-combat-actions>.flee{order:10}
  .dbrpg-app .dbrpg-combat-actions>:is([data-action=guard],[data-action=transform],[data-toggle-items],.flee){grid-template-columns:auto auto;justify-content:center;column-gap:4px;min-height:38px;padding:4px 3px}
  .dbrpg-app .dbrpg-combat-actions>:is([data-action=guard],[data-action=transform],[data-toggle-items],.flee) .dbrpg-icon{width:15px;height:15px}
  .dbrpg-app .dbrpg-combat-actions>:is([data-action=guard],[data-action=transform],[data-toggle-items],.flee) b{font-size:.66rem;white-space:nowrap;letter-spacing:0}
  /* tiroirs (techniques, soutien, ultimes) : cartes plus compactes */
  .dbrpg-app .dbrpg-drawer :is(.dbrpg-combat-skill,.dbrpg-combat-ultimate){padding:8px 10px;gap:8px}
  .dbrpg-app .dbrpg-drawer :is(.dbrpg-combat-skill,.dbrpg-combat-ultimate) :is(img,.dbrpg-skill-emblem-wrap){width:44px;height:44px}
  .dbrpg-app .dbrpg-drawer :is(.dbrpg-combat-skill,.dbrpg-combat-ultimate) strong{font-size:1.05rem}
}
/* pourcentages des effets : dans le texte, pas en titre (tiroirs de combat) */
.dbrpg-app .dbrpg-drawer b.dbrpg-fx-pct,.dbrpg-app .dbrpg-drawer .dbrpg-fx{display:inline;font:inherit;font-weight:900;letter-spacing:0;text-transform:none;-webkit-text-stroke:0;text-shadow:none}

/* ===================================================================== V8.4 · Guilde lisible (tous les styles) */
/* Les noms (guilde, membres) gardent les majuscules et minuscules choisies : police de texte au lieu de la police d’affichage tout en capitales. */
.dbrpg-app .gd-screen :is(.gd-ribbon,.gd-card h4,.gd-hero h2,.gd-title,.gd-member b,.gd-tile b,.gd-found-cost b){font-family:var(--m-font-body);text-transform:none;letter-spacing:.01em;-webkit-text-stroke:0}
.dbrpg-app .gd-screen .gd-ribbon{font-weight:800;font-size:1.25rem}
.dbrpg-app .gd-screen :is(.gd-card h4,.gd-hero h2,.gd-tile b){font-weight:800}
/* moins de gras partout ailleurs dans la guilde */
.dbrpg-app .gd-screen :is(p,small,span,em,label,li,td,.gd-pills span,.gd-nav button b,.gd-cap span,.gd-kicker,.gd-help,.gd-leader,.gd-tag,.gd-lock,.gd-sent){font-weight:600}
.dbrpg-app .gd-screen :is(.gd-nav button b,.gd-form-fields label,.gd-found-cost span){text-transform:none;letter-spacing:.01em}
.dbrpg-app .gd-screen :is(.gd-tile,.gd-tile *,.gd-nav button,.gd-nav button *){text-shadow:none}

/* ===================================================================== V8.4 · Lisibilité automatique (app.js, contrastPass) */
.dbrpg-app .ct-light,body .ct-light{color:#f6f2ff!important;text-shadow:0 1px 2px #0008;--m-ink:#f6f2ff;--m-ink-2:#ddd2f5;--m-ink-3:#c4b6e6}
.dbrpg-app .ct-dark,body .ct-dark{color:#160b2c!important;text-shadow:none!important;--m-ink:#160b2c;--m-ink-2:#3b2a5c;--m-ink-3:#5a4880}

/* ===================================================================== V8.5 */
/* titre de l’en-tête de mode : la police d’affichage penchée débordait (dernière lettre coupée) */
.dbrpg-modehead>b{padding:2px .3em 2px 0}
.sa-mtitle{margin:16px 0 8px;font-size:1.3rem}
/* grandes cases des zones de combat et des arcs du Renforcement : l’image remplit la partie droite */
.dbrpg-mcard-art>:is(svg,img,.dbrpg-zone-art){position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.dbrpg-mcard.is-rf .dbrpg-mcard-art>img{object-position:50% 15%}
.dbrpg-mcard.has-art .dbrpg-mcard-art::after{z-index:1}
.dbrpg-mcard.is-done{opacity:.8}
.dbrpg-fz-cards{margin-top:12px}
.dbrpg-fz-head .dbrpg-modehead-back,.dbrpg-rf .dbrpg-st-head .dbrpg-modehead-back{margin-bottom:6px}
.dbrpg-app .dbrpg-mcard:is(.is-rf,.is-zone) .dbrpg-mcard-text b{font-size:1.4rem}
.dbrpg-mcard:is(.is-rf,.is-zone) .dbrpg-mcard-text{max-width:58%}

/* ===================================================================== V8.6 */
/* image de la technique dans la boutique et les résidus d’écho (l’emoji reste dessous si l’image manque) */
.dbrpg-echo-skill-art{position:relative;overflow:hidden}
.dbrpg-echo-skill-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
/* Album shiny : cartes plus grandes ; les cartes shiny brillent de mille feux (cadre arc-en-ciel tournant, reflet qui balaie, étincelles) */
.dbrpg-app .sa-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:14px}
.dbrpg-app .sa-card{padding:10px;border-radius:18px}
.dbrpg-app .sa-card b{font-size:1.05rem}
.dbrpg-app .sa-art{aspect-ratio:3/4;border-radius:14px}
.dbrpg-app .sa-art img{object-position:50% 15%}
@property --sa-angle{syntax:"<angle>";inherits:false;initial-value:0deg}
.dbrpg-app .sa-card.is-shiny{position:relative;isolation:isolate;border-color:transparent;background:linear-gradient(#fff,#fff) padding-box,conic-gradient(from var(--sa-angle),#ff3d8b,#ffd21f,#3dffb1,#22d3ee,#a855f7,#ff3d8b) border-box;border:4px solid transparent;box-shadow:0 0 22px #ffd21f99,0 0 44px #ff5ac866;animation:sa-spin 3s linear infinite,sa-glow 1.8s ease-in-out infinite alternate}
.dbrpg-app .sa-card.is-shiny .sa-art::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,#ffffffb0 45%,#fff6 50%,transparent 62%);background-size:250% 100%;mix-blend-mode:screen;animation:sa-sweep 2.6s ease-in-out infinite}
.dbrpg-app .sa-card.is-shiny .sa-art::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(135deg,#ff3d8b33,#ffd21f22,#22d3ee33,#a855f733);mix-blend-mode:color-dodge;pointer-events:none}
.sa-sparks{position:absolute;inset:0;z-index:2;pointer-events:none}
.sa-sparks b{position:absolute;width:14px;height:14px;background:radial-gradient(circle,#fff 0 20%,transparent 22%),conic-gradient(from 45deg,transparent 0 10%,#fff 12% 13%,transparent 15% 35%,#fff 37% 38%,transparent 40% 60%,#fff 62% 63%,transparent 65% 85%,#fff 87% 88%,transparent 90%);filter:drop-shadow(0 0 4px #ffd21f);opacity:0;animation:sa-twinkle 1.6s ease-in-out infinite}
.sa-sparks b:nth-child(1){left:12%;top:14%}.sa-sparks b:nth-child(2){left:78%;top:10%;animation-delay:.3s}.sa-sparks b:nth-child(3){left:66%;top:52%;animation-delay:.6s;transform:scale(1.4)}.sa-sparks b:nth-child(4){left:18%;top:70%;animation-delay:.9s}.sa-sparks b:nth-child(5){left:45%;top:30%;animation-delay:1.2s;transform:scale(.8)}.sa-sparks b:nth-child(6){left:84%;top:80%;animation-delay:.45s}
@keyframes sa-spin{to{--sa-angle:360deg}}
@keyframes sa-glow{from{box-shadow:0 0 18px #ffd21f88,0 0 36px #ff5ac855}to{box-shadow:0 0 30px #ffd21fcc,0 0 60px #22d3ee88}}
@keyframes sa-sweep{0%{background-position:150% 0}60%,100%{background-position:-60% 0}}
@keyframes sa-twinkle{0%,100%{opacity:0;scale:.4}50%{opacity:1;scale:1.1}}
@media (prefers-reduced-motion:reduce){.dbrpg-app .sa-card.is-shiny,.dbrpg-app .sa-card.is-shiny .sa-art::after,.sa-sparks b{animation:none}.sa-sparks b{opacity:.8}}

/* ===================================================================== V8.7 · Sonic (Surge en version shiny) */
/* Transformation : les 7 Émeraudes du Chaos tournent autour de Sonic, le rejoignent, puis il devient Super Sonic. */
.dbrpg-sonic-super{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;align-content:center;gap:10px;overflow:hidden;background:radial-gradient(circle at 50% 50%,rgba(40,90,255,.45),rgba(4,8,30,.94) 70%);animation:dbrpg-gk-in .35s ease-out both;pointer-events:none}
.dbrpg-sonic-super.is-leaving{animation:dbrpg-gk-out .42s ease-in forwards}
.dbrpg-sonic-super .ss-rays{position:absolute;inset:-50%;background:repeating-conic-gradient(from 0deg,rgba(120,170,255,.22) 0 6deg,transparent 6deg 16deg);animation:dbrpg-gk-spin 7s linear infinite}
.dbrpg-sonic-super .ss-core{position:relative;z-index:2;display:grid;place-items:center;width:min(78vw,440px);aspect-ratio:1}
.dbrpg-sonic-super .ss-core>img{position:relative;z-index:2;width:58%;height:auto;aspect-ratio:1;border:4px solid #fff;border-radius:50%;object-fit:cover;object-position:50% 20%;filter:drop-shadow(0 0 24px #4f8bff);transition:filter .5s,transform .5s}
.dbrpg-sonic-super .ss-orbit{position:absolute;inset:0;z-index:3;animation:ss-orbit 1.7s linear infinite}
.dbrpg-sonic-super .ss-gem{position:absolute;left:50%;top:50%;width:34px;height:42px;margin:-21px 0 0 -17px;clip-path:polygon(50% 0,100% 30%,82% 100%,18% 100%,0 30%);background:linear-gradient(160deg,#fff 0 12%,var(--c) 35%,color-mix(in srgb,var(--c) 60%,#000) 100%);filter:drop-shadow(0 0 10px var(--c)) drop-shadow(0 0 22px var(--c));transform:rotate(calc(var(--i) * 51.43deg)) translateY(calc(min(78vw,440px) * -.46)) rotate(calc(var(--i) * -51.43deg));transition:transform .6s cubic-bezier(.6,0,.9,.4),opacity .6s}
.dbrpg-sonic-super.is-merging .ss-orbit{animation-duration:.4s}
.dbrpg-sonic-super.is-merging .ss-gem{transform:rotate(calc(var(--i) * 51.43deg)) translateY(0) scale(.3);opacity:0}
.dbrpg-sonic-super.is-transformed{background:radial-gradient(circle at 50% 50%,rgba(255,220,60,.6),rgba(40,24,0,.94) 70%)}
.dbrpg-sonic-super.is-transformed .ss-core>img{filter:drop-shadow(0 0 30px #ffd21f) drop-shadow(0 0 60px #ffae17);transform:scale(1.08)}
.dbrpg-sonic-super.is-transformed .ss-rays{background:repeating-conic-gradient(from 0deg,rgba(255,225,110,.4) 0 6deg,transparent 6deg 16deg)}
.dbrpg-sonic-super .ss-title{position:relative;z-index:4;font:400 clamp(2rem,7vw,3.6rem)/1 "DBRPG Display","Bangers",Impact,sans-serif;letter-spacing:.04em;color:#fff;-webkit-text-stroke:2px #0a2a8a;text-shadow:0 4px 0 #2f6bff,0 0 24px #7fb2ff;opacity:0;transform:scale(.6);transition:opacity .3s,transform .3s cubic-bezier(.3,1.6,.5,1)}
.dbrpg-sonic-super.is-transformed .ss-title{opacity:1;transform:scale(1);-webkit-text-stroke-color:#7a4a00;text-shadow:0 4px 0 #ffae17,0 0 26px #ffd21f}
.dbrpg-sonic-super .ss-sub{position:relative;z-index:4;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:#cfe0ff}
/* Surge : orbes électriques rouges et cyan, éclairs, pas de dorure */
.dbrpg-sonic-super.is-surge{background:radial-gradient(circle at 50% 50%,rgba(255,40,80,.4),rgba(14,0,10,.95) 70%)}
.dbrpg-sonic-super.is-surge .ss-gem{clip-path:circle(50%);width:30px;height:30px;margin:-15px 0 0 -15px;background:radial-gradient(circle,#fff 0 18%,var(--c) 45%,transparent 72%)}
.dbrpg-sonic-super.is-surge .ss-bolt{position:absolute;left:50%;top:50%;z-index:1;width:6px;height:46%;margin-left:-3px;transform-origin:50% 0;transform:rotate(calc(var(--i) * 60deg));background:linear-gradient(#fff,#36f3ff 40%,#ff2a4a 80%,transparent);clip-path:polygon(40% 0,100% 30%,55% 34%,100% 70%,0 100%,45% 60%,0 55%);filter:drop-shadow(0 0 8px #36f3ff);opacity:0;animation:ss-zap .35s steps(2) infinite;animation-delay:calc(var(--i) * .06s)}
.dbrpg-sonic-super.is-surge.is-transformed{background:radial-gradient(circle at 50% 50%,rgba(255,40,80,.65),rgba(20,0,12,.95) 70%)}
.dbrpg-sonic-super.is-surge.is-transformed .ss-core>img{filter:saturate(1.4) brightness(1.15) drop-shadow(0 0 24px #ff2a4a) drop-shadow(0 0 48px #36f3ff)}
.dbrpg-sonic-super.is-surge.is-transformed .ss-title{-webkit-text-stroke-color:#5a0010;text-shadow:0 4px 0 #ff2a4a,0 0 26px #36f3ff}
@keyframes ss-orbit{to{transform:rotate(360deg)}}
@keyframes ss-zap{0%{opacity:0}50%{opacity:1}100%{opacity:.2}}
/* Compagnon transformé dans l’arène */
.dbrpg-fighter.companion.is-super-sonic{box-shadow:0 0 0 3px #ffd21f,0 0 22px #ffae17;animation:ss-aura 1.2s ease-in-out infinite alternate}
.dbrpg-fighter.companion.is-super-surge{box-shadow:0 0 0 3px #ff2a4a,0 0 22px #36f3ff;animation:ss-aura-surge .5s steps(2) infinite}
@keyframes ss-aura{to{box-shadow:0 0 0 3px #fff3a8,0 0 34px #ffd21f}}
@keyframes ss-aura-surge{to{box-shadow:0 0 0 3px #36f3ff,0 0 30px #ff2a4a}}
.dbrpg-fighter.companion.is-blitzing{opacity:.25;transition:opacity .2s}
/* Ultimate Speed Blitz */
.dbrpg-blitz-title{position:absolute;inset:0;z-index:30;display:grid;place-items:center;pointer-events:none}
.dbrpg-blitz-title b{padding:4px 18px;font:400 clamp(1.6rem,5vw,2.6rem)/1 "DBRPG Display","Bangers",Impact,sans-serif;color:#fff;-webkit-text-stroke:2px #0a2a8a;text-shadow:0 4px 0 #2f6bff,0 0 22px #ffd21f;animation:dbrpg-gk-title .45s cubic-bezier(.3,1.6,.5,1) both}
.dbrpg-blitz-title.is-surge b{-webkit-text-stroke-color:#5a0010;text-shadow:0 4px 0 #ff2a4a,0 0 22px #36f3ff}
.dbrpg-blitz-ball{position:absolute;z-index:31;width:58px;height:58px;border-radius:50%;background:conic-gradient(from 0deg,#ffd21f,#fff3a8,#ffae17,#ffd21f);box-shadow:0 0 18px #ffd21f,0 0 36px #ffae17;animation:ss-spin .12s linear infinite;pointer-events:none}
.dbrpg-blitz-ball::after{content:"";position:absolute;right:50%;top:50%;width:120px;height:26px;margin-top:-13px;border-radius:13px;background:linear-gradient(90deg,transparent,#ffd21f99);transform-origin:100% 50%;transform:rotate(var(--ang));filter:blur(2px)}
.dbrpg-blitz-ball.is-surge{background:conic-gradient(from 0deg,#ff2a4a,#36f3ff,#ff2a4a,#ffffff,#ff2a4a);box-shadow:0 0 18px #ff2a4a,0 0 36px #36f3ff}
.dbrpg-blitz-ball.is-surge::after{background:linear-gradient(90deg,transparent,#36f3ffaa)}
@keyframes ss-spin{to{rotate:360deg}}
/* Saignement */
.dbrpg-floating.status-bleed{top:26%;padding:3px 10px;border:2px solid #1c0b36;border-radius:999px;background:linear-gradient(180deg,#ef4444,#7f1d1d);color:#fff;font-weight:900;font-size:1.05rem;-webkit-text-stroke:0;box-shadow:0 0 16px #ef4444;white-space:nowrap;z-index:29}
.dbrpg-status-chips .is-bleed{background:linear-gradient(180deg,#ef4444,#7f1d1d)}
.dbrpg-combat-actions>button.mentor-power.is-sonic{background:linear-gradient(135deg,#1d4ed8,#2f6bff);color:#fff}
.dbrpg-combat-actions>button.mentor-power.is-sonic.is-surge{background:linear-gradient(135deg,#7f1d1d,#ff2a4a)}
@media (max-width:480px){.dbrpg-app .dbrpg-floating.is-stacked.status-bleed{font-size:.85rem;padding:2px 8px}}
@media (prefers-reduced-motion:reduce){.dbrpg-sonic-super .ss-orbit,.dbrpg-sonic-super .ss-rays,.dbrpg-fighter.companion.is-super-sonic,.dbrpg-fighter.companion.is-super-surge,.dbrpg-blitz-ball,.ss-bolt{animation:none}}
/* V8.7.2 : trainées de l’Ultimate Speed Blitz — chaque ruée laisse un sillage qui s’étire jusqu’à l’ennemi puis s’efface */
.dbrpg-blitz-trail{position:absolute;z-index:30;height:14px;margin-top:-7px;border-radius:7px;background:linear-gradient(90deg,transparent,#7fb2ff 30%,#ffd21f 85%,#fff);box-shadow:0 0 14px #ffd21f,0 0 26px #2f6bff;transform-origin:0 50%;transform:rotate(var(--ang)) scaleX(0);animation:blitz-stretch var(--dur,200ms) cubic-bezier(.55,0,.95,.55) forwards;pointer-events:none;opacity:.9}
.dbrpg-blitz-trail.is-surge{background:linear-gradient(90deg,transparent,#ff2a4a 35%,#36f3ff 85%,#fff);box-shadow:0 0 14px #36f3ff,0 0 26px #ff2a4a}
.dbrpg-blitz-trail.is-fading{transition:opacity .8s ease-out,height .8s;opacity:0}
@keyframes blitz-stretch{to{transform:rotate(var(--ang)) scaleX(1)}}
