/* Dragon Ball RPG 6.1 — habillage manga, fichier 6/7 : alliés, invocations, portails et ultimes. */

/* =====================================================================
   INVOCATION : TAUX ET BOUTONS
   ===================================================================== */
.dbrpg-mentor-summon-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;align-items:start;margin-bottom:16px}
.dbrpg-mentor-summon-layout .dbrpg-panel+.dbrpg-panel{margin-top:0}
.dbrpg-rates{display:grid;gap:8px}
.dbrpg-rate{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:center;font-weight:800;font-size:.86rem}
.dbrpg-rate>i{grid-column:1/-1;display:block;height:10px;border:2px solid var(--m-ink);border-radius:999px;background:linear-gradient(90deg,var(--rc) var(--rate),var(--m-paper-3) var(--rate))}
.dbrpg-rate.rarity-divin>i{background:linear-gradient(90deg,#ff6b6b,#ffd166,#06d6a0,#4cc9f0 var(--rate),var(--m-paper-3) var(--rate))}
.dbrpg-rate.rarity-empty{--rc:var(--m-ink-3);color:var(--m-ink-3)}
.dbrpg-mentor-note{margin-top:10px;color:var(--m-ink-2);font-weight:600;font-size:.82rem}
.dbrpg-summon-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:var(--m-pop)}
.dbrpg-summon-actions>div{display:grid;gap:4px;align-content:start;padding:12px;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:var(--m-radius);background:var(--m-paper)}
.dbrpg-summon-actions>div>b{font:400 1.3rem/1 var(--m-font-display)}
.dbrpg-summon-actions>div>strong{font:400 1.8rem/1 var(--m-font-display);color:var(--m-violet-deep)}
.dbrpg-summon-actions>div>strong s{font-size:1.1rem;color:var(--m-ink-3)}
.dbrpg-summon-actions>div>small{font-weight:800;color:var(--m-success)}
.dbrpg-summon-actions>div>button{margin-top:6px;min-height:52px;font:400 1.35rem/1 var(--m-font-display);letter-spacing:.05em;transform:skew(-5deg)}
.dbrpg-summon-actions>div:last-of-type>button{background:var(--m-violet);color:var(--m-blank)}
.dbrpg-summon-actions>p{grid-column:1/-1;font-weight:800}

/* Bannière de l’allié actif */
.dbrpg-active-mentor-banner{display:grid;grid-template-columns:110px minmax(0,1fr) minmax(0,.8fr);gap:16px;align-items:center;margin-bottom:16px;padding:14px;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius-lg);background:var(--m-paper);box-shadow:var(--m-shadow)}
.dbrpg-active-mentor-banner>img{width:110px;height:110px;object-fit:cover;object-position:50% 12%;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius);background:var(--m-paper-2);box-shadow:0 0 0 4px var(--m-violet)}
.dbrpg-active-mentor-banner h3{font-size:1.6rem}
.dbrpg-active-mentor-banner>p{color:var(--m-ink-2);font-weight:600;font-size:.84rem}
.dbrpg-active-mentor-banner .dbrpg-effects,.dbrpg-active-mentor-banner .dbrpg-companion-stats{margin-top:6px}

/* =====================================================================
   CARTES DE COLLECTION (mentors, compagnons)
   ===================================================================== */
.dbrpg-mentor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.dbrpg-mentor-card{position:relative;display:flex;flex-direction:column;padding:6px;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius-lg);background:var(--rc);box-shadow:var(--m-shadow);transition:transform var(--m-speed)}
.dbrpg-mentor-card:hover{transform:translateY(-4px) rotate(-.6deg)}
.dbrpg-mentor-card.rarity-divin{background:var(--m-r-divin);background-size:300% 300%;animation:dbrpg-m-divine 6s linear infinite}
.dbrpg-mentor-card.not-obtained{background:var(--m-paper-3);box-shadow:none}
.dbrpg-mentor-card.not-obtained .dbrpg-mentor-art img{filter:grayscale(1) brightness(.35) contrast(1.2)}
.dbrpg-mentor-card.active{box-shadow:0 0 0 4px var(--m-violet),var(--m-shadow-lg)}
.dbrpg-mentor-art{position:relative;aspect-ratio:4/5;overflow:hidden;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius);background:var(--m-ink)}
.dbrpg-mentor-art img{width:100%;height:100%;object-fit:cover;object-position:50% 12%}
.dbrpg-mentor-art::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,#ffffff40 48%,transparent 60%);background-size:260% 100%;background-position:120% 0;transition:background-position .7s}
.dbrpg-mentor-card:hover .dbrpg-mentor-art::after{background-position:-40% 0}
.dbrpg-mentor-active{position:absolute;left:8px;top:8px;z-index:1;padding:2px 10px;border:2px solid var(--m-ink);border-radius:8px;background:var(--m-violet);color:var(--m-blank);font:900 .7rem/1.5 var(--m-font-body);letter-spacing:.1em}
.dbrpg-mentor-body{display:flex;flex-direction:column;gap:6px;flex:1;margin-top:6px;padding:10px;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:var(--m-radius);background:var(--m-paper)}
.dbrpg-mentor-body h3{font-size:1.45rem}
.dbrpg-mentor-body>p{color:var(--m-ink-2);font-weight:600;font-size:.8rem}
.dbrpg-mentor-body>small{font-weight:800;color:var(--m-ink-2);font-size:.76rem}
.dbrpg-mentor-body>button{margin-top:auto}
.dbrpg-mentor-body>button+button{margin-top:6px}
.dbrpg-mentor-progress{display:grid;gap:3px;font-weight:800;font-size:.74rem}
.dbrpg-mentor-progress.max{color:var(--m-violet-deep)}
.dbrpg-mentor-progress.locked{color:var(--m-ink-3)}
.dbrpg-mentor-power{display:grid;gap:2px;padding:8px;border:2px solid var(--m-ink);border-radius:10px;background:var(--m-violet-soft)}
.dbrpg-mentor-power>span{font:900 .62rem var(--m-font-body);letter-spacing:.12em;color:var(--m-violet-deep)}
.dbrpg-mentor-power>b{font:400 1.05rem/1.1 var(--m-font-display)}
.dbrpg-mentor-power small,.dbrpg-mentor-power em{font-style:normal;font-weight:600;font-size:.74rem;color:var(--m-ink-2)}
.dbrpg-mentor-power.type-active{background:var(--m-ink);color:var(--m-blank)}
.dbrpg-mentor-power.type-active>span{color:var(--m-pop)}
.dbrpg-mentor-power.type-active small{color:#e6d6ff}
.dbrpg-ally-ultimate{justify-self:start;padding:3px 10px;border:2px solid var(--m-ink);border-radius:8px;background:var(--m-pop);font-weight:900;font-size:.74rem;text-align:left}
.dbrpg-open-training{min-height:38px!important;font-size:.82rem!important}
@keyframes dbrpg-m-divine{to{background-position:300% 0}}

/* Renforcement des compagnons */
.dbrpg-reinforce-strip{justify-content:space-between}
.dbrpg-reinforce-stock{display:flex;flex-wrap:wrap;gap:8px}
.dbrpg-reinforce-stock>span{display:grid;justify-items:center;gap:1px;width:74px;padding:6px;border:2px solid var(--m-ink);border-radius:10px;background:var(--m-paper);text-align:center}
.dbrpg-reinforce-stock img{width:40px;height:40px;object-fit:cover;border-radius:8px}
.dbrpg-reinforce-stock b{font:400 1.1rem/1 var(--m-font-display)}
.dbrpg-reinforce-stock small{font-weight:800;font-size:.64rem}
.dbrpg-reinforce{display:grid;gap:6px;padding:8px;border:2px dashed var(--m-ink);border-radius:10px;background:var(--m-paper-2)}
.dbrpg-reinforce.is-max{border-style:solid;background:#fff6c7}
.dbrpg-reinforce-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.dbrpg-reinforce-head small{flex-basis:100%;font-weight:700;font-size:.72rem;color:var(--m-ink-2)}
.dbrpg-reinforce-badge{padding:1px 8px;border:2px solid var(--m-ink);border-radius:999px;background:var(--m-blank);font-weight:900;font-size:.7rem}
.dbrpg-reinforce-badge.tier-bronze{background:#e9b98a}.dbrpg-reinforce-badge.tier-argent{background:#dfe6ef}.dbrpg-reinforce-badge.tier-or{background:var(--m-r-legend)}.dbrpg-reinforce-badge.tier-platine{background:#b5f2f8}
.dbrpg-reinforce-pips{display:inline-flex;gap:3px}
.dbrpg-reinforce-pips i{width:10px;height:10px;border:2px solid var(--m-ink);border-radius:50%;background:var(--m-blank)}
.dbrpg-reinforce-pips i.on{background:var(--m-violet)}
.dbrpg-reinforce-cost{display:flex;gap:6px}
.dbrpg-reinforce-cost>span{display:inline-flex;align-items:center;gap:4px;padding:2px 8px 2px 2px;border:2px solid var(--m-ink);border-radius:8px;background:var(--m-blank);font-size:.76rem}
.dbrpg-reinforce-cost img{width:24px;height:24px;border-radius:5px;object-fit:cover}
.dbrpg-reinforce-cost .missing{border-style:dashed;color:var(--m-danger)}
.dbrpg-reinforce-button{min-height:40px!important;font-size:.82rem!important}
.dbrpg-reinforce-button.is-evolve{background:var(--m-violet)!important;color:var(--m-blank)!important}
.dbrpg-reinforce-missing{font-weight:700;font-size:.72rem;color:var(--m-ink-3)}
.dbrpg-companion-card.is-reinforced{animation:dbrpg-m-pop .5s ease-out}
.dbrpg-companion-card.is-tier-up{animation:dbrpg-m-tierup .9s ease-out}
.dbrpg-companion-card.has-frame .dbrpg-mentor-art{box-shadow:inset 0 0 0 4px var(--frame,var(--m-r-legend))}
@keyframes dbrpg-m-tierup{30%{transform:scale(1.06) rotate(-2deg);filter:brightness(1.5)}}

/* =====================================================================
   ÉTAPES D’INVOCATION (attente, flash de rareté, révélation carte par carte)
   ===================================================================== */
.dbrpg-summon-stage,.dbrpg-summon-reveal{position:relative;display:grid;place-items:center;align-content:center;gap:12px;min-height:min(70dvh,560px);overflow:hidden;padding:24px;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius-lg);background:var(--m-violet);color:var(--m-blank);text-align:center;box-shadow:var(--m-shadow-lg)}
.dbrpg-summon-stage::before,.dbrpg-summon-reveal::before{content:"";position:absolute;inset:-60%;background:repeating-conic-gradient(var(--ray,#ffffff2e) 0 6deg,transparent 6deg 16deg);animation:dbrpg-m-spin 14s linear infinite}
.dbrpg-summon-stage>*,.dbrpg-summon-reveal>*{position:relative}
.dbrpg-summon-stage .dbrpg-kicker{color:var(--m-pop)}
.dbrpg-summon-stage h2{color:var(--m-pop);font-size:2.6rem;-webkit-text-stroke:1.5px var(--m-ink);paint-order:stroke fill;text-shadow:4px 4px 0 var(--m-ink)}
.dbrpg-summon-orb{position:relative;display:grid;place-items:center;width:150px;height:150px}
.dbrpg-summon-orb>span{display:grid;place-items:center;width:96px;height:96px;border:var(--m-stroke) solid var(--m-ink);border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff7c2,var(--m-pop) 45%,var(--m-pop-deep));color:#e5381d;font-size:2.2rem;animation:dbrpg-m-bounce .8s ease-in-out infinite}
.dbrpg-summon-orb>i{position:absolute;inset:0;border:3px dashed var(--m-pop);border-radius:50%;animation:dbrpg-m-spin 3s linear infinite}
.dbrpg-summon-orb>i:nth-child(2){inset:14px;animation-direction:reverse;animation-duration:2s}
.dbrpg-summon-orb>i:nth-child(3){inset:-14px;opacity:.5;animation-duration:5s}

.dbrpg-summon-reveal{--ray:#ffffff33}
.dbrpg-summon-tier-common{background:#5b4a7a}
.dbrpg-summon-tier-rare{background:#1f6fd1;--ray:#bfe1ff40}
.dbrpg-summon-tier-super{background:#7a1fd1;--ray:#e6c8ff55}
.dbrpg-summon-tier-legendary{background:#e09a00;--ray:#fff3b066}
.dbrpg-summon-tier-divine{background:linear-gradient(135deg,#ff6b6b,#ffd166,#06d6a0,#4cc9f0,#b388ff);--ray:#ffffff66}
.dbrpg-summon-tier-empty{background:#3a2d52;--ray:#ffffff14}
.dbrpg-summon-flash{display:grid;justify-items:center;gap:8px;animation:dbrpg-m-slam .5s cubic-bezier(.2,1.6,.4,1)}
.dbrpg-summon-flash>i{position:absolute;left:50%;top:50%;width:260px;height:260px;border:4px solid #fff;border-radius:50%;opacity:0;transform:translate(-50%,-50%) scale(.2);animation:dbrpg-m-ring 1.2s ease-out infinite}
.dbrpg-summon-flash>i:nth-child(2){animation-delay:.3s}
.dbrpg-summon-flash>i:nth-child(3){animation-delay:.6s}
.dbrpg-summon-flash>b{font:400 clamp(3rem,10vw,6rem)/1 var(--m-font-display);color:var(--m-pop);-webkit-text-stroke:2.5px var(--m-ink);paint-order:stroke fill;text-shadow:6px 6px 0 var(--m-ink);transform:skew(-8deg) rotate(-4deg)}
.dbrpg-summon-flash>span{padding:4px 14px;border:var(--m-stroke) solid var(--m-ink);border-radius:10px;background:var(--m-blank);color:var(--m-ink);font:400 1.4rem var(--m-font-display)}
.dbrpg-summon-flash>strong{font-weight:900;text-shadow:0 2px 0 var(--m-ink)}
@keyframes dbrpg-m-slam{from{transform:scale(2.2);opacity:0}}
@keyframes dbrpg-m-ring{to{transform:translate(-50%,-50%) scale(1.6);opacity:0}20%{opacity:.9}}

.dbrpg-summon-sequence{display:grid;justify-items:center;gap:14px;text-align:center}
.dbrpg-summon-sequence>header{display:grid;justify-items:center;gap:6px;width:min(420px,100%)}
.dbrpg-summon-sequence>header h2{font-size:2.4rem;transform:skew(-5deg)}
.dbrpg-summon-progress{width:100%;height:12px;border:2px solid var(--m-ink);border-radius:999px;background:var(--m-paper-3);overflow:hidden}
.dbrpg-summon-progress>i{display:block;height:100%;background:linear-gradient(90deg,var(--m-violet),#c084fc);transition:width .3s}
.dbrpg-summon-sequence>header small{font-weight:800;color:var(--m-ink-2)}
.dbrpg-summon-sequence-card{--rc:var(--m-r-commun);width:min(300px,82vw);aspect-ratio:3/4.4;perspective:1200px}
.dbrpg-summon-sequence-card.rarity-empty{--rc:var(--m-ink-3)}
.dbrpg-summon-card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.3,1.3,.5,1)}
.dbrpg-summon-sequence-card.is-revealed .dbrpg-summon-card-inner{transform:rotateY(180deg)}
.dbrpg-summon-card-face{position:absolute;inset:0;display:grid;backface-visibility:hidden;overflow:hidden;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius-lg);box-shadow:var(--m-shadow-lg)}
.dbrpg-summon-card-back{place-items:center;align-content:center;gap:8px;padding:20px;background:var(--m-violet) repeating-conic-gradient(#ffffff26 0 8deg,transparent 8deg 20deg);color:var(--m-blank)}
.dbrpg-summon-card-back>span{display:grid;place-items:center;width:90px;height:90px;border:var(--m-stroke) solid var(--m-ink);border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff7c2,var(--m-pop) 45%,var(--m-pop-deep));color:#e5381d;font-size:2.4rem;animation:dbrpg-m-bounce 1s infinite}
.dbrpg-summon-card-back>b{font:400 1.8rem var(--m-font-display);color:var(--m-pop);-webkit-text-stroke:1px var(--m-ink)}
.dbrpg-summon-card-back>small{font-weight:800}
.dbrpg-summon-card-front{transform:rotateY(180deg);padding:6px;background:var(--rc);grid-template-rows:minmax(0,1fr) auto auto auto;gap:4px}
.dbrpg-summon-sequence-card.rarity-divin .dbrpg-summon-card-front{background:var(--m-r-divin)}
.dbrpg-summon-card-art,.dbrpg-summon-card-front>img{width:100%;height:100%;min-height:0;object-fit:cover;object-position:50% 12%;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius)}
.dbrpg-summon-card-empty{display:grid;place-items:center;border:var(--m-stroke) dashed var(--m-ink);border-radius:var(--m-radius);background:var(--m-paper-2);font-size:4rem;color:var(--m-ink-3)}
.dbrpg-summon-card-front .dbrpg-rarity{justify-self:center;margin-top:-18px;position:relative}
.dbrpg-summon-card-front h3{font-size:2rem;color:var(--m-ink);text-shadow:2px 2px 0 var(--m-blank)}
.dbrpg-summon-card-front p{padding:0 8px 6px;font-weight:800;font-size:.8rem}
.dbrpg-summon-sequence-actions{display:flex;gap:10px}

/* Résultats d’invocation */
.dbrpg-mentor-results{display:grid;gap:12px}
.dbrpg-mentor-result-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.dbrpg-mentor-result{--rc:var(--m-r-commun);display:flex;flex-direction:column;gap:5px;padding:6px 6px 10px;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius-lg);background:var(--rc);text-align:center;box-shadow:var(--m-shadow-sm);animation:dbrpg-m-deal .45s calc(var(--reveal-index,0) * 90ms) cubic-bezier(.2,1.3,.4,1) both}
.dbrpg-mentor-result.rarity-divin{background:var(--m-r-divin)}
.dbrpg-mentor-result.rarity-legendaire,.dbrpg-mentor-result.rarity-divin{box-shadow:0 0 22px color-mix(in srgb,var(--m-r-legend) 80%,transparent),var(--m-shadow-sm)}
.dbrpg-mentor-result .dbrpg-mentor-art{aspect-ratio:4/5}
.dbrpg-mentor-result .dbrpg-rarity{align-self:center;margin-top:-16px;position:relative;z-index:1}
.dbrpg-mentor-result h3{font-size:1.3rem}
.dbrpg-mentor-result>p,.dbrpg-mentor-result>small{padding:0 4px;font-weight:700;font-size:.74rem}
.dbrpg-mentor-result .dbrpg-effects,.dbrpg-mentor-result .dbrpg-companion-stats{justify-content:center}
.dbrpg-mentor-result .dbrpg-effects>span,.dbrpg-mentor-result .dbrpg-companion-stats>span{background:var(--m-blank);font-size:.68rem}
.dbrpg-empty-pull{--rc:var(--m-paper-3);background:var(--m-paper-2)}
.dbrpg-portal-empty{display:grid;place-items:center;aspect-ratio:4/5;border:var(--m-stroke) dashed var(--m-ink-3);border-radius:var(--m-radius);font-size:3rem;color:var(--m-ink-3)}
.dbrpg-ultimate-unlocked{display:grid;gap:1px;padding:6px;border:2px solid var(--m-ink);border-radius:8px;background:var(--m-pop)}
.dbrpg-ultimate-unlocked span{font-weight:900;font-size:.62rem;letter-spacing:.1em}
.dbrpg-ultimate-unlocked b{font:400 1rem var(--m-font-display)}
.dbrpg-ultimate-unlocked small{font-size:.66rem;font-weight:700}
@keyframes dbrpg-m-deal{from{transform:translateY(-30px) rotate(-10deg) scale(.8);opacity:0}}

/* =====================================================================
   PORTAILS TEMPORAIRES
   ===================================================================== */
.dbrpg-portal-card{display:grid;gap:14px;margin-bottom:22px;padding:14px;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius-lg);background:var(--m-paper);box-shadow:var(--m-shadow-lg)}
.dbrpg-portal-hero{position:relative;display:flex;align-items:flex-end;min-height:220px;overflow:hidden;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius)}
.dbrpg-portal-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.dbrpg-portal-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#1c0b36e6,transparent 75%)}
.dbrpg-portal-hero>div{position:relative;z-index:1;display:grid;gap:4px;padding:18px;color:var(--m-blank)}
.dbrpg-portal-hero .dbrpg-kicker{color:var(--m-pop)}
.dbrpg-portal-hero h2{color:var(--m-pop);font-size:clamp(2rem,4.5vw,2.8rem);-webkit-text-stroke:1.5px var(--m-ink);paint-order:stroke fill;text-shadow:4px 4px 0 var(--m-ink)}
.dbrpg-portal-hero small{font-weight:800}
.dbrpg-portal-featured{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.dbrpg-portal-featured.compact{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));margin-top:10px}
.dbrpg-portal-entry{--rc:var(--m-r-commun);display:grid;gap:6px;padding:6px;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius-lg);background:var(--rc);box-shadow:var(--m-shadow-sm)}
.dbrpg-portal-entry.rarity-divin{background:var(--m-r-divin)}
.dbrpg-portal-entry.is-featured{box-shadow:0 0 0 3px var(--m-hot),var(--m-shadow)}
.dbrpg-portal-entry .dbrpg-mentor-art{aspect-ratio:4/5}
.dbrpg-portal-entry .dbrpg-featured-tag{position:absolute;left:8px;top:8px;z-index:1}
.dbrpg-portal-entry>div:last-child{display:grid;gap:4px;padding:8px;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:var(--m-radius);background:var(--m-paper)}
.dbrpg-portal-entry h4{font-size:1.2rem}
.dbrpg-portal-entry small{font-weight:700;font-size:.72rem;color:var(--m-ink-2)}
.dbrpg-portal-pity{display:grid;gap:4px;margin-top:10px;padding:8px;border:2px solid var(--m-ink);border-radius:10px;background:#fff6c7}
.dbrpg-portal-pity>div:first-child{display:flex;justify-content:space-between;font-weight:800;font-size:.84rem}
.dbrpg-portal-pity small{font-weight:600;font-size:.74rem;color:var(--m-ink-2)}
.dbrpg-portal-pool summary{font:400 1.2rem var(--m-font-display)}
.dbrpg-portal-head{margin-top:0}

/* =====================================================================
   ULTIMES
   ===================================================================== */
.dbrpg-ultimate-rules{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.dbrpg-ultimate-rules span{padding:4px 12px;border:2px solid var(--m-ink);border-radius:999px;background:var(--m-paper);font-weight:800;font-size:.82rem}
.dbrpg-ultimate-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.dbrpg-ultimate-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:6px 6px 12px;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius-lg);background:var(--m-paper);box-shadow:var(--m-shadow)}
.dbrpg-ultimate-card.equipped{background:var(--m-pop)}
.dbrpg-ultimate-card.locked{background:var(--m-paper-2);box-shadow:none}
.dbrpg-ultimate-card.locked .dbrpg-ultimate-card-art img{filter:grayscale(1) brightness(.45)}
.dbrpg-ultimate-card-art{position:relative;aspect-ratio:16/10;overflow:hidden;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius);background:var(--m-ink)}
.dbrpg-ultimate-card-art img{width:100%;height:100%;object-fit:cover;object-position:50% 12%}
.dbrpg-ultimate-card-art::before{content:"";position:absolute;inset:0;z-index:1;background:repeating-conic-gradient(from 0deg at 80% 50%,#ffffff22 0 4deg,transparent 4deg 12deg);mix-blend-mode:screen}
.dbrpg-ultimate-card-art>span{position:absolute;left:8px;bottom:8px;z-index:2;padding:2px 10px;border:2px solid var(--m-ink);border-radius:8px;background:var(--m-blank);font:900 .68rem/1.5 var(--m-font-body);letter-spacing:.1em}
.dbrpg-ultimate-card.equipped .dbrpg-ultimate-card-art>span{background:var(--m-violet);color:var(--m-blank)}
.dbrpg-ultimate-card-body{display:grid;gap:4px;padding:0 6px}
.dbrpg-ultimate-card-body>small{font-weight:900;font-size:.7rem;color:var(--m-violet-deep);text-transform:uppercase;letter-spacing:.06em}
.dbrpg-ultimate-card-body h3{font-size:1.5rem}
.dbrpg-ultimate-card-body p{color:var(--m-ink-2);font-weight:600;font-size:.82rem}
.dbrpg-ultimate-cost{display:grid;gap:2px;padding:6px 8px;border:2px solid var(--m-ink);border-radius:8px;background:var(--m-blank)}
.dbrpg-ultimate-cost b{font:400 1.15rem var(--m-font-display);color:var(--m-violet-deep)}
.dbrpg-ultimate-cost span{font-weight:700;font-size:.74rem;color:var(--m-ink-2)}
.dbrpg-ultimate-card>button{margin:auto 6px 0}

/* =====================================================================
   V6.1 — TIRAGES MULTIPLES : 5 cartes par ligne, retournées d’un clic
   ===================================================================== */
.dbrpg-summon-flipboard{display:grid;justify-items:center;gap:16px;text-align:center}
.dbrpg-summon-flipboard>header{display:grid;justify-items:center;gap:6px;width:min(520px,100%)}
.dbrpg-summon-flipboard>header h2{font-size:clamp(1.8rem,4vw,2.4rem);transform:skew(-5deg)}
.dbrpg-summon-flipboard>header small{font-weight:800;color:var(--m-ink-2)}
.dbrpg-summon-flip-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(6px,1.6vw,16px);width:min(1000px,100%)}
.dbrpg-summon-flip{--rc:var(--m-r-commun);position:relative;display:block;width:100%;aspect-ratio:3/4.3;padding:0;border:0;background:none;perspective:1000px;cursor:pointer;animation:dbrpg-m-deal .45s calc(var(--flip-index,0) * 60ms) cubic-bezier(.2,1.3,.4,1) both}
.dbrpg-summon-flip.rarity-empty{--rc:var(--m-paper-3)}
.dbrpg-summon-flip .dbrpg-summon-card-inner{display:block}
.dbrpg-summon-flip.is-revealed .dbrpg-summon-card-inner{transform:rotateY(180deg)}
.dbrpg-summon-flip .dbrpg-summon-card-face{box-shadow:var(--m-shadow)}
.dbrpg-summon-flip .dbrpg-summon-card-back{gap:4px;padding:8px;transition:transform var(--m-speed)}
.dbrpg-summon-flip:not(.is-revealed):hover .dbrpg-summon-card-inner{transform:translateY(-4px) rotate(-1.5deg)} /* V8.9.7 : la carte entiere penche (incliner la face arriere effacait son contenu en 3D) */
.dbrpg-summon-flip .dbrpg-summon-card-back>span{width:clamp(34px,6vw,64px);height:clamp(34px,6vw,64px);font-size:clamp(1rem,2.4vw,1.8rem)}
.dbrpg-summon-flip .dbrpg-summon-card-back>b{font-size:clamp(1.2rem,3vw,2rem)}
.dbrpg-summon-flip .dbrpg-summon-card-front{display:grid;grid-template-rows:minmax(0,1fr) auto auto;gap:3px;padding:clamp(3px,.6vw,6px);background:var(--rc)}
.dbrpg-summon-flip.rarity-divin .dbrpg-summon-card-front{background:var(--m-r-divin);background-size:300% 300%;animation:dbrpg-m-divine 6s linear infinite}
.dbrpg-summon-flip.rarity-legendaire.is-revealed .dbrpg-summon-card-face.dbrpg-summon-card-front,.dbrpg-summon-flip.rarity-divin.is-revealed .dbrpg-summon-card-front{box-shadow:0 0 0 3px var(--m-ink),0 0 26px 6px var(--m-r-legend)}
.dbrpg-summon-flip .dbrpg-summon-card-front .dbrpg-summon-card-art{border-width:2px}
.dbrpg-summon-flip .dbrpg-summon-card-empty{font-size:clamp(1.4rem,4vw,3rem)}
.dbrpg-summon-flip .dbrpg-rarity{justify-self:center;max-width:100%;overflow:hidden;margin-top:-14px;position:relative;padding:1px 6px;font-size:clamp(.5rem,1.2vw,.68rem);text-overflow:ellipsis;white-space:nowrap}
@media (max-width:520px){.dbrpg-summon-flip .dbrpg-rarity{padding:1px 3px;letter-spacing:0}}
.dbrpg-summon-flip strong{overflow:hidden;font:400 clamp(.85rem,2vw,1.3rem)/1.05 var(--m-font-display);color:var(--m-ink);white-space:nowrap;text-overflow:ellipsis}
.dbrpg-summon-new{position:absolute;right:-6px;top:8px;z-index:2;padding:1px 6px;border:2px solid var(--m-ink);border-radius:6px;background:var(--m-hot);color:var(--m-blank);font:900 clamp(.48rem,1.1vw,.66rem)/1.4 var(--m-font-body);font-style:normal;letter-spacing:.06em;transform:rotate(6deg)}
@media (prefers-reduced-motion:reduce){.dbrpg-summon-flip .dbrpg-summon-card-inner{transition:none}}

/* V6.1.2 — relance « à la Dokkan » : deux gros boutons ×1 / ×10 */
.dbrpg-summon-again{display:grid;justify-items:center;gap:6px;width:min(680px,100%);margin:18px auto 4px}
.dbrpg-summon-again-buttons{display:grid;grid-template-columns:1fr 1.25fr;gap:14px;width:100%}
.dbrpg-summon-cta{position:relative;display:grid;justify-items:center;align-content:center;gap:0;min-height:112px;padding:12px 14px 14px;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius-lg);color:var(--m-ink);box-shadow:var(--m-shadow-lg);overflow:hidden;transform:skew(-4deg);transition:transform var(--m-speed),box-shadow var(--m-speed)}
.dbrpg-summon-cta::before{content:"";position:absolute;inset:-60%;background:repeating-conic-gradient(#ffffff38 0 6deg,transparent 6deg 16deg);animation:dbrpg-m-spin 12s linear infinite;pointer-events:none}
.dbrpg-summon-cta::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,#ffffff70 48%,transparent 60%);background-size:260% 100%;animation:dbrpg-m-cta-shine 2.6s ease-in-out infinite;pointer-events:none}
.dbrpg-summon-cta>*{position:relative;z-index:1}
.dbrpg-summon-cta.is-single{background:linear-gradient(180deg,#8fd3ff,#2f9bff 55%,#1c5fd6)}
.dbrpg-summon-cta.is-multi{background:linear-gradient(180deg,#fff3a6,var(--m-pop) 45%,#ff8a1f)}
.dbrpg-summon-cta span{font:900 .8rem/1 var(--m-font-body);letter-spacing:.18em;text-transform:uppercase}
.dbrpg-summon-cta b{font:400 3.4rem/1 var(--m-font-display);color:var(--m-blank);-webkit-text-stroke:2.5px var(--m-ink);paint-order:stroke fill;text-shadow:4px 4px 0 var(--m-ink)}
.dbrpg-summon-cta.is-multi b{font-size:4rem}
.dbrpg-summon-cta small{margin-top:4px;padding:2px 12px;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:999px;background:var(--m-blank);font:900 .9rem/1.3 var(--m-font-body)}
.dbrpg-summon-cta em{position:absolute;right:10px;top:10px;padding:2px 8px;border:2px solid var(--m-ink);border-radius:8px;background:var(--m-hot);color:var(--m-blank);font:900 .75rem/1.3 var(--m-font-body);font-style:normal;transform:rotate(8deg)}
.dbrpg-summon-cta:hover:not(:disabled){transform:skew(-4deg) translate(-2px,-3px);box-shadow:8px 8px 0 var(--m-ink)}
.dbrpg-summon-cta:active:not(:disabled){transform:skew(-4deg) translate(3px,3px);box-shadow:var(--m-shadow-press)}
.dbrpg-summon-cta:disabled{filter:grayscale(.85) brightness(.95);box-shadow:var(--m-shadow-sm);cursor:not-allowed}
.dbrpg-summon-cta:disabled::before,.dbrpg-summon-cta:disabled::after{animation:none;opacity:0}
.dbrpg-summon-again-note{font-weight:800;color:var(--m-ink-2)}
.dbrpg-summon-links{justify-content:center}
.dbrpg-summon-links>button{min-height:38px;padding:6px 14px;font-size:.82rem;box-shadow:var(--m-shadow-sm)}
@keyframes dbrpg-m-cta-shine{0%,40%{background-position:130% 0}100%{background-position:-50% 0}}
@media (prefers-reduced-motion:reduce){.dbrpg-summon-cta::before,.dbrpg-summon-cta::after{animation:none}}
@media (max-width:520px){.dbrpg-summon-cta em{display:none}.dbrpg-summon-cta{min-height:96px}.dbrpg-summon-cta b{font-size:2.6rem}.dbrpg-summon-cta.is-multi b{font-size:3rem}.dbrpg-summon-again-buttons{gap:10px}}

/* Bouton des effets sonores */
.dbrpg-sfx-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;padding:0 12px;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:999px;background:var(--m-blank);font-weight:900;box-shadow:var(--m-shadow-press)}
.dbrpg-sfx-toggle:not(.is-on){background:var(--m-paper-3);color:var(--m-ink-3)}
.dbrpg-hud .dbrpg-sfx-toggle span{display:none}
@media (max-width:900px){.dbrpg-hud .dbrpg-sfx-toggle{display:none}}
.dbrpg-summon-flipboard>header .dbrpg-sfx-toggle{height:34px;font-size:.82rem}
.dbrpg-combat-focusbar .dbrpg-sfx-toggle{height:38px;background:transparent;color:var(--m-blank);border-color:var(--m-blank);box-shadow:none}
.dbrpg-combat-focusbar .dbrpg-sfx-toggle:not(.is-on){color:#ffffff99}
.dbrpg-combat-focusbar .dbrpg-sfx-toggle span{display:none}

/* Résultats détaillés : 5 cartes par ligne sur grand écran */
@media (min-width:761px){
  .dbrpg-mentor-result-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}

/* =====================================================================
   V6.1 — ATELIER D’ENTRAÎNEMENT D’ALLIÉ
   ===================================================================== */
.dbrpg-tr{width:min(720px,100%);gap:14px}
.dbrpg-tr.is-settled,.dbrpg-tr.is-settled .dbrpg-tr-level .is-next{animation:none}
.dbrpg-tr-close{position:absolute;right:14px;top:14px;z-index:2}
.dbrpg-tr-head{--rc:var(--m-r-commun);display:grid;grid-template-columns:110px minmax(0,1fr);gap:14px;align-items:center;padding-right:44px}
.dbrpg-tr-art{aspect-ratio:4/5;overflow:hidden;padding:3px;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius);background:var(--rc);box-shadow:var(--m-shadow-sm)}
.dbrpg-tr-head.rarity-divin .dbrpg-tr-art{background:var(--m-r-divin)}
.dbrpg-tr-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 12%;border-radius:8px}
.dbrpg-tr-id{display:grid;gap:4px;min-width:0}
.dbrpg-tr-id h2{font-size:2.1rem}
.dbrpg-tr-level{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}
.dbrpg-tr-level b{font:400 1.6rem/1 var(--m-font-display)}
.dbrpg-tr-level span{font-weight:800;color:var(--m-ink-2)}
.dbrpg-tr-level i{font-style:normal;font-weight:900;color:var(--m-violet)}
.dbrpg-tr-level .is-next{padding:0 8px;border:2px solid var(--m-ink);border-radius:8px;background:var(--m-pop);animation:dbrpg-m-nudge 2s infinite}
.dbrpg-tr-bar{position:relative;height:16px;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:999px;background:var(--m-paper-3);overflow:hidden}
.dbrpg-tr-bar>i,.dbrpg-tr-bar>u{position:absolute;inset:0 auto 0 0;text-decoration:none;transition:width .35s ease}
.dbrpg-tr-bar>u{background:repeating-linear-gradient(-45deg,var(--m-pop) 0 6px,#ffe680 6px 12px)}
.dbrpg-tr-bar>i{background:linear-gradient(90deg,var(--m-violet),#c084fc);box-shadow:inset 0 3px 0 #ffffff60}
.dbrpg-tr-id>small{font-weight:800;color:var(--m-ink-2)}
.dbrpg-tr-title{font-size:1.4rem}
.dbrpg-tr-list{display:grid;gap:8px}
.dbrpg-tr-mat{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:8px 10px;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:var(--m-radius);background:var(--m-paper-2)}
.dbrpg-tr-mat.is-arc{background:#f1e6ff}
.dbrpg-tr-mat.is-selected{background:#fff6c7;box-shadow:var(--m-shadow-sm)}
.dbrpg-tr-mat-art{width:56px;height:56px;overflow:hidden;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:10px;background:var(--m-paper)}
.dbrpg-tr-mat-art img{width:100%;height:100%;object-fit:cover}
.dbrpg-tr-mat-copy{display:grid;gap:1px;min-width:0}
.dbrpg-tr-mat-copy b{font:400 1.15rem/1.1 var(--m-font-display)}
.dbrpg-tr-xp{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-weight:900;color:var(--m-violet-deep)}
.dbrpg-tr-xp small{font-weight:700;color:var(--m-ink-3)}
.dbrpg-tr-xp em{padding:0 6px;border:2px solid var(--m-ink);border-radius:6px;background:var(--m-hot);color:var(--m-blank);font-style:normal;font-size:.68rem}
.dbrpg-tr-mat-copy>small{font-weight:700;color:var(--m-ink-2)}
.dbrpg-tr-stepper{display:flex;align-items:center;gap:4px}
.dbrpg-tr-stepper>button{display:grid;place-items:center;min-width:36px;height:36px;padding:0 8px;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:10px;background:var(--m-blank);font:900 1.1rem/1 var(--m-font-body);box-shadow:var(--m-shadow-press)}
.dbrpg-tr-stepper>button:disabled{opacity:.4;box-shadow:none}
.dbrpg-tr-stepper>button:active:not(:disabled){transform:translate(1px,1px);box-shadow:none}
.dbrpg-tr-stepper>.dbrpg-tr-max{font-size:.75rem;background:var(--m-violet-soft)}
.dbrpg-tr-stepper input{width:58px!important;min-height:36px!important;padding:4px!important;text-align:center;font:900 1rem var(--m-font-body)!important}
.dbrpg-tr-subtotal{grid-column:2/-1;justify-self:end;font-weight:900;color:var(--m-success)}
.dbrpg-tr-preview{display:grid;gap:10px;padding:12px;border:var(--m-stroke) dashed var(--m-ink);border-radius:var(--m-radius);background:var(--m-paper)}
.dbrpg-tr-preview.is-active{border-style:solid;background:#fff6c7;box-shadow:var(--m-shadow-sm)}
.dbrpg-tr-preview-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.dbrpg-tr-preview-head span{font:400 1.25rem var(--m-font-display)}
.dbrpg-tr-preview-head b{font:400 1.6rem var(--m-font-display);color:var(--m-violet-deep)}
.dbrpg-tr-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.dbrpg-tr-preview-grid>div{display:grid;padding:6px 8px;border:2px solid var(--m-ink);border-radius:10px;background:var(--m-blank)}
.dbrpg-tr-preview-grid small{font-weight:800;font-size:.68rem;color:var(--m-ink-3);text-transform:uppercase;letter-spacing:.05em}
.dbrpg-tr-preview-grid b{font-weight:900}
.dbrpg-tr-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px}
.dbrpg-tr-stats>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:6px;padding:5px 8px;border:2px solid var(--m-ink);border-radius:8px;background:var(--m-blank);font-size:.85rem}
.dbrpg-tr-stats span{overflow:hidden;font-weight:800;color:var(--m-ink-2);white-space:nowrap;text-overflow:ellipsis}
.dbrpg-tr-stats b{font-weight:800;color:var(--m-ink-3)}
.dbrpg-tr-stats i{font-style:normal;color:var(--m-ink-3)}
.dbrpg-tr-stats strong{display:flex;align-items:baseline;gap:3px;font-weight:900}
.dbrpg-tr-stats strong small{font-size:.7rem;color:var(--m-success)}
.dbrpg-tr-stats .is-up{background:#e9fbe9}
.dbrpg-tr-stats .is-up i{color:var(--m-success)}
.dbrpg-tr-warning{padding:6px 10px;border:2px solid var(--m-ink);border-radius:8px;background:#ffd1db;font-weight:800;font-size:.82rem}
.dbrpg-tr-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}
.dbrpg-tr-actions .dbrpg-primary{min-height:52px;font:400 1.25rem var(--m-font-display);letter-spacing:.04em}
.dbrpg-tr-result{display:grid;gap:12px;justify-items:center;text-align:center}
.dbrpg-tr-result>p{max-width:56ch;font-weight:600;color:var(--m-ink-2)}
.dbrpg-tr-result>p b{color:var(--m-ink)}
.dbrpg-tr-result h2{font-size:clamp(2rem,5vw,2.8rem);color:var(--m-violet);-webkit-text-stroke:1px var(--m-ink);paint-order:stroke fill;text-shadow:3px 3px 0 var(--m-ink);transform:skew(-6deg)}
.dbrpg-tr-result-art{position:relative;width:150px;aspect-ratio:4/5;padding:4px;border:var(--m-stroke) solid var(--m-ink);border-radius:var(--m-radius-lg);background:var(--m-pop);box-shadow:0 0 0 6px var(--m-violet),0 0 40px 10px #ffd21f99;animation:dbrpg-m-slam .5s cubic-bezier(.2,1.6,.4,1)}
.dbrpg-tr-result-art img{width:100%;height:100%;object-fit:cover;object-position:50% 12%;border-radius:10px}
.dbrpg-tr-result-art>span{position:absolute;left:50%;bottom:-14px;padding:2px 12px;border:var(--m-stroke-thin) solid var(--m-ink);border-radius:8px;background:var(--m-hot);color:var(--m-blank);font:400 1.15rem var(--m-font-display);white-space:nowrap;transform:translateX(-50%) rotate(-3deg)}
.dbrpg-tr-result .dbrpg-tr-stats{width:100%;text-align:left}
.dbrpg-tr-result .dbrpg-tr-head{width:100%;text-align:left;grid-template-columns:minmax(0,1fr);padding-right:0}
.dbrpg-tr-result .dbrpg-tr-head .dbrpg-tr-art,.dbrpg-tr-result .dbrpg-tr-head h2,.dbrpg-tr-result .dbrpg-tr-head .dbrpg-kicker{display:none}

@media (max-width:900px){
  .dbrpg-mentor-summon-layout{grid-template-columns:minmax(0,1fr)}
  .dbrpg-active-mentor-banner{grid-template-columns:80px minmax(0,1fr)}
  .dbrpg-active-mentor-banner>img{width:80px;height:80px}
  .dbrpg-active-mentor-banner>p{grid-column:1/-1}
}
@media (max-width:760px){
  .dbrpg-mentor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .dbrpg-mentor-card{padding:4px}
  .dbrpg-mentor-body{padding:8px}
  .dbrpg-mentor-body h3{font-size:1.2rem}
  .dbrpg-mentor-body>p{display:none}
  .dbrpg-summon-actions{grid-template-columns:minmax(0,1fr)}
  .dbrpg-mentor-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dbrpg-portal-featured{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dbrpg-tr-head{grid-template-columns:76px minmax(0,1fr)}
  .dbrpg-tr-id h2{font-size:1.6rem}
  .dbrpg-tr-mat{grid-template-columns:48px minmax(0,1fr)}
  .dbrpg-tr-mat-art{width:48px;height:48px}
  .dbrpg-tr-stepper{grid-column:1/-1;justify-content:flex-end}
  .dbrpg-tr-subtotal{grid-column:1/-1}
  .dbrpg-tr-preview-grid{grid-template-columns:minmax(0,1fr)}
  .dbrpg-tr-actions .dbrpg-primary{width:100%}
}
