/* MHUR Nexus — rendu final direct V639. */

/* ===== css/v638-site-bundle.css ===== */
/* MHUR Nexus — bundle CSS V638. */

/* ===== inline ===== */
html,body{background-color:#07101f!important}

/* ===== css/v54-device-session-guard.css ===== */
#mhurEarlyBanGuard{position:fixed;inset:0;z-index:2147483647;background:radial-gradient(circle at 50% 25%,#5e1820 0,#23070b 48%,#080000 100%);display:grid;place-items:center;padding:24px;color:#fff;font-family:Arial,Helvetica,sans-serif;text-align:center}
#mhurEarlyBanGuard>div{width:min(620px,100%);padding:34px 22px;border:3px solid #ff4d5d;border-radius:24px;background:#0b1422;box-shadow:0 0 0 7px #07090e,0 20px 70px #000}
#mhurEarlyBanGuard strong{display:block;font-size:clamp(25px,6vw,44px);line-height:1.1;margin-bottom:18px}
#mhurEarlyBanGuard span{font-size:18px;font-weight:800;color:#ffd5d9}


/* ===== inline ===== */

:root{
  --bg:#070b13;--panel:#101928;--panel2:#17263b;--line:#344c70;--text:#f7fbff;--muted:#c7d7ee;
  --hero:#39aee5;--villain:#971184;--gold:#e4b400;--assault:#fff000;--attack:#ff1119;--rapid:#19c9de;--technical:#c61bf4;--support:#11ef22;--cyan:#19bcd0;
}
*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#15223a 0,#080d17 45%,#02040a 100%);font-family:Arial,Helvetica,sans-serif;color:var(--text)}button,input{font:inherit}button{cursor:pointer;border:0}.top{height:72px;background:#070b13;border-bottom:1px solid #263852;display:flex;align-items:center;justify-content:center;position:sticky;top:0;z-index:20}.brand{text-align:center;font-weight:900;letter-spacing:1px;line-height:1.05}.brand span{display:block;color:#ffe300}.menuBtn{position:absolute;left:14px;top:12px;width:50px;height:50px;border:2px solid #49658d;border-radius:14px;background:#132139;color:white;font-size:30px}.lang{position:absolute;right:14px;top:12px;border:1px solid #4c6a95;border-radius:24px;background:#182843;color:white;font-weight:900;padding:12px 18px}.drawer{position:fixed;left:0;top:72px;bottom:0;width:292px;background:#0d1625;border-right:2px solid #314865;z-index:30;transform:translateX(-100%);transition:.18s;padding:16px}.drawer.open{transform:none}.drawer .navItem{display:block;width:100%;text-align:left;margin:8px 0;padding:15px 16px;border-radius:14px;background:#17253c;color:white;font-weight:900;text-decoration:none}.drawer .navItem.active{background:#ffe100;color:#000}.wrap{max-width:1500px;margin:0 auto;padding:32px 18px 80px}.title{font-size:44px;margin:0 0 20px;text-shadow:3px 3px 0 #000;font-weight:900}.homeBox{background:#111b2b;border:2px solid #344b6d;border-radius:18px;padding:22px;font-size:20px;line-height:1.5}.search{width:100%;background:#080e19;border:2px solid #334b70;color:white;border-radius:14px;padding:14px 18px;margin-bottom:18px}.section{border:4px solid #000;border-radius:18px;overflow:hidden;background:#1d354d;margin:18px 0}.sectionHead{font-size:34px;font-weight:900;padding:18px 22px;text-shadow:3px 3px #000}.heroHead{background:var(--hero)}.villainHead{background:var(--villain)}.sectionBody{display:flex;gap:22px;flex-wrap:wrap;padding:22px;justify-content:center}.cardsGrid{display:grid;grid-template-columns:repeat(4,minmax(250px,300px));gap:26px;align-items:stretch;justify-content:center;width:100%}.cardsGrid .card{width:100%;max-width:300px;justify-self:center;min-height:760px}.cardsGrid .card .cardBody{min-height:300px}.cardsGrid .card p{margin-top:auto;min-height:42px}.empty{padding:24px;color:#d3def1}.card,.styleCard{background:#0f1928;border:4px solid #000;border-radius:18px;color:white;text-align:left;overflow:hidden}.card{width:300px;display:flex;flex-direction:column;height:100%}.thumb,.styleBanner{background:#101a29;overflow:hidden;display:flex;align-items:center;justify-content:center}.thumb{height:430px}.thumb img,.styleBanner img,.portrait img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}.card[data-char="midoriya"] .thumb img{object-position:center top;transform:translateY(-24px) scale(1.08);transform-origin:top center}.cardBody{padding:18px;display:flex;flex-direction:column;flex:1}.card h3{font-size:24px;margin:0 0 16px;line-height:1.08;min-height:54px;display:flex;align-items:flex-start}.styleGrid{display:flex;gap:26px;flex-wrap:wrap}.styleCard{width:360px;text-align:center}.styleBanner{height:470px}.styleInfo{padding:18px}.styleInfo h2{font-size:27px;margin:0 0 14px}.badges{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.badge{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:3px solid #000;border-radius:18px;padding:8px 14px;font-weight:900;color:#000;background:white;min-height:54px;line-height:1;white-space:nowrap;overflow:hidden}.badge.hero{background:var(--hero);color:white}.badge.villain{background:var(--villain);color:white}.badge.assault{background:var(--assault)}.badge.attack{background:var(--attack);color:white}.badge.rapid{background:var(--rapid)}.badge.technical{background:var(--technical);color:white}.badge.support{background:var(--support)}.roleIcon{width:42px;height:42px;object-fit:contain;display:block;background:transparent!important;filter:none;flex:0 0 42px;mix-blend-mode:normal}.back{background:#1a2a43;color:white;border:2px solid #405d84;border-radius:13px;padding:10px 16px;margin-bottom:18px;font-weight:900}.charPanel{background:var(--gold);border:4px solid #000;border-radius:18px;overflow:hidden;color:#000}.charTop{display:grid;grid-template-columns:310px minmax(0,1fr);gap:22px;padding:18px}.portrait{height:390px;background:#27333c;border-radius:14px;display:flex;align-items:center;justify-content:center;overflow:hidden}.meta{min-width:0}.meta h2{font-size:42px;margin:0 0 14px;line-height:1.05;overflow-wrap:anywhere}.meta p{font-size:22px;line-height:1.35;margin:12px 0}.skill{display:grid;grid-template-columns:350px minmax(0,1fr);gap:18px;align-items:start;padding:16px;border-top:1px solid rgba(0,0,0,.08)}.skillImgBox{height:210px;border-radius:10px;background:#303941;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:6px}.skillImgBox img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.skillText{min-width:0}.skillBox{background:#eee;color:#000;border-radius:0 10px 10px 0;overflow:hidden;width:100%}.skillHead{background:var(--cyan);color:white;text-shadow:2px 2px 0 #000;font-size:28px;font-weight:900;padding:10px 16px;line-height:1.05;overflow-wrap:anywhere}.skillDesc{font-size:22px;line-height:1.35;padding:16px 18px;min-height:78px}.skillDesc p{margin:0 0 12px}.tables{margin-top:12px}.toggle{display:block;width:100%;text-align:left;background:#08264a;color:#78b8ff;font-weight:900;padding:13px 16px;border-bottom:1px solid #31506f;font-size:20px}.simpleTable{overflow-x:auto;background:#20262b}.dataTable{width:100%;border-collapse:collapse;color:white;font-size:18px}.dataTable th,.dataTable td{padding:11px 14px;border-bottom:1px solid #4b565f;text-align:center}.dataTable th:first-child,.dataTable td:first-child{text-align:left;color:#ffe000;font-weight:900}.dataTable th{font-weight:900;color:white}.tableGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;background:#20262b;padding:14px}.miniTableTitle{color:#19c9de;font-weight:900;margin:0 0 8px}.gamePanel{background:#e0b500;color:#000;border-radius:16px;border:4px solid #000;margin:18px 0;overflow:hidden}.gameHeader{display:grid;grid-template-columns:92px minmax(0,1fr);gap:18px;padding:18px 24px;align-items:center;overflow:hidden}.gameIcon{width:86px;height:86px;display:flex;align-items:center;justify-content:center;background:transparent;overflow:hidden}.gameIcon img{max-width:86px;max-height:86px;width:auto;height:auto;object-fit:contain;background:transparent}.gameName{font-size:clamp(24px,3.1vw,34px);font-weight:900;line-height:1.05;overflow-wrap:anywhere}.tuningBlock{margin:12px 14px 18px;background:#fff;border-radius:12px;overflow:hidden}.tuningTitle{font-size:24px;font-weight:900;padding:10px 14px}.tuningText{font-size:21px;line-height:1.45;padding:14px}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{background:#20314e;color:white;border:1px solid #38547b;border-radius:9px;padding:9px 12px;font-weight:900}.tuningCard .tuningBlock{box-shadow:0 3px 0 rgba(0,0,0,.25)}.tuningCard.spTuning .gameIcon{width:104px;height:104px}.tuningCard.spTuning .gameIcon img{max-width:104px;max-height:104px}.tuningCard.normalTuning .gameIcon{opacity:.95}.tuningLevels{padding:0 14px 16px}.chip.subChip{background:#3b2f00;color:#ffd400;border-color:#9e8500}.tuningTitle span{font-size:18px;letter-spacing:.4px}.normalTuning .tuningText br{display:block;margin:8px 0;content:''} .assaultBg{background:var(--assault)}.attackBg{background:var(--attack);color:white}.rapidBg{background:var(--rapid)}.technicalBg{background:var(--technical);color:white}.supportBg{background:var(--support)}.modeNotice{border:4px solid #000;border-radius:18px;padding:18px 22px;margin:0 0 22px;background:linear-gradient(90deg,#ffe100,#19c9de);color:#000;font-size:24px;font-weight:900}.modeNotice span{display:inline-block;background:#07101d;color:#fff;border-radius:999px;padding:8px 14px;margin-right:10px}.card{position:relative}.cardModeTag{position:absolute;top:12px;left:12px;right:12px;z-index:3;text-align:center;border:3px solid #000;border-radius:999px;padding:8px 10px;font-weight:900;color:#000;background:#ffe100;box-shadow:0 3px 0 #000}.card.buildMode .cardModeTag{background:#19c9de}.card.characterMode .cardModeTag{background:#ffe100}.card.tuningMode .cardModeTag{background:linear-gradient(90deg,#c81cff,#19c9de);color:white}.card.costumeMode{border-color:#ffe100}.card.buildMode{border-color:#19c9de}.card.characterMode{border-color:#ffe100}.card.tuningMode{border-color:#c81cff}.card.costumeMode .thumb,.card.buildMode .thumb,.card.characterMode .thumb,.card.tuningMode .thumb{filter:saturate(1.08)}.styleCard[data-style="assault"] .styleBanner img{object-position:center top;transform:translateY(-18px) scale(1.08);transform-origin:top center}.styleCard[data-style="fullbullet"] .styleBanner img{object-position:center top;transform:translateY(-18px) scale(1.08);transform-origin:top center}.pageFrame{border:4px solid #000;border-radius:18px;padding:18px;margin-bottom:22px}.pageFrame.charactersFrame{background:linear-gradient(90deg,rgba(255,225,0,.26),rgba(25,201,222,.12));box-shadow:0 0 0 3px rgba(255,225,0,.35) inset}.pageFrame.tuningsFrame{background:linear-gradient(90deg,rgba(200,28,255,.28),rgba(25,201,222,.18));box-shadow:0 0 0 3px rgba(200,28,255,.35) inset}.pageFrame.costumesFrame{background:linear-gradient(90deg,rgba(255,225,0,.22),rgba(255,80,180,.18));box-shadow:0 0 0 3px rgba(255,225,0,.30) inset}.pageFrame.buildsFrame{background:linear-gradient(90deg,rgba(25,201,222,.22),rgba(42,255,122,.16));box-shadow:0 0 0 3px rgba(25,201,222,.30) inset}.hidden{display:none!important}.costumeGroup{background:#101a29;border:3px solid #000;border-radius:16px;overflow:hidden;margin:18px 0}.costumeHead{background:var(--gold);color:#000;font-size:30px;font-weight:900;padding:12px 18px}.slots{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;padding:16px}.slot{border:3px solid #000;border-radius:12px;padding:15px;color:#000;font-weight:900;font-size:20px}.slot small{display:block;margin-top:5px}

@media(max-width:1320px){.cardsGrid{grid-template-columns:repeat(3,minmax(250px,300px))}}
@media(max-width:980px){.cardsGrid{grid-template-columns:repeat(2,minmax(250px,300px))}}
@media(max-width:660px){.cardsGrid{grid-template-columns:1fr}.cardsGrid .card{max-width:320px}}
@media(max-width:760px){.wrap{padding:22px 10px 70px}.title{font-size:34px}.charTop,.skill{grid-template-columns:1fr}.portrait{height:390px}.skillImgBox{height:180px}.card,.styleCard{width:100%}.thumb,.styleBanner{height:430px}.gameHeader{grid-template-columns:74px minmax(0,1fr);gap:12px;padding:14px}.gameIcon{width:68px;height:68px}.gameIcon img{max-width:68px;max-height:68px}.meta h2{font-size:34px}.meta p,.skillDesc{font-size:19px}.skillHead{font-size:25px}}

.charPanel .skillHead{background:var(--cyan)}
.charPanel.role-strike .skillHead{background:var(--attack);color:#fff}
.charPanel.role-speed .skillHead{background:var(--rapid);color:#000;text-shadow:none}
.charPanel.role-technical .skillHead{background:var(--technical);color:#fff}
.styleBanner img,.thumb img{object-position:center top}

.tuningEffect{border-top:1px solid rgba(0,0,0,.22);padding:12px 14px}.tuningEffect:first-child{border-top:0}.tuningEffectName{font-size:22px;font-weight:900;margin-bottom:7px}.tuningEffectDesc{font-size:20px;line-height:1.35;margin-bottom:10px}.tuningEffect .chips{padding:0}.normalTuning .tuningText{padding:0}.spTuning .tuningText{font-size:20px}.tuningLevels{display:flex;gap:8px;flex-wrap:wrap}.chip{margin:2px 0}
/* === v103 : Costumes filters + community build simulator === */
.builderHero{border:4px solid #000;border-radius:18px;padding:18px;margin:0 0 20px;background:linear-gradient(90deg,#111b2b,#16304d);color:white}
.builderHero h2{font-size:34px;margin:0 0 8px;text-shadow:3px 3px #000}.builderHero p{font-size:19px;line-height:1.35;margin:8px 0;color:#d9e8ff}
.filterPanel{background:#0f1928;border:4px solid #000;border-radius:18px;padding:16px;margin:18px 0;color:white}.filterPanel h3{font-size:26px;margin:0 0 12px;text-shadow:2px 2px #000}.filterGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.filterGrid label{font-weight:900;color:#ffe100}.filterGrid select,.filterGrid input,.filterGrid textarea{width:100%;margin-top:6px;background:#07101d;color:white;border:2px solid #38547b;border-radius:10px;padding:10px}.resultGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:16px}.costumeResult,.buildResult{background:#121d2e;border:3px solid #000;border-radius:16px;overflow:hidden;color:white}.costumeResultImg{height:220px;background:#27333c;display:flex;align-items:center;justify-content:center}.costumeResultImg img{width:100%;height:100%;object-fit:cover}.costumeResultBody,.buildResultBody{padding:14px}.costumeResult h3,.buildResult h3{font-size:22px;margin:0 0 8px}.slotRow{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.slotPill{border:2px solid #000;border-radius:999px;padding:7px 11px;color:#000;font-weight:900}.slotPill.red{background:#ff1119;color:white}.slotPill.yellow{background:#fff000}.slotPill.cyan{background:#19c9de}.slotPill.violet{background:#c61bf4;color:white}.slotPill.green{background:#11ef22}.slotPill.gray{background:#aab2bd}.buildToolbar{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.buildTab{background:#17253c;color:white;border:2px solid #405d84;border-radius:12px;padding:10px 14px;font-weight:900}.buildTab.active{background:#ffe100;color:#000}.buildForm{background:#0f1928;border:4px solid #000;border-radius:18px;padding:16px;margin-top:16px}.buildForm textarea{min-height:90px;resize:vertical}.likeBtn{background:#ffe100;color:#000;border:3px solid #000;border-radius:12px;padding:8px 12px;font-weight:900}.buildMeta{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.buildMini{background:#20314e;border:1px solid #38547b;border-radius:999px;padding:6px 10px;font-weight:900}.warnLocal{background:#2b1e00;border:2px solid #806200;color:#ffe100;border-radius:12px;padding:12px;margin:12px 0;font-weight:900}.styleChoiceCompact{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}.styleChoiceCompact button{background:#17253c;color:white;border:2px solid #405d84;border-radius:12px;padding:10px 14px;font-weight:900}.styleChoiceCompact button.active{background:#19c9de;color:#000}

/* === v104 : costumes Midoriya + build recommandé amélioré === */
.costumeGroupsWrap{display:flex;flex-direction:column;gap:22px;margin-top:18px}.costumeGalleryGroup{border:4px solid #000;border-radius:18px;overflow:hidden;background:#c49b00}.costumeGalleryHead{display:flex;align-items:center;justify-content:space-between;background:#f1b900;color:#000;font-size:34px;font-weight:900;padding:10px 16px}.costumeRarity{font-size:24px;letter-spacing:2px}.costumeGalleryGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;padding:14px;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.25),transparent 25%),linear-gradient(135deg,#a88700,#d4ae00)}.costumeTile{border:4px solid #000;border-radius:16px;overflow:hidden;background:#111b2b;color:white;text-align:center;box-shadow:0 4px 0 rgba(0,0,0,.45);position:relative}.costumeTile.selected{outline:5px solid #19e6ff}.costumeTile.locked{filter:brightness(.55)}.costumeTile img{width:100%;height:160px;object-fit:cover;display:block;background:#222}.costumeTileName{padding:8px;font-weight:900;min-height:48px;display:flex;align-items:center;justify-content:center}.lockBadge{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:48px;text-shadow:2px 2px #000}.costumeDetail{margin:22px 0;border:4px solid #000;border-radius:18px;background:linear-gradient(135deg,#e4b400,#6c5500);overflow:hidden;color:#000}.costumeDetailTop{display:grid;grid-template-columns:280px 1fr;gap:18px;padding:18px}.costumeDetailImg{background:#111;border:4px solid #000;border-radius:16px;overflow:hidden}.costumeDetailImg img{width:100%;height:300px;object-fit:cover;display:block}.costumeDetail h2{font-size:38px;margin:0 0 8px}.tuningColumns{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:0 18px 18px}.tuningColumn{border:4px solid #000;border-radius:16px;background:#2e3740;color:white;overflow:hidden}.tuningColumnHead{font-size:24px;font-weight:900;padding:10px 14px;background:#111;color:white}.slotList{padding:12px}.gameSlot{display:grid;grid-template-columns:1fr 74px;align-items:center;margin:8px 0;background:#f5f5f5;color:#000;border:4px solid #222;border-radius:12px;overflow:hidden;font-weight:900}.gameSlot .slotName{padding:12px}.gameSlot .slotLevel{font-size:16px;color:#000;display:block;margin-top:3px}.gameSlot .slotGem{height:64px;display:flex;align-items:center;justify-content:center;border-left:4px solid #999}.gameSlot.locked{opacity:.45}.conditionBox{background:#000;color:#ffe100;font-weight:900;padding:8px 12px}.buildHeaderLine{display:flex;justify-content:space-between;align-items:center;gap:12px}.addBuildBtn{background:#ffe100;color:#000;border:4px solid #000;border-radius:999px;font-size:28px;font-weight:900;width:56px;height:56px;box-shadow:0 4px 0 #000}.buildForm.collapsed{display:none}.buildResult{position:relative;overflow:hidden}.buildCardGrid{display:grid;grid-template-columns:180px 1fr;gap:16px}.buildCostumeImg{border:4px solid #000;border-radius:14px;overflow:hidden;background:#111}.buildCostumeImg img{width:100%;height:180px;object-fit:cover;display:block}.likesUnder{margin-top:10px;font-size:22px;font-weight:900;color:#ffe100;text-shadow:1px 1px #000}.buildTuningPreview{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.buildTuningBox{background:#101a29;color:white;border:2px solid #334b70;border-radius:12px;padding:10px;font-weight:900}.buildTuningBox b{display:block;color:#ffe100;margin-bottom:5px}.spSideTag{font-size:14px;color:#9fd7ff}.slotPill.red{background:#ff1010;color:white}.slotPill.yellow{background:#fff000;color:#000}.slotPill.cyan{background:#18c9df;color:#000}.slotPill.violet{background:#bc19ef;color:white}.slotPill.green{background:#00ef22;color:#000}.slotPill.gray{background:#d7d7d7;color:#000}@media(max-width:800px){.costumeDetailTop,.tuningColumns,.buildCardGrid,.buildTuningPreview{grid-template-columns:1fr}.costumeGalleryGrid{grid-template-columns:repeat(2,1fr)}}


/* v105 costumes / builds rework */
.stars{display:block;color:#ffd400;font-size:28px;letter-spacing:2px;text-shadow:2px 2px #000;line-height:1}.rarityText{display:block;font-size:20px;font-weight:900;color:#fff;text-shadow:2px 2px #000;text-align:center}.costumeRarity{display:flex;flex-direction:column;align-items:center;gap:2px}.rarityBadge,.rarityBig{display:inline-flex;flex-direction:column;align-items:center;background:rgba(0,0,0,.55);border-radius:12px;padding:6px 14px;margin:8px 0}.rarityBig .stars{font-size:34px}.costumeLocalFilter{margin:0 0 18px}.costumeGalleryHead{display:flex;justify-content:space-between;align-items:center;gap:12px}.costumeTile.locked{filter:none;opacity:1}.lockBadge{display:none!important}.costumeTile{background:#101927;border:4px solid #000;border-radius:16px;padding:8px;box-shadow:0 5px 0 rgba(0,0,0,.45)}.costumeTile.selected{outline:5px solid #19e5ff;outline-offset:-8px}.costumeTile img{filter:none!important;opacity:1!important}.costumeTileName{font-weight:900;color:white;text-shadow:2px 2px #000;padding:8px 4px}.gameLikeDetail{background:linear-gradient(180deg,#caa800,#9e7f00);border:4px solid #000}.gameLikeDetail .costumeDetailTop{background:rgba(0,0,0,.08);padding:18px}.tuningColumns{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:18px}.tuningColumn{border:4px solid #000;background:#303a42;border-radius:12px;overflow:hidden}.tuningColumnHead{font-size:26px;font-weight:900;color:white;background:#111;padding:12px 16px;text-shadow:2px 2px #000}.conditionBox{background:#050505;color:#ffea00;font-weight:900;padding:10px 16px;font-size:18px}.slotList{padding:12px;display:flex;flex-direction:column;gap:10px}.gameSlot{min-height:86px;background:#f4f4f4;color:#000;border:4px solid #222;border-radius:12px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;box-shadow:inset -70px 0 0 #bfbfbf}.spBand{background:#101010;color:#fff;border-color:#000;box-shadow:inset -84px 0 0 #444}.slotBandText{padding:12px 16px;font-size:22px;font-weight:900;line-height:1.1}.slotBandText small{display:block;font-size:15px;color:#ffea00;margin-top:6px}.slotLevel{display:none!important}.slotGem{width:72px;height:72px;border-radius:50%;border:3px solid #777;display:flex!important;align-items:center;justify-content:center;font-size:24px;font-weight:900;color:#000;flex:0 0 72px;margin-right:8px}.slotGem.red{background:#ff1717;color:#fff}.slotGem.yellow{background:#fff000}.slotGem.cyan{background:#16bfd0}.slotGem.violet{background:#bd17ee;color:#fff}.slotGem.green{background:#00ef22}.slotPill.red{background:#ff1717;color:#fff}.slotPill.yellow{background:#fff000;color:#000}.slotPill.cyan{background:#16bfd0;color:#000}.slotPill.violet{background:#bd17ee;color:#fff}.slotPill.green{background:#00ef22;color:#000}.slotPill.gray{background:#eee;color:#000}.filterPanel{border:4px solid #000;border-radius:16px;padding:18px;background:#0d1829;margin-bottom:18px}.filterPanel h3{font-size:26px;margin:0 0 14px;color:white;text-shadow:2px 2px #000}.filterGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.filterGrid label{font-weight:900;color:#fff000}.filterGrid select,.filterGrid input,.filterGrid textarea{width:100%;padding:10px;border-radius:8px;background:#08101d;color:#fff;border:1px solid #49658d;margin-top:6px}.buildResult{border:4px solid #000;border-radius:16px;background:#132033;color:white;padding:14px}.buildCardGrid{display:grid;grid-template-columns:220px 1fr;gap:16px}.buildCostumeImg{height:210px;background:#0a101a;border:3px solid #000;border-radius:12px;overflow:hidden}.buildCostumeImg img{width:100%;height:100%;object-fit:cover}.likesUnder{font-size:20px;font-weight:900;margin-top:8px;color:#ffe100}.buildHeaderLine{display:flex;align-items:center;justify-content:space-between}.addBuildBtn{width:58px;height:58px;border-radius:50%;background:#ffe100;color:#000;border:4px solid #000;font-size:36px;font-weight:900}.styleChoiceCompact button{background:#17253c;color:white;border:2px solid #415e83;border-radius:12px;padding:10px 14px;margin:0 8px 10px 0;font-weight:900}.styleChoiceCompact button.active{background:#ffe100;color:#000}.buildForm.collapsed{display:none}@media(max-width:900px){.tuningColumns,.buildCardGrid{grid-template-columns:1fr}.gameSlot{min-height:76px}.slotBandText{font-size:18px}.slotGem{width:62px;height:62px;flex-basis:62px}}


/* === v106 : interface costumes/T.U.N.I.N.G proche du jeu === */
.costumeLocalFilter{margin:18px 0 22px!important}
.costumeGalleryGroup{background:#b99500!important;border:4px solid #000!important;border-radius:12px!important;box-shadow:0 4px 0 #000;overflow:hidden}
.costumeGalleryHead{background:#efb400!important;color:#000!important;font-size:34px!important;line-height:1!important;padding:8px 14px!important;border-bottom:4px solid #000!important}
.costumeRarity .stars{color:#ffd900;text-shadow:2px 2px #000;-webkit-text-stroke:1px #000;font-size:28px}.costumeRarity .rarityText{font-size:24px;color:#fff;text-shadow:2px 2px #000;margin-left:8px}
.costumeGalleryGrid{background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.22),transparent 22%),linear-gradient(135deg,#907600,#d2aa00)!important;display:grid!important;grid-template-columns:repeat(auto-fill,minmax(190px,1fr))!important;gap:16px!important;padding:18px!important}
.costumeTile{position:relative;border:4px solid #000!important;border-radius:16px!important;background:#071223!important;overflow:hidden!important;box-shadow:0 6px 0 rgba(0,0,0,.6)!important;padding:0!important;color:#fff!important;min-height:265px!important;cursor:pointer!important;transition:.15s transform,.15s filter}.costumeTile:hover{transform:translateY(-3px);filter:brightness(1.08)}.costumeTile.selected{outline:5px solid #19e6ff!important;box-shadow:0 0 0 8px #000,0 0 18px #19e6ff!important}.costumeTile img{width:100%!important;height:190px!important;object-fit:cover!important;background:#222!important;display:block!important}.costumeTile .costumeTileName{height:58px!important;background:#0b1424!important;color:#fff!important;font-size:18px!important;text-shadow:2px 2px #000;font-weight:900!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:6px!important}.costumeWord{position:absolute;left:0;right:0;bottom:48px;margin:auto;width:max-content;max-width:90%;padding:1px 10px;color:#fff;font-size:28px;font-weight:900;text-shadow:3px 3px #284778,-2px -2px #284778;text-transform:uppercase;letter-spacing:1px}.costumeMiniDesc{position:absolute;left:0;right:0;bottom:0;background:rgba(0,0,0,.35);font-size:13px;color:#fff;height:20px;display:flex;align-items:center;justify-content:center;text-shadow:1px 1px #000}.costumeTileBadge{position:absolute;bottom:66px;width:42px;height:42px;border:4px solid #000;clip-path:polygon(15% 0,85% 0,100% 50%,85% 100%,15% 100%,0 50%);display:flex;align-items:center;justify-content:center;font-weight:900;color:#000;text-shadow:none}.costumeTileBadge.left{left:8px}.costumeTileBadge.right{right:8px}.costumeTileBadge .conditionMini{position:absolute;right:0;bottom:-2px;font-size:11px;color:#fff;background:#000;padding:0 2px;border-radius:3px}.costumeTileBadge.red{background:#ff1717;color:#fff}.costumeTileBadge.yellow{background:#fff000}.costumeTileBadge.cyan{background:#16bfd0}.costumeTileBadge.violet{background:#bd17ee;color:#fff}.costumeTileBadge.green{background:#00ef22}.costumeTileStars{position:absolute;top:6px;right:7px;background:rgba(0,0,0,.65);border:2px solid #000;border-radius:10px;padding:2px 6px;color:#ffd900;font-weight:900;text-shadow:1px 1px #000}.costumeTileRarity{position:absolute;top:6px;left:7px;background:#000;color:#fff;border-radius:8px;padding:2px 8px;font-weight:900}
.gameCostumeScreen{border:5px solid #000;border-radius:16px;background:linear-gradient(145deg,#c69b00,#5f4800 85%);overflow:hidden;margin:22px 0;color:#000;box-shadow:0 6px 0 #000}.gameCostumeTop{display:grid;grid-template-columns:280px 1fr 320px;gap:18px;padding:18px;align-items:start;background:radial-gradient(circle at 55% 35%,rgba(255,255,255,.35),transparent 28%),linear-gradient(90deg,#d6b000,#7c6500)}.costumePreviewLarge{height:315px;border:5px solid #000;border-radius:16px;background:#111;overflow:hidden;position:relative}.costumePreviewLarge img{width:100%;height:100%;object-fit:cover}.costumeInfoBox h2{font-size:42px;margin:0 0 6px;text-shadow:2px 2px rgba(255,255,255,.35)}.costumeInfoBox h3{font-size:22px;margin:0 0 12px}.rarityPanel{background:rgba(0,0,0,.6);border-radius:14px;padding:10px 20px;color:#fff;width:max-content;margin-bottom:12px;text-align:center}.rarityPanel .stars{display:block;color:#ffd900;font-size:34px;text-shadow:2px 2px #000}.rarityPanel .rarityText{display:block;font-size:22px;font-weight:900}.spSummaryGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.spSummary{background:#111;color:#fff;border:4px solid #000;border-radius:12px;padding:9px 12px;font-weight:900;text-shadow:2px 2px #000;position:relative;min-height:58px}.spSummary small{display:block;color:#fff000;text-shadow:none;font-size:15px;margin-top:3px}.gameHint{font-weight:900;background:rgba(255,255,255,.75);border:3px solid #000;border-radius:10px;padding:10px;margin-top:12px}.gameTuningArea{display:grid;grid-template-columns:minmax(520px,1.2fr) minmax(360px,.8fr);gap:16px;padding:16px;background:linear-gradient(#a64d00,#7b3b00)}.tuningColumns.gameSlots{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0!important}.tuningColumn{border:4px solid #000!important;border-radius:8px!important;background:#2f3a42!important;overflow:hidden}.tuningColumnHead{font-size:22px!important;background:#111!important;color:#fff!important;text-shadow:2px 2px #000;padding:8px 12px!important}.conditionBox{background:#050505!important;color:#ffea00!important;font-size:16px!important;padding:8px 12px!important}.slotList{gap:8px!important;padding:10px!important}.gameSlot{height:78px!important;min-height:78px!important;background:#eee!important;border:3px solid #222!important;border-radius:10px!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;overflow:hidden!important;box-shadow:inset -72px 0 #bdbdbd!important;cursor:pointer}.gameSlot:hover{outline:4px solid #19e6ff}.gameSlot.active{outline:5px solid #19e6ff!important;box-shadow:inset -72px 0 #bdbdbd,0 0 0 5px #000!important}.gameSlot.spBand{background:#111!important;color:#fff!important;box-shadow:inset -78px 0 #444!important;border-radius:0 14px 14px 0!important}.slotBandText{padding:8px 12px!important;font-size:18px!important;font-weight:900!important;line-height:1.08!important;color:inherit!important}.slotBandText .equippedName{font-size:17px;display:block}.slotBandText .equippedChar{font-size:13px;color:#222;display:block}.spBand .slotBandText{font-size:20px!important;color:#fff!important;text-shadow:2px 2px #000}.slotBandText small{display:block!important;color:#ffe100!important;font-size:13px!important;margin-top:5px;text-shadow:none!important}.slotGem{width:66px!important;height:66px!important;flex:0 0 66px!important;margin-right:6px!important;border:4px solid #888!important;clip-path:polygon(20% 0,80% 0,100% 50%,80% 100%,20% 100%,0 50%)!important;border-radius:0!important}.slotGem.red{background:#ff1717!important;color:#fff!important}.slotGem.yellow{background:#fff000!important;color:#000!important}.slotGem.cyan{background:#16bfd0!important;color:#000!important}.slotGem.violet{background:#bd17ee!important;color:#fff!important}.slotGem.green{background:#00ef22!important;color:#000!important}.tuningPicker{border:4px solid #000;border-radius:12px;background:#303a42;color:#fff;overflow:hidden;min-height:500px}.tuningPickerHead{background:#111;color:#fff;padding:10px 14px;font-size:24px;font-weight:900;text-shadow:2px 2px #000}.tuningPickerSub{background:#555;color:#ffe100;font-weight:900;padding:8px 14px}.tuningOptions{max-height:640px;overflow:auto;padding:10px;display:flex;flex-direction:column;gap:8px}.tuningOption{display:grid;grid-template-columns:72px 1fr 90px;gap:10px;align-items:center;border:3px solid #000;border-radius:12px;overflow:hidden;color:#fff;text-align:left;cursor:pointer;min-height:86px}.tuningOption.red{background:#e40000}.tuningOption.yellow{background:#e5c900;color:#000}.tuningOption.cyan{background:#10bfd7;color:#000}.tuningOption.violet{background:#9513c8}.tuningOption.green{background:#00b827;color:#000}.tuningOption:hover{filter:brightness(1.12);outline:3px solid #fff}.tuningOption img{width:72px;height:72px;object-fit:cover;background:#111;border-right:3px solid #000}.tuningOptionName{font-size:19px;font-weight:900;text-shadow:2px 2px #000}.tuningOption.green .tuningOptionName,.tuningOption.yellow .tuningOptionName,.tuningOption.cyan .tuningOptionName{text-shadow:none}.tuningOptionDesc{font-size:13px;margin-top:4px}.tuningFaction{font-size:15px;font-weight:900;text-align:right;padding-right:8px}.tuningOptionLevels{font-size:12px;opacity:.85;margin-top:4px}.filterPanel.inlineCostumeFilters{margin:0 0 18px!important}.roleFilterPill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:2px solid #000;border-radius:999px;font-weight:900;background:#fff;color:#000}.buildResult{background:linear-gradient(145deg,#132033,#09111f)!important}.buildTuningPreview{grid-template-columns:1fr!important}.buildGameMini{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.miniSlot{height:42px;border:2px solid #000;border-radius:8px;background:#eee;display:flex;align-items:center;justify-content:space-between;padding-left:8px;font-weight:900;color:#000}.miniSlot span:last-child{height:36px;width:36px;clip-path:polygon(20% 0,80% 0,100% 50%,80% 100%,20% 100%,0 50%)}@media(max-width:1050px){.gameCostumeTop{grid-template-columns:1fr}.gameTuningArea{grid-template-columns:1fr}.tuningColumns.gameSlots{grid-template-columns:1fr}.costumeGalleryGrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.costumeTile img{height:150px}}


/* === v107 corrections interface TUNING costume === */
.costumeTile img,.costumePreviewLarge img{object-fit:contain!important;background:#d8d8d8!important;}
.costumeTileStars .emptyStar,.stars .emptyStar{display:none!important;}
.costumeTileStars:empty{display:none!important;}
.gameSlot{position:relative!important;background:#eee!important;border-radius:6px 0 0 6px!important;border:3px solid #777!important;box-shadow:inset -72px 0 #bfbfbf!important;}
.gameSlot::after{content:"";position:absolute;left:0;right:72px;bottom:0;height:18px;background:var(--slot-color,#fff000);}
.gameSlot.spBand{background:#111!important;border:4px solid var(--slot-color,#fff000)!important;box-shadow:inset -78px 0 #3b3b3b!important;color:#fff!important;}
.gameSlot.spBand::after{display:none!important;}
.gameSlot .slotBandText{min-height:100%;display:flex;flex-direction:column;justify-content:center;}
.gameSlot.empty .slotBandText{display:none!important;}
.gameSlot.spBand.empty .slotBandText{display:block!important;color:#ffea00!important;font-size:18px!important;text-shadow:none!important;}
.gameSlot.spBand.empty .slotBandText b{display:none!important;}
.gameSlot.spBand.empty .slotBandText small{font-size:18px!important;color:#ffea00!important;}
.slotGem{clip-path:polygon(22% 0,78% 0,100% 50%,78% 100%,22% 100%,0 50%)!important;border-radius:0!important;border:5px solid #999!important;background:var(--slot-color,#fff000)!important;}
.slotGem span{font-size:28px;font-weight:1000;}
.slotGem .conditionMini{position:absolute;right:2px;bottom:0;font-size:18px!important;color:#000!important;text-shadow:none!important;}
.gameSlot.spBand .slotGem span{font-size:34px;}
.tuningOption{border-radius:0 12px 12px 0!important;grid-template-columns:82px 1fr 120px!important;min-height:94px!important;}
.tuningOption img{width:82px!important;height:82px!important;object-fit:contain!important;background:#111!important;}
.tuningOptionChar{font-size:14px;font-weight:900;opacity:.9}.tuningOptionName{font-size:22px!important;line-height:1.1!important;}
.tuningOptionDesc{font-size:14px!important;line-height:1.15!important;}
.tuningFaction{font-size:20px!important;color:#fff!important;text-shadow:2px 2px #000!important;}
.tuningOption.yellow .tuningFaction,.tuningOption.green .tuningFaction,.tuningOption.cyan .tuningFaction{color:#000!important;text-shadow:none!important;}
.spSummaryGrid,.gameHint,.buildGameMini .miniSlot{font-size:14px;}
.rarityPanel .stars,.costumeRarity .stars,.costumeTileStars{letter-spacing:0!important;}

/* === v108 : interface costume/tuning plus fidèle au jeu === */
.costumeTile{min-height:300px!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;}
.costumeTile img{height:205px!important;object-fit:contain!important;object-position:center bottom!important;background:#cfd6d4!important;padding:0!important;}
.costumeTileName{font-size:20px!important;min-height:44px!important;line-height:1.05!important;}
.costumeTileStars{font-size:22px!important;background:rgba(0,0,0,.65)!important;color:#ffd900!important;min-width:38px!important;text-align:center!important;}
.costumeTileBadge{bottom:74px!important;width:48px!important;height:48px!important;font-size:0!important;border:4px solid #000!important;}
.costumeTileBadge::after{content:'';display:block;width:100%;height:100%;}
.costumeTileBadge .conditionMini{font-size:16px!important;color:#fff!important;background:#000!important;right:-2px!important;bottom:-8px!important;}
.costumeWord{bottom:58px!important;font-size:31px!important;line-height:1!important;}
.costumeMiniDesc{height:26px!important;font-size:14px!important;font-weight:800!important;}
.costumePreviewLarge img{object-fit:contain!important;object-position:center bottom!important;background:#cfd6d4!important;}
.gameTuningArea{align-items:start!important;}
.tuningColumns.gameSlots{gap:18px!important;}
.gameSlot{position:relative!important;width:100%!important;height:76px!important;min-height:76px!important;border:3px solid #222!important;border-radius:10px 0 0 10px!important;background:#f2f2f2!important;overflow:hidden!important;display:flex!important;align-items:stretch!important;justify-content:space-between!important;box-shadow:none!important;padding:0!important;color:#000!important;}
.gameSlot::after{content:'';position:absolute;left:0;right:0;bottom:0;height:25px;background:var(--slot-color,#fff000);z-index:0;}
.gameSlot.active{outline:5px solid #17e8ff!important;outline-offset:-2px!important;}
.gameSlot .slotBandText{position:relative;z-index:2;flex:1;min-width:0;padding:9px 96px 28px 12px!important;font-size:22px!important;line-height:1.05!important;white-space:normal!important;overflow:hidden!important;color:#000!important;text-shadow:none!important;}
.gameSlot.empty .slotBandText{display:block!important;font-size:0!important;}
.gameSlot.filled .equippedChar{display:block!important;font-size:13px!important;font-weight:900!important;text-align:center!important;color:#000!important;line-height:1!important;margin-bottom:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.gameSlot.filled .equippedName{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;font-size:21px!important;font-weight:1000!important;line-height:1.02!important;text-align:left!important;}
.slotGem{position:absolute!important;right:8px!important;top:50%!important;transform:translateY(-50%)!important;z-index:4!important;width:70px!important;height:70px!important;flex:0 0 70px!important;margin:0!important;border:5px solid #9b9b9b!important;clip-path:polygon(20% 0,80% 0,100% 50%,80% 100%,20% 100%,0 50%)!important;background:var(--slot-color,#fff000)!important;border-radius:0!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;}
.slotGem span{display:none!important;}
.slotGem.hasPortrait{background:#111!important;padding:0!important;}
.slotGem.hasPortrait img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
.gameSlot.spBand{height:80px!important;min-height:80px!important;background:#111!important;color:#fff!important;border-radius:0 12px 12px 0!important;border-color:var(--slot-color,#fff000)!important;box-shadow:none!important;}
.gameSlot.spBand::after{display:none!important;}
.gameSlot.spBand.empty .slotBandText{display:block!important;min-height:80px!important;font-size:0!important;padding:0!important;}
.gameSlot.spBand.filled .slotBandText{color:#fff!important;text-shadow:2px 2px #000!important;padding:8px 96px 8px 12px!important;}
.gameSlot.spBand .slotGem{width:74px!important;height:74px!important;right:5px!important;border-color:var(--slot-color,#fff000)!important;}
.gameSlot.spBand .slotGem .conditionLetter{display:block!important;color:#000!important;font-size:40px!important;font-weight:1000!important;text-shadow:none!important;}
.tuningOption{position:relative!important;display:grid!important;grid-template-columns:82px minmax(0,1fr) 110px!important;gap:10px!important;min-height:94px!important;max-height:132px!important;border:3px solid #000!important;border-radius:0 12px 12px 0!important;overflow:hidden!important;text-align:left!important;align-items:center!important;}
.tuningOption img,.tuningOptionImg{width:82px!important;height:82px!important;object-fit:cover!important;background:#111!important;border-right:3px solid #000!important;align-self:stretch!important;}
.tuningOptionMain{min-width:0!important;overflow:hidden!important;padding:6px 0!important;}
.tuningOptionChar{font-size:13px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.tuningOptionName{font-size:22px!important;line-height:1.05!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
.tuningOptionDesc{font-size:13px!important;line-height:1.12!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
.tuningFaction{font-size:17px!important;font-weight:900!important;line-height:1.05!important;text-align:right!important;padding-right:8px!important;overflow:hidden!important;}
.tuningOptions{gap:7px!important;}
.spSummaryGrid,.gameHint,.buildGameMini{display:none!important;}
.rarityPanel .stars:empty{display:none!important;}
@media(max-width:900px){.gameSlot .slotBandText{padding-right:82px!important}.gameSlot.filled .equippedName{font-size:18px!important}.slotGem{width:62px!important;height:62px!important}.tuningOption{grid-template-columns:70px minmax(0,1fr) 90px!important}.tuningOption img,.tuningOptionImg{width:70px!important;height:70px!important}.tuningOptionName{font-size:18px!important}}



/* === v109 : corrections UI costume/tuning selon retours === */
/* Rareté : C = 0 étoile, R = 1, SR = 2, PUR = 3, sans étoiles vides */
.costumeTileStars{background:rgba(0,0,0,.72)!important;border-radius:8px!important;min-width:auto!important;padding:2px 6px!important;font-size:20px!important;line-height:1!important;}
.costumeTileStars:empty{display:none!important;}
.rarityPanel .stars:empty,.costumeRarity .stars:empty{display:none!important;}
.rarityPanel .stars,.costumeRarity .stars{letter-spacing:1px!important;}

/* Cartes costumes : badges plus hauts, ne cachent plus COSTUME, images cadrées */
.costumeTile{min-height:310px!important;}
.costumeTile img{height:218px!important;object-fit:contain!important;object-position:center bottom!important;background:#19c9de22!important;padding:0!important;}
.costumeTileBadge{bottom:82px!important;width:44px!important;height:44px!important;border:4px solid #000!important;z-index:5!important;font-size:0!important;}
.costumeTileBadge.left{left:10px!important;}
.costumeTileBadge.right{right:10px!important;}
.costumeTileBadge .conditionMini{display:block!important;position:absolute!important;right:-4px!important;bottom:-9px!important;font-size:16px!important;line-height:1!important;background:#000!important;color:#fff!important;border-radius:4px!important;padding:1px 3px!important;}
.costumeWord{bottom:55px!important;font-size:32px!important;z-index:6!important;pointer-events:none!important;text-shadow:3px 3px 0 #284778,-2px -2px 0 #284778,0 0 4px #000!important;}
.costumeTileName{height:46px!important;min-height:46px!important;font-size:20px!important;}
.costumeMiniDesc{height:24px!important;font-size:13px!important;}
.costumeTileRarity{z-index:7!important;}

/* Bandes de slots : couleur jusqu'au bout, plus aucun gris dans les hexagones */
.gameSlot{height:78px!important;min-height:78px!important;border-radius:11px!important;background:#f2f2f2!important;border:3px solid #1d1d1d!important;overflow:hidden!important;box-shadow:none!important;position:relative!important;}
.gameSlot::after{content:''!important;position:absolute!important;left:0!important;right:0!important;bottom:0!important;height:26px!important;background:var(--slot-color,#fff000)!important;z-index:0!important;}
.gameSlot.empty .slotBandText{font-size:0!important;padding:0!important;}
.gameSlot.filled .slotBandText{padding:8px 86px 26px 12px!important;color:#000!important;text-shadow:none!important;display:block!important;overflow:hidden!important;}
.gameSlot.filled .equippedChar{display:block!important;text-align:center!important;font-size:13px!important;font-weight:900!important;line-height:1!important;margin:0 0 2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:#000!important;}
.gameSlot.filled .equippedName{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;font-size:20px!important;line-height:1.03!important;font-weight:1000!important;color:#000!important;}
.slotGem{position:absolute!important;right:6px!important;top:50%!important;transform:translateY(-50%)!important;width:68px!important;height:68px!important;z-index:5!important;background:var(--slot-color,#fff000)!important;border:0!important;box-shadow:0 0 0 5px #909090!important;clip-path:polygon(20% 0,80% 0,100% 50%,80% 100%,20% 100%,0 50%)!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;}
.slotGem::before{content:'';position:absolute;inset:5px;background:var(--slot-color,#fff000);clip-path:inherit;z-index:0;}
.slotGem span,.slotGem .conditionLetter{display:none!important;}
.slotGem.hasPortrait{background:#111!important;box-shadow:0 0 0 5px #777!important;}
.slotGem.hasPortrait::before{display:none!important;}
.slotGem.hasPortrait img{position:relative!important;z-index:2!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important;display:block!important;}

/* SP : contour de couleur, H/V visible seulement pour la condition, nom visible si équipé */
.gameSlot.spBand{height:80px!important;min-height:80px!important;background:#111!important;color:#fff!important;border-color:var(--slot-color,#fff000)!important;border-radius:0 12px 12px 0!important;}
.gameSlot.spBand::after{display:none!important;}
.gameSlot.spBand.empty .slotBandText{font-size:0!important;padding:0!important;}
.gameSlot.spBand.filled .slotBandText{padding:8px 92px 8px 12px!important;color:#fff!important;text-shadow:2px 2px 0 #000!important;}
.gameSlot.spBand.filled .equippedChar{color:#fff!important;text-shadow:2px 2px 0 #000!important;text-align:left!important;font-size:13px!important;}
.gameSlot.spBand.filled .equippedName{color:#fff!important;text-shadow:2px 2px 0 #000!important;font-size:21px!important;}
.gameSlot.spBand .slotGem{background:#1a1a1a!important;box-shadow:0 0 0 5px var(--slot-color,#fff000)!important;width:72px!important;height:72px!important;right:5px!important;}
.gameSlot.spBand .slotGem::before{background:#333!important;inset:7px!important;}
.gameSlot.spBand .slotGem .conditionLetter{display:block!important;position:relative!important;z-index:2!important;color:#fff!important;font-size:42px!important;font-weight:1000!important;text-shadow:2px 2px 0 #000!important;}
.gameSlot.spBand .slotGem.hasPortrait{box-shadow:0 0 0 5px var(--slot-color,#fff000)!important;}

/* Liste des T.U.N.I.N.G compatibles : texte lisible + portraits cadrés */
.tuningOption{grid-template-columns:84px minmax(0,1fr) 110px!important;min-height:96px!important;max-height:128px!important;align-items:center!important;}
.tuningOption img,.tuningOptionImg{width:84px!important;height:84px!important;object-fit:cover!important;object-position:center top!important;background:#111!important;}
.tuningOptionChar{font-size:14px!important;font-weight:900!important;color:#fff!important;text-shadow:2px 2px 0 #000!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.tuningOptionName{font-size:21px!important;line-height:1.05!important;color:#fff!important;text-shadow:2px 2px 0 #000!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
.tuningOptionDesc{font-size:12px!important;line-height:1.12!important;color:#fff!important;text-shadow:1px 1px 0 rgba(0,0,0,.55)!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
.tuningOption.yellow .tuningOptionChar,.tuningOption.yellow .tuningOptionName,.tuningOption.yellow .tuningOptionDesc,
.tuningOption.green .tuningOptionChar,.tuningOption.green .tuningOptionName,.tuningOption.green .tuningOptionDesc,
.tuningOption.cyan .tuningOptionChar,.tuningOption.cyan .tuningOptionName,.tuningOption.cyan .tuningOptionDesc{color:#000!important;text-shadow:none!important;}
.tuningFaction{font-size:17px!important;line-height:1.05!important;font-weight:1000!important;word-break:keep-all!important;overflow:hidden!important;}

/* Évite les débordements des options longues */
.tuningOptionMain{min-width:0!important;max-width:100%!important;overflow:hidden!important;}
.tuningPicker{min-width:0!important;}
.tuningOptions{overflow-y:auto!important;overflow-x:hidden!important;}
@media(max-width:900px){.tuningOption{grid-template-columns:72px minmax(0,1fr) 86px!important}.tuningOption img,.tuningOptionImg{width:72px!important;height:72px!important}.tuningOptionName{font-size:18px!important}.gameSlot.filled .equippedName{font-size:17px!important}}



/* === v111 : corrections propres depuis v109 === */
/* 1) Cartes costume : plus d'écrasement entre badges, COSTUME et noms */
.costumeTile{min-height:342px!important;height:342px!important;padding-bottom:0!important;display:block!important;position:relative!important;background:#07101d!important;border-radius:12px!important;}
.costumeTile img{position:absolute!important;left:8px!important;right:8px!important;top:8px!important;width:calc(100% - 16px)!important;height:214px!important;object-fit:contain!important;object-position:center bottom!important;background:#19c9de22!important;border-radius:8px!important;}
.costumeTileRarity{top:10px!important;left:10px!important;z-index:9!important;}
.costumeTileStars{top:10px!important;right:10px!important;z-index:9!important;}
.costumeTileBadge{bottom:112px!important;width:46px!important;height:46px!important;z-index:9!important;}
.costumeTileBadge.left{left:12px!important}.costumeTileBadge.right{right:12px!important}
.costumeWord{bottom:80px!important;font-size:30px!important;line-height:1!important;letter-spacing:1px!important;z-index:6!important;white-space:nowrap!important;width:100%!important;text-align:center!important;}
.costumeTileName{position:absolute!important;left:8px!important;right:8px!important;bottom:38px!important;height:34px!important;min-height:34px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;line-height:1!important;overflow:hidden!important;}
.costumeMiniDesc{position:absolute!important;left:8px!important;right:8px!important;bottom:9px!important;height:24px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:13px!important;line-height:1.05!important;overflow:hidden!important;}
/* 2) Portraits : petit décalage à droite pour supprimer le trait noir */
.tuningOption img,.tuningOptionImg{object-position:center top!important;transform:translateX(3px)!important;}
.slotGem.hasPortrait img{object-position:center top!important;transform:translateX(3px)!important;}
/* 3) Slots équipés : pas de trois points, texte long réduit et contenu dans la bande */
.gameSlot.filled .slotBandText{padding:7px 86px 25px 10px!important;overflow:hidden!important;}
.gameSlot.filled .equippedChar{font-size:12px!important;line-height:1!important;margin-bottom:1px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:clip!important;}
.gameSlot.filled .equippedName{display:block!important;font-size:18px!important;line-height:1.02!important;max-height:38px!important;white-space:normal!important;overflow:hidden!important;text-overflow:clip!important;word-break:normal!important;}
.gameSlot.spBand.filled .slotBandText{padding:7px 92px 7px 10px!important;}
.gameSlot.spBand.filled .equippedName{font-size:19px!important;line-height:1.02!important;max-height:40px!important;}
/* 4) Liste compatible : plus de chevauchement, SP avec description visible */
.tuningOption{min-height:108px!important;max-height:none!important;grid-template-columns:88px minmax(0,1fr) 105px!important;overflow:hidden!important;}
.tuningOption img,.tuningOptionImg{width:88px!important;height:88px!important;align-self:center!important;border-right:0!important;border-radius:3px!important;}
.tuningOptionName{display:block!important;font-size:21px!important;line-height:1.02!important;max-height:45px!important;white-space:normal!important;overflow:hidden!important;text-overflow:clip!important;}
.tuningOptionDesc{display:block!important;font-size:13px!important;line-height:1.08!important;max-height:42px!important;white-space:normal!important;overflow:hidden!important;text-overflow:clip!important;}
.tuningOptionChar{font-size:13px!important;line-height:1!important;margin-bottom:2px!important;text-overflow:clip!important;}
.tuningFaction{font-size:16px!important;text-align:right!important;align-self:center!important;}
@media(max-width:900px){.costumeTile{height:320px!important;min-height:320px!important}.costumeTile img{height:198px!important}.costumeTileBadge{bottom:106px!important}.costumeWord{bottom:76px!important;font-size:26px!important}.gameSlot.filled .equippedName{font-size:16px!important}.tuningOption{grid-template-columns:74px minmax(0,1fr) 82px!important}.tuningOption img,.tuningOptionImg{width:74px!important;height:74px!important}}

/* === v112 : icônes SP sur les cartes costumes façon jeu === */
.costumeTileBadge{
  width:52px!important;
  height:52px!important;
  bottom:108px!important;
  border:0!important;
  border-radius:0!important;
  background:var(--badge-color,#fff000)!important;
  box-shadow:0 0 0 3px #000,0 2px 0 rgba(0,0,0,.65)!important;
  clip-path:polygon(22% 0,78% 0,100% 50%,78% 100%,22% 100%,0 50%)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}
.costumeTileBadge::before{
  content:'';
  position:absolute;
  inset:7px;
  background:#050505;
  clip-path:inherit;
  z-index:1;
}
.costumeTileBadge.red{--badge-color:#ff1717!important}.costumeTileBadge.yellow{--badge-color:#fff000!important}.costumeTileBadge.cyan{--badge-color:#16bfd0!important}.costumeTileBadge.violet{--badge-color:#bd17ee!important}.costumeTileBadge.green{--badge-color:#00ef22!important}
.costumeTileBadge .conditionMini{
  position:relative!important;
  inset:auto!important;
  z-index:2!important;
  display:block!important;
  background:transparent!important;
  color:#fff!important;
  font-size:25px!important;
  line-height:1!important;
  font-weight:1000!important;
  padding:0!important;
  border-radius:0!important;
  text-shadow:2px 2px 0 #000!important;
}
.costumeTileBadge.left{left:12px!important}.costumeTileBadge.right{right:12px!important}
.costumeWord{bottom:74px!important;font-size:30px!important}
.costumeTileName{bottom:36px!important}
.costumeMiniDesc{bottom:8px!important}
@media(max-width:900px){.costumeTileBadge{bottom:102px!important;width:46px!important;height:46px!important}.costumeTileBadge .conditionMini{font-size:22px!important}.costumeWord{bottom:70px!important}}



/* === v115 corrections ciblées depuis v112 === */
/* H/V parfaitement centrés dans les hexagones costumes */
.costumeTileBadge .conditionMini{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  line-height:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
  padding:0!important;
  margin:0!important;
  text-align:center!important;
}
/* Icônes de tuning propres : pas de fond gris, et SP qui dépasse un peu comme le jeu */
.tuningOption img,.tuningOptionImg{
  background:transparent!important;
  transform:none!important;
}
.tuningOptionIconWrap{background:transparent!important;overflow:visible!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.gameSlot .slotGem.hasPortrait{background:transparent!important;box-shadow:0 0 0 5px #777!important;overflow:hidden!important;}
.gameSlot .slotGem.hasPortrait img{background:transparent!important;transform:none!important;object-position:center top!important;}
.gameSlot.spBand .slotGem.hasPortrait{top:-8px!important;transform:none!important;}
/* évite les lettres coupées */
.tuningOptionName,.equippedName,.equippedChar{line-height:1.12!important;overflow:visible!important;}
.tuningOption{overflow:visible!important;}
.tuningOptionMain{overflow:visible!important;}
/* Slots équipés : le titre reste dans la zone blanche, pas dans la bande colorée */
.gameSlot.filled:not(.spBand) .slotBandText{
  padding:8px 84px 30px 12px!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  flex-direction:column!important;
  overflow:hidden!important;
}
.gameSlot.filled:not(.spBand) .equippedChar{display:none!important;}
.gameSlot.filled:not(.spBand) .equippedName{
  color:#000!important;
  text-shadow:none!important;
  display:block!important;
  max-height:43px!important;
  overflow:hidden!important;
  white-space:normal!important;
  word-break:normal!important;
  font-size:var(--equip-font,20px)!important;
  line-height:1.04!important;
}
.gameSlot.spBand.filled .slotBandText{padding:8px 92px 8px 12px!important;overflow:visible!important;}
.gameSlot.spBand.filled .equippedName{font-size:var(--equip-font,19px)!important;line-height:1.06!important;max-height:none!important;overflow:visible!important;}
/* Cartes compatibles : titre complet autant que possible, sans points de suspension */
.tuningOptionName{
  font-size:var(--option-font,21px)!important;
  line-height:1.04!important;
  max-height:none!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  display:block!important;
}
.tuningOptionDesc{
  font-size:var(--desc-font,13px)!important;
  line-height:1.08!important;
  max-height:40px!important;
  overflow:hidden!important;
}
.tuningOptionChar{overflow:visible!important;text-overflow:clip!important;}
.tuningOption.alreadyUsed{filter:grayscale(.75) brightness(.65);opacity:.55;cursor:not-allowed!important;}
.tuningOption.alreadyUsed::after{content:'Déjà utilisé';position:absolute;right:12px;bottom:8px;background:#000;color:#ffe500;border:2px solid #ffe500;border-radius:8px;padding:2px 8px;font-weight:900;font-size:12px;}


/* === v116 corrections: SP icon lower + safer text fitting === */
.gameSlot.filled:not(.spBand){
  align-items:stretch!important;
}
.gameSlot.filled:not(.spBand) .slotBandText{
  align-self:start!important;
  padding:5px 84px 0 10px!important;
  max-height:52px!important;
  line-height:.95!important;
  overflow:hidden!important;
}
.gameSlot.filled:not(.spBand) .equippedName{
  display:block!important;
  max-height:50px!important;
  line-height:.95!important;
  overflow:hidden!important;
  text-overflow:clip!important;
}
.gameSlot.spBand.filled .slotGem.hasPortrait{
  transform:translateY(5px)!important;
}
.gameSlot.spBand.filled .slotGem.hasPortrait img{
  transform:translateY(3px)!important;
}
.tuningOption{
  position:relative!important;
  grid-template-columns:72px minmax(0,1fr) 104px!important;
  min-height:102px!important;
}
.tuningOptionMain{
  min-width:0!important;
  overflow:hidden!important;
  padding-right:4px!important;
}
.tuningOptionName{
  line-height:.96!important;
  max-height:58px!important;
  overflow:hidden!important;
  white-space:normal!important;
  text-overflow:clip!important;
  word-break:normal!important;
}
.tuningOptionDesc{
  line-height:1.02!important;
  max-height:31px!important;
  overflow:hidden!important;
}
.tuningFaction{
  line-height:1!important;
  word-break:break-word!important;
}



/* === v124 étape propre costumes Midoriya : ne touche pas au layout v118 === */
/* MAX placé petit, à gauche comme demandé, sans toucher aux hexagones */
.gameSlot .slotMax{
  position:absolute!important;
  left:10px!important;
  bottom:8px!important;
  z-index:8!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:2px 7px!important;
  border-radius:7px!important;
  background:#000!important;
  color:#fff000!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:1000!important;
  text-shadow:none!important;
  pointer-events:none!important;
  white-space:nowrap!important;
}
.gameSlot.filled .slotMax{font-size:11px!important;bottom:6px!important;}
.gameSlot.spBand .slotMax{bottom:8px!important;left:12px!important;}
/* le texte équipé garde de la place pour le MAX et ne touche jamais la bande couleur */
.gameSlot.filled:not(.spBand) .slotBandText{padding-bottom:30px!important;}
.gameSlot.filled:not(.spBand) .equippedName{max-height:34px!important;}
.gameSlot.spBand.filled .slotBandText{padding-bottom:16px!important;}
/* cartes costume : images simples/placeholder, on ne modifie pas les deux hexagones */
.costumeTile img{object-fit:cover!important;object-position:center center!important;padding:0!important;background:#07101d!important;}
.costumeTile .costumeWord{display:none!important;}
.costumeTileName{bottom:34px!important;}
.costumeMiniDesc{bottom:8px!important;}
/* fiche costume : image moins énorme, placeholder remplaçable */
.costumePreviewLarge img{object-fit:contain!important;object-position:center center!important;background:#07101d!important;}
/* conditions normales SR/PUR : lettre dans le même hexagone, sans changer le style */
.gameSlot:not(.spBand) .slotGem .conditionLetter{display:block!important;position:relative!important;z-index:2!important;color:#fff!important;font-size:34px!important;font-weight:1000!important;text-shadow:2px 2px 0 #000!important;}



/* === v126 fix : descriptions T.U.N.I.N.G compatibles non coupées === */
.tuningOptions{overflow-y:auto!important;overflow-x:hidden!important;}
.tuningOption{
  min-height:126px!important;
  height:auto!important;
  max-height:none!important;
  align-items:center!important;
  overflow:visible!important;
  padding-top:8px!important;
  padding-bottom:8px!important;
}
.tuningOptionMain{
  overflow:visible!important;
  min-height:0!important;
}
.tuningOptionDesc{
  display:block!important;
  max-height:none!important;
  height:auto!important;
  overflow:visible!important;
  white-space:normal!important;
  line-height:1.08!important;
  font-size:12px!important;
  text-overflow:clip!important;
}
.tuningOptionName{
  max-height:none!important;
  overflow:visible!important;
}
.tuningOptionChar{
  overflow:visible!important;
}



/* === v127 : compat descriptions complètes + raretés corrigées === */
.tuningOptions{overflow-y:auto!important;overflow-x:hidden!important;gap:10px!important;}
.tuningOption{
  min-height:150px!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  align-items:start!important;
  grid-template-columns:88px minmax(0,1fr) 105px!important;
  padding:8px!important;
  box-sizing:border-box!important;
}
.tuningOptionMain{
  overflow:visible!important;
  padding:0 0 4px 0!important;
  min-width:0!important;
}
.tuningOptionChar{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.05!important;
}
.tuningOptionName{
  display:block!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:unset!important;
  max-height:none!important;
  overflow:visible!important;
  white-space:normal!important;
  text-overflow:clip!important;
  font-size:var(--option-font,21px)!important;
  line-height:1.02!important;
}
.tuningOptionDesc{
  display:block!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:unset!important;
  max-height:none!important;
  height:auto!important;
  overflow:visible!important;
  white-space:normal!important;
  text-overflow:clip!important;
  font-size:var(--desc-font,12px)!important;
  line-height:1.08!important;
  margin-top:3px!important;
}
.tuningFaction{align-self:center!important;}



/* === v128 : retours utilisateur — sélection cyan + conditions normales === */
/* Quand le slot est bleu/cyan, le contour sélectionné devient jaune pour qu'on distingue bien la couleur du tuning. */
.gameSlot.active.cyan{outline-color:#fff000!important;}
.gameSlot.active.yellow{outline-color:#17e8ff!important;}
.gameSlot.active.red,.gameSlot.active.violet,.gameSlot.active.green{outline-color:#17e8ff!important;}
/* Lettres H/V des conditions sur les tuning normaux : noir, centrées, sans ombre. Les SP gardent leur style blanc. */
.gameSlot:not(.spBand) .slotGem .conditionLetter{
  display:block!important;
  position:relative!important;
  z-index:3!important;
  color:#000!important;
  font-size:34px!important;
  font-weight:1000!important;
  line-height:1!important;
  text-shadow:none!important;
}
.gameSlot.spBand .slotGem .conditionLetter{color:#fff!important;text-shadow:2px 2px 0 #000!important;}


/* === v152 : bouton retour en haut + workflow portraits === */
#backToTop{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:999px;border:3px solid #000;background:linear-gradient(135deg,#ff7a00,#ffe100);color:#fff;font-size:30px;font-weight:900;text-shadow:2px 2px 0 #000;box-shadow:0 0 18px rgba(255,122,0,.85),0 4px 0 #000;z-index:80;opacity:0;transform:translateY(14px) scale(.9);pointer-events:none;transition:.18s}#backToTop.show{opacity:1;transform:none;pointer-events:auto}#backToTop:hover{transform:scale(1.08)}.workflowBox{margin-top:22px;background:#0f1928;border:3px solid #314865;border-radius:16px;padding:18px;color:#dce9ff}.workflowBox h2{margin:0 0 10px;color:#ffe100;text-shadow:2px 2px 0 #000}.workflowBox code{background:#07101d;color:#19c9de;border-radius:8px;padding:2px 6px}.workflowSteps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px}.workflowStep{background:#17253c;border:2px solid #2f496d;border-radius:14px;padding:12px;font-weight:800}.workflowStep b{color:#ff9b00}


/* === v153 : flèche retour en haut visible === */
#backToTop{display:flex!important;align-items:center!important;justify-content:center!important;position:fixed!important;right:24px!important;bottom:24px!important;width:64px!important;height:64px!important;border-radius:999px!important;border:4px solid #000!important;background:linear-gradient(135deg,#ff6a00,#ffe100)!important;color:white!important;font-size:34px!important;font-weight:900!important;text-shadow:2px 2px 0 #000!important;box-shadow:0 0 24px rgba(255,122,0,.95),0 5px 0 #000!important;z-index:99999!important;opacity:0!important;transform:translateY(14px) scale(.9)!important;pointer-events:none!important;transition:.18s!important}
#backToTop.show{opacity:1!important;transform:none!important;pointer-events:auto!important}
#backToTop:hover{transform:scale(1.08)!important}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}

/* v1.8 — démarrage iOS et langue active */
.lang{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:104px}
.langPart{color:#dce7f7;transition:color .15s ease,transform .15s ease;text-shadow:none}
.langPart.active{color:#ffe100;transform:scale(1.08);text-shadow:0 0 10px rgba(255,225,0,.35)}
.langSep{color:#7186a6}


/* ===== inline ===== */

.costumeGalleryGrid{justify-content:start!important;align-items:start!important;grid-auto-rows:auto!important;}
.costumeGalleryGroup{margin-bottom:24px!important;}
.gameSlot.active{outline:5px solid #ff7a00!important;outline-offset:-2px!important;}
.conditionMini,.slotConditionLetter{color:#000!important;}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

.costumeGalleryHead{font-size:45px!important;padding:14px 18px!important}
.costumeGalleryGrid{grid-template-columns:repeat(auto-fill,minmax(226px,1fr))!important;gap:18px!important;padding:18px!important}
.costumeTile{min-height:340px!important}
.costumeTile img{width:100%!important;height:245px!important;object-fit:contain!important;object-position:center center!important;background:radial-gradient(circle at 50% 35%,#2c5e9d 0%,#16345b 34%,#0a1931 68%,#06101f 100%)!important;padding:8px!important;image-rendering:auto!important}
.costumeTile .costumeTileName{height:68px!important;font-size:22px!important;line-height:1.08!important;padding:8px 6px!important}
.costumeGalleryGroup{background:#c89c00!important}
.costumeHead{font-size:40px!important}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== css/home.css ===== */
/* V298 — portails de tirage complets et événements officiels */
.homeV296{--ink:#101116;--line:#41444d;--yellow:#fff000;max-width:1320px;margin:0 auto;padding:18px 18px 60px;color:#fff;background-color:#111318;background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1px);background-size:16px 16px;font-family:Arial,Helvetica,sans-serif}.seasonV296{position:relative;margin:10px auto 28px;max-width:1220px;padding:34px 28px 28px;text-align:center;border:6px solid #0a0c10;border-radius:28px;background:linear-gradient(90deg,rgba(51,58,29,.9) 0%,rgba(13,24,39,.96) 28%,rgba(14,30,56,.97) 100%);box-shadow:0 0 0 4px #f3cc16,0 0 0 8px #171b21,0 12px 0 #060606;overflow:hidden}.seasonV296:before{content:"";position:absolute;left:-4px;right:-4px;top:-4px;height:10px;background:linear-gradient(90deg,#ff7d17 0%,#ffd917 48%,#7cffda 100%)}.seasonV296 h1{margin:0 0 18px;font-size:clamp(42px,5vw,68px);font-weight:1000;text-shadow:5px 5px 0 #000;letter-spacing:-1px}.seasonLineV296{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap}.seasonLineV296>strong{display:block;width:100%;margin-bottom:6px;color:#fff100;text-shadow:3px 3px #000;font-size:clamp(24px,2.6vw,40px);letter-spacing:-.5px}.seasonV296>small{display:block;margin-top:18px;font-weight:900;color:#d8dee8;font-size:clamp(16px,1.6vw,20px)}.countdownV296{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;width:min(100%,980px)}.countdownV296 span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-width:0;padding:18px 10px;border:4px solid #090909;border-radius:20px;background:linear-gradient(180deg,#263550,#1a2438);box-shadow:0 0 0 4px #f1d313,0 8px 0 #000}.countdownV296 b{font-size:clamp(42px,5vw,64px);line-height:1;text-shadow:4px 4px 0 #000}.countdownV296 small{font-size:clamp(16px,1.4vw,24px);font-weight:1000;color:#ffe100;letter-spacing:1px}.homeDividerV296{height:15px;margin:28px 0 22px;background:repeating-linear-gradient(135deg,transparent 0 16px,#bd3946 16px 31px,transparent 31px 43px);opacity:.9}.homeTitleV296{display:flex;align-items:center;gap:14px;margin:0 0 18px;font-size:clamp(30px,2.7vw,48px);font-style:italic;text-transform:uppercase;letter-spacing:-1px;text-shadow:4px 4px #000}.homeTitleV296:before{content:"";width:18px;height:46px;transform:skew(-12deg);background:var(--accent,#ff7416);box-shadow:3px 3px #000}.homeTitleV296.orange{--accent:#ff7416}.homeTitleV296.yellow{--accent:#fff100}.homeTitleV296.cyan{--accent:#2bbce5}.homeTitleV296.purple{--accent:#bd43e8}.homeTitleV296.green{--accent:#23df61}
.releaseGridV296{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.releaseCardV296{position:relative;display:block;width:100%;aspect-ratio:48/13;padding:0;border:4px solid #06070a;border-radius:11px;overflow:hidden;background:#08090c;color:#fff;box-shadow:0 5px 0 #060606;text-align:left;transition:transform .16s,border-color .16s}.releaseCardV296:hover,.releaseCardV296:focus-visible{transform:translateY(-2px);border-color:#fff000;outline:none}.releaseImageV297{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#050609}.releaseArtV296{width:100%;height:100%;object-fit:contain;object-position:center center;display:block}.releaseBadgeV296{position:absolute;left:10px;top:9px;z-index:2;display:block;width:40px;height:40px;pointer-events:none}.releaseBadgeV296 img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(2px 3px 0 rgba(0,0,0,.85))}.releaseBadgeV296 em,.releaseCaptionV296{display:none!important}
.gachaGridV296{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gachaCardV296{position:relative;min-height:205px;padding:0;overflow:hidden;border:4px solid #050609;border-radius:11px;background:#0e1015;color:#fff;text-align:left;box-shadow:0 5px 0 #050506}.gachaCardV296:hover{border-color:#fff000;transform:translateY(-2px)}.gachaBannerV296{height:165px;display:flex;align-items:center;justify-content:center;background:#08090d}.gachaBannerV296 img{width:100%;height:100%;object-fit:contain;display:block}.gachaOverlayV296{position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(0,0,0,.96) 83%)}.gachaKindV296,.gachaViewV296{position:absolute;top:9px;z-index:2;padding:5px 9px;border:2px solid #050505;border-radius:4px;font-size:11px;font-weight:1000;text-transform:uppercase}.gachaKindV296{left:9px;background:#f05b2c}.gachaViewV296{right:9px;background:#15171b;border-color:#fff}.gachaCaptionV296{position:absolute;left:13px;right:13px;bottom:10px;z-index:2}.gachaCaptionV296 b{display:block;font-size:18px;text-shadow:2px 2px #000}.gachaCaptionV296 small{display:flex;justify-content:space-between;gap:12px;margin-top:4px;font-weight:900;color:#d6dde8}.gachaCaptionV296 em{color:#fff000;font-style:normal}
.eventGridV296{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.eventCardV296{position:relative;overflow:hidden;border:4px solid #050609;background:#0e1015;box-shadow:0 5px 0 #050506;min-height:235px}.eventCardV296>img{width:100%;height:160px;object-fit:cover;display:block}.eventCardV296>div{padding:10px 11px 12px;border-top:4px solid #c9454c}.eventCardV296 b{display:block;font-size:16px;line-height:1.12}.eventCardV296 small{display:block;margin-top:6px;font-size:11px;color:#cbd3df;font-weight:800}.eventCardV296 em{display:inline-block;margin-top:7px;color:#fff000;font-style:normal;font-weight:1000}.eventTypeV296{position:absolute;left:0;top:0;padding:6px 12px;background:#c9454c;color:#050505;font-size:11px;font-weight:1000;text-transform:uppercase}.eventCardV296:nth-child(2) .eventTypeV296,.eventCardV296:nth-child(2)>div{border-color:#1db6cf}.eventCardV296:nth-child(2) .eventTypeV296{background:#1db6cf}.eventCardV296:nth-child(3) .eventTypeV296,.eventCardV296:nth-child(3)>div{border-color:#ff9a00}.eventCardV296:nth-child(3) .eventTypeV296{background:#ff9a00}.eventCardV296:nth-child(4){grid-column:2}.eventCardV296:nth-child(4) .eventTypeV296{background:#d24a54}
.bonusGridV296{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.bonusCardV296{overflow:hidden;border:4px solid #050609;background:#12141a;box-shadow:0 5px 0 #050506}.bonusCardV296>img{width:100%;height:155px;object-fit:cover;display:block}.bonusCardV296>div{padding:10px 12px}.bonusCardV296 span{color:#d55af2;font-size:11px;font-weight:1000}.bonusCardV296 b{display:block;margin-top:4px}.bonusCardV296 small{display:block;color:#fff000;margin-top:6px;font-weight:800}.discountGridV296{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.discountCardV296{text-align:center;overflow:hidden;border:3px solid #050609;border-radius:7px;background:#13151b;box-shadow:0 4px 0 #050506}.discountCardV296 img{width:100%;height:120px;object-fit:contain;background:radial-gradient(circle,#354052,#101218 72%)}.discountCardV296 b{display:block;min-height:40px;padding:7px 5px 2px;font-size:13px}.discountCardV296 span{display:inline-block;margin:4px 0 9px;padding:4px 8px;background:#fff000;color:#000;border:2px solid #000;border-radius:4px;font-weight:1000}.patchListV296{border-top:1px solid #454952}.patchRowV296{width:100%;display:grid;grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px 5px;border:0;border-bottom:1px solid #454952;background:transparent;color:#fff;text-align:left}.patchRowV296:hover{background:rgba(255,255,255,.06)}.patchTagV296{padding:5px 8px;background:#d64749;border-radius:4px;font-weight:1000;text-align:center}.patchRowV296 b{font-size:16px}.patchRowV296 small{display:block;margin-top:4px;color:#aab3c2}.patchRowV296 time{color:#fff000;font-weight:900;white-space:nowrap}.homeFootV296{text-align:center;margin-top:28px;color:#8e98a8;font-size:12px}.emptyV296{grid-column:1/-1;padding:32px;border:2px dashed #565b65;text-align:center;color:#b5bdc9}
.modalV296{position:fixed;inset:0;z-index:100000;display:none;overflow:auto;padding:18px;background:rgba(3,4,7,.95)}.modalV296.open{display:block}.modalPanelV296{max-width:1320px;margin:0 auto;border:3px solid #4e525c;border-radius:11px;overflow:hidden;background:#17191e;box-shadow:0 20px 80px #000}.modalPanelV296>header{position:sticky;top:-18px;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;background:#101116;border-bottom:1px solid #4c5059}.modalPanelV296>header h2{margin:0;font-size:clamp(22px,4vw,34px);text-transform:uppercase;font-style:italic;text-shadow:3px 3px #000}.modalPanelV296>header button{width:48px;height:48px;border:3px solid #050505;border-radius:50%;background:#e84f48;color:#fff;font-size:28px;font-weight:1000}.modalBodyV296{padding:22px}.gachaHeroV296{position:relative;min-height:195px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:2px solid #666b76;border-radius:8px;background:#090a0e}.gachaHeroV296>img{width:100%;height:100%;max-height:240px;object-fit:contain;display:block}.gachaHeroV296>div{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;gap:12px;padding:24px 18px 13px;background:linear-gradient(transparent,rgba(0,0,0,.96));font-weight:1000}.gachaHeroV296 strong{color:#fff000}.subTitleV296{margin:22px 0 12px;font-size:28px;font-style:italic;text-transform:uppercase;text-shadow:2px 2px #000}.rewardGridV296{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}.rewardV296{position:relative;min-width:0;overflow:hidden;border:3px solid #e2e814;border-radius:9px;background:#12141a;box-shadow:0 0 0 2px #24729b inset}.rewardImageV298{position:relative;width:100%;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#202a3a}.rewardImageV298>img:first-child{width:100%;height:100%;object-fit:contain;display:block}.rewardKindIconV298{position:absolute;right:5px;top:5px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(1px 2px 0 #000)}.rewardKindIconV298 img{width:100%;height:100%;object-fit:contain}.rewardTextV296{padding:7px 5px 6px;text-align:center}.rewardTextV296 b{display:block;min-height:32px;font-size:12px;line-height:1.08}.rewardTextV296 small{display:block;color:#aeb8c8;font-size:10px}.rewardTextV296 strong{display:block;margin-top:7px;padding:5px 3px;border-radius:3px;background:#030405;color:#fff000;font-size:11px}.rateTabsV296{display:flex;justify-content:flex-end;gap:9px;margin:20px 0 8px}.rateTabsV296 button{padding:10px 15px;border:2px solid #050505;border-radius:5px;background:#2b2d34;color:#fff;font-weight:1000}.rateTabsV296 button.active{background:#d94f48}.noticeV296{margin:12px 0;padding:11px;border:2px solid #8e7000;border-radius:7px;background:#2e2400;color:#ffe66d}.rateToolsV296{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,520px) auto;align-items:center;gap:12px}.rateToolsV296 .subTitleV296{margin:15px 0}.rateToolsV296 input{width:100%;padding:12px 14px;border:2px solid #3e5d78;border-radius:7px;background:#0c1521;color:#fff}.rateToolsV296>b{color:#fff000}.homeModalOpenV296{overflow:hidden}
.patchPanelV296{max-width:1180px}.patchDateV296{margin-bottom:12px;color:#fff000;font-weight:1000}.legendV296{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.legendV296 span{padding:5px 9px;border-radius:5px;color:#fff;font-size:11px;font-weight:1000}.legendV296 .buff{background:#0b9245}.legendV296 .nerf{background:#b52f3c}.legendV296 .adjust{background:#a36d09}.detailSectionV296{margin:25px 0}.detailSectionV296>h3{margin:0 0 13px;padding:11px 14px;border-left:12px solid #f35e44;background:#262931;font-size:25px;text-transform:uppercase;font-style:italic}.detailSectionV296.health>h3{border-color:#48cf69}.detailSectionV296.damage>h3{border-color:#f14d4d}.detailSectionV296.reload>h3{border-color:#3baeea}.detailSectionV296.tuning>h3{border-color:#d34bf1}.detailGridV296{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.detailCardV296{overflow:hidden;border:2px solid #4b505b;border-left:7px solid #a06b0c;border-radius:8px;background:#11141a}.detailCardV296.buff{border-left-color:#1dc765}.detailCardV296.nerf{border-left-color:#e14a56}.detailIdentityV296{display:flex;align-items:center;gap:10px;padding:9px 12px;background:#242730}.detailIdentityV296>img{width:62px;height:62px;object-fit:cover;border:2px solid #08090b;border-radius:6px;background:#1d2736}.detailIdentityV296 b{display:block;font-size:17px}.detailIdentityV296 small{display:block;color:#fff000;font-weight:900}.detailIdentityV296 em{display:inline-block;margin-top:3px;color:#aeb8c8;font-size:11px;font-style:normal}.detailSkillV296{display:grid;grid-template-columns:82px minmax(0,1fr);gap:11px;padding:12px}.detailSkillV296>img{width:82px;height:82px;object-fit:cover;border:2px solid #444b57;border-radius:7px;background:#202630}.detailSkillV296 h4{margin:0 0 8px;font-size:16px}.changeLabelV296{color:#aeb8c8;font-size:11px;font-weight:800}.valueTableWrapV296{overflow:auto;margin-top:5px}.valueTableV296{width:100%;border-collapse:collapse;font-size:10px}.valueTableV296 th,.valueTableV296 td{padding:4px 5px;border:1px solid #3f444d;text-align:center}.valueTableV296 .before{color:#ff9ba3}.valueTableV296 .after{color:#71ef9a;font-weight:900}.singleChangeV296{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.singleChangeV296 span{padding:7px 9px;border-radius:5px;background:#292c33}.singleChangeV296 i{color:#fff000;font-style:normal;font-weight:1000}.detailSkillV296 ul{margin:7px 0 0;padding-left:18px}.detailSkillV296 li{margin:5px 0}.patchNoteV296{padding:14px;border:2px solid #784187;border-radius:7px;background:#28132e}.simplePatchV296{margin:14px 0;border:1px solid #444851;border-radius:8px;overflow:hidden}.simplePatchV296 h3{margin:0;padding:12px 14px;background:#282a31;color:#fff100}.simplePatchV296 ul{margin:0;padding:14px 35px 18px}
@media(max-width:1050px){.eventGridV296{grid-template-columns:repeat(2,1fr)}.eventCardV296:nth-child(4){grid-column:auto}.discountGridV296{grid-template-columns:repeat(3,1fr)}.rewardGridV296{grid-template-columns:repeat(5,1fr)}.detailGridV296{grid-template-columns:1fr}}
@media(max-width:1040px){.gachaGridV296{grid-template-columns:repeat(2,minmax(0,1fr))}.eventGridV296,.bonusGridV296{grid-template-columns:repeat(2,minmax(0,1fr))}.discountGridV296{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.homeV296{padding:10px 9px 42px}.releaseGridV296,.gachaGridV296,.eventGridV296,.bonusGridV296{grid-template-columns:1fr}.releaseCardV296{aspect-ratio:48/13}.discountGridV296{grid-template-columns:repeat(2,1fr)}.homeTitleV296{font-size:25px}.rewardGridV296{grid-template-columns:repeat(3,1fr)}.rateToolsV296{grid-template-columns:1fr}.rateToolsV296>b{justify-self:end}.modalV296{padding:6px}.modalPanelV296>header{top:-6px}.modalBodyV296{padding:11px}.detailSkillV296{grid-template-columns:64px minmax(0,1fr)}.detailSkillV296>img{width:64px;height:64px}.patchRowV296{grid-template-columns:72px minmax(0,1fr)}.patchRowV296 time{grid-column:2}.seasonV296{padding:20px 12px 18px}.countdownV296{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.countdownV296 span{min-width:0;padding:16px 8px;border-radius:16px}.countdownV296 b{font-size:44px}.countdownV296 small{font-size:18px}}
@media(max-width:440px){.rewardGridV296{grid-template-columns:repeat(2,1fr)}.countdownV296{gap:4px}.countdownV296 span{min-width:49px;padding:7px 4px}.countdownV296 b{font-size:18px}.releaseBadgeV296 em{display:none}}

/* V298 */
.rateTabsV296 button small{display:inline-block;margin-left:5px;color:#fff000}.subTitleV296 small{font-size:14px;color:#fff000}.noticeV296.completeV298{border-color:#168d49;background:#082b19;color:#88f5ad}.rewardGridV296.exchange{grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:22px}.eventCardV296>img{object-position:center center}.homeImageError{opacity:.2}
@media(max-width:1050px){.rewardGridV296.exchange{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:760px){.rewardGridV296.exchange{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:440px){.rewardGridV296.exchange{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* V299 — sorties recomposées et portail complet */
.releaseGridV296{gap:14px}
.releaseCardV299{
  --release-a:#be1025;--release-b:#f32639;
  position:relative;display:block;width:100%;aspect-ratio:48/13;padding:0;
  overflow:hidden;border:4px solid #050609;border-radius:11px;
  background:linear-gradient(105deg,var(--release-a) 0 56%,var(--release-b) 56% 100%);
  color:#fff;box-shadow:0 5px 0 #050506;cursor:pointer;
}
.releaseCardV299:hover,.releaseCardV299:focus-visible{border-color:#fff000;transform:translateY(-2px);outline:none}
.releaseCardV299.theme-purple{--release-a:#4a075a;--release-b:#a311d1}
.releaseCardV299.theme-cyan{--release-a:#004d58;--release-b:#08b8c9}
.releaseCardV299.theme-orange{--release-a:#793000;--release-b:#f37300}
.releaseDotsV299{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.24) 1.5px,transparent 1.8px);background-size:11px 11px;opacity:.8}
.releasePersonWrapV299{position:absolute;z-index:2;right:0;top:0;width:62%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}
.releasePersonV299{width:100%;height:116%;object-fit:contain;object-position:center;display:block;filter:drop-shadow(-4px 4px 0 rgba(0,0,0,.55))}
.releaseWordV299{position:absolute;z-index:3;left:7%;top:43%;transform:translateY(-50%) skew(-8deg);max-width:42%;color:#fff000;font-family:Impact,Arial Black,sans-serif;font-size:clamp(28px,4vw,54px);line-height:.9;letter-spacing:1px;text-shadow:4px 4px 0 #000,-2px -2px 0 #000,2px -2px 0 #000,-2px 2px 0 #000;white-space:nowrap}
.releaseSlashV299{position:absolute;z-index:3;left:-4%;right:-4%;top:52%;height:5px;transform:rotate(-8deg);background:#08090b;box-shadow:0 -2px 0 rgba(255,255,255,.55)}
.releaseBadgeV299{position:absolute;z-index:5;left:10px;top:9px;width:38px;height:38px;display:block;overflow:hidden;border-radius:6px;filter:drop-shadow(2px 3px 0 #000)}
.releaseBadgeV299 img{width:100%;height:100%;object-fit:contain;display:block}
.releaseNamesV299{position:absolute;z-index:5;left:13px;bottom:9px;max-width:42%;text-align:left;text-shadow:2px 2px 0 #000}
.releaseNamesV299 b{display:block;font-size:15px}.releaseNamesV299 small{display:block;color:#fff000;font-size:11px;font-weight:1000}
.rewardKindFilterV299{display:flex;flex-wrap:wrap;gap:7px;margin:4px 0 14px}
.rewardKindFilterV299 button{padding:7px 10px;border:2px solid #545b67;border-radius:999px;background:#222731;color:#fff;font-size:11px;font-weight:1000}
.rewardKindFilterV299 button small{margin-left:4px;color:#fff000}
.rewardKindFilterV299 button.active{border-color:#fff000;background:#3a3100}
.rewardV296[hidden]{display:none!important}
.eventCardV296>img{object-fit:cover;object-position:center}
@media(max-width:760px){
  .releasePersonWrapV299{width:66%}.releasePersonV299{height:108%}
  .releaseWordV299{font-size:clamp(24px,8vw,42px)}
  .releaseNamesV299{display:none}
}


/* V300 — simulateur de tirage et archive complète des patch notes */
.gachaViewV296{background:#ffeb00;color:#090b10}
.simulatorPanelV300{max-width:1320px}
.simulatorV300{padding-bottom:12px}
.simStatsV300{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}
.simStatsV300>div{border:2px solid #465265;background:#111a28;border-radius:10px;padding:12px;text-align:center}
.simStatsV300 span{display:block;color:#aebbd0;font-size:12px;font-weight:800;text-transform:uppercase}
.simStatsV300 b{display:block;color:#ffeb00;font-size:28px;margin-top:3px}
.simActionsV300{display:flex;align-items:stretch;justify-content:center;gap:12px;flex-wrap:wrap;margin:18px 0 22px}
.simActionsV300 button{min-width:190px;border:3px solid #05070a;border-radius:12px;background:#13cde6;color:#071018;padding:12px 18px;box-shadow:0 5px 0 #05070a;font-weight:1000;cursor:pointer}
.simActionsV300 button:hover{transform:translateY(-2px);filter:brightness(1.08)}
.simActionsV300 button strong,.simActionsV300 button small{display:block}.simActionsV300 button strong{font-size:18px}.simActionsV300 button small{font-size:11px;margin-top:3px}
.simActionsV300 button.plusUltra{background:linear-gradient(135deg,#ffeb00,#ff8a00);font-size:18px}
.simActionsV300 button.reset{min-width:auto;background:#3a414d;color:white;border-color:#141820;box-shadow:none}
.simWarningV300{border:2px solid #d89f00;background:#332800;color:#ffe36b;padding:11px 13px;border-radius:9px;margin:12px 0;font-weight:800}
.simResultsV300{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;min-height:170px}
.simEmptyV300{grid-column:1/-1;border:2px dashed #5a6474;border-radius:10px;display:grid;place-items:center;color:#b8c1d1;padding:34px;text-align:center}
.simResultV300{position:relative;border:3px solid #7b8492;border-radius:10px;overflow:hidden;background:#0c111a;animation:simPopV300 .36s both;animation-delay:var(--delay)}
.simResultV300.r{border-color:#56c9ff}.simResultV300.sr{border-color:#d65cff}.simResultV300.plusUltra{border-color:#ffea00;box-shadow:0 0 18px rgba(255,234,0,.45)}
.simResultImageV300{position:relative;aspect-ratio:1/1;background:#172235;overflow:hidden}.simResultImageV300>img{width:100%;height:100%;object-fit:contain}.simResultImageV300>span{position:absolute;left:5px;top:5px;width:28px;height:28px}.simResultImageV300>span img{width:100%;height:100%;object-fit:contain}.simResultImageV300 em{position:absolute;right:4px;top:5px;background:#ff006a;color:#fff;border:2px solid #fff;border-radius:999px;padding:3px 6px;font-style:normal;font-size:9px;font-weight:1000}
.simResultV300>b,.simResultV300>small{display:block;text-align:center;padding:0 7px}.simResultV300>b{font-size:12px;margin-top:7px;min-height:30px}.simResultV300>small{color:#aab5c6;font-size:10px;margin-bottom:8px}
.simExchangeV300{margin-top:22px;border-top:2px solid #394253;padding-top:15px}.simExchangeV300 summary{cursor:pointer;color:#fff;font-size:18px;font-weight:1000;margin-bottom:12px}
.patchArchiveToolsV300{display:flex;gap:10px;align-items:center;margin:0 0 12px}.patchArchiveToolsV300 input{flex:1;min-width:0;border:2px solid #40516b;background:#071321;color:#fff;border-radius:8px;padding:11px 13px}.patchArchiveToolsV300 b{color:#ffeb00;white-space:nowrap}.patchRowV296[hidden]{display:none!important}
@keyframes simPopV300{0%{opacity:0;transform:scale(.72) translateY(18px)}100%{opacity:1;transform:none}}
@media(max-width:900px){.simResultsV300{grid-template-columns:repeat(3,minmax(0,1fr))}.simStatsV300{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.simResultsV300{grid-template-columns:repeat(2,minmax(0,1fr))}.simActionsV300 button{width:100%}.patchArchiveToolsV300{align-items:stretch;flex-direction:column}}


/* V301 — sécurité des taux et échanges exacts */
.simVerifiedV301{
  margin:0 0 14px;
  padding:10px 14px;
  border:2px solid #34e88b;
  border-radius:8px;
  background:#072b1b;
  color:#62ffa9;
  font-weight:1000;
  text-align:center;
  letter-spacing:.4px;
}
.simActionsV300 button:disabled{
  opacity:.35;
  cursor:not-allowed;
  filter:grayscale(1);
  transform:none!important;
}
.simExchangeWarningV301{
  margin-top:18px;
  padding:12px 14px;
  border:2px dashed #ad6e00;
  border-radius:8px;
  background:#2a1a00;
  color:#ffd85a;
  font-weight:800;
}


/* V302 — image, type et rareté exacts pour chaque résultat */
.simRarityV302{
  position:absolute!important;
  left:8px!important;
  bottom:8px!important;
  top:auto!important;
  width:auto!important;
  height:auto!important;
  z-index:7;
  padding:5px 8px;
  border:2px solid #050505;
  border-radius:7px;
  background:#111;
  color:#fff;
  font:1000 12px/1 Arial,sans-serif;
  letter-spacing:.2px;
  box-shadow:0 2px 0 rgba(0,0,0,.8);
}
.simRarityV302.rarity-pur{background:#070707;color:#ffe600;border-color:#ffe600}
.simRarityV302.rarity-sr{background:#12233d;color:#d9efff;border-color:#55baff}
.simRarityV302.rarity-r{background:#3b2400;color:#fff0a1;border-color:#f2a900}
.simRarityV302.rarity-c{background:#30343a;color:#fff;border-color:#9aa1aa}
.simResultV300.plusUltra{border-color:#ffe600;box-shadow:0 0 12px rgba(255,230,0,.45)}
.simResultV300.sr{border-color:#55baff}
.simResultV300.r{border-color:#f2a900}
.simResultV300.normal{border-color:#9aa1aa}


/* V303 — tirages disponibles sans simulateur et dernier patch uniquement */
.gachaCardV303{
  position:relative;
  min-height:205px;
  overflow:hidden;
  border:4px solid #050609;
  border-radius:11px;
  background:#0e1015;
  color:#fff;
  text-align:left;
  box-shadow:0 5px 0 #050506;
}
.gachaCardV303 .gachaBannerV296 img{object-fit:contain}
.gachaViewV303{
  position:absolute;
  right:9px;
  top:9px;
  z-index:2;
  padding:5px 9px;
  border:2px solid #050505;
  border-radius:4px;
  background:#1bc96f;
  color:#06150c;
  font-size:11px;
  font-weight:1000;
}
.latestPatchCardV303{
  width:100%;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:16px;
  align-items:center;
  padding:18px;
  border:4px solid #050609;
  border-left:12px solid #ff5a1f;
  border-radius:10px;
  background:linear-gradient(110deg,#171a21,#0c0e13);
  color:#fff;
  text-align:left;
  box-shadow:0 5px 0 #050506;
  cursor:pointer;
}
.latestPatchCardV303:hover{
  border-color:#fff000;
  border-left-color:#ff5a1f;
  transform:translateY(-2px);
}
.latestPatchTagV303{
  padding:9px 11px;
  background:#ff5a1f;
  color:#fff;
  font-size:11px;
  font-weight:1000;
  transform:skew(-7deg);
}
.latestPatchCardV303 b{display:block;font-size:22px}
.latestPatchCardV303 small{display:block;margin-top:5px;color:#b9c2d1;font-weight:800}
.latestPatchCardV303>strong{
  padding:10px 13px;
  border:2px solid #fff;
  border-radius:6px;
  background:#252a34;
  white-space:nowrap;
}
.richPatchV303{max-width:1050px;margin:auto}
.richPatchHeadingV303{
  margin:24px 0 10px;
  padding-left:12px;
  border-left:7px solid #ff5a1f;
  color:#fff;
}
.richPatchTextV303{
  margin:8px 0;
  padding:11px 13px;
  border:1px solid #343b48;
  border-radius:7px;
  background:#11151c;
  color:#e7ebf2;
  line-height:1.55;
}
.richPatchImageV303{
  margin:14px auto;
  max-width:900px;
  padding:9px;
  border:2px solid #4a5260;
  border-radius:9px;
  background:#080a0f;
}
.richPatchImageV303 img{display:block;max-width:100%;max-height:520px;margin:auto;object-fit:contain}
.richPatchImageV303 figcaption{margin-top:7px;text-align:center;color:#bfc7d5;font-size:12px}
@media(max-width:720px){
  .latestPatchCardV303{grid-template-columns:1fr}
  .latestPatchCardV303>strong{white-space:normal}
}

/* V334 — nouveau timer de saison */
.seasonV296{
  position:relative;
  overflow:hidden;
  max-width:1100px;
  padding:26px 28px 24px;
  border:4px solid #050505;
  border-radius:18px;
  background:
    linear-gradient(135deg,rgba(255,224,0,.13),transparent 35%),
    linear-gradient(180deg,#172131,#0a101a);
  box-shadow:0 0 0 3px #e8b900 inset,0 7px 0 #000,0 0 24px rgba(255,196,0,.22);
}
.seasonV296:before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:7px;
  background:linear-gradient(90deg,#ff6a00,#ffe100,#19c9de);
}
.seasonV296 h1{
  margin:4px 0 8px;
  font-size:42px;
  letter-spacing:1px;
  color:#fff;
  text-transform:uppercase;
}
.seasonLineV296{
  display:block;
}
.seasonLineV296>strong{
  display:block;
  margin-bottom:14px;
  color:#ffe100;
  font-size:18px;
  letter-spacing:.8px;
  text-transform:uppercase;
}
.countdownV296{
  display:grid;
  grid-template-columns:repeat(4,minmax(120px,1fr));
  gap:14px;
  max-width:820px;
  margin:0 auto;
}
.countdownV296 span{
  min-width:0;
  min-height:108px;
  padding:12px 8px 10px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  border:3px solid #000;
  border-radius:14px;
  background:linear-gradient(180deg,#26364f,#111a29);
  box-shadow:0 0 0 2px #ffe100 inset,0 5px 0 #000;
}
.countdownV296 b{
  font-size:44px;
  line-height:1;
  color:#fff;
  text-shadow:3px 3px 0 #000;
  font-variant-numeric:tabular-nums;
}
.countdownV296 small{
  color:#ffe100;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.8px;
}
.countdownV296.urgent span{
  box-shadow:0 0 0 2px #ff531f inset,0 5px 0 #000,0 0 18px rgba(255,65,31,.28);
}
.countdownV296.urgent small{color:#ff7a42}
.tickV334{animation:timerTickV334 .22s ease}
@keyframes timerTickV334{0%{transform:translateY(-5px);opacity:.35}100%{transform:none;opacity:1}}
.seasonEndedV334{
  grid-column:1/-1;
  padding:22px;
  border:3px solid #000;
  border-radius:14px;
  background:linear-gradient(135deg,#0ca95b,#056638);
  color:#fff;
  font-size:24px;
  font-weight:1000;
  text-shadow:2px 2px #000;
}
.seasonEndedV334 small{
  display:block;
  margin-top:7px;
  color:#d6ffe8;
  font-size:14px;
}
.seasonV296>small{
  display:block;
  margin-top:18px;
  color:#cbd6e7;
  font-size:13px;
}
@media(max-width:760px){
  .seasonV296{padding:22px 12px 20px}
  .seasonV296 h1{font-size:32px}
  .countdownV296{grid-template-columns:repeat(2,minmax(110px,1fr));gap:10px}
  .countdownV296 span{min-height:92px}
  .countdownV296 b{font-size:36px}
}
@media(max-width:420px){
  .countdownV296{grid-template-columns:repeat(2,1fr)}
  .countdownV296 span{min-height:82px;padding:9px 4px}
  .countdownV296 b{font-size:31px}
  .countdownV296 small{font-size:10px}
}


/* V520 — maintenance dynamique, adaptée au style MHUR Nexus */
.maintenanceV520{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) minmax(330px,.72fr);
  align-items:center;
  gap:22px;
  max-width:1220px;
  margin:10px auto 30px;
  padding:24px 26px;
  overflow:hidden;
  border:4px solid #050609;
  border-radius:20px;
  background:
    linear-gradient(120deg,rgba(25,201,222,.16),transparent 42%),
    linear-gradient(180deg,#18263a,#0a111d);
  box-shadow:0 0 0 3px #19c9de inset,0 8px 0 #050609,0 0 30px rgba(25,201,222,.2);
}
.maintenanceV520:before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:8px;
  background:repeating-linear-gradient(135deg,#19c9de 0 22px,#ffe100 22px 44px,#10131a 44px 52px);
}
.maintenanceV520.is-active{
  background:linear-gradient(120deg,rgba(255,90,31,.18),transparent 42%),linear-gradient(180deg,#2a1b22,#0d111b);
  box-shadow:0 0 0 3px #ff6a25 inset,0 8px 0 #050609,0 0 32px rgba(255,77,25,.24);
}
.maintenanceV520.is-active:before{background:repeating-linear-gradient(135deg,#ff5a1f 0 22px,#ffe100 22px 44px,#10131a 44px 52px)}
.maintenanceSignalV520{
  position:relative;
  z-index:1;
  width:88px;
  height:88px;
  display:grid;
  place-items:center;
  border:4px solid #050609;
  border-radius:22px;
  transform:rotate(-4deg);
  background:linear-gradient(145deg,#20d7eb,#147a9d);
  color:#fff;
  box-shadow:0 0 0 3px #bdf8ff inset,0 6px 0 #050609;
}
.maintenanceV520.is-active .maintenanceSignalV520{background:linear-gradient(145deg,#ff8a21,#c72f24);box-shadow:0 0 0 3px #ffd66e inset,0 6px 0 #050609}
.maintenanceSignalV520 span{font-size:48px;line-height:1;filter:drop-shadow(3px 3px 0 #000)}
.maintenanceIntroV520{position:relative;z-index:1;min-width:0}
.maintenanceEyebrowV520{display:inline-block;padding:6px 10px;border:2px solid #050609;border-radius:999px;background:#19c9de;color:#061018;font-size:11px;font-weight:1000;letter-spacing:1px}
.maintenanceV520.is-active .maintenanceEyebrowV520{background:#ff5a1f;color:#fff}
.maintenanceIntroV520 h2{margin:9px 0 6px;font-size:clamp(25px,3vw,40px);line-height:1;text-transform:uppercase;font-style:italic;text-shadow:3px 3px 0 #000}
.maintenanceIntroV520 p{margin:0;color:#d7e1ef;font-weight:800;line-height:1.4}
.maintenanceScheduleV520{display:flex;align-items:center;gap:8px;margin-top:12px;color:#ffe100;font-size:13px}
.maintenanceTimerV520{position:relative;z-index:1;padding:14px;border:3px solid #3c5574;border-radius:15px;background:rgba(5,10,18,.72);box-shadow:0 4px 0 #050609}
.maintenanceV520.is-active .maintenanceTimerV520{border-color:#7c4531}
.maintenanceTimerV520>strong{display:block;margin-bottom:10px;text-align:center;color:#ffe100;font-size:13px;letter-spacing:1px}
.maintenanceCountdownV520{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.maintenanceCountdownV520 span{min-width:0;padding:9px 4px;border:2px solid #050609;border-radius:10px;background:linear-gradient(180deg,#263a58,#152135);text-align:center;box-shadow:0 3px 0 #050609}
.maintenanceV520.is-active .maintenanceCountdownV520 span{background:linear-gradient(180deg,#543026,#271820)}
.maintenanceCountdownV520 b{display:block;font-size:clamp(22px,2.6vw,34px);line-height:1;text-shadow:2px 2px 0 #000}
.maintenanceCountdownV520 small{display:block;margin-top:5px;color:#ffe100;font-size:9px;font-weight:1000}
.maintenanceV520[hidden]{display:none!important}
@media(max-width:900px){
  .maintenanceV520{grid-template-columns:auto minmax(0,1fr);padding:22px 18px 18px}
  .maintenanceTimerV520{grid-column:1/-1}
}
@media(max-width:560px){
  .maintenanceV520{grid-template-columns:1fr;gap:15px;text-align:center;border-radius:16px}
  .maintenanceSignalV520{width:70px;height:70px;margin:auto}
  .maintenanceSignalV520 span{font-size:38px}
  .maintenanceScheduleV520{justify-content:center;flex-wrap:wrap}
  .maintenanceCountdownV520{gap:5px}
  .maintenanceCountdownV520 span{padding:8px 2px}
  .maintenanceCountdownV520 b{font-size:23px}
  .maintenanceCountdownV520 small{font-size:8px}
}


/* ===== css/community-builds.css ===== */
/* V304 — Builds communautaires */
.cbPageHead,.cbWidgetHead{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.cbPageHead p,.cbWidgetHead p{margin:4px 0;color:#c7d7ee;font-weight:800}
.cbAddBuild,.cbWidgetActions button{border:4px solid #000;border-radius:14px;background:#ffe100;color:#000;padding:12px 18px;font-weight:1000;box-shadow:0 4px 0 #000}
.cbAddBuild span{font-size:28px;margin-right:7px}.cbWidgetActions{display:flex;gap:9px;flex-wrap:wrap}
.cbWidgetActions .secondary{background:#17253c;color:#fff;border-color:#405d84;box-shadow:none}
.cbStyleTabs button{display:flex;flex-direction:column;align-items:flex-start;min-width:170px}.cbStyleTabs small{font-size:11px;margin-top:3px;opacity:.8}
.cbConnection{display:flex;gap:14px;align-items:center;margin:16px 0;padding:12px 15px;border:3px solid #000;border-radius:12px}
.cbConnection b{white-space:nowrap}.cbConnection span{font-weight:700}.cbConnection.online{background:#073c24;color:#8affc2}.cbConnection.local{background:#372500;color:#ffe071}.cbConnection code{background:#080b10;padding:3px 6px;border-radius:5px;color:#fff}
.cbToolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0}.cbToolbar>div{margin-right:auto;background:#111b2b;border:2px solid #344c70;border-radius:10px;padding:9px 13px}.cbToolbar button{padding:9px 12px;border:2px solid #405d84;border-radius:10px;background:#17253c;color:#fff;font-weight:900}.cbToolbar button.active{background:#ffe100;color:#000;border-color:#000}
.cbBuildList{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:16px}.cbCompactList{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
.cbBuildCard{position:relative;display:grid;grid-template-columns:150px 1fr;gap:14px;padding:13px;border:4px solid #000;border-radius:16px;background:linear-gradient(145deg,#16263d,#08101d);color:#fff;box-shadow:0 5px 0 #000;cursor:pointer;overflow:hidden}.cbBuildCard:hover{outline:4px solid #19e6ff;transform:translateY(-2px)}.cbBuildCard.compact{grid-template-columns:90px 1fr;min-height:120px}.cbBuildCard.compact .cbBuildCostume{height:100px}.cbBuildCard.compact .cbBuildMain{align-self:center}
.cbRank{position:absolute;top:6px;left:6px;z-index:3;width:31px;height:31px;border:3px solid #000;border-radius:50%;display:grid;place-items:center;background:#ffe100;color:#000;font-weight:1000}
.cbBuildCostume{height:170px;border:3px solid #000;border-radius:12px;background:#cfd6d4;overflow:hidden}.cbBuildCostume img{width:100%;height:100%;object-fit:contain;object-position:center bottom}
.cbBuildMain{min-width:0}.cbBuildTitleLine{display:flex;align-items:flex-start;gap:10px}.cbBuildTitleLine h3{margin:0;font-size:22px;line-height:1.1;flex:1}.cbBuildMeta{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.cbBuildMeta span{background:#233958;border:1px solid #41648e;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:900}.cbBuildMain p{margin:8px 0;color:#d7e2f3;line-height:1.35}
.cbHeart{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:70px;padding:7px 10px;border:3px solid #000;border-radius:999px;background:#f5f5f5;color:#111;font-weight:1000}.cbHeart span{font-size:22px;color:#c9c9c9}.cbHeart.liked{background:#ff2d6f;color:#fff}.cbHeart.liked span{color:#fff}.cbHeart.compact{min-width:58px;padding:4px 8px}.cbHeart.compact span{font-size:18px}
.cbMiniSlots{display:grid;grid-template-columns:repeat(6,34px);gap:5px;margin-top:10px}.cbMiniSlot{width:34px;height:34px;border:3px solid #000;clip-path:polygon(22% 0,78% 0,100% 50%,78% 100%,22% 100%,0 50%);display:grid;place-items:center;overflow:hidden}.cbMiniSlot.red{background:#ff1717}.cbMiniSlot.yellow{background:#fff000}.cbMiniSlot.cyan{background:#16bfd0}.cbMiniSlot.violet{background:#bd17ee}.cbMiniSlot.green{background:#00ef22}.cbMiniSlot img{width:100%;height:100%;object-fit:cover}
.cbEmpty,.cbLoading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:130px;padding:22px;border:3px dashed #4a5e7e;border-radius:14px;background:#0d1726;color:#c7d7ee;text-align:center;font-weight:900}.cbEmpty strong{margin-top:7px;color:#ffe100}.cbEmpty small{margin-top:8px;max-width:800px}.cbLoading span{width:35px;height:35px;border:5px solid #334b70;border-top-color:#ffe100;border-radius:50%;animation:cbSpin .8s linear infinite;margin-bottom:9px}@keyframes cbSpin{to{transform:rotate(360deg)}}
.cbCharacterWidget{margin:22px 0;padding:18px;border:4px solid #000;border-radius:18px;background:linear-gradient(135deg,#111b2b,#173455);color:#fff}.cbWidgetHead h2{margin:0;font-size:28px}
.cbModal{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.88)}.cbModal.open{display:flex}.cbModalOpen{overflow:hidden}.cbModalPanel{position:relative;width:min(1500px,98vw);max-height:96vh;overflow:auto;border:5px solid #000;border-radius:18px;background:#101721;color:#fff;box-shadow:0 0 0 3px #405d84}.cbClose{position:sticky;float:right;top:10px;right:10px;z-index:20;width:48px;height:48px;border:4px solid #000;border-radius:50%;background:#e84f48;color:#fff;font-size:29px;font-weight:1000}
.cbBuilderHeader{padding:22px 72px 16px 22px;background:linear-gradient(90deg,#11223a,#1c4774)}.cbBuilderHeader>span{display:inline-block;padding:5px 9px;background:#ffe100;color:#000;font-size:11px;font-weight:1000;transform:skew(-7deg)}.cbBuilderHeader h2{margin:8px 0 3px;font-size:34px}.cbBuilderHeader p{margin:0;color:#d8e6fb}
.cbBuildFields{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px 20px}.cbBuildFields label{font-weight:1000;color:#ffe100}.cbBuildFields label.wide{grid-column:1/-1}.cbBuildFields input,.cbBuildFields textarea{width:100%;margin-top:6px;padding:11px;border:2px solid #45658f;border-radius:9px;background:#07101c;color:#fff}.cbBuildFields textarea{min-height:80px;resize:vertical}
.cbSectionTitle{display:flex;justify-content:space-between;margin:6px 20px 10px;padding:10px 13px;border-left:8px solid #ffe100;background:#171f2b}.cbSectionTitle span{color:#ffe100}
.cbCostumeChoices{display:flex;gap:9px;overflow:auto;padding:0 20px 16px}.cbCostumeChoices button{flex:0 0 135px;padding:5px;border:3px solid #000;border-radius:12px;background:#101a29;color:#fff}.cbCostumeChoices button.selected{outline:5px solid #19e6ff}.cbCostumeChoices button>div{height:125px;background:#cfd6d4;border-radius:8px;overflow:hidden}.cbCostumeChoices img{width:100%;height:100%;object-fit:contain;object-position:center bottom}.cbCostumeChoices b,.cbCostumeChoices span{display:block;margin-top:5px;font-size:11px}
.cbBuilderBoard{display:grid;grid-template-columns:220px minmax(480px,1fr) minmax(360px,.8fr);gap:13px;padding:0 20px 18px}.cbBuildCostumePreview{padding:9px;border:4px solid #000;border-radius:13px;background:linear-gradient(#d4ad00,#826900);color:#000;text-align:center}.cbBuildCostumePreview>img{width:100%;height:240px;object-fit:contain;object-position:center bottom;background:#d5dcda}.cbBuildCostumePreview h3{margin:8px 0 3px}.cbBuildCostumePreview p{margin:0;font-weight:900}
.cbBuildColumns{display:grid;grid-template-columns:1fr 1fr;gap:9px}.cbBuildColumns>div{padding:8px;border:4px solid #000;border-radius:12px;background:#303a42}.cbBuildColumns h4{margin:0 0 7px;padding:7px;background:#111;text-align:center}
.cbBuilderSlot{--cb-slot:#fff000;display:grid;grid-template-columns:1fr 62px;align-items:center;width:100%;min-height:76px;margin:6px 0;padding:0;border:3px solid #777;border-radius:8px;background:linear-gradient(to top,var(--cb-slot) 0 17px,#eee 17px);color:#000;text-align:left;overflow:hidden}.cbBuilderSlot.sp{background:#111;color:#fff;border:4px solid var(--cb-slot)}.cbBuilderSlot.selected{outline:4px solid #19e6ff}.cbBuilderSlotText{padding:7px 9px}.cbBuilderSlotText small,.cbBuilderSlotText b,.cbBuilderSlotText span,.cbBuilderSlotText em{display:block}.cbBuilderSlotText small{font-size:10px;opacity:.75}.cbBuilderSlotText b{font-size:12px;margin-top:3px}.cbBuilderSlotText span{font-weight:1000;line-height:1.05}.cbBuilderSlotText em{font-style:normal;font-weight:900;color:#555}.cbBuilderSlot.sp em{color:#ffe100}.cbBuilderGem{width:58px;height:58px;margin-right:3px;border:4px solid #888;background:var(--cb-slot);clip-path:polygon(22% 0,78% 0,100% 50%,78% 100%,22% 100%,0 50%);display:grid;place-items:center;overflow:hidden}.cbBuilderGem img{width:100%;height:100%;object-fit:cover}.cbBuilderGem strong{font-size:25px}
.cbBuilderPicker{border:4px solid #000;border-radius:12px;background:#303a42;overflow:hidden;min-height:500px}.cbPickerHead{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 11px;background:#111}.cbPickerHead b,.cbPickerHead span{display:block}.cbPickerHead span{margin-top:3px;color:#ffe100;font-size:11px}.cbPickerHead button{padding:7px 9px;border-radius:8px;background:#e84f48;color:#fff;font-weight:900}.cbPickerList{max-height:620px;overflow:auto;padding:8px}.cbPickerOption{display:grid;grid-template-columns:64px 1fr 70px;gap:8px;align-items:center;width:100%;min-height:79px;margin-bottom:7px;border:3px solid #000;border-radius:9px;color:#fff;text-align:left}.cbPickerOption.red{background:#d80000}.cbPickerOption.yellow{background:#d7be00;color:#000}.cbPickerOption.cyan{background:#10b8cc;color:#000}.cbPickerOption.violet{background:#9411c8}.cbPickerOption.green{background:#00ad25;color:#000}.cbPickerOption.disabled{opacity:.35}.cbPickerImage{height:64px;background:#111;overflow:hidden}.cbPickerImage img{width:100%;height:100%;object-fit:contain}.cbPickerOption small,.cbPickerOption b{display:block}.cbPickerOption p{margin:3px 0;font-size:10px;line-height:1.15}.cbPickerOption>strong{text-align:center;font-size:11px}
.cbPublishBar{position:sticky;bottom:0;z-index:9;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 20px;border-top:4px solid #000;background:#101721}.cbPublishBar b,.cbPublishBar span{display:block}.cbPublishBar span{color:#b9c7dc}.cbPublishBar button{padding:12px 20px;border:4px solid #000;border-radius:12px;background:#ffe100;color:#000;font-weight:1000}.cbPublishBar button:disabled{opacity:.35;cursor:not-allowed}
.cbDetailPanel{width:min(1150px,97vw)}.cbDetailHero{display:grid;grid-template-columns:270px 1fr;gap:18px;padding:22px;background:linear-gradient(115deg,#d2ac00,#6e5700);color:#000}.cbDetailHero>div:first-child{height:300px;border:4px solid #000;border-radius:13px;background:#d4dbd9;overflow:hidden}.cbDetailHero>div:first-child img{width:100%;height:100%;object-fit:contain;object-position:center bottom}.cbDetailHero h2{margin:7px 0;font-size:39px}.cbDetailHero>div>span{display:inline-block;padding:5px 8px;background:#111;color:#ffe100;font-weight:1000}.cbDetailAuthor{margin:12px 0;font-weight:800}.cbDetailDescription{padding:15px 20px;border-top:4px solid #000;border-bottom:4px solid #000;background:#111b2b;font-size:17px;line-height:1.5}.cbDetailSlots{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;padding:16px;background:#202b38}.cbDetailSlot{--cb-slot:#fff000;display:grid;grid-template-columns:72px 1fr;min-height:78px;border:3px solid #000;border-radius:9px;background:linear-gradient(to top,var(--cb-slot) 0 16px,#eef0f2 16px);color:#000;overflow:hidden}.cbDetailSlot>div{background:#111}.cbDetailSlot img{width:100%;height:100%;object-fit:cover}.cbDetailSlot span{padding:6px 9px}.cbDetailSlot small,.cbDetailSlot b,.cbDetailSlot strong{display:block}.cbDetailSlot small{font-size:10px}.cbDetailSlot b{font-size:12px}.cbDetailSlot strong{line-height:1.05}
@media(max-width:1050px){.cbBuilderBoard{grid-template-columns:1fr}.cbBuildCostumePreview{display:grid;grid-template-columns:180px 1fr;align-items:center}.cbBuildCostumePreview>img{height:180px}.cbDetailSlots{grid-template-columns:1fr}}
@media(max-width:700px){.cbBuildList{grid-template-columns:1fr}.cbBuildCard{grid-template-columns:100px 1fr}.cbBuildCostume{height:130px}.cbBuildFields{grid-template-columns:1fr}.cbBuildFields label.wide{grid-column:auto}.cbBuildColumns{grid-template-columns:1fr}.cbDetailHero{grid-template-columns:1fr}.cbDetailHero>div:first-child{height:240px}.cbMiniSlots{grid-template-columns:repeat(6,28px)}.cbMiniSlot{width:28px;height:28px}}


/* V305 — filtres, raretés, portraits de styles et T.U.N.I.N.G mieux cadrés */

/* Onglets de styles avec portrait */
.cbStyleTabs{gap:12px!important}
.cbStyleTabs button{
  flex-direction:row!important;
  align-items:center!important;
  gap:10px;
  min-width:210px!important;
  min-height:72px;
  padding:7px 13px!important;
  text-align:left;
}
.cbStylePortrait{
  width:56px;height:56px;flex:0 0 56px;
  border:3px solid #000;border-radius:10px;
  background:#cfd6d4;overflow:hidden;
}
.cbStylePortrait img{width:100%;height:100%;object-fit:contain;object-position:center bottom}
.cbStyleText b,.cbStyleText small{display:block}
.cbStyleText b{font-size:17px;line-height:1.05}
.cbStyleText small{margin-top:5px!important;font-size:11px}

/* Filtre du choix du costume dans le créateur */
.cbCostumeFilters{
  display:grid;
  grid-template-columns:repeat(5,minmax(145px,1fr)) auto;
  gap:9px;
  align-items:end;
  margin:0 20px 12px;
  padding:12px;
  border:3px solid #000;
  border-radius:12px;
  background:#0b1421;
}
.cbCostumeFilters label{color:#ffe100;font-size:12px;font-weight:1000}
.cbCostumeFilters select{
  width:100%;margin-top:5px;padding:9px;
  border:2px solid #405d84;border-radius:8px;
  background:#111d2e;color:#fff;font-weight:900;
}
.cbCostumeFilters>button{
  min-height:39px;padding:8px 11px;
  border:3px solid #000;border-radius:9px;
  background:#e84f48;color:#fff;font-weight:1000;
}
.cbCostumeChoices button{position:relative;flex-basis:150px!important}
.cbCostumeChoiceImage{position:relative!important;height:142px!important;background:#cfd6d4;border-radius:8px;overflow:hidden}
.cbCostumeChoiceImage>img{width:100%;height:100%;object-fit:contain;object-position:center bottom}
.cbCostumeRarity{
  position:absolute;z-index:4;left:5px;top:5px;
  min-width:40px;padding:4px 6px;
  border:3px solid #000;border-radius:8px;
  background:#0a0a0a;color:#fff;text-align:center;
  font:1000 11px/1 Arial,sans-serif;
}
.cbCostumeRarity b,.cbCostumeRarity small{display:block}
.cbCostumeRarity small{margin-top:3px;color:#ffe100;font-size:10px;letter-spacing:-1px}
.cbRarity-pur{border-color:#ffe100}.cbRarity-sr{border-color:#62bdff}.cbRarity-r{border-color:#f2a900}.cbRarity-c{border-color:#9ba2ac}
.cbCostumeSlots{
  position:absolute;z-index:4;left:5px;right:5px;bottom:5px;
  display:flex;justify-content:space-between;pointer-events:none;
}
.cbCostumeSlots i{
  width:30px;height:30px;display:grid;place-items:center;
  border:3px solid #000;
  clip-path:polygon(22% 0,78% 0,100% 50%,78% 100%,22% 100%,0 50%);
  color:#000;font-style:normal;font-size:10px;font-weight:1000;
}
.cbCostumeSlots i.red{background:#ff1717;color:#fff}.cbCostumeSlots i.yellow{background:#fff000}
.cbCostumeSlots i.cyan{background:#16bfd0}.cbCostumeSlots i.violet{background:#bd17ee;color:#fff}.cbCostumeSlots i.green{background:#00ef22}
.cbCostumeFilterEmpty{flex:1 0 100%}

/* Rareté sur les costumes des cartes de builds */
.cbBuildCostume{position:relative}
.cbBuildCostume .cbCostumeRarity{left:6px;top:39px}

/* Emplacements équipés du créateur : plus grands, aucun texte coupé */
.cbBuilderSlot{
  grid-template-columns:minmax(0,1fr) 76px!important;
  min-height:96px!important;
  background:linear-gradient(to top,var(--cb-slot) 0 18px,#eee 18px)!important;
}
.cbBuilderSlot.sp{background:#111!important;border-color:var(--cb-slot)!important}
.cbBuilderSlotText{min-width:0;padding:8px 10px 21px!important}
.cbBuilderSlotText small{font-size:10px!important;white-space:normal}
.cbBuilderSlotText b{font-size:12px!important}
.cbBuilderSlotText span{
  font-size:16px;line-height:1.05!important;
  overflow-wrap:anywhere;word-break:normal;
  display:-webkit-box!important;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.cbBuilderGem{
  width:72px!important;height:72px!important;
  margin-right:2px!important;
  border-width:4px!important;
}
.cbBuilderGem img{object-fit:contain!important;object-position:center!important;background:#111}
.cbPickerOption{grid-template-columns:82px minmax(0,1fr) 67px!important;min-height:96px!important}
.cbPickerImage{height:82px!important}
.cbPickerImage img{object-fit:contain!important;object-position:center bottom;background:#111}
.cbPickerOption b{font-size:16px;line-height:1.08;overflow-wrap:anywhere}
.cbPickerOption p{font-size:11px!important;line-height:1.2!important}

/* Miniatures T.U.N.I.N.G des cartes : légèrement agrandies */
.cbMiniSlots{grid-template-columns:repeat(6,42px)!important;gap:6px!important}
.cbMiniSlot{width:42px!important;height:42px!important}
.cbMiniSlot img{object-fit:contain!important;background:#101318}

/* Détail du build organisé comme l'écran Costume */
.cbDetailSlotsV305{
  display:grid;grid-template-columns:1fr 1fr;gap:16px;
  padding:18px;background:#202b38;
}
.cbDetailColumnV305{
  border:4px solid #000;border-radius:12px;overflow:hidden;background:#303a42;
}
.cbDetailColumnV305>h3{
  margin:0;padding:12px;background:#111;color:#fff;
  font-size:25px;text-align:center;text-shadow:2px 2px #000;
}
.cbDetailColumnV305>div{display:flex;flex-direction:column;gap:9px;padding:10px}
.cbDetailSlotV305{
  --cb-slot:#fff000;
  display:grid;grid-template-columns:minmax(0,1fr) 82px;
  align-items:center;min-height:100px;overflow:hidden;
  border:4px solid #222;border-radius:11px;
  background:linear-gradient(to top,var(--cb-slot) 0 18px,#eef0f2 18px);
  color:#000;
}
.cbDetailSlotV305.sp{
  border-color:var(--cb-slot);
  background:#101010;color:#fff;
}
.cbDetailSlotTextV305{min-width:0;padding:10px 12px 24px}
.cbDetailSlotTextV305 small,.cbDetailSlotTextV305 b,.cbDetailSlotTextV305 strong{display:block}
.cbDetailSlotTextV305 small{font-size:11px;opacity:.72}
.cbDetailSlotTextV305 b{margin-top:4px;font-size:13px}
.cbDetailSlotTextV305 strong{
  margin-top:2px;font-size:19px;line-height:1.07;
  overflow-wrap:anywhere;
}
.cbDetailGemV305{
  width:76px;height:76px;margin-right:3px;
  display:grid;place-items:center;overflow:hidden;
  border:4px solid #777;
  clip-path:polygon(22% 0,78% 0,100% 50%,78% 100%,22% 100%,0 50%);
}
.cbDetailGemV305.red{background:#ff1717}.cbDetailGemV305.yellow{background:#fff000}
.cbDetailGemV305.cyan{background:#16bfd0}.cbDetailGemV305.violet{background:#bd17ee}.cbDetailGemV305.green{background:#00ef22}
.cbDetailGemV305 img{width:100%;height:100%;object-fit:contain;object-position:center;background:#111}
.cbDetailGemV305 span{font-size:28px;font-weight:1000}

/* Filtre rareté de la page Costumes */
.v305CostumeFilters .filterGrid{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}
.v305ResetFilter{
  align-self:end;min-height:41px;padding:9px 12px;
  border:3px solid #000;border-radius:9px;
  background:#e84f48;color:#fff;font-weight:1000;
}
.v305FilterCount{
  margin:14px 0 8px;padding:8px 11px;
  border-left:7px solid #ffe100;background:#17253c;
  color:#fff;font-weight:1000;
}

@media(max-width:1150px){
  .cbCostumeFilters{grid-template-columns:repeat(3,1fr)}
  .cbDetailSlotsV305{grid-template-columns:1fr}
}
@media(max-width:720px){
  .cbCostumeFilters{grid-template-columns:1fr 1fr}
  .cbStyleTabs button{min-width:100%!important}
  .cbMiniSlots{grid-template-columns:repeat(6,34px)!important}
  .cbMiniSlot{width:34px!important;height:34px!important}
}


/* V306 — T.U.N.I.N.G des builds identiques aux cartes Costume */
.cbCostumeTuningGridV306{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:12px;
}
.cbCostumeTuningColumnV306{
  min-width:0;
  overflow:hidden;
  border:4px solid #000;
  border-radius:12px;
  background:#303a42;
}
.cbCostumeTuningColumnV306>h4{
  margin:0;
  padding:9px 12px;
  background:#111;
  color:#fff;
  text-align:center;
  font-size:18px;
  text-shadow:2px 2px #000;
}
.cbCostumeTuningColumnV306>div{
  display:flex;
  flex-direction:column;
  gap:7px;
  padding:8px;
}
.cbCostumeTuningCardV306{
  --cb-slot:#fff000;
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 76px;
  align-items:center;
  width:100%;
  min-height:88px;
  overflow:hidden;
  padding:0;
  border:4px solid #222;
  border-radius:11px;
  background:linear-gradient(to top,var(--cb-slot) 0 17px,#eef0f2 17px);
  color:#000;
  text-align:left;
}
.cbCostumeTuningCardV306.sp{
  border-color:var(--cb-slot);
  background:#101010;
  color:#fff;
}
.cbCostumeTuningTextV306{
  min-width:0;
  padding:8px 10px 22px;
}
.cbCostumeTuningCardV306.sp .cbCostumeTuningTextV306{
  padding-bottom:8px;
}
.cbCostumeTuningTextV306 small,
.cbCostumeTuningTextV306 b,
.cbCostumeTuningTextV306 span{
  display:block;
}
.cbCostumeTuningTextV306 small{
  font-size:10px;
  line-height:1.05;
  opacity:.72;
}
.cbCostumeTuningTextV306 b{
  margin-top:3px;
  font-size:11px;
  line-height:1.05;
}
.cbCostumeTuningTextV306 span{
  margin-top:2px;
  font-size:16px;
  font-weight:1000;
  line-height:1.04;
  overflow-wrap:anywhere;
}
.cbCostumeTuningTextV306 em{
  display:block;
  margin-top:3px;
  color:#5c5c5c;
  font-size:14px;
  font-style:normal;
  font-weight:1000;
}
.cbCostumeTuningCardV306.sp .cbCostumeTuningTextV306 em{
  color:#ffe100;
}
.cbCostumeTuningGemV306{
  width:70px;
  height:70px;
  margin-right:2px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:4px solid #777;
  clip-path:polygon(22% 0,78% 0,100% 50%,78% 100%,22% 100%,0 50%);
}
.cbCostumeTuningGemV306.red{background:#ff1717}
.cbCostumeTuningGemV306.yellow{background:#fff000}
.cbCostumeTuningGemV306.cyan{background:#16bfd0}
.cbCostumeTuningGemV306.violet{background:#bd17ee}
.cbCostumeTuningGemV306.green{background:#00ef22}
.cbCostumeTuningGemV306 img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  background:#111;
}
.cbCostumeTuningGemV306 strong{
  font-size:27px;
  color:#fff;
  text-shadow:2px 2px #000;
}

/* Carte de build normale : version réduite */
.cbCostumeTuningGridV306.mini{
  gap:8px;
  margin-top:10px;
}
.cbCostumeTuningColumnV306.mini{
  border-width:3px;
  border-radius:9px;
}
.cbCostumeTuningColumnV306.mini>h4{
  padding:5px;
  font-size:13px;
}
.cbCostumeTuningColumnV306.mini>div{
  gap:4px;
  padding:5px;
}
.cbCostumeTuningCardV306.mini{
  grid-template-columns:minmax(0,1fr) 51px;
  min-height:58px;
  border-width:3px;
  border-radius:8px;
  background:linear-gradient(to top,var(--cb-slot) 0 11px,#eef0f2 11px);
}
.cbCostumeTuningCardV306.mini.sp{background:#101010}
.cbCostumeTuningCardV306.mini .cbCostumeTuningTextV306{
  padding:5px 6px 14px;
}
.cbCostumeTuningCardV306.mini.sp .cbCostumeTuningTextV306{
  padding-bottom:5px;
}
.cbCostumeTuningCardV306.mini small{font-size:7px}
.cbCostumeTuningCardV306.mini b{font-size:8px}
.cbCostumeTuningCardV306.mini span{font-size:11px;line-height:1}
.cbCostumeTuningCardV306.mini .cbCostumeTuningGemV306{
  width:47px;
  height:47px;
  border-width:3px;
}

/* Trois builds affichés sur la fiche du personnage */
.cbCostumeTuningGridV306.micro{
  gap:5px;
  margin-top:7px;
}
.cbCostumeTuningColumnV306.micro{
  border-width:2px;
  border-radius:7px;
}
.cbCostumeTuningColumnV306.micro>h4{
  padding:3px;
  font-size:10px;
}
.cbCostumeTuningColumnV306.micro>div{
  gap:3px;
  padding:3px;
}
.cbCostumeTuningCardV306.micro{
  grid-template-columns:minmax(0,1fr) 38px;
  min-height:43px;
  border-width:2px;
  border-radius:6px;
  background:linear-gradient(to top,var(--cb-slot) 0 8px,#eef0f2 8px);
}
.cbCostumeTuningCardV306.micro.sp{background:#101010}
.cbCostumeTuningCardV306.micro .cbCostumeTuningTextV306{
  padding:3px 4px 10px;
}
.cbCostumeTuningCardV306.micro.sp .cbCostumeTuningTextV306{
  padding-bottom:3px;
}
.cbCostumeTuningCardV306.micro small{display:none}
.cbCostumeTuningCardV306.micro b{font-size:7px}
.cbCostumeTuningCardV306.micro span{
  margin-top:1px;
  font-size:8px;
  line-height:.95;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.cbCostumeTuningCardV306.micro .cbCostumeTuningGemV306{
  width:35px;
  height:35px;
  border-width:2px;
}

/* Créateur : mêmes cartes, sélectionnables */
.cbBuilderCostumeTuningV306{
  cursor:pointer;
  grid-template-columns:minmax(0,1fr) 76px;
  min-height:91px;
}
.cbBuilderCostumeTuningV306.selected{
  outline:4px solid #19e6ff;
  outline-offset:-2px;
}
.cbBuilderCostumeTuningV306.empty .cbCostumeTuningTextV306 b{
  display:none;
}
.cbBuilderCostumeTuningV306.empty .cbCostumeTuningTextV306 span{
  font-size:0;
}
.cbBuilderCostumeTuningV306.empty .cbCostumeTuningTextV306 span em{
  font-size:14px;
}
.cbBuildColumns>div{
  display:flex;
  flex-direction:column;
  gap:7px;
}
.cbBuildColumns .cbBuilderCostumeTuningV306{
  margin:0;
}

/* Détail d'un build */
.cbCostumeTuningGridV306.detail{
  padding:18px;
  background:#202b38;
  gap:16px;
}
.cbCostumeTuningColumnV306.detail>h4{
  padding:12px;
  font-size:24px;
}
.cbCostumeTuningColumnV306.detail>div{
  gap:9px;
  padding:10px;
}
.cbCostumeTuningCardV306.detail{
  grid-template-columns:minmax(0,1fr) 86px;
  min-height:103px;
}
.cbCostumeTuningCardV306.detail .cbCostumeTuningTextV306{
  padding:10px 13px 25px;
}
.cbCostumeTuningCardV306.detail.sp .cbCostumeTuningTextV306{
  padding-bottom:10px;
}
.cbCostumeTuningCardV306.detail small{font-size:11px}
.cbCostumeTuningCardV306.detail b{font-size:13px}
.cbCostumeTuningCardV306.detail span{font-size:19px}
.cbCostumeTuningCardV306.detail .cbCostumeTuningGemV306{
  width:80px;
  height:80px;
}

/* Anciennes vues V304/V305 masquées au cas où un cache les conserve */
.cbMiniSlots,
.cbDetailSlots,
.cbDetailSlotsV305,
.cbDetailSlot,
.cbDetailSlotV305,
.cbDetailGemV305{
  display:none!important;
}

@media(max-width:900px){
  .cbCostumeTuningGridV306,
  .cbCostumeTuningGridV306.detail{
    grid-template-columns:1fr;
  }
}


/* V307 — uniquement le créateur utilise les petites cartes de la page Costume */
.cbBuilderPickerV307{
  min-height:500px;
}
.cbPickerListV307{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:9px;
}
.cbCreatorPickerCardV307{
  position:relative;
  flex:0 0 auto;
  grid-template-columns:minmax(0,1fr) 82px!important;
  min-height:96px!important;
  margin:0!important;
  cursor:pointer;
  box-shadow:0 3px 0 #000;
}
.cbCreatorPickerCardV307:hover:not(:disabled){
  outline:4px solid #19e6ff;
  outline-offset:-2px;
  transform:translateY(-1px);
}
.cbCreatorPickerCardV307 .cbCostumeTuningTextV306{
  padding:9px 11px 23px!important;
}
.cbCreatorPickerCardV307.sp .cbCostumeTuningTextV306{
  padding-bottom:9px!important;
}
.cbCreatorPickerCardV307 .cbCostumeTuningTextV306 small{
  font-size:10px!important;
}
.cbCreatorPickerCardV307 .cbCostumeTuningTextV306 b{
  font-size:13px!important;
}
.cbCreatorPickerCardV307 .cbCostumeTuningTextV306 span{
  font-size:18px!important;
  line-height:1.04!important;
}
.cbCreatorPickerCardV307 .cbCostumeTuningGemV306{
  width:76px!important;
  height:76px!important;
}
.cbCreatorPickerCardV307.disabled{
  opacity:.32;
  cursor:not-allowed;
  filter:grayscale(.7);
}
.cbCreatorDuplicateV307{
  position:absolute;
  right:86px;
  bottom:4px;
  z-index:3;
  padding:3px 6px;
  border:2px solid #000;
  border-radius:5px;
  background:#e84f48;
  color:#fff;
  font-size:8px;
  font-style:normal;
  font-weight:1000;
}
.cbBuilderCostumeTuningV306{
  box-shadow:0 3px 0 #000;
}
.cbBuilderCostumeTuningV306.filled:hover,
.cbBuilderCostumeTuningV306.empty:hover{
  outline:4px solid #19e6ff;
  outline-offset:-2px;
}
.cbCreatorEmptyTitleV307{
  color:#6a6a6a;
}
.cbCreatorEmptyTextV307{
  color:#454545;
  font-size:16px!important;
}
.cbBuilderCostumeTuningV306.sp .cbCreatorEmptyTitleV307{
  color:#bcbcbc;
}
.cbBuilderCostumeTuningV306.sp .cbCreatorEmptyTextV307{
  color:#ffe100;
}
@media(max-width:700px){
  .cbCreatorPickerCardV307{
    grid-template-columns:minmax(0,1fr) 70px!important;
    min-height:86px!important;
  }
  .cbCreatorPickerCardV307 .cbCostumeTuningGemV306{
    width:65px!important;
    height:65px!important;
  }
}


/* V308 — le créateur réutilise directement le composant officiel Costume */
.cbOfficialCreatorScreenV308{
  margin:0 20px 18px!important;
  border-radius:12px!important;
}
.cbOfficialCreatorScreenV308 .gameTuningArea{
  padding:16px!important;
}
.cbOfficialCreatorScreenV308 .gameSlot{
  width:100%!important;
}
.cbOfficialCreatorScreenV308 .tuningPicker{
  min-width:0!important;
}
.cbOfficialCreatorScreenV308 .tuningOptions{
  max-height:610px!important;
}
.cbOfficialPickerWrapV308{
  min-width:0;
}
.cbOfficialRemoveV308{
  width:100%;
  margin:0 0 7px;
  padding:9px 12px;
  border:3px solid #000;
  border-radius:9px;
  background:#e84f48;
  color:#fff;
  font-weight:1000;
}
.cbOfficialCreatorScreenV308 .alreadyUsed{
  opacity:.28!important;
  filter:grayscale(.8)!important;
  cursor:not-allowed!important;
}

/* Désactive uniquement les anciennes imitations du créateur. */
#cbBuilderContent .cbBuilderBoard,
#cbBuilderContent .cbBuildColumns,
#cbBuilderContent .cbBuilderPickerV307,
#cbBuilderContent .cbCreatorPickerCardV307{
  display:none!important;
}

@media(max-width:1050px){
  .cbOfficialCreatorScreenV308 .gameTuningArea{
    grid-template-columns:1fr!important;
  }
}


/* V309 — ajustements demandés : rareté moins intrusive + slots costume plus officiels */
.cbCostumeChoiceImage{position:relative!important;overflow:hidden}
.cbCostumeRarity{
  left:6px!important;
  top:6px!important;
  min-width:auto!important;
  padding:3px 7px!important;
  border-width:3px!important;
  border-radius:10px!important;
  background:rgba(10,10,10,.92)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.cbCostumeRarity b{display:none!important}
.cbCostumeRarity small{
  margin:0!important;
  color:#ffe100!important;
  font-size:15px!important;
  font-weight:1000!important;
  letter-spacing:0!important;
  line-height:1!important;
}
.cbBuildCostume .cbCostumeRarity{
  left:8px!important;
  top:40px!important;
}
.cbCostumeSlots{
  left:7px!important;
  right:7px!important;
  bottom:7px!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-end!important;
}
.cbCostumeSlotBadge{
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  border:3px solid #000!important;
  border-radius:8px!important;
  background:#0b0b0b!important;
  color:#fff!important;
  font-style:normal!important;
  font-size:16px!important;
  font-weight:1000!important;
  box-shadow:0 2px 0 rgba(0,0,0,.55)!important;
  position:relative;
  overflow:hidden;
}
.cbCostumeSlotBadge::before{
  content:'';
  position:absolute;
  inset:3px;
  clip-path:polygon(22% 0,78% 0,100% 50%,78% 100%,22% 100%,0 50%);
  background:currentColor;
}
.cbCostumeSlotBadge{line-height:1}
.cbCostumeSlotBadge{position:relative}
.cbCostumeSlotBadge{z-index:0}
.cbCostumeSlotBadge{isolation:isolate}
.cbCostumeSlotBadge{font-family:Arial,sans-serif}
.cbCostumeSlotBadge::before{z-index:-1}
.cbCostumeSlotBadge.red{color:#ff1717}
.cbCostumeSlotBadge.yellow{color:#fff000}
.cbCostumeSlotBadge.cyan{color:#16bfd0}
.cbCostumeSlotBadge.violet{color:#bd17ee}
.cbCostumeSlotBadge.green{color:#00ef22}
.cbCostumeSlotBadge.gray{color:#d7d7d7}
.cbCostumeSlotBadge.right{color:#fff}
.cbCostumeSlotBadge.right.red::before{background:#ff1717}
.cbCostumeSlotBadge.right.yellow::before{background:#fff000}
.cbCostumeSlotBadge.right.cyan::before{background:#16bfd0}
.cbCostumeSlotBadge.right.violet::before{background:#bd17ee}
.cbCostumeSlotBadge.right.green::before{background:#00ef22}
.cbCostumeSlotBadge.right.gray::before{background:#d7d7d7}
.cbCostumeSlotBadge.left.red::before{background:#ff1717}
.cbCostumeSlotBadge.left.yellow::before{background:#fff000}
.cbCostumeSlotBadge.left.cyan::before{background:#16bfd0}
.cbCostumeSlotBadge.left.violet::before{background:#bd17ee}
.cbCostumeSlotBadge.left.green::before{background:#00ef22}
.cbCostumeSlotBadge.left.gray::before{background:#d7d7d7}
.cbCostumeSlotBadge.right{
  font-size:15px!important;
  text-shadow:1px 1px 0 #000!important;
}


/* V310 — icônes T.U.N.I.N.G officielles fournies */
.cbCostumeSlots .cbCostumeSlotBadge{
  width:42px!important;
  height:44px!important;
  display:block!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  clip-path:none!important;
  overflow:visible!important;
  color:inherit!important;
  text-shadow:none!important;
}
.cbCostumeSlots .cbCostumeSlotBadge::before,
.cbCostumeSlots .cbCostumeSlotBadge::after{
  content:none!important;
  display:none!important;
}
.cbCostumeSlots .cbCostumeSlotBadge img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
}


/* V315 — costumes plus gros dans le créateur + affichage build agrandi */
.cbCostumeChoices{
  gap:12px!important;
  padding:0 22px 18px!important;
}
.cbCostumeChoices button{
  flex:0 0 170px!important;
  padding:6px!important;
  border-radius:14px!important;
}
.cbCostumeChoiceImage{
  height:165px!important;
  border-radius:10px!important;
}
.cbCostumeChoices b,
.cbCostumeChoices span{
  margin-top:6px!important;
  font-size:12px!important;
}

.cbBuildList{
  grid-template-columns:repeat(auto-fit,minmax(500px,1fr))!important;
  gap:20px!important;
}
.cbBuildCard{
  grid-template-columns:190px 1fr!important;
  gap:16px!important;
  padding:16px!important;
  border-radius:18px!important;
}
.cbBuildCard.compact{
  grid-template-columns:120px 1fr!important;
  min-height:140px!important;
}
.cbBuildCard.compact .cbBuildCostume{
  height:120px!important;
}
.cbBuildCostume{
  height:210px!important;
  border-radius:14px!important;
}
.cbBuildTitleLine h3{
  font-size:24px!important;
}
.cbBuildMain p{
  font-size:16px!important;
}
.cbMiniSlots{gap:8px!important;}

.cbDetailPanel{
  width:min(1320px,98vw)!important;
}
.cbDetailHero{
  grid-template-columns:320px 1fr!important;
  gap:20px!important;
  padding:24px!important;
}
.cbDetailHero>div:first-child{
  height:350px!important;
}
.cbDetailHero h2{
  font-size:42px!important;
}
.cbDetailDescription{
  font-size:18px!important;
  line-height:1.55!important;
}
.cbDetailSlots{
  gap:12px!important;
  padding:18px!important;
}
.cbDetailSlot{
  grid-template-columns:84px 1fr!important;
  min-height:92px!important;
}
@media(max-width:1050px){
  .cbBuildList{grid-template-columns:1fr!important;}
  .cbDetailHero{grid-template-columns:1fr!important;}
}


/* V316 — agrandissement de l'affichage complet des builds recommandés */
.cbBuildList{
  grid-template-columns:1fr!important;
}
.cbBuildCard:not(.compact){
  grid-template-columns:245px minmax(0,1fr)!important;
  gap:20px!important;
  min-height:610px!important;
  padding:20px!important;
}
.cbBuildCard:not(.compact) .cbBuildCostume{
  height:285px!important;
  border-width:4px!important;
  border-radius:16px!important;
}
.cbBuildCard:not(.compact) .cbBuildTitleLine h3{
  font-size:29px!important;
  line-height:1.1!important;
}
.cbBuildCard:not(.compact) .cbBuildMeta{
  gap:8px!important;
  margin:10px 0!important;
}
.cbBuildCard:not(.compact) .cbBuildMeta span{
  padding:6px 10px!important;
  font-size:13px!important;
}
.cbBuildCard:not(.compact) .cbBuildMain p{
  margin:10px 0!important;
  font-size:18px!important;
}
.cbBuildCard:not(.compact) .cbHeart{
  min-width:82px!important;
  padding:9px 13px!important;
  font-size:16px!important;
}
.cbBuildCard:not(.compact) .cbRank{
  width:38px!important;
  height:38px!important;
  font-size:18px!important;
}

.cbBuildCard:not(.compact) .cbCostumeTuningGridV306.mini{
  gap:12px!important;
  margin-top:14px!important;
}
.cbBuildCard:not(.compact) .cbCostumeTuningColumnV306.mini{
  border-width:4px!important;
  border-radius:11px!important;
}
.cbBuildCard:not(.compact) .cbCostumeTuningColumnV306.mini>h4{
  padding:7px!important;
  font-size:16px!important;
}
.cbBuildCard:not(.compact) .cbCostumeTuningColumnV306.mini>div{
  gap:6px!important;
  padding:7px!important;
}
.cbBuildCard:not(.compact) .cbCostumeTuningCardV306.mini{
  grid-template-columns:minmax(0,1fr) 66px!important;
  min-height:76px!important;
  border-width:3px!important;
  border-radius:9px!important;
  background:linear-gradient(to top,var(--cb-slot) 0 14px,#eef0f2 14px)!important;
}
.cbBuildCard:not(.compact) .cbCostumeTuningCardV306.mini.sp{
  background:#101010!important;
}
.cbBuildCard:not(.compact) .cbCostumeTuningCardV306.mini .cbCostumeTuningTextV306{
  padding:7px 9px 18px!important;
}
.cbBuildCard:not(.compact) .cbCostumeTuningCardV306.mini.sp .cbCostumeTuningTextV306{
  padding-bottom:7px!important;
}
.cbBuildCard:not(.compact) .cbCostumeTuningCardV306.mini small{
  font-size:9px!important;
}
.cbBuildCard:not(.compact) .cbCostumeTuningCardV306.mini b{
  font-size:11px!important;
}
.cbBuildCard:not(.compact) .cbCostumeTuningCardV306.mini span{
  font-size:15px!important;
  line-height:1.05!important;
}
.cbBuildCard:not(.compact) .cbCostumeTuningCardV306.mini .cbCostumeTuningGemV306{
  width:61px!important;
  height:61px!important;
  border-width:3px!important;
}
.cbBuildCard:not(.compact) .cbBuildCostume .cbCostumeRarity{
  top:44px!important;
  left:10px!important;
  padding:4px 8px!important;
}
.cbBuildCard:not(.compact) .cbBuildCostume .cbCostumeRarity small{
  font-size:17px!important;
}

@media(max-width:900px){
  .cbBuildCard:not(.compact){
    grid-template-columns:190px minmax(0,1fr)!important;
    padding:14px!important;
  }
  .cbBuildCard:not(.compact) .cbBuildCostume{height:230px!important;}
  .cbBuildCard:not(.compact) .cbCostumeTuningGridV306.mini{grid-template-columns:1fr!important;}
}
@media(max-width:650px){
  .cbBuildCard:not(.compact){grid-template-columns:1fr!important;}
  .cbBuildCard:not(.compact) .cbBuildCostume{height:320px!important;}
}


/* V336 — affichage des T.U.N.I.N.G de build identique aux costumes officiels */
.cbCostumeTuningCardV306{display:none!important}
.cbCostumeTuningColumnV306>div{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  padding:8px!important;
}
.cbOfficialBuildTuningSlot.gameSlot{
  width:100%!important;
  min-height:76px!important;
  margin:0!important;
  cursor:default!important;
  text-align:left!important;
  grid-template-columns:minmax(0,1fr) 72px!important;
  box-shadow:inset -70px 0 0 #bfbfbf!important;
}
.cbOfficialBuildTuningSlot.gameSlot.spBand{
  background:#101010!important;
  color:#fff!important;
  border-color:var(--slot-color)!important;
  box-shadow:inset -84px 0 0 #444!important;
}
.cbOfficialBuildTuningSlot .slotBandText{
  min-width:0!important;
  padding:8px 12px!important;
}
.cbOfficialBuildTuningSlot .equippedChar{
  display:block!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1.05!important;
}
.cbOfficialBuildTuningSlot .equippedName{
  display:block!important;
  font-size:var(--equip-font,17px)!important;
  font-weight:1000!important;
  line-height:1.05!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.cbOfficialBuildTuningSlot .slotGem{
  width:64px!important;
  height:64px!important;
  flex:0 0 64px!important;
  margin-right:5px!important;
}
.cbOfficialBuildTuningSlot .slotGem img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
.cbOfficialBuildTuningSlot.mini{
  min-height:66px!important;
  grid-template-columns:minmax(0,1fr) 60px!important;
}
.cbOfficialBuildTuningSlot.mini .slotGem{
  width:54px!important;
  height:54px!important;
  flex-basis:54px!important;
}
.cbOfficialBuildTuningSlot.detail{
  min-height:88px!important;
  grid-template-columns:minmax(0,1fr) 80px!important;
}
.cbOfficialBuildTuningSlot.detail .slotGem{
  width:72px!important;
  height:72px!important;
  flex-basis:72px!important;
}
@media(max-width:700px){
  .cbOfficialBuildTuningSlot.gameSlot{min-height:70px!important;grid-template-columns:minmax(0,1fr) 62px!important}
  .cbOfficialBuildTuningSlot .slotGem{width:56px!important;height:56px!important;flex-basis:56px!important}
}


/* V337 — T.U.N.I.N.G des builds agrandis */
.cbOfficialBuildTuningSlot.gameSlot{
  min-height:96px!important;
  grid-template-columns:minmax(0,1fr) 92px!important;
  box-shadow:inset -92px 0 0 #bfbfbf!important;
  border-width:4px!important;
  border-radius:13px!important;
}
.cbOfficialBuildTuningSlot.gameSlot.spBand{
  box-shadow:inset -104px 0 0 #444!important;
}
.cbOfficialBuildTuningSlot .slotBandText{
  padding:13px 16px!important;
}
.cbOfficialBuildTuningSlot .equippedChar{
  font-size:14px!important;
  line-height:1.1!important;
  margin-bottom:3px!important;
}
.cbOfficialBuildTuningSlot .equippedName{
  font-size:20px!important;
  line-height:1.08!important;
}
.cbOfficialBuildTuningSlot .slotGem{
  width:82px!important;
  height:82px!important;
  flex:0 0 82px!important;
  margin-right:6px!important;
}
.cbOfficialBuildTuningSlot.mini{
  min-height:82px!important;
  grid-template-columns:minmax(0,1fr) 76px!important;
}
.cbOfficialBuildTuningSlot.mini .slotBandText{
  padding:10px 13px!important;
}
.cbOfficialBuildTuningSlot.mini .equippedChar{
  font-size:12px!important;
}
.cbOfficialBuildTuningSlot.mini .equippedName{
  font-size:17px!important;
}
.cbOfficialBuildTuningSlot.mini .slotGem{
  width:68px!important;
  height:68px!important;
  flex-basis:68px!important;
}
.cbOfficialBuildTuningSlot.detail{
  min-height:108px!important;
  grid-template-columns:minmax(0,1fr) 102px!important;
}
.cbOfficialBuildTuningSlot.detail .slotBandText{
  padding:15px 18px!important;
}
.cbOfficialBuildTuningSlot.detail .equippedChar{
  font-size:15px!important;
}
.cbOfficialBuildTuningSlot.detail .equippedName{
  font-size:22px!important;
}
.cbOfficialBuildTuningSlot.detail .slotGem{
  width:92px!important;
  height:92px!important;
  flex-basis:92px!important;
}
@media(max-width:700px){
  .cbOfficialBuildTuningSlot.gameSlot{
    min-height:84px!important;
    grid-template-columns:minmax(0,1fr) 74px!important;
  }
  .cbOfficialBuildTuningSlot .equippedChar{font-size:12px!important;}
  .cbOfficialBuildTuningSlot .equippedName{font-size:17px!important;}
  .cbOfficialBuildTuningSlot .slotGem{
    width:66px!important;
    height:66px!important;
    flex-basis:66px!important;
  }
}


/* ===== inline ===== */

/* V313 — cartes builds plus grandes + tags vides */
.pageFrame.buildsFrame .cardsGrid{
  grid-template-columns:repeat(auto-fit,minmax(230px,280px))!important;
  gap:24px!important;
}
.pageFrame.buildsFrame .cardsGrid .card{
  max-width:280px!important;
  min-height:650px!important;
}
.pageFrame.buildsFrame .cardsGrid .thumb{
  height:390px!important;
}
.pageFrame.buildsFrame .cardsGrid .cardBody{
  padding:16px!important;
}
.pageFrame.buildsFrame .cardsGrid .card h3{
  font-size:22px!important;
  min-height:48px!important;
}

.card .cardModeTag{
  font-size:0!important;
  color:transparent!important;
  text-shadow:none!important;
  min-height:40px!important;
  background:transparent!important;
  box-shadow:none!important;
  border:4px solid #000!important;
}
.card.characterMode .cardModeTag,
.card.costumeMode .cardModeTag,
.card.buildMode .cardModeTag,
.card.tuningMode .cardModeTag{
  background:transparent!important;
}


/* ===== inline ===== */

/* V314 — étoiles de rareté plus petites pour ne plus cacher la photo */
.costumeTileRarity{
  top:8px!important;
  left:8px!important;
  padding:1px 6px!important;
  border-radius:7px!important;
  font-size:12px!important;
  line-height:1.1!important;
  background:rgba(0,0,0,.88)!important;
  z-index:60!important;
}
.costumeTileStars,
.costumeTileRarity + .costumeTileStars{
  top:8px!important;
  right:8px!important;
  padding:2px 5px!important;
  border:2px solid #000!important;
  border-radius:8px!important;
  font-size:14px!important;
  line-height:1!important;
  letter-spacing:-1px!important;
  background:rgba(0,0,0,.82)!important;
  color:#ffd900!important;
  min-width:auto!important;
  max-width:50px!important;
  text-align:center!important;
  z-index:60!important;
}


/* ===== inline ===== */

/* V315 — build recommandé : 4 persos par ligne, sans dézoom bizarre */
.pageFrame.buildsFrame .cardsGrid{
  grid-template-columns:repeat(4,minmax(0,255px))!important;
  gap:22px!important;
  justify-content:center!important;
}
.pageFrame.buildsFrame .cardsGrid .card{
  max-width:255px!important;
  min-height:620px!important;
}
.pageFrame.buildsFrame .cardsGrid .thumb{
  height:365px!important;
}
.pageFrame.buildsFrame .cardsGrid .cardBody{
  padding:15px!important;
}
.pageFrame.buildsFrame .cardsGrid .card h3{
  font-size:22px!important;
  min-height:48px!important;
}
@media(max-width:1150px){
  .pageFrame.buildsFrame .cardsGrid{grid-template-columns:repeat(3,minmax(0,255px))!important;}
}
@media(max-width:820px){
  .pageFrame.buildsFrame .cardsGrid{grid-template-columns:repeat(2,minmax(0,255px))!important;}
}
@media(max-width:540px){
  .pageFrame.buildsFrame .cardsGrid{grid-template-columns:1fr!important;}
  .pageFrame.buildsFrame .cardsGrid .card{max-width:320px!important;}
}


/* ===== inline ===== */

/* V320 — suppression complète des bandes en haut des cartes */
.cardModeTag{display:none!important;}


/* ===== css/community-auth.css ===== */
/* MHUR Nexus V323 — Comptes Google / Discord */
.mhurAccountButton{position:absolute;right:135px;top:10px;height:52px;max-width:220px;display:flex;align-items:center;gap:9px;padding:6px 12px;border:2px solid #49658d;border-radius:15px;background:#132139;color:#fff;font-weight:1000;z-index:3}
.mhurAccountButton:hover{border-color:#ffe100}.mhurAccountButton img,.mhurAccountAvatar{width:38px;height:38px;border-radius:50%;object-fit:cover;background:#283b59;border:2px solid #ffe100;display:grid;place-items:center;font-size:15px;color:#fff;flex:0 0 38px}.mhurAccountButtonText{min-width:0;text-align:left}.mhurAccountButtonText b,.mhurAccountButtonText small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mhurAccountButtonText small{font-size:10px;color:#bcd0eb;margin-top:2px}
.mhurAuthOverlay{position:fixed;inset:0;z-index:120000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.88)}.mhurAuthOverlay.open{display:flex}.mhurAuthPanel{width:min(510px,96vw);overflow:hidden;border:5px solid #000;border-radius:22px;background:linear-gradient(145deg,#162944,#080f1b);color:#fff;box-shadow:0 0 0 3px #3c5c88,0 18px 50px #000}.mhurAuthHead{position:relative;padding:24px 68px 18px 22px;background:linear-gradient(90deg,#0c2039,#21568b)}.mhurAuthHead span{display:inline-block;padding:5px 9px;background:#ffe100;color:#000;font-size:11px;font-weight:1000;transform:skew(-7deg)}.mhurAuthHead h2{margin:10px 0 3px;font-size:30px}.mhurAuthHead p{margin:0;color:#d2e2f8}.mhurAuthClose{position:absolute;right:13px;top:13px;width:45px;height:45px;border:4px solid #000;border-radius:50%;background:#e64e48;color:#fff;font-size:27px;font-weight:1000}.mhurAuthBody{padding:20px}.mhurAuthProvider{width:100%;min-height:58px;margin:8px 0;display:flex;align-items:center;justify-content:center;gap:12px;border:4px solid #000;border-radius:13px;font-size:17px;font-weight:1000;box-shadow:0 4px 0 #000}.mhurAuthProvider.google{background:#fff;color:#202124}.mhurAuthProvider.discord{background:#5865f2;color:#fff}.mhurAuthProvider i{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:rgba(0,0,0,.1);font-style:normal;font-size:20px}.mhurAuthGuest{width:100%;margin-top:12px;padding:11px;border:2px solid #48678e;border-radius:11px;background:#17263c;color:#fff;font-weight:900}.mhurAuthHint{margin:16px 0 0;color:#aebfd5;text-align:center;font-size:12px;line-height:1.4}.mhurProfileCard{text-align:center}.mhurProfileLarge{width:94px;height:94px;margin:0 auto 11px;border-radius:50%;object-fit:cover;background:#253a59;border:4px solid #ffe100;display:grid;place-items:center;font-size:32px;font-weight:1000}.mhurProfileCard h3{margin:5px 0;font-size:26px}.mhurProfileCard p{margin:4px 0;color:#bed0e8}.mhurProviderBadge{display:inline-block;margin:9px 0;padding:5px 9px;border-radius:999px;background:#263d5e;color:#ffe100;font-size:11px;font-weight:1000}.mhurLogout{width:100%;margin-top:17px;padding:12px;border:4px solid #000;border-radius:12px;background:#e64e48;color:#fff;font-weight:1000;box-shadow:0 4px 0 #000}.mhurAuthError{display:none;margin:0 0 12px;padding:10px;border:2px solid #ff6570;border-radius:9px;background:#48151a;color:#ffd8dc;font-weight:800}.mhurAuthError.show{display:block}
@media(max-width:700px){.mhurAccountButton{right:76px;max-width:56px;padding:6px}.mhurAccountButtonText{display:none}.lang{right:8px;padding:12px 10px}.brand{font-size:13px;max-width:145px}}

.mhurAuthProfileOpen{width:100%;margin-top:12px;padding:11px;border:3px solid #000;border-radius:10px;background:#19c9de;color:#000;font-weight:1000}
.mhurAuthProvider .mhurDiscordIcon{display:inline-flex!important;align-items:center;justify-content:center;width:34px!important;height:34px!important;border-radius:9px;background:#5865F2;color:#fff;flex:0 0 34px}.mhurAuthProvider .mhurDiscordIcon svg{width:24px;height:24px;display:block}


/* ===== css/community-profiles.css ===== */
.mhurPublicProfileModal{position:fixed;inset:0;z-index:12000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.9)}.mhurPublicProfileModal.open{display:flex}.mhurPublicProfilePanel{position:relative;width:min(950px,97vw);max-height:94vh;overflow:auto;border:5px solid #000;border-radius:20px;background:#0c1421;color:#fff;box-shadow:0 0 0 3px #3c5b84}.mhurPublicProfileClose{position:sticky;float:right;top:10px;right:10px;z-index:5;width:48px;height:48px;border:4px solid #000;border-radius:50%;background:#e44e49;color:#fff;font-size:28px;font-weight:1000}.mhurPublicProfileHero{display:flex;align-items:center;gap:20px;padding:28px;background:linear-gradient(120deg,#173f6b,#111a2b)}.mhurPublicProfileAvatar{width:120px;height:120px;flex:0 0 120px;border:5px solid #000;border-radius:50%;object-fit:cover;background:#ffe100;color:#000;display:grid;place-items:center;font-size:38px;font-weight:1000}.mhurInitialAvatar{display:grid;place-items:center}.mhurPublicProfileHero h2{margin:6px 0;font-size:38px}.mhurPublicProfileHero p{margin:0;color:#c8d8ee;font-weight:800}.mhurPublicProfileProvider{display:inline-block;padding:5px 9px;border:2px solid #000;border-radius:999px;background:#5865f2;font-size:11px;font-weight:1000;text-transform:uppercase}.mhurProfileStats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:16px;background:#121e30}.mhurProfileStats>div{padding:14px;border:2px solid #365273;border-radius:12px;background:#09111e;text-align:center}.mhurProfileStats b,.mhurProfileStats span{display:block}.mhurProfileStats b{font-size:25px;color:#ffe100}.mhurProfileStats span{margin-top:3px;color:#c7d7ed;font-weight:900}.mhurProfileBuilds{padding:20px}.mhurProfileBuilds h3{margin:0 0 13px;font-size:25px}.mhurProfileBuild{display:grid;grid-template-columns:100px 1fr;gap:12px;width:100%;margin:9px 0;padding:9px;border:3px solid #000;border-radius:13px;background:#182942;color:#fff;text-align:left}.mhurProfileBuild:hover{outline:3px solid #19dcef}.mhurProfileBuildImg{height:90px;border-radius:8px;overflow:hidden;background:#cfd6d4}.mhurProfileBuildImg img{width:100%;height:100%;object-fit:contain;object-position:center bottom}.mhurProfileBuild b,.mhurProfileBuild small,.mhurProfileBuild em{display:block}.mhurProfileBuild b{font-size:18px}.mhurProfileBuild small{margin-top:5px;color:#c7d7ed}.mhurProfileBuild em{margin-top:8px;color:#ffe100;font-style:normal;font-weight:900}.mhurProfileLoading,.mhurProfileEmpty{padding:50px;text-align:center;color:#c7d7ed;font-weight:900}.cbAuthorButton{display:inline-flex!important;align-items:center;gap:6px!important;padding:4px 8px!important;border:1px solid #41648e!important;border-radius:999px!important;background:#233958!important;color:#fff!important;font-size:11px!important;font-weight:900!important}.cbAuthorButton:hover{outline:2px solid #19dcef}.cbAuthorAvatar{width:24px;height:24px;border:2px solid #000;border-radius:50%;object-fit:cover;background:#ffe100;color:#000;display:grid;place-items:center;font-size:9px;font-weight:1000}.cbFavorite{display:inline-flex;align-items:center;justify-content:center;min-width:44px;padding:7px 10px;border:3px solid #000;border-radius:999px;background:#f5f5f5;color:#111;font-size:20px;font-weight:1000}.cbFavorite.active{background:#ffe100}.cbBuildActions{display:flex;gap:6px;align-items:flex-start}.cbDetailProfileButton{display:inline-flex;align-items:center;gap:8px;margin:8px 0;padding:7px 10px;border:3px solid #000;border-radius:999px;background:#17253c;color:#fff;font-weight:1000}.cbDetailProfileButton .cbAuthorAvatar{width:32px;height:32px}.cbDetailFavorite{margin-left:8px}@media(max-width:650px){.mhurPublicProfileHero{flex-direction:column;text-align:center}.mhurProfileStats{grid-template-columns:1fr}.mhurProfileBuild{grid-template-columns:75px 1fr}.mhurProfileBuildImg{height:75px}}


/* ===== css/launch.css ===== */

/* MHUR Nexus V326 — préparation lancement */
.mhurLaunchBar{position:fixed;left:18px;bottom:18px;z-index:9000;display:flex;align-items:center;gap:8px;max-width:min(520px,calc(100vw - 36px));padding:9px 12px;border:3px solid #000;border-radius:12px;background:#101a29;color:#fff;box-shadow:0 4px 0 #000;font-size:12px;font-weight:900}
.mhurLaunchDot{width:11px;height:11px;flex:0 0 11px;border-radius:50%;background:#ffb000}.mhurLaunchBar.online .mhurLaunchDot{background:#20df69}.mhurLaunchBar.offline .mhurLaunchDot{background:#ef4a55}.mhurLaunchBar button{margin-left:auto;padding:5px 8px;border:2px solid #000;border-radius:7px;background:#ffe100;color:#000;font-weight:1000}
.mhurLegalFooter{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:22px auto 90px;padding:12px;color:#b9c8dc;font-size:12px}.mhurLegalFooter button{padding:6px 10px;border:1px solid #405d84;border-radius:8px;background:#101a29;color:#fff;font-weight:900}.mhurLegalFooter span{width:100%;text-align:center;line-height:1.4}.mhurLegalFooter .mhurFooterVersion{font-weight:800}.mhurLegalFooter .mhurFooterDisclaimer{max-width:850px;margin:0 auto;color:#9fb0c5;font-size:11px;line-height:1.55}
.mhurLegalOverlay{position:fixed;inset:0;z-index:12000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.88)}.mhurLegalOverlay.open{display:flex}.mhurLegalPanel{position:relative;width:min(850px,96vw);max-height:92vh;overflow:auto;padding:24px;border:5px solid #000;border-radius:18px;background:#101721;color:#fff;box-shadow:0 0 0 3px #405d84}.mhurLegalPanel h2{margin:0 55px 14px 0;color:#ffe100}.mhurLegalPanel h3{margin:20px 0 7px;color:#20d9ff}.mhurLegalPanel p,.mhurLegalPanel li{line-height:1.55;color:#d8e5f7}.mhurLegalClose{position:absolute;top:10px;right:10px;width:42px;height:42px;border:3px solid #000;border-radius:50%;background:#e84f48;color:#fff;font-size:26px;font-weight:1000}.mhurDeleteRequest{margin-top:20px;padding:14px;border:2px solid #7d2f39;border-radius:10px;background:#29151a}.mhurDeleteRequest button{padding:9px 12px;border:3px solid #000;border-radius:9px;background:#e84f48;color:#fff;font-weight:1000}.mhurDeleteRequest button:disabled{opacity:.5}
@media(max-width:700px){.mhurLaunchBar{left:10px;right:10px;bottom:10px;max-width:none}.mhurLegalFooter{margin-bottom:110px}}


/* ===== inline ===== */

.nexusHomeHero{position:relative;overflow:hidden;margin:10px 0 26px;padding:34px 22px 30px;text-align:center;border:1px solid rgba(88,166,255,.36);border-radius:22px;background:radial-gradient(circle at 50% -30%,rgba(26,101,190,.42),transparent 58%),linear-gradient(145deg,#07111f,#0b1d35 58%,#07111f);box-shadow:0 18px 42px rgba(0,0,0,.3),inset 0 0 0 1px rgba(255,255,255,.025)}
.nexusHomeHero:after{content:"";position:absolute;left:12%;right:12%;bottom:0;height:3px;background:linear-gradient(90deg,transparent,#ffe000,transparent)}
.nexusHomeEyebrow{font-weight:900;letter-spacing:.25em;color:#eaf3ff;font-size:clamp(.78rem,1.8vw,1.02rem)}
.nexusHomeHero h1{margin:5px 0 8px;color:#ffe000;font-size:clamp(2.7rem,8vw,5.4rem);line-height:.95;letter-spacing:.08em;text-shadow:0 4px 0 #0b2749,0 0 28px rgba(255,224,0,.18)}
.nexusHomeTagline{margin:15px auto 8px;font-size:clamp(.9rem,2.2vw,1.22rem);font-weight:850;color:#fff;letter-spacing:.035em}
.nexusHomeTagline span{color:#ffe000;padding:0 .25em}
.nexusHomeIntro{margin:9px auto 0;color:#bcd0e8;font-size:clamp(.82rem,1.8vw,1rem)}
.nexusLegacyTitle{display:none!important}
@media(max-width:600px){.nexusHomeHero{padding:28px 13px 25px;border-radius:17px}.nexusHomeTagline{line-height:1.75}.nexusHomeTagline span{padding:0 .08em}}


/* ===== css/v28-admin-media.css ===== */
/* MHUR Nexus V2.8 — administration, collage et aperçu des médias */
.mhurPasteHint{display:inline-flex;align-items:center;gap:.35rem;color:#aebdd3;font-size:.82rem;font-weight:800}
.mhurMediaDraftPreview{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.mhurMediaDraftGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));width:100%}
.mhurMediaDraftCard{position:relative;min-width:110px;max-width:220px;border:1px solid #43628b;border-radius:14px;padding:7px;background:#0b1628;overflow:hidden}
.mhurMediaDraftCard img,.mhurMediaDraftCard video{display:block;width:100%;height:120px;object-fit:cover;border-radius:9px;background:#050b14}
.mhurMediaDraftCard small{display:block;margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c9d5e8;font-size:.72rem}
.mhurMediaDraftRemove{position:absolute;top:10px;right:10px;width:28px;height:28px;border:0;border-radius:50%;background:#0a101ddd;color:white;font-size:20px;line-height:1;cursor:pointer}
.mhurCommentActions,.modCommentActions{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}
.mhurCommentActions button,.modCommentActions button{border:1px solid #46658f;border-radius:9px;padding:5px 8px;background:#152742;color:white;font-weight:800;cursor:pointer}
.mhurCommentActions .danger,.modCommentActions .danger{border-color:#a63a4b;background:#3b1520}
.mhurCommentInlineEdit,.modCommentInlineEdit{display:grid;gap:8px;margin-top:8px}
.mhurCommentInlineEdit textarea,.modCommentInlineEdit textarea{width:100%;min-height:90px;resize:vertical;border:1px solid #5476a5;border-radius:12px;background:#071224;color:#fff;padding:10px;font:inherit}
.mhurCommentInlineEdit>div,.modCommentInlineEdit>div{display:flex;gap:8px;flex-wrap:wrap}
.modCommentHead{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.modCommentContent{min-width:0;flex:1}
.modOwnerActions{display:flex;gap:8px;flex-wrap:wrap}
.modDelete,.cbDeleteOwn{background:#541b25!important;border-color:#d65368!important;color:#fff!important}
@media(max-width:640px){.mhurMediaDraftCard{max-width:160px}.mhurMediaDraftCard img,.mhurMediaDraftCard video{height:96px}.mhurCommentActions,.modCommentActions{width:100%;margin-left:0}.mhurCommentActions button,.modCommentActions button{font-size:.78rem}}


/* ===== css/nexus-header-links.css ===== */
/* MHUR Nexus — boutons Réseaux sociaux et Youtubeurs */
.nexusHeaderLinks{position:absolute;left:76px;top:11px;display:flex;gap:9px;z-index:45}
.nexusHeaderBtn{height:50px;padding:0 15px;border:2px solid #49658d;border-radius:14px;background:#132139;color:#fff;font-weight:900;display:flex;align-items:center;gap:9px;box-shadow:0 4px 12px rgba(0,0,0,.22);white-space:nowrap}
.nexusHeaderBtn:hover,.nexusHeaderBtn[aria-expanded="true"]{border-color:#ffe000;background:#1d3152;color:#ffe000}
.nexusHeaderIcon{font-size:21px;line-height:1}.nexusHeaderChevron{font-size:12px;opacity:.8}
.nexusLinksOverlay{position:fixed;inset:72px 0 0 0;z-index:43;pointer-events:none}
.nexusLinksOverlay.is-open{pointer-events:auto}
.nexusLinksBackdrop{position:absolute;inset:0;background:rgba(1,5,12,.38);opacity:0;transition:.16s}
.nexusLinksOverlay.is-open .nexusLinksBackdrop{opacity:1}
.nexusLinksPanel{position:absolute;top:12px;left:76px;width:min(390px,calc(100vw - 28px));max-height:calc(100vh - 100px);overflow:auto;background:#0c1422;border:2px solid #4c6a95;border-radius:16px;box-shadow:0 18px 55px rgba(0,0,0,.55);transform:translateY(-8px) scale(.98);opacity:0;transition:.16s;padding:12px}
.nexusLinksOverlay.is-open .nexusLinksPanel{transform:none;opacity:1}
.nexusLinksTitle{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 8px 12px;font-size:20px;font-weight:1000;color:#fff}
.nexusLinksClose{width:36px;height:36px;border-radius:10px;background:#182843;color:#fff;font-size:22px}
.nexusLinkRow,.nexusLanguageRow{width:100%;display:flex;align-items:center;gap:12px;padding:12px;margin:5px 0;border:1px solid #314865;border-radius:13px;background:#111d30;color:#fff;text-align:left;text-decoration:none;transition:.13s}
.nexusLinkRow:hover,.nexusLanguageRow:hover{transform:translateX(3px);border-color:#ffe000;background:#192a45}
.nexusLinkRow.is-disabled{opacity:.68;cursor:default}.nexusLinkRow.is-disabled:hover{transform:none;border-color:#314865;background:#111d30}
.nexusServiceIcon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;flex:0 0 42px;background:#243857;font-size:22px;overflow:hidden}
.nexusServiceIcon svg{width:25px;height:25px;display:block;fill:currentColor}.nexusServiceIcon.discord{background:#5865f2}.nexusServiceIcon.youtube{background:#ff0033}.nexusServiceIcon.email{background:#1f8fdf}.nexusServiceIcon.website{background:#754fd6}
.nexusLinkText{min-width:0;flex:1}.nexusLinkText b{display:block;font-size:16px;overflow-wrap:anywhere}.nexusLinkText small{display:block;margin-top:4px;color:#b9c9e1;line-height:1.25}.nexusLinkArrow{font-size:20px;color:#ffe000}
.nexusBackBtn{display:flex;align-items:center;gap:8px;background:transparent;color:#8ec7ff;font-weight:900;padding:7px 4px 10px}
.nexusChannelAvatar{width:54px;height:54px;border-radius:50%;object-fit:cover;background:#243857;border:2px solid #ffe000;display:grid;place-items:center;font-weight:1000;font-size:18px;flex:0 0 54px}
.nexusEmptyHint{margin:10px 5px 4px;padding:11px;border-radius:11px;background:#241e06;border:1px solid #8c7600;color:#ffe57a;font-size:13px;line-height:1.35}
@media(max-width:950px){.nexusHeaderBtn{width:50px;padding:0;justify-content:center}.nexusHeaderBtnLabel,.nexusHeaderChevron{display:none}}
@media(max-width:620px){.nexusHeaderLinks{left:69px;gap:5px}.nexusHeaderBtn{width:42px;height:42px;border-radius:12px}.nexusLinksPanel{left:10px;top:8px;width:calc(100vw - 20px)}.nexusLinksOverlay{inset:64px 0 0}.top{min-height:64px}.nexusHeaderLinks{top:11px}}

/* v1.2 — Creator directory and Discord avatars */
.nexusCreatorGrid{display:grid;gap:14px;padding:2px 0 6px}
.nexusCreatorCard{display:flex;gap:14px;padding:15px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));box-shadow:0 8px 24px rgba(0,0,0,.18)}
.nexusCreatorAvatar{width:66px;height:66px;min-width:66px;border-radius:18px;object-fit:cover;border:1px solid rgba(255,255,255,.16);background:#17172a}
.nexusCreatorInitials{display:grid;place-items:center;font-weight:900;font-size:20px;letter-spacing:.04em;background:linear-gradient(135deg,#653cff,#ec3e94);color:#fff}
.nexusCreatorInfo{min-width:0;flex:1}
.nexusCreatorHeading{display:flex;align-items:center;gap:8px}
.nexusCreatorHeading h3{margin:0;font-size:17px;line-height:1.25;color:#fff}
.nexusCreatorFlag{font-size:17px}
.nexusCreatorInfo p{margin:6px 0 11px;color:rgba(255,255,255,.72);font-size:13px;line-height:1.42}
.nexusCreatorLinks{display:flex;flex-wrap:wrap;gap:7px}
.nexusPlatformBtn{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:7px 10px;border-radius:10px;text-decoration:none!important;color:#fff!important;font-weight:800;font-size:12px;border:1px solid rgba(255,255,255,.14);transition:transform .15s ease,filter .15s ease,box-shadow .15s ease}
.nexusPlatformBtn:hover{transform:translateY(-2px);filter:brightness(1.12);box-shadow:0 7px 18px rgba(0,0,0,.24)}
.nexusPlatformBtn .nexusServiceIcon{width:17px;height:17px;min-width:17px;background:transparent;padding:0}
.nexusPlatformBtn .nexusServiceIcon svg{width:15px;height:15px;fill:currentColor}
.nexusPlatformBtn.is-youtube{background:#e62117}
.nexusPlatformBtn.is-twitch{background:#9146ff}
.nexusPlatformBtn.is-discord{background:#5865f2}
.nexusPlatformBtn.is-x{background:#111}
.nexusPlatformBtn.is-tiktok{background:#1c1c24}
.nexusLinkRow .nexusChannelAvatar{object-fit:cover;background:#17172a}
@media (max-width:560px){.nexusCreatorCard{align-items:flex-start;padding:13px}.nexusCreatorAvatar{width:54px;height:54px;min-width:54px;border-radius:14px}.nexusPlatformBtn{padding:7px 9px}.nexusPlatformBtn span:last-child{font-size:11px}}

/* v1.3 — cadrage, icônes et avatars */
.nexusLinkRow .nexusChannelAvatar{object-fit:contain!important;object-position:center!important;padding:2px;background:#050914!important}
.nexusCreatorAvatar{object-fit:cover!important;object-position:center!important;background:#0b1220!important}
.nexusPlatformBtn .nexusServiceIcon{display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;overflow:visible!important}
.nexusPlatformBtn .nexusServiceIcon>span{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;line-height:1!important;font-family:Arial,Helvetica,sans-serif!important;font-weight:900!important}
.nexusPlatformBtn.is-x .nexusServiceIcon>span{font-size:15px!important;transform:none!important}
.nexusPlatformBtn.is-tiktok .nexusServiceIcon>span{font-size:18px!important;transform:translateY(-1px)!important}


/* v1.5 — drapeaux fiables sur PC + alignement des plateformes */
.nexusFlagIcon{display:inline-flex;width:30px;height:20px;border-radius:4px;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,.28);vertical-align:middle;background:#fff}
.nexusFlagIcon svg{display:block;width:100%;height:100%}
.nexusLanguageFlag{padding:0!important;background:#243857!important;overflow:visible!important}
.nexusLanguageFlag .nexusFlagIcon{width:30px;height:20px}
.nexusCreatorFlag{display:inline-flex;align-items:center}
.nexusCreatorFlag .nexusFlagIcon{width:24px;height:16px;border-radius:3px}
.nexusPlatformBtn{justify-content:flex-start!important;gap:10px!important;min-width:118px!important;padding-left:13px!important;padding-right:13px!important}
.nexusPlatformBtn .nexusServiceIcon{flex:0 0 18px!important;width:18px!important;height:18px!important;justify-content:flex-start!important}
.nexusPlatformBtn.is-x{min-width:76px!important}
.nexusPlatformBtn.is-tiktok{min-width:108px!important}
@media(max-width:560px){.nexusPlatformBtn{min-width:116px!important}.nexusPlatformBtn.is-x{min-width:76px!important}.nexusPlatformBtn.is-tiktok{min-width:108px!important}}


/* ===== css/v31-header-admin-layout.css ===== */
/* MHUR Nexus v3.1 — barre administrateur sans chevauchement.
   Les actions de droite sont regroupées dans un vrai conteneur flex sur ordinateur,
   au lieu d'utiliser trois positions absolues susceptibles de se recouvrir. */

html,body{
  max-width:100%!important;
  overflow-x:hidden!important;
}
@supports (overflow:clip){
  html,body{overflow-x:clip!important}
}
.top{max-width:100vw!important}

@media (min-width:761px){
  .top .mhurTopActionsV31{
    position:absolute!important;
    right:14px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    z-index:2147483606!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:9px!important;
    min-width:0!important;
    max-width:min(49vw,590px)!important;
    margin:0!important;
    padding:0!important;
    pointer-events:none;
  }
  .top .mhurTopActionsV31 > *{pointer-events:auto}

  /* Annule les anciennes coordonnées absolues : le conteneur flex gère l'espace. */
  .top .mhurTopActionsV31 > .mhurAdminTopButton,
  .top .mhurTopActionsV31 > .mhurAccountButton,
  .top .mhurTopActionsV31 > .lang{
    position:static!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
    translate:none!important;
    margin:0!important;
    flex:0 0 auto!important;
  }

  .top .mhurTopActionsV31 > .mhurAdminTopButton{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    height:48px!important;
    min-width:0!important;
    max-width:180px!important;
    padding:0 13px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    z-index:auto!important;
  }
  .top .mhurTopActionsV31 > .mhurAccountButton{
    min-width:0!important;
    max-width:205px!important;
    z-index:auto!important;
  }
  .top .mhurTopActionsV31 > .mhurAccountButton .mhurAccountButtonText{
    min-width:0!important;
  }
  .top .mhurTopActionsV31 > .lang{
    z-index:auto!important;
  }
}

/* Fenêtres plus serrées ou zoom navigateur élevé : on compacte sans recouvrir. */
@media (min-width:761px) and (max-width:1250px){
  .top .mhurTopActionsV31{gap:6px!important;max-width:47vw!important}
  .top .mhurTopActionsV31 > .mhurAdminTopButton{
    max-width:125px!important;
    padding:0 9px!important;
    font-size:12px!important;
  }
  .top .mhurTopActionsV31 > .mhurAccountButton{max-width:155px!important}
  .top .mhurTopActionsV31 > .lang{padding-left:10px!important;padding-right:10px!important}
}

@media (min-width:761px) and (max-width:1020px){
  .top .mhurTopActionsV31 > .mhurAdminTopButton{
    width:46px!important;
    max-width:46px!important;
    padding:0!important;
    font-size:0!important;
  }
  .top .mhurTopActionsV31 > .mhurAdminTopButton::before{
    content:'🛡️';
    font-size:18px;
    line-height:1;
  }
  .top .mhurTopActionsV31 > .mhurAccountButton{max-width:135px!important}
}


/* ===== css/v511-responsive-ui.css ===== */
/* MHUR Nexus v5.11 — responsive stable, panneaux non coupés et modales sûres.
   Ce fichier est chargé en dernier dans le <head> pour éviter un premier rendu cassé. */

:root{
  --mhur-top-height:72px;
  --mhur-header-bottom:72px;
  --mhur-safe-top:env(safe-area-inset-top,0px);
  --mhur-safe-bottom:env(safe-area-inset-bottom,0px);
}

/* Les panneaux des réseaux/créateurs restent toujours entièrement dans l'écran. */
.nexusLinksOverlay{
  position:fixed!important;
  inset:var(--mhur-header-bottom,72px) 0 0!important;
  z-index:2147482995!important;
  box-sizing:border-box!important;
  padding:12px!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  overflow:hidden!important;
}
.nexusLinksOverlay.is-open{display:flex!important}
.nexusLinksBackdrop{position:absolute!important;inset:0!important}
.nexusLinksPanel{
  position:relative!important;
  inset:auto!important;
  z-index:1!important;
  width:min(440px,calc(100vw - 24px))!important;
  max-width:100%!important;
  max-height:calc(100dvh - var(--mhur-header-bottom,72px) - 24px)!important;
  margin:0 0 0 64px!important;
  padding:12px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  transform:translateY(-8px) scale(.98)!important;
  scroll-padding-top:64px!important;
}
.nexusLinksOverlay.is-open .nexusLinksPanel{transform:none!important}
.nexusLinksTitle{
  position:sticky!important;
  top:-12px!important;
  z-index:3!important;
  min-height:54px!important;
  margin:0 0 8px!important;
  padding:14px 4px 10px!important;
  background:#0c1422!important;
  line-height:1.12!important;
}
.nexusLinksTitle>span{min-width:0!important;overflow-wrap:anywhere!important}
.nexusLinksClose{flex:0 0 44px!important;width:44px!important;height:44px!important}

/* Fond cliquable du menu mobile. */
.mhurDrawerBackdropV511{
  position:fixed;
  inset:var(--mhur-header-bottom,72px) 0 0;
  z-index:2147482980;
  display:none;
  background:rgba(0,0,0,.56);
  backdrop-filter:blur(2px);
}
.mhurDrawerBackdropV511.open{display:block}

/* Toutes les grandes fenêtres respectent le haut et le bas de l'iPhone/PWA. */
.mhurPublicProfileModal,
.mhurProfileDirectoryV30,
.mhurAuthOverlay,
.mhurModerationOverlay,
.mhurUserModerationOverlay,
.mhurUserAdminOverlayV29,
#mhurUserAdminOverlayV29,
#mhurAppealDialogV51{
  box-sizing:border-box!important;
  align-items:flex-start!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  padding-top:max(12px,var(--mhur-safe-top))!important;
  padding-right:max(8px,env(safe-area-inset-right,0px))!important;
  padding-bottom:max(12px,var(--mhur-safe-bottom))!important;
  padding-left:max(8px,env(safe-area-inset-left,0px))!important;
}
.mhurPublicProfilePanel,
.mhurProfileDirectoryPanelV30,
.mhurAuthPanel,
.mhurModerationPanel,
.mhurUserModerationDialog,
.mhurUserAdminDialogV29,
#mhurAppealDialogV51>*,
.mhurAppealPanelV51{
  box-sizing:border-box!important;
  max-height:calc(100dvh - var(--mhur-safe-top) - var(--mhur-safe-bottom) - 24px)!important;
  margin:auto!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
}
.mhurModerationPanel,
.mhurUserAdminDialogV29,
.mhurPublicProfilePanel{scroll-padding-top:72px!important}
.mhurModerationPanel h2,
.mhurUserAdminDialogV29 h2{overflow-wrap:anywhere!important}
.mhurModerationClose,
.mhurUserAdminCloseV29,
.mhurPublicProfileClose,
.mhurProfileDirectoryCloseV30{
  z-index:20!important;
}

/* Profil public : le profil et les statistiques restent avant les publications. */
#mhurPublicProfileBody{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  height:auto!important;
  overflow:visible!important;
}
#mhurPublicProfileBody>.mhurProfileAdminV29{order:1!important}
#mhurPublicProfileBody>.mhurPublicProfileHero{order:2!important}
#mhurPublicProfileBody>.mhurProfileStats{order:3!important}
#mhurPublicProfileBody>.mhurProfileBuilds{order:4!important}
#mhurPublicProfileBody>*{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  flex:0 0 auto!important;
  transform:none!important;
}

@media (max-width:760px){
  :root{
    --mhur-top-height:112px;
    --mhur-header-bottom:112px;
  }
  html{scroll-padding-top:calc(var(--mhur-top-height) + 10px)!important}
  body{padding-top:var(--mhur-top-height)!important}

  /* Le nom est sur sa ligne, puis toutes les commandes sur UNE ligne égale.
     display:contents aplatit les deux wrappers et évite les calculs fragiles. */
  html body>header.top,
  html body header.top,
  html body header.top.mhurMobileHeaderV57,
  html body header.top.mhurMobileHeaderV58,
  html body header.top.mhurMobileHeaderV59,
  html body header.top.mhurMobileHeaderV510,
  html body header.top.mhurMobileHeaderV511{
    position:fixed!important;
    inset:0 0 auto 0!important;
    z-index:2147483000!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100vw!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:max(7px,var(--mhur-safe-top)) max(7px,env(safe-area-inset-right,0px)) 7px max(7px,env(safe-area-inset-left,0px))!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:6px!important;
    overflow:visible!important;
    background:#070b13!important;
    border-bottom:2px solid #263e61!important;
    box-shadow:0 7px 20px rgba(0,0,0,.42)!important;
    isolation:isolate!important;
  }

  header.top>.mhurMobileBrandRowV57{
    order:1!important;
    display:flex!important;
    width:100%!important;
    height:39px!important;
    min-height:39px!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  header.top .mhurMobileBrandRowV57>.brand,
  header.top>.brand{
    position:static!important;
    inset:auto!important;
    display:flex!important;
    width:100%!important;
    height:39px!important;
    min-height:39px!important;
    margin:0!important;
    padding:0 5px!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    transform:none!important;
    text-align:center!important;
    white-space:normal!important;
    font-size:15px!important;
    line-height:.92!important;
    letter-spacing:.9px!important;
  }
  header.top .brand span{font-size:12px!important;line-height:1!important}

  header.top>.mhurMobileToolbarV57{
    order:2!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-auto-flow:column!important;
    grid-auto-columns:minmax(0,1fr)!important;
    width:100%!important;
    min-width:0!important;
    height:54px!important;
    min-height:54px!important;
    gap:6px!important;
    align-items:stretch!important;
    overflow:visible!important;
  }
  header.top .mhurMobileToolbarV57>.nexusHeaderLinks,
  header.top .mhurMobileToolbarV57>.mhurTopActionsV31{
    display:contents!important;
  }
  header.top .mhurMobileToolbarV57>.menuBtn,
  header.top .mhurMobileToolbarV57 .nexusHeaderBtn,
  header.top .mhurMobileToolbarV57 #mhurAdminButton,
  header.top .mhurMobileToolbarV57 .mhurAdminTopButton,
  header.top .mhurMobileToolbarV57 #mhurAccountButton,
  header.top .mhurMobileToolbarV57 .mhurAccountButton,
  header.top .mhurMobileToolbarV57 .lang{
    position:static!important;
    inset:auto!important;
    translate:none!important;
    transform:none!important;
    box-sizing:border-box!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:54px!important;
    min-height:54px!important;
    margin:0!important;
    padding:0 4px!important;
    align-items:center!important;
    justify-content:center!important;
    gap:0!important;
    border-radius:14px!important;
    overflow:hidden!important;
    pointer-events:auto!important;
  }
  header.top .mhurMobileToolbarV57>.menuBtn{font-size:0!important}
  header.top .menuBtnLines{display:flex!important;width:29px!important;gap:5px!important}
  header.top .menuBtnLines>span{width:29px!important;height:3px!important}
  header.top .nexusHeaderBtnLabel,
  header.top .nexusHeaderChevron,
  header.top .mhurAccountButtonText{display:none!important}
  header.top .nexusHeaderIcon{font-size:25px!important;line-height:1!important;transform:none!important}
  header.top #mhurAdminButton,
  header.top .mhurAdminTopButton{font-size:0!important}
  header.top #mhurAdminButton::before,
  header.top .mhurAdminTopButton::before{content:'🛡️'!important;display:block!important;font-size:24px!important;line-height:1!important}
  header.top .mhurAccountAvatar,
  header.top .mhurAccountButton img{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    flex:0 0 40px!important;
    margin:0!important;
  }
  header.top .lang{font-size:15px!important;white-space:nowrap!important}

  main#app.wrap,#app.wrap,#app{margin-top:0!important;padding-top:0!important}
  html body .drawer,
  html body #drawer.drawer{
    position:fixed!important;
    top:calc(var(--mhur-header-bottom,var(--mhur-top-height)) + 2px)!important;
    bottom:0!important;
    height:auto!important;
    max-height:calc(100dvh - var(--mhur-header-bottom,var(--mhur-top-height)) - 2px)!important;
    z-index:2147482990!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
  }
  .mhurDrawerBackdropV511{inset:calc(var(--mhur-header-bottom,var(--mhur-top-height)) + 2px) 0 0!important}

  .nexusLinksOverlay{
    inset:calc(var(--mhur-header-bottom,var(--mhur-top-height)) + 2px) 0 0!important;
    padding:10px!important;
    justify-content:center!important;
  }
  .nexusLinksPanel{
    width:min(560px,100%)!important;
    max-height:calc(100dvh - var(--mhur-header-bottom,var(--mhur-top-height)) - 22px)!important;
    margin:0!important;
    border-radius:18px!important;
  }
  .nexusLinksTitle{font-size:clamp(22px,6vw,30px)!important}
  .nexusLinkRow,.nexusLanguageRow{min-height:88px!important}

  /* Les modales ne touchent plus la barre système et gardent des titres lisibles. */
  .mhurPublicProfileModal,
  .mhurProfileDirectoryV30,
  .mhurAuthOverlay,
  .mhurModerationOverlay,
  .mhurUserModerationOverlay,
  .mhurUserAdminOverlayV29,
  #mhurUserAdminOverlayV29,
  #mhurAppealDialogV51{
    padding-top:max(12px,var(--mhur-safe-top))!important;
    padding-left:7px!important;
    padding-right:7px!important;
  }
  .mhurPublicProfilePanel,
  .mhurProfileDirectoryPanelV30,
  .mhurAuthPanel,
  .mhurModerationPanel,
  .mhurUserModerationDialog,
  .mhurUserAdminDialogV29,
  .mhurAppealPanelV51{
    width:100%!important;
    max-width:760px!important;
    max-height:calc(100dvh - var(--mhur-safe-top) - var(--mhur-safe-bottom) - 24px)!important;
    border-radius:20px!important;
  }
  .mhurModerationPanel,.mhurUserAdminDialogV29{padding:18px!important}
  .mhurModerationPanel.admin{width:100%!important}
  .mhurAdminHead{align-items:flex-start!important;padding-right:64px!important}
  .mhurModerationPanel h2{font-size:clamp(28px,8vw,44px)!important;line-height:1.05!important}
  .mhurModerationClose{top:10px!important;right:10px!important}

  .mhurPublicProfileHero{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    min-height:0!important;
    padding:24px 16px 20px!important;
    gap:12px!important;
    text-align:center!important;
  }
  .mhurPublicProfileAvatar{width:112px!important;height:112px!important;flex-basis:112px!important}
  .mhurPublicProfileHero h2{font-size:clamp(30px,8vw,42px)!important;overflow-wrap:anywhere!important}
  .mhurProfileStats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;padding:14px!important}
  .mhurProfileBuilds{padding:20px 16px!important}
  .mhurProfileBuilds h3{font-size:clamp(25px,7vw,34px)!important}
}

@media (max-width:390px){
  header.top>.mhurMobileBrandRowV57,
  header.top .mhurMobileBrandRowV57>.brand{height:36px!important;min-height:36px!important}
  header.top .mhurMobileBrandRowV57>.brand{font-size:13px!important}
  header.top .brand span{font-size:10px!important}
  header.top>.mhurMobileToolbarV57{height:49px!important;min-height:49px!important;gap:4px!important}
  header.top .mhurMobileToolbarV57>.menuBtn,
  header.top .mhurMobileToolbarV57 .nexusHeaderBtn,
  header.top .mhurMobileToolbarV57 #mhurAdminButton,
  header.top .mhurMobileToolbarV57 .mhurAdminTopButton,
  header.top .mhurMobileToolbarV57 #mhurAccountButton,
  header.top .mhurMobileToolbarV57 .mhurAccountButton,
  header.top .mhurMobileToolbarV57 .lang{height:49px!important;min-height:49px!important;border-radius:12px!important;padding:0 2px!important}
  header.top .nexusHeaderIcon{font-size:22px!important}
  header.top #mhurAdminButton::before,
  header.top .mhurAdminTopButton::before{font-size:21px!important}
  header.top .mhurAccountAvatar,
  header.top .mhurAccountButton img{width:35px!important;height:35px!important;min-width:35px!important;flex-basis:35px!important}
  header.top .lang{font-size:12px!important}
  .nexusLinksPanel{padding:10px!important}
  .nexusLinksTitle{font-size:22px!important}
  .nexusLinkRow,.nexusLanguageRow{padding:11px!important;gap:10px!important}
  .nexusServiceIcon{width:48px!important;height:48px!important;flex-basis:48px!important}
}

/* Priorité finale sur les anciennes grilles v5.3–v5.10. */
@media (max-width:760px){
  html body header.top.mhurMobileHeaderV511 > .mhurMobileToolbarV57{
    display:grid!important;
    grid-template-columns:none!important;
    grid-template-rows:54px!important;
    grid-auto-flow:column!important;
    grid-auto-columns:minmax(0,1fr)!important;
  }
  html body header.top.mhurMobileHeaderV511 > .mhurMobileToolbarV57 > .nexusHeaderLinks,
  html body header.top.mhurMobileHeaderV511 > .mhurMobileToolbarV57 > .mhurTopActionsV31{
    display:contents!important;
    position:static!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
  }
  html body header.top.mhurMobileHeaderV511 .mhurMobileToolbarV57 > .menuBtn,
  html body header.top.mhurMobileHeaderV511 .mhurMobileToolbarV57 .nexusHeaderBtn,
  html body header.top.mhurMobileHeaderV511 .mhurMobileToolbarV57 #mhurAdminButton,
  html body header.top.mhurMobileHeaderV511 .mhurMobileToolbarV57 .mhurAdminTopButton,
  html body header.top.mhurMobileHeaderV511 .mhurMobileToolbarV57 #mhurAccountButton,
  html body header.top.mhurMobileHeaderV511 .mhurMobileToolbarV57 .mhurAccountButton,
  html body header.top.mhurMobileHeaderV511 .mhurMobileToolbarV57 .lang{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
}
@media (max-width:390px){
  html body header.top.mhurMobileHeaderV511 > .mhurMobileToolbarV57{
    grid-template-rows:49px!important;
  }
}


/* ===== css/v512-header-first-paint.css ===== */
/* MHUR Nexus v5.12 — header stable dès le tout premier affichage.
   La structure complète est déjà dans le HTML : aucun bouton n'est injecté après le rendu. */

/* Le bouton de modération garde sa colonne pendant la vérification du rôle.
   Ainsi les autres boutons ne bougent jamais quand la session est restaurée. */
html body header.top[data-mhur-header-version="512"] .mhurMobileToolbarV57 #mhurAdminButton[data-mhur-admin="pending"],
html body header.top[data-mhur-header-version="512"] .mhurMobileToolbarV57 #mhurAdminButton[data-mhur-admin="0"]{
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
html body header.top[data-mhur-header-version="512"] .mhurMobileToolbarV57 #mhurAdminButton[data-mhur-admin="1"]{
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}

@media (max-width:760px){
  /* Valeur correcte avant même la première mesure JavaScript. */
  :root{
    --mhur-top-height:112px;
    --mhur-header-bottom:112px;
    --mhur-header-visual-bottom:112px;
  }

  html body>header.top[data-mhur-header-version="512"]{
    visibility:visible!important;
    opacity:1!important;
    contain:layout paint style;
  }

  /* Six emplacements fixes, présents dès le HTML initial. */
  html body header.top[data-mhur-header-version="512"]>.mhurMobileToolbarV57{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    grid-template-rows:54px!important;
    grid-auto-flow:column!important;
    grid-auto-columns:auto!important;
    width:100%!important;
    height:54px!important;
    min-height:54px!important;
    gap:6px!important;
  }
  html body header.top[data-mhur-header-version="512"]>.mhurMobileToolbarV57>.nexusHeaderLinks,
  html body header.top[data-mhur-header-version="512"]>.mhurMobileToolbarV57>.mhurTopActionsV31{
    display:contents!important;
  }

  /* Aucun texte asynchrone ne peut modifier la largeur d'une colonne mobile. */
  html body header.top[data-mhur-header-version="512"] .nexusHeaderBtnLabel,
  html body header.top[data-mhur-header-version="512"] .nexusHeaderChevron,
  html body header.top[data-mhur-header-version="512"] .mhurAccountButtonText{
    display:none!important;
  }
}

@media (max-width:390px){
  :root{
    --mhur-top-height:102px;
    --mhur-header-bottom:102px;
    --mhur-header-visual-bottom:102px;
  }
  html body header.top[data-mhur-header-version="512"]>.mhurMobileToolbarV57{
    grid-template-rows:49px!important;
    height:49px!important;
    min-height:49px!important;
    gap:4px!important;
  }
}


/* ===== css/v513-header-locked-mobile.css ===== */
/* MHUR Nexus v5.13 — header mobile verrouillé.
   - Le nom du site garde toujours une seule ligne + NEXUS dessous.
   - La ligne de boutons conserve une hauteur fixe.
   - Aucun bouton ne change de position pendant la restauration du compte.
   - Les anciennes transitions/transformations du menu et de la langue sont neutralisées. */


/* La place de Modération reste réservée, même pendant la vérification du rôle. */
html body header.top[data-mhur-header-version="513"] #mhurAdminButton[data-mhur-admin="pending"],
html body header.top[data-mhur-header-version="513"] #mhurAdminButton[data-mhur-admin="0"]{
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
html body header.top[data-mhur-header-version="513"] #mhurAdminButton[data-mhur-admin="1"]{
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}

@media (max-width:760px){
  :root{
    --mhur-mobile-safe-top:max(7px, env(safe-area-inset-top, 0px));
    --mhur-mobile-header-height:calc(108px + var(--mhur-mobile-safe-top));
    --mhur-top-height:var(--mhur-mobile-header-height);
    --mhur-header-bottom:var(--mhur-mobile-header-height);
    --mhur-header-visual-bottom:var(--mhur-mobile-header-height);
  }

  html{scroll-padding-top:calc(var(--mhur-mobile-header-height) + 10px)!important}
  html body{padding-top:var(--mhur-mobile-header-height)!important}

  html body>header.top[data-mhur-header-version="513"],
  html body header.top[data-mhur-header-version="513"]{
    position:fixed!important;
    inset:0 0 auto 0!important;
    z-index:2147483000!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100vw!important;
    height:auto!important;
    min-height:var(--mhur-mobile-header-height)!important;
    margin:0!important;
    padding:var(--mhur-mobile-safe-top) max(7px,env(safe-area-inset-right,0px)) 7px max(7px,env(safe-area-inset-left,0px))!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:39px 54px!important;
    grid-template-areas:"brand" "toolbar"!important;
    gap:6px!important;
    align-items:stretch!important;
    justify-items:stretch!important;
    overflow:visible!important;
    background:#070b13!important;
    border-bottom:2px solid #263e61!important;
    box-shadow:0 7px 20px rgba(0,0,0,.42)!important;
    isolation:isolate!important;
    contain:layout paint style!important;
  }

  /* Aucune animation héritée ne peut faire monter/descendre les boutons de bord. */
  html body header.top[data-mhur-header-version="513"],
  html body header.top[data-mhur-header-version="513"] *,
  html body header.top[data-mhur-header-version="513"] *::before,
  html body header.top[data-mhur-header-version="513"] *::after{
    animation:none!important;
  }
  html body header.top[data-mhur-header-version="513"] .menuBtn,
  html body header.top[data-mhur-header-version="513"] .lang,
  html body header.top[data-mhur-header-version="513"] .nexusHeaderBtn,
  html body header.top[data-mhur-header-version="513"] #mhurAdminButton,
  html body header.top[data-mhur-header-version="513"] #mhurAccountButton{
    transition:none!important;
    translate:none!important;
    transform:none!important;
    top:auto!important;
    bottom:auto!important;
    align-self:stretch!important;
  }

  html body header.top[data-mhur-header-version="513"]>.mhurMobileBrandRowV57{
    grid-area:brand!important;
    order:initial!important;
    position:static!important;
    box-sizing:border-box!important;
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:39px!important;
    min-height:39px!important;
    margin:0!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
  }

  html body header.top[data-mhur-header-version="513"] .mhurMobileBrandRowV57>.brand{
    position:static!important;
    inset:auto!important;
    box-sizing:border-box!important;
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:39px!important;
    min-height:39px!important;
    margin:0!important;
    padding:0 4px!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-align:center!important;
    font-size:clamp(13px,3.5vw,16px)!important;
    font-weight:1000!important;
    line-height:.95!important;
    letter-spacing:.85px!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    transform:none!important;
  }
  html body header.top[data-mhur-header-version="513"] .brand span{
    display:block!important;
    flex:0 0 auto!important;
    white-space:nowrap!important;
    font-size:clamp(10px,2.7vw,12px)!important;
    line-height:1!important;
    letter-spacing:.7px!important;
  }

  html body header.top[data-mhur-header-version="513"]>.mhurMobileToolbarV57{
    grid-area:toolbar!important;
    order:initial!important;
    position:static!important;
    inset:auto!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    grid-template-rows:54px!important;
    grid-auto-flow:column!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:54px!important;
    min-height:54px!important;
    margin:0!important;
    padding:0!important;
    gap:6px!important;
    align-items:stretch!important;
    justify-items:stretch!important;
    overflow:visible!important;
  }
  html body header.top[data-mhur-header-version="513"]>.mhurMobileToolbarV57>.nexusHeaderLinks,
  html body header.top[data-mhur-header-version="513"]>.mhurMobileToolbarV57>.mhurTopActionsV31{
    display:contents!important;
  }

  /* Colonnes explicites : les boutons extrêmes ne peuvent jamais changer de rang. */
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57>.menuBtn{grid-column:1!important;grid-row:1!important}
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 .nexusHeaderLinks>.nexusHeaderBtn:nth-child(1){grid-column:2!important;grid-row:1!important}
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 .nexusHeaderLinks>.nexusHeaderBtn:nth-child(2){grid-column:3!important;grid-row:1!important}
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 #mhurAdminButton{grid-column:4!important;grid-row:1!important}
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 #mhurAccountButton{grid-column:5!important;grid-row:1!important}
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 .lang{grid-column:6!important;grid-row:1!important}

  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57>.menuBtn,
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 .nexusHeaderBtn,
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 #mhurAdminButton,
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 .mhurAdminTopButton,
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 #mhurAccountButton,
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 .mhurAccountButton,
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 .lang{
    position:static!important;
    inset:auto!important;
    box-sizing:border-box!important;
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:54px!important;
    min-height:54px!important;
    max-height:54px!important;
    margin:0!important;
    padding:0 4px!important;
    align-items:center!important;
    justify-content:center!important;
    align-self:stretch!important;
    justify-self:stretch!important;
    gap:0!important;
    border-radius:14px!important;
    overflow:hidden!important;
    line-height:1!important;
    vertical-align:middle!important;
    transform:none!important;
  }

  html body header.top[data-mhur-header-version="513"] .nexusHeaderBtnLabel,
  html body header.top[data-mhur-header-version="513"] .nexusHeaderChevron,
  html body header.top[data-mhur-header-version="513"] .mhurAccountButtonText{display:none!important}
  html body header.top[data-mhur-header-version="513"] .nexusHeaderIcon{font-size:25px!important;line-height:1!important;transform:none!important}
  html body header.top[data-mhur-header-version="513"] #mhurAdminButton,
  html body header.top[data-mhur-header-version="513"] .mhurAdminTopButton{font-size:0!important}
  html body header.top[data-mhur-header-version="513"] #mhurAdminButton::before,
  html body header.top[data-mhur-header-version="513"] .mhurAdminTopButton::before{content:'🛡️'!important;display:block!important;font-size:24px!important;line-height:1!important;margin:0!important}
  html body header.top[data-mhur-header-version="513"] .mhurAccountAvatar,
  html body header.top[data-mhur-header-version="513"] .mhurAccountButton img{width:40px!important;height:40px!important;min-width:40px!important;flex:0 0 40px!important;margin:0!important}
  html body header.top[data-mhur-header-version="513"] .lang{font-size:15px!important;white-space:nowrap!important}
  html body header.top[data-mhur-header-version="513"] .langPart,
  html body header.top[data-mhur-header-version="513"] .langPart.active{transform:none!important;transition:none!important}

  /* Le contenu et les panneaux utilisent tout de suite la bonne hauteur, sans saut initial. */
  html body .drawer,
  html body #drawer.drawer{top:calc(var(--mhur-mobile-header-height) + 2px)!important;max-height:calc(100dvh - var(--mhur-mobile-header-height) - 2px)!important}
  html body .mhurDrawerBackdropV511{inset:calc(var(--mhur-mobile-header-height) + 2px) 0 0!important}
  html body .nexusLinksOverlay{inset:calc(var(--mhur-mobile-header-height) + 2px) 0 0!important}
}

@media (max-width:390px){
  :root{
    --mhur-mobile-header-height:calc(100px + var(--mhur-mobile-safe-top));
  }
  html body>header.top[data-mhur-header-version="513"],
  html body header.top[data-mhur-header-version="513"]{
    grid-template-rows:36px 49px!important;
    gap:6px!important;
  }
  html body header.top[data-mhur-header-version="513"]>.mhurMobileBrandRowV57,
  html body header.top[data-mhur-header-version="513"] .mhurMobileBrandRowV57>.brand{height:36px!important;min-height:36px!important}
  html body header.top[data-mhur-header-version="513"] .mhurMobileBrandRowV57>.brand{font-size:13px!important;letter-spacing:.55px!important}
  html body header.top[data-mhur-header-version="513"] .brand span{font-size:10px!important}
  html body header.top[data-mhur-header-version="513"]>.mhurMobileToolbarV57{grid-template-rows:49px!important;height:49px!important;min-height:49px!important;gap:4px!important}
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57>.menuBtn,
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 .nexusHeaderBtn,
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 #mhurAdminButton,
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 .mhurAdminTopButton,
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 #mhurAccountButton,
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 .mhurAccountButton,
  html body header.top[data-mhur-header-version="513"] .mhurMobileToolbarV57 .lang{height:49px!important;min-height:49px!important;max-height:49px!important;border-radius:12px!important;padding:0 2px!important}
  html body header.top[data-mhur-header-version="513"] .nexusHeaderIcon{font-size:22px!important}
  html body header.top[data-mhur-header-version="513"] #mhurAdminButton::before,
  html body header.top[data-mhur-header-version="513"] .mhurAdminTopButton::before{font-size:21px!important}
  html body header.top[data-mhur-header-version="513"] .mhurAccountAvatar,
  html body header.top[data-mhur-header-version="513"] .mhurAccountButton img{width:35px!important;height:35px!important;min-width:35px!important;flex-basis:35px!important}
  html body header.top[data-mhur-header-version="513"] .lang{font-size:12px!important}
}


/* ===== css/v516-final-targeted-fixes.css ===== */
/* MHUR Nexus v5.16 — correctifs ciblés.
   1) Header ordinateur stable dès le premier affichage.
   2) Panneaux Réseaux/Créateurs réellement sous les deux lignes du header mobile.
   3) Présentation des médias existants lors de la modification d'un mod. */

/* Le HTML initial utilise volontairement les conteneurs mobiles pour éviter les
   sauts sur téléphone. Sur ordinateur, ces conteneurs sont neutralisés dès le
   premier rendu, avant l'exécution du JavaScript. */
@media (min-width:761px){
  html body > header.top,
  html body header.top{
    position:relative!important;
    box-sizing:border-box!important;
    display:flex!important;
    width:100%!important;
    height:72px!important;
    min-height:72px!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
  }

  html body header.top > .mhurMobileBrandRowV57,
  html body header.top > .mhurMobileToolbarV57{
    display:contents!important;
  }

  html body header.top > .menuBtn,
  html body header.top .mhurMobileToolbarV57 > .menuBtn{
    position:absolute!important;
    inset:auto auto auto 14px!important;
    top:50%!important;
    margin:0!important;
    translate:none!important;
    transform:translateY(-50%)!important;
  }

  html body header.top > .nexusHeaderLinks,
  html body header.top .mhurMobileToolbarV57 > .nexusHeaderLinks{
    position:absolute!important;
    inset:auto auto auto 76px!important;
    top:50%!important;
    margin:0!important;
    translate:none!important;
    transform:translateY(-50%)!important;
  }

  html body header.top > .brand,
  html body header.top .mhurMobileBrandRowV57 > .brand{
    position:absolute!important;
    inset:auto!important;
    top:50%!important;
    left:50%!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    translate:none!important;
    transform:translate(-50%,-50%)!important;
  }

  html body header.top > .mhurTopActionsV31,
  html body header.top .mhurMobileToolbarV57 > .mhurTopActionsV31{
    position:absolute!important;
    inset:auto 14px auto auto!important;
    top:50%!important;
    margin:0!important;
    translate:none!important;
    transform:translateY(-50%)!important;
  }

  html body header.top .menuBtn,
  html body header.top .nexusHeaderLinks,
  html body header.top .brand,
  html body header.top .mhurTopActionsV31{
    transition-property:background-color,border-color,color,box-shadow,opacity!important;
  }
}

@media (max-width:760px){
  /* La valeur est mesurée sur le bas de la deuxième ligne (toolbar), pas
     uniquement sur la boîte du header qui peut être plus petite sur iOS. */
  html body .nexusLinksOverlay{
    position:fixed!important;
    top:var(--mhur-links-panel-top,calc(var(--mhur-mobile-header-height,112px) + 4px))!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    inset-block-start:var(--mhur-links-panel-top,calc(var(--mhur-mobile-header-height,112px) + 4px))!important;
    box-sizing:border-box!important;
    padding:12px max(10px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px))!important;
    align-items:flex-start!important;
    justify-content:center!important;
    overflow:hidden!important;
  }

  html body .nexusLinksPanel{
    position:relative!important;
    inset:auto!important;
    top:0!important;
    box-sizing:border-box!important;
    width:min(560px,100%)!important;
    max-width:100%!important;
    max-height:calc(100dvh - var(--mhur-links-panel-top,calc(var(--mhur-mobile-header-height,112px) + 4px)) - 14px)!important;
    margin:0 auto!important;
    padding:18px 12px 12px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scroll-padding-top:0!important;
    translate:none!important;
    transform:none!important;
  }

  html body .nexusLinksOverlay.is-open .nexusLinksPanel{
    opacity:1!important;
    translate:none!important;
    transform:none!important;
  }

  html body .nexusLinksTitle{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    z-index:5!important;
    box-sizing:border-box!important;
    min-height:58px!important;
    margin:0 0 12px!important;
    padding:8px 54px 12px 4px!important;
    line-height:1.14!important;
    overflow:visible!important;
    translate:none!important;
    transform:none!important;
  }
}

/* Médias déjà enregistrés dans la fenêtre de modification d'un mod. */
.modsForm .mhurModFilesDraft,
.modsForm .mhurMediaDraftPreview{
  width:100%;
}
.modsForm .mhurModFileDraftCard{
  position:relative;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 32px;
  gap:10px;
  align-items:center;
  width:100%;
  margin:8px 0;
  padding:10px;
  border:1px solid #43628b;
  border-radius:12px;
  background:#0b1628;
  color:#fff;
}
.modsForm .mhurModFileDraftCard > span{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:10px;
  background:#172943;
  font-size:22px;
}
.modsForm .mhurModFileDraftCard > div{min-width:0}
.modsForm .mhurModFileDraftCard b,
.modsForm .mhurModFileDraftCard small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.modsForm .mhurModFileDraftCard small{margin-top:3px;color:#b8cae2}
.modsForm .mhurExistingMediaCard{box-shadow:inset 4px 0 0 #ffe000}
.modsForm .mhurNewMediaCard{box-shadow:inset 4px 0 0 #38bdf8}
.modsForm .mhurMediaStateBadge{
  display:inline-block!important;
  width:auto!important;
  height:auto!important;
  margin:0 0 6px!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  background:#263b5b!important;
  color:#ffe000!important;
  font-size:.7rem!important;
  font-weight:900!important;
  line-height:1!important;
}


/* ===== css/v517-header-panels-final.css ===== */
/* MHUR Nexus v5.17 — correctif final ciblé du header et des panneaux.
   - Les boutons Réseaux sociaux / Créateurs de contenu sont stylés et placés
     dès le premier rendu ordinateur.
   - Sur téléphone, les panneaux commencent réellement sous les DEUX lignes
     du header et leur titre ne peut plus être restauré dans une position coupée. */

@media (min-width:761px){
  html body > header.top,
  html body header.top{
    position:relative!important;
    display:flex!important;
    box-sizing:border-box!important;
    width:100%!important;
    height:72px!important;
    min-height:72px!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
  }

  html body header.top > .mhurMobileBrandRowV57,
  html body header.top > .mhurMobileToolbarV57{
    display:contents!important;
  }

  html body header.top .menuBtn{
    position:absolute!important;
    top:50%!important;
    right:auto!important;
    bottom:auto!important;
    left:14px!important;
    width:50px!important;
    height:50px!important;
    margin:0!important;
    translate:none!important;
    transform:translateY(-50%)!important;
  }

  html body header.top .nexusHeaderLinks{
    position:absolute!important;
    top:50%!important;
    right:auto!important;
    bottom:auto!important;
    left:76px!important;
    z-index:45!important;
    display:flex!important;
    width:auto!important;
    height:50px!important;
    margin:0!important;
    padding:0!important;
    align-items:stretch!important;
    gap:9px!important;
    translate:none!important;
    transform:translateY(-50%)!important;
  }

  html body header.top .nexusHeaderBtn{
    -webkit-appearance:none!important;
    appearance:none!important;
    position:static!important;
    display:flex!important;
    box-sizing:border-box!important;
    width:auto!important;
    min-width:0!important;
    height:50px!important;
    margin:0!important;
    padding:0 15px!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    border:2px solid #49658d!important;
    border-radius:14px!important;
    background:#132139!important;
    color:#fff!important;
    box-shadow:0 4px 12px rgba(0,0,0,.22)!important;
    font-size:16px!important;
    font-weight:900!important;
    line-height:1!important;
    white-space:nowrap!important;
    translate:none!important;
    transform:none!important;
  }
  html body header.top .nexusHeaderBtn:hover,
  html body header.top .nexusHeaderBtn[aria-expanded="true"]{
    border-color:#ffe000!important;
    background:#1d3152!important;
    color:#ffe000!important;
  }
  html body header.top .nexusHeaderIcon{font-size:21px!important;line-height:1!important}
  html body header.top .nexusHeaderBtnLabel{display:inline!important}
  html body header.top .nexusHeaderChevron{display:inline!important;font-size:12px!important;opacity:.8!important}

  html body header.top .brand{
    position:absolute!important;
    top:50%!important;
    right:auto!important;
    bottom:auto!important;
    left:50%!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    translate:none!important;
    transform:translate(-50%,-50%)!important;
  }

  html body header.top .mhurTopActionsV31{
    position:absolute!important;
    top:50%!important;
    right:14px!important;
    bottom:auto!important;
    left:auto!important;
    z-index:2147483606!important;
    display:flex!important;
    width:auto!important;
    min-width:0!important;
    max-width:min(49vw,590px)!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:9px!important;
    pointer-events:none!important;
    translate:none!important;
    transform:translateY(-50%)!important;
  }
  html body header.top .mhurTopActionsV31 > *{pointer-events:auto!important}
  html body header.top .mhurTopActionsV31 > .mhurAdminTopButton,
  html body header.top .mhurTopActionsV31 > .mhurAccountButton,
  html body header.top .mhurTopActionsV31 > .lang{
    position:static!important;
    inset:auto!important;
    margin:0!important;
    flex:0 0 auto!important;
    translate:none!important;
    transform:none!important;
  }
}

@media (min-width:761px) and (max-width:950px){
  html body header.top .nexusHeaderBtn{
    width:50px!important;
    min-width:50px!important;
    padding:0!important;
  }
  html body header.top .nexusHeaderBtnLabel,
  html body header.top .nexusHeaderChevron{display:none!important}
}

@media (max-width:760px){
  :root{
    --mhur-v517-header-fallback:calc(108px + env(safe-area-inset-top,0px));
    --mhur-v517-panel-top:max(var(--mhur-v517-measured-header-bottom,0px),var(--mhur-v517-header-fallback));
  }

  html body .nexusLinksOverlay{
    position:fixed!important;
    top:var(--mhur-v517-panel-top)!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    inset-block-start:var(--mhur-v517-panel-top)!important;
    box-sizing:border-box!important;
    display:block!important;
    height:auto!important;
    max-height:none!important;
    padding:12px max(10px,env(safe-area-inset-right,0px)) max(14px,env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scroll-behavior:auto!important;
    scroll-padding-top:0!important;
  }

  html body .nexusLinksPanel{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    box-sizing:border-box!important;
    width:min(560px,100%)!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0 auto 14px!important;
    padding:18px 12px 12px!important;
    overflow:visible!important;
    overscroll-behavior:auto!important;
    scroll-behavior:auto!important;
    opacity:0;
    translate:none!important;
    transform:none!important;
  }

  html body .nexusLinksOverlay.is-open .nexusLinksPanel{
    opacity:1!important;
    translate:none!important;
    transform:none!important;
  }

  html body .nexusLinksTitle{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    z-index:5!important;
    box-sizing:border-box!important;
    display:flex!important;
    min-height:62px!important;
    margin:0 0 12px!important;
    padding:8px 54px 12px 4px!important;
    align-items:flex-start!important;
    overflow:visible!important;
    line-height:1.14!important;
    scroll-margin-top:0!important;
    translate:none!important;
    transform:none!important;
  }
  html body .nexusLinksTitle > span{
    display:block!important;
    min-width:0!important;
    overflow:visible!important;
  }
}

@media (max-width:390px){
  :root{
    --mhur-v517-header-fallback:calc(100px + env(safe-area-inset-top,0px));
  }
}


/* ===== css/v518-desktop-fixed-header.css ===== */
/* MHUR Nexus v5.18 — correction ciblée ordinateur.
   Le correctif v5.17 avait remis le header dans le flux de la page sur PC,
   ce qui créait un espace vide au-dessus et empêchait la barre de rester fixe.
   Cette règle restaure uniquement le comportement fixe d'origine sur ordinateur. */

@media (min-width:761px){
  :root{
    --mhur-top-height:72px;
  }

  html body{
    padding-top:var(--mhur-top-height)!important;
  }

  html body > header.top,
  html body header.top{
    position:fixed!important;
    inset:0 0 auto 0!important;
    top:0!important;
    right:0!important;
    bottom:auto!important;
    left:0!important;
    width:100%!important;
    height:var(--mhur-top-height)!important;
    min-height:var(--mhur-top-height)!important;
    margin:0!important;
    z-index:2147483600!important;
    translate:none!important;
    transform:none!important;
  }
}


/* ===== css/v526-ui-final.css ===== */
/* ============================================================
   MHUR FRANCE — CORRECTIF V526
   Chargé en dernier pour neutraliser proprement V519 à V525.
   ============================================================ */

:root {
  --v526-card-width: 280px;
  --v526-card-height: 680px;
  --v526-card-image-height: 330px;
  --v526-style-width: 330px;
  --v526-style-height: 450px;
  --v526-style-image-height: 330px;
}

/* ---------- Couleurs des rôles ---------- */
.v526-role-assault {
  --v526-role-bg: var(--assault, #fff000);
  --v526-role-fg: #050505;
}
.v526-role-strike {
  --v526-role-bg: var(--attack, #ff1119);
  --v526-role-fg: #ffffff;
}
.v526-role-speed {
  --v526-role-bg: var(--rapid, #19c9de);
  --v526-role-fg: #050b12;
}
.v526-role-technical {
  --v526-role-bg: var(--technical, #c61bf4);
  --v526-role-fg: #ffffff;
}
.v526-role-support {
  --v526-role-bg: var(--support, #11ef22);
  --v526-role-fg: #050b12;
}

/* ============================================================
   1. PERSONNAGES / COSTUMES / T.U.N.I.N.G / BUILDS
   Toutes les cartes de sélection ont exactement la même taille.
   ============================================================ */
#app .pageFrame.charactersFrame .cardsGrid,
#app .pageFrame.costumesFrame .cardsGrid,
#app .pageFrame.tuningsFrame .cardsGrid,
#app .pageFrame.buildsFrame .cardsGrid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(var(--v526-card-width), var(--v526-card-width))) !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 24px !important;
}

#app .pageFrame.charactersFrame .cardsGrid > .card,
#app .pageFrame.costumesFrame .cardsGrid > .card,
#app .pageFrame.tuningsFrame .cardsGrid > .card,
#app .pageFrame.buildsFrame .cardsGrid > .card {
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  width: var(--v526-card-width) !important;
  min-width: var(--v526-card-width) !important;
  max-width: var(--v526-card-width) !important;
  height: var(--v526-card-height) !important;
  min-height: var(--v526-card-height) !important;
  max-height: var(--v526-card-height) !important;
  align-self: stretch !important;
  justify-self: center !important;
  overflow: hidden !important;
}

#app .pageFrame.charactersFrame .cardsGrid > .card > .thumb,
#app .pageFrame.costumesFrame .cardsGrid > .card > .thumb,
#app .pageFrame.tuningsFrame .cardsGrid > .card > .thumb,
#app .pageFrame.buildsFrame .cardsGrid > .card > .thumb {
  box-sizing: border-box !important;
  flex: 0 0 var(--v526-card-image-height) !important;
  width: 100% !important;
  height: var(--v526-card-image-height) !important;
  min-height: var(--v526-card-image-height) !important;
  max-height: var(--v526-card-image-height) !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: var(--v526-role-bg, #101a29) !important;
}

#app .pageFrame.charactersFrame .cardsGrid > .card > .thumb img,
#app .pageFrame.costumesFrame .cardsGrid > .card > .thumb img,
#app .pageFrame.tuningsFrame .cardsGrid > .card > .thumb img,
#app .pageFrame.buildsFrame .cardsGrid > .card > .thumb img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  transform: none !important;
  transform-origin: center !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

#app .pageFrame.charactersFrame .cardsGrid > .card > .cardBody,
#app .pageFrame.costumesFrame .cardsGrid > .card > .cardBody,
#app .pageFrame.tuningsFrame .cardsGrid > .card > .cardBody,
#app .pageFrame.buildsFrame .cardsGrid > .card > .cardBody {
  box-sizing: border-box !important;
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  width: 100% !important;
  height: calc(var(--v526-card-height) - var(--v526-card-image-height)) !important;
  min-height: 0 !important;
  max-height: calc(var(--v526-card-height) - var(--v526-card-image-height)) !important;
  padding: 16px !important;
  overflow: hidden !important;
}

#app .pageFrame.charactersFrame .cardsGrid > .card h3,
#app .pageFrame.costumesFrame .cardsGrid > .card h3,
#app .pageFrame.tuningsFrame .cardsGrid > .card h3,
#app .pageFrame.buildsFrame .cardsGrid > .card h3 {
  display: block !important;
  flex: 0 0 56px !important;
  height: 56px !important;
  min-height: 56px !important;
  max-height: 56px !important;
  margin: 0 0 12px !important;
  overflow: hidden !important;
  font-size: 22px !important;
  line-height: 1.08 !important;
}

#app .pageFrame.charactersFrame .cardsGrid > .card .badges,
#app .pageFrame.costumesFrame .cardsGrid > .card .badges,
#app .pageFrame.tuningsFrame .cardsGrid > .card .badges,
#app .pageFrame.buildsFrame .cardsGrid > .card .badges {
  display: flex !important;
  flex: 0 0 auto !important;
  align-content: flex-start !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}

#app .pageFrame.charactersFrame .cardsGrid > .card .badge,
#app .pageFrame.costumesFrame .cardsGrid > .card .badge,
#app .pageFrame.tuningsFrame .cardsGrid > .card .badge,
#app .pageFrame.buildsFrame .cardsGrid > .card .badge {
  min-height: 50px !important;
  padding: 7px 11px !important;
  gap: 7px !important;
  border-radius: 16px !important;
}

#app .pageFrame.charactersFrame .cardsGrid > .card .roleIcon,
#app .pageFrame.costumesFrame .cardsGrid > .card .roleIcon,
#app .pageFrame.tuningsFrame .cardsGrid > .card .roleIcon,
#app .pageFrame.buildsFrame .cardsGrid > .card .roleIcon {
  width: 36px !important;
  height: 36px !important;
  flex: 0 0 36px !important;
}

#app .pageFrame.charactersFrame .cardsGrid > .card .cardBody > p,
#app .pageFrame.costumesFrame .cardsGrid > .card .cardBody > p,
#app .pageFrame.tuningsFrame .cardsGrid > .card .cardBody > p,
#app .pageFrame.buildsFrame .cardsGrid > .card .cardBody > p {
  display: block !important;
  margin: auto 0 0 !important;
  min-height: 42px !important;
  max-height: 48px !important;
  overflow: hidden !important;
  color: #ffffff !important;
  font-size: 16px !important;
  line-height: 1.15 !important;
}

/* ============================================================
   2. CARTES D'ALTERS
   Même largeur, même hauteur, même haut, même bas.
   ============================================================ */
#app .styleGrid {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  gap: 22px !important;
}

#app .styleGrid > .styleCard[data-style] {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-rows: var(--v526-style-image-height) calc(var(--v526-style-height) - var(--v526-style-image-height)) !important;
  width: var(--v526-style-width) !important;
  min-width: var(--v526-style-width) !important;
  max-width: var(--v526-style-width) !important;
  height: var(--v526-style-height) !important;
  min-height: var(--v526-style-height) !important;
  max-height: var(--v526-style-height) !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: #0f1928 !important;
}

#app .styleGrid > .styleCard[data-style] > .styleBanner {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  width: 100% !important;
  height: var(--v526-style-image-height) !important;
  min-height: var(--v526-style-image-height) !important;
  max-height: var(--v526-style-image-height) !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  background: var(--v526-role-bg, #101a29) !important;
}

#app .styleGrid > .styleCard[data-style] > .styleBanner img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  transform: none !important;
  transform-origin: center !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

#app .styleGrid > .styleCard[data-style] > .styleInfo {
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  width: 100% !important;
  height: calc(var(--v526-style-height) - var(--v526-style-image-height)) !important;
  min-height: calc(var(--v526-style-height) - var(--v526-style-image-height)) !important;
  max-height: calc(var(--v526-style-height) - var(--v526-style-image-height)) !important;
  padding: 9px 11px 11px !important;
  overflow: hidden !important;
  background: #0f1928 !important;
}

#app .styleGrid > .styleCard[data-style] > .styleInfo h2 {
  display: block !important;
  flex: 0 0 auto !important;
  margin: 0 0 8px !important;
  overflow: hidden !important;
  color: #ffffff !important;
  font-size: 24px !important;
  line-height: 1.05 !important;
  text-align: center !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

#app .styleGrid > .styleCard[data-style] > .styleInfo .badges {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 7px !important;
  flex-wrap: nowrap !important;
}

#app .styleGrid > .styleCard[data-style] > .styleInfo .badge {
  min-height: 40px !important;
  padding: 5px 9px !important;
  gap: 6px !important;
  border-radius: 14px !important;
  font-size: 15px !important;
}

#app .styleGrid > .styleCard[data-style] > .styleInfo .roleIcon {
  width: 29px !important;
  height: 29px !important;
  flex: 0 0 29px !important;
}

/* ============================================================
   3. FICHE DU PERSONNAGE : TEXTE BLANC
   ============================================================ */
#app .charPanel .meta,
#app .charPanel .meta h1,
#app .charPanel .meta h2,
#app .charPanel .meta h3,
#app .charPanel .meta p,
#app .charPanel .meta b,
#app .charPanel .meta strong,
#app .charPanel .meta em,
#app .charPanel .meta span:not(.badge),
#app .charPanel > h1,
#app .charPanel > h2,
#app .charPanel > h2[style],
#app .charPanel .charTop + h2,
#app .character-description,
#app .character-role-description {
  color: #ffffff !important;
  text-shadow: 0 2px 3px rgba(0, 0, 0, .88) !important;
}

#app .charPanel .meta .badge,
#app .charPanel .meta .badge *,
#app .charPanel .skillBox,
#app .charPanel .skillBox * {
  text-shadow: none !important;
}

#app .charPanel .charTop,
#app .charPanel .charTop > .meta {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

/* ============================================================
   4. TIER LIST : FOND SELON LE RÔLE
   ============================================================ */
.mhurTierItem.v526-role-assault,
.mhurTierItem.v526-role-strike,
.mhurTierItem.v526-role-speed,
.mhurTierItem.v526-role-technical,
.mhurTierItem.v526-role-support,
.mhurPublishedMini.v526-role-assault,
.mhurPublishedMini.v526-role-strike,
.mhurPublishedMini.v526-role-speed,
.mhurPublishedMini.v526-role-technical,
.mhurPublishedMini.v526-role-support {
  background: var(--v526-role-bg) !important;
  color: var(--v526-role-fg) !important;
  border: 3px solid #000000 !important;
  box-shadow: 0 4px 0 #000000 !important;
}

.mhurTierItem[class*="v526-role-"] small,
.mhurTierItem[class*="v526-role-"] .mhurTierStyleName,
.mhurPublishedMini[class*="v526-role-"] small {
  color: inherit !important;
  text-shadow: none !important;
}

/* ============================================================
   5. BUILDS COMMUNAUTÉ : conserver la couleur de chaque style
   ============================================================ */
#app .cbStyleTabs > button.v526-role-assault,
#app .cbStyleTabs > button.v526-role-strike,
#app .cbStyleTabs > button.v526-role-speed,
#app .cbStyleTabs > button.v526-role-technical,
#app .cbStyleTabs > button.v526-role-support {
  background: var(--v526-role-bg) !important;
  color: var(--v526-role-fg) !important;
  border: 3px solid #000000 !important;
}

#app .cbStyleTabs > button[class*="v526-role-"] * {
  color: inherit !important;
}

/* ============================================================
   6. RÉDUCTIONS DE POINTS : vrai Gentle + rôle
   ============================================================ */
.homeV296 .discountCardV296 {
  --v526-role-bg: #253650;
  --v526-role-fg: #ffffff;
}

.homeV296 .discountCardV296 > .v526-discount-role {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  width: 100% !important;
  min-height: 27px !important;
  padding: 3px 6px !important;
  border-top: 2px solid #000 !important;
  border-bottom: 2px solid #000 !important;
  background: var(--v526-role-bg) !important;
  color: var(--v526-role-fg) !important;
  font-size: 11px !important;
  font-weight: 1000 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.homeV296 .discountCardV296 > .v526-discount-role img {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  object-fit: contain !important;
  background: transparent !important;
}

.homeV296 .discountCardV296.v526-gentle-card > img {
  object-fit: contain !important;
  object-position: center bottom !important;
  background: radial-gradient(circle at 50% 42%, #8540a7 0%, #3b1b55 58%, #111218 100%) !important;
  padding: 2px 4px 0 !important;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 700px) {
  :root {
    --v526-card-width: min(100%, 300px);
    --v526-card-height: 650px;
    --v526-card-image-height: 310px;
    --v526-style-width: min(100%, 310px);
    --v526-style-height: 430px;
    --v526-style-image-height: 310px;
  }

  #app .pageFrame.charactersFrame .cardsGrid,
  #app .pageFrame.costumesFrame .cardsGrid,
  #app .pageFrame.tuningsFrame .cardsGrid,
  #app .pageFrame.buildsFrame .cardsGrid {
    grid-template-columns: minmax(0, 300px) !important;
  }

  #app .styleGrid {
    justify-content: center !important;
  }

  #app .styleGrid > .styleCard[data-style] {
    min-width: 0 !important;
  }
}


/* ===== css/v527-compact-costume-tuning-detail.css ===== */
/* ============================================================
   MHUR FRANCE — V527
   Correctif ciblé :
   - cartes de choix Costumes/T.U.N.I.N.G plus compactes ;
   - portrait de la fiche personnage plus petit.
   Ne modifie pas les cartes d'alters, Personnages, Builds,
   Réductions, Tier List ou Gentle Criminal.
   ============================================================ */

/* ============================================================
   1. CHOIX DU PERSONNAGE DANS COSTUMES ET T.U.N.I.N.G
   ============================================================ */
html body #app .pageFrame.costumesFrame .cardsGrid,
html body #app .pageFrame.tuningsFrame .cardsGrid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, 230px) !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 18px !important;
}

html body #app .pageFrame.costumesFrame .cardsGrid > .card,
html body #app .pageFrame.tuningsFrame .cardsGrid > .card,
html body #app .pageFrame.costumesFrame .cardsGrid > .card.costumeMode,
html body #app .pageFrame.tuningsFrame .cardsGrid > .card.tuningMode {
  box-sizing: border-box !important;
  width: 230px !important;
  min-width: 230px !important;
  max-width: 230px !important;
  height: 550px !important;
  min-height: 550px !important;
  max-height: 550px !important;
  justify-self: center !important;
  align-self: stretch !important;
  overflow: hidden !important;
}

html body #app .pageFrame.costumesFrame .cardsGrid > .card > .thumb,
html body #app .pageFrame.tuningsFrame .cardsGrid > .card > .thumb {
  box-sizing: border-box !important;
  flex: 0 0 270px !important;
  width: 100% !important;
  height: 270px !important;
  min-height: 270px !important;
  max-height: 270px !important;
  overflow: hidden !important;
}

html body #app .pageFrame.costumesFrame .cardsGrid > .card > .thumb img,
html body #app .pageFrame.tuningsFrame .cardsGrid > .card > .thumb img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body #app .pageFrame.costumesFrame .cardsGrid > .card > .cardBody,
html body #app .pageFrame.tuningsFrame .cardsGrid > .card > .cardBody {
  box-sizing: border-box !important;
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 280px !important;
  min-height: 280px !important;
  max-height: 280px !important;
  padding: 12px !important;
  overflow: hidden !important;
}

html body #app .pageFrame.costumesFrame .cardsGrid > .card h3,
html body #app .pageFrame.tuningsFrame .cardsGrid > .card h3 {
  flex: 0 0 46px !important;
  height: 46px !important;
  min-height: 46px !important;
  max-height: 46px !important;
  margin: 0 0 9px !important;
  overflow: hidden !important;
  font-size: 19px !important;
  line-height: 1.05 !important;
}

html body #app .pageFrame.costumesFrame .cardsGrid > .card .badges,
html body #app .pageFrame.tuningsFrame .cardsGrid > .card .badges {
  gap: 7px !important;
}

html body #app .pageFrame.costumesFrame .cardsGrid > .card .badge,
html body #app .pageFrame.tuningsFrame .cardsGrid > .card .badge {
  min-height: 43px !important;
  padding: 5px 9px !important;
  gap: 6px !important;
  border-radius: 14px !important;
  font-size: 14px !important;
}

html body #app .pageFrame.costumesFrame .cardsGrid > .card .roleIcon,
html body #app .pageFrame.tuningsFrame .cardsGrid > .card .roleIcon {
  width: 31px !important;
  height: 31px !important;
  flex: 0 0 31px !important;
}

html body #app .pageFrame.costumesFrame .cardsGrid > .card .cardBody > p,
html body #app .pageFrame.tuningsFrame .cardsGrid > .card .cardBody > p {
  display: block !important;
  min-height: 36px !important;
  max-height: 40px !important;
  margin: auto 0 0 !important;
  overflow: hidden !important;
  color: #ffffff !important;
  font-size: 14px !important;
  line-height: 1.12 !important;
}

/* ============================================================
   2. FICHE DU PERSONNAGE : PORTRAIT PLUS PETIT
   ============================================================ */
html body #app .charPanel .charTop {
  display: grid !important;
  grid-template-columns: 220px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 16px !important;
  padding: 14px !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

html body #app .charPanel .charTop > .portrait {
  box-sizing: border-box !important;
  width: 220px !important;
  min-width: 220px !important;
  max-width: 220px !important;
  height: 300px !important;
  min-height: 300px !important;
  max-height: 300px !important;
  align-self: start !important;
  overflow: hidden !important;
}

html body #app .charPanel .charTop > .portrait img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body #app .charPanel .charTop > .meta {
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

/* Le texte de la fiche reste blanc. */
html body #app .charPanel .meta,
html body #app .charPanel .meta h1,
html body #app .charPanel .meta h2,
html body #app .charPanel .meta h3,
html body #app .charPanel .meta p,
html body #app .charPanel .meta b,
html body #app .charPanel .meta strong,
html body #app .charPanel .meta span:not(.badge),
html body #app .charPanel > h2,
html body #app .charPanel > h2[style] {
  color: #ffffff !important;
}

/* ============================================================
   MOBILE
   ============================================================ */
@media (max-width: 700px) {
  html body #app .pageFrame.costumesFrame .cardsGrid,
  html body #app .pageFrame.tuningsFrame .cardsGrid {
    grid-template-columns: minmax(0, 230px) !important;
  }

  html body #app .charPanel .charTop {
    grid-template-columns: 1fr !important;
  }

  html body #app .charPanel .charTop > .portrait {
    width: min(100%, 220px) !important;
    min-width: 0 !important;
    max-width: 220px !important;
    height: 300px !important;
    margin: 0 auto !important;
  }
}


/* ===== css/v531-gentle-stable.css ===== */
/* MHUR France — V531 : Gentle Criminal + chargement stable uniquement */

/* Carte originale de home.js. */
.homeV296 .discountCardV296.v526-gentle-card > img,
.homeV296 .discountCardV296[data-discount="gentle_criminal"] > img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  padding: 0 !important;
  margin: 0 !important;
  transform: none !important;
  filter: none !important;
  background:
    radial-gradient(circle at 50% 42%, #7b3ca0 0%, #391b50 58%, #11131a 100%)
    !important;
}

/* Carte éventuellement produite par l'ancien module Saison 18. */
.homeV296
  .discountCardV296[data-discount="gentle_criminal"]
  .s18DiscountArtV19 {
  overflow: hidden !important;
  background:
    radial-gradient(circle at 50% 42%, #7b3ca0 0%, #391b50 58%, #11131a 100%)
    !important;
}

.homeV296
  .discountCardV296[data-discount="gentle_criminal"]
  .s18DiscountArtV19
  > img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  padding: 0 !important;
  margin: 0 !important;
  transform: none !important;
  filter: none !important;
  background: transparent !important;
}


/* ===== css/v520-character-styles.css ===== */
/* ============================================================
   MHUR FRANCE — V537
   - Tous les styles légèrement agrandis dans leur carré.
   - Premier affichage masqué jusqu'au rendu final prêt.
   - Tutoriel Mods clairement cliquable.
   ============================================================ */

:root {
  --v537-list-width: 230px;
  --v537-list-height: 550px;
  --v537-style-width: 310px;
  --v537-style-height: 420px;
  --v537-style-photo: 310px;
}

/*
  L'application reste invisible uniquement pendant le tout premier
  rendu synchrone. Elle apparaît ensuite directement dans son état final.
*/
html.mhurV537Boot #app {
  visibility: hidden !important;
}

/* ============================================================
   1. QUATRE CARTES PAR LIGNE
   ============================================================ */
html body #app .pageFrame.charactersFrame .cardsGrid,
html body #app .pageFrame.costumesFrame .cardsGrid,
html body #app .pageFrame.tuningsFrame .cardsGrid,
html body #app .pageFrame.buildsFrame .cardsGrid {
  display: grid !important;
  grid-template-columns: repeat(4, var(--v537-list-width)) !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 18px !important;
  width: 100% !important;
}

html body #app .pageFrame.charactersFrame .cardsGrid > .card,
html body #app .pageFrame.costumesFrame .cardsGrid > .card,
html body #app .pageFrame.tuningsFrame .cardsGrid > .card,
html body #app .pageFrame.buildsFrame .cardsGrid > .card {
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  width: var(--v537-list-width) !important;
  min-width: var(--v537-list-width) !important;
  max-width: var(--v537-list-width) !important;
  height: var(--v537-list-height) !important;
  min-height: var(--v537-list-height) !important;
  max-height: var(--v537-list-height) !important;
  align-self: stretch !important;
  justify-self: center !important;
  overflow: hidden !important;
}

/* ============================================================
   2. PHOTOS DES LISTES
   ============================================================ */
html body #app .pageFrame.charactersFrame .cardsGrid > .card > .thumb,
html body #app .pageFrame.costumesFrame .cardsGrid > .card > .thumb,
html body #app .pageFrame.tuningsFrame .cardsGrid > .card > .thumb,
html body #app .pageFrame.buildsFrame .cardsGrid > .card > .thumb {
  box-sizing: border-box !important;
  display: flex !important;
  flex: 0 0 var(--v537-list-width) !important;
  align-items: center !important;
  justify-content: center !important;
  width: var(--v537-list-width) !important;
  min-width: var(--v537-list-width) !important;
  max-width: var(--v537-list-width) !important;
  height: var(--v537-list-width) !important;
  min-height: var(--v537-list-width) !important;
  max-height: var(--v537-list-width) !important;
  aspect-ratio: 1 / 1 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

html body #app .pageFrame .cardsGrid > .card > .thumb > img,
html body #app .pageFrame .cardsGrid > .card > .thumb > img.v533-portrait-image,
html body #app .pageFrame .cardsGrid > .card > .thumb > img.v534-portrait-image {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  translate: none !important;
  scale: none !important;
  rotate: none !important;
  filter: none !important;
  transition: none !important;
}

/* ============================================================
   3. TOUS LES STYLES / ALTERS
   ============================================================ */
html body #app .styleGrid {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  gap: 20px !important;
}

html body #app .styleGrid > .styleCard[data-style] {
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  width: var(--v537-style-width) !important;
  min-width: var(--v537-style-width) !important;
  max-width: var(--v537-style-width) !important;
  height: var(--v537-style-height) !important;
  min-height: var(--v537-style-height) !important;
  max-height: var(--v537-style-height) !important;
  overflow: hidden !important;
}

html body #app .styleGrid > .styleCard[data-style] > .styleBanner {
  box-sizing: border-box !important;
  display: flex !important;
  flex: 0 0 var(--v537-style-photo) !important;
  align-items: center !important;
  justify-content: center !important;
  width: var(--v537-style-photo) !important;
  min-width: var(--v537-style-photo) !important;
  max-width: var(--v537-style-photo) !important;
  height: var(--v537-style-photo) !important;
  min-height: var(--v537-style-photo) !important;
  max-height: var(--v537-style-photo) !important;
  aspect-ratio: 1 / 1 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/*
  Tous les styles actuels et futurs sont agrandis de seulement 5,5 %.
  Cela remplit mieux le carré sans appliquer de position spéciale.
*/
html body #app
  .styleGrid
  > .styleCard[data-style]
  > .styleBanner
  > img,
html body #app
  .styleGrid
  > .styleCard[data-style]
  > .styleBanner
  > img.v533-portrait-image,
html body #app
  .styleGrid
  > .styleCard[data-style]
  > .styleBanner
  > img.v534-portrait-image {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: scale(1.055) !important;
  transform-origin: center center !important;
  translate: none !important;
  rotate: none !important;
  filter: none !important;
  transition: none !important;
}

html body #app .styleGrid > .styleCard[data-style] > .styleInfo {
  box-sizing: border-box !important;
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 0 !important;
  padding: 8px 10px 10px !important;
  overflow: hidden !important;
}

/* ============================================================
   4. FICHE DÉTAILLÉE
   ============================================================ */
html body #app .charPanel .charTop {
  display: grid !important;
  grid-template-columns: 230px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 16px !important;
  padding: 14px !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

html body #app .charPanel .charTop > .portrait {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 230px !important;
  min-width: 230px !important;
  max-width: 230px !important;
  height: 230px !important;
  min-height: 230px !important;
  max-height: 230px !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
}

html body #app .charPanel .charTop > .portrait > img {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

/* ============================================================
   5. TUTORIEL MODS
   ============================================================ */
html body .modsTutorial > summary.modsTutorialSummaryV537 {
  list-style: none !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 52px !important;
  grid-template-areas:
    "title arrow"
    "hint arrow" !important;
  align-items: center !important;
  column-gap: 16px !important;
  row-gap: 7px !important;
  min-height: 92px !important;
  padding: 14px 18px 14px 22px !important;
  cursor: pointer !important;
  user-select: none !important;
}

html body .modsTutorial > summary.modsTutorialSummaryV537::marker {
  content: "" !important;
  font-size: 0 !important;
}

html body
  .modsTutorial
  > summary.modsTutorialSummaryV537::-webkit-details-marker {
  display: none !important;
}

html body .modsTutorialTitleV537 {
  grid-area: title !important;
  display: block !important;
  color: #000 !important;
  font-size: clamp(19px, 2vw, 24px) !important;
  font-weight: 1000 !important;
  line-height: 1.1 !important;
}

html body .modsTutorialHintV537,
html body .modsTutorial .s18ModsHintV10.modsTutorialHintV537 {
  grid-area: hint !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-self: start !important;
  width: auto !important;
  margin: 0 !important;
  padding: 5px 10px !important;
  border: 2px solid #000 !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.86) !important;
  color: #000 !important;
  font-size: 12px !important;
  font-weight: 1000 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

html body .modsTutorialChevronV537 {
  grid-area: arrow !important;
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  width: 48px !important;
  height: 48px !important;
  border: 3px solid #000 !important;
  border-radius: 50% !important;
  background: #101a29 !important;
  box-shadow: 0 4px 0 #000 !important;
}

html body .modsTutorialChevronV537::before {
  content: "" !important;
  width: 14px !important;
  height: 14px !important;
  border-right: 4px solid #ffe000 !important;
  border-bottom: 4px solid #ffe000 !important;
  transform: translateY(-3px) rotate(45deg) !important;
  transition: transform 0.18s ease !important;
}

html body .modsTutorial[open] .modsTutorialChevronV537::before {
  transform: translateY(3px) rotate(225deg) !important;
}

html body
  .modsTutorial
  > summary.modsTutorialSummaryV537:hover
  .modsTutorialChevronV537 {
  transform: translateY(-1px) !important;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 1010px) {
  html body #app .pageFrame.charactersFrame .cardsGrid,
  html body #app .pageFrame.costumesFrame .cardsGrid,
  html body #app .pageFrame.tuningsFrame .cardsGrid,
  html body #app .pageFrame.buildsFrame .cardsGrid {
    grid-template-columns: repeat(3, var(--v537-list-width)) !important;
  }
}

@media (max-width: 760px) {
  html body #app .pageFrame.charactersFrame .cardsGrid,
  html body #app .pageFrame.costumesFrame .cardsGrid,
  html body #app .pageFrame.tuningsFrame .cardsGrid,
  html body #app .pageFrame.buildsFrame .cardsGrid {
    grid-template-columns: repeat(2, var(--v537-list-width)) !important;
  }

  html body #app .charPanel .charTop {
    grid-template-columns: 1fr !important;
  }

  html body #app .charPanel .charTop > .portrait {
    margin: 0 auto !important;
  }
}

@media (max-width: 510px) {
  html body #app .pageFrame.charactersFrame .cardsGrid,
  html body #app .pageFrame.costumesFrame .cardsGrid,
  html body #app .pageFrame.tuningsFrame .cardsGrid,
  html body #app .pageFrame.buildsFrame .cardsGrid {
    grid-template-columns: var(--v537-list-width) !important;
  }

  html body #app .styleGrid {
    justify-content: center !important;
  }

  html body #app .modsTutorial > summary.modsTutorialSummaryV537 {
    grid-template-columns: minmax(0, 1fr) 44px !important;
    min-height: 84px !important;
    padding: 12px 13px !important;
    column-gap: 10px !important;
  }

  html body .modsTutorialChevronV537 {
    width: 42px !important;
    height: 42px !important;
  }

  html body .modsTutorialHintV537 {
    white-space: normal !important;
    line-height: 1.1 !important;
  }
}


/* ===== css/v539-mobile-admin.css ===== */
/* ========================================================================== */
/* MHUR NEXUS — V539 : mobile header, Patch Notes et centre de modération    */
/* ========================================================================== */

:root{
  --mhur-v539-header-space:calc(112px + max(7px, env(safe-area-inset-top, 0px)));
}

/* Boutons ajoutés dans le profil. */
.mhurV539ProfileAction{
  width:100%!important;
  margin-top:10px!important;
  padding:13px 14px!important;
  border:3px solid #000!important;
  border-radius:13px!important;
  font-weight:1000!important;
  box-shadow:0 4px 0 #000!important;
}
.mhurV539AdminProfileButton{background:linear-gradient(135deg,#28db79,#0d9b50)!important;color:#031109!important}
.mhurV539FeedbackProfileButton{background:linear-gradient(135deg,#ffe100,#ff9a00)!important;color:#111!important}

/* Centre de modération et formulaire de suggestion. */
.mhurV539Overlay{
  position:fixed;
  inset:0;
  z-index:2147483600;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(0,0,0,.88);
  backdrop-filter:blur(6px);
}
.mhurV539Overlay.open{display:flex}
.mhurV539Panel{
  width:min(1040px,96vw);
  max-height:92dvh;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:4px solid #426893;
  border-radius:20px;
  background:#081423;
  color:#fff;
  box-shadow:0 22px 80px #000;
}
.mhurV539Panel>header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:16px 18px;
  border-bottom:3px solid #000;
  background:linear-gradient(100deg,#153a65,#1e6596);
}
.mhurV539Panel>header span{display:block;color:#ffe000;font-size:12px;font-weight:1000;letter-spacing:.8px}
.mhurV539Panel>header h2{margin:3px 0 0;font-size:clamp(24px,4vw,36px)}
.mhurV539Close{
  flex:0 0 46px;
  width:46px;
  height:46px;
  border:4px solid #000!important;
  border-radius:50%!important;
  background:#ed525d!important;
  color:#fff!important;
  font-size:26px!important;
  font-weight:1000!important;
}
.mhurV539Tabs{display:flex;gap:8px;padding:10px 12px;overflow-x:auto;border-bottom:2px solid #314f76;background:#0c1a2c}
.mhurV539Tabs button{flex:0 0 auto;padding:9px 12px;border:2px solid #3a5b83;border-radius:10px;background:#14253c;color:#fff;font-weight:1000}
.mhurV539Tabs button.active{background:#ffe000;color:#000;border-color:#000}
.mhurV539Body{min-height:0;overflow:auto;padding:16px;-webkit-overflow-scrolling:touch}
.mhurV539Intro{margin:0 0 14px;color:#bfd0e7;line-height:1.45}
.mhurV539Dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.mhurV539InboxCard{
  min-height:148px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:15px;
  border:3px solid #34577e;
  border-radius:15px;
  background:#101f33;
  color:#fff;
  text-align:left;
}
.mhurV539InboxCard strong{font-size:19px}.mhurV539InboxCard small{margin-top:7px;color:#aac0dc;line-height:1.35}
.mhurV539Count{margin-top:auto;align-self:flex-end;min-width:48px;padding:7px 11px;border:3px solid #000;border-radius:999px;background:#ffe000;color:#000;font-size:20px;font-weight:1000;text-align:center}
.mhurV539Count.error{background:#ed525d;color:#fff}
.mhurV539List{display:grid;gap:11px}
.mhurV539Item{padding:14px;border:2px solid #35577e;border-radius:14px;background:#0d1b2d}
.mhurV539Item header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:9px}
.mhurV539Item h3{margin:0;font-size:19px}.mhurV539Item small{color:#9fb5d1}.mhurV539Item p{white-space:pre-wrap;line-height:1.45;color:#e5eef9}
.mhurV539Item textarea,.mhurV539Form textarea,.mhurV539Form input,.mhurV539Form select{
  width:100%;
  margin-top:6px;
  padding:11px 12px;
  border:2px solid #3d5f88;
  border-radius:10px;
  background:#06101d;
  color:#fff;
}
.mhurV539Item textarea,.mhurV539Form textarea{min-height:110px;resize:vertical}
.mhurV539Actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.mhurV539Actions button,.mhurV539Primary{
  padding:10px 13px!important;
  border:3px solid #000!important;
  border-radius:10px!important;
  background:#19c9de!important;
  color:#00151a!important;
  font-weight:1000!important;
}
.mhurV539Actions button.success,.mhurV539Primary{background:#25d876!important;color:#00140a!important}
.mhurV539Actions button.danger{background:#ed525d!important;color:#fff!important}
.mhurV539Empty,.mhurV539Error,.mhurV539Loading{padding:28px;text-align:center;border:2px dashed #45688f;border-radius:14px;color:#c7d7eb}
.mhurV539Error{border-color:#d95360;color:#ff929a}
.mhurV539Form{display:grid;gap:12px}.mhurV539Form label{font-weight:1000;color:#eaf3ff}
.mhurV539SqlNotice{margin-top:12px;padding:12px;border:2px solid #9c7b00;border-radius:12px;background:#332900;color:#ffe46b;line-height:1.4}
body.mhurV539ModalOpen{overflow:hidden!important}

/* Le bouton Patch Notes doit toujours recevoir le toucher. */
#mhurPatchDevButtonV14,[data-s18-notes-button]{
  pointer-events:auto!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:transparent!important;
}

@media(max-width:760px){
  :root{
    --mhur-v539-header-space:calc(112px + max(7px, env(safe-area-inset-top, 0px)));
    --mhur-mobile-header-height:var(--mhur-v539-header-space)!important;
    --mhur-top-height:var(--mhur-v539-header-space)!important;
    --mhur-header-bottom:var(--mhur-v539-header-space)!important;
    --mhur-header-visual-bottom:var(--mhur-v539-header-space)!important;
  }
  html{scroll-padding-top:calc(var(--mhur-v539-header-space) + 10px)!important}
  html body{padding-top:var(--mhur-v539-header-space)!important}
  html body>header.top[data-mhur-header-version="513"],
  html body header.top[data-mhur-header-version="513"]{
    position:fixed!important;
    inset:0 0 auto 0!important;
    height:auto!important;
    min-height:var(--mhur-v539-header-space)!important;
    max-height:none!important;
  }
  html body .wrap{margin-top:0!important;padding-top:14px!important}
  html body .homeV296,
  html body .homeV296.s18HomeMobileOffsetV20{
    margin-top:0!important;
    padding-top:0!important;
    transform:none!important;
  }
  html body .drawer{top:var(--mhur-v539-header-space)!important}

  /* Fenêtre Patch Notes : une seule zone de défilement, sous les deux lignes. */
  html body .s18NotesOverlayV10{
    inset:var(--mhur-v539-header-space) 0 0 0!important;
    width:auto!important;
    height:auto!important;
    padding:5px!important;
    align-items:stretch!important;
    overflow:hidden!important;
  }
  html body .s18NotesPanelV10{
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    margin:0!important;
    display:flex!important;
    flex-direction:column!important;
    border-radius:13px!important;
  }
  html body .s18NotesPanelV10>header{flex:0 0 auto!important;padding:12px 14px!important}
  html body .s18NotesPanelV10>header h2{font-size:26px!important;line-height:1.05!important}
  html body .s18NotesPanelV10>nav{flex:0 0 auto!important;padding:8px 10px!important}
  html body .s18NotesBodyV10{
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    overflow:hidden!important;
  }
  html body .s18NotesBodyV10>aside{
    display:flex!important;
    gap:8px!important;
    max-height:126px!important;
    padding:9px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    border-right:0!important;
    border-bottom:2px solid #2d496e!important;
    -webkit-overflow-scrolling:touch!important;
  }
  html body .s18NotesBodyV10>aside>button{
    flex:0 0 min(72vw,270px)!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
  }
  html body .s18NotesBodyV10>main{
    min-height:0!important;
    padding:12px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
  }
  html body .s18PatchDetailHeadV10{display:grid!important;gap:10px!important}
  html body .s18PatchCharacterV10>header{
    display:grid!important;
    grid-template-columns:82px minmax(0,1fr)!important;
    align-items:center!important;
    gap:11px!important;
    padding:10px!important;
  }
  html body .s18PatchPortraitV10{
    width:82px!important;
    height:82px!important;
    min-width:82px!important;
  }
  html body .s18PatchPortraitV10 img{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
    margin:0!important;
  }
  html body .s18PatchCharacterV10 h4{font-size:20px!important;line-height:1.08!important;overflow-wrap:anywhere!important}
  html body .s18PatchChangesV10{padding:10px!important;gap:10px!important}
  html body .s18PatchChangeV10{padding:40px 10px 11px!important;overflow:hidden!important}
  html body .s18PatchSkillV10{
    display:grid!important;
    grid-template-columns:72px minmax(0,1fr)!important;
    gap:10px!important;
    align-items:start!important;
  }
  html body .s18PatchSkillV10>div{
    width:72px!important;
    height:72px!important;
    min-width:72px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  html body .s18PatchSkillV10>div img{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
    margin:0!important;
  }
  html body .s18PatchSkillV10 h5{font-size:17px!important;line-height:1.15!important;overflow-wrap:anywhere!important}
  html body .s18PatchTableWrapV10{max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important}
  html body .s18PatchTableV10{min-width:560px!important}

  /* Centre de modération sous le header. */
  .mhurV539Overlay{
    inset:var(--mhur-v539-header-space) 0 0 0;
    padding:5px;
    align-items:stretch;
  }
  .mhurV539Panel{width:100%;height:100%;max-height:none;border-radius:13px}
  .mhurV539Panel>header{padding:11px 12px}.mhurV539Panel>header h2{font-size:25px}
  .mhurV539Body{padding:11px}.mhurV539Dashboard{grid-template-columns:1fr 1fr;gap:9px}
  .mhurV539InboxCard{min-height:132px;padding:12px}.mhurV539InboxCard strong{font-size:16px}
}

@media(max-width:430px){
  .mhurV539Dashboard{grid-template-columns:1fr}
  html body .s18PatchSkillV10{grid-template-columns:64px minmax(0,1fr)!important}
  html body .s18PatchSkillV10>div{width:64px!important;height:64px!important;min-width:64px!important}
}


/* ===== css/v540-final-ui.css ===== */
/* ============================================================
   MHUR FRANCE — V540
   - Premier affichage final, sans reconstruction visible.
   - Portraits de tous les styles legerement plus grands.
   - Tutoriel Mods propre avec une seule fleche.
   ============================================================ */

html.mhurV540Boot #app {
  visibility: hidden !important;
}

/* Tous les styles actuels et futurs : agrandissement leger. */
html body #app
  .styleGrid
  > .styleCard[data-style]
  > .styleBanner {
  position: relative !important;
  overflow: hidden !important;
}

html body #app
  .styleGrid
  > .styleCard[data-style]
  > .styleBanner
  > img,
html body #app
  .styleGrid
  > .styleCard[data-style]
  > .styleBanner
  > img.v533-portrait-image,
html body #app
  .styleGrid
  > .styleCard[data-style]
  > .styleBanner
  > img.v534-portrait-image {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: scale(1.08) !important;
  transform-origin: center center !important;
  translate: none !important;
  rotate: none !important;
  filter: none !important;
  transition: none !important;
}

/* ============================================================
   TUTORIEL MODS
   ============================================================ */

html body .modsTutorial > summary.modsTutorialSummaryV540 {
  list-style: none !important;
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) 52px !important;
  grid-template-areas:
    "book title arrow"
    "book hint arrow" !important;
  align-items: center !important;
  column-gap: 12px !important;
  row-gap: 7px !important;
  min-height: 92px !important;
  padding: 13px 17px !important;
  cursor: pointer !important;
  user-select: none !important;
}

html body .modsTutorial > summary.modsTutorialSummaryV540::marker {
  content: "" !important;
  font-size: 0 !important;
}

html body
  .modsTutorial
  > summary.modsTutorialSummaryV540::-webkit-details-marker {
  display: none !important;
}

html body .modsTutorialBookV540 {
  grid-area: book !important;
  position: relative !important;
  display: block !important;
  width: 28px !important;
  height: 34px !important;
  border: 3px solid #000 !important;
  border-radius: 4px 8px 8px 4px !important;
  background: linear-gradient(135deg, #25bde7, #157eb8) !important;
  box-shadow: 3px 3px 0 #000 !important;
}

html body .modsTutorialBookV540::before {
  content: "" !important;
  position: absolute !important;
  left: 5px !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 3px !important;
  background: rgba(255, 255, 255, 0.8) !important;
}

html body .modsTutorialTitleV540 {
  grid-area: title !important;
  color: #000 !important;
  font-size: clamp(19px, 2vw, 24px) !important;
  font-weight: 1000 !important;
  line-height: 1.08 !important;
}

html body .modsTutorialHintV540 {
  grid-area: hint !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-self: start !important;
  width: auto !important;
  margin: 0 !important;
  padding: 5px 10px !important;
  border: 2px solid #000 !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.9) !important;
  color: #000 !important;
  font-size: 12px !important;
  font-weight: 1000 !important;
  line-height: 1 !important;
}

html body .modsTutorialChevronV540 {
  grid-area: arrow !important;
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  width: 48px !important;
  height: 48px !important;
  border: 3px solid #000 !important;
  border-radius: 50% !important;
  background: #101a29 !important;
  box-shadow: 0 4px 0 #000 !important;
}

html body .modsTutorialChevronV540::before {
  content: "" !important;
  width: 14px !important;
  height: 14px !important;
  border-right: 4px solid #ffe000 !important;
  border-bottom: 4px solid #ffe000 !important;
  transform: translateY(-3px) rotate(45deg) !important;
  transition: transform 0.18s ease !important;
}

html body .modsTutorial[open] .modsTutorialChevronV540::before {
  transform: translateY(3px) rotate(225deg) !important;
}

/* Anciennes fleches ou aides ajoutees par de vieux correctifs. */
html body .modsTutorialSummaryV540 > .s18ModsHintV10,
html body .modsTutorialSummaryV540 > .modsTutorialChevronV537,
html body .modsTutorialSummaryV540 > .modsTutorialHintV537 {
  display: none !important;
}

@media (max-width: 520px) {
  html body .modsTutorial > summary.modsTutorialSummaryV540 {
    grid-template-columns: 28px minmax(0, 1fr) 44px !important;
    min-height: 84px !important;
    padding: 11px 12px !important;
    column-gap: 9px !important;
  }

  html body .modsTutorialBookV540 {
    width: 24px !important;
    height: 30px !important;
  }

  html body .modsTutorialChevronV540 {
    width: 42px !important;
    height: 42px !important;
  }

  html body .modsTutorialHintV540 {
    white-space: normal !important;
    line-height: 1.1 !important;
  }
}


/* ===== css/v542-tier-notes-mobile.css ===== */
/* ============================================================
   MHUR NEXUS — V542
   - Header mobile verrouillé sans mesure récursive.
   - Patch Notes sous le header, images entières.
   - Fonds de rôle natifs dans la Tier List.
   ============================================================ */

.mhurTierItem.mhurTierRole-assault {
  background: linear-gradient(180deg, #f5df00 0%, #8e7400 100%) !important;
  border-color: #ffe900 !important;
}
.mhurTierItem.mhurTierRole-strike {
  background: linear-gradient(180deg, #ef3f59 0%, #8d0a25 100%) !important;
  border-color: #ff5068 !important;
}
.mhurTierItem.mhurTierRole-speed {
  background: linear-gradient(180deg, #26d1e5 0%, #08778a 100%) !important;
  border-color: #32e6f7 !important;
}
.mhurTierItem.mhurTierRole-technical {
  background: linear-gradient(180deg, #bb33e6 0%, #650786 100%) !important;
  border-color: #d45cff !important;
}
.mhurTierItem.mhurTierRole-support {
  background: linear-gradient(180deg, #29db68 0%, #087832 100%) !important;
  border-color: #45f080 !important;
}
.mhurTierItem[class*="mhurTierRole-"] img {
  object-fit: contain !important;
  object-position: center bottom !important;
}

/* Le bouton Patch Notes reste cliquable sur ordinateur et téléphone. */
#mhurPatchDevButtonV14,
.mhurPatchDevButtonV14,
[data-s18-notes-button] {
  pointer-events: auto !important;
  touch-action: manipulation !important;
  position: relative !important;
  z-index: 2147483608 !important;
}

@media (max-width: 760px) {
  :root {
    --mhur-mobile-safe-top: max(7px, env(safe-area-inset-top, 0px));
    --mhur-mobile-header-height:
      calc(108px + var(--mhur-mobile-safe-top)) !important;
    --mhur-v541-header-space:
      var(--mhur-mobile-header-height) !important;
    --mhur-v539-header-space:
      var(--mhur-mobile-header-height) !important;
    --mhur-top-height:
      var(--mhur-mobile-header-height) !important;
    --mhur-header-bottom:
      var(--mhur-mobile-header-height) !important;
    --mhur-header-visual-bottom:
      var(--mhur-mobile-header-height) !important;
    --s18-header-offset:
      var(--mhur-mobile-header-height) !important;
  }

  html {
    scroll-padding-top:
      calc(var(--mhur-mobile-header-height) + 10px) !important;
  }

  html body {
    padding-top:
      var(--mhur-mobile-header-height) !important;
  }

  html body > header.top[data-mhur-header-version="513"],
  html body header.top[data-mhur-header-version="513"] {
    height:
      var(--mhur-mobile-header-height) !important;
    min-height:
      var(--mhur-mobile-header-height) !important;
    max-height:
      var(--mhur-mobile-header-height) !important;
    overflow: visible !important;
  }

  html body .drawer,
  html body #drawer.drawer {
    top:
      calc(var(--mhur-mobile-header-height) + 2px) !important;
    max-height:
      calc(100dvh - var(--mhur-mobile-header-height) - 2px) !important;
  }

  html body .s18NotesOverlayV10 {
    inset:
      var(--mhur-mobile-header-height) 0 0 0 !important;
    padding: 4px !important;
  }

  html body .s18NotesPanelV10 {
    width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    border-radius: 12px !important;
  }

  html body .s18NotesBodyV10 {
    min-height: 0 !important;
    flex: 1 1 auto !important;
    overflow: hidden !important;
  }

  html body .s18NotesBodyV10 > main {
    min-width: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  html body .s18PatchPortraitV10 img,
  html body .s18PatchSkillV10 img,
  html body .s18PatchSkillV10 > div img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
    margin: 0 !important;
  }

  html body .s18PatchCharacterV10 > header {
    grid-template-columns: 92px minmax(0, 1fr) !important;
    overflow: visible !important;
  }

  html body .s18PatchPortraitV10 {
    width: 92px !important;
    height: 92px !important;
    min-width: 92px !important;
  }

  html body .s18PatchSkillV10 {
    grid-template-columns: 76px minmax(0, 1fr) !important;
  }

  html body .s18PatchSkillV10 > div {
    width: 76px !important;
    height: 76px !important;
    min-width: 76px !important;
  }
}

@media (max-width: 390px) {
  :root {
    --mhur-mobile-header-height:
      calc(100px + var(--mhur-mobile-safe-top)) !important;
  }
}


/* ===== css/v543-moderation-evidence.css ===== */
/* ==========================================================================
   MHUR NEXUS — V543 : centre de modération complet
   ========================================================================== */

.mhurV543Overlay {
  position: fixed;
  inset: 72px 0 0;
  z-index: 2147483615;
  display: none;
  align-items: flex-start;
  justify-content: center;
  padding: 12px;
  overflow: hidden;
  background: rgba(0, 5, 13, 0.82);
  backdrop-filter: blur(7px);
}
.mhurV543Overlay.open { display: flex; }

.mhurV543Panel {
  width: min(1180px, 100%);
  max-height: calc(100dvh - 92px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 4px solid #000;
  border-radius: 17px;
  background: #081526;
  color: #fff;
  box-shadow: 0 18px 60px rgba(0,0,0,.62);
}

.mhurV543Panel > header {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 15px 18px;
  border-bottom: 3px solid #000;
  background: linear-gradient(135deg, #1c6596, #20466f);
}
.mhurV543Panel > header span {
  display: block;
  color: #ffe000;
  font-size: 12px;
  font-weight: 1000;
  letter-spacing: .08em;
}
.mhurV543Panel > header h2 {
  margin: 2px 0 0;
  font-size: clamp(25px, 3vw, 38px);
  line-height: 1;
}
.mhurV543Close {
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border: 4px solid #000;
  border-radius: 50%;
  background: #ed525d;
  color: #fff;
  font-size: 29px;
  font-weight: 1000;
  cursor: pointer;
}

.mhurV543Body {
  min-height: 0;
  flex: 1 1 auto;
  padding: 15px;
  overflow: auto;
  overscroll-behavior: contain;
}

.mhurV543Back {
  position: sticky;
  top: -15px;
  z-index: 20;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: -2px 0 13px;
  padding: 9px 13px;
  border: 3px solid #000;
  border-radius: 10px;
  background: #ffe000;
  color: #000;
  font-weight: 1000;
  box-shadow: 0 4px 0 #000;
  cursor: pointer;
}

.mhurV543Intro {
  margin: 0 0 14px;
  color: #c9d9ec;
  font-size: 15px;
  line-height: 1.4;
}

.mhurV543Dashboard {
  display: grid;
  grid-template-columns: repeat(3, minmax(220px, 1fr));
  gap: 12px;
}
.mhurV543DashboardCard {
  min-height: 145px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-content: space-between;
  gap: 8px;
  padding: 15px;
  border: 3px solid #3e648f;
  border-radius: 14px;
  background: #11243b;
  color: #fff;
  text-align: left;
  cursor: pointer;
}
.mhurV543DashboardCard:hover { border-color: #ffe000; }
.mhurV543DashboardCard strong {
  grid-column: 1 / -1;
  font-size: 19px;
}
.mhurV543DashboardCard small {
  color: #abc0dc;
  line-height: 1.35;
}
.mhurV543Count {
  min-width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 3px solid #000;
  border-radius: 50%;
  background: #ffe000;
  color: #000;
  font-weight: 1000;
}

.mhurV543ViewHead {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 13px;
}
.mhurV543ViewHead h3 {
  margin: 0;
  font-size: 28px;
}
.mhurV543Refresh {
  padding: 8px 11px;
  border: 3px solid #000;
  border-radius: 9px;
  background: #1fc4dc;
  color: #00151a;
  font-weight: 1000;
  cursor: pointer;
}

.mhurV543List {
  display: grid;
  gap: 13px;
}
.mhurV543Item {
  padding: 14px;
  border: 3px solid #41658d;
  border-radius: 14px;
  background: #102137;
}
.mhurV543Item > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 11px;
}
.mhurV543User {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.mhurV543User img,
.mhurV543UserAvatar {
  width: 45px;
  height: 45px;
  flex: 0 0 45px;
  display: grid;
  place-items: center;
  border: 3px solid #000;
  border-radius: 50%;
  background: #29476c;
  object-fit: cover;
  color: #fff;
  font-weight: 1000;
}
.mhurV543User b,
.mhurV543User small {
  display: block;
  overflow-wrap: anywhere;
}
.mhurV543User small,
.mhurV543Date,
.mhurV543Meta {
  color: #a9bdd7;
  font-size: 12px;
}

.mhurV543Reason {
  display: inline-flex;
  width: fit-content;
  margin: 2px 0 9px;
  padding: 5px 9px;
  border: 2px solid #000;
  border-radius: 999px;
  background: #ffe000;
  color: #000;
  font-weight: 1000;
}
.mhurV543Message {
  margin: 7px 0 12px;
  white-space: pre-wrap;
  color: #edf5ff;
  line-height: 1.45;
}

.mhurV543Target {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 13px;
  align-items: center;
  margin: 10px 0;
  padding: 10px;
  border: 2px solid #2e5078;
  border-radius: 12px;
  background: #071321;
}
.mhurV543Target img {
  width: 112px;
  height: 82px;
  border: 2px solid #000;
  border-radius: 9px;
  background: #1d3049;
  object-fit: contain;
}
.mhurV543Target h4 {
  margin: 0 0 5px;
  font-size: 20px;
}
.mhurV543Target p {
  margin: 0;
  color: #a9bdd7;
}

.mhurV543Attachments {
  display: grid;
  grid-template-columns: repeat(3, minmax(110px, 220px));
  gap: 9px;
  margin: 11px 0;
}
.mhurV543Attachment {
  display: block;
  overflow: hidden;
  border: 3px solid #000;
  border-radius: 11px;
  background: #020813;
}
.mhurV543Attachment img {
  width: 100%;
  height: 145px;
  display: block;
  object-fit: contain;
}
.mhurV543Attachment span {
  display: block;
  padding: 5px 7px;
  color: #c5d4e7;
  font-size: 11px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mhurV543Actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 11px;
}
.mhurV543Actions button,
.mhurV543Primary {
  padding: 9px 12px;
  border: 3px solid #000;
  border-radius: 9px;
  background: #1fc4dc;
  color: #00151a;
  font-weight: 1000;
  cursor: pointer;
}
.mhurV543Actions .success,
.mhurV543Primary { background: #23d776; color: #001609; }
.mhurV543Actions .danger { background: #ed525d; color: #fff; }
.mhurV543Actions .neutral { background: #d7e2ef; color: #07111d; }

.mhurV543Form {
  display: grid;
  gap: 12px;
}
.mhurV543Form label {
  display: grid;
  gap: 6px;
  color: #eaf3ff;
  font-weight: 1000;
}
.mhurV543Form input,
.mhurV543Form select,
.mhurV543Form textarea,
.mhurV543Reply {
  width: 100%;
  padding: 10px 11px;
  border: 2px solid #42658e;
  border-radius: 9px;
  background: #04101e;
  color: #fff;
}
.mhurV543Form textarea,
.mhurV543Reply {
  min-height: 105px;
  resize: vertical;
}
.mhurV543FileHelp {
  color: #a9bdd7;
  font-size: 12px;
  font-weight: 400;
}
.mhurV543Drafts {
  display: grid;
  grid-template-columns: repeat(3, minmax(100px, 180px));
  gap: 8px;
}
.mhurV543Drafts figure {
  margin: 0;
  overflow: hidden;
  border: 2px solid #000;
  border-radius: 9px;
  background: #071321;
}
.mhurV543Drafts img {
  width: 100%;
  height: 105px;
  display: block;
  object-fit: contain;
}
.mhurV543Drafts figcaption {
  padding: 4px 6px;
  font-size: 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mhurV543Status,
.mhurV543Empty,
.mhurV543Error,
.mhurV543Loading {
  padding: 24px;
  border: 2px dashed #45698f;
  border-radius: 12px;
  color: #c7d7eb;
  text-align: center;
}
.mhurV543Error {
  border-color: #e25764;
  color: #ff9ea6;
}
.mhurV543ReplyBox {
  margin-top: 10px;
  padding: 10px;
  border-left: 6px solid #25d876;
  border-radius: 8px;
  background: #0d3324;
}
.mhurV543ReplyBox strong {
  display: block;
  margin-bottom: 5px;
  color: #69f5a6;
}
.mhurV543SqlNotice {
  margin-top: 10px;
  padding: 10px;
  border: 2px solid #a68000;
  border-radius: 9px;
  background: #352b00;
  color: #ffe66d;
  text-align: left;
}

body.mhurV543ModalOpen { overflow: hidden !important; }

@media (max-width: 760px) {
  .mhurV543Overlay {
    inset: var(--mhur-mobile-header-height, 112px) 0 0;
    padding: 5px;
  }
  .mhurV543Panel {
    width: 100%;
    max-height: 100%;
    border-radius: 12px;
  }
  .mhurV543Panel > header {
    padding: 11px 12px;
  }
  .mhurV543Close {
    width: 43px;
    height: 43px;
    flex-basis: 43px;
  }
  .mhurV543Body { padding: 10px; }
  .mhurV543Back {
    top: -10px;
    margin-top: 0;
  }
  .mhurV543Dashboard {
    grid-template-columns: 1fr;
  }
  .mhurV543DashboardCard {
    min-height: 110px;
  }
  .mhurV543Item > header,
  .mhurV543ViewHead {
    flex-direction: column;
  }
  .mhurV543Target {
    grid-template-columns: 84px minmax(0, 1fr);
  }
  .mhurV543Target img {
    width: 84px;
    height: 72px;
  }
  .mhurV543Attachments,
  .mhurV543Drafts {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .mhurV543Attachment img { height: 95px; }
  .mhurV543Drafts img { height: 82px; }
}

@media (max-width: 420px) {
  .mhurV543Attachments,
  .mhurV543Drafts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


/* ===== css/v547-mobile-profile-roles.css ===== */
/* ==========================================================================
   MHUR NEXUS — V547
   Mobile, Patch Notes, cartes multi-rôles et profil sans doublons.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. PROFIL : les anciens boutons restent dans le DOM afin que leurs scripts
      ne les recréent pas, mais un seul exemplaire de chaque action est visible.
   -------------------------------------------------------------------------- */
html body #mhurAuthOverlay .mhurProfileCard
button[data-v547-profile-duplicate="1"],
html body #mhurAuthOverlay [class*="ProfileCard"]
button[data-v547-profile-duplicate="1"] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

html body #mhurAuthOverlay .mhurProfileCard
button[data-v547-profile-keep="feedback"],
html body #mhurAuthOverlay [class*="ProfileCard"]
button[data-v547-profile-keep="feedback"] {
  display: flex !important;
  width: 100% !important;
  min-height: 50px !important;
  margin: 10px 0 0 !important;
  padding: 11px 16px !important;
  align-items: center !important;
  justify-content: center !important;
  border: 4px solid #000 !important;
  border-radius: 13px !important;
  background: linear-gradient(100deg, #ff9c00, #ffe000) !important;
  color: #07101d !important;
  font-weight: 1000 !important;
  box-shadow: 0 5px 0 #000 !important;
}

html body #mhurAuthOverlay .mhurProfileCard
button[data-v547-profile-keep="moderation"],
html body #mhurAuthOverlay [class*="ProfileCard"]
button[data-v547-profile-keep="moderation"] {
  display: flex !important;
  width: 100% !important;
  min-height: 50px !important;
  margin: 10px 0 0 !important;
  padding: 11px 16px !important;
  align-items: center !important;
  justify-content: center !important;
  border: 4px solid #000 !important;
  border-radius: 13px !important;
  background: linear-gradient(100deg, #18d96b, #19c9de) !important;
  color: #07101d !important;
  font-weight: 1000 !important;
  box-shadow: 0 5px 0 #000 !important;
}

/* --------------------------------------------------------------------------
   2. CARTES PERSONNAGES : aucune hauteur fixe ne peut couper le troisième rôle.
   -------------------------------------------------------------------------- */
html body .cardsGrid {
  grid-auto-rows: auto !important;
  align-items: stretch !important;
}

html body .cardsGrid .card,
html body .card[data-char] {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  align-self: stretch !important;
}

html body .cardsGrid .card .cardBody,
html body .card[data-char] .cardBody {
  flex: 1 1 auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding-bottom: 24px !important;
  overflow: visible !important;
}

html body .card[data-char] .badges {
  flex: 0 0 auto !important;
  align-content: flex-start !important;
  margin-bottom: 0 !important;
  overflow: visible !important;
}

html body .card[data-char] .cardBody > p {
  flex: 0 0 auto !important;
  min-height: 0 !important;
  margin: 16px 0 0 !important;
  padding-bottom: 2px !important;
}

/* --------------------------------------------------------------------------
   3. PATCH NOTES : le header de chaque personnage réserve réellement la place
      du portrait. Les changements commencent uniquement après le portrait.
   -------------------------------------------------------------------------- */
html body .s18PatchCharacterV10 {
  contain: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

html body .s18PatchCharacterV10 > header {
  position: relative !important;
  z-index: 2 !important;
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 112px minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: center !important;
  width: 100% !important;
  height: auto !important;
  min-height: 140px !important;
  max-height: none !important;
  padding: 13px !important;
  overflow: visible !important;
}

html body .s18PatchCharacterV10 > header > div:last-child {
  min-width: 0 !important;
  align-self: center !important;
}

html body .s18PatchPortraitV10 {
  position: relative !important;
  inset: auto !important;
  width: 112px !important;
  height: 112px !important;
  min-width: 112px !important;
  min-height: 112px !important;
  max-width: 112px !important;
  max-height: 112px !important;
  flex: 0 0 112px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

html body .s18PatchPortraitV10 img {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  transform: none !important;
  translate: none !important;
  scale: none !important;
}

html body .s18PatchChangesV10 {
  position: relative !important;
  z-index: 1 !important;
  clear: both !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
}

/* --------------------------------------------------------------------------
   4. MOBILE : espace garanti entre les deux lignes du header et la page.
      Le pseudo-élément empêche aussi la marge du premier bloc de remonter.
   -------------------------------------------------------------------------- */
@media (max-width: 760px) {
  html body #app::before {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: 24px !important;
    flex: 0 0 24px !important;
    pointer-events: none !important;
  }

  html body #app {
    padding-top: 0 !important;
  }

  html body .cardsGrid .card,
  html body .card[data-char] {
    width: min(100%, 390px) !important;
    max-width: 390px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  html body .card[data-char] .cardBody {
    padding-bottom: 28px !important;
  }

  html body .card[data-char] .badges {
    gap: 11px !important;
  }

  html body .card[data-char] .badge {
    min-height: 58px !important;
  }

  html body .s18PatchCharacterV10 > header {
    grid-template-columns: 138px minmax(0, 1fr) !important;
    gap: 12px !important;
    min-height: 170px !important;
    padding: 15px !important;
  }

  html body .s18PatchPortraitV10 {
    width: 138px !important;
    height: 138px !important;
    min-width: 138px !important;
    min-height: 138px !important;
    max-width: 138px !important;
    max-height: 138px !important;
    flex-basis: 138px !important;
  }

  html body .s18PatchCharacterV10 h4 {
    font-size: clamp(23px, 6vw, 30px) !important;
    line-height: 1.05 !important;
    overflow-wrap: anywhere !important;
  }

  html body .s18PatchChangesV10 {
    padding-top: 16px !important;
  }

  html body .s18PatchChangeV10 {
    margin-top: 0 !important;
  }
}

@media (max-width: 420px) {
  html body #app::before {
    height: 20px !important;
    flex-basis: 20px !important;
  }

  html body .s18PatchCharacterV10 > header {
    grid-template-columns: 120px minmax(0, 1fr) !important;
    min-height: 152px !important;
    gap: 10px !important;
    padding: 13px !important;
  }

  html body .s18PatchPortraitV10 {
    width: 120px !important;
    height: 120px !important;
    min-width: 120px !important;
    min-height: 120px !important;
    max-width: 120px !important;
    max-height: 120px !important;
    flex-basis: 120px !important;
  }
}


/* ===== css/v548-mobile-season-offset.css ===== */
/* MHUR NEXUS — V548
   Petit ajustement mobile : le contenu commence 10 px plus bas.
*/
@media (max-width: 760px) {
  html body #app::before {
    height: 34px !important;
    flex-basis: 34px !important;
  }
}
@media (max-width: 420px) {
  html body #app::before {
    height: 30px !important;
    flex-basis: 30px !important;
  }
}


/* ===== css/v559-discounts-stable.css ===== */
/* MHUR FRANCE — V559 : cartes Réductions de points personnage */
.discountGridV296.v559DiscountGrid{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
  overflow:visible!important;
}
.discountGridV296.v559DiscountGrid > .v559DiscountCard{
  position:relative!important;
  display:grid!important;
  grid-template-rows:174px 40px 45px 45px!important;
  min-width:0!important;
  min-height:304px!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:4px solid #05070b!important;
  border-radius:8px!important;
  background:#10141d!important;
  box-shadow:0 5px 0 #05070b!important;
  color:#fff!important;
}
.discountGridV296 .v559DiscountArt,
.discountGridV296 .v559DiscountCard .s18DiscountArtV19{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:174px!important;
  min-height:174px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  background:#17263b!important;
}
.discountGridV296 .v559DiscountCard .v559DiscountArt > img,
.discountGridV296 .v559DiscountCard .s18DiscountArtV19 > img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
  opacity:1!important;
  background:transparent!important;
}
.discountGridV296 .v559DiscountName{
  display:grid!important;
  place-items:center!important;
  min-width:0!important;
  margin:0!important;
  padding:5px 7px!important;
  border:0!important;
  border-top:1px solid #080a0e!important;
  background:#12151d!important;
  color:#fff!important;
  font-family:Impact,"Arial Black",sans-serif!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:1.05!important;
  text-align:center!important;
  text-shadow:1px 2px 0 #000!important;
  white-space:normal!important;
  overflow:hidden!important;
}
.discountGridV296 .v559DiscountRole{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-width:0!important;
  margin:0!important;
  padding:6px 7px!important;
  border:0!important;
  border-top:1px solid #080a0e!important;
  border-bottom:1px solid #080a0e!important;
  background:#273d5d!important;
  color:#fff!important;
}
.discountGridV296 .v559RoleIcon{
  display:block!important;
  flex:0 0 24px!important;
  width:24px!important;
  height:24px!important;
  max-width:24px!important;
  max-height:24px!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  transform:none!important;
  filter:drop-shadow(0 1px 0 #000)!important;
  background:transparent!important;
}
.discountGridV296 .v559RoleBadge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  margin:0!important;
  padding:4px 10px 3px!important;
  border:2px solid #050505!important;
  border-radius:4px!important;
  background:#ffed00!important;
  color:#050505!important;
  font-family:Impact,"Arial Black",sans-serif!important;
  font-size:12px!important;
  font-weight:1000!important;
  line-height:1!important;
  letter-spacing:.3px!important;
  text-shadow:none!important;
  white-space:nowrap!important;
  box-shadow:0 1px 0 #000!important;
}
.discountGridV296 .v559DiscountPointsRow{
  display:grid!important;
  place-items:center!important;
  min-width:0!important;
  margin:0!important;
  padding:6px 3px 5px!important;
  border:0!important;
  background:#10141d!important;
}
.discountGridV296 .v559DiscountPoints{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:3px 5px!important;
  border:2px solid #050505!important;
  border-radius:5px!important;
  background:#ffed00!important;
  color:#050505!important;
  font-family:Impact,"Arial Black",sans-serif!important;
  font-size:18px!important;
  font-weight:1000!important;
  line-height:1!important;
  text-align:center!important;
  text-shadow:none!important;
  box-shadow:none!important;
}
.homeFootV296{display:none!important}

@media(max-width:1100px){
  .discountGridV296.v559DiscountGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:700px){
  .discountGridV296.v559DiscountGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .discountGridV296.v559DiscountGrid > .v559DiscountCard{grid-template-rows:150px 39px 43px 43px!important;min-height:275px!important}
  .discountGridV296 .v559DiscountArt,
  .discountGridV296 .v559DiscountCard .s18DiscountArtV19{height:150px!important;min-height:150px!important}
  .discountGridV296 .v559RoleBadge{font-size:11px!important;padding-inline:7px!important}
  .discountGridV296 .v559DiscountPoints{font-size:17px!important}
}
@media(max-width:390px){
  .discountGridV296.v559DiscountGrid{grid-template-columns:1fr!important}
}


/* ===== css/v560-discount-role-dedupe.css ===== */
/* MHUR FRANCE — V560 : aucun élément ne doit apparaître après les points. */
.discountGridV296.v559DiscountGrid > .v559DiscountCard > .v559DiscountPointsRow ~ *{
  display:none!important;
}

.discountGridV296.v559DiscountGrid > .v559DiscountCard{
  grid-template-rows:174px 40px 45px 45px!important;
}

@media(max-width:700px){
  .discountGridV296.v559DiscountGrid > .v559DiscountCard{
    grid-template-rows:150px 39px 43px 43px!important;
  }
}


/* ===== css/v590-scrollbars-mods.css ===== */

/* MHUR Nexus — V590 : barres de défilement globales + flèche Mods unique */

:root{
  --mhur-scroll-track:#07101d;
  --mhur-scroll-track-mid:#142844;
  --mhur-scroll-yellow:#ffe000;
  --mhur-scroll-yellow-light:#fff36b;
  --mhur-scroll-cyan:#19c9de;
  --mhur-scroll-cyan-dark:#078ea5;
}

/* Firefox : toutes les zones déroulantes. */
html,
body,
body *{
  scrollbar-width:thin!important;
  scrollbar-color:var(--mhur-scroll-yellow) var(--mhur-scroll-track)!important;
}

/* Chromium, Edge, Chrome, Safari : site, panneaux, modales, champs, listes. */
html::-webkit-scrollbar,
body::-webkit-scrollbar,
body *::-webkit-scrollbar{
  width:13px!important;
  height:13px!important;
}

html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track,
body *::-webkit-scrollbar-track{
  background:
    linear-gradient(
      180deg,
      var(--mhur-scroll-track) 0%,
      var(--mhur-scroll-track-mid) 50%,
      var(--mhur-scroll-track) 100%
    )!important;
  border:2px solid #000!important;
  border-radius:999px!important;
  box-shadow:inset 0 0 0 1px rgba(25,201,222,.16)!important;
}

html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb,
body *::-webkit-scrollbar-thumb{
  min-width:44px!important;
  min-height:44px!important;
  border:3px solid #02060c!important;
  border-radius:999px!important;
  background:
    linear-gradient(
      180deg,
      var(--mhur-scroll-yellow-light) 0%,
      var(--mhur-scroll-yellow) 38%,
      var(--mhur-scroll-cyan) 72%,
      var(--mhur-scroll-cyan-dark) 100%
    )!important;
  background-clip:padding-box!important;
  box-shadow:
    inset 0 0 0 2px rgba(255,255,255,.2),
    0 0 7px rgba(255,224,0,.35)!important;
}

html::-webkit-scrollbar-thumb:horizontal,
body::-webkit-scrollbar-thumb:horizontal,
body *::-webkit-scrollbar-thumb:horizontal{
  background:
    linear-gradient(
      90deg,
      var(--mhur-scroll-yellow-light) 0%,
      var(--mhur-scroll-yellow) 38%,
      var(--mhur-scroll-cyan) 72%,
      var(--mhur-scroll-cyan-dark) 100%
    )!important;
}

html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover,
body *::-webkit-scrollbar-thumb:hover{
  background:
    linear-gradient(
      180deg,
      #fff9a8 0%,
      #ffea27 38%,
      #45e4f3 72%,
      #0bb5ce 100%
    )!important;
}

html::-webkit-scrollbar-thumb:active,
body::-webkit-scrollbar-thumb:active,
body *::-webkit-scrollbar-thumb:active{
  background:
    linear-gradient(
      180deg,
      #ffe000 0%,
      #ffb000 44%,
      #19c9de 72%,
      #08798d 100%
    )!important;
}

html::-webkit-scrollbar-button,
body::-webkit-scrollbar-button,
body *::-webkit-scrollbar-button{
  display:none!important;
  width:0!important;
  height:0!important;
}

html::-webkit-scrollbar-corner,
body::-webkit-scrollbar-corner,
body *::-webkit-scrollbar-corner{
  background:var(--mhur-scroll-track)!important;
}

/* Le résumé natif ne doit produire aucun marqueur supplémentaire. */
html body .modsTutorial > summary{
  list-style:none!important;
}

html body .modsTutorial > summary::marker{
  content:""!important;
  display:none!important;
  font-size:0!important;
}

html body .modsTutorial > summary::-webkit-details-marker{
  display:none!important;
  width:0!important;
  height:0!important;
}

/*
  Une seule flèche : le pseudo-élément de droite.
  Toutes les anciennes flèches réelles sont masquées, quelle que soit
  leur version ou leur nom de classe.
*/
html body .modsTutorial > summary::before{
  content:none!important;
  display:none!important;
}

html body .modsTutorial > summary::after{
  content:"⌄"!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 56px!important;
  width:56px!important;
  min-width:56px!important;
  height:56px!important;
  margin-left:auto!important;
  border:4px solid #000!important;
  border-radius:50%!important;
  background:#07111f!important;
  color:#ffe000!important;
  font-size:38px!important;
  font-weight:1000!important;
  line-height:1!important;
  box-shadow:0 4px 0 #000!important;
  transform:rotate(0deg)!important;
  transform-origin:center!important;
  transition:transform .18s ease!important;
  pointer-events:none!important;
}

html body .modsTutorial[open] > summary::after{
  transform:rotate(180deg)!important;
}

/* Classes connues et futures contenant Arrow/Chevron dans le tutoriel. */
html body .modsTutorial
  :is(
    [class*="Arrow"],
    [class*="arrow"],
    [class*="Chevron"],
    [class*="chevron"],
    [data-mods-arrow],
    [data-mhur-extra-mod-arrow]
  ){
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

/* La flèche est compacte sur téléphone, sans créer de deuxième ligne. */
@media(max-width:700px){
  html body .modsTutorial > summary::after{
    flex-basis:48px!important;
    width:48px!important;
    min-width:48px!important;
    height:48px!important;
    font-size:32px!important;
  }

  html::-webkit-scrollbar,
  body::-webkit-scrollbar,
  body *::-webkit-scrollbar{
    width:10px!important;
    height:10px!important;
  }
}


/* ===== css/v592-notes-mods-stable.css ===== */

/* MHUR Nexus — V592 : boutons Notes visibles + flèche Mods propre */

/* ------------------------------------------------------------------------- */
/* Bouton du header : son nom reste volontairement en anglais dans les 2 langues. */
/* ------------------------------------------------------------------------- */
html body #mhurPatchDevButtonV14,
html body .mhurPatchDevButtonV14,
html body [data-s18-notes-button]{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  min-width:46px!important;
  min-height:42px!important;
  z-index:300!important;
}

/* ------------------------------------------------------------------------- */
/* Onglets Patch Notes / Dev Notes : jamais masqués.                         */
/* ------------------------------------------------------------------------- */
html body #s18NotesDevModalV10 .s18NotesPanelV10{
  display:flex!important;
  flex-direction:column!important;
}

html body #s18NotesDevModalV10 .s18NotesPanelV10 > nav,
html body #s18NotesDevModalV10 .mhurNotesTabsV592{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  position:relative!important;
  z-index:80!important;
  flex:0 0 62px!important;
  width:100%!important;
  min-height:62px!important;
  height:62px!important;
  margin:0!important;
  padding:7px 18px!important;
  gap:10px!important;
  overflow:visible!important;
  border-top:2px solid #03070d!important;
  border-bottom:2px solid #35628f!important;
  background:#09182b!important;
}

html body #s18NotesDevModalV10 .s18NotesPanelV10 > nav > button,
html body #s18NotesDevModalV10 .mhurNotesTabsV592 > button{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  align-items:center!important;
  justify-content:center!important;
  flex:1 1 50%!important;
  width:auto!important;
  min-width:150px!important;
  min-height:46px!important;
  margin:0!important;
  padding:9px 18px!important;
  border:3px solid #02060b!important;
  border-radius:12px!important;
  background:#183557!important;
  color:#f7fbff!important;
  font-size:17px!important;
  font-weight:1000!important;
  line-height:1!important;
  letter-spacing:.2px!important;
  text-align:center!important;
  text-transform:none!important;
  cursor:pointer!important;
  box-shadow:0 3px 0 #02060b!important;
}

html body #s18NotesDevModalV10 .s18NotesPanelV10 > nav > button:hover,
html body #s18NotesDevModalV10 .mhurNotesTabsV592 > button:hover{
  background:#24517e!important;
  color:#fff36b!important;
}

html body #s18NotesDevModalV10 .s18NotesPanelV10 > nav > button.active,
html body #s18NotesDevModalV10 .mhurNotesTabsV592 > button.active{
  border-color:#02060b!important;
  background:linear-gradient(135deg,#ffe000 0%,#ffae00 100%)!important;
  color:#07101d!important;
  box-shadow:
    inset 0 0 0 2px rgba(255,255,255,.24),
    0 3px 0 #02060b!important;
}

/* La zone des notes reste sous les onglets au lieu de les recouvrir. */
html body #s18NotesDevModalV10 .s18NotesBodyV10{
  position:relative!important;
  z-index:10!important;
  flex:1 1 auto!important;
  min-height:0!important;
}

html body #s18NotesDevModalV10 [data-patch-index]{
  pointer-events:auto!important;
  cursor:pointer!important;
  position:relative!important;
  z-index:20!important;
}

/* ------------------------------------------------------------------------- */
/* Tutoriel Mods : suppression de l'ancien V et nouvelle flèche SVG propre.   */
/* ------------------------------------------------------------------------- */
html body .modsTutorial > summary{
  position:relative!important;
  list-style:none!important;
  padding-right:86px!important;
}

html body .modsTutorial > summary::marker{
  content:""!important;
  display:none!important;
  font-size:0!important;
}

html body .modsTutorial > summary::-webkit-details-marker{
  display:none!important;
}

html body .modsTutorial > summary::before{
  content:none!important;
  display:none!important;
}

/*
  La flèche est entièrement dessinée dans une image SVG.
  Aucun texte "V", aucun caractère déformé, aucun second bouton.
*/
html body .modsTutorial > summary::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  top:50%!important;
  right:24px!important;
  width:58px!important;
  height:58px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background-color:transparent!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='32' r='28' fill='%2307111f' stroke='%23000000' stroke-width='5'/%3E%3Cpath d='M18 25 L32 39 L46 25' fill='none' stroke='%23ffe000' stroke-width='7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:58px 58px!important;
  box-shadow:0 4px 0 #000!important;
  transform:translateY(-50%) rotate(0deg)!important;
  transform-origin:center!important;
  transition:
    transform .18s ease,
    filter .18s ease!important;
  pointer-events:none!important;
}

html body .modsTutorial > summary:hover::after{
  filter:drop-shadow(0 0 6px rgba(255,224,0,.65))!important;
}

html body .modsTutorial[open] > summary::after{
  transform:translateY(-50%) rotate(180deg)!important;
}

/* Toutes les anciennes flèches réelles sont supprimées visuellement. */
html body .modsTutorial
:is(
  [class*="Arrow"],
  [class*="arrow"],
  [class*="Chevron"],
  [class*="chevron"],
  [data-mods-arrow],
  [data-mhur-extra-mod-arrow],
  [data-v549-old-arrow],
  [data-v592-old-arrow]
){
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  opacity:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}

@media(max-width:700px){
  html body #s18NotesDevModalV10 .s18NotesPanelV10 > nav,
  html body #s18NotesDevModalV10 .mhurNotesTabsV592{
    flex-basis:56px!important;
    height:56px!important;
    min-height:56px!important;
    padding:6px 8px!important;
    gap:7px!important;
  }

  html body #s18NotesDevModalV10 .s18NotesPanelV10 > nav > button,
  html body #s18NotesDevModalV10 .mhurNotesTabsV592 > button{
    min-width:0!important;
    min-height:42px!important;
    padding:7px 8px!important;
    font-size:14px!important;
  }

  html body .modsTutorial > summary{
    padding-right:70px!important;
  }

  html body .modsTutorial > summary::after{
    right:12px!important;
    width:50px!important;
    height:50px!important;
    background-size:50px 50px!important;
  }
}


/* ===== css/v593-patch-dev-final.css ===== */

/* MHUR Nexus — V593 : dernier Patch Note complet */

.s18PatchDetailHeadV10 .mixed,
.s18ToneV10.mixed{
  color:#fff!important;
  background:linear-gradient(90deg,#c92340 0 50%,#15944a 50% 100%)!important;
  border:2px solid #05080d!important;
  border-radius:999px!important;
  font-weight:1000!important;
  white-space:nowrap!important;
}

.s18ToneV10.mixed{
  min-width:128px!important;
  text-align:center!important;
}

.s18PatchVariantV593{
  margin:2px 0 12px!important;
  color:#8ddcff!important;
  font-weight:900!important;
}

.s18MetricV593{
  margin:12px 0!important;
  padding:0!important;
}

.s18MetricV593 h6{
  margin:0!important;
  padding:8px 12px!important;
  border-left:5px solid #17c7dd!important;
  background:#10243d!important;
  color:#8edcff!important;
  font-size:17px!important;
  font-weight:1000!important;
}

.s18MetricLevelV593{
  display:inline-block!important;
  margin:8px 0 4px!important;
  padding:4px 9px!important;
  border-radius:999px!important;
  background:#1c3657!important;
  color:#fff!important;
  font-weight:900!important;
}

.s18MetricV593.tone-buff h6{border-left-color:#1ed46d!important}
.s18MetricV593.tone-nerf h6{border-left-color:#ff4e67!important}
.s18MetricV593.tone-mixed h6{border-left-color:#f4b62b!important}

.s18PatchTableV593 tr.after.buff td{background:#164b2d!important}
.s18PatchTableV593 tr.after.nerf td{background:#551923!important}
.s18PatchTableV593 tr.after.same td{background:#273347!important}

.s18PatchEmptyV593{
  padding-bottom:18px!important;
}

.s18PatchEmptyV593 > p{
  margin:12px 0 0!important;
  padding:16px 18px!important;
  border:2px solid #355b85!important;
  border-radius:12px!important;
  background:#0e2037!important;
  color:#dbeeff!important;
  font-weight:800!important;
}

.s18NewContentGroupsV593{
  display:grid!important;
  gap:16px!important;
}

.s18NewContentGroupsV593 article{
  padding:16px 18px!important;
  border:2px solid #355b85!important;
  border-radius:14px!important;
  background:#10243d!important;
}

.s18NewContentGroupsV593 h4{
  margin:0 0 10px!important;
  color:#ffe000!important;
  font-size:22px!important;
}

.s18NewContentGroupsV593 ul{
  margin:0!important;
  padding-left:24px!important;
}

.s18NewContentGroupsV593 li{
  margin:8px 0!important;
  color:#f5f9ff!important;
  font-weight:700!important;
}

@media(max-width:700px){
  .s18ToneV10.mixed{
    min-width:108px!important;
    font-size:10px!important;
  }

  .s18MetricV593 h6{
    font-size:15px!important;
  }
}


/* ===== css/v594-translations-tier-patch-arrow.css ===== */

/* MHUR Nexus — V594 : flèche Mods nette, traductions et NEW Tier List */

/* ------------------------------------------------------------------ */
/* Tutoriel Mods : toutes les anciennes flèches sont neutralisées.    */
/* ------------------------------------------------------------------ */
html body .modsTutorial > summary{
  position:relative!important;
  list-style:none!important;
  padding-right:92px!important;
}

html body .modsTutorial > summary::before,
html body .modsTutorial > summary::after{
  content:none!important;
  display:none!important;
}

html body .modsTutorial > summary::marker{
  content:""!important;
  display:none!important;
  font-size:0!important;
}

html body .modsTutorial > summary::-webkit-details-marker{
  display:none!important;
}

html body .modsTutorial
:is(
  [class*="Arrow"],
  [class*="arrow"],
  [class*="Chevron"],
  [class*="chevron"],
  [data-mods-arrow],
  [data-mhur-extra-mod-arrow],
  [data-v549-old-arrow],
  [data-v592-old-arrow],
  [data-v594-old-arrow]
):not(.mhurModsArrowV594){
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  opacity:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}

.mhurModsArrowV594{
  position:absolute!important;
  top:50%!important;
  right:24px!important;
  display:grid!important;
  place-items:center!important;
  width:60px!important;
  height:60px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  transform:translateY(-50%)!important;
  pointer-events:none!important;
  z-index:30!important;
}

.mhurModsArrowV594 svg{
  display:block!important;
  width:60px!important;
  height:60px!important;
  overflow:visible!important;
  filter:drop-shadow(0 4px 0 #000)!important;
}

.mhurModsArrowV594 .mhurModsArrowCircleV594{
  fill:#07111f!important;
  stroke:#000!important;
  stroke-width:5!important;
}

.mhurModsArrowV594 .mhurModsArrowPathV594{
  fill:none!important;
  stroke:#ffe000!important;
  stroke-width:7!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

.modsTutorial > summary:hover .mhurModsArrowV594 svg{
  filter:
    drop-shadow(0 4px 0 #000)
    drop-shadow(0 0 6px rgba(255,224,0,.72))!important;
}

/* ------------------------------------------------------------------ */
/* Badge NEW de Gentle dans la Tier List.                              */
/* ------------------------------------------------------------------ */
.mhurTierItem,
.mhurPublishedMini{
  position:relative!important;
}

.mhurGentleTierNewV594{
  position:absolute!important;
  top:5px!important;
  right:5px!important;
  display:block!important;
  width:58px!important;
  max-width:38%!important;
  height:auto!important;
  z-index:60!important;
  pointer-events:none!important;
  filter:
    drop-shadow(0 2px 0 #000)
    drop-shadow(0 0 5px rgba(255,224,0,.65))!important;
  animation:mhurGentleTierNewPulseV594 1.15s ease-in-out infinite!important;
}

@keyframes mhurGentleTierNewPulseV594{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.12)}
}

@media(max-width:700px){
  html body .modsTutorial > summary{
    padding-right:74px!important;
  }

  .mhurModsArrowV594{
    right:12px!important;
    width:52px!important;
    height:52px!important;
  }

  .mhurModsArrowV594 svg{
    width:52px!important;
    height:52px!important;
  }

  .mhurGentleTierNewV594{
    width:48px!important;
  }
}


/* ===== css/v595-patch-portraits-tables.css ===== */
/* MHUR Nexus — V595 : portraits visibles et tableaux pleine largeur */

/* Chaque carte personnage conserve toute la largeur disponible. */
#s18NotesDevModalV10 .s18PatchCharacterV10,
#s18NotesDevModalV10 .s18PatchChangesV10,
#s18NotesDevModalV10 .s18PatchChangeV10{
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

/* Portrait de profil local. */
#s18NotesDevModalV10 .s18PatchPortraitV10{
  display:grid!important;
  place-items:center!important;
  width:138px!important;
  min-width:138px!important;
  height:138px!important;
  min-height:138px!important;
  overflow:hidden!important;
  border:4px solid #02060b!important;
  border-radius:16px!important;
  background:#07111f!important;
}

#s18NotesDevModalV10 .s18PatchPortraitV10 img,
#s18NotesDevModalV10 .s18PatchPortraitImageV595{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
}

/* Deux colonnes seulement quand l'image de l'Alter existe. */
#s18NotesDevModalV10 .s18PatchSkillV10{
  display:grid!important;
  grid-template-columns:120px minmax(0,1fr)!important;
  align-items:start!important;
  gap:18px!important;
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

#s18NotesDevModalV10 .s18PatchSkillV10 > main{
  grid-column:2!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  box-sizing:border-box!important;
}

/*
  Lorsque l'image manque réellement, le contenu occupe les deux colonnes.
  C'est ce qui empêche le tableau de retomber dans la colonne de 120 px.
*/
#s18NotesDevModalV10
.s18PatchSkillV10.s18NoSkillImageV595{
  grid-template-columns:minmax(0,1fr)!important;
}

#s18NotesDevModalV10
.s18PatchSkillV10.s18NoSkillImageV595 > main,
#s18NotesDevModalV10
.s18PatchSkillV10 > main:only-child{
  grid-column:1 / -1!important;
}

#s18NotesDevModalV10 .s18PatchSkillImageV595,
#s18NotesDevModalV10
.s18PatchSkillV10 > div:not(.s18PatchTableWrapV10){
  grid-column:1!important;
  display:grid!important;
  place-items:center!important;
  width:120px!important;
  min-width:120px!important;
  height:120px!important;
  overflow:hidden!important;
  border:3px solid #315d89!important;
  border-radius:14px!important;
  background:#07111f!important;
}

#s18NotesDevModalV10 .s18PatchSkillImageV595 img,
#s18NotesDevModalV10 .s18PatchSkillImageElementV595{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
}

/* Le contenu et chacune de ses statistiques occupent toute la largeur. */
#s18NotesDevModalV10 .s18MetricV593,
#s18NotesDevModalV10 .s18PatchWideV595{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  box-sizing:border-box!important;
}

/* Zone de défilement horizontale lisible. */
#s18NotesDevModalV10 .s18PatchTableWrapV10{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding-bottom:8px!important;
  box-sizing:border-box!important;
}

/* Un tableau à 9 niveaux ne peut plus mesurer quelques centimètres. */
#s18NotesDevModalV10 .s18PatchTableV10{
  width:100%!important;
  min-width:820px!important;
  max-width:none!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
  box-sizing:border-box!important;
}

#s18NotesDevModalV10 .s18PatchTableV10 th,
#s18NotesDevModalV10 .s18PatchTableV10 td{
  width:auto!important;
  min-width:72px!important;
  padding:11px 10px!important;
  text-align:center!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
}

#s18NotesDevModalV10 .s18PatchTableV10 th:first-child{
  width:112px!important;
  min-width:112px!important;
}

/* Les petites tables gardent également une taille normale. */
#s18NotesDevModalV10 .s18PatchTableV10 tr{
  width:100%!important;
}

@media(max-width:800px){
  #s18NotesDevModalV10 .s18PatchPortraitV10{
    width:108px!important;
    min-width:108px!important;
    height:108px!important;
    min-height:108px!important;
  }

  #s18NotesDevModalV10 .s18PatchSkillV10{
    grid-template-columns:92px minmax(0,1fr)!important;
    gap:12px!important;
  }

  #s18NotesDevModalV10 .s18PatchSkillImageV595,
  #s18NotesDevModalV10
  .s18PatchSkillV10 > div:not(.s18PatchTableWrapV10){
    width:92px!important;
    min-width:92px!important;
    height:92px!important;
  }

  #s18NotesDevModalV10 .s18PatchTableV10{
    min-width:760px!important;
  }
}

@media(max-width:560px){
  #s18NotesDevModalV10 .s18PatchSkillV10{
    grid-template-columns:minmax(0,1fr)!important;
  }

  #s18NotesDevModalV10 .s18PatchSkillV10 > main{
    grid-column:1!important;
  }

  #s18NotesDevModalV10 .s18PatchSkillImageV595,
  #s18NotesDevModalV10
  .s18PatchSkillV10 > div:not(.s18PatchTableWrapV10){
    grid-column:1!important;
    width:110px!important;
    min-width:110px!important;
    height:110px!important;
    margin-bottom:4px!important;
  }
}


/* ===== css/v596-tuning-mods.css ===== */

/* MHUR Nexus — V596 : flèche Mods et protection des traductions */

html body .modsTutorial > summary{
  position:relative!important;
  list-style:none!important;
  padding-right:92px!important;
}

html body .modsTutorial > summary::before,
html body .modsTutorial > summary::after{
  content:none!important;
  display:none!important;
}

html body .modsTutorial > summary::marker{
  content:""!important;
  display:none!important;
  font-size:0!important;
}

html body .modsTutorial > summary::-webkit-details-marker{
  display:none!important;
}

/*
  Le nom ne contient ni "Arrow" ni "Chevron".
  Les anciens sélecteurs [class*="Arrow"] ne peuvent pas le masquer.
*/
html body .modsTutorial .mhurModsToggleV596{
  position:absolute!important;
  top:50%!important;
  right:22px!important;
  display:grid!important;
  visibility:visible!important;
  place-items:center!important;
  width:62px!important;
  height:62px!important;
  min-width:62px!important;
  min-height:62px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  opacity:1!important;
  overflow:visible!important;
  background:transparent!important;
  transform:translateY(-50%)!important;
  pointer-events:none!important;
  z-index:999!important;
}

html body .modsTutorial .mhurModsToggleV596 svg{
  display:block!important;
  visibility:visible!important;
  width:62px!important;
  height:62px!important;
  opacity:1!important;
  overflow:visible!important;
  filter:drop-shadow(0 4px 0 #000)!important;
}

html body .modsTutorial .mhurModsToggleV596 circle{
  display:block!important;
  visibility:visible!important;
  fill:#07111f!important;
  stroke:#000!important;
  stroke-width:5!important;
  opacity:1!important;
}

html body .modsTutorial .mhurModsToggleV596 path{
  display:block!important;
  visibility:visible!important;
  fill:none!important;
  stroke:#ffe000!important;
  stroke-width:7!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  opacity:1!important;
}

html body .modsTutorial > summary:hover .mhurModsToggleV596 svg{
  filter:
    drop-shadow(0 4px 0 #000)
    drop-shadow(0 0 7px rgba(255,224,0,.75))!important;
}

@media(max-width:700px){
  html body .modsTutorial > summary{
    padding-right:74px!important;
  }

  html body .modsTutorial .mhurModsToggleV596,
  html body .modsTutorial .mhurModsToggleV596 svg{
    right:11px!important;
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    min-height:52px!important;
  }
}


/* ===== css/v597-patch-layout.css ===== */
/* MHUR Nexus — V597 : Patch Notes layout */

#s18NotesDevModalV10 .s18PatchCharacterV10 > header{
  display:grid!important;
  grid-template-columns:118px minmax(0,1fr)!important;
  align-items:center!important;
  gap:18px!important;
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

#s18NotesDevModalV10 .s18PatchCharacterV10 > header > div:last-child{
  min-width:0!important;
  width:100%!important;
}

#s18NotesDevModalV10 .s18PatchCharacterV10 > header h4,
#s18NotesDevModalV10 .s18PatchCharacterV10 > header strong{
  display:block!important;
  max-width:100%!important;
  margin-left:0!important;
  overflow:visible!important;
  word-break:break-word!important;
}

#s18NotesDevModalV10 .s18PatchPortraitV10{
  width:118px!important;
  min-width:118px!important;
  height:118px!important;
  min-height:118px!important;
  margin:0!important;
}

#s18NotesDevModalV10 .s18PatchPortraitV10 img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

#s18NotesDevModalV10 .s18PatchSkillV10{
  display:grid!important;
  grid-template-columns:96px minmax(0,1fr)!important;
  align-items:start!important;
  gap:14px!important;
  width:100%!important;
  min-width:0!important;
}

#s18NotesDevModalV10 .s18PatchSkillV10 > main{
  grid-column:2!important;
  min-width:0!important;
  width:100%!important;
}

#s18NotesDevModalV10 .s18PatchSkillImageV595,
#s18NotesDevModalV10 .s18PatchSkillV10 > div:not(.s18PatchTableWrapV10){
  grid-column:1!important;
  width:96px!important;
  min-width:96px!important;
  height:96px!important;
  min-height:96px!important;
  margin:0!important;
}

#s18NotesDevModalV10 .s18PatchSkillImageV595 img,
#s18NotesDevModalV10 .s18PatchSkillV10 > div:not(.s18PatchTableWrapV10) img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

#s18NotesDevModalV10 .s18PatchTableWrapV10{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow-x:visible!important;
  overflow-y:hidden!important;
  padding-bottom:0!important;
}

#s18NotesDevModalV10 .s18PatchTableV10{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
}

#s18NotesDevModalV10 .s18PatchTableV10 th,
#s18NotesDevModalV10 .s18PatchTableV10 td{
  min-width:0!important;
  width:auto!important;
  padding:10px 6px!important;
  text-align:center!important;
  white-space:nowrap!important;
  font-size:clamp(12px,1.15vw,18px)!important;
}

#s18NotesDevModalV10 .s18PatchTableV10 th:first-child,
#s18NotesDevModalV10 .s18PatchTableV10 td:first-child{
  width:104px!important;
  min-width:104px!important;
}

@media (max-width: 980px){
  #s18NotesDevModalV10 .s18PatchCharacterV10 > header{
    grid-template-columns:104px minmax(0,1fr)!important;
    gap:14px!important;
  }

  #s18NotesDevModalV10 .s18PatchPortraitV10{
    width:104px!important;
    min-width:104px!important;
    height:104px!important;
    min-height:104px!important;
  }

  #s18NotesDevModalV10 .s18PatchSkillV10{
    grid-template-columns:84px minmax(0,1fr)!important;
    gap:12px!important;
  }

  #s18NotesDevModalV10 .s18PatchSkillImageV595,
  #s18NotesDevModalV10 .s18PatchSkillV10 > div:not(.s18PatchTableWrapV10){
    width:84px!important;
    min-width:84px!important;
    height:84px!important;
    min-height:84px!important;
  }

  #s18NotesDevModalV10 .s18PatchTableWrapV10{
    overflow-x:auto!important;
    padding-bottom:8px!important;
  }

  #s18NotesDevModalV10 .s18PatchTableV10{
    min-width:720px!important;
  }

  #s18NotesDevModalV10 .s18PatchTableV10 th,
  #s18NotesDevModalV10 .s18PatchTableV10 td{
    font-size:14px!important;
    padding:9px 6px!important;
  }

  #s18NotesDevModalV10 .s18PatchTableV10 th:first-child,
  #s18NotesDevModalV10 .s18PatchTableV10 td:first-child{
    width:96px!important;
    min-width:96px!important;
  }
}

@media (max-width: 560px){
  #s18NotesDevModalV10 .s18PatchCharacterV10 > header,
  #s18NotesDevModalV10 .s18PatchSkillV10{
    grid-template-columns:minmax(0,1fr)!important;
  }

  #s18NotesDevModalV10 .s18PatchSkillV10 > main{
    grid-column:1!important;
  }

  #s18NotesDevModalV10 .s18PatchPortraitV10,
  #s18NotesDevModalV10 .s18PatchSkillImageV595,
  #s18NotesDevModalV10 .s18PatchSkillV10 > div:not(.s18PatchTableWrapV10){
    width:96px!important;
    min-width:96px!important;
    height:96px!important;
    min-height:96px!important;
  }

  #s18NotesDevModalV10 .s18PatchTableWrapV10{
    overflow-x:auto!important;
    padding-bottom:8px!important;
  }

  #s18NotesDevModalV10 .s18PatchTableV10{
    min-width:680px!important;
  }
}


/* ===== css/v601-mobile-costumes.css ===== */

/* MHUR Nexus — V601 : costumes mobiles pleine largeur */

@media(max-width:760px){
  body .costumeGroupsWrap,
  body .costumeGalleryGroup,
  body .costumeGalleryGrid{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  body .costumeGalleryGroup{
    margin-left:0!important;
    margin-right:0!important;
  }

  body .costumeGalleryHead{
    width:100%!important;
    padding:12px 14px!important;
    font-size:clamp(25px,8vw,34px)!important;
    line-height:1.05!important;
    box-sizing:border-box!important;
  }

  body .costumeGalleryGrid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    justify-content:stretch!important;
    justify-items:stretch!important;
    align-items:start!important;
    gap:16px!important;
    padding:12px!important;
  }

  body .costumeTile{
    justify-self:stretch!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:clamp(440px,128vw,560px)!important;
    min-height:440px!important;
    max-height:560px!important;
    margin:0!important;
    border-radius:16px!important;
  }

  body .costumeTile > img,
  body .costumeTile img:first-child{
    position:absolute!important;
    top:34px!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:calc(100% - 160px)!important;
    max-width:none!important;
    max-height:none!important;
    padding:0 18px!important;
    margin:0!important;
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
    box-sizing:border-box!important;
  }

  body .costumeTileName{
    left:0!important;
    right:0!important;
    bottom:42px!important;
    width:100%!important;
    height:76px!important;
    min-height:76px!important;
    padding:0 14px!important;
    font-size:clamp(22px,7vw,30px)!important;
    line-height:1.05!important;
  }

  body .costumeMiniDesc{
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    height:42px!important;
    min-height:42px!important;
    padding:5px 58px 0!important;
    font-size:clamp(11px,3.3vw,14px)!important;
    line-height:1.05!important;
  }

  body .costumeTileBadge{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    min-height:46px!important;
    bottom:104px!important;
  }

  body .costumeTileBadge.left{
    left:14px!important;
  }

  body .costumeTileBadge.right{
    right:14px!important;
  }

  body .costumeTileRarity{
    top:12px!important;
    left:12px!important;
    font-size:18px!important;
  }

  body .costumeTileStars{
    top:10px!important;
    right:12px!important;
  }
}

/* Très petits téléphones : la carte reste large sans dépasser l'écran. */
@media(max-width:390px){
  body .costumeGalleryGrid{
    padding:8px!important;
  }

  body .costumeTile{
    height:clamp(420px,132vw,515px)!important;
    min-height:420px!important;
  }

  body .costumeTile > img,
  body .costumeTile img:first-child{
    padding:0 10px!important;
  }
}


/* ===== css/v603-mobile-patch-fix.css ===== */

/* MHUR Nexus - V603 */
.s18PatchSkillV10.mhurV603NoSkillImage,
#s18NotesDevModalV10 .s18PatchSkillV10.mhurV603NoSkillImage{
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
}
.s18PatchSkillV10.mhurV603NoSkillImage > main,
#s18NotesDevModalV10 .s18PatchSkillV10.mhurV603NoSkillImage > main{
  display: block !important;
  width: 100% !important;
  max-width: none !important;
}
.s18PatchSkillV10 > div img,
#s18NotesDevModalV10 .s18PatchSkillV10 > div img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  display: block !important;
}

@media (max-width: 900px){
  .mhurV603FixedBack{
    position: fixed !important;
    right: 18px !important;
    bottom: 22px !important;
    z-index: 9999 !important;
  }

  .mhurV603NamedPanel{
    top: 92px !important;
    margin-top: 0 !important;
    max-height: calc(100dvh - 115px) !important;
    overflow: auto !important;
  }

  .mhurV603CostumeCard{
    padding-top: 6px !important;
  }
  .mhurV603CostumeMainImage{
    transform: translateY(-8px) !important;
  }
  .mhurV603CostumeVariantName{
    display: block !important;
    margin-top: -6px !important;
    position: relative !important;
  }
  .mhurV603CostumeTuningIcon{
    position: relative !important;
    transform: translateY(-10px) !important;
  }
}


/* ===== css/v608-patch-notes-final.css ===== */
/* MHUR Nexus — V608 : rendu Patch Notes restauré */

#s18NotesDevModalV10
.s18PatchSkillV10.s18NoSkillImageV608,
#s18NotesDevModalV10
.s18PatchSkillV10:not(:has(>div)){
  display:block!important;
  width:100%!important;
  min-width:0!important;
}

#s18NotesDevModalV10
.s18PatchSkillV10.s18NoSkillImageV608>main,
#s18NotesDevModalV10
.s18PatchSkillV10:not(:has(>div))>main{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  grid-column:1 / -1!important;
}

#s18NotesDevModalV10
.s18PatchImageV608 img,
#s18NotesDevModalV10
.s18PatchPortraitV10 img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

#s18NotesDevModalV10
[data-v608-patch-content]{
  display:block!important;
  width:100%!important;
  min-height:120px!important;
}

#s18NotesDevModalV10
.s18NotesBodyV10>main:empty::after{
  content:'Loading Patch Notes…';
  display:block;
  padding:24px;
  color:#fff;
  font-weight:800;
}

@media(max-width:760px){
  #s18NotesDevModalV10
  .s18PatchTableWrapV10{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
}


/* ===== css/v610-patch-notes-health-no-image.css ===== */
/* MHUR Nexus - V610.1 : cartes PV / HP sans image */
#s18NotesDevModalV10 [data-v610-health-no-image="1"] [class*="PatchImage"],
#s18NotesDevModalV10 [data-v610-health-no-image="1"] [class*="SkillImage"],
#s18NotesDevModalV10 [data-v610-health-no-image="1"] .mhur-v610-health-no-image > img {
  display: none !important;
}

#s18NotesDevModalV10 [data-v610-health-no-image="1"] .mhur-v610-health-no-image {
  display: block !important;
  grid-template-columns: minmax(0, 1fr) !important;
  width: 100% !important;
  min-width: 0 !important;
}

#s18NotesDevModalV10 [data-v610-health-no-image="1"] .mhur-v610-health-no-image > main {
  display: block !important;
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}


/* ===== css/v611-patch-notes-health-remove-box.css ===== */
/* MHUR Nexus - V611 : aucune image et aucun cadre pour les PV / HP */

#s18NotesDevModalV10
[data-v611-health-no-image="1"]
.mhur-v611-health-no-image > :not(main){
  display:none!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

#s18NotesDevModalV10
[data-v611-health-no-image="1"]
.mhur-v611-health-no-image::before,
#s18NotesDevModalV10
[data-v611-health-no-image="1"]
.mhur-v611-health-no-image::after{
  content:none!important;
  display:none!important;
}

#s18NotesDevModalV10
[data-v611-health-no-image="1"]
.mhur-v611-health-no-image{
  display:block!important;
  grid-template-columns:minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  gap:0!important;
  column-gap:0!important;
  padding-left:0!important;
  margin-left:0!important;
}

#s18NotesDevModalV10
[data-v611-health-no-image="1"]
.mhur-v611-health-no-image > main{
  display:block!important;
  grid-column:1 / -1!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding-left:0!important;
  transform:none!important;
}


/* ===== css/v612-mobile-ui-fixes.css ===== */
/* MHUR Nexus — V612 : correctifs mobiles ciblés */

@media (max-width:760px){
  :root{
    --mhur-v612-header-bottom:
      max(
        var(--mhur-v517-measured-header-bottom,0px),
        var(
          --mhur-header-visual-bottom,
          var(--mhur-mobile-header-height,115px)
        )
      );
  }

  /* 1. Bouton Retour fixe, toujours sous le header et toujours cliquable. */
  html body #app > .back,
  html body .wrap > .back,
  html body .back{
    position:fixed!important;
    top:calc(var(--mhur-v612-header-bottom) + 8px)!important;
    right:auto!important;
    bottom:auto!important;
    left:max(10px,env(safe-area-inset-left,0px))!important;
    inset-inline-start:max(10px,env(safe-area-inset-left,0px))!important;
    display:inline-flex!important;
    width:max-content!important;
    max-width:calc(100vw - 20px)!important;
    margin:0!important;
    translate:none!important;
    transform:none!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    z-index:2147482500!important;
  }

  html body #app.mhurHasBackV57,
  html body #app:has(> .back){
    padding-top:72px!important;
  }

  /* Les fenêtres passent devant le bouton Retour, mais restent sous le header. */
  html body .nexusLinksOverlay,
  html body #s18NotesDevModalV10.s18NotesOverlayV10{
    z-index:2147482800!important;
  }

  /* 2. Réseaux sociaux / Créateurs de contenu sous le bas réel du header. */
  html body .nexusLinksOverlay,
  html body .nexusLinksOverlay.mhurV603NamedPanel{
    position:fixed!important;
    top:var(--mhur-v612-header-bottom)!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    inset:
      var(--mhur-v612-header-bottom)
      0
      0
      0!important;
    box-sizing:border-box!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    margin:0!important;
    padding:
      8px
      max(10px,env(safe-area-inset-right,0px))
      max(12px,env(safe-area-inset-bottom,0px))
      max(10px,env(safe-area-inset-left,0px))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scroll-padding-top:0!important;
  }

  /*
    V603 avait appliqué top:92px à plusieurs conteneurs génériques.
    On neutralise cette ancienne position dans la fenêtre actuelle.
  */
  html body .nexusLinksOverlay.mhurV603NamedPanel{
    top:var(--mhur-v612-header-bottom)!important;
    margin-top:0!important;
    max-height:none!important;
  }

  html body .nexusLinksOverlay
  .mhurV603NamedPanel:not(.nexusLinksPanel){
    position:static!important;
    top:auto!important;
    inset:auto!important;
    max-height:none!important;
    margin-top:0!important;
  }

  html body .nexusLinksPanel,
  html body .nexusLinksPanel.mhurV603NamedPanel,
  html body .mhurV603NamedPanel.nexusLinksPanel{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    inset:auto!important;
    box-sizing:border-box!important;
    width:min(560px,100%)!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:
      calc(100dvh - var(--mhur-v612-header-bottom) - 16px)!important;
    margin:0 auto!important;
    padding:14px 12px 12px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    translate:none!important;
    transform:none!important;
  }

  html body .nexusLinksTitle{
    margin-top:0!important;
    padding-top:4px!important;
  }

  /* 3. Patch Notes / Dev Notes sous le header, comme les autres panneaux. */
  html body #s18NotesDevModalV10.s18NotesOverlayV10{
    position:fixed!important;
    top:var(--mhur-v612-header-bottom)!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    inset:
      var(--mhur-v612-header-bottom)
      0
      0
      0!important;
    box-sizing:border-box!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:
      calc(100dvh - var(--mhur-v612-header-bottom))!important;
    margin:0!important;
    padding:4px!important;
  }

  html body #s18NotesDevModalV10 .s18NotesPanelV10{
    box-sizing:border-box!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    margin:0!important;
  }

  /*
    Pendant l'ouverture d'une fenêtre, le Retour de la page située dessous
    ne doit pas capter les touchers.
  */
  html body:has(.nexusLinksOverlay.is-open) #app > .back,
  html body.s18NotesOpenV11 #app > .back{
    pointer-events:none!important;
  }

  /* 4. Cartes costumes : photo et icônes T.U.N.I.N.G légèrement remontées. */
  html body #app .costumeGalleryGrid .costumeTile > img,
  html body #app .costumeGalleryGrid
  .costumeTile > img.mhurV603CostumeMainImage{
    top:20px!important;
    object-position:center top!important;
    transform:translateY(-8px) scale(1.07)!important;
    transform-origin:center top!important;
  }

  html body #app .costumeTileBadge{
    bottom:18px!important;
    translate:none!important;
    transform:none!important;
  }

  html body #app .costumeTileBadge img,
  html body #app .costumeTileBadge .mhurV603CostumeTuningIcon{
    margin:0!important;
    translate:none!important;
    transform:none!important;
  }

  /* 5. Logos de rôle centrés verticalement avec Assaut / Attaque / etc. */
  html body #app .pageFrame.costumesFrame
  .cardsGrid > .card .badges,
  html body #app .pageFrame.tuningsFrame
  .cardsGrid > .card .badges{
    align-items:stretch!important;
    gap:8px!important;
  }

  html body #app .pageFrame.costumesFrame
  .cardsGrid > .card .badge,
  html body #app .pageFrame.tuningsFrame
  .cardsGrid > .card .badge{
    position:relative!important;
    display:flex!important;
    min-height:48px!important;
    padding:7px 12px!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    line-height:1!important;
    vertical-align:middle!important;
  }

  html body #app .pageFrame.costumesFrame
  .cardsGrid > .card .badge .roleIcon,
  html body #app .pageFrame.tuningsFrame
  .cardsGrid > .card .badge .roleIcon{
    position:static!important;
    inset:auto!important;
    display:block!important;
    align-self:center!important;
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    min-height:32px!important;
    flex:0 0 32px!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center!important;
    vertical-align:middle!important;
    translate:none!important;
    transform:none!important;
  }
}

@media (max-width:390px){
  :root{
    --mhur-v612-header-bottom:
      max(
        var(--mhur-v517-measured-header-bottom,0px),
        var(
          --mhur-header-visual-bottom,
          var(--mhur-mobile-header-height,107px)
        )
      );
  }

  html body #app > .back,
  html body .wrap > .back,
  html body .back{
    top:calc(var(--mhur-v612-header-bottom) + 6px)!important;
  }

  html body #app.mhurHasBackV57,
  html body #app:has(> .back){
    padding-top:68px!important;
  }
}


/* ===== css/v613-mobile-last-fixes.css ===== */
/* MHUR Nexus — V613 : derniers correctifs mobiles */

@media (max-width:760px){
  :root{
    --mhur-v613-header-bottom:
      max(
        var(--mhur-v612-header-bottom,0px),
        var(
          --mhur-v517-measured-header-bottom,
          var(--mhur-header-visual-bottom,115px)
        )
      );
  }

  /* 1. Retour toujours fixé immédiatement sous le header réel. */
  html body #app > .back,
  html body #app .back,
  html body .wrap > .back{
    position:fixed!important;
    top:calc(var(--mhur-v613-header-bottom) + 8px)!important;
    right:auto!important;
    bottom:auto!important;
    left:max(10px,env(safe-area-inset-left,0px))!important;
    margin:0!important;
    transform:none!important;
    translate:none!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    z-index:2147482500!important;
  }

  /*
    Une fenêtre ouverte reste prioritaire. Le bouton redevient cliquable
    dès que cette fenêtre est fermée.
  */
  html body:has(.nexusLinksOverlay.is-open) #app > .back,
  html body.s18NotesOpenV11 #app > .back,
  html body:has(#s18NotesDevModalV10.open) #app > .back{
    pointer-events:none!important;
  }

  /* 2. T.U.N.I.N.G des cartes costumes réellement remontés. */
  html body #app .costumeGalleryGrid .costumeTile .costumeTileBadge,
  html body #app .costumeGroupsWrap .costumeTile .costumeTileBadge,
  html body #app .costumeTile > .costumeTileBadge{
    position:absolute!important;
    top:auto!important;
    bottom:102px!important;
    translate:none!important;
    transform:none!important;
    z-index:40!important;
  }

  html body #app .costumeTile .costumeTileBadge.left{
    left:12px!important;
  }

  html body #app .costumeTile .costumeTileBadge.right{
    right:12px!important;
  }

  html body #app .costumeTile .costumeTileBadge img,
  html body #app .costumeTile .costumeTileBadgeIcon{
    position:static!important;
    inset:auto!important;
    margin:0!important;
    transform:none!important;
    translate:none!important;
    object-position:center!important;
  }

  /* 3. Sélecteur de styles : icône et nom du rôle sur la même ligne. */
  html body #app .styleGrid .styleCard .styleInfo .badges{
    display:flex!important;
    align-items:stretch!important;
    justify-content:center!important;
    gap:10px!important;
  }

  html body #app .styleGrid .styleCard .styleInfo .badges > .badge{
    position:relative!important;
    display:inline-flex!important;
    min-height:54px!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    line-height:1!important;
    vertical-align:middle!important;
  }

  html body #app .styleGrid .styleCard
  .styleInfo .badges > .badge .roleIcon{
    position:relative!important;
    top:0!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    inset:auto!important;
    display:block!important;
    align-self:center!important;
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    min-height:36px!important;
    flex:0 0 36px!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center!important;
    vertical-align:middle!important;
    translate:none!important;
    transform:translateY(2px)!important;
  }
}

@media (max-width:390px){
  :root{
    --mhur-v613-header-bottom:
      max(
        var(--mhur-v612-header-bottom,0px),
        var(
          --mhur-v517-measured-header-bottom,
          var(--mhur-header-visual-bottom,107px)
        )
      );
  }

  html body #app > .back,
  html body #app .back,
  html body .wrap > .back{
    top:calc(var(--mhur-v613-header-bottom) + 6px)!important;
  }
}


/* ===== css/v617-mobile-costumes-exacts.css ===== */
/* MHUR Nexus — V617
   Correctif exact des cartes de costumes sur mobile.
   Remplace les essais V614/V615/V616.
*/

@media (max-width: 760px){

  /* Une seule carte propre et centrée par ligne. */
  html body #app .costumeGroupsWrap .costumeGalleryGrid,
  html body #app .s18UpcomingCostumeGridV23{
    display:grid!important;
    grid-template-columns:minmax(0,340px)!important;
    justify-content:center!important;
    justify-items:stretch!important;
    align-items:start!important;
    gap:18px!important;
    width:100%!important;
    padding:12px 0!important;
    overflow:visible!important;
  }

  /* Même taille pour toutes les cartes, normales ou à venir. */
  html body #app .costumeGroupsWrap .costumeTile,
  html body #app .costumeGroupsWrap .costumeCard,
  html body #app .s18UpcomingCostumeGridV23 .costumeTile,
  html body #app .s18UpcomingCostumeGridV23 .costumeCard{
    position:relative!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:340px!important;
    height:460px!important;
    min-height:460px!important;
    max-height:460px!important;
    padding:0!important;
    margin:0 auto!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  /*
    La vraie photo est toujours l'image directe de la carte.
    :first-of-type continue de fonctionner même si NEW est inséré avant.
  */
  html body #app .costumeTile > img:first-of-type,
  html body #app .costumeCard > img:first-of-type{
    position:absolute!important;
    inset:auto!important;
    left:50%!important;
    right:auto!important;
    top:64px!important;
    bottom:auto!important;
    transform:translateX(-50%)!important;
    transform-origin:center center!important;
    display:block!important;
    width:calc(100% - 34px)!important;
    min-width:0!important;
    max-width:none!important;
    height:278px!important;
    min-height:0!important;
    max-height:none!important;
    padding:0!important;
    margin:0!important;
    object-fit:contain!important;
    object-position:center center!important;
    background:transparent!important;
    z-index:2!important;
  }

  /* Nom et sous-titre : aucune partie du personnage ne passe derrière. */
  html body #app .costumeTile > .costumeTileName,
  html body #app .costumeCard > .costumeTileName{
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:28px!important;
    height:72px!important;
    min-height:72px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0 58px!important;
    box-sizing:border-box!important;
    z-index:20!important;
  }

  html body #app .costumeTile > .costumeMiniDesc,
  html body #app .costumeCard > .costumeMiniDesc{
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    height:28px!important;
    z-index:20!important;
  }

  /* T.U.N.I.N.G juste au-dessus du nom. */
  html body #app .costumeTile > .costumeTileBadge,
  html body #app .costumeCard > .costumeTileBadge{
    position:absolute!important;
    top:auto!important;
    bottom:88px!important;
    width:46px!important;
    height:46px!important;
    z-index:35!important;
    transform:none!important;
  }

  html body #app .costumeTile > .costumeTileBadge.left,
  html body #app .costumeCard > .costumeTileBadge.left{
    left:14px!important;
    right:auto!important;
  }

  html body #app .costumeTile > .costumeTileBadge.right,
  html body #app .costumeCard > .costumeTileBadge.right{
    right:14px!important;
    left:auto!important;
  }

  /* Rareté et étoiles gardent leurs coins. */
  html body #app .costumeTile > .costumeTileRarity,
  html body #app .costumeCard > .costumeTileRarity{
    position:absolute!important;
    top:10px!important;
    left:10px!important;
    right:auto!important;
    z-index:80!important;
  }

  html body #app .costumeTile > .costumeTileStars,
  html body #app .costumeCard > .costumeTileStars{
    position:absolute!important;
    top:10px!important;
    right:10px!important;
    left:auto!important;
    z-index:80!important;
  }

  /* NEW : même photo et même taille, le badge ne change plus le cadrage. */
  html body #app .costumeTile > .mhurNewV582,
  html body #app .costumeCard > .mhurNewV582,
  html body #app .costumeTile > .s18NewBadge,
  html body #app .costumeCard > .s18NewBadge{
    position:absolute!important;
    top:42px!important;
    right:10px!important;
    left:auto!important;
    width:62px!important;
    height:32px!important;
    z-index:90!important;
    transform-origin:center!important;
  }

  /*
    Costumes à venir :
    À VENIR / UPCOMING est centré tout en haut.
    La date est centrée juste en dessous.
  */
  html body #app .s18UpcomingCostumeTileV25 > .s18UpcomingStatusV25{
    position:absolute!important;
    top:9px!important;
    left:50%!important;
    right:auto!important;
    bottom:auto!important;
    transform:translateX(-50%)!important;
    width:max-content!important;
    max-width:42%!important;
    padding:7px 10px!important;
    z-index:95!important;
    white-space:nowrap!important;
    text-align:center!important;
  }

  html body #app .s18UpcomingCostumeTileV25 > .s18UpcomingDateV25{
    position:absolute!important;
    top:48px!important;
    left:50%!important;
    right:auto!important;
    bottom:auto!important;
    transform:translateX(-50%)!important;
    width:max-content!important;
    max-width:calc(100% - 28px)!important;
    padding:6px 9px!important;
    z-index:95!important;
    white-space:nowrap!important;
    text-align:center!important;
  }

  /* La photo à venir descend juste assez pour laisser la date visible. */
  html body #app .s18UpcomingCostumeTileV25 > img:first-of-type{
    top:86px!important;
    height:256px!important;
  }
}

@media (max-width: 390px){
  html body #app .costumeGroupsWrap .costumeGalleryGrid,
  html body #app .s18UpcomingCostumeGridV23{
    grid-template-columns:minmax(0,326px)!important;
  }

  html body #app .costumeGroupsWrap .costumeTile,
  html body #app .costumeGroupsWrap .costumeCard,
  html body #app .s18UpcomingCostumeGridV23 .costumeTile,
  html body #app .s18UpcomingCostumeGridV23 .costumeCard{
    max-width:326px!important;
    height:448px!important;
    min-height:448px!important;
    max-height:448px!important;
  }

  html body #app .costumeTile > img:first-of-type,
  html body #app .costumeCard > img:first-of-type{
    top:62px!important;
    height:268px!important;
  }

  html body #app .s18UpcomingCostumeTileV25 > img:first-of-type{
    top:84px!important;
    height:246px!important;
  }
}


/* ===== css/v619-mobile-tuning-navigation.css ===== */
/* MHUR Nexus — V619
   Navigation mobile entre les emplacements et les T.U.N.I.N.G compatibles.
   Affichage complet des effets et des niveaux. */

.mhurV619Details{
  display:none;
}

@media (max-width:760px){
  html body #app .gameCostumeScreen .gameTuningArea,
  html body #app .gameCostumeScreen .tuningPicker,
  html body #app .gameCostumeScreen .tuningOptions{
    min-width:0!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }

  html body #app .gameCostumeScreen .tuningOptions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    padding-bottom:18px!important;
  }

  html body #app .gameCostumeScreen .tuningPicker,
  html body #app .gameCostumeScreen .gameSlot.active{
    scroll-margin-top:calc(var(--mhur-v619-scroll-offset,190px) + 12px)!important;
  }

  html body #app .gameCostumeScreen .tuningOption{
    position:relative!important;
    display:grid!important;
    grid-template-columns:78px minmax(0,1fr)!important;
    grid-template-areas:
      "icon main"
      "faction main"
      "details details"!important;
    column-gap:10px!important;
    row-gap:7px!important;
    align-items:start!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    padding:10px!important;
    box-sizing:border-box!important;
    overflow:visible!important;
    white-space:normal!important;
  }

  html body #app .gameCostumeScreen .tuningOption >
  .tuningOptionIconWrap{
    grid-area:icon!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:76px!important;
    height:76px!important;
    min-width:76px!important;
    min-height:76px!important;
    overflow:hidden!important;
    align-self:start!important;
    background:rgba(0,0,0,.22)!important;
    border-radius:7px!important;
  }

  html body #app .gameCostumeScreen .tuningOption >
  .tuningOptionIconWrap img,
  html body #app .gameCostumeScreen .tuningOption > img,
  html body #app .gameCostumeScreen .tuningOption >
  .tuningOptionImg{
    grid-area:icon!important;
    width:76px!important;
    height:76px!important;
    min-width:76px!important;
    min-height:76px!important;
    max-width:76px!important;
    max-height:76px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
    align-self:start!important;
    background:transparent!important;
    border-radius:7px!important;
  }

  html body #app .gameCostumeScreen .tuningOptionMain{
    grid-area:main!important;
    display:block!important;
    min-width:0!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;
    padding:0!important;
    margin:0!important;
    overflow:visible!important;
  }

  html body #app .gameCostumeScreen .tuningOptionChar{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0 0 3px!important;
    font-size:14px!important;
    line-height:1.08!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }

  html body #app .gameCostumeScreen .tuningOptionName{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    font-size:19px!important;
    line-height:1.08!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    -webkit-line-clamp:unset!important;
    -webkit-box-orient:unset!important;
  }

  /* La description courte est remplacée par les détails complets V619. */
  html body #app .gameCostumeScreen .tuningOptionDesc{
    display:none!important;
  }

  html body #app .gameCostumeScreen .tuningFaction{
    grid-area:faction!important;
    position:static!important;
    display:block!important;
    align-self:start!important;
    justify-self:stretch!important;
    width:76px!important;
    min-width:0!important;
    max-width:76px!important;
    margin:0!important;
    padding:4px 3px!important;
    border:2px solid rgba(0,0,0,.75)!important;
    border-radius:7px!important;
    background:rgba(0,0,0,.78)!important;
    color:#fff!important;
    font-size:10px!important;
    line-height:1.05!important;
    font-weight:1000!important;
    text-align:center!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    box-sizing:border-box!important;
  }

  html body #app .gameCostumeScreen .mhurV619Details{
    grid-area:details!important;
    display:block!important;
    min-width:0!important;
    width:100%!important;
    max-width:none!important;
    margin:3px 0 0!important;
    padding:10px!important;
    border:2px solid rgba(0,0,0,.78)!important;
    border-radius:9px!important;
    background:rgba(4,10,18,.88)!important;
    color:#fff!important;
    text-align:left!important;
    white-space:normal!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  html body #app .gameCostumeScreen .mhurV619DetailsTitle{
    margin:0 0 8px!important;
    color:#ffe500!important;
    font-size:14px!important;
    line-height:1.1!important;
    font-weight:1000!important;
  }

  html body #app .gameCostumeScreen .mhurV619Effect{
    display:block!important;
    margin:0!important;
    padding:0!important;
  }

  html body #app .gameCostumeScreen
  .mhurV619Effect + .mhurV619Effect{
    margin-top:11px!important;
    padding-top:10px!important;
    border-top:1px solid rgba(255,255,255,.28)!important;
  }

  html body #app .gameCostumeScreen .mhurV619EffectName{
    margin:0 0 4px!important;
    color:#fff!important;
    font-size:15px!important;
    line-height:1.12!important;
    font-weight:1000!important;
  }

  html body #app .gameCostumeScreen .mhurV619EffectDesc{
    margin:0!important;
    color:#fff!important;
    font-size:13px!important;
    line-height:1.28!important;
    font-weight:700!important;
  }

  html body #app .gameCostumeScreen .mhurV619LevelsLabel{
    margin:8px 0 5px!important;
    color:#ffe500!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:1000!important;
  }

  html body #app .gameCostumeScreen .mhurV619Levels{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:5px!important;
    width:100%!important;
    max-width:none!important;
    overflow:visible!important;
  }

  html body #app .gameCostumeScreen .mhurV619Level{
    display:inline-flex!important;
    align-items:center!important;
    min-height:26px!important;
    margin:0!important;
    padding:4px 7px!important;
    border:1px solid #45658f!important;
    border-radius:7px!important;
    background:#172b48!important;
    color:#fff!important;
    font-size:11px!important;
    line-height:1.08!important;
    font-weight:900!important;
    white-space:normal!important;
  }

  html body #app .gameCostumeScreen
  .mhurV619Level.mhurV619Sub{
    border-color:#ffe500!important;
    background:#4a3c00!important;
    color:#ffe500!important;
  }

  html body #app .gameCostumeScreen
  .tuningOption.alreadyUsed::after{
    top:7px!important;
    right:7px!important;
    bottom:auto!important;
    z-index:12!important;
  }
}


/* ===== css/v626-tier-desktop-details.css ===== */
/* MHUR Nexus — V626
   - Tier List fiable sur mobile et ordinateur.
   - Détails complets T.U.N.I.N.G sur mobile et ordinateur.
*/

/* ==========================================================
   1. TIER LIST — TOUS LES ÉCRANS
   ========================================================== */

html body #mhurTierList .mhurTierDragHelp{
  font-family:Arial,Helvetica,sans-serif!important;
  font-variant:normal!important;
  letter-spacing:0!important;
  text-transform:none!important;
  line-height:1.25!important;
}

html body #mhurTierList .mhurTierItems{
  align-items:flex-start!important;
  align-content:flex-start!important;
}

html body #mhurTierList .mhurTierItem{
  position:relative!important;
  display:grid!important;
  grid-template-rows:96px minmax(25px,auto) 13px!important;
  align-content:start!important;
  align-items:start!important;
  width:128px!important;
  min-width:128px!important;
  max-width:128px!important;
  height:150px!important;
  min-height:150px!important;
  max-height:150px!important;
  padding:6px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

html body #mhurTierList .mhurTierItem > img{
  position:static!important;
  inset:auto!important;
  grid-row:1!important;
  display:block!important;
  width:100%!important;
  height:96px!important;
  min-width:0!important;
  min-height:96px!important;
  max-width:100%!important;
  max-height:96px!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:none!important;
  translate:none!important;
  scale:none!important;
}

html body #mhurTierList .mhurTierItem > small{
  position:static!important;
  inset:auto!important;
  grid-row:2!important;
  display:-webkit-box!important;
  width:100%!important;
  min-width:0!important;
  min-height:25px!important;
  max-height:25px!important;
  margin:5px 0 0!important;
  padding:0!important;
  overflow:hidden!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1.04!important;
  font-weight:1000!important;
  text-align:left!important;
  white-space:normal!important;
  text-overflow:ellipsis!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}

html body #mhurTierList .mhurTierItem > .mhurTierStyleName{
  position:static!important;
  inset:auto!important;
  grid-row:3!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  min-height:12px!important;
  max-height:12px!important;
  margin:4px 0 0!important;
  padding:0!important;
  overflow:hidden!important;
  color:#ffe100!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:1000!important;
  text-align:left!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

/* Tous les anciens NEW de Gentle sont masqués.
   V626 génère son badge indépendant. */
html body #mhurTierList
.mhurTierItem.mhurTierGentleV626
.mhurNewV582,
html body #mhurTierList
.mhurTierItem.mhurTierGentleV626
.s18NewBadge,
html body #mhurTierList
.mhurTierItem.mhurTierGentleV626
[class*="s18NewBadge"],
html body #mhurTierList
.mhurTierItem.mhurTierGentleV626
[class*="mhurTierNew"]:not(.mhurTierNewV626){
  display:none!important;
  visibility:hidden!important;
}

html body #mhurTierList .mhurTierNewV626{
  position:absolute!important;
  top:5px!important;
  left:5px!important;
  right:auto!important;
  bottom:auto!important;
  display:block!important;
  visibility:visible!important;
  width:45px!important;
  height:23px!important;
  min-width:0!important;
  min-height:0!important;
  max-width:45px!important;
  max-height:23px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:
    transparent
    url('../assets/home/icons/new_badge_custom.png')
    center/contain no-repeat!important;
  color:transparent!important;
  text-indent:-9999px!important;
  overflow:visible!important;
  box-shadow:none!important;
  transform-origin:top left!important;
  animation:mhurTierNewPulseV626 1.25s ease-in-out infinite!important;
  z-index:50!important;
  pointer-events:none!important;
}

@keyframes mhurTierNewPulseV626{
  0%,100%{transform:translateY(0) scale(.86)}
  50%{transform:translateY(-2px) scale(.96)}
}

@media(max-width:900px){
  html body #mhurTierList .mhurTierItem{
    grid-template-rows:74px minmax(25px,auto) 11px!important;
    width:96px!important;
    min-width:96px!important;
    max-width:96px!important;
    height:132px!important;
    min-height:132px!important;
    max-height:132px!important;
    padding:5px!important;
  }

  html body #mhurTierList .mhurTierItem > img{
    height:74px!important;
    min-height:74px!important;
    max-height:74px!important;
  }

  html body #mhurTierList .mhurTierItem > small{
    min-height:25px!important;
    max-height:25px!important;
    margin-top:5px!important;
    font-size:10px!important;
  }

  html body #mhurTierList
  .mhurTierItem > .mhurTierStyleName{
    min-height:10px!important;
    max-height:10px!important;
    margin-top:3px!important;
    font-size:9px!important;
  }

  html body #mhurTierList .mhurTierNewV626{
    top:4px!important;
    left:4px!important;
    width:38px!important;
    height:20px!important;
    max-width:38px!important;
    max-height:20px!important;
  }
}

/* ==========================================================
   2. DÉTAILS COMMUNAUTAIRES — TOUS LES ÉCRANS
   ========================================================== */

html body #cbBuilderModal .cbV625TuningDetails{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:7px 0 0!important;
  padding:10px!important;
  border:2px solid rgba(0,0,0,.82)!important;
  border-radius:9px!important;
  background:rgba(3,9,17,.92)!important;
  color:#fff!important;
  text-align:left!important;
  white-space:normal!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}

html body #cbBuilderModal .cbV625DetailsTitle,
html body #app .mhurV619DetailsTitle{
  margin:0 0 8px!important;
  color:#ffe500!important;
  font-size:14px!important;
  line-height:1.1!important;
  font-weight:1000!important;
}

html body #cbBuilderModal .cbV625Effect,
html body #app .mhurV619Effect{
  display:block!important;
  margin:0!important;
  padding:0!important;
}

html body #cbBuilderModal .cbV625Effect + .cbV625Effect,
html body #app .mhurV619Effect + .mhurV619Effect{
  margin-top:11px!important;
  padding-top:10px!important;
  border-top:1px solid rgba(255,255,255,.3)!important;
}

html body #cbBuilderModal .cbV625EffectName,
html body #app .mhurV619EffectName{
  margin:0 0 5px!important;
  color:#fff!important;
  font-size:15px!important;
  line-height:1.14!important;
  font-weight:1000!important;
}

html body #cbBuilderModal .cbV625EffectDesc,
html body #app .mhurV619EffectDesc{
  margin:0!important;
  color:#fff!important;
  font-size:13px!important;
  line-height:1.3!important;
  font-weight:700!important;
}

html body #cbBuilderModal .cbV625LevelsLabel,
html body #app .mhurV619LevelsLabel{
  margin:8px 0 5px!important;
  color:#ffe500!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:1000!important;
}

html body #cbBuilderModal .cbV625Levels,
html body #app .mhurV619Levels{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  width:100%!important;
  max-width:none!important;
  overflow:visible!important;
}

html body #cbBuilderModal .cbV625Level,
html body #app .mhurV619Level{
  display:inline-flex!important;
  align-items:center!important;
  min-height:26px!important;
  margin:0!important;
  padding:4px 7px!important;
  border:1px solid #45658f!important;
  border-radius:7px!important;
  background:#172b48!important;
  color:#fff!important;
  font-size:11px!important;
  line-height:1.08!important;
  font-weight:900!important;
  white-space:normal!important;
}

html body #cbBuilderModal .cbV625Level.cbV625Sub,
html body #app .mhurV619Level.mhurV619Sub{
  border-color:#ffe500!important;
  background:#4a3c00!important;
  color:#ffe500!important;
}

/* ==========================================================
   3. ORDINATEUR — BUILDS COMMUNAUTAIRES + COSTUMES
   ========================================================== */

@media(min-width:761px){
  /* Créateur de build communautaire. */
  html body #cbBuilderModal
  .cbOfficialCreatorScreenV308
  .tuningOptions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    max-height:min(62vh,720px)!important;
    padding:9px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
  }

  html body #cbBuilderModal
  .cbOfficialCreatorScreenV308
  .tuningOption{
    position:relative!important;
    display:grid!important;
    grid-template-columns:68px minmax(0,1fr) 72px!important;
    grid-template-areas:
      "icon main faction"
      "details details details"!important;
    column-gap:9px!important;
    row-gap:7px!important;
    align-items:start!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:102px!important;
    height:auto!important;
    max-height:none!important;
    padding:9px!important;
    overflow:visible!important;
    white-space:normal!important;
    box-sizing:border-box!important;
  }

  html body #cbBuilderModal
  .cbOfficialCreatorScreenV308
  .tuningOptionIconWrap,
  html body #cbBuilderModal
  .cbOfficialCreatorScreenV308
  .tuningOption > .tuningOptionImg{
    grid-area:icon!important;
    width:66px!important;
    height:66px!important;
    min-width:66px!important;
    min-height:66px!important;
    max-width:66px!important;
    max-height:66px!important;
    margin:0!important;
    overflow:hidden!important;
  }

  html body #cbBuilderModal
  .cbOfficialCreatorScreenV308
  .tuningOptionIconWrap img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
  }

  html body #cbBuilderModal
  .cbOfficialCreatorScreenV308
  .tuningOptionMain{
    grid-area:main!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  html body #cbBuilderModal
  .cbOfficialCreatorScreenV308
  .tuningOptionChar,
  html body #cbBuilderModal
  .cbOfficialCreatorScreenV308
  .tuningOptionName{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    max-height:none!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    -webkit-line-clamp:unset!important;
  }

  html body #cbBuilderModal
  .cbOfficialCreatorScreenV308
  .tuningOptionChar{
    margin:0 0 3px!important;
    font-size:12px!important;
    line-height:1.05!important;
  }

  html body #cbBuilderModal
  .cbOfficialCreatorScreenV308
  .tuningOptionName{
    margin:0!important;
    font-size:17px!important;
    line-height:1.05!important;
  }

  html body #cbBuilderModal
  .cbOfficialCreatorScreenV308
  .tuningOptionDesc{
    display:none!important;
  }

  html body #cbBuilderModal
  .cbOfficialCreatorScreenV308
  .tuningFaction{
    grid-area:faction!important;
    position:static!important;
    display:block!important;
    align-self:start!important;
    width:72px!important;
    min-width:0!important;
    max-width:72px!important;
    margin:0!important;
    padding:5px 3px!important;
    border:2px solid rgba(0,0,0,.8)!important;
    border-radius:7px!important;
    background:rgba(0,0,0,.82)!important;
    color:#fff!important;
    font-size:10px!important;
    line-height:1.05!important;
    font-weight:1000!important;
    text-align:center!important;
    white-space:normal!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  html body #cbBuilderModal .cbV625TuningDetails{
    grid-area:details!important;
  }

  /* Détails de costume sur ordinateur. */
  html body #app .gameCostumeScreen .tuningOptions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    max-height:min(70vh,760px)!important;
    padding:9px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
  }

  html body #app .gameCostumeScreen .tuningOption{
    position:relative!important;
    display:grid!important;
    grid-template-columns:68px minmax(0,1fr) 72px!important;
    grid-template-areas:
      "icon main faction"
      "details details details"!important;
    column-gap:9px!important;
    row-gap:7px!important;
    align-items:start!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:102px!important;
    height:auto!important;
    max-height:none!important;
    padding:9px!important;
    overflow:visible!important;
    white-space:normal!important;
    box-sizing:border-box!important;
  }

  html body #app .gameCostumeScreen
  .tuningOption > .tuningOptionIconWrap{
    grid-area:icon!important;
    width:66px!important;
    height:66px!important;
    min-width:66px!important;
    min-height:66px!important;
    max-width:66px!important;
    max-height:66px!important;
    margin:0!important;
    overflow:hidden!important;
  }

  html body #app .gameCostumeScreen
  .tuningOption > .tuningOptionIconWrap img,
  html body #app .gameCostumeScreen
  .tuningOption > .tuningOptionImg,
  html body #app .gameCostumeScreen
  .tuningOption > img{
    width:66px!important;
    height:66px!important;
    min-width:66px!important;
    min-height:66px!important;
    max-width:66px!important;
    max-height:66px!important;
    margin:0!important;
    object-fit:contain!important;
    object-position:center!important;
  }

  html body #app .gameCostumeScreen .tuningOptionMain{
    grid-area:main!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  html body #app .gameCostumeScreen .tuningOptionChar,
  html body #app .gameCostumeScreen .tuningOptionName{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    max-height:none!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    -webkit-line-clamp:unset!important;
  }

  html body #app .gameCostumeScreen .tuningOptionChar{
    margin:0 0 3px!important;
    font-size:12px!important;
    line-height:1.05!important;
  }

  html body #app .gameCostumeScreen .tuningOptionName{
    margin:0!important;
    font-size:17px!important;
    line-height:1.05!important;
  }

  html body #app .gameCostumeScreen .tuningOptionDesc{
    display:none!important;
  }

  html body #app .gameCostumeScreen .tuningFaction{
    grid-area:faction!important;
    position:static!important;
    display:block!important;
    align-self:start!important;
    width:72px!important;
    min-width:0!important;
    max-width:72px!important;
    margin:0!important;
    padding:5px 3px!important;
    border:2px solid rgba(0,0,0,.8)!important;
    border-radius:7px!important;
    background:rgba(0,0,0,.82)!important;
    color:#fff!important;
    font-size:10px!important;
    line-height:1.05!important;
    font-weight:1000!important;
    text-align:center!important;
    white-space:normal!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  html body #app .gameCostumeScreen .mhurV619Details{
    grid-area:details!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:7px 0 0!important;
    padding:10px!important;
    border:2px solid rgba(0,0,0,.82)!important;
    border-radius:9px!important;
    background:rgba(3,9,17,.92)!important;
    color:#fff!important;
    text-align:left!important;
    white-space:normal!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
}

/* Le mobile conserve les détails V625/V619 déjà validés. */
@media(max-width:760px){
  html body #cbBuilderModal .cbV625TuningDetails,
  html body #app .gameCostumeScreen .mhurV619Details{
    display:block!important;
  }
}


/* ===== css/v627-dev-notes-images-instant.css ===== */
/* MHUR Nexus — V627
   Dev Notes complètes + costumes affichés directement centrés. */

/* ===================== DEV / PATCH NOTES ===================== */

#s18NotesDevModalV10.open{
  position:fixed!important;
  top:var(--mhur-v627-notes-top,0px)!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  width:100vw!important;
  height:auto!important;
  max-height:none!important;
  padding:8px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  align-items:flex-start!important;
  justify-content:center!important;
}

#s18NotesDevModalV10 .s18NotesPanelV10{
  display:flex!important;
  flex-direction:column!important;
  width:min(1420px,calc(100vw - 16px))!important;
  height:calc(100dvh - var(--mhur-v627-notes-top,0px) - 16px)!important;
  min-height:0!important;
  max-height:none!important;
  margin:0 auto!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

#s18NotesDevModalV10 .s18NotesPanelV10 > header,
#s18NotesDevModalV10 .s18NotesPanelV10 > nav{
  flex:0 0 auto!important;
}

#s18NotesDevModalV10 .s18NotesBodyV10{
  display:grid!important;
  grid-template-columns:minmax(190px,260px) minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  flex:1 1 auto!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
}

#s18NotesDevModalV10 .s18NotesBodyV10 > aside,
#s18NotesDevModalV10 .s18NotesBodyV10 > main{
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
}

#s18NotesDevModalV10 .s18NotesBodyV10 > main{
  padding-bottom:max(32px,env(safe-area-inset-bottom))!important;
  scroll-padding-bottom:max(32px,env(safe-area-inset-bottom))!important;
}

#s18NotesDevModalV10 .s18DevArticleV10,
#s18NotesDevModalV10 .s18DevArticleV10 > section,
#s18NotesDevModalV10 .s18DevHeroV10,
#s18NotesDevModalV10 .s18OfficialLinksV10{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}

#s18NotesDevModalV10 .s18DevArticleV10{
  display:block!important;
  width:100%!important;
  padding-bottom:32px!important;
  box-sizing:border-box!important;
}

#s18NotesDevModalV10 .s18OfficialLinksV10{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  margin-bottom:24px!important;
}

@media(max-width:760px){
  #s18NotesDevModalV10.open{
    padding:0!important;
  }

  #s18NotesDevModalV10 .s18NotesPanelV10{
    width:100vw!important;
    height:calc(100dvh - var(--mhur-v627-notes-top,0px))!important;
    border-radius:0!important;
  }

  #s18NotesDevModalV10 .s18NotesBodyV10{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto minmax(0,1fr)!important;
  }

  #s18NotesDevModalV10 .s18NotesBodyV10 > aside{
    width:100%!important;
    height:auto!important;
    max-height:112px!important;
  }

  #s18NotesDevModalV10.mhurV627DevActive
  .s18NotesBodyV10 > aside{
    max-height:78px!important;
    overflow:hidden!important;
  }

  #s18NotesDevModalV10 .s18NotesBodyV10 > main{
    height:100%!important;
    padding-bottom:max(54px,env(safe-area-inset-bottom))!important;
  }
}

/* ===================== COSTUMES INSTANTANÉS ===================== */

@media(max-width:760px){
  html body #app .costumeTile{
    position:relative!important;
    overflow:hidden!important;
  }

  html body #app .costumeTile > img{
    opacity:1!important;
    visibility:visible!important;
    transition:none!important;
    will-change:auto!important;
  }

  html body #app .costumeTile >
  img[data-v627-costume-ready="1"]{
    position:absolute!important;
    left:var(--v627-left,20px)!important;
    top:var(--v627-top,58px)!important;
    right:auto!important;
    bottom:auto!important;
    width:var(--v627-width,calc(100% - 40px))!important;
    height:var(--v627-height,auto)!important;
    min-width:0!important;
    min-height:0!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    object-fit:fill!important;
    object-position:0 0!important;
    transform:none!important;
    translate:none!important;
    scale:none!important;
    transform-origin:0 0!important;
    background:transparent!important;
    display:block!important;
    z-index:2!important;
    pointer-events:none!important;
  }

  /* Repli immédiat si une image rare n'existe pas dans le manifeste. */
  html body #app .costumeTile >
  img[data-v627-costume-fallback="1"]{
    position:absolute!important;
    left:20px!important;
    top:58px!important;
    right:20px!important;
    bottom:146px!important;
    width:calc(100% - 40px)!important;
    height:auto!important;
    max-width:none!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
  }
}


/* ===== css/v628-tier-dev-final.css ===== */
/* MHUR Nexus — V628
   Gentle NEW en haut à droite + Dev Notes complètes et officielles. */

/* ==========================================================
   TIER LIST — MOBILE ET ORDINATEUR
   ========================================================== */

html body #mhurTierList
.mhurTierItem.mhurTierGentleV628{
  position:relative!important;
  overflow:hidden!important;
}

html body #mhurTierList
.mhurTierItem.mhurTierGentleV628
.mhurTierNewV628{
  position:absolute!important;
  top:5px!important;
  right:5px!important;
  bottom:auto!important;
  left:auto!important;
  display:block!important;
  visibility:visible!important;
  width:45px!important;
  height:23px!important;
  min-width:0!important;
  min-height:0!important;
  max-width:45px!important;
  max-height:23px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:
    transparent
    url('../assets/home/icons/new_badge_custom.png')
    center/contain no-repeat!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  text-indent:-9999px!important;
  overflow:visible!important;
  box-shadow:none!important;
  transform-origin:top right!important;
  animation:mhurTierNewPulseV628 1.25s ease-in-out infinite!important;
  z-index:60!important;
  pointer-events:none!important;
}

@keyframes mhurTierNewPulseV628{
  0%,100%{
    transform:translateY(0) scale(.86);
  }
  50%{
    transform:translateY(-2px) scale(.96);
  }
}

@media(max-width:900px){
  html body #mhurTierList
  .mhurTierItem.mhurTierGentleV628
  .mhurTierNewV628{
    top:4px!important;
    right:4px!important;
    width:38px!important;
    height:20px!important;
    max-width:38px!important;
    max-height:20px!important;
  }
}

/* ==========================================================
   DEV NOTES — CONTENU COMPLET
   ========================================================== */

#s18NotesDevModalV10.mhurV628DevActive
.s18NotesBodyV10{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  min-height:0!important;
  overflow:hidden!important;
}

#s18NotesDevModalV10.mhurV628DevActive
.s18NotesBodyV10 > aside{
  display:none!important;
}

#s18NotesDevModalV10.mhurV628DevActive
.s18NotesBodyV10 > main{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
  max-height:none!important;
  padding:18px!important;
  padding-bottom:max(52px,env(safe-area-inset-bottom))!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  box-sizing:border-box!important;
}

#s18NotesDevModalV10
.mhurV628DevArticle{
  display:block!important;
  width:100%!important;
  max-width:1120px!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0 auto!important;
  padding:0 0 36px!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}

#s18NotesDevModalV10
.mhurV628DevHero{
  margin:0 0 16px!important;
  padding:20px!important;
  border:3px solid #000!important;
  border-radius:14px!important;
  background:
    linear-gradient(135deg,#1b3d63,#102238)!important;
  color:#fff!important;
}

#s18NotesDevModalV10
.mhurV628DevHero span{
  display:inline-block!important;
  margin-bottom:8px!important;
  padding:5px 9px!important;
  border:2px solid #000!important;
  border-radius:999px!important;
  background:#ffe100!important;
  color:#000!important;
  font-size:13px!important;
  font-weight:1000!important;
}

#s18NotesDevModalV10
.mhurV628DevHero h2{
  margin:0 0 7px!important;
  color:#fff!important;
  font-size:clamp(27px,4vw,43px)!important;
  line-height:1.05!important;
  text-shadow:2px 2px 0 #000!important;
}

#s18NotesDevModalV10
.mhurV628DevHero p{
  margin:0!important;
  color:#d5e6ff!important;
  font-size:15px!important;
  line-height:1.35!important;
}

#s18NotesDevModalV10
.mhurV628DevSection{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0 0 14px!important;
  padding:17px!important;
  border:3px solid #000!important;
  border-radius:13px!important;
  background:#172338!important;
  color:#fff!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}

#s18NotesDevModalV10
.mhurV628DevSection h3{
  margin:0 0 10px!important;
  color:#ffe100!important;
  font-size:clamp(20px,2.4vw,28px)!important;
  line-height:1.08!important;
}

#s18NotesDevModalV10
.mhurV628DevSection p{
  margin:0 0 10px!important;
  color:#fff!important;
  font-size:16px!important;
  line-height:1.48!important;
}

#s18NotesDevModalV10
.mhurV628DevSection p:last-child{
  margin-bottom:0!important;
}

#s18NotesDevModalV10
.mhurV628DevSection ul{
  margin:10px 0 0 20px!important;
  padding:0!important;
  color:#fff!important;
}

#s18NotesDevModalV10
.mhurV628DevSection li{
  margin:7px 0!important;
  font-size:15px!important;
  line-height:1.35!important;
}

#s18NotesDevModalV10
.mhurV628OfficialLinks{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  width:100%!important;
  margin:18px 0 0!important;
  padding:0!important;
}

#s18NotesDevModalV10
.mhurV628OfficialLink{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:58px!important;
  padding:12px 14px!important;
  border:3px solid #000!important;
  border-radius:12px!important;
  background:#ffe100!important;
  color:#000!important;
  font-size:15px!important;
  line-height:1.15!important;
  font-weight:1000!important;
  text-align:center!important;
  text-decoration:none!important;
  box-shadow:0 4px 0 #000!important;
}

#s18NotesDevModalV10
.mhurV628OfficialLink:hover,
#s18NotesDevModalV10
.mhurV628OfficialLink:focus-visible{
  transform:translateY(-2px)!important;
  background:#fff000!important;
}

#s18NotesDevModalV10
.mhurV628DevSignature{
  margin:16px 0 0!important;
  padding:14px!important;
  border-left:5px solid #ffe100!important;
  background:#0c1626!important;
  color:#d7e6fb!important;
  font-size:15px!important;
  line-height:1.35!important;
  font-style:italic!important;
}

@media(max-width:760px){
  #s18NotesDevModalV10.mhurV628DevActive
  .s18NotesBodyV10 > main{
    padding:12px!important;
    padding-bottom:max(62px,env(safe-area-inset-bottom))!important;
  }

  #s18NotesDevModalV10
  .mhurV628DevHero{
    padding:15px!important;
  }

  #s18NotesDevModalV10
  .mhurV628DevSection{
    padding:14px!important;
  }

  #s18NotesDevModalV10
  .mhurV628OfficialLinks{
    grid-template-columns:minmax(0,1fr)!important;
  }
}


/* ===== css/v629-notes-open-stable.css ===== */
/* MHUR Nexus — V629
   Ouverture stable de Patch Notes / Dev Notes. */

#s18NotesDevModalV10.open{
  position:fixed!important;
  top:var(--mhur-v629-notes-top,0px)!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  width:100vw!important;
  height:auto!important;
  max-height:none!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:2147483000!important;
}

#s18NotesDevModalV10.open .s18NotesPanelV10{
  height:calc(
    100dvh - var(--mhur-v629-notes-top,0px) - 16px
  )!important;
  max-height:none!important;
  min-height:0!important;
}

@media(max-width:760px){
  #s18NotesDevModalV10.open .s18NotesPanelV10{
    height:calc(
      100dvh - var(--mhur-v629-notes-top,0px)
    )!important;
  }
}


/* ===== css/v634-tier-final.css ===== */
/* MHUR Nexus — V634
   Tier List finale mobile + ordinateur :
   un seul NEW Gentle et textes UTF-8 propres. */

html body #mhurTierList
.mhurTierItem.mhurTierGentleV634{
  position:relative!important;
  overflow:hidden!important;
}

html body #mhurTierList
.mhurTierItem.mhurTierGentleV634
.mhurNewV582,
html body #mhurTierList
.mhurTierItem.mhurTierGentleV634
.mhurTierNewV626,
html body #mhurTierList
.mhurTierItem.mhurTierGentleV634
.mhurTierNewV628,
html body #mhurTierList
.mhurTierItem.mhurTierGentleV634
.s18NewBadge,
html body #mhurTierList
.mhurTierItem.mhurTierGentleV634
[class*="s18NewBadge"],
html body #mhurTierList
.mhurTierItem.mhurTierGentleV634
[class*="mhurTierNew"]:not(.mhurTierNewV634),
html body #mhurTierList
.mhurTierItem.mhurTierGentleV634
[aria-label="NEW"]:not(.mhurTierNewV634),
html body #mhurTierList
.mhurTierItem.mhurTierGentleV634
img[src*="new_badge"]{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

html body #mhurTierList
.mhurTierItem.mhurTierGentleV634
> .mhurTierNewV634{
  position:absolute!important;
  top:5px!important;
  right:5px!important;
  bottom:auto!important;
  left:auto!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:44px!important;
  height:23px!important;
  min-width:44px!important;
  min-height:23px!important;
  max-width:44px!important;
  max-height:23px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:
    transparent
    url('../assets/home/icons/new_badge_custom.png')
    center/contain no-repeat!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  text-indent:-9999px!important;
  box-shadow:none!important;
  transform-origin:top right!important;
  animation:mhurV634NewPulse 1.35s ease-in-out infinite!important;
  z-index:100!important;
  pointer-events:none!important;
}

html body #mhurTierList
.mhurTierItem.mhurTierGentleV634
> small{
  position:static!important;
  display:-webkit-box!important;
  width:100%!important;
  margin-top:6px!important;
  line-height:1.05!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}

html body #mhurTierList
.mhurTierItem.mhurTierGentleV634
> .mhurTierStyleName{
  position:static!important;
  display:block!important;
  width:100%!important;
  margin-top:4px!important;
  line-height:1!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

html body #mhurTierList .mhurTierDropHint{
  font-family:Arial,Helvetica,sans-serif!important;
  font-variant:normal!important;
  letter-spacing:0!important;
  text-transform:none!important;
  line-height:1.15!important;
  text-align:center!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}

html body #mhurTierList .mhurTierDragHelp,
html body #mhurTierList .mhurTierLabel.U{
  font-family:Arial,Helvetica,sans-serif!important;
  font-variant:normal!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

@keyframes mhurV634NewPulse{
  0%,100%{
    transform:translateY(0) scale(.86);
  }
  50%{
    transform:translateY(-2px) scale(.96);
  }
}

@media(max-width:900px){
  html body #mhurTierList
  .mhurTierItem.mhurTierGentleV634
  > .mhurTierNewV634{
    top:4px!important;
    right:4px!important;
    width:36px!important;
    height:19px!important;
    min-width:36px!important;
    min-height:19px!important;
    max-width:36px!important;
    max-height:19px!important;
  }

  html body #mhurTierList
  .mhurTierItem.mhurTierGentleV634
  > small{
    margin-top:5px!important;
  }

  html body #mhurTierList
  .mhurTierItem.mhurTierGentleV634
  > .mhurTierStyleName{
    margin-top:3px!important;
  }

  html body #mhurTierList .mhurTierDropHint{
    min-width:92px!important;
    padding:6px!important;
    font-size:12px!important;
  }
}


/* ===== css/season18-fixes.css ===== */
/* MHUR Nexus — Saison 18 v9 : correctifs ciblés */

/* NEW fourni par l'utilisateur. */
.s18NewBadgeV9,
.s18NewBadge{
  position:absolute!important;
  top:6px!important;
  left:6px!important;
  z-index:30!important;
  width:88px!important;
  height:44px!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent url('../assets/home/icons/new_badge_custom.png') center/contain no-repeat!important;
  color:transparent!important;
  text-indent:-9999px!important;
  overflow:hidden!important;
  box-shadow:none!important;
  transform-origin:top left!important;
  animation:s18NewPulseV9 1.15s ease-in-out infinite!important;
}
@keyframes s18NewPulseV9{0%,100%{transform:scale(.96)}50%{transform:scale(1.08)}}
.costumeTile .s18NewBadge,.costumeResult .s18NewBadge{width:64px!important;height:34px!important;top:4px!important;left:4px!important}

/* Dernières sorties : la bannière officielle remplit immédiatement toute la carte. */
.releaseBannerCardV9{
  position:relative!important;
  min-height:172px!important;
  overflow:hidden!important;
  border:4px solid #05070b!important;
  border-radius:16px!important;
  background:#080b12!important;
  box-shadow:0 7px 0 #050506!important;
}
.releaseBannerCardV9 .releaseBannerImageV9,
.releaseBannerCardV9 .releaseBannerImgV9,
.releaseBannerCardV9 .releaseBannerImageV9 img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
}
.releaseBannerCardV9 .releaseBannerImageV9 img,
.releaseBannerCardV9 .releaseBannerImgV9{
  object-fit:cover!important;
  object-position:center center!important;
  transform:scale(1.015)!important;
}
.releaseBannerShadeV9{
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.08) 52%,rgba(0,0,0,.68) 100%);
}
.releaseBannerCardV9 .releaseBadgeV299{
  z-index:6!important;
  top:10px!important;
  left:10px!important;
  width:36px!important;
  height:36px!important;
}
.releaseNewBadgeV9{
  position:absolute;
  top:7px;
  right:8px;
  z-index:7;
  width:88px;
  height:44px;
  background:url('../assets/home/icons/new_badge_custom.png') center/contain no-repeat;
  filter:drop-shadow(0 3px 0 rgba(0,0,0,.65));
}
.releaseBannerCardV9 .releaseNamesV299{
  position:absolute!important;
  z-index:8!important;
  left:14px!important;
  right:14px!important;
  bottom:11px!important;
  text-align:left!important;
}
.releaseBannerCardV9 .releaseNamesV299 b{
  display:block!important;
  color:#fff!important;
  font-size:clamp(18px,1.8vw,28px)!important;
  line-height:1!important;
  text-shadow:0 3px 0 #000!important;
}
.releaseBannerCardV9 .releaseNamesV299 small{
  display:block!important;
  margin-top:4px!important;
  color:#ffe900!important;
  font-size:clamp(11px,1vw,15px)!important;
  font-weight:900!important;
  text-shadow:0 2px 0 #000!important;
}

/* Cartes personnages : portraits plus grands et réellement centrés. */
.s18CharacterCardV9 .thumb{
  position:relative!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
}
.s18CharacterCardV9 .thumb img,
.s18PortraitImgV9{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  padding:0!important;
  transform:scale(1.28)!important;
  transform-origin:center 56%!important;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.38))!important;
}
.s18CharacterCardV9 .cardBody{position:relative!important;z-index:4!important}

/* Choix des styles : portrait officiel, grand, centré et sans anciens décalages. */
.s18StyleCardV9{
  position:relative!important;
  overflow:hidden!important;
  border-radius:22px!important;
}
.s18StyleCardV9 .styleBanner{
  position:relative!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
}
.s18StyleCardV9 .styleBanner img,
.s18StylePortraitV9,
.styleCard[data-style="assault"] .styleBanner img,
.styleCard[data-style="fullbullet"] .styleBanner img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  padding:0!important;
  transform:scale(1.20)!important;
  transform-origin:center 55%!important;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.38))!important;
}
.s18StyleCardV9.role-technical .styleBanner{background:radial-gradient(circle at 50% 30%,#b14dde 0%,#7513a4 48%,#35094f 100%)!important}
.s18StyleCardV9.role-attack .styleBanner{background:radial-gradient(circle at 50% 30%,#ff5f70 0%,#cd1933 48%,#690a18 100%)!important}
.s18StyleCardV9.role-assault .styleBanner{background:radial-gradient(circle at 50% 30%,#fff06b 0%,#d6b800 48%,#756100 100%)!important}
.s18StyleCardV9.role-support .styleBanner{background:radial-gradient(circle at 50% 30%,#72ff91 0%,#16bf47 48%,#096026 100%)!important}
.s18StyleCardV9.role-rapid .styleBanner{background:radial-gradient(circle at 50% 30%,#70eaff 0%,#18badb 48%,#07566d 100%)!important}
.s18StyleCardV9 .styleInfo h2{font-weight:1000!important;text-shadow:0 3px 0 #000!important}

/* Fiche personnage : photo et typographie propres. */
.s18CharacterDetailV9 .portrait{
  padding:0!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.s18CharacterDetailV9 .portrait img,
.s18DetailPortraitV9{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  padding:0!important;
  transform:scale(1.08)!important;
  transform-origin:center center!important;
}
.s18CharacterDetailV9 .meta h2{letter-spacing:.2px!important}
.s18HpBadgeV9{font-weight:1000!important;letter-spacing:.2px!important}
.s18QuirkTitleV9{padding:2px 18px 0!important;color:#fff!important;text-shadow:0 3px 0 #000!important;font-style:italic!important;text-transform:uppercase!important}

/* Gentle et nouvelles fiches : tableaux lisibles, pleins et sans Down Power. */
.s18CharacterDetailV9 .skillText .toggle{width:100%!important}
.s18CharacterDetailV9 .skillText .simpleTable{width:100%!important;overflow-x:auto!important}
.s18CharacterDetailV9 .skillText .dataTable{width:100%!important;min-width:max-content!important}
.s18CharacterDetailV9 .skillText .dataTable th,
.s18CharacterDetailV9 .skillText .dataTable td{white-space:nowrap!important;text-align:center!important}
.s18CharacterDetailV9 .skillText .dataTable th:first-child,
.s18CharacterDetailV9 .skillText .dataTable td:first-child{text-align:center!important}

@media(max-width:900px){
  .releaseBannerCardV9{min-height:148px!important}
  .releaseNewBadgeV9{width:70px;height:35px}
  .s18CharacterCardV9 .thumb img,.s18PortraitImgV9{transform:scale(1.20)!important}
  .s18StyleCardV9 .styleBanner img,.s18StylePortraitV9{transform:scale(1.12)!important}
}
/* ========================================================================== */
/* MHUR Nexus — Saison 18 v10                                                */
/* ========================================================================== */

/* NEW n'est plus affiché sur les cartes normales des personnages. */
.card[data-char] > .s18NewBadge,
.s18CharacterCardV10 > .s18NewBadge{display:none!important}

/* Cartes personnages : fond de rôle(s), portrait grand, centré et posé en bas. */
.s18CharacterCardV10 .thumb{
  background:var(--s18-card-bg,radial-gradient(circle at 50% 28%,#b14dde 0%,#7513a4 52%,#35094f 100%))!important;
  min-height:360px!important;
  align-items:flex-end!important;
}
.s18CharacterCardV10 .thumb img,
.s18PortraitImgV10{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:scale(1.38)!important;
  transform-origin:center bottom!important;
  margin:0!important;
  padding:0!important;
}
.s18CharacterCardV10 .cardBody{background:#071526!important}

/* Styles : fond par rôle visible sur tous les formats et portrait officiel en bas. */
.s18StyleCardV10 .styleBanner{min-height:480px!important;align-items:flex-end!important}
.s18StyleCardV10 .styleBanner img,.s18StylePortraitV10{
  object-position:center bottom!important;
  transform:scale(1.28)!important;
  transform-origin:center bottom!important;
}
.s18CharacterDetailV10 .portrait{align-items:flex-end!important}
.s18CharacterDetailV10 .portrait img,.s18DetailPortraitV10{
  object-position:center bottom!important;
  transform:scale(1.22)!important;
  transform-origin:center bottom!important;
}

/* Bouton Patch / Dev Notes dans le header, Modération retirée du header. */
#mhurAdminButton{display:none!important}
.mhurPatchDevButtonV10{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:44px!important;
  padding:0 13px!important;
  border:3px solid #000!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#ff8a00,#ffe000)!important;
  color:#07101d!important;
  font-weight:1000!important;
  white-space:nowrap!important;
  box-shadow:0 3px 0 #000!important;
}
.mhurPatchDevButtonV10:hover{transform:translateY(-1px)}

/* Sorties prévues de la Saison 18. */
.s18SeasonReleaseV10{
  position:relative!important;
  min-height:200px!important;
  overflow:hidden!important;
  border:4px solid #05070b!important;
  border-radius:16px!important;
  background:#05070b!important;
  box-shadow:0 7px 0 #050506!important;
}
.s18SeasonArtV10,.s18SeasonBlackV10{position:absolute;inset:0;z-index:1;display:block;overflow:hidden}
.s18SeasonArtV10{background-size:cover;background-repeat:no-repeat;background-position:center 35%;transform:scale(1.04)}
.s18SeasonBlackV10{display:flex;align-items:flex-end;justify-content:center;background:#000}
.s18SeasonProfileV10{width:100%;height:112%;object-fit:contain;object-position:center bottom;transform:scale(1.18);transform-origin:center bottom}
.s18SeasonShadeV10{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.12) 55%,rgba(0,0,0,.82))}
.s18SeasonReleaseV10 .releaseBadgeV299{z-index:6!important;left:10px!important;top:10px!important;width:36px!important;height:36px!important}
.s18SeasonNewV10{position:absolute;z-index:7;right:8px;top:7px;width:88px;height:44px;background:url('../assets/home/icons/new_badge_custom.png') center/contain no-repeat;filter:drop-shadow(0 3px 0 #0009)}
.s18SeasonReleaseV10 .releaseNamesV299{z-index:8!important;left:14px!important;right:14px!important;bottom:10px!important;text-align:left!important}
.s18SeasonReleaseV10 .releaseNamesV299 b{display:block!important;color:#fff!important;font-size:clamp(21px,2vw,31px)!important;line-height:1!important;text-shadow:0 3px 0 #000!important}
.s18SeasonReleaseV10 .releaseNamesV299 small{display:block!important;margin-top:4px!important;color:#ffe900!important;font-size:clamp(12px,1.05vw,16px)!important;font-weight:1000!important;text-shadow:0 2px 0 #000!important}
.s18SeasonReleaseV10 .releaseNamesV299 em{display:block;margin-top:3px;color:#fff;font-size:12px;font-style:normal;font-weight:800;text-shadow:0 2px 0 #000}

/* Fenêtre Patch Notes / Dev Notes. */
.s18NotesOverlayV10,.s18AdminOverlayV10{position:fixed;inset:0;z-index:30000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.88);backdrop-filter:blur(6px)}
.s18NotesOverlayV10.open,.s18AdminOverlayV10.open{display:flex}
.s18NotesPanelV10,.s18AdminPanelV10{width:min(1220px,98vw);max-height:95vh;overflow:hidden;border:4px solid #3f648e;border-radius:20px;background:#081323;color:#fff;box-shadow:0 25px 90px #000}
.s18NotesPanelV10>header,.s18AdminPanelV10>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;border-bottom:3px solid #000;background:linear-gradient(100deg,#173b65,#1f5a8f)}
.s18NotesPanelV10>header span,.s18AdminPanelV10>header span{color:#ffe000;font-weight:1000}
.s18NotesPanelV10>header h2,.s18AdminPanelV10>header h2{margin:3px 0 0;font-size:clamp(25px,3vw,40px)}
.s18NotesPanelV10>header button,.s18AdminPanelV10>header button{width:48px;height:48px;border:4px solid #000;border-radius:50%;background:#ed5055;color:#fff;font-size:28px;font-weight:1000}
.s18NotesPanelV10>nav,.s18AdminPanelV10>nav{display:flex;gap:8px;padding:10px 14px;border-bottom:2px solid #314f76;background:#0b192b;overflow:auto}
.s18NotesPanelV10>nav button,.s18AdminPanelV10>nav button{padding:10px 16px;border:2px solid #365b87;border-radius:10px;background:#101f34;color:#fff;font-weight:1000;white-space:nowrap}
.s18NotesPanelV10>nav button.active,.s18AdminPanelV10>nav button.active{background:#ffe000;color:#000;border-color:#000}
.s18NotesBodyV10{display:grid;grid-template-columns:300px minmax(0,1fr);height:min(74vh,780px)}
.s18NotesBodyV10>aside{padding:12px;border-right:2px solid #2d496e;overflow:auto;background:#07101d}
.s18NotesBodyV10>aside>button{display:grid;gap:4px;width:100%;margin-bottom:8px;padding:12px;border:2px solid #2e4a70;border-radius:11px;background:#0d1b2e;color:#fff;text-align:left}
.s18NotesBodyV10>aside>button.active{border-color:#ffe000;background:#172944}
.s18NotesBodyV10>aside small{color:#9db1cf}
.s18NotesBodyV10>main{padding:18px;overflow:auto}
.s18PatchDetailHeadV10{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}
.s18PatchDetailHeadV10 h2{margin:0;font-size:clamp(24px,3vw,38px)}
.s18PatchDetailHeadV10>div{display:flex;gap:6px;flex-wrap:wrap}
.s18PatchDetailHeadV10 span,.s18ToneV10{padding:6px 10px;border:2px solid #000;border-radius:999px;color:#fff;font-size:12px;font-weight:1000}
.s18PatchDetailHeadV10 .buff,.s18ToneV10.buff{background:#148a45}
.s18PatchDetailHeadV10 .nerf,.s18ToneV10.nerf{background:#b91e38}
.s18PatchDetailHeadV10 .adjust,.s18ToneV10.adjust{background:#9d7911}
.s18PatchSectionV10{margin:0 0 24px}
.s18PatchSectionV10>h3{margin:0 0 12px;padding:10px 14px;border-left:7px solid #ff8a00;background:#101e31}
.s18PatchSeparatedV10{display:grid;gap:18px}
.s18PatchCharacterV10{overflow:hidden;border:3px solid #304f79;border-radius:17px;background:#0a1627;box-shadow:0 6px 0 #03070d}
.s18PatchCharacterV10>header{display:flex;align-items:center;gap:14px;padding:13px;border-bottom:3px solid #000;background:#15243a}
.s18PatchPortraitV10{width:92px;height:92px;overflow:hidden;border:3px solid #000;border-radius:13px;background:#050b14}
.s18PatchPortraitV10 img{width:100%;height:100%;object-fit:contain;object-position:center bottom}
.s18PatchCharacterV10 h4{margin:0;font-size:24px}
.s18PatchCharacterV10 header strong{display:block;margin:3px 0 8px;color:#ffe000}
.s18PatchBadgesV10{display:flex;gap:7px;flex-wrap:wrap}
.s18PatchChangesV10{display:grid;gap:12px;padding:14px}
.s18PatchChangeV10{position:relative;padding:42px 13px 13px;border:2px solid #314c70;border-radius:13px;background:#0e1b2c}
.s18PatchChangeV10.buff{border-color:#25c86d}.s18PatchChangeV10.nerf{border-color:#e4485d}.s18PatchChangeV10.adjust{border-color:#d1a92a}
.s18ToneV10{position:absolute;top:8px;right:9px}
.s18PatchSkillV10{display:grid;grid-template-columns:88px 1fr;gap:13px;align-items:start}
.s18PatchSkillV10>div{width:88px;height:88px;overflow:hidden;border:2px solid #3d5f8d;border-radius:12px;background:#050a12}
.s18PatchSkillV10>div img{width:100%;height:100%;object-fit:cover}
.s18PatchSkillV10 h5{margin:0 0 7px;font-size:21px}
.s18PatchLabelV10{margin:0 0 9px;color:#8fcfff;font-weight:900}
.s18PatchTableWrapV10{overflow:auto;margin-top:9px}
.s18PatchTableV10{width:100%;min-width:max-content;border-collapse:collapse;background:#091323}
.s18PatchTableV10 th,.s18PatchTableV10 td{padding:8px 10px;border:1px solid #2e4a70;text-align:center;white-space:nowrap}
.s18PatchTableV10 thead th{background:#172945}.s18PatchTableV10 .before th,.s18PatchTableV10 .before td{background:#3c171d}.s18PatchTableV10 .after th,.s18PatchTableV10 .after td{background:#153822}.s18PatchTableV10 .after.adjust th,.s18PatchTableV10 .after.adjust td{background:#3b300f}
.s18DevSideV10{display:grid;gap:6px;padding:18px;border:2px solid #62418e;border-radius:13px;background:#241336}.s18DevSideV10 small{color:#d7c0f5}
.s18DevArticleV10{display:grid;gap:14px}.s18DevHeroV10{padding:20px;border:3px solid #7d33b5;border-radius:16px;background:linear-gradient(135deg,#2f0d50,#641296)}.s18DevHeroV10 span{color:#ffe000;font-weight:1000}.s18DevHeroV10 h2{margin:5px 0;font-size:clamp(26px,4vw,45px)}
.s18DevArticleV10 section{padding:16px;border:2px solid #304f78;border-radius:14px;background:#0d1b2d}.s18DevArticleV10 section h3{margin:0 0 7px;color:#ffe000}.s18DevArticleV10 section p{margin:0;color:#d6e2f4;line-height:1.55}
.s18OfficialLinksV10{display:flex;gap:10px;flex-wrap:wrap}.s18OfficialLinksV10 a{padding:11px 14px;border:3px solid #000;border-radius:10px;background:#19c9de;color:#00131a;font-weight:1000;text-decoration:none}

/* Admin depuis le profil. */
.s18ProfileAdminButtonV10{width:100%;padding:14px;border:4px solid #000;border-radius:13px;background:linear-gradient(135deg,#21cf72,#0fa64f);color:#06110a;font-size:18px;font-weight:1000;box-shadow:0 5px 0 #000}
.s18AdminPanelV10>main{height:min(68vh,720px);padding:18px;overflow:auto}
.s18AdminTitleV10{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.s18AdminTitleV10 h3{margin:0;font-size:28px}.s18AdminTitleV10 p{margin:5px 0;color:#b9c9df}.s18AdminTitleV10 button{padding:9px 13px;border:3px solid #000;border-radius:9px;background:#19c9de;font-weight:1000}
.s18DeletionListV10{display:grid;gap:12px}.s18DeletionListV10 article{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:14px;padding:14px;border:2px solid #36577f;border-radius:14px;background:#0c192b}.s18DeletionUserV10{display:flex;align-items:center;gap:11px}.s18DeletionUserV10>img,.s18DeletionUserV10>span{width:48px;height:48px;border-radius:50%;object-fit:cover;background:#203958;display:grid;place-items:center}.s18DeletionUserV10 small{display:block;color:#91a7c5;word-break:break-all}.s18DeletionListV10 strong{display:block;text-transform:uppercase}.s18DeletionListV10 .status-pending{color:#ffe000}.s18DeletionListV10 .status-processed{color:#45e886}.s18DeletionListV10 .status-rejected{color:#ff7480}.s18DeletionActionsV10{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.s18DeletionActionsV10 button{padding:8px 10px;border:2px solid #000;border-radius:8px;background:#e34d57;color:#fff;font-weight:900}.s18DeletionActionsV10 button:first-child{background:#274466}.s18DeletionActionsV10 button.success{background:#20c96a;color:#00150a}
.s18AdminLauncherV10{display:grid;justify-items:center;gap:10px;padding:45px;text-align:center}.s18AdminLauncherV10>span{font-size:62px}.s18AdminLauncherV10 h3{margin:0;font-size:30px}.s18AdminLauncherV10 p{max-width:620px;color:#bdcce1}.s18AdminLauncherV10 button{padding:12px 18px;border:3px solid #000;border-radius:10px;background:#ffe000;font-weight:1000}.s18AdminLoadingV10,.s18AdminEmptyV10,.s18AdminErrorV10{padding:35px;text-align:center;border:2px dashed #43658f;border-radius:14px}.s18AdminErrorV10{color:#ff8991;border-color:#d34b59}

/* Mods : chevron clair et arrivée en haut de page. */
.modsTutorial summary{display:flex!important;align-items:center!important;gap:12px!important;list-style:none!important}
.modsTutorial summary::-webkit-details-marker{display:none!important}
.modsTutorial summary::after{content:'⌄'!important;display:grid!important;place-items:center!important;width:40px!important;height:40px!important;margin-left:auto!important;flex:0 0 40px!important;border:3px solid #000!important;border-radius:50%!important;background:#07111f!important;color:#ffe000!important;font-size:28px!important;font-weight:1000!important;line-height:1!important;transition:transform .2s ease!important}
.modsTutorial[open] summary::after{content:'⌄'!important;transform:rotate(180deg)!important}
.s18ModsHintV10{margin-left:auto;font-size:14px;font-weight:1000;opacity:.8}.modsTutorial summary::after{margin-left:0!important}

@media(max-width:900px){
  .s18CharacterCardV10 .thumb{min-height:290px!important}
  .s18CharacterCardV10 .thumb img,.s18PortraitImgV10{transform:scale(1.30)!important}
  .s18StyleCardV10 .styleBanner{min-height:370px!important}
  .s18StyleCardV10 .styleBanner img,.s18StylePortraitV10{transform:scale(1.20)!important}
  .s18NotesBodyV10{grid-template-columns:1fr;height:min(78vh,780px)}
  .s18NotesBodyV10>aside{display:flex;gap:8px;border-right:0;border-bottom:2px solid #2d496e;overflow:auto}.s18NotesBodyV10>aside>button{min-width:230px;margin:0}
  .s18DeletionListV10 article{grid-template-columns:1fr}.s18DeletionActionsV10{justify-content:flex-start}
  .mhurPatchDevButtonV10 span{display:none}.mhurPatchDevButtonV10{min-width:44px!important;padding:0 10px!important}
}
@media(max-width:600px){
  .s18CharacterCardV10 .thumb{min-height:250px!important}
  .s18CharacterCardV10 .thumb img,.s18PortraitImgV10{transform:scale(1.24)!important}
  .s18StyleCardV10 .styleBanner{min-height:320px!important}
  .s18SeasonReleaseV10{min-height:160px!important}
  .s18SeasonNewV10{width:70px;height:35px}.s18SeasonReleaseV10 .releaseNamesV299 b{font-size:20px!important}
  .s18NotesOverlayV10,.s18AdminOverlayV10{padding:5px}.s18NotesPanelV10,.s18AdminPanelV10{max-height:98vh;border-radius:12px}.s18NotesBodyV10{height:82vh}.s18PatchSkillV10{grid-template-columns:1fr}.s18PatchSkillV10>div{width:72px;height:72px}
  .s18ModsHintV10{display:none}
}
/* Évite d'afficher les anciennes cartes rouges avant le remplacement v10. */
.releaseGridV296:not([data-s18-season-v10]){visibility:hidden!important;min-height:200px!important}

/* ========================================================================== */
/* MHUR Nexus — Saison 18 v11 : fenêtre notes et portraits                   */
/* ========================================================================== */
body.s18NotesOpenV11{overflow:hidden!important}
.s18NotesOverlayV10{
  align-items:flex-start!important;
  justify-content:center!important;
  padding:88px 18px 16px!important;
  overflow:hidden!important;
}
.s18NotesPanelV10{
  width:min(1220px,calc(100vw - 36px))!important;
  height:calc(100dvh - 104px)!important;
  max-height:calc(100dvh - 104px)!important;
  margin:0 auto!important;
  outline:none!important;
}
.s18NotesBodyV10{
  height:calc(100dvh - 252px)!important;
  min-height:0!important;
}
.s18NotesBodyV10>aside,
.s18NotesBodyV10>main{overscroll-behavior:contain!important;scroll-behavior:auto!important}

/* Les portraits commencent bien au bas de la carte et occupent plus d'espace. */
.s18CharacterCardV10 .thumb{
  position:relative!important;
  height:430px!important;
  min-height:430px!important;
  overflow:hidden!important;
  align-items:flex-end!important;
  justify-content:center!important;
}
.s18CharacterCardV10 .thumb img,
.s18PortraitImgV10{
  position:absolute!important;
  left:50%!important;
  bottom:0!important;
  width:116%!important;
  height:116%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateX(-50%) scale(1.10)!important;
  transform-origin:center bottom!important;
  margin:0!important;
  padding:0!important;
}
.s18StyleCardV10 .styleBanner{
  position:relative!important;
  height:520px!important;
  min-height:520px!important;
  overflow:hidden!important;
  align-items:flex-end!important;
  justify-content:center!important;
}
.s18StyleCardV10 .styleBanner img,
.s18StylePortraitV10{
  position:absolute!important;
  left:50%!important;
  bottom:0!important;
  width:118%!important;
  height:118%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateX(-50%) scale(1.08)!important;
  transform-origin:center bottom!important;
  margin:0!important;
  padding:0!important;
}
/* Fonds nets par rôle : plus de halo flou dans la partie haute. */
.s18StyleCardV10.role-technical .styleBanner{background:linear-gradient(180deg,#a532d4 0%,#7411a4 55%,#42075f 100%)!important}
.s18StyleCardV10.role-attack .styleBanner{background:linear-gradient(180deg,#ef354d 0%,#bd102a 55%,#680716 100%)!important}
.s18StyleCardV10.role-assault .styleBanner{background:linear-gradient(180deg,#ffe547 0%,#cba800 55%,#756000 100%)!important}
.s18StyleCardV10.role-support .styleBanner{background:linear-gradient(180deg,#54e978 0%,#13a842 55%,#075a25 100%)!important}
.s18StyleCardV10.role-rapid .styleBanner{background:linear-gradient(180deg,#48daf1 0%,#12a8ca 55%,#07566e 100%)!important}

/* Image officielle dédiée à Full Bullet. */
.s18StyleCardV10[data-style="fullbullet"] .styleBanner img,
.s18StyleCardV10[data-style*="midoriya_attack"] .styleBanner img{
  width:128%!important;
  height:112%!important;
  transform:translateX(-50%) scale(1.16)!important;
  filter:drop-shadow(0 12px 14px rgba(0,0,0,.45))!important;
}
/* Gentle : image officielle propre, sans étirement ni zone floue en haut. */
.s18StyleCardV10[data-style*="gentle"] .styleBanner img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center top!important;
  transform:translateX(-50%)!important;
  filter:none!important;
}

@media(max-width:900px){
  .s18NotesOverlayV10{padding:82px 8px 8px!important}
  .s18NotesPanelV10{width:calc(100vw - 16px)!important;height:calc(100dvh - 90px)!important;max-height:calc(100dvh - 90px)!important}
  .s18NotesBodyV10{height:calc(100dvh - 240px)!important}
  .s18CharacterCardV10 .thumb{height:350px!important;min-height:350px!important}
  .s18CharacterCardV10 .thumb img,.s18PortraitImgV10{width:120%!important;height:120%!important;transform:translateX(-50%) scale(1.08)!important}
  .s18StyleCardV10 .styleBanner{height:420px!important;min-height:420px!important}
  .s18StyleCardV10 .styleBanner img,.s18StylePortraitV10{width:122%!important;height:122%!important;transform:translateX(-50%) scale(1.06)!important}
  .s18StyleCardV10[data-style*="gentle"] .styleBanner img{width:100%!important;height:100%!important;transform:translateX(-50%)!important}
}
@media(max-width:600px){
  .s18NotesOverlayV10{padding:72px 4px 4px!important}
  .s18NotesPanelV10{width:calc(100vw - 8px)!important;height:calc(100dvh - 76px)!important;max-height:calc(100dvh - 76px)!important;border-radius:10px!important}
  .s18NotesBodyV10{height:calc(100dvh - 224px)!important}
  .s18NotesPanelV10>header{padding:10px 12px!important}
  .s18NotesPanelV10>header h2{font-size:22px!important}
  .s18NotesPanelV10>nav button{padding:8px 11px!important}
  .s18CharacterCardV10 .thumb{height:300px!important;min-height:300px!important}
  .s18StyleCardV10 .styleBanner{height:360px!important;min-height:360px!important}
}

/* ========================================================================== */
/* MHUR Nexus — Saison 18 v12 : premier affichage, sorties et portraits      */
/* ========================================================================== */
#mhurAdminButton,
header.top #mhurAdminButton,
header.top .mhurAdminTopButton,
header.top [data-mhur-admin]{display:none!important;visibility:hidden!important;pointer-events:none!important}

.mhurPatchDevButtonV12,
#mhurPatchDevButtonV12{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:48px!important;
  padding:7px 14px!important;
  border:2px solid #49658d!important;
  border-radius:14px!important;
  background:#132139!important;
  color:#fff!important;
  font-weight:1000!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
.mhurPatchDevButtonV12:hover{border-color:#ffe100!important}
.mhurPatchDevIconV12{font-size:17px;line-height:1}

/* L'ancienne règle de masquage ne doit plus laisser une grande zone vide. */
.releaseGridV296,
.releaseGridV296:not([data-s18-season-v10]){
  visibility:visible!important;
  min-height:0!important;
}
.s18PlannedGridV12{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
}
.s18PlannedCardV12{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-height:210px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:4px solid #05070b!important;
  border-radius:16px!important;
  background:#05070b!important;
  box-shadow:0 7px 0 #050506!important;
  color:#fff!important;
  text-align:left!important;
}
.s18PlannedCardV12.is-clickable{cursor:pointer!important}
.s18PlannedCardV12.is-clickable:hover{border-color:#ffe100!important;transform:translateY(-1px)}
.s18PlannedCardV12.is-disabled{cursor:default!important;user-select:none!important}
.s18PlannedArtV12{position:absolute;inset:0;z-index:1;background-position:center;background-size:cover;background-repeat:no-repeat}
.s18PlannedShadeV12{position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.16) 48%,rgba(0,0,0,.12) 70%,rgba(0,0,0,.34) 100%),linear-gradient(180deg,transparent 45%,rgba(0,0,0,.78) 100%)}
.s18PlannedTypeV12{position:absolute;z-index:5;left:12px;top:12px;width:38px;height:38px;filter:drop-shadow(0 3px 0 #000)}
.s18PlannedTypeV12 img{width:100%;height:100%;object-fit:contain}
.s18PlannedNewV12{position:absolute;z-index:5;right:12px;top:10px;width:92px;height:46px;background:url('../assets/home/icons/new_badge_custom.png') center/contain no-repeat;filter:drop-shadow(0 3px 0 rgba(0,0,0,.65))}
.s18PlannedTextV12{position:absolute;z-index:6;left:14px;right:14px;bottom:13px;display:block;text-shadow:0 3px 0 #000}
.s18PlannedTextV12 b{display:block;font-size:clamp(25px,2.2vw,35px);line-height:1;font-weight:1000}
.s18PlannedTextV12 small{display:block;margin-top:7px;color:#ffed00;font-size:clamp(14px,1.25vw,18px);font-weight:1000}
.s18PlannedTextV12 em{display:block;margin-top:5px;color:#fff;font-size:13px;font-style:normal;font-weight:850}
.s18PlannedTsuyuV12{position:absolute;inset:0;z-index:1;display:flex;align-items:flex-end;justify-content:center;background:#000}
.s18PlannedTsuyuV12 img{width:auto;height:112%;max-width:95%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 9px 12px rgba(0,0,0,.5))}

/* Tous les portraits des listes de personnages ont un vrai fond de rôle et
   commencent au bas de la carte. Cela couvre aussi les anciens rendus. */
.card[data-char].s18V12CharacterCard .thumb,
.card[data-char].s18CharacterCardV10 .thumb,
.card[data-char].s18CharacterCardV9 .thumb{
  position:relative!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  height:420px!important;
  min-height:420px!important;
  padding:0!important;
  overflow:hidden!important;
  background:var(--s18-v12-role-bg,var(--s18-card-bg,#12afd0))!important;
}
.card[data-char].s18V12CharacterCard .thumb img,
.card[data-char].s18CharacterCardV10 .thumb img,
.card[data-char].s18CharacterCardV9 .thumb img{
  position:absolute!important;
  left:50%!important;
  bottom:-1px!important;
  width:128%!important;
  height:128%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateX(-50%)!important;
  transform-origin:center bottom!important;
  filter:drop-shadow(0 10px 13px rgba(0,0,0,.42))!important;
}

/* Choix d'un style : fond propre par rôle et photo exacte de la base. */
.styleCard[data-style].s18V12StyleCard .styleBanner,
.styleCard[data-style].s18StyleCardV10 .styleBanner,
.styleCard[data-style].s18StyleCardV9 .styleBanner{
  position:relative!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  height:540px!important;
  min-height:540px!important;
  padding:0!important;
  overflow:hidden!important;
}
.styleCard[data-style].s18V12StyleCard .styleBanner img,
.styleCard[data-style].s18StyleCardV10 .styleBanner img,
.styleCard[data-style].s18StyleCardV9 .styleBanner img{
  position:absolute!important;
  left:50%!important;
  bottom:-1px!important;
  width:130%!important;
  height:130%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateX(-50%)!important;
  transform-origin:center bottom!important;
  filter:drop-shadow(0 11px 14px rgba(0,0,0,.42))!important;
}
.styleCard[data-style].role-attack .styleBanner{background:radial-gradient(circle at 50% 24%,#ff6576 0%,#dc1d3b 52%,#710817 100%)!important}
.styleCard[data-style].role-assault .styleBanner{background:radial-gradient(circle at 50% 24%,#fff16b 0%,#dfc000 52%,#746000 100%)!important}
.styleCard[data-style].role-technical .styleBanner{background:radial-gradient(circle at 50% 24%,#c15ce8 0%,#8818b8 52%,#430760 100%)!important}
.styleCard[data-style].role-support .styleBanner{background:radial-gradient(circle at 50% 24%,#78ff98 0%,#19bb50 52%,#075c28 100%)!important}
.styleCard[data-style].role-rapid .styleBanner{background:radial-gradient(circle at 50% 24%,#76efff 0%,#18b9d9 52%,#07576d 100%)!important}

/* Fiche détaillée : la photo remplit réellement le cadre coloré. */
.charPanel.s18V12CharacterDetail .charTop .portrait,
.charPanel.s18CharacterDetailV10 .charTop .portrait,
.charPanel.s18CharacterDetailV9 .charTop .portrait{
  position:relative!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  min-height:410px!important;
  padding:0!important;
  overflow:hidden!important;
}
.charPanel.s18V12CharacterDetail .charTop .portrait img,
.charPanel.s18CharacterDetailV10 .charTop .portrait img,
.charPanel.s18CharacterDetailV9 .charTop .portrait img{
  position:absolute!important;
  left:50%!important;
  bottom:-1px!important;
  width:132%!important;
  height:132%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateX(-50%)!important;
  transform-origin:center bottom!important;
  margin:0!important;
  padding:0!important;
}

@media(max-width:900px){
  .s18PlannedGridV12{grid-template-columns:1fr!important}
  .s18PlannedCardV12{min-height:190px!important}
  .card[data-char].s18V12CharacterCard .thumb,.card[data-char].s18CharacterCardV10 .thumb,.card[data-char].s18CharacterCardV9 .thumb{height:360px!important;min-height:360px!important}
  .styleCard[data-style].s18V12StyleCard .styleBanner,.styleCard[data-style].s18StyleCardV10 .styleBanner,.styleCard[data-style].s18StyleCardV9 .styleBanner{height:450px!important;min-height:450px!important}
  .charPanel.s18V12CharacterDetail .charTop .portrait,.charPanel.s18CharacterDetailV10 .charTop .portrait,.charPanel.s18CharacterDetailV9 .charTop .portrait{min-height:350px!important}
}
@media(max-width:600px){
  .mhurPatchDevButtonV12 span:last-child{display:none!important}
  .mhurPatchDevButtonV12{min-width:44px!important;padding:6px 10px!important}
  .s18PlannedCardV12{min-height:165px!important}
  .s18PlannedNewV12{width:72px;height:36px}
  .s18PlannedTextV12 b{font-size:22px}
  .s18PlannedTextV12 small{font-size:13px}
  .card[data-char].s18V12CharacterCard .thumb,.card[data-char].s18CharacterCardV10 .thumb,.card[data-char].s18CharacterCardV9 .thumb{height:320px!important;min-height:320px!important}
  .styleCard[data-style].s18V12StyleCard .styleBanner,.styleCard[data-style].s18StyleCardV10 .styleBanner,.styleCard[data-style].s18StyleCardV9 .styleBanner{height:390px!important;min-height:390px!important}
}

/* ===== Saison 18 v13 — stabilité du premier rendu ===== */
#mhurPatchDevButtonV13,.mhurPatchDevButtonV13{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:48px!important;
  padding:7px 14px!important;
  border:2px solid #49658d!important;
  border-radius:14px!important;
  background:#132139!important;
  color:#fff!important;
  font-weight:1000!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
#mhurPatchDevButtonV13:hover,.mhurPatchDevButtonV13:hover{border-color:#ffe100!important}
.s18PlannedGridV13{visibility:visible!important;min-height:0!important}
.s18PlannedCardV13{contain:layout paint;isolation:isolate}
.s18PlannedArtV13{will-change:auto!important}
.card[data-char].s18V13CharacterCard .thumb,
.styleCard[data-style].s18V13StyleCard .styleBanner,
.charPanel.s18V13CharacterDetail .charTop .portrait{isolation:isolate}
@media(max-width:600px){
  #mhurPatchDevButtonV13 span:last-child,.mhurPatchDevButtonV13 span:last-child{display:none!important}
  #mhurPatchDevButtonV13,.mhurPatchDevButtonV13{min-width:44px!important;padding:6px 10px!important}
}

/* ========================================================================== */
/* Saison 18 v14 — cartes plus grandes, fonds d'origine et header idempotent */
/* ========================================================================== */
#mhurPatchDevButtonV14,.mhurPatchDevButtonV14{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:48px!important;
  max-width:min(360px,31vw)!important;
  padding:7px 14px!important;
  border:2px solid #49658d!important;
  border-radius:14px!important;
  background:#132139!important;
  color:#fff!important;
  font-weight:1000!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  cursor:pointer!important;
}
#mhurPatchDevButtonV14:hover,.mhurPatchDevButtonV14:hover{border-color:#ffe100!important}

.s18PlannedGridV14{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:20px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
}
.s18PlannedCardV14{
  min-height:278px!important;
  background:transparent!important;
  border:4px solid #05070b!important;
  border-radius:17px!important;
  box-shadow:0 8px 0 #050506!important;
}
.s18PlannedCardV14.wide{grid-column:1/-1!important;min-height:285px!important}
.s18PlannedArtV14{position:absolute!important;inset:0!important;display:block!important;overflow:hidden!important;background:none!important}
.s18PlannedArtV14 img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  opacity:1!important;
}
.s18PlannedTsuyuV14{background:#000!important}
.s18PlannedTsuyuV14 img{height:128%!important;max-width:100%!important;object-position:center bottom!important}
.s18PlannedCardV14 .s18PlannedShadeV12{background:linear-gradient(90deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.12) 46%,rgba(0,0,0,.08) 68%,rgba(0,0,0,.38) 100%),linear-gradient(180deg,transparent 42%,rgba(0,0,0,.82) 100%)!important}
.s18PlannedCardV14 .s18PlannedTextV12 b{font-size:clamp(30px,2.5vw,42px)!important}
.s18PlannedCardV14 .s18PlannedTextV12 small{font-size:clamp(16px,1.35vw,20px)!important}
.s18PlannedCardV14 .s18PlannedTextV12 em{font-size:14px!important}

/* Une seule couleur sur la carte personnage : celle du style Original. */
.card[data-char].s18V14CharacterCard .thumb,
.card[data-char].s18V13CharacterCard .thumb,
.card[data-char].s18V12CharacterCard .thumb{
  height:470px!important;
  min-height:470px!important;
  padding:0!important;
}
.card[data-char].s18V14CharacterCard .thumb img,
.card[data-char].s18V13CharacterCard .thumb img,
.card[data-char].s18V12CharacterCard .thumb img{
  width:146%!important;
  height:146%!important;
  max-width:none!important;
  max-height:none!important;
  bottom:-2px!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  opacity:1!important;
}

.styleCard[data-style].s18V14StyleCard .styleBanner,
.styleCard[data-style].s18V13StyleCard .styleBanner,
.styleCard[data-style].s18V12StyleCard .styleBanner{
  height:575px!important;
  min-height:575px!important;
}
.styleCard[data-style].s18V14StyleCard .styleBanner img,
.styleCard[data-style].s18V13StyleCard .styleBanner img,
.styleCard[data-style].s18V12StyleCard .styleBanner img{
  width:145%!important;
  height:145%!important;
  bottom:-2px!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  opacity:1!important;
}

.charPanel.s18V14CharacterDetail .charTop .portrait,
.charPanel.s18V13CharacterDetail .charTop .portrait,
.charPanel.s18V12CharacterDetail .charTop .portrait{min-height:455px!important}
.charPanel.s18V14CharacterDetail .charTop .portrait img,
.charPanel.s18V13CharacterDetail .charTop .portrait img,
.charPanel.s18V12CharacterDetail .charTop .portrait img{
  width:145%!important;
  height:145%!important;
  bottom:-2px!important;
  opacity:1!important;
}

@media(max-width:1100px){
  #mhurPatchDevButtonV14 span:last-child,.mhurPatchDevButtonV14 span:last-child{max-width:210px;overflow:hidden;text-overflow:ellipsis}
  .s18PlannedCardV14{min-height:245px!important}
  .s18PlannedCardV14.wide{min-height:250px!important}
  .card[data-char].s18V14CharacterCard .thumb,.card[data-char].s18V13CharacterCard .thumb,.card[data-char].s18V12CharacterCard .thumb{height:420px!important;min-height:420px!important}
}
@media(max-width:760px){
  .s18PlannedGridV14{grid-template-columns:1fr!important;gap:16px!important}
  .s18PlannedCardV14,.s18PlannedCardV14.wide{grid-column:auto!important;min-height:220px!important}
  .card[data-char].s18V14CharacterCard .thumb,.card[data-char].s18V13CharacterCard .thumb,.card[data-char].s18V12CharacterCard .thumb{height:365px!important;min-height:365px!important}
  .styleCard[data-style].s18V14StyleCard .styleBanner,.styleCard[data-style].s18V13StyleCard .styleBanner,.styleCard[data-style].s18V12StyleCard .styleBanner{height:470px!important;min-height:470px!important}
}
@media(max-width:600px){
  #mhurPatchDevButtonV14,.mhurPatchDevButtonV14{min-width:44px!important;max-width:48px!important;padding:6px 10px!important}
  #mhurPatchDevButtonV14 span:last-child,.mhurPatchDevButtonV14 span:last-child{display:none!important}
  .s18PlannedCardV14,.s18PlannedCardV14.wide{min-height:190px!important}
  .s18PlannedCardV14 .s18PlannedTextV12 b{font-size:24px!important}
  .s18PlannedCardV14 .s18PlannedTextV12 small{font-size:13px!important}
  .card[data-char].s18V14CharacterCard .thumb,.card[data-char].s18V13CharacterCard .thumb,.card[data-char].s18V12CharacterCard .thumb{height:330px!important;min-height:330px!important}
  .styleCard[data-style].s18V14StyleCard .styleBanner,.styleCard[data-style].s18V13StyleCard .styleBanner,.styleCard[data-style].s18V12StyleCard .styleBanner{height:410px!important;min-height:410px!important}
}

/* ========================================================================== */
/* MHUR Nexus — Saison 18 v15 : finitions demandées par l'utilisateur        */
/* ========================================================================== */
#mhurPatchDevButtonV14,.mhurPatchDevButtonV14{
  flex:0 0 auto!important;
  max-width:min(420px,35vw)!important;
}

/* Sorties prévues : cartes plus grandes et art moins vide. */
.s18PlannedGridV14{gap:22px!important}
.s18PlannedCardV14{min-height:308px!important}
.s18PlannedCardV14.wide{min-height:330px!important}
.s18PlannedCardV14 .s18PlannedTextV12{left:18px!important;bottom:18px!important}
.s18PlannedCardV14.wide .s18PlannedTextV12{right:52%!important}
.s18PlannedArtV14 img{object-position:center top!important}
.s18PlannedTsuyuV14{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-end!important;
  padding-right:10px!important;
  background:transparent!important;
}
.s18PlannedTsuyuV14 img{
  width:68%!important;
  height:152%!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  filter:drop-shadow(0 10px 16px rgba(0,0,0,.45))!important;
}

/* Cartes personnages : réduire le vide en agrandissant davantage le portrait. */
.card[data-char].s18V14CharacterCard .thumb,
.card[data-char].s18V13CharacterCard .thumb,
.card[data-char].s18V12CharacterCard .thumb{
  height:438px!important;
  min-height:438px!important;
}
.card[data-char].s18V14CharacterCard .thumb img,
.card[data-char].s18V13CharacterCard .thumb img,
.card[data-char].s18V12CharacterCard .thumb img{
  width:154%!important;
  height:154%!important;
  bottom:-2px!important;
}

/* Styles : on garde le fond de rôle, mais avec un visuel plus grand et propre. */
.styleCard[data-style].s18V14StyleCard .styleBanner,
.styleCard[data-style].s18V13StyleCard .styleBanner,
.styleCard[data-style].s18V12StyleCard .styleBanner{
  height:510px!important;
  min-height:510px!important;
}
.styleCard[data-style].s18V14StyleCard .styleBanner img,
.styleCard[data-style].s18V13StyleCard .styleBanner img,
.styleCard[data-style].s18V12StyleCard .styleBanner img{
  width:140%!important;
  height:140%!important;
  bottom:-2px!important;
  object-fit:contain!important;
  object-position:center bottom!important;
}
.styleCard[data-style="fullbullet"] .styleBanner img,
.styleCard[data-style*="midoriya_attack"] .styleBanner img,
.s18V14StyleCard[data-style="fullbullet"] .styleBanner img,
.s18V14StyleCard[data-style*="midoriya_attack"] .styleBanner img{
  width:126%!important;
  height:116%!important;
  transform:translateX(-50%) scale(1.12)!important;
  object-position:center 88%!important;
}

/* Réductions de points personnage : si les images sont présentes, elles remplissent mieux. */
.discountCardV296 img{
  object-position:center center!important;
  background:radial-gradient(circle,#2f3c50 0%,#101218 72%)!important;
}

@media(max-width:1100px){
  #mhurPatchDevButtonV14 span:last-child,.mhurPatchDevButtonV14 span:last-child{max-width:240px!important}
  .s18PlannedCardV14{min-height:270px!important}
  .s18PlannedCardV14.wide{min-height:282px!important}
  .s18PlannedCardV14.wide .s18PlannedTextV12{right:48%!important}
}
@media(max-width:760px){
  .s18PlannedCardV14,.s18PlannedCardV14.wide{min-height:230px!important}
  .s18PlannedCardV14.wide .s18PlannedTextV12{right:40%!important}
  .s18PlannedTsuyuV14{padding-right:8px!important}
  .s18PlannedTsuyuV14 img{width:72%!important;height:138%!important}
  .card[data-char].s18V14CharacterCard .thumb,.card[data-char].s18V13CharacterCard .thumb,.card[data-char].s18V12CharacterCard .thumb{height:360px!important;min-height:360px!important}
  .styleCard[data-style].s18V14StyleCard .styleBanner,.styleCard[data-style].s18V13StyleCard .styleBanner,.styleCard[data-style].s18V12StyleCard .styleBanner{height:435px!important;min-height:435px!important}
}
@media(max-width:600px){
  #mhurPatchDevButtonV14,#mhurPatchDevButtonV14,.mhurPatchDevButtonV14{max-width:48px!important}
  .s18PlannedCardV14,.s18PlannedCardV14.wide{min-height:205px!important}
  .s18PlannedCardV14 .s18PlannedTextV12{left:14px!important;right:14px!important;bottom:14px!important}
  .s18PlannedCardV14.wide .s18PlannedTextV12{right:14px!important}
  .s18PlannedTsuyuV14{justify-content:center!important;padding-right:0!important}
  .s18PlannedTsuyuV14 img{width:74%!important;height:130%!important}
  .card[data-char].s18V14CharacterCard .thumb,.card[data-char].s18V13CharacterCard .thumb,.card[data-char].s18V12CharacterCard .thumb{height:325px!important;min-height:325px!important}
  .styleCard[data-style].s18V14StyleCard .styleBanner,.styleCard[data-style].s18V13StyleCard .styleBanner,.styleCard[data-style].s18V12StyleCard .styleBanner{height:370px!important;min-height:370px!important}
}

/* ========================================================================== */
/* MHUR Nexus — Saison 18 v17 : styles/costumes + patch notes mobile         */
/* ========================================================================== */
:root{--s18-header-offset:0px}

/* Patch Notes / Dev Notes : position dynamique sous le header sur téléphone. */
.s18NotesOverlayV10{
  align-items:flex-start!important;
  padding:calc(var(--s18-header-offset,0px) + 10px) 10px 10px!important;
}
.s18NotesPanelV10{
  width:min(1220px,98vw)!important;
  max-height:calc(100dvh - var(--s18-header-offset,0px) - 20px)!important;
}
.s18NotesBodyV10{
  height:min(74vh,780px)!important;
  max-height:calc(100dvh - var(--s18-header-offset,0px) - 170px)!important;
}
.s18NotesPanelV10>header,
.s18NotesPanelV10>nav{
  position:sticky!important;
  top:0!important;
  z-index:4!important;
}
.s18NotesPanelV10>nav{z-index:3!important}

/* Personnages : garder les anciennes photos mais plus grandes sur PC. */
.card[data-char].s18CharacterCardV10 .thumb,
.card[data-char].s18V14CharacterCard .thumb,
.card[data-char].s18V13CharacterCard .thumb,
.card[data-char].s18V12CharacterCard .thumb{
  height:472px!important;
  min-height:472px!important;
}
.card[data-char].s18CharacterCardV10 .thumb img,
.card[data-char].s18V14CharacterCard .thumb img,
.card[data-char].s18V13CharacterCard .thumb img,
.card[data-char].s18V12CharacterCard .thumb img,
.s18PortraitImgV10{
  width:158%!important;
  height:158%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateX(-50%) translateY(-2%)!important;
}

/* Styles : photos plus grandes, mieux centrées, rectangle mieux rempli. */
.styleCard[data-style].s18StyleCardV10 .styleBanner,
.styleCard[data-style].s18V14StyleCard .styleBanner,
.styleCard[data-style].s18V13StyleCard .styleBanner,
.styleCard[data-style].s18V12StyleCard .styleBanner{
  height:540px!important;
  min-height:540px!important;
}
.styleCard[data-style].s18StyleCardV10 .styleBanner img,
.styleCard[data-style].s18V14StyleCard .styleBanner img,
.styleCard[data-style].s18V13StyleCard .styleBanner img,
.styleCard[data-style].s18V12StyleCard .styleBanner img,
.s18StylePortraitV10{
  width:146%!important;
  height:146%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateX(-50%) translateY(-4%)!important;
}
.styleCard[data-style="fullbullet"] .styleBanner img,
.styleCard[data-style*="midoriya_attack"] .styleBanner img,
.s18StyleCardV10[data-style="fullbullet"] .styleBanner img,
.s18StyleCardV10[data-style*="midoriya_attack"] .styleBanner img,
.s18V14StyleCard[data-style="fullbullet"] .styleBanner img,
.s18V14StyleCard[data-style*="midoriya_attack"] .styleBanner img{
  width:118%!important;
  height:118%!important;
  object-position:center top!important;
  transform:translateX(-50%) translateY(0)!important;
  filter:drop-shadow(0 10px 14px rgba(0,0,0,.42))!important;
}

/* Costumes : même rendu qu'avant, mais images plus grandes sur PC. */
.costumeTile{
  min-height:372px!important;
  overflow:hidden!important;
}
.costumeTile img{
  width:100%!important;
  height:272px!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  background:radial-gradient(circle at 50% 35%,#2d5a92 0%,#16345b 36%,#0b1930 70%,#06101f 100%)!important;
  padding:4px!important;
  transform:scale(1.08)!important;
  transform-origin:center bottom!important;
}
.costumeTileName{
  bottom:28px!important;
  min-height:56px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:6px 10px!important;
}

/* Fiche personnage : garder le fond fait avant mais un peu plus foncé. */
.charPanel.s18CharacterDetailV10 .skillBox,
.charPanel.s18CharacterDetailV9 .skillBox,
.charPanel.s18V14CharacterDetail .skillBox,
.charPanel.s18V13CharacterDetail .skillBox,
.charPanel.s18V12CharacterDetail .skillBox{
  background:#0b1627!important;
  color:#fff!important;
  border:2px solid #2d4d72!important;
}
.charPanel.s18CharacterDetailV10 .skillHead,
.charPanel.s18CharacterDetailV9 .skillHead,
.charPanel.s18V14CharacterDetail .skillHead,
.charPanel.s18V13CharacterDetail .skillHead,
.charPanel.s18V12CharacterDetail .skillHead{
  background:linear-gradient(90deg,#123862,#184d85)!important;
  color:#fff!important;
  text-shadow:0 2px 0 #000!important;
}
.charPanel.s18CharacterDetailV10 .skillDesc,
.charPanel.s18CharacterDetailV9 .skillDesc,
.charPanel.s18V14CharacterDetail .skillDesc,
.charPanel.s18V13CharacterDetail .skillDesc,
.charPanel.s18V12CharacterDetail .skillDesc{
  color:#dbe8f8!important;
}
.charPanel.s18CharacterDetailV10 .toggle,
.charPanel.s18CharacterDetailV9 .toggle,
.charPanel.s18V14CharacterDetail .toggle,
.charPanel.s18V13CharacterDetail .toggle,
.charPanel.s18V12CharacterDetail .toggle{
  background:#0f223c!important;
  color:#86c5ff!important;
}
.charPanel.s18CharacterDetailV10 .simpleTable,
.charPanel.s18CharacterDetailV9 .simpleTable,
.charPanel.s18V14CharacterDetail .simpleTable,
.charPanel.s18V13CharacterDetail .simpleTable,
.charPanel.s18V12CharacterDetail .simpleTable,
.charPanel.s18CharacterDetailV10 .dataTable,
.charPanel.s18CharacterDetailV9 .dataTable,
.charPanel.s18V14CharacterDetail .dataTable,
.charPanel.s18V13CharacterDetail .dataTable,
.charPanel.s18V12CharacterDetail .dataTable{
  background:#091323!important;
}

@media(max-width:1100px){
  .card[data-char].s18CharacterCardV10 .thumb,
  .card[data-char].s18V14CharacterCard .thumb,
  .card[data-char].s18V13CharacterCard .thumb,
  .card[data-char].s18V12CharacterCard .thumb{height:432px!important;min-height:432px!important}
  .styleCard[data-style].s18StyleCardV10 .styleBanner,
  .styleCard[data-style].s18V14StyleCard .styleBanner,
  .styleCard[data-style].s18V13StyleCard .styleBanner,
  .styleCard[data-style].s18V12StyleCard .styleBanner{height:495px!important;min-height:495px!important}
  .costumeTile{min-height:350px!important}
  .costumeTile img{height:250px!important}
}
@media(max-width:900px){
  .s18NotesOverlayV10{padding:calc(var(--s18-header-offset,0px) + 8px) 8px 8px!important}
  .s18NotesPanelV10{width:calc(100vw - 16px)!important;max-height:calc(100dvh - var(--s18-header-offset,0px) - 16px)!important}
  .s18NotesBodyV10{height:calc(100dvh - var(--s18-header-offset,0px) - 238px)!important;max-height:calc(100dvh - var(--s18-header-offset,0px) - 238px)!important;grid-template-columns:1fr!important}
  .s18NotesBodyV10>aside{max-height:180px!important;border-right:0!important;border-bottom:2px solid #2d496e!important}
  .card[data-char].s18CharacterCardV10 .thumb,
  .card[data-char].s18V14CharacterCard .thumb,
  .card[data-char].s18V13CharacterCard .thumb,
  .card[data-char].s18V12CharacterCard .thumb{height:360px!important;min-height:360px!important}
  .styleCard[data-style].s18StyleCardV10 .styleBanner,
  .styleCard[data-style].s18V14StyleCard .styleBanner,
  .styleCard[data-style].s18V13StyleCard .styleBanner,
  .styleCard[data-style].s18V12StyleCard .styleBanner{height:430px!important;min-height:430px!important}
  .costumeTile{min-height:324px!important}
  .costumeTile img{height:212px!important;transform:scale(1.04)!important}
  .charPanel.s18CharacterDetailV10 .skillText .dataTable,
  .charPanel.s18CharacterDetailV9 .skillText .dataTable,
  .charPanel.s18V14CharacterDetail .skillText .dataTable,
  .charPanel.s18V13CharacterDetail .skillText .dataTable,
  .charPanel.s18V12CharacterDetail .skillText .dataTable{
    min-width:560px!important;
    font-size:15px!important;
  }
  .charPanel.s18CharacterDetailV10 .skillText .dataTable th,
  .charPanel.s18CharacterDetailV10 .skillText .dataTable td,
  .charPanel.s18CharacterDetailV9 .skillText .dataTable th,
  .charPanel.s18CharacterDetailV9 .skillText .dataTable td,
  .charPanel.s18V14CharacterDetail .skillText .dataTable th,
  .charPanel.s18V14CharacterDetail .skillText .dataTable td,
  .charPanel.s18V13CharacterDetail .skillText .dataTable th,
  .charPanel.s18V13CharacterDetail .skillText .dataTable td,
  .charPanel.s18V12CharacterDetail .skillText .dataTable th,
  .charPanel.s18V12CharacterDetail .skillText .dataTable td{padding:8px 10px!important}
}
@media(max-width:600px){
  .s18NotesOverlayV10{padding:calc(var(--s18-header-offset,0px) + 6px) 4px 4px!important}
  .s18NotesPanelV10{width:calc(100vw - 8px)!important;max-height:calc(100dvh - var(--s18-header-offset,0px) - 8px)!important;border-radius:12px!important}
  .s18NotesBodyV10{height:calc(100dvh - var(--s18-header-offset,0px) - 212px)!important;max-height:calc(100dvh - var(--s18-header-offset,0px) - 212px)!important}
  .s18NotesPanelV10>header{padding:10px 12px!important}
  .s18NotesPanelV10>header h2{font-size:22px!important}
  .card[data-char].s18CharacterCardV10 .thumb,
  .card[data-char].s18V14CharacterCard .thumb,
  .card[data-char].s18V13CharacterCard .thumb,
  .card[data-char].s18V12CharacterCard .thumb{height:330px!important;min-height:330px!important}
  .styleCard[data-style].s18StyleCardV10 .styleBanner,
  .styleCard[data-style].s18V14StyleCard .styleBanner,
  .styleCard[data-style].s18V13StyleCard .styleBanner,
  .styleCard[data-style].s18V12StyleCard .styleBanner{height:372px!important;min-height:372px!important}
  .costumeTile{min-height:312px!important}
  .costumeTile img{height:200px!important}
  .charPanel.s18CharacterDetailV10 .skillText .dataTable,
  .charPanel.s18CharacterDetailV9 .skillText .dataTable,
  .charPanel.s18V14CharacterDetail .skillText .dataTable,
  .charPanel.s18V13CharacterDetail .skillText .dataTable,
  .charPanel.s18V12CharacterDetail .skillText .dataTable{min-width:520px!important;font-size:14px!important}
}


/* ========================================================================== */
/* MHUR Nexus — Saison 18 v19 : visuels PC + réductions + costumes           */
/* ========================================================================== */
.discountCardV296.s18DiscountCardV19{
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
}
.s18DiscountArtV19{
  width:100%!important;
  height:148px!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:radial-gradient(circle at 50% 30%,#334764 0%,#17253a 42%,#0c1421 75%,#090f18 100%)!important;
}
.s18DiscountArtV19 img{
  width:138%!important;
  height:138%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateY(2%)!important;
  background:none!important;
}

@media(min-width:901px){
  .card[data-char].s18CharacterCardV10 .thumb,
  .card[data-char].s18V14CharacterCard .thumb,
  .card[data-char].s18V13CharacterCard .thumb,
  .card[data-char].s18V12CharacterCard .thumb{
    height:500px!important;
    min-height:500px!important;
  }
  .card[data-char].s18CharacterCardV10 .thumb img,
  .card[data-char].s18V14CharacterCard .thumb img,
  .card[data-char].s18V13CharacterCard .thumb img,
  .card[data-char].s18V12CharacterCard .thumb img,
  .s18PortraitImgV10{
    width:168%!important;
    height:168%!important;
    object-fit:contain!important;
    object-position:center bottom!important;
    transform:translateX(-50%) translateY(-1%)!important;
  }

  .styleCard[data-style].s18StyleCardV10 .styleBanner,
  .styleCard[data-style].s18V14StyleCard .styleBanner,
  .styleCard[data-style].s18V13StyleCard .styleBanner,
  .styleCard[data-style].s18V12StyleCard .styleBanner{
    height:580px!important;
    min-height:580px!important;
    align-items:flex-end!important;
  }
  .styleCard[data-style].s18StyleCardV10 .styleBanner img,
  .styleCard[data-style].s18V14StyleCard .styleBanner img,
  .styleCard[data-style].s18V13StyleCard .styleBanner img,
  .styleCard[data-style].s18V12StyleCard .styleBanner img,
  .s18StylePortraitV10{
    width:154%!important;
    height:154%!important;
    object-fit:contain!important;
    object-position:center bottom!important;
    transform:translateX(-50%) translateY(-2%)!important;
  }

  .discountGridV296{grid-template-columns:repeat(6,minmax(0,1fr))!important}
  .s18DiscountArtV19{height:170px!important}
  .s18DiscountArtV19 img{width:150%!important;height:150%!important}

  .s18CostumeDesktopGridV19{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(175px,1fr))!important;
    gap:14px!important;
    overflow:visible!important;
    padding-bottom:0!important;
    align-items:stretch!important;
  }
  .s18CostumeDesktopGridV19 .costumeTile,
  .s18CostumeDesktopGridV19 .costumeCard{
    width:100%!important;
    max-width:none!important;
    flex:none!important;
  }
  .s18UpcomingCostumeGroupV19{
    margin-top:22px!important;
    padding-top:8px!important;
    border-top:3px solid #1f3855!important;
  }
  .s18UpcomingCostumeTitleV19{
    margin:0 0 14px!important;
    padding:10px 14px!important;
    border-left:7px solid #ffe000!important;
    background:#0e1b2d!important;
    color:#fff!important;
    font-size:28px!important;
    font-weight:1000!important;
  }
}

@media(max-width:900px){
  .s18DiscountArtV19{height:132px!important}
  .s18DiscountArtV19 img{width:124%!important;height:124%!important}
}


/* ========================================================================== */
/* MHUR Nexus — Saison 18 v20 : correctifs mobile finaux                     */
/* ========================================================================== */
.mhurPatchDevButtonV20 .mhurPatchDevIconV20{
  display:grid!important;
  place-items:center!important;
  width:22px!important;
  height:22px!important;
  flex:0 0 22px!important;
  line-height:0!important;
}
.mhurPatchDevButtonV20 .mhurPatchDevIconV20 svg{
  display:block!important;
  width:22px!important;
  height:22px!important;
}

.s18PatchTableWrapV10{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-x!important;
}
.s18PatchTableWrapV10::-webkit-scrollbar{height:8px}
.s18PatchTableV10{min-width:max-content!important}

@media(max-width:900px){
  .homeV296.s18HomeMobileOffsetV20{padding-top:12px!important}

  .card[data-char].s18CharacterCardV10 .thumb,
  .card[data-char].s18V14CharacterCard .thumb,
  .card[data-char].s18V13CharacterCard .thumb,
  .card[data-char].s18V12CharacterCard .thumb{
    height:380px!important;
    min-height:380px!important;
    display:flex!important;
    align-items:flex-end!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  .card[data-char].s18CharacterCardV10 .thumb img,
  .card[data-char].s18V14CharacterCard .thumb img,
  .card[data-char].s18V13CharacterCard .thumb img,
  .card[data-char].s18V12CharacterCard .thumb img,
  .s18PortraitImgV10{
    width:112%!important;
    height:112%!important;
    max-width:none!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center bottom!important;
    left:50%!important;
    top:auto!important;
    bottom:0!important;
    transform:translateX(-50%) translateY(0)!important;
  }

  .styleCard[data-style].s18StyleCardV10 .styleBanner,
  .styleCard[data-style].s18V14StyleCard .styleBanner,
  .styleCard[data-style].s18V13StyleCard .styleBanner,
  .styleCard[data-style].s18V12StyleCard .styleBanner{
    height:430px!important;
    min-height:430px!important;
    display:flex!important;
    align-items:flex-end!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  .styleCard[data-style].s18StyleCardV10 .styleBanner img,
  .styleCard[data-style].s18V14StyleCard .styleBanner img,
  .styleCard[data-style].s18V13StyleCard .styleBanner img,
  .styleCard[data-style].s18V12StyleCard .styleBanner img,
  .s18StylePortraitV10{
    width:112%!important;
    height:112%!important;
    max-width:none!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center bottom!important;
    left:50%!important;
    top:auto!important;
    bottom:0!important;
    transform:translateX(-50%) translateY(0)!important;
  }
  .styleCard[data-style="fullbullet"] .styleBanner img,
  .styleCard[data-style*="midoriya_attack"] .styleBanner img,
  .s18StyleCardV10[data-style="fullbullet"] .styleBanner img,
  .s18StyleCardV10[data-style*="midoriya_attack"] .styleBanner img,
  .s18V14StyleCard[data-style="fullbullet"] .styleBanner img,
  .s18V14StyleCard[data-style*="midoriya_attack"] .styleBanner img{
    width:104%!important;
    height:104%!important;
    object-position:center bottom!important;
    top:auto!important;
    bottom:0!important;
    transform:translateX(-50%) translateY(0)!important;
  }

  .s18PatchChangeV10{overflow:visible!important}
  .s18PatchTableWrapV10{padding-bottom:4px!important}
  .s18PatchTableV10{min-width:760px!important}

  .s18NotesBodyV10>main{padding:14px!important}
}

@media(max-width:600px){
  .homeV296.s18HomeMobileOffsetV20{padding-top:16px!important}

  #mhurPatchDevButtonV14,.mhurPatchDevButtonV14{
    min-width:44px!important;
    max-width:48px!important;
    padding:6px 10px!important;
  }

  .card[data-char].s18CharacterCardV10 .thumb,
  .card[data-char].s18V14CharacterCard .thumb,
  .card[data-char].s18V13CharacterCard .thumb,
  .card[data-char].s18V12CharacterCard .thumb{
    height:340px!important;
    min-height:340px!important;
  }
  .card[data-char].s18CharacterCardV10 .thumb img,
  .card[data-char].s18V14CharacterCard .thumb img,
  .card[data-char].s18V13CharacterCard .thumb img,
  .card[data-char].s18V12CharacterCard .thumb img,
  .s18PortraitImgV10{
    width:108%!important;
    height:108%!important;
  }

  .styleCard[data-style].s18StyleCardV10 .styleBanner,
  .styleCard[data-style].s18V14StyleCard .styleBanner,
  .styleCard[data-style].s18V13StyleCard .styleBanner,
  .styleCard[data-style].s18V12StyleCard .styleBanner{
    height:398px!important;
    min-height:398px!important;
  }
  .styleCard[data-style].s18StyleCardV10 .styleBanner img,
  .styleCard[data-style].s18V14StyleCard .styleBanner img,
  .styleCard[data-style].s18V13StyleCard .styleBanner img,
  .styleCard[data-style].s18V12StyleCard .styleBanner img,
  .s18StylePortraitV10{
    width:108%!important;
    height:108%!important;
  }
  .styleCard[data-style="fullbullet"] .styleBanner img,
  .styleCard[data-style*="midoriya_attack"] .styleBanner img,
  .s18StyleCardV10[data-style="fullbullet"] .styleBanner img,
  .s18StyleCardV10[data-style*="midoriya_attack"] .styleBanner img,
  .s18V14StyleCard[data-style="fullbullet"] .styleBanner img,
  .s18V14StyleCard[data-style*="midoriya_attack"] .styleBanner img{
    width:102%!important;
    height:102%!important;
  }

  .s18PatchSkillV10{grid-template-columns:68px minmax(0,1fr)!important;gap:10px!important}
  .s18PatchSkillV10>div{width:68px!important;height:68px!important}
  .s18PatchSkillV10 h5{font-size:17px!important;line-height:1.18!important}
  .s18PatchTableV10{min-width:720px!important}
  .s18PatchTableV10 th,
  .s18PatchTableV10 td{padding:7px 9px!important;font-size:13px!important}
}


/* ========================================================================== */
/* MHUR Nexus — Saison 18 v22 : icône Patch + portraits PC + patch mobile    */
/* ========================================================================== */
@media(min-width:761px){
  .charPanel.s18V14CharacterDetail .charTop .portrait,
  .charPanel.s18V13CharacterDetail .charTop .portrait,
  .charPanel.s18V12CharacterDetail .charTop .portrait,
  .charPanel.s18CharacterDetailV10 .charTop .portrait,
  .charPanel.s18CharacterDetailV9 .charTop .portrait{
    min-height:520px!important;
  }
  .charPanel.s18V14CharacterDetail .charTop .portrait img,
  .charPanel.s18V13CharacterDetail .charTop .portrait img,
  .charPanel.s18V12CharacterDetail .charTop .portrait img,
  .charPanel.s18CharacterDetailV10 .charTop .portrait img,
  .charPanel.s18CharacterDetailV9 .charTop .portrait img{
    width:112%!important;
    height:112%!important;
    max-width:none!important;
    max-height:none!important;
    left:50%!important;
    bottom:-2px!important;
    object-fit:contain!important;
    object-position:center bottom!important;
    transform:translateX(-50%)!important;
  }

  .styleCard[data-style].s18StyleCardV10 .styleBanner,
  .styleCard[data-style].s18V14StyleCard .styleBanner,
  .styleCard[data-style].s18V13StyleCard .styleBanner,
  .styleCard[data-style].s18V12StyleCard .styleBanner{
    height:560px!important;
    min-height:560px!important;
  }
  .styleCard[data-style].s18StyleCardV10 .styleBanner img,
  .styleCard[data-style].s18V14StyleCard .styleBanner img,
  .styleCard[data-style].s18V13StyleCard .styleBanner img,
  .styleCard[data-style].s18V12StyleCard .styleBanner img,
  .s18StylePortraitV10{
    width:112%!important;
    height:112%!important;
    max-width:none!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center bottom!important;
    transform:translateX(-50%) translateY(0)!important;
  }
  .styleCard[data-style="fullbullet"] .styleBanner img,
  .styleCard[data-style*="midoriya_attack"] .styleBanner img,
  .s18StyleCardV10[data-style="fullbullet"] .styleBanner img,
  .s18StyleCardV10[data-style*="midoriya_attack"] .styleBanner img,
  .s18V14StyleCard[data-style="fullbullet"] .styleBanner img,
  .s18V14StyleCard[data-style*="midoriya_attack"] .styleBanner img{
    width:106%!important;
    height:106%!important;
    object-position:center bottom!important;
    transform:translateX(-50%) translateY(0)!important;
  }
}

@media(max-width:900px){
  #mhurPatchDevButtonV14 .mhurPatchDevIconV20,
  .mhurPatchDevButtonV14 .mhurPatchDevIconV20,
  .mhurPatchDevButtonV20 .mhurPatchDevIconV20,
  #mhurPatchDevButtonV14 span:first-child,
  .mhurPatchDevButtonV14 span:first-child{
    display:grid!important;
    place-items:center!important;
    visibility:visible!important;
    opacity:1!important;
    width:22px!important;
    height:22px!important;
    flex:0 0 22px!important;
  }
  #mhurPatchDevButtonV14 .mhurPatchDevIconV20 svg,
  .mhurPatchDevButtonV14 .mhurPatchDevIconV20 svg,
  .mhurPatchDevButtonV20 .mhurPatchDevIconV20 svg,
  #mhurPatchDevButtonV14 span:first-child svg,
  .mhurPatchDevButtonV14 span:first-child svg{
    display:block!important;
    width:22px!important;
    height:22px!important;
  }
}

@media(max-width:600px){
  .s18NotesOverlayV10{padding:calc(var(--s18-header-offset,0px) + 8px) 6px 6px!important}
  .s18NotesPanelV10{width:calc(100vw - 12px)!important;max-height:calc(100dvh - var(--s18-header-offset,0px) - 12px)!important}
  .s18NotesBodyV10{height:calc(100dvh - var(--s18-header-offset,0px) - 156px)!important;max-height:calc(100dvh - var(--s18-header-offset,0px) - 156px)!important}
  .s18NotesBodyV10>main{padding:16px!important}
  .s18PatchCharacterV10>header{gap:16px!important;padding:16px!important}
  .s18PatchPortraitV10{width:112px!important;height:112px!important;flex:0 0 112px!important}
  .s18PatchCharacterV10 h4{font-size:30px!important;line-height:1.03!important}
  .s18PatchCharacterV10 header strong{font-size:18px!important}
  .s18PatchBadgesV10 .badge{font-size:15px!important;padding:8px 12px!important}
  .s18PatchChangesV10{gap:14px!important;padding:16px!important}
  .s18PatchChangeV10{padding:48px 14px 14px!important}
  .s18ToneV10{top:10px!important;right:10px!important}
  .s18PatchSkillV10{grid-template-columns:84px minmax(0,1fr)!important;gap:12px!important}
  .s18PatchSkillV10>div{width:84px!important;height:84px!important}
  .s18PatchSkillV10 h5{font-size:20px!important;line-height:1.12!important}
  .s18PatchLabelV10{font-size:16px!important}
  .s18PatchTableWrapV10{padding-bottom:4px!important}
  .s18PatchTableV10{min-width:760px!important}
}

/* ========================================================================== */
/* MHUR Nexus — Saison 18 v23 : section Costumes à venir                    */
/* ========================================================================== */
.s18UpcomingCostumeGroupV23{
  margin:0 0 26px!important;
  padding:14px!important;
  border:4px solid #000!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,#14233a,#08111f)!important;
  box-shadow:0 7px 0 #02050a!important;
}
.s18UpcomingCostumeTitleV23{
  margin:0 0 14px!important;
  padding:12px 16px!important;
  border-left:8px solid #ffe000!important;
  background:#0c1a2d!important;
  color:#fff!important;
  font-size:clamp(25px,3vw,36px)!important;
  font-weight:1000!important;
  text-shadow:2px 2px 0 #000!important;
}
.s18UpcomingCostumeFamiliesV23{
  display:grid!important;
  gap:18px!important;
}
.s18UpcomingCostumeFamilyV23{
  margin:0!important;
}
.s18UpcomingCostumeGridV23{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(175px,220px))!important;
  gap:14px!important;
  justify-content:start!important;
  overflow:visible!important;
}
.s18UpcomingCostumeGridV23 .costumeTile,
.s18UpcomingCostumeGridV23 .costumeCard{
  width:100%!important;
  max-width:220px!important;
  flex:none!important;
}
@media(max-width:760px){
  .s18UpcomingCostumeGroupV23{padding:10px!important}
  .s18UpcomingCostumeTitleV23{font-size:25px!important}
  .s18UpcomingCostumeGridV23{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .s18UpcomingCostumeGridV23 .costumeTile,
  .s18UpcomingCostumeGridV23 .costumeCard{max-width:none!important}
}

/* ========================================================================== */
/* MHUR Nexus — Saison 18 v24 : badge NEW automatique                       */
/* ========================================================================== */
.card[data-char],.styleCard[data-style],.costumeTile,.costumeCard{position:relative!important}
.card[data-char] > .s18NewBadge,
.s18CharacterCardV10 > .s18NewBadge,
.card[data-char] > .s18NewBadgeV24{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
.s18UpcomingCostumeGroupV19 .s18NewBadge,
.s18UpcomingCostumeGroupV23 .s18NewBadge{display:none!important}


/* ========================================================================== */
/* MHUR Nexus — Saison 18 v25 : dates upcoming + familles pleine largeur     */
/* ========================================================================== */
.s18UpcomingCostumeIntroV25{
  margin:-4px 0 16px!important;
  padding:10px 14px!important;
  border:2px solid #31527b!important;
  border-radius:10px!important;
  background:#091528!important;
  color:#dceaff!important;
  font-size:15px!important;
  font-weight:800!important;
}
.s18UpcomingCostumeFamilyV23{
  overflow:hidden!important;
  border:3px solid #05070b!important;
  border-radius:13px!important;
  background:#08111f!important;
  box-shadow:0 5px 0 #02050a!important;
}
.s18UpcomingCostumeFamilyV23 .costumeGalleryHead{
  margin:0!important;
  border-radius:0!important;
}
.s18UpcomingCostumeGridV23{
  padding:14px!important;
  background:repeating-linear-gradient(135deg,#0b1728 0 22px,#0d1c31 22px 44px)!important;
}
.s18UpcomingCostumeTileV25{
  position:relative!important;
  border-color:#ffdc00!important;
  box-shadow:0 0 0 3px #ffdc0030,0 5px 0 #02050a!important;
}
.s18UpcomingStatusV25,
.s18UpcomingDateV25{
  position:absolute!important;
  z-index:20!important;
  pointer-events:none!important;
  border:2px solid #000!important;
  box-shadow:0 3px 0 #000!important;
  font-weight:1000!important;
  line-height:1!important;
}
.s18UpcomingStatusV25{
  top:8px!important;
  left:8px!important;
  padding:7px 9px!important;
  border-radius:8px!important;
  background:#ffdc00!important;
  color:#05080e!important;
  font-size:12px!important;
}
.s18UpcomingDateV25{
  right:7px!important;
  bottom:7px!important;
  max-width:calc(100% - 14px)!important;
  padding:7px 9px!important;
  border-radius:8px!important;
  background:#0b1c32!important;
  color:#fff!important;
  font-size:12px!important;
  text-align:center!important;
  white-space:nowrap!important;
}

@media(min-width:901px){
  .costumeGalleryGrid.s18FilledCostumeGridV25,
  .costumeGroupRow.s18FilledCostumeGridV25,
  .costumeGrid.s18FilledCostumeGridV25{
    display:grid!important;
    grid-template-columns:repeat(var(--s18-costume-cols,6),minmax(0,1fr))!important;
    gap:14px!important;
    width:100%!important;
    align-items:stretch!important;
    justify-content:stretch!important;
    overflow:visible!important;
  }
  .s18FilledCostumeGridV25 > .costumeTile,
  .s18FilledCostumeGridV25 > .costumeCard{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    flex:none!important;
  }
  .s18FilledCostumeGridV25 > .costumeTile img,
  .s18FilledCostumeGridV25 > .costumeCard img{
    width:100%!important;
  }
  /* Un seul costume à venir ne crée plus une immense bande dorée vide. */
  .s18UpcomingCostumeGridV23.s18FilledCostumeGridV25{
    grid-template-columns:repeat(auto-fit,minmax(190px,245px))!important;
    justify-content:start!important;
  }
  .s18UpcomingCostumeGridV23.s18FilledCostumeGridV25 > .costumeTile,
  .s18UpcomingCostumeGridV23.s18FilledCostumeGridV25 > .costumeCard{
    max-width:245px!important;
  }
}

@media(max-width:760px){
  .s18UpcomingCostumeIntroV25{font-size:13px!important}
  .s18UpcomingCostumeGridV23{padding:10px!important}
  .s18UpcomingStatusV25{top:6px!important;left:6px!important;padding:6px 7px!important;font-size:10px!important}
  .s18UpcomingDateV25{right:5px!important;bottom:5px!important;padding:6px 7px!important;font-size:10px!important}
}

/* ========================================================================== */
/* MHUR Nexus — Saison 18 v26 : carte Tsuyu dans les sorties prévues         */
/* ========================================================================== */
article[data-planned="tsuyu"] .s18PlannedTsuyuV12,
article[data-planned="tsuyu"] .s18PlannedTsuyuV14{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 0 0 18%!important;
  background:#000!important;
}
article[data-planned="tsuyu"] .s18PlannedTsuyuV12 img,
article[data-planned="tsuyu"] .s18PlannedTsuyuV14 img{
  position:relative!important;
  left:auto!important;
  bottom:auto!important;
  width:auto!important;
  height:92%!important;
  max-width:42%!important;
  max-height:92%!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  filter:drop-shadow(0 10px 16px rgba(0,0,0,.45))!important;
}
@media(max-width:1100px){
  article[data-planned="tsuyu"] .s18PlannedTsuyuV12,
  article[data-planned="tsuyu"] .s18PlannedTsuyuV14{padding-left:12%!important}
  article[data-planned="tsuyu"] .s18PlannedTsuyuV12 img,
  article[data-planned="tsuyu"] .s18PlannedTsuyuV14 img{max-width:46%!important;height:90%!important}
}
@media(max-width:760px){
  article[data-planned="tsuyu"] .s18PlannedTsuyuV12,
  article[data-planned="tsuyu"] .s18PlannedTsuyuV14{padding-left:0!important;justify-content:center!important}
  article[data-planned="tsuyu"] .s18PlannedTsuyuV12 img,
  article[data-planned="tsuyu"] .s18PlannedTsuyuV14 img{max-width:52%!important;height:88%!important}
}
@media(max-width:600px){
  article[data-planned="tsuyu"] .s18PlannedTsuyuV12,
  article[data-planned="tsuyu"] .s18PlannedTsuyuV14{padding-left:0!important}
  article[data-planned="tsuyu"] .s18PlannedTsuyuV12 img,
  article[data-planned="tsuyu"] .s18PlannedTsuyuV14 img{max-width:54%!important;height:86%!important}
}

/* ========================================================================== */
/* MHUR Nexus — Saison 18 v27 : réductions de points style MHUR Database     */
/* ========================================================================== */
.discountCardV296.s18DiscountCardV19{
  overflow:hidden!important;
}
.s18DiscountArtV19{
  align-items:center!important;
  justify-content:center!important;
  background:radial-gradient(circle at 50% 30%,#334764 0%,#17253a 42%,#0c1421 75%,#090f18 100%)!important;
}
.s18DiscountArtV19 img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  display:block!important;
  background:none!important;
}
.discountCardV296.s18DiscountCardV19[data-discount="dj_board"] .s18DiscountArtV19 img,
.discountCardV296.s18DiscountCardV19[data-discount="flow_runner"] .s18DiscountArtV19 img,
.discountCardV296.s18DiscountCardV19[data-discount="gentle_criminal"] .s18DiscountArtV19 img,
.discountCardV296.s18DiscountCardV19[data-discount="factor_fusion"] .s18DiscountArtV19 img,
.discountCardV296.s18DiscountCardV19[data-discount="cluster"] .s18DiscountArtV19 img,
.discountCardV296.s18DiscountCardV19[data-discount="mirko"] .s18DiscountArtV19 img{
  object-position:center center!important;
}
@media(min-width:901px){
  .s18DiscountArtV19{height:172px!important}
  .s18DiscountArtV19 img{width:100%!important;height:100%!important}
}
@media(max-width:900px){
  .s18DiscountArtV19{height:136px!important}
  .s18DiscountArtV19 img{width:100%!important;height:100%!important}
}


/* ========================================================================== */
/* MHUR Nexus — Saison 18 v30 : corrections strictement demandées            */
/* ========================================================================== */

/* 1) Date des costumes à venir : visible sous le badge, sans chevauchement. */
.s18UpcomingCostumeTileV25 .s18UpcomingDateV25{
  top:43px!important;
  left:8px!important;
  right:auto!important;
  bottom:auto!important;
  max-width:calc(100% - 16px)!important;
  transform:none!important;
  z-index:35!important;
  padding:6px 8px!important;
  font-size:11px!important;
  white-space:nowrap!important;
}

/* 2) Tsuyu : uniquement le portrait MHUR Database local, entier et centré. */
article[data-planned="tsuyu"] .s18PlannedTsuyuV12,
article[data-planned="tsuyu"] .s18PlannedTsuyuV14,
.releaseCardV299[data-release-char="tsuyu"] .s18SeasonBlackV10,
.releaseCardV299[data-release-char="froppy"] .s18SeasonBlackV10{
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  background:#000!important;
  overflow:hidden!important;
}
article[data-planned="tsuyu"] .s18PlannedTsuyuV12 img,
article[data-planned="tsuyu"] .s18PlannedTsuyuV14 img,
.releaseCardV299[data-release-char="tsuyu"] .s18SeasonProfileV10,
.releaseCardV299[data-release-char="froppy"] .s18SeasonProfileV10{
  position:relative!important;
  inset:auto!important;
  width:auto!important;
  height:100%!important;
  max-width:48%!important;
  max-height:100%!important;
  margin:0 auto!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
  display:block!important;
}

/* 3) Interface des Alters : restauration du fond sombre selon le rôle. */
.charPanel.s18CharacterDetailV10.role-technical,
.charPanel.s18CharacterDetailV9.role-technical,
.charPanel.s18V14CharacterDetail.role-technical,
.charPanel.s18V13CharacterDetail.role-technical,
.charPanel.s18V12CharacterDetail.role-technical{
  background:#21092f!important;
  border-color:#c524eb!important;
}
.charPanel.s18CharacterDetailV10.role-attack,
.charPanel.s18CharacterDetailV9.role-attack,
.charPanel.s18V14CharacterDetail.role-attack,
.charPanel.s18V13CharacterDetail.role-attack,
.charPanel.s18V12CharacterDetail.role-attack{
  background:#300b13!important;
  border-color:#ff304b!important;
}
.charPanel.s18CharacterDetailV10.role-assault,
.charPanel.s18CharacterDetailV9.role-assault,
.charPanel.s18V14CharacterDetail.role-assault,
.charPanel.s18V13CharacterDetail.role-assault,
.charPanel.s18V12CharacterDetail.role-assault{
  background:#302800!important;
  border-color:#ffe000!important;
}
.charPanel.s18CharacterDetailV10.role-support,
.charPanel.s18CharacterDetailV9.role-support,
.charPanel.s18V14CharacterDetail.role-support,
.charPanel.s18V13CharacterDetail.role-support,
.charPanel.s18V12CharacterDetail.role-support{
  background:#082b16!important;
  border-color:#31d56b!important;
}
.charPanel.s18CharacterDetailV10.role-rapid,
.charPanel.s18CharacterDetailV9.role-rapid,
.charPanel.s18V14CharacterDetail.role-rapid,
.charPanel.s18V13CharacterDetail.role-rapid,
.charPanel.s18V12CharacterDetail.role-rapid{
  background:#062c36!important;
  border-color:#24c6dc!important;
}

.charPanel.role-technical .skillBox{background:#170720!important;border-color:#a92bd2!important}
.charPanel.role-technical .skillHead{background:linear-gradient(90deg,#491064,#7c1da0)!important;border-bottom-color:#d44cff!important}
.charPanel.role-technical .toggle{background:#351047!important;color:#e3a2ff!important}

.charPanel.role-attack .skillBox{background:#210810!important;border-color:#d92842!important}
.charPanel.role-attack .skillHead{background:linear-gradient(90deg,#5e101d,#9c172b)!important;border-bottom-color:#ff5369!important}
.charPanel.role-attack .toggle{background:#40101a!important;color:#ff9baa!important}

.charPanel.role-assault .skillBox{background:#211d03!important;border-color:#d5bd00!important}
.charPanel.role-assault .skillHead{background:linear-gradient(90deg,#5a4e00,#8c7800)!important;border-bottom-color:#ffe43d!important}
.charPanel.role-assault .toggle{background:#403700!important;color:#fff17d!important}

.charPanel.role-support .skillBox{background:#071f10!important;border-color:#24b95a!important}
.charPanel.role-support .skillHead{background:linear-gradient(90deg,#0d4a24,#147337)!important;border-bottom-color:#45e881!important}
.charPanel.role-support .toggle{background:#103a20!important;color:#8cf0ae!important}

.charPanel.role-rapid .skillBox{background:#061f27!important;border-color:#21abc0!important}
.charPanel.role-rapid .skillHead{background:linear-gradient(90deg,#075066,#087c96)!important;border-bottom-color:#42def0!important}
.charPanel.role-rapid .toggle{background:#0a3c49!important;color:#92edf7!important}

@media(max-width:760px){
  article[data-planned="tsuyu"] .s18PlannedTsuyuV12 img,
  article[data-planned="tsuyu"] .s18PlannedTsuyuV14 img,
  .releaseCardV299[data-release-char="tsuyu"] .s18SeasonProfileV10,
  .releaseCardV299[data-release-char="froppy"] .s18SeasonProfileV10{
    max-width:58%!important;
    height:100%!important;
  }
}

/* ======================================================================= */
/* MHUR Nexus — Saison 18 v34 : cartes plus compactes (personnages/styles) */
/* ======================================================================= */

/* Vue personnages / tuning / builds / costumes : réduire la hauteur des */
/* cadres portraits pour un rendu plus propre, tout en gardant l'image en bas. */
.card[data-char].s18CharacterCardV9 .thumb,
.card[data-char].s18CharacterCardV10 .thumb,
.card[data-char].s18V13CharacterCard .thumb,
.card[data-char].s18V12CharacterCard .thumb{
  height:clamp(280px,26vw,340px)!important;
  min-height:clamp(280px,26vw,340px)!important;
  align-items:flex-end!important;
}
.card[data-char].s18CharacterCardV9 .thumb img,
.card[data-char].s18CharacterCardV10 .thumb img,
.card[data-char].s18V13CharacterCard .thumb img,
.card[data-char].s18V12CharacterCard .thumb img,
.s18PortraitImgV10,
.s18PortraitImgV9{
  left:50%!important;
  bottom:0!important;
  width:108%!important;
  height:108%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateX(-50%) translateY(0)!important;
  transform-origin:center bottom!important;
}

/* Choix des styles : bannières moins hautes mais même logique visuelle. */
.styleCard[data-style].s18StyleCardV10 .styleBanner,
.styleCard[data-style].s18StyleCardV9 .styleBanner,
.styleCard[data-style].s18V14StyleCard .styleBanner,
.styleCard[data-style].s18V13StyleCard .styleBanner,
.styleCard[data-style].s18V12StyleCard .styleBanner{
  height:clamp(340px,30vw,430px)!important;
  min-height:clamp(340px,30vw,430px)!important;
  align-items:flex-end!important;
  justify-content:center!important;
}
.styleCard[data-style].s18StyleCardV10 .styleBanner img,
.styleCard[data-style].s18StyleCardV9 .styleBanner img,
.styleCard[data-style].s18V14StyleCard .styleBanner img,
.styleCard[data-style].s18V13StyleCard .styleBanner img,
.styleCard[data-style].s18V12StyleCard .styleBanner img,
.s18StylePortraitV10,
.s18StylePortraitV9{
  left:50%!important;
  bottom:0!important;
  width:110%!important;
  height:110%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateX(-50%) translateY(0)!important;
  transform-origin:center bottom!important;
}

/* Full Bullet gardé un peu plus contenu pour éviter la découpe visuelle. */
.styleCard[data-style="fullbullet"] .styleBanner img,
.styleCard[data-style*="midoriya_attack"] .styleBanner img,
.s18StyleCardV10[data-style="fullbullet"] .styleBanner img,
.s18StyleCardV10[data-style*="midoriya_attack"] .styleBanner img,
.s18StyleCardV9[data-style="fullbullet"] .styleBanner img,
.s18StyleCardV9[data-style*="midoriya_attack"] .styleBanner img,
.s18V14StyleCard[data-style="fullbullet"] .styleBanner img,
.s18V14StyleCard[data-style*="midoriya_attack"] .styleBanner img,
.s18V13StyleCard[data-style="fullbullet"] .styleBanner img,
.s18V13StyleCard[data-style*="midoriya_attack"] .styleBanner img,
.s18V12StyleCard[data-style="fullbullet"] .styleBanner img,
.s18V12StyleCard[data-style*="midoriya_attack"] .styleBanner img{
  width:102%!important;
  height:102%!important;
}

/* Costumes : cadres un peu plus compacts, visuels toujours alignés en bas. */
.costumeTile,
.costumeCard{
  min-height:320px!important;
}
.costumeTile img,
.costumeCard img{
  height:228px!important;
  object-position:center bottom!important;
}

@media (min-width: 1440px){
  .card[data-char].s18CharacterCardV9 .thumb,
  .card[data-char].s18CharacterCardV10 .thumb,
  .card[data-char].s18V13CharacterCard .thumb,
  .card[data-char].s18V12CharacterCard .thumb{
    height:320px!important;
    min-height:320px!important;
  }
  .styleCard[data-style].s18StyleCardV10 .styleBanner,
  .styleCard[data-style].s18StyleCardV9 .styleBanner,
  .styleCard[data-style].s18V14StyleCard .styleBanner,
  .styleCard[data-style].s18V13StyleCard .styleBanner,
  .styleCard[data-style].s18V12StyleCard .styleBanner{
    height:400px!important;
    min-height:400px!important;
  }
}

@media (max-width: 900px){
  .card[data-char].s18CharacterCardV9 .thumb,
  .card[data-char].s18CharacterCardV10 .thumb,
  .card[data-char].s18V13CharacterCard .thumb,
  .card[data-char].s18V12CharacterCard .thumb{
    height:280px!important;
    min-height:280px!important;
  }
  .styleCard[data-style].s18StyleCardV10 .styleBanner,
  .styleCard[data-style].s18StyleCardV9 .styleBanner,
  .styleCard[data-style].s18V14StyleCard .styleBanner,
  .styleCard[data-style].s18V13StyleCard .styleBanner,
  .styleCard[data-style].s18V12StyleCard .styleBanner{
    height:360px!important;
    min-height:360px!important;
  }
  .costumeTile img,
  .costumeCard img{
    height:210px!important;
  }
}

/* ======================================================================= */
/* MHUR Nexus — Saison 18 v35 : réductions + mini portraits communauté     */
/* ======================================================================= */

/* Réductions : reprendre les nouvelles photos locales MHUR Database et */
/* bien les afficher en bas/au centre comme le reste du site. */
.s18DiscountArtV19{
  align-items:flex-end!important;
  justify-content:center!important;
}
.s18DiscountArtV19 img{
  width:112%!important;
  height:112%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:none!important;
}
.discountCardV296.s18DiscountCardV19[data-discount="gentle_criminal"] .s18DiscountArtV19 img{
  width:102%!important;
  height:102%!important;
}

/* Petite photo en build communauté / listes avec mini portraits : */
/* on remet un vrai fond de rôle derrière l'image. */
.s18MiniPortraitRoleBgV35{
  display:inline-flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  overflow:hidden!important;
  border-radius:12px!important;
  border:2px solid rgba(255,255,255,.18)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)!important;
  flex:0 0 auto!important;
}
.s18MiniPortraitRoleBgV35.role-assault{
  background:radial-gradient(circle at 50% 28%,#fff29f 0%,#f5de28 38%,#ba9800 100%)!important;
}
.s18MiniPortraitRoleBgV35.role-attack{
  background:radial-gradient(circle at 50% 28%,#ff99a4 0%,#ff3e59 38%,#b0132a 100%)!important;
}
.s18MiniPortraitRoleBgV35.role-rapid{
  background:radial-gradient(circle at 50% 28%,#abf1ff 0%,#35d6ef 38%,#0d86b4 100%)!important;
}
.s18MiniPortraitRoleBgV35.role-technical{
  background:radial-gradient(circle at 50% 28%,#efb8ff 0%,#d33cff 38%,#7a169f 100%)!important;
}
.s18MiniPortraitRoleBgV35.role-support{
  background:radial-gradient(circle at 50% 28%,#9effb2 0%,#34dd57 38%,#17792d 100%)!important;
}
.s18MiniPortraitImgV35{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  display:block!important;
  background:none!important;
}

/* === MHUR V570 START === */
/* Accueil : seul Gentle Criminal garde le badge NEW. */
.s18PlannedCardV12[data-planned="twice"] .s18PlannedNewV12,
.s18PlannedCardV12[data-planned="tsuyu"] .s18PlannedNewV12,
.s18SeasonReleaseV10[data-release-char*="twice" i] .s18SeasonNewV10,
.s18SeasonReleaseV10[data-release-char*="tsuyu" i] .s18SeasonNewV10,
.s18SeasonReleaseV10[data-release-char*="froppy" i] .s18SeasonNewV10 {
  display: none !important;
  visibility: hidden !important;
}

/* Costumes : NEW en haut à droite, mais sous la ligne des étoiles. */
.costumeTile > .s18NewBadge,
.costumeCard > .s18NewBadge,
.costumeResult > .s18NewBadge,
.costumeTile > .s18NewBadgeV24,
.costumeCard > .s18NewBadgeV24,
.costumeResult > .s18NewBadgeV24 {
  top: 38px !important;
  right: 8px !important;
  left: auto !important;
  width: 64px !important;
  height: 34px !important;
  transform-origin: top right !important;
  z-index: 31 !important;
}

/* Les étoiles restent tout en haut et au-dessus du NEW. */
.costumeTile > .costumeTileStars,
.costumeCard > .costumeTileStars,
.costumeResult > .costumeTileStars {
  top: 7px !important;
  right: 8px !important;
  z-index: 32 !important;
}
/* === MHUR V570 END === */


/* MHUR Nexus — V580 : affichage final des NEW et INCOMING */
.s18NewBadgeV580{
  animation:none!important;
  overflow:visible!important;
}

.s18NewPulseInnerV580{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
  transform-origin:center!important;
  will-change:transform!important;
}

/* Personnages et T.U.N.I.N.G : NEW en haut à droite. */
.card[data-char] > .s18NewBadgeV580,
.styleCard[data-style] > .s18NewBadgeV580{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  top:7px!important;
  right:7px!important;
  left:auto!important;
  width:88px!important;
  height:44px!important;
  transform:none!important;
  transform-origin:center!important;
  z-index:90!important;
}

/* Costumes : badge plus petit et placé sous les étoiles. */
.costumeTile > .s18NewBadgeV580,
.costumeCard > .s18NewBadgeV580,
.costumeResult > .s18NewBadgeV580,
[data-costume] > .s18NewBadgeV580,
[data-costume-id] > .s18NewBadgeV580{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  top:38px!important;
  right:8px!important;
  left:auto!important;
  width:60px!important;
  height:31px!important;
  transform:none!important;
  transform-origin:center!important;
  z-index:90!important;
}

/* Les étoiles restent au-dessus du badge costume. */
.costumeTile > .costumeTileStars,
.costumeCard > .costumeTileStars,
.costumeResult > .costumeTileStars{
  top:7px!important;
  right:8px!important;
  z-index:91!important;
}

/* INCOMING plus grand sur Twice et Tsuyu. */
.s18PlannedIncomingV580{
  position:absolute!important;
  z-index:7!important;
  top:9px!important;
  right:10px!important;
  min-width:172px!important;
  width:auto!important;
  height:58px!important;
  padding:0 19px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:0!important;
  background:transparent!important;
  color:#fff!important;
  font-family:Impact,Haettenschweiler,'Arial Black',sans-serif!important;
  font-size:24px!important;
  font-style:italic!important;
  line-height:1!important;
  letter-spacing:.7px!important;
  white-space:nowrap!important;
  text-shadow:
    -2px -2px 0 #ff2f92,
     2px -2px 0 #ff2f92,
    -2px  2px 0 #ff2f92,
     2px  2px 0 #ff2f92,
     3px  3px 0 #000!important;
  filter:drop-shadow(0 4px 0 rgba(0,0,0,.72))!important;
  animation:mhurIncomingPulseV580 1.05s ease-in-out infinite!important;
  transform-origin:top right!important;
}

@keyframes mhurIncomingPulseV580{
  0%,100%{transform:scale(.96)}
  50%{transform:scale(1.07)}
}

/* Gentle est le seul NEW conservé dans les sorties prévues de l'accueil. */
.s18PlannedCardV12[data-planned="twice"] .s18PlannedNewV12,
.s18PlannedCardV12[data-planned="tsuyu"] .s18PlannedNewV12{
  display:none!important;
  visibility:hidden!important;
}

/* Réductions de points : texte moins gras. */
.discountGridV296 .discountCardV296 > b,
.discountGridV296 .s18DiscountCardV19 > b,
.discountGridV296 .v559DiscountName{
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:600!important;
  letter-spacing:0!important;
}

.discountGridV296 .discountCardV296 > span,
.discountGridV296 .s18DiscountCardV19 > span,
.discountGridV296 .v559DiscountPoints,
.discountGridV296 .v559RoleBadge{
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:600!important;
  letter-spacing:0!important;
}

@media(max-width:700px){
  .card[data-char] > .s18NewBadgeV580,
  .styleCard[data-style] > .s18NewBadgeV580{
    width:76px!important;
    height:38px!important;
  }

  .costumeTile > .s18NewBadgeV580,
  .costumeCard > .s18NewBadgeV580,
  .costumeResult > .s18NewBadgeV580,
  [data-costume] > .s18NewBadgeV580,
  [data-costume-id] > .s18NewBadgeV580{
    top:34px!important;
    right:7px!important;
    width:54px!important;
    height:28px!important;
  }

  .s18PlannedIncomingV580{
    min-width:148px!important;
    height:50px!important;
    padding:0 14px!important;
    font-size:20px!important;
  }
}


/* MHUR Nexus — V581 : animation NEW fiable, INCOMING fixe */

/* Les INCOMING restent grands mais ne bougent plus. */
.s18PlannedIncomingV578,
.s18PlannedIncomingV579,
.s18PlannedIncomingV580,
.s18PlannedIncomingV581,
[class*="s18PlannedIncoming"]{
  animation:none!important;
  transform:none!important;
  scale:1!important;
}

/*
  Animation indépendante de transform :
  elle reste active même si les anciens CSS imposent transform avec !important.
*/
@keyframes mhurNewPulseV581{
  0%,100%{scale:.91}
  50%{scale:1.13}
}

.card[data-char] > .s18NewBadgeV581,
.styleCard[data-style] > .s18NewBadgeV581,
.costumeTile > .s18NewBadgeV581,
.costumeCard > .s18NewBadgeV581,
.costumeResult > .s18NewBadgeV581,
[data-costume-id] > .s18NewBadgeV581,
[data-costume] > .s18NewBadgeV581{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  animation:mhurNewPulseV581 .9s ease-in-out infinite!important;
  transform-origin:center!important;
  will-change:scale!important;
}

/* Personnages et T.U.N.I.N.G : haut à droite. */
.card[data-char] > .s18NewBadgeV581,
.styleCard[data-style] > .s18NewBadgeV581{
  top:7px!important;
  right:7px!important;
  left:auto!important;
  width:88px!important;
  height:44px!important;
  z-index:95!important;
}

/* Costumes : petit NEW sous les étoiles. */
.costumeTile > .s18NewBadgeV581,
.costumeCard > .s18NewBadgeV581,
.costumeResult > .s18NewBadgeV581,
[data-costume-id] > .s18NewBadgeV581,
[data-costume] > .s18NewBadgeV581{
  top:38px!important;
  right:8px!important;
  left:auto!important;
  width:60px!important;
  height:31px!important;
  z-index:90!important;
}

/* Les étoiles restent au-dessus. */
.costumeTile > .costumeTileStars,
.costumeCard > .costumeTileStars,
.costumeResult > .costumeTileStars{
  z-index:96!important;
}

/* Le NEW de l'accueil garde sa propre animation existante. */
.s18PlannedCardV12[data-planned="gentle"] .s18PlannedNewV12{
  scale:1!important;
}

@media(max-width:700px){
  .card[data-char] > .s18NewBadgeV581,
  .styleCard[data-style] > .s18NewBadgeV581{
    width:76px!important;
    height:38px!important;
  }

  .costumeTile > .s18NewBadgeV581,
  .costumeCard > .s18NewBadgeV581,
  .costumeResult > .s18NewBadgeV581,
  [data-costume-id] > .s18NewBadgeV581,
  [data-costume] > .s18NewBadgeV581{
    top:34px!important;
    right:7px!important;
    width:54px!important;
    height:28px!important;
  }
}


/* ===== inline ===== */

/* v189 : uniquement les 2 petits hexagones des cartes costume, style v164 */
.costumeTileBadge{
  position:absolute!important;
  bottom:80px!important;
  width:46px!important;
  height:48px!important;
  z-index:20!important;
  display:block!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  clip-path:none!important;
  padding:0!important;
  font-size:0!important;
  color:transparent!important;
  box-shadow:none!important;
}
.costumeTileBadge.left{left:8px!important;}
.costumeTileBadge.right{right:8px!important;}
.costumeTileBadge::before,.costumeTileBadge::after{display:none!important;content:none!important;}
.costumeTileBadge img,.costumeTileBadgeIcon{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
  border:0!important;
}
@media(max-width:900px){
  .costumeTileBadge{bottom:102px!important;width:44px!important;height:46px!important;}
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v200 : les photos de costume doivent rentrer en entier dans les cartes */
.costumeTile > img,
.costumeTile img:first-child,
.costumeCard img,
.costumeImg,
.costumeTileImage{
  object-fit: contain !important;
  object-position: center center !important;
  background: #07101c !important;
  padding: 4px !important;
  box-sizing: border-box !important;
}

/* évite que les grosses images dépassent du cadre */
.costumeTile{
  overflow: hidden !important;
}

/* zone image un peu plus propre pour les personnages très hauts */
.costumeTile > img{
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v203 final patch */
body{}
.costumeGalleryHead,
.costumeHead,
.costumeSectionTitle,
.costumeGroupTitle{
  font-size:133%!important;
}
.costumeTile{
  min-height:355px!important;
  background:#071223!important;
}
.costumeTile > img,
.costumeTile img:first-child{
  width:100%!important;
  height:255px!important;
  object-fit:contain!important;
  object-position:center center!important;
  padding:8px!important;
  background:
    radial-gradient(circle at 50% 38%, rgba(205,180,36,.34) 0%, rgba(181,148,0,.28) 22%, rgba(168,139,0,.18) 40%, rgba(18,28,46,0) 64%),
    linear-gradient(180deg, #0a1b33 0%, #0a1730 12%, #a78d00 12%, #b79a00 48%, #aa9000 100%)!important;
  image-rendering:auto!important;
  filter:saturate(1.04) contrast(1.03) brightness(1.01)!important;
}
.costumeTileName{
  min-height:66px!important;
  height:66px!important;
  font-size:22px!important;
  line-height:1.08!important;
}
.costumeMiniDesc{font-size:13px!important;}
.portrait,
.costumeDetailHero,
.costumeHeroImgWrap{
  background:#b09300!important;
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v207 : remet les badges tuning à leur place et garde le fond doré derrière les photos */
.costumeTile{min-height:300px!important;background:#071223!important;overflow:hidden!important}
.costumeTile img{
  width:100%!important;
  height:214px!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  display:block!important;
  background:radial-gradient(circle at 50% 48%, rgba(255,255,255,.18), rgba(255,255,255,0) 30%), linear-gradient(135deg,#a38300,#d1ad00)!important;
}
.costumeTileName{
  position:absolute!important;
  left:0!important; right:0!important;
  bottom:34px!important;
  height:44px!important; min-height:44px!important;
  padding:0 58px!important;
  display:flex!important; align-items:center!important; justify-content:center!important;
  background:#09162c!important;
  z-index:12!important;
  font-size:18px!important; line-height:1.05!important;
}
.costumeMiniDesc{
  position:absolute!important;
  left:0!important; right:0!important; bottom:0!important;
  height:34px!important;
  display:flex!important; align-items:center!important; justify-content:center!important;
  background:#081223!important;
  color:#fff!important;
  z-index:12!important;
  font-size:12px!important;
}
.costumeTileBadge{
  bottom:30px!important;
  width:50px!important;
  height:50px!important;
  z-index:14!important;
}
.costumeTileBadge.left{left:8px!important}
.costumeTileBadge.right{right:8px!important}
.costumeTileRarity,.costumeTileStars{z-index:15!important}
@media(max-width:900px){
  .costumeTile{min-height:286px!important}
  .costumeTile img{height:202px!important}
  .costumeTileName{height:42px!important;bottom:32px!important;font-size:16px!important;padding:0 52px!important}
  .costumeMiniDesc{height:32px!important;font-size:11px!important}
  .costumeTileBadge{width:46px!important;height:46px!important;bottom:28px!important}
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v208 : fond des portraits corrigé + tuning non impactés */
.costumeTile{background:#071223!important;overflow:hidden!important}
.costumeTile > img{
  width:100%!important;
  height:214px!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  padding:8px 12px 0!important;
  box-sizing:border-box!important;
  background:
    radial-gradient(circle at 50% 46%, rgba(255,238,139,.22) 0%, rgba(255,238,139,.12) 18%, rgba(255,238,139,0) 42%),
    #b59400!important;
}
.costumeTileName{
  position:absolute!important;
  left:0!important; right:0!important;
  bottom:26px!important;
  height:54px!important;
  padding:0 56px!important;
  display:flex!important; align-items:center!important; justify-content:center!important;
  background:linear-gradient(180deg,#0a1a2f 0%, #091426 100%)!important;
  color:#fff!important;
  z-index:12!important;
}
.costumeMiniDesc{
  position:absolute!important;
  left:0!important; right:0!important; bottom:0!important;
  height:28px!important;
  display:flex!important; align-items:center!important; justify-content:center!important;
  background:#081223!important;
  color:#fff!important;
  z-index:12!important;
}
.costumeTileBadge{
  bottom:24px!important;
  width:46px!important;
  height:46px!important;
  background:transparent!important;
  z-index:14!important;
}
.costumeTileBadge.left{left:8px!important}
.costumeTileBadge.right{right:8px!important}
.costumeTileBadge img,.costumeTileBadgeIcon{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
  background:transparent!important;
  padding:0!important;
}
.costumeTileRarity,.costumeTileStars{z-index:15!important}
@media(max-width:900px){
  .costumeTile > img{height:204px!important;padding:8px 10px 0!important}
  .costumeTileName{height:50px!important;bottom:24px!important;font-size:16px!important;padding:0 52px!important}
  .costumeMiniDesc{height:26px!important;font-size:11px!important}
  .costumeTileBadge{width:44px!important;height:44px!important;bottom:22px!important}
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v209 : fond portraits plus propre + badges tuning remis en place */
.costumeTile{background:#071223!important;overflow:hidden!important}
.costumeTile > img{
  width:100%!important;
  height:214px!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  padding:8px 12px 0!important;
  box-sizing:border-box!important;
  background:
    radial-gradient(circle at 50% 55%, rgba(255,241,140,.42) 0%, rgba(255,241,140,.18) 18%, rgba(255,241,140,0) 44%),
    linear-gradient(180deg, #0b1a2f 0%, #183153 12%, #b59400 24%, #b59400 100%)!important;
}
.costumeTileName{
  position:absolute!important;
  left:0!important; right:0!important;
  bottom:26px!important;
  height:54px!important;
  padding:0 54px!important;
  display:flex!important; align-items:center!important; justify-content:center!important;
  background:linear-gradient(180deg,#0b1a2f 0%, #091426 100%)!important;
  color:#fff!important;
  z-index:12!important;
}
.costumeMiniDesc{
  position:absolute!important;
  left:0!important; right:0!important; bottom:0!important;
  height:28px!important;
  display:flex!important; align-items:center!important; justify-content:center!important;
  background:#081223!important;
  color:#fff!important;
  z-index:12!important;
}
.costumeTileBadge{
  position:absolute!important;
  bottom:20px!important;
  width:42px!important;
  height:42px!important;
  background:transparent!important;
  border:none!important;
  clip-path:none!important;
  box-shadow:none!important;
  padding:0!important;
  z-index:15!important;
}
.costumeTileBadge.left{left:8px!important}
.costumeTileBadge.right{right:8px!important}
.costumeTileBadge::before,.costumeTileBadge::after{display:none!important;content:none!important}
.costumeTileBadge img,.costumeTileBadgeIcon{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
  background:transparent!important;
  padding:0!important;
}
.costumeTileRarity,.costumeTileStars{z-index:16!important}
@media(max-width:900px){
  .costumeTile > img{height:204px!important;padding:8px 10px 0!important}
  .costumeTileName{height:50px!important;bottom:24px!important;font-size:16px!important;padding:0 50px!important}
  .costumeMiniDesc{height:26px!important;font-size:11px!important}
  .costumeTileBadge{width:40px!important;height:40px!important;bottom:18px!important}
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v211 : correction UNIQUEMENT du fond des cartes costume.
   Le fond est derrière le personnage, pas sur les icônes T.U.N.I.N.G. */
.costumeTile{
  position:relative!important;
  overflow:hidden!important;
  background:#071223!important;
}

/* Zone de fond derrière le personnage */
.costumeTile::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:0!important;
  height:calc(100% - 82px)!important;
  z-index:0!important;
  background:
    radial-gradient(circle at 50% 45%,
      rgba(145,135,38,.75) 0%,
      rgba(103,96,29,.86) 42%,
      rgba(56,58,31,.96) 73%,
      rgba(8,19,35,1) 100%)!important;
}

/* Image du costume : transparente, le fond vient de ::before */
.costumeTile > img{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  height:214px!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  padding:8px 12px 0!important;
  box-sizing:border-box!important;
  display:block!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* Les icônes tuning ne prennent JAMAIS le fond */
.costumeTileBadge,
.costumeTileBadge *,
.costumeTileBadge img,
.costumeTileBadgeIcon{
  background:transparent!important;
  padding:0!important;
  box-shadow:none!important;
}

.costumeTileBadge{
  position:absolute!important;
  bottom:20px!important;
  width:44px!important;
  height:44px!important;
  z-index:30!important;
}
.costumeTileBadge.left{left:8px!important;}
.costumeTileBadge.right{right:8px!important;}
.costumeTileBadge img,
.costumeTileBadgeIcon{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
}

.costumeTileName,
.costumeMiniDesc,
.costumeTileRarity,
.costumeTileStars{
  z-index:20!important;
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v213 : fond costume propre, sans bande bleue, sans toucher les icônes tuning */
.costumeTile{
  position:relative!important;
  overflow:hidden!important;
  background:#071223!important;
}
.costumeTile::before{display:none!important;content:none!important;}
body .costumeTile > img{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  height:214px!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  padding:8px 12px 0!important;
  box-sizing:border-box!important;
  background:
    radial-gradient(circle at 50% 52%,
      rgba(190,166,39,.78) 0%,
      rgba(151,130,24,.88) 38%,
      rgba(100,91,24,.94) 66%,
      rgba(48,51,30,.98) 100%)!important;
}
body .costumeTile .costumeTileBadge,
body .costumeTile .costumeTileBadge *,
body .costumeTile .costumeTileBadge img,
body .costumeTile .costumeTileBadgeIcon{
  background:transparent!important;
  padding:0!important;
  box-shadow:none!important;
}
body .costumeTile .costumeTileBadge{
  position:absolute!important;
  bottom:20px!important;
  width:44px!important;
  height:44px!important;
  z-index:30!important;
}
body .costumeTile .costumeTileBadge.left{left:8px!important;}
body .costumeTile .costumeTileBadge.right{right:8px!important;}
body .costumeTile .costumeTileBadge img,
body .costumeTile .costumeTileBadgeIcon{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  display:block!important;
}
.costumeTileName{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:28px!important;
  height:54px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 56px!important;
  background:linear-gradient(180deg,#0b1a2f 0%,#081426 100%)!important;
  z-index:20!important;
}
.costumeMiniDesc{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:28px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#081223!important;
  z-index:20!important;
}
.costumeTileRarity,.costumeTileStars{z-index:35!important;}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v214 : affichage cartes costume seulement */

/* Rétrécit la page pour voir plus de contenu */
body{
  
}

/* Cartes plus compactes */
.costumeTile{
  position:relative!important;
  width:230px!important;
  min-width:230px!important;
  max-width:230px!important;
  height:318px!important;
  min-height:318px!important;
  overflow:hidden!important;
  background:#071223!important;
}

/* Supprime les anciens fonds parasites */
.costumeTile::before{
  display:none!important;
  content:none!important;
}

/* Photo : pas coupée en bas + fond plus sombre */
body .costumeTile > img{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  height:214px!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  padding:4px 10px 0!important;
  box-sizing:border-box!important;
  background:
    radial-gradient(circle at 50% 45%,
      rgba(95,90,32,.82) 0%,
      rgba(62,63,31,.92) 44%,
      rgba(26,35,31,.96) 75%,
      rgba(8,18,32,1) 100%)!important;
}

/* Nom du skin */
.costumeTileName{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:32px!important;
  height:48px!important;
  padding:0 52px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#081426!important;
  color:white!important;
  z-index:20!important;
  font-size:19px!important;
  line-height:1!important;
  text-align:center!important;
}

/* Nom de la tenue */
.costumeMiniDesc{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:32px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#071223!important;
  color:white!important;
  z-index:20!important;
  font-size:12px!important;
  line-height:1.05!important;
  white-space:normal!important;
  text-align:center!important;
  padding:0 6px!important;
  box-sizing:border-box!important;
}

/* Icônes tuning remontées pour ne plus cacher le texte */
.costumeTileBadge{
  position:absolute!important;
  width:40px!important;
  height:40px!important;
  bottom:36px!important;
  z-index:35!important;
  background:transparent!important;
  padding:0!important;
  box-shadow:none!important;
  border:none!important;
}

.costumeTileBadge.left{
  left:8px!important;
}

.costumeTileBadge.right{
  right:8px!important;
}

.costumeTileBadge img,
.costumeTileBadgeIcon{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  background:transparent!important;
  padding:0!important;
  display:block!important;
}

/* Rareté au-dessus */
.costumeTileRarity,
.costumeTileStars{
  z-index:40!important;
}

/* Grille plus compacte */
.costumeGalleryGrid{
  gap:16px!important;
  padding:16px!important;
  grid-template-columns:repeat(auto-fill,230px)!important;
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v215 : correction affichage uniquement */

/* page plus petite pour faire rentrer plus de contenu */
body{
  
}

/* grille plus compacte */
.costumeGalleryGrid{
  grid-template-columns:repeat(auto-fill,210px)!important;
  gap:14px!important;
  padding:14px!important;
}

/* carte fixe et propre */
.costumeTile{
  position:relative!important;
  width:210px!important;
  min-width:210px!important;
  max-width:210px!important;
  height:306px!important;
  min-height:306px!important;
  max-height:306px!important;
  overflow:hidden!important;
  background:#071223!important;
}

/* enlève les anciens fonds parasites */
.costumeTile::before,
.costumeTile::after{
  display:none!important;
  content:none!important;
}

/* fond plus sombre derrière le perso + image pas coupée */
body .costumeTile > img{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  height:226px!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center center!important;
  padding:4px 8px 0!important;
  box-sizing:border-box!important;
  background:
    radial-gradient(circle at 50% 48%,
      rgba(92,90,42,.92) 0%,
      rgba(58,63,38,.95) 46%,
      rgba(25,35,34,.98) 78%,
      rgba(8,18,32,1) 100%)!important;
}

/* nom du skin */
.costumeTileName{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:30px!important;
  height:44px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 8px!important;
  box-sizing:border-box!important;
  background:#081426!important;
  color:#fff!important;
  z-index:20!important;
  font-size:18px!important;
  line-height:1!important;
  text-align:center!important;
  white-space:normal!important;
}

/* nom de la tenue */
.costumeMiniDesc{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:30px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 6px!important;
  box-sizing:border-box!important;
  background:#071223!important;
  color:#fff!important;
  z-index:20!important;
  font-size:10.5px!important;
  line-height:1.05!important;
  white-space:normal!important;
  text-align:center!important;
  overflow:hidden!important;
}

/* tuning REMONTÉ au-dessus du texte, ne cache plus les noms */
.costumeTileBadge{
  position:absolute!important;
  width:38px!important;
  height:38px!important;
  bottom:78px!important;
  z-index:35!important;
  background:transparent!important;
  padding:0!important;
  border:none!important;
  box-shadow:none!important;
  clip-path:none!important;
}

.costumeTileBadge.left{
  left:7px!important;
}

.costumeTileBadge.right{
  right:7px!important;
}

.costumeTileBadge *,
.costumeTileBadge img,
.costumeTileBadgeIcon{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  display:block!important;
  background:transparent!important;
  padding:0!important;
  box-shadow:none!important;
}

/* rareté au-dessus */
.costumeTileRarity,
.costumeTileStars{
  z-index:45!important;
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v217 : correction propre des cartes costume uniquement */
body{}

.costumeGalleryGrid{
  grid-template-columns:repeat(auto-fill,250px)!important;
  gap:18px!important;
  padding:18px!important;
  align-items:start!important;
}

.costumeTile{
  position:relative!important;
  width:250px!important;
  min-width:250px!important;
  max-width:250px!important;
  height:352px!important;
  min-height:352px!important;
  max-height:352px!important;
  overflow:hidden!important;
  border-radius:12px!important;
  background:
    radial-gradient(circle at 50% 44%, rgba(98,94,40,.96) 0%, rgba(64,65,36,.98) 42%, rgba(30,41,36,1) 72%, rgba(8,18,32,1) 100%)!important;
}

.costumeTile::before,
.costumeTile::after{display:none!important;content:none!important;}

/* La photo commence tout en haut, le fond de la carte va aussi jusqu'en haut */
body .costumeTile > img{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  height:260px!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center center!important;
  padding:4px 8px 0!important;
  box-sizing:border-box!important;
  background:transparent!important;
}

.costumeTileName{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:32px!important;
  height:58px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 10px!important;
  box-sizing:border-box!important;
  background:#081426!important;
  color:#fff!important;
  z-index:20!important;
  font-size:20px!important;
  line-height:1.05!important;
  text-align:center!important;
  white-space:normal!important;
  overflow:hidden!important;
}

.costumeMiniDesc{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:32px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 7px!important;
  box-sizing:border-box!important;
  background:#071223!important;
  color:#fff!important;
  z-index:20!important;
  font-size:11px!important;
  line-height:1.05!important;
  white-space:normal!important;
  text-align:center!important;
  overflow:hidden!important;
}

/* Tuning au-dessus de la zone de texte, plus sur le nom */
.costumeTileBadge{
  position:absolute!important;
  width:42px!important;
  height:42px!important;
  top:218px!important;
  bottom:auto!important;
  z-index:38!important;
  background:transparent!important;
  padding:0!important;
  border:none!important;
  box-shadow:none!important;
  clip-path:none!important;
}
.costumeTileBadge.left{left:8px!important;}
.costumeTileBadge.right{right:8px!important;}
.costumeTileBadge *,
.costumeTileBadge img,
.costumeTileBadgeIcon{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  display:block!important;
  background:transparent!important;
  padding:0!important;
  box-shadow:none!important;
}
.costumeTileRarity,.costumeTileStars{z-index:45!important;}

.charGrid{gap:18px!important;}
.charCard{transform:scale(.94);transform-origin:top center;}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v218 : cartes comme le modèle envoyé
   - photo plus haute et centrée
   - fond propre dans toute la zone image
   - icônes tuning en bas sur les côtés, sans cacher le nom
*/
body{
  
}
.costumeGalleryGrid{
  grid-template-columns:repeat(auto-fill,220px)!important;
  gap:16px!important;
  padding:16px!important;
  align-items:start!important;
}
.costumeTile{
  position:relative!important;
  width:220px!important;
  min-width:220px!important;
  max-width:220px!important;
  height:304px!important;
  min-height:304px!important;
  max-height:304px!important;
  overflow:hidden!important;
  background:#071223!important;
  border-radius:11px!important;
  box-sizing:border-box!important;
}
/* on désactive les fonds/pseudo blocs ajoutés avant */
.costumeTile::before,
.costumeTile::after,
.costumeTileBadge::before,
.costumeTileBadge::after{
  display:none!important;
  content:none!important;
}
/* zone photo : commence juste sous la barre du haut et remplit jusqu'au texte */
body .costumeTile > img{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:34px!important;
  z-index:1!important;
  width:100%!important;
  height:178px!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center center!important;
  padding:0 6px!important;
  margin:0!important;
  box-sizing:border-box!important;
  background:
    radial-gradient(circle at 50% 50%,
      rgba(99,94,39,.92) 0%,
      rgba(68,67,37,.98) 48%,
      rgba(34,42,35,1) 78%,
      rgba(8,18,32,1) 100%)!important;
}
/* recadre les persos pour éviter qu'ils soient trop bas */
body .costumeTile > img[alt]{
  object-position:center center!important;
}
.costumeTileName{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:34px!important;
  height:58px!important;
  z-index:20!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 8px!important;
  box-sizing:border-box!important;
  background:#081426!important;
  color:#fff!important;
  font-size:19px!important;
  line-height:1.05!important;
  text-align:center!important;
  white-space:normal!important;
  overflow:hidden!important;
}
.costumeMiniDesc{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:34px!important;
  z-index:20!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 45px!important;
  box-sizing:border-box!important;
  background:#071223!important;
  color:#fff!important;
  font-size:10.5px!important;
  line-height:1.05!important;
  white-space:normal!important;
  text-align:center!important;
  overflow:hidden!important;
}
/* icônes tuning : en bas, comme le modèle, mais sans masquer le nom */
.costumeTileBadge{
  position:absolute!important;
  width:38px!important;
  height:38px!important;
  bottom:5px!important;
  top:auto!important;
  z-index:40!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  clip-path:none!important;
  opacity:1!important;
}
.costumeTileBadge.left{left:8px!important;}
.costumeTileBadge.right{right:8px!important;}
.costumeTileBadge *,
.costumeTileBadge img,
.costumeTileBadgeIcon{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  filter:none!important;
}
.costumeTileRarity,
.costumeTileStars{
  z-index:50!important;
}
.costumeGalleryHead{
  font-size:30px!important;
  padding:10px 14px!important;
}
.costumeGalleryGroup{
  margin-bottom:22px!important;
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v219 : tuning comme avant, juste un peu plus haut et un chouia plus petit */
.costumeTileBadge{
  position:absolute!important;
  width:38px!important;
  height:38px!important;
  bottom:34px!important;
  top:auto!important;
  z-index:35!important;
  background:transparent!important;
  padding:0!important;
  border:none!important;
  box-shadow:none!important;
  clip-path:none!important;
}
.costumeTileBadge.left{left:8px!important;}
.costumeTileBadge.right{right:8px!important;}
.costumeTileBadge img,
.costumeTileBadgeIcon,
.costumeTileBadge *{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
  padding:0!important;
  display:block!important;
  box-shadow:none!important;
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v220 : remet les cartes costume proche du modèle demandé */
body{}

.costumeGalleryGrid{
  grid-template-columns:repeat(auto-fill,220px)!important;
  gap:16px!important;
  padding:16px!important;
  align-items:start!important;
}

.costumeTile{
  position:relative!important;
  width:220px!important;
  min-width:220px!important;
  max-width:220px!important;
  height:304px!important;
  min-height:304px!important;
  max-height:304px!important;
  overflow:hidden!important;
  border-radius:11px!important;
  background:
    radial-gradient(circle at 50% 48%, rgba(216,182,0,.95) 0%, rgba(192,162,0,.98) 38%, rgba(126,108,20,.98) 70%, rgba(7,18,35,1) 100%)!important;
  box-sizing:border-box!important;
}

.costumeTile::before,
.costumeTile::after,
.costumeTileBadge::before,
.costumeTileBadge::after{display:none!important;content:none!important;}

body .costumeTile > img{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:28px!important;
  z-index:1!important;
  width:100%!important;
  height:186px!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center center!important;
  padding:0 8px!important;
  margin:0!important;
  box-sizing:border-box!important;
  background:transparent!important;
}

.costumeTileName{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:34px!important;
  height:56px!important;
  z-index:20!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 10px!important;
  box-sizing:border-box!important;
  background:#081426!important;
  color:#fff!important;
  font-size:18px!important;
  font-weight:900!important;
  line-height:1.05!important;
  text-align:center!important;
  white-space:normal!important;
  overflow:hidden!important;
}

.costumeMiniDesc{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:34px!important;
  z-index:20!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 42px!important;
  box-sizing:border-box!important;
  background:#071223!important;
  color:#fff!important;
  font-size:10.5px!important;
  line-height:1.05!important;
  white-space:normal!important;
  text-align:center!important;
  overflow:hidden!important;
}

.costumeTileBadge{
  position:absolute!important;
  width:34px!important;
  height:34px!important;
  bottom:6px!important;
  top:auto!important;
  z-index:40!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  clip-path:none!important;
  opacity:1!important;
}
.costumeTileBadge.left{left:8px!important;}
.costumeTileBadge.right{right:8px!important;}
.costumeTileBadge *,
.costumeTileBadge img,
.costumeTileBadgeIcon{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  filter:none!important;
}

.costumeTileRarity,.costumeTileStars{z-index:50!important;}
.charGrid{gap:16px!important;}
.charCard{transform:scale(.92)!important;transform-origin:top center!important;}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v221 : cartes costume rapprochées du modèle demandé */
.costumeGalleryGrid{
  grid-template-columns:repeat(auto-fill,220px)!important;
  gap:16px!important;
  padding:16px!important;
  align-items:start!important;
}
.costumeTile{
  position:relative!important;
  width:220px!important;
  min-width:220px!important;
  max-width:220px!important;
  height:304px!important;
  min-height:304px!important;
  max-height:304px!important;
  overflow:hidden!important;
  border:4px solid #000!important;
  border-radius:16px!important;
  background:radial-gradient(circle at 50% 34%, rgba(230,213,110,.32) 0%, rgba(210,184,45,.22) 28%, rgba(166,142,20,.16) 50%, rgba(0,0,0,0) 65%), linear-gradient(180deg,#5d581d 0%, #86741a 26%, #b89900 58%, #b89800 69%, #081426 69%, #081426 100%)!important;
  box-shadow:0 5px 0 rgba(0,0,0,.48)!important;
  padding:0!important;
}
.costumeTile::before,
.costumeTile::after,
.costumeTileBadge::before,
.costumeTileBadge::after{display:none!important;content:none!important;}

body .costumeTile > img,
.costumeTile > img,
.costumeTile img:first-child{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:30px!important;
  z-index:2!important;
  width:100%!important;
  height:158px!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  padding:0 14px!important;
  margin:0!important;
  box-sizing:border-box!important;
  background:transparent!important;
}

.costumeTileRarity{
  position:absolute!important;
  top:10px!important;
  left:10px!important;
  z-index:8!important;
}
.costumeTileStars,
.costumeTileRarity + .costumeTileStars{
  position:absolute!important;
  top:10px!important;
  right:10px!important;
  z-index:8!important;
}

.costumeTileName{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:28px!important;
  height:56px!important;
  min-height:56px!important;
  z-index:6!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 14px!important;
  box-sizing:border-box!important;
  background:#081426!important;
  color:#fff!important;
  font-size:19px!important;
  font-weight:900!important;
  line-height:1.02!important;
  text-align:center!important;
  white-space:normal!important;
  overflow:hidden!important;
  text-shadow:2px 2px 0 rgba(0,0,0,.55)!important;
}

.costumeMiniDesc{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:28px!important;
  z-index:6!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  padding:3px 44px 0!important;
  box-sizing:border-box!important;
  background:#081426!important;
  color:#fff!important;
  font-size:10.5px!important;
  font-weight:700!important;
  line-height:1!important;
  white-space:normal!important;
  text-align:center!important;
  overflow:hidden!important;
  text-shadow:1px 1px 0 rgba(0,0,0,.55)!important;
}

.costumeTileBadge{
  position:absolute!important;
  width:30px!important;
  height:30px!important;
  bottom:8px!important;
  top:auto!important;
  z-index:9!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  clip-path:none!important;
}
.costumeTileBadge.left{left:10px!important;}
.costumeTileBadge.right{right:10px!important;}
.costumeTileBadge,
.costumeTileBadge *,
.costumeTileBadge img,
.costumeTileBadgeIcon{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
}

/* enlève tout texte parasite dans les badges */
.costumeTileBadge{font-size:0!important;color:transparent!important;text-indent:-9999px!important;overflow:hidden!important;}
.costumeTileBadge .conditionMini{display:none!important;}

@media (max-width:900px){
  .costumeGalleryGrid{grid-template-columns:repeat(auto-fill,200px)!important;gap:14px!important;padding:14px!important;}
  .costumeTile{width:200px!important;min-width:200px!important;max-width:200px!important;height:290px!important;min-height:290px!important;max-height:290px!important;}
  body .costumeTile > img,.costumeTile > img,.costumeTile img:first-child{top:28px!important;height:150px!important;padding:0 12px!important;}
  .costumeTileName{bottom:27px!important;height:52px!important;font-size:17px!important;padding:0 12px!important;}
  .costumeMiniDesc{height:27px!important;font-size:9.8px!important;padding:3px 40px 0!important;}
  .costumeTileBadge{width:28px!important;height:28px!important;bottom:7px!important;}
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v222 : badges tuning des cartes costume un peu plus hauts, un peu plus petits, et non coupés */
.costumeTile{position:relative!important;overflow:hidden!important}
.costumeTileName{
  bottom:32px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0 54px!important;
}
.costumeMiniDesc{
  height:32px!important;
  font-size:12px!important;
}
.costumeTileBadge{
  bottom:36px!important;
  width:40px!important;
  height:40px!important;
  z-index:20!important;
  overflow:visible!important;
}
.costumeTileBadge.left{left:10px!important}
.costumeTileBadge.right{right:10px!important}
.costumeTileBadge img,.costumeTileBadgeIcon{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:scale(.94)!important;
  transform-origin:center center!important;
}
@media(max-width:900px){
  .costumeTileName{bottom:30px!important;height:40px!important;min-height:40px!important;padding:0 50px!important}
  .costumeMiniDesc{height:30px!important;font-size:11px!important}
  .costumeTileBadge{bottom:34px!important;width:38px!important;height:38px!important}
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* laisse voir les phrases longues des T.U.N.I.N.G exacts */
.tuningOption{min-height:150px!important;max-height:none!important;height:auto!important;align-items:start!important;}
.tuningOptionMain{overflow:hidden!important;padding-top:6px!important;padding-bottom:6px!important;}
.tuningOptionName{display:block!important;max-height:none!important;overflow:visible!important;white-space:normal!important;line-height:1.04!important;}
.tuningOptionDesc{display:block!important;max-height:82px!important;overflow:auto!important;white-space:normal!important;line-height:1.1!important;font-size:12px!important;}
.tuningOptionDesc::-webkit-scrollbar{width:6px}
.tuningOptionDesc::-webkit-scrollbar-thumb{background:rgba(0,0,0,.45);border-radius:9px}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v226 : tuning placés dans la zone photo comme demandé + photo costume un peu plus grande */
.costumeTile{
  position:relative!important;
  overflow:hidden!important;
}

/* Photo un peu agrandie */
body .costumeTile > img,
.costumeTile > img,
.costumeTile img:first-child{
  top:22px!important;
  height:178px!important;
  padding:0 7px!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:scale(1.08)!important;
  transform-origin:center bottom!important;
  background:transparent!important;
  z-index:2!important;
}

/* Les icônes tuning remontent sur les côtés de la zone photo */
.costumeTileBadge{
  position:absolute!important;
  width:42px!important;
  height:42px!important;
  bottom:86px!important;
  top:auto!important;
  z-index:30!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  padding:0!important;
  margin:0!important;
  box-shadow:none!important;
  clip-path:none!important;
}
.costumeTileBadge.left{left:13px!important;}
.costumeTileBadge.right{right:13px!important;}

.costumeTileBadge img,
.costumeTileBadgeIcon{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
  display:block!important;
}

/* Le texte redevient propre en bas, sans être gêné par les tuning */
.costumeTileName{
  bottom:28px!important;
  height:56px!important;
  padding:0 12px!important;
  z-index:20!important;
}
.costumeMiniDesc{
  bottom:0!important;
  height:28px!important;
  padding:3px 8px 0!important;
  z-index:20!important;
}

@media(max-width:900px){
  body .costumeTile > img,
  .costumeTile > img,
  .costumeTile img:first-child{
    top:21px!important;
    height:168px!important;
    padding:0 6px!important;
    transform:scale(1.07)!important;
  }
  .costumeTileBadge{
    width:38px!important;
    height:38px!important;
    bottom:82px!important;
  }
  .costumeTileBadge.left{left:11px!important;}
  .costumeTileBadge.right{right:11px!important;}
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== css/v353-final-fixes.css ===== */
/* V353 final fixes */
/* Never show the old CSS-generated COMPÉTENCE badge together with the JS badge. */
.skillText::before,.skillText:before{display:none!important;content:none!important}
.skillTypeBadge{display:inline-flex!important}
/* Hide all costume descriptions, including legacy markup. */
.costumeInfoBox>p,.costumeNotes,.costumeDescription{display:none!important}
/* Community tuning is literally styled by the official costume slot classes. */
.cbCostumeTuningGridV306 .gameSlot,.cbOfficialCreatorScreenV308 .gameSlot{margin:8px 0!important;width:100%!important}
.cbCostumeTuningGridV306 .slotGem,.cbOfficialCreatorScreenV308 .slotGem{flex-shrink:0!important}
.cbDeleteOwn{background:#ef3340;color:#fff;border:3px solid #000;border-radius:12px;padding:10px 14px;font-weight:1000;box-shadow:0 3px 0 #000}
.cbDeleteOwn:hover{filter:brightness(1.08);transform:translateY(-1px)}


/* ===== css/v357-critical-fixes.css ===== */
/* V357 — correctifs critiques : Tier List contenue + pages personnages stables */
*{box-sizing:border-box}
.mhurTierPage{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  overflow:hidden!important;
}
.mhurTierPageTop,.mhurTierList,.mhurTierListPage,.mhurTierRow,.mhurTierItems{
  max-width:100%!important;
  min-width:0!important;
}
.mhurTierItems{overflow-x:hidden!important}
.mhurTierItem{flex:0 0 auto}
@media(max-width:900px){
  .mhurTierPage{width:100%!important;margin:0!important;padding:10px!important}
}


/* ===== css/v371-mobile-final.css ===== */
/* V371 — responsive/mobile baseline. Keep the desktop layout intact while preventing overflow. */
html,body{max-width:100%;overflow-x:hidden}
body{zoom:1!important;-webkit-text-size-adjust:100%;text-size-adjust:100%}
*{box-sizing:border-box}
img,video,canvas,svg{max-width:100%}
#app,.page,.content,.main,.homeWrap,.charactersPage,.costumeGroupsWrap{min-width:0;max-width:100%}
.charPanel,.homeBox,.builderHero,.costumeGroup,.tierPage,.tierBoard{max-width:100%;min-width:0}
.styleGrid,.charactersGrid,.rosterGrid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));max-width:100%}
.charTop{display:grid;grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:18px}
.charTop>*,.skillRow>*,.costumeGroup>*{min-width:0}
.skillRow{display:grid;grid-template-columns:minmax(130px,180px) minmax(0,1fr);gap:14px}
.dataTable{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.costumeGroupRow,.costumeGallery,.costumeGrid{overflow-x:auto!important;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
.costumeCard,.costumeTile{scroll-snap-align:start}
.mhurHubPanel{width:min(900px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto}
#drawer{max-width:min(88vw,320px);overflow-y:auto;-webkit-overflow-scrolling:touch}
button,.navItem,.back{touch-action:manipulation}
@media(max-width:760px){
  body{font-size:15px}
  header,.topbar,#topbar{height:58px!important;min-height:58px!important}
  #app{padding:72px 10px 84px!important}
  .title{font-size:clamp(28px,8vw,42px)!important;line-height:1.05}
  .charTop{grid-template-columns:1fr}
  .charPortrait,.charTop>div:first-child{width:min(76vw,300px);margin-inline:auto}
  .skillRow{grid-template-columns:1fr}
  .skillRow img{width:min(100%,360px);margin-inline:auto}
  .styleGrid,.charactersGrid,.rosterGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .styleCard,.characterCard,.card{min-width:0}
  .styleCard h2,.characterCard h2{font-size:16px;overflow-wrap:anywhere}
  .costumeGroup{padding:8px}
  .costumeGallery,.costumeGroupRow,.costumeGrid{display:flex!important;gap:10px!important;padding-bottom:10px}
  .costumeCard,.costumeTile{flex:0 0 min(74vw,260px)!important;width:min(74vw,260px)!important}
  .tierHeader,.tierToolbar{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .tierRow{min-height:108px!important}
  .tierLabel{width:58px!important;min-width:58px!important;font-size:28px!important}
  .mhurLeaderboardRow{grid-template-columns:44px minmax(0,1fr);gap:8px}
  .mhurLeaderboardScore{grid-column:2;text-align:left!important}
  .mhurHubPanel{width:calc(100vw - 12px);max-height:calc(100dvh - 12px);border-radius:16px}
}
@media(max-width:430px){
  .styleGrid,.charactersGrid,.rosterGrid{grid-template-columns:1fr 1fr}
  .badges{display:flex;flex-wrap:wrap;gap:4px}
  .roleBadge,.sideBadge{font-size:11px!important}
}


/* ===== css/v398-final-fixes.css ===== */
/* V398 — final menu, PWA and tutorial corrections. */
#drawer .navItem::before{content:none!important;display:none!important}
#drawer .navItem{display:flex!important;align-items:center!important;gap:12px!important}
#drawer .v395-nav-icon{display:inline-flex!important;width:26px!important;min-width:26px!important;justify-content:center!important;align-items:center!important;font-size:19px!important;line-height:1!important}
#drawer .v395-nav-label{display:block;min-width:0}
#drawer [data-v395-key="install"]{opacity:1!important;cursor:pointer!important}
#drawer [data-v395-key="install"].is-installed{opacity:.72!important}
.modsTutorialStepsFinal{grid-template-columns:1fr!important}
.modsTutorialStepsFinal article{overflow:hidden}
.modsTutorialStepImage{display:block;width:100%;height:auto;margin-top:16px;border:3px solid #000;border-radius:12px;background:#050a12;box-shadow:0 0 0 2px #45688f;object-fit:contain}
.modsTutorialDone{border-color:#19c96b!important;background:#082116!important}
@media(min-width:980px){.modsTutorialStepsFinal article{padding:20px}.modsTutorialStepImage{max-height:720px}}
@media(max-width:600px){#drawer .navItem{gap:10px!important}.modsTutorialStepImage{border-radius:8px}.modsTutorialStepsFinal article{padding:14px}}


/* ===== css/v400-final-polish.css ===== */
/* V400 — corrections ciblées demandées, sans modifier le reste du site. */

/* Le tutoriel est fermé par défaut et s'ouvre uniquement au clic. */
.modsTutorial:not([open]) .modsTutorialBody{display:none!important}
.modsTutorial summary{display:flex;align-items:center;justify-content:space-between;gap:14px;list-style:none}
.modsTutorial summary::-webkit-details-marker{display:none}
.modsTutorial summary::after{content:'＋';display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border:2px solid #000;border-radius:50%;background:#07111f;color:#ffe000;font-size:22px;line-height:1}
.modsTutorial[open] summary::after{content:'−'}
.modsTutorialStepImage{display:block;width:100%;height:auto;margin:16px auto 0;border:0;border-radius:14px;background:#07101d;box-shadow:0 0 0 2px #4c719d,0 12px 30px rgba(0,0,0,.32);image-rendering:auto}
.modsTutorialSteps article{display:flex;flex-direction:column}
.modsTutorialSteps article .modsTutorialStepImage{margin-top:auto;padding-top:14px}

/* Accueil jaune uniquement lorsque la page Accueil est réellement active. */
#drawer .navItem[data-page="home"]:not(.active){background:#182942!important;color:#fff!important;border-color:transparent!important;box-shadow:none!important}
#drawer .navItem[data-page="home"].active{background:#ffe000!important;color:#000!important}

/* Croix du créateur de build toujours entièrement visible. */
.cbModalPanel .cbClose{
  position:sticky!important;
  top:10px!important;
  right:auto!important;
  float:none!important;
  display:grid!important;
  place-items:center!important;
  margin:10px 10px -58px auto!important;
  z-index:100!important;
  flex:0 0 auto!important;
  transform:none!important;
}
.cbBuilderHeader,.cbDetailHeader{padding-right:82px!important}

/* Slots T.U.N.I.N.G du créateur : barres et gemmes parfaitement centrées. */
.cbOfficialCreatorScreenV308 .slotList{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:10px!important;min-height:0!important}
.cbOfficialCreatorScreenV308 .gameSlot{display:grid!important;grid-template-columns:minmax(0,1fr) 64px!important;align-items:center!important;margin:0!important}
.cbOfficialCreatorScreenV308 .slotBandText{display:flex!important;align-items:center!important;justify-content:center!important;min-height:100%!important;padding:0 12px!important;text-align:center!important}
.cbOfficialCreatorScreenV308 .slotGem{align-self:center!important;justify-self:center!important;margin:0!important}
.cbOfficialCreatorScreenV308 .tuningColumn{display:flex!important;flex-direction:column!important}
.cbOfficialCreatorScreenV308 .tuningColumn .slotList{flex:1!important}

/* Les images visibles du créateur ne clignotent pas pendant le décodage. */
.cbCostumeChoiceImage img,.tuningOptionIconWrap img{background:#d7dcda;transition:opacity .12s ease;object-fit:contain}

@media(max-width:760px){
  .modsTutorialStepImage{border-radius:10px}
  .cbModalPanel .cbClose{top:8px!important;margin:8px 8px -56px auto!important}
}


/* ===== css/v405-final-hamburger.css ===== */
/* V405 — corrections finales ciblées. */

/* Une seule entrée du menu peut être jaune. */
#drawer .navItem{
  background:#182942!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
#drawer .navItem.active,
#drawer .navItem[aria-current="page"]{
  background:#ffe000!important;
  color:#000!important;
  border-color:#000!important;
}

/* Icône hamburger parfaitement centrée, sans dépendre du glyphe ☰ du navigateur. */
.menuBtn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  text-align:center!important;
  line-height:0!important;
  overflow:hidden!important;
  font-size:0!important;
}
.menuBtnLines{
  width:24px!important;
  height:18px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  align-items:stretch!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  pointer-events:none!important;
}
.menuBtnLines>span{
  display:block!important;
  width:100%!important;
  height:3px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:currentColor!important;
  transform:none!important;
  box-sizing:border-box!important;
}

/* Toutes les croix restent entièrement à l'intérieur de leur fenêtre. */
.modalV296{padding-top:max(18px,env(safe-area-inset-top))!important}
.modalPanelV296{overflow:visible!important}
.modalPanelV296>header{
  top:0!important;
  border-radius:8px 8px 0 0!important;
  overflow:visible!important;
}
.modalPanelV296>header button{
  flex:0 0 48px!important;
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  margin:0!important;
}
.modsDialog{position:relative!important;overflow:auto!important}
.modsDialogHead{top:0!important;overflow:visible!important;padding-right:18px!important}
.modsDialogHead .modsClose{position:relative!important;inset:auto!important;flex:0 0 42px!important;transform:none!important;margin:0!important}
.cbModalPanel{padding-top:0!important}
.cbModalPanel .cbClose{
  position:absolute!important;
  top:12px!important;
  right:12px!important;
  left:auto!important;
  float:none!important;
  margin:0!important;
  transform:none!important;
  z-index:300!important;
}
.cbBuilderHeader,.cbDetailHeader{padding-right:78px!important}
.mhurHubPanel{position:relative!important}
.mhurHubClose{top:12px!important;right:12px!important;transform:none!important}

/* Les boutons Retour restent toujours cliquables. */
.back,.mhurTierBack{
  position:relative!important;
  z-index:50!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
}

/* Tutoriel fermé par défaut et images nettes sans agrandissement artificiel. */
.modsTutorial:not([open]) .modsTutorialBody{display:none!important}
.modsTutorialStepImage{
  width:auto!important;
  max-width:min(100%,1100px)!important;
  height:auto!important;
  margin:18px auto 0!important;
  padding:0!important;
  object-fit:contain!important;
  image-rendering:auto!important;
  filter:contrast(1.035) saturate(1.02)!important;
}
.modsTutorialSteps article{align-items:stretch!important}

/* Zone de dépôt T.U.N.I.N.G alignée et centrée. */
.cbOfficialCreatorScreenV308 .gameTuningArea{
  align-items:stretch!important;
}
.cbOfficialCreatorScreenV308 .tuningColumn{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr)!important;
  align-items:stretch!important;
}
.cbOfficialCreatorScreenV308 .slotList{
  display:grid!important;
  align-content:center!important;
  justify-content:stretch!important;
  gap:10px!important;
  width:100%!important;
  margin:0 auto!important;
}
.cbOfficialCreatorScreenV308 .gameSlot{
  width:100%!important;
  max-width:100%!important;
  margin:0 auto!important;
  align-self:center!important;
}

/* Indication visuelle pendant l'auto-défilement de la Tier List. */
body.v401-tier-dragging{scroll-behavior:auto!important}

/* Fenêtre d'aide à l'installation PWA. */
.v401InstallHelp{
  position:fixed;inset:0;z-index:200000;display:grid;place-items:center;
  padding:18px;background:rgba(0,0,0,.82)
}
.v401InstallHelp[hidden]{display:none}
.v401InstallCard{
  position:relative;width:min(560px,100%);padding:24px;border:3px solid #4b6f9d;border-radius:18px;
  background:#101a2a;color:#fff;box-shadow:0 18px 70px #000
}
.v401InstallCard h2{margin:0 44px 12px 0;color:#ffe000}
.v401InstallCard p{line-height:1.55}
.v401InstallClose{position:absolute;top:12px;right:12px;width:38px;height:38px;margin:0!important;padding:0!important;border-radius:50%!important;background:#e84f48!important;color:#fff!important;font-size:24px!important;line-height:1!important}
.v401InstallActions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:18px}
.v401InstallCard .v401InstallActions button{display:block;margin:0;padding:10px 18px;border:2px solid #000;border-radius:10px;background:#ffe000;color:#000;font-weight:1000}
.v401InstallCard .v401InstallOk{background:#243752;color:#fff}
.v401InstallSuccess{margin:14px 0 0;padding:10px 12px;border:2px solid #2e8b57;border-radius:10px;background:#10291d;color:#caffdf;font-weight:900}

@media(max-width:760px){
  .modalV296{padding-top:max(8px,env(safe-area-inset-top))!important}
  .cbModalPanel .cbClose{top:8px!important;right:8px!important}
  .modsTutorialStepImage{max-width:100%!important;border-radius:9px!important}
}


/* V407 — assure que les petites fenêtres passent au-dessus du header
   et gardent toujours la croix entièrement visible. */
.modalV296,
.modsModal,
.cbModal,
.mhurHubOverlay,
.mhurPublicProfileModal,
.mhurModerationOverlay,
.mhurAuthOverlay{
  z-index:2147483646!important;
  box-sizing:border-box!important;
  padding-top:max(82px,calc(env(safe-area-inset-top) + 18px))!important;
  padding-bottom:18px!important;
}
.modalV296,
.modsModal,
.cbModal,
.mhurHubOverlay,
.mhurPublicProfileModal,
.mhurModerationOverlay,
.mhurAuthOverlay{
  align-items:flex-start!important;
  justify-content:center!important;
}
.modalPanelV296,
.modsDialog,
.cbModalPanel,
.mhurHubPanel,
.mhurPublicProfilePanel,
.mhurModerationPanel,
.mhurAuthPanel{
  max-height:calc(100dvh - 118px)!important;
  margin-top:0!important;
}
.modalPanelV296>header,
.modsDialogHead,
.cbModalPanel .cbClose,
.mhurHubClose,
.mhurPublicProfileClose,
.mhurModerationClose,
.mhurAuthClose{
  scroll-margin-top:96px!important;
}

@media(max-width:760px){
  .modalV296,
  .modsModal,
  .cbModal,
  .mhurHubOverlay,
  .mhurPublicProfileModal,
  .mhurModerationOverlay,
  .mhurAuthOverlay{
    padding-top:max(74px,calc(env(safe-area-inset-top) + 10px))!important;
    padding-bottom:10px!important;
  }
  .modalPanelV296,
  .modsDialog,
  .cbModalPanel,
  .mhurHubPanel,
  .mhurPublicProfilePanel,
  .mhurModerationPanel,
  .mhurAuthPanel{
    max-height:calc(100dvh - 92px)!important;
  }
}


/* V408 — réglage renforcé des petites fenêtres :
   la croix reste toujours visible sous le header fixe. */
.modalV296,
.modsModal,
.cbModal,
.mhurHubOverlay,
.mhurPublicProfileModal,
.mhurModerationOverlay,
.mhurAuthOverlay{
  z-index:2147483646!important;
  box-sizing:border-box!important;
  align-items:flex-start!important;
  justify-content:center!important;
  overflow:auto!important;
  padding-top:max(96px,calc(env(safe-area-inset-top) + 24px))!important;
  padding-right:14px!important;
  padding-bottom:18px!important;
  padding-left:14px!important;
}

.modalPanelV296,
.modsDialog,
.cbModalPanel,
.mhurHubPanel,
.mhurPublicProfilePanel,
.mhurModerationPanel,
.mhurAuthPanel{
  position:relative!important;
  margin:0 auto!important;
  max-height:calc(100dvh - 126px)!important;
}

.modalPanelV296>header{
  padding-right:62px!important;
}
.modalPanelV296>header button{
  position:absolute!important;
  top:10px!important;
  right:10px!important;
  z-index:600!important;
}

.modsDialog{overflow:auto!important}
.modsDialogHead{
  position:sticky!important;
  top:0!important;
  padding-right:72px!important;
  min-height:64px!important;
  overflow:visible!important;
}
.modsDialogHead .modsClose{
  position:absolute!important;
  top:10px!important;
  right:12px!important;
  margin:0!important;
  z-index:600!important;
}

.cbModalPanel{
  padding-top:0!important;
}
.cbModalPanel .cbClose,
.mhurPublicProfileClose,
.mhurModerationClose{
  position:absolute!important;
  top:12px!important;
  right:12px!important;
  left:auto!important;
  float:none!important;
  margin:0!important;
  transform:none!important;
  z-index:600!important;
}
.mhurHubPanel{
  position:relative!important;
  overflow:auto!important;
}
.mhurHubClose{
  position:absolute!important;
  top:12px!important;
  right:12px!important;
  z-index:600!important;
  transform:none!important;
}

.cbBuilderHeader,
.cbDetailHeader,
.mhurHubHead,
.mhurPublicProfileHero{
  padding-right:78px!important;
}

@media(max-width:760px){
  .modalV296,
  .modsModal,
  .cbModal,
  .mhurHubOverlay,
  .mhurPublicProfileModal,
  .mhurModerationOverlay,
  .mhurAuthOverlay{
    padding-top:max(82px,calc(env(safe-area-inset-top) + 12px))!important;
    padding-right:8px!important;
    padding-bottom:8px!important;
    padding-left:8px!important;
  }

  .modalPanelV296,
  .modsDialog,
  .cbModalPanel,
  .mhurHubPanel,
  .mhurPublicProfilePanel,
  .mhurModerationPanel,
  .mhurAuthPanel{
    max-height:calc(100dvh - 96px)!important;
  }

  .modsDialogHead,
  .mhurHubHead,
  .mhurPublicProfileHero,
  .cbBuilderHeader,
  .cbDetailHeader{
    padding-right:64px!important;
  }

  .modsDialogHead .modsClose,
  .cbModalPanel .cbClose,
  .mhurHubClose,
  .mhurPublicProfileClose,
  .mhurModerationClose,
  .modalPanelV296>header button{
    top:8px!important;
    right:8px!important;
  }
}


/* ===== inline ===== */

/* v223 : garde le badge MAX en place, mais donne plus de place au texte */
.gameSlot{position:relative!important;}
.gameSlot .slotBandText{position:relative!important;z-index:1!important;}
.gameSlot .slotMax{z-index:4!important;}

/* Slots SP (fond noir) : on agrandit un peu la carte et on remonte le contenu texte sans bouger le MAX */
.gameSlot.spBand{
  min-height:92px!important;
  height:92px!important;
}
.gameSlot.spBand.filled .slotBandText{
  padding:7px 92px 22px 12px!important;
  min-height:92px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}
.gameSlot.spBand.filled .equippedChar{
  font-size:12px!important;
  line-height:1!important;
  margin-bottom:2px!important;
}
.gameSlot.spBand.filled .equippedName{
  font-size:18px!important;
  line-height:1.01!important;
  max-height:38px!important;
  overflow:hidden!important;
}
.gameSlot.spBand .slotMax{
  left:10px!important;
  bottom:7px!important;
  font-size:11px!important;
}

/* Slots normaux : un peu plus de marge basse pour que le MAX ne soit jamais caché */
.gameSlot.filled:not(.spBand) .slotBandText{
  padding-bottom:34px!important;
}
.gameSlot.filled:not(.spBand) .equippedName{
  line-height:1.02!important;
}

/* Liste des T.U.N.I.N.G compatibles : phrases plus complètes */
.tuningOptions{
  gap:10px!important;
}
.tuningOption{
  min-height:132px!important;
  height:auto!important;
  max-height:none!important;
  align-items:start!important;
  overflow:hidden!important;
}
.tuningOptionMain{
  padding:6px 4px 6px 0!important;
  overflow:hidden!important;
}
.tuningOptionName{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  font-size:20px!important;
  line-height:1.03!important;
  max-height:42px!important;
  overflow:hidden!important;
}
.tuningOptionDesc{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:4!important;
  font-size:12px!important;
  line-height:1.08!important;
  max-height:56px!important;
  overflow:hidden!important;
  margin-top:4px!important;
}
.tuningOptionChar{
  font-size:12px!important;
  line-height:1!important;
  margin-bottom:3px!important;
}
.tuningFaction{
  font-size:15px!important;
  line-height:1.05!important;
  align-self:center!important;
}
@media(max-width:900px){
  .gameSlot.spBand{min-height:88px!important;height:88px!important;}
  .gameSlot.spBand.filled .slotBandText{min-height:88px!important;padding:7px 88px 20px 10px!important;}
  .gameSlot.spBand.filled .equippedName{font-size:17px!important;}
  .tuningOption{min-height:122px!important;}
  .tuningOptionName{font-size:18px!important;}
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

/* v227 : tuning dans la zone jaune exactement sur les côtés + photos un peu grandes */
.costumeTile{
  position:relative!important;
  overflow:hidden!important;
}

/* Photo costume : seulement l'image principale, pas les icônes tuning */
body .costumeTile > img,
.costumeTile > img{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:24px!important;
  width:100%!important;
  height:176px!important;
  padding:0 6px!important;
  box-sizing:border-box!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:scale(1.08)!important;
  transform-origin:center bottom!important;
  z-index:2!important;
  opacity:1!important;
  visibility:visible!important;
  background:transparent!important;
}

/* Icônes T.U.N.I.N.G : dans la zone jaune, à gauche/droite comme ton dessin */
.costumeTileBadge{
  position:absolute!important;
  width:42px!important;
  height:42px!important;
  top:auto!important;
  bottom:102px!important;
  z-index:35!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  padding:0!important;
  margin:0!important;
  box-shadow:none!important;
  clip-path:none!important;
  font-size:0!important;
  color:transparent!important;
  text-indent:0!important;
}
.costumeTileBadge.left{left:12px!important;}
.costumeTileBadge.right{right:12px!important;}

/* Reset absolu pour éviter que les anciennes règles prennent les icônes pour des photos */
.costumeTileBadge img,
.costumeTileBadgeIcon,
.costumeTileBadge > img{
  position:static!important;
  inset:auto!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  padding:0!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  opacity:1!important;
  visibility:visible!important;
  background:transparent!important;
  display:block!important;
  border:0!important;
  box-shadow:none!important;
}

/* Bas de carte lisible */
.costumeTileName{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:28px!important;
  height:56px!important;
  min-height:56px!important;
  padding:0 10px!important;
  z-index:20!important;
}
.costumeMiniDesc{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:28px!important;
  padding:3px 8px 0!important;
  z-index:20!important;
}

@media(max-width:900px){
  body .costumeTile > img,
  .costumeTile > img{
    top:24px!important;
    height:166px!important;
    padding:0 5px!important;
    transform:scale(1.07)!important;
  }
  .costumeTileBadge{
    width:38px!important;
    height:38px!important;
    bottom:96px!important;
  }
  .costumeTileBadge.left{left:10px!important;}
  .costumeTileBadge.right{right:10px!important;}
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

.roleIcon,.badge .roleIcon,.rolePill .roleIcon,.roleIcon img{
  object-fit:contain!important;
  background:transparent!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  opacity:1!important;
}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== inline ===== */

.costumeMiniDesc{display:block!important;}
.costumeTileBadge{bottom:8px!important;}

/* v309 build cards badge tweak */
.card.buildMode .cardModeTag{
  left:10px;
  right:auto;
  max-width:170px;
  padding:8px 12px;
  font-size:17px;
  line-height:1.05;
}
@media(max-width:760px){
  .card.buildMode .cardModeTag{max-width:150px;font-size:15px}
}


/* ===== css/community-hub.css ===== */
/* V327 — Hub communautaire : recherche, commentaires, tier list, stats, notifications, admin */
.mhurHubButtons{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 18px}
.mhurHubButtons button,.mhurHubBtn{border:3px solid #000;border-radius:11px;padding:9px 13px;background:#17253c;color:#fff;font-weight:1000;box-shadow:0 3px 0 #000}
.mhurHubButtons button:hover,.mhurHubBtn:hover{outline:3px solid #19e6ff}.mhurHubButtons .primary{background:#ffe100;color:#000}
.mhurHubOverlay{position:fixed;inset:0;z-index:12000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.88)}.mhurHubOverlay.open{display:flex}
.mhurHubPanel{position:relative;width:min(1200px,97vw);max-height:94vh;overflow:auto;border:5px solid #000;border-radius:18px;background:#0e1725;color:#fff;box-shadow:0 0 0 3px #405d84}
.mhurHubClose{position:sticky;float:right;top:10px;right:10px;z-index:5;width:45px;height:45px;border:4px solid #000;border-radius:50%;background:#e84f48;color:#fff;font-size:25px;font-weight:1000}
.mhurHubHead{padding:20px 70px 16px 20px;background:linear-gradient(90deg,#11223a,#1c4774)}.mhurHubHead h2{margin:0;font-size:32px}.mhurHubHead p{margin:5px 0 0;color:#cbdaf0;font-weight:800}
.mhurHubBody{padding:18px}.mhurHubInput{width:100%;padding:12px 14px;border:2px solid #45658f;border-radius:10px;background:#07101c;color:#fff;font-size:17px}
.mhurSearchResults{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:14px}.mhurSearchCard{padding:13px;border:3px solid #000;border-radius:12px;background:#17253c;color:#fff;text-align:left}.mhurSearchCard b,.mhurSearchCard small{display:block}.mhurSearchCard small{margin-top:5px;color:#a9bdd9}
.mhurCommentBox{margin:18px;padding:15px;border:4px solid #000;border-radius:13px;background:#111b2b}.mhurCommentBox h3{margin:0 0 11px;color:#ffe100}.mhurCommentComposer{display:grid;grid-template-columns:1fr auto;gap:9px}.mhurCommentComposer textarea{min-height:70px;resize:vertical}.mhurCommentComposer button{padding:10px 16px;border:3px solid #000;border-radius:10px;background:#ffe100;color:#000;font-weight:1000}.mhurCommentList{display:flex;flex-direction:column;gap:9px;margin-top:12px}.mhurComment{padding:10px;border:2px solid #334b70;border-radius:10px;background:#0b1421}.mhurCommentHead{display:flex;align-items:center;gap:8px}.mhurCommentAvatar{width:34px;height:34px;border-radius:50%;object-fit:cover;background:#263b5b;display:grid;place-items:center;font-weight:1000}.mhurCommentHead small{margin-left:auto;color:#9fb0c7}.mhurComment p{margin:7px 0 0;white-space:pre-wrap}.mhurCommentDelete{margin-left:6px;background:#8e2430;color:#fff;border-radius:6px;padding:3px 6px;font-size:10px;font-weight:900}
.mhurTierControls{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:14px}.mhurTierControls select{padding:9px;border-radius:9px;background:#111d2e;color:#fff;border:2px solid #405d84}.mhurTierList{display:flex;flex-direction:column;gap:8px}.mhurTierRow{display:grid;grid-template-columns:70px 1fr;border:3px solid #000;border-radius:10px;overflow:hidden;min-height:82px}.mhurTierLabel{display:grid;place-items:center;font-size:32px;font-weight:1000;color:#000}.mhurTierLabel.S{background:#ff6b6b}.mhurTierLabel.A{background:#ffad66}.mhurTierLabel.B{background:#ffe066}.mhurTierLabel.C{background:#a9e36f}.mhurTierLabel.D{background:#70c8e8}.mhurTierItems{display:flex;gap:8px;flex-wrap:wrap;padding:8px;background:#1a2534}.mhurTierItem{width:74px;padding:3px;border:2px solid #000;border-radius:8px;background:#0b1421;color:#fff}.mhurTierItem img{width:100%;height:58px;object-fit:contain;background:#cfd6d4;border-radius:5px}.mhurTierItem small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.mhurTierVote{display:flex;gap:3px;margin-top:3px}.mhurTierVote button{flex:1;padding:2px;background:#273b58;color:#fff;border-radius:4px;font-size:9px;font-weight:900}
.mhurStatsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.mhurStatCard{padding:16px;border:3px solid #000;border-radius:12px;background:linear-gradient(145deg,#172b47,#0a111d);text-align:center}.mhurStatCard b{display:block;font-size:31px;color:#ffe100}.mhurStatCard span{font-weight:900}.mhurStatsTable{width:100%;border-collapse:collapse;margin-top:15px}.mhurStatsTable th,.mhurStatsTable td{padding:9px;border:1px solid #40516a;text-align:left}.mhurStatsTable th{background:#17253c;color:#ffe100}
.mhurNoticeBell{position:fixed;right:18px;bottom:94px;z-index:9998;width:52px;height:52px;border:4px solid #000;border-radius:50%;background:#ffe100;color:#000;font-size:23px;font-weight:1000;box-shadow:0 4px 0 #000}.mhurNoticeBell[data-count]:after{content:attr(data-count);position:absolute;right:-5px;top:-7px;min-width:22px;height:22px;padding:0 4px;border:2px solid #000;border-radius:999px;background:#ff2d5b;color:#fff;font-size:12px;display:grid;place-items:center}.mhurNoticeItem{padding:11px;border-bottom:1px solid #334b70}.mhurNoticeItem.unread{border-left:6px solid #ffe100}.mhurNoticeItem b,.mhurNoticeItem small{display:block}.mhurNoticeItem small{margin-top:4px;color:#a8b9cf}
.mhurAdminTabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.mhurAdminTabs button{padding:8px 11px;border-radius:8px;background:#17253c;color:#fff;font-weight:900}.mhurAdminRow{display:grid;grid-template-columns:1fr auto;gap:10px;padding:10px;border:2px solid #334b70;border-radius:9px;margin-bottom:8px}.mhurAdminActions{display:flex;gap:5px;align-items:center}.mhurAdminActions button{padding:6px 8px;border-radius:6px;background:#253b59;color:#fff;font-weight:900}.mhurAdminActions .danger{background:#8e2430}.mhurAdminActions .ok{background:#08743b}
@media(max-width:700px){.mhurCommentComposer{grid-template-columns:1fr}.mhurTierRow{grid-template-columns:50px 1fr}.mhurTierLabel{font-size:24px}.mhurAdminRow{grid-template-columns:1fr}}


/* V328 — Tier List : styles sans vote dans Non classés */
.mhurTierRow.unranked{margin-top:16px;border-top:3px dashed #56657a;padding-top:14px}
.mhurTierLabel.U{min-width:118px;background:#34445b;color:#fff;font-size:14px;line-height:1.05;text-align:center;padding:8px}
.mhurTierVoteCount{display:block;color:#9fb0c8;font-size:10px;font-weight:800;margin:2px 0 4px}


/* V331 — Tier List agrandie et libellé Non classés entièrement visible */
#mhurTierModal .mhurHubPanel{width:min(1420px,98vw)!important}
#mhurTierModal .mhurHubBody{padding:22px!important}
.mhurTierList{gap:10px!important}
.mhurTierRow{grid-template-columns:90px minmax(0,1fr)!important;min-height:96px!important}
.mhurTierRow.unranked{grid-template-columns:132px minmax(0,1fr)!important}
.mhurTierLabel{font-size:38px!important;min-width:0!important}
.mhurTierLabel.U{
  width:132px!important;
  min-width:132px!important;
  padding:10px 8px!important;
  font-size:17px!important;
  line-height:1.15!important;
  white-space:normal!important;
  overflow:visible!important;
  word-break:normal!important;
}
.mhurTierItems{gap:10px!important;padding:10px!important}
.mhurTierItem{width:86px!important;padding:4px!important}
.mhurTierItem img{height:68px!important}
.mhurTierItem small{font-size:10px!important}
.mhurTierVoteCount{font-size:10px!important}
.mhurTierVote button{font-size:10px!important;padding:3px 2px!important}
@media(max-width:700px){
  .mhurTierRow{grid-template-columns:62px minmax(0,1fr)!important}
  .mhurTierRow.unranked{grid-template-columns:92px minmax(0,1fr)!important}
  .mhurTierLabel.U{width:92px!important;min-width:92px!important;font-size:13px!important}
  .mhurTierItem{width:78px!important}
}

/* V338 — Tier List : cartes plus grandes et classement par glisser-déposer */
#mhurTierModal .mhurHubPanel{width:min(1540px,99vw)!important}
#mhurTierModal .mhurHubBody{padding:24px!important}
.mhurTierDragHelp{
  margin:0 0 14px;
  padding:11px 14px;
  border:2px solid #4d6f9b;
  border-radius:10px;
  background:#101d30;
  color:#dceaff;
  font-size:15px;
  font-weight:900;
  text-align:center;
}
.mhurTierRow{min-height:128px!important}
.mhurTierItems{
  min-height:122px!important;
  gap:12px!important;
  padding:12px!important;
  align-content:flex-start;
  transition:background .14s,box-shadow .14s;
}
.mhurTierItems.dragOver{
  background:#263c59!important;
  box-shadow:inset 0 0 0 4px #19e6ff;
}
.mhurTierItem{
  width:112px!important;
  padding:6px!important;
  border-radius:10px!important;
  cursor:grab;
  user-select:none;
  transition:transform .12s,opacity .12s,box-shadow .12s;
}
.mhurTierItem:active{cursor:grabbing}
.mhurTierItem:hover{transform:translateY(-3px);box-shadow:0 4px 0 #000}
.mhurTierItem.dragging{opacity:.35;transform:scale(.94)}
.mhurTierItem img{height:88px!important;border-radius:7px!important}
.mhurTierItem small{
  margin-top:4px;
  font-size:12px!important;
  line-height:1.05;
  font-weight:900;
}
.mhurTierVoteCount{font-size:11px!important;margin-top:3px!important}
.mhurTierVote{display:none!important}
.mhurTierDropHint{
  display:none;
  align-self:stretch;
  min-width:115px;
  place-items:center;
  border:3px dashed #19e6ff;
  border-radius:9px;
  color:#9eefff;
  font-weight:1000;
}
.mhurTierItems.dragOver .mhurTierDropHint{display:grid}
@media(max-width:700px){
  .mhurTierRow{min-height:112px!important}
  .mhurTierItems{min-height:106px!important;gap:8px!important;padding:8px!important}
  .mhurTierItem{width:94px!important}
  .mhurTierItem img{height:72px!important}
  .mhurTierItem small{font-size:10px!important}
  .mhurTierDragHelp{font-size:12px}
}

/* V340 — Tier List sur une vraie page pleine largeur */
.mhurTierPage{
  width:calc(100vw - 36px);
  margin-left:calc(50% - 50vw + 18px);
  min-height:calc(100vh - 110px);
  padding:24px;
  border:4px solid #000;
  border-radius:20px;
  background:linear-gradient(145deg,#14243a,#070d17 58%,#03060c);
  box-shadow:0 8px 0 #000,0 0 0 3px rgba(25,201,222,.18) inset;
}
.mhurTierPageTop{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) 230px;
  gap:20px;
  align-items:center;
  margin-bottom:20px;
  padding:20px;
  border:3px solid #000;
  border-radius:16px;
  background:linear-gradient(100deg,#172a45,#0d1828);
}
.mhurTierBack{
  align-self:start;
  padding:11px 17px;
  border:3px solid #000;
  border-radius:11px;
  background:#253b5c;
  color:#fff;
  font-weight:1000;
}
.mhurTierKicker{
  display:inline-block;
  padding:5px 9px;
  border-radius:999px;
  background:#ffe100;
  color:#000;
  font-size:12px;
  font-weight:1000;
}
.mhurTierPageTop h1{
  margin:7px 0 4px;
  font-size:clamp(34px,4vw,58px);
  line-height:1;
  text-shadow:3px 3px 0 #000;
}
.mhurTierPageTop p{margin:0;color:#cbd9ee;font-size:17px;font-weight:800}
.mhurTierFilter{color:#ffe100;font-size:13px;font-weight:1000}
.mhurTierFilter select{
  display:block;
  width:100%;
  margin-top:6px;
  padding:12px;
  border:3px solid #405d84;
  border-radius:10px;
  background:#091220;
  color:#fff;
  font-weight:900;
}
.mhurTierListPage{gap:13px!important}
.mhurTierListPage .mhurTierRow{
  grid-template-columns:105px minmax(0,1fr)!important;
  min-height:158px!important;
  border-radius:14px!important;
}
.mhurTierListPage .mhurTierRow.unranked{
  grid-template-columns:155px minmax(0,1fr)!important;
}
.mhurTierListPage .mhurTierLabel{font-size:48px!important}
.mhurTierListPage .mhurTierLabel.U{
  width:auto!important;
  min-width:0!important;
  font-size:18px!important;
  padding:12px!important;
}
.mhurTierListPage .mhurTierItems{
  min-height:150px!important;
  gap:12px!important;
  padding:12px!important;
  align-content:flex-start;
}
.mhurTierListPage .mhurTierItem{
  width:128px!important;
  padding:6px!important;
  border-radius:11px!important;
}
.mhurTierListPage .mhurTierItem img{
  height:102px!important;
  object-fit:contain!important;
}
.mhurTierListPage .mhurTierItem small{
  margin-top:5px;
  font-size:12px!important;
  line-height:1.1;
}
.mhurTierStyleName{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#ffe100;
  font-size:10px;
  font-weight:900;
}
.mhurTierListPage .mhurTierVoteCount{font-size:10px!important}
.mhurTierListPage .mhurTierDragHelp{
  position:sticky;
  top:82px;
  z-index:6;
  margin-bottom:4px;
  padding:12px 16px;
  font-size:14px;
  box-shadow:0 3px 0 #000;
}
@media(max-width:900px){
  .mhurTierPage{width:calc(100vw - 14px);margin-left:calc(50% - 50vw + 7px);padding:10px}
  .mhurTierPageTop{grid-template-columns:1fr;gap:12px;padding:14px}
  .mhurTierBack{justify-self:start}
  .mhurTierListPage .mhurTierRow{grid-template-columns:65px minmax(0,1fr)!important;min-height:130px!important}
  .mhurTierListPage .mhurTierRow.unranked{grid-template-columns:95px minmax(0,1fr)!important}
  .mhurTierListPage .mhurTierLabel{font-size:34px!important}
  .mhurTierListPage .mhurTierLabel.U{font-size:13px!important}
  .mhurTierListPage .mhurTierItems{min-height:124px!important;padding:8px!important;gap:8px!important}
  .mhurTierListPage .mhurTierItem{width:96px!important}
  .mhurTierListPage .mhurTierItem img{height:74px!important}
  .mhurTierListPage .mhurTierItem small{font-size:10px!important}
  .mhurTierStyleName{font-size:9px}
}

/* V347 — Tier List personnelle + publication volontaire */
.mhurTierTopActions{display:flex;flex-direction:column;gap:10px;align-items:stretch;min-width:310px}
.mhurTierActionButtons{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mhurTierActionButtons button{border:3px solid #000;border-radius:12px;padding:11px 12px;font-weight:1000;cursor:pointer;box-shadow:0 4px 0 #000}
.mhurTierPublishBtn{background:#43c7ef;color:#07111d}
.mhurTierPublishedBtn{background:#182b46;color:#fff;border-color:#5d789e!important}
.mhurTierResetBtn{background:#ff6262;color:#fff;grid-column:1/-1}
.mhurPublishedTierCard{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:12px;border:2px solid #405d84;border-radius:12px;background:#101b2b;margin-bottom:10px}
.mhurPublishedTierAuthor{display:flex;gap:10px;align-items:center}.mhurPublishedTierAuthor img,.mhurPublishedTierAuthor>span{width:46px;height:46px;border-radius:50%;object-fit:cover;background:#28415f;display:grid;place-items:center;font-weight:1000}.mhurPublishedTierAuthor small{display:block;color:#aebed2;margin-top:3px}
.mhurPublishedTierCounts{display:flex;gap:5px;flex-wrap:wrap}.mhurPublishedTierCounts b{padding:5px 7px;border-radius:6px;color:#000}.mhurPublishedTierCounts .S{background:#ff6b6b}.mhurPublishedTierCounts .A{background:#ffad66}.mhurPublishedTierCounts .B{background:#ffe066}.mhurPublishedTierCounts .C{background:#a9e36f}.mhurPublishedTierCounts .D{background:#70c8e8}
.mhurPublishedTierCard>button{background:#43c7ef;border:2px solid #000;border-radius:9px;padding:8px 14px;font-weight:1000}
.mhurPublishedTierRow{display:grid;grid-template-columns:62px 1fr;min-height:92px;border:2px solid #000;margin-bottom:7px;background:#1a2534}.mhurPublishedTierRow>div:last-child{display:flex;gap:7px;flex-wrap:wrap;padding:8px}.mhurPublishedMini{width:70px;background:#0b1421;border:2px solid #000;border-radius:7px;padding:3px}.mhurPublishedMini img{width:100%;height:58px;object-fit:contain;background:#d3d9d8}.mhurPublishedMini small{display:block;color:#fff;font-size:9px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
@media(max-width:800px){.mhurTierTopActions{min-width:0}.mhurTierActionButtons{grid-template-columns:1fr}.mhurTierResetBtn{grid-column:auto}.mhurPublishedTierCard{grid-template-columns:1fr}.mhurPublishedTierCounts{justify-content:flex-start}}

/* V393 — Classement des créateurs : fenêtre mobile lisible et sans chevauchement */
#mhurLeaderboardModalV370{
  padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));
  align-items:center;
}
#mhurLeaderboardModalV370 .mhurHubPanel{
  width:min(760px,calc(100vw - 24px));
  max-height:min(82vh,720px);
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
#mhurLeaderboardModalV370 .mhurHubClose{
  position:absolute;
  float:none;
  top:12px;
  right:12px;
  width:48px;
  height:48px;
  margin:0;
  z-index:10;
}
#mhurLeaderboardModalV370 .mhurHubHead{
  flex:0 0 auto;
  min-width:0;
  padding:18px 72px 15px 18px;
}
#mhurLeaderboardModalV370 .mhurHubHead h2{
  margin:0;
  max-width:100%;
  font-size:clamp(24px,5vw,34px);
  line-height:1.08;
  overflow-wrap:anywhere;
}
#mhurLeaderboardModalV370 .mhurHubHead p{
  display:block;
  clear:both;
  margin:9px 0 0;
  font-size:15px;
  line-height:1.35;
}
#mhurLeaderboardModalV370 .mhurHubBody{
  flex:1 1 auto;
  min-height:90px;
  overflow:auto;
  padding:16px 18px 20px;
}
#mhurLeaderboardModalV370 .mhurLeaderboardGrid{
  display:flex;
  flex-direction:column;
  gap:9px;
  min-width:0;
  font-size:16px;
  line-height:1.35;
}
@media(max-width:700px){
  #mhurLeaderboardModalV370{
    padding:10px;
  }
  #mhurLeaderboardModalV370 .mhurHubPanel{
    width:calc(100vw - 20px);
    max-height:78vh;
    border-width:4px;
    border-radius:17px;
  }
  #mhurLeaderboardModalV370 .mhurHubClose{
    top:10px;
    right:10px;
    width:45px;
    height:45px;
    font-size:25px;
  }
  #mhurLeaderboardModalV370 .mhurHubHead{
    padding:16px 62px 14px 15px;
  }
  #mhurLeaderboardModalV370 .mhurHubHead h2{
    font-size:clamp(22px,7vw,30px);
    line-height:1.08;
  }
  #mhurLeaderboardModalV370 .mhurHubHead p{
    margin-top:8px;
    font-size:13px;
    line-height:1.3;
  }
  #mhurLeaderboardModalV370 .mhurHubBody{
    padding:14px 15px 18px;
  }
  #mhurLeaderboardModalV370 .mhurLeaderboardGrid{
    font-size:14px;
  }
}

/* Google Analytics consent */
#mhurAnalyticsConsent{position:fixed;left:16px;right:16px;bottom:16px;z-index:100000;display:flex;gap:16px;align-items:center;justify-content:space-between;padding:16px 18px;background:#0d1727;color:#fff;border:2px solid #405d84;border-radius:14px;box-shadow:0 10px 40px #000a;font-family:Arial,sans-serif}#mhurAnalyticsConsent>div:first-child{display:flex;flex-direction:column;gap:4px}#mhurAnalyticsConsent span{color:#c7d7ee;font-size:14px}#mhurAnalyticsConsent button{margin-left:8px;padding:10px 14px;border-radius:10px;border:1px solid #5877a3;background:#1a2a43;color:#fff;font-weight:800}#mhurAnalyticsConsent button[data-yes]{background:#ffe100;color:#000;border-color:#ffe100}@media(max-width:680px){#mhurAnalyticsConsent{flex-direction:column;align-items:stretch}#mhurAnalyticsConsent>div:last-child{display:flex}#mhurAnalyticsConsent button{flex:1;margin:0 4px}}

/* V433 — pièces jointes dans les commentaires */
.mhurCommentTools{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.mhurCommentFile{display:inline-flex;align-items:center;gap:6px;padding:9px 12px;border:2px solid #47688f;border-radius:10px;background:#172944;font-weight:900;cursor:pointer}.mhurCommentFile input{display:none}#mhurCommentFileName{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#b9cbe2;font-size:12px}.mhurCommentProgress{width:130px}.mhurCommentMedia{display:block;max-width:min(100%,620px);max-height:460px;margin-top:10px;border:2px solid #36577e;border-radius:12px;background:#020710;object-fit:contain}.mhurCommentMediaLink{display:block;width:max-content;max-width:100%}@media(max-width:700px){.mhurCommentTools{align-items:stretch}.mhurCommentTools button,.mhurCommentFile{justify-content:center}.mhurCommentMedia{width:100%}}


/* ===== css/v392-mobile-search-close.css ===== */
/* V392 — La fermeture de la recherche globale reste toujours visible sur mobile. */
.mhurHubOverlay{
  z-index:2147483640!important;
}

#mhurSearchModal{
  align-items:flex-start!important;
  justify-content:center!important;
  padding:10px!important;
  padding-top:max(10px,env(safe-area-inset-top))!important;
}

#mhurSearchModal .mhurHubPanel{
  width:min(1200px,calc(100vw - 20px))!important;
  max-height:calc(100dvh - 20px - env(safe-area-inset-top))!important;
  overflow:auto!important;
}

#mhurSearchModal .mhurHubClose{
  position:sticky!important;
  top:8px!important;
  right:8px!important;
  float:right!important;
  z-index:2147483641!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  flex:0 0 48px!important;
  width:48px!important;
  height:48px!important;
  margin:8px 8px -56px auto!important;
}

@media(max-width:700px){
  #mhurSearchModal{padding:6px!important;padding-top:max(6px,env(safe-area-inset-top))!important}
  #mhurSearchModal .mhurHubPanel{
    width:calc(100vw - 12px)!important;
    max-height:calc(100dvh - 12px - env(safe-area-inset-top))!important;
    border-radius:14px!important;
  }
  #mhurSearchModal .mhurHubHead{padding-right:70px!important}
  #mhurSearchModal .mhurHubClose{
    top:6px!important;
    right:6px!important;
    width:50px!important;
    height:50px!important;
    font-size:30px!important;
  }
}


/* ===== css/community-moderation.css ===== */
.mhurVerifiedBadge{display:inline-flex;align-items:center;margin-left:8px;padding:3px 7px;border:2px solid #07100b;border-radius:999px;background:#22d66f;color:#041009;font-size:11px;font-weight:1000;vertical-align:middle;text-shadow:none}.mhurReportButton,.mhurAdminAction,.mhurAdminDanger{padding:7px 10px;border:3px solid #000;border-radius:9px;font-weight:1000}.mhurReportButton{background:#27364d;color:#fff}.mhurAdminAction{background:#22d66f;color:#06110a}.mhurAdminDanger{background:#e84f48;color:#fff}.mhurOwnerMark{align-self:center;color:#ffe100;font-size:12px;font-weight:1000}.mhurModerationOverlay{position:fixed;inset:0;z-index:12000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.88)}.mhurModerationOverlay.open{display:flex}.mhurModerationPanel{position:relative;width:min(760px,96vw);max-height:94vh;overflow:auto;padding:24px;border:5px solid #000;border-radius:18px;background:#111b2b;color:#fff;box-shadow:0 0 0 3px #405d84}.mhurModerationPanel.admin{width:min(1120px,97vw)}.mhurModerationPanel h2{margin:0 0 8px;font-size:32px}.mhurModerationPanel p{color:#cdd9eb}.mhurModerationPanel label{display:block;margin:14px 0;color:#ffe100;font-weight:1000}.mhurModerationPanel select,.mhurModerationPanel textarea{width:100%;margin-top:6px;padding:11px;border:2px solid #45658f;border-radius:9px;background:#07101c;color:#fff}.mhurModerationPanel textarea{min-height:110px;resize:vertical}.mhurModerationClose{position:absolute;right:12px;top:12px;width:44px;height:44px;border:4px solid #000;border-radius:50%;background:#e84f48;color:#fff;font-size:25px;font-weight:1000}.mhurModerationSubmit{width:100%;padding:12px;border:4px solid #000;border-radius:10px;background:#ffe100;color:#000;font-weight:1000}.mhurModerationError{min-height:24px;margin:8px 0;color:#ff8c8c;font-weight:900}.mhurModerationError.success{color:#66f09b}.mhurAdminTopButton{position:absolute;right:245px;top:12px;height:48px;padding:0 14px;border:3px solid #000;border-radius:13px;background:#22d66f;color:#06110a;font-weight:1000;z-index:22}.mhurAdminHead{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.mhurAdminHead span{color:#ffe100;font-weight:1000}.mhurAdminHead button,.mhurReportActions button{padding:9px 12px;border:3px solid #000;border-radius:9px;background:#19c9de;color:#000;font-weight:1000}.mhurReportList{display:flex;flex-direction:column;gap:12px}.mhurReportCard{padding:14px;border:3px solid #3f5576;border-left:8px solid #e84f48;border-radius:12px;background:#0b1421}.mhurReportCard>div:first-child{display:flex;justify-content:space-between;gap:12px}.mhurReportCard small{color:#aebbd0}.mhurReportMeta{color:#9fb1ca;font-size:12px}.mhurReportMeta code{color:#ffe100}.mhurReportActions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.mhurReportActions .danger{background:#e84f48;color:#fff}.mhurModerationLoading,.mhurModerationEmpty{padding:30px;text-align:center;color:#cbd8ea;font-weight:1000}@media(max-width:760px){.mhurAdminTopButton{right:80px;top:72px}.mhurVerifiedBadge{display:flex;width:max-content;margin:5px 0 0}.mhurReportCard>div:first-child{flex-direction:column}}


/* ===== css/v344-fixes.css ===== */

/* V344 - correctifs ergonomie et affichage */
.drawer{z-index:10000!important;isolation:isolate;overflow-y:auto!important}
.drawer.open{box-shadow:18px 0 40px rgba(0,0,0,.65)}
.drawer .navItem{position:relative;z-index:10001;display:flex!important;align-items:center;gap:12px}
.drawer .navItem::before{width:24px;text-align:center;font-size:19px;flex:0 0 24px}
.drawer .navItem:nth-of-type(1)::before{content:"🏠"}
.drawer .navItem:nth-of-type(2)::before{content:"👥"}
.drawer .navItem:nth-of-type(3)::before{content:"🔧"}
.drawer .navItem:nth-of-type(4)::before{content:"👕"}
.drawer .navItem:nth-of-type(5)::before{content:"🧩"}
/* Les boutons ajoutés par le hub ont déjà leur emoji */
.drawer .navItem[data-mhur-hub]::before{display:none}

/* Les cartes et panneaux ne doivent jamais passer au-dessus du catalogue */
.gamePanel,.gameSlot,.costumeGroup,.mhurTierPage,.mhurHubOverlay{isolation:isolate}

/* Rôles de longueur identique */
.badges .badge:not(.hero):not(.villain){width:185px;min-width:185px;justify-content:flex-start}
@media(max-width:700px){.badges .badge:not(.hero):not(.villain){width:165px;min-width:165px}}

/* T.U.N.I.N.G des builds : même découpe visuelle que les cartes costume */
.cbOfficialBuildTuningSlot,.cbOfficialCreatorScreenV308 .gameSlot{
  clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 14px,100% calc(100% - 14px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px),0 14px);
  border-radius:0!important;
}
.cbOfficialBuildTuningSlot::before,.cbOfficialCreatorScreenV308 .gameSlot::before{border-radius:0!important}

/* Bouton création de build */
.cbPageHead button,.builderHero button{transition:transform .15s ease,filter .15s ease}
.cbPageHead button:has(+ *),.builderHero button:has(+ *){}
button[data-cb-create],.cbCreateBuildButton,.cbPageHead .primaryAction{
  background:#42c8f5!important;color:#03131e!important;border-color:#000!important;
  transform:translateY(-8px);min-width:270px;text-align:center!important;justify-content:center!important;
}

/* Barre communauté connectée retirée */
#mhurLaunchBar,.mhurLaunchBar{display:none!important}

/* Tier list : pas de curseur interdit pendant le glisser */
.mhurTierPage,.mhurTierPage *{cursor:default}
.mhurTierItem{cursor:grab!important;user-select:none}
.mhurTierItem.dragging{cursor:grabbing!important;opacity:.7}
.mhurTierItems{cursor:copy!important}
.mhurTierDropHint{pointer-events:none}

/* Phrase de sélection centrée */
.modeNotice{text-align:center!important}
.modeNotice span{vertical-align:middle}


/* ===== css/v345-fixes.css ===== */
/* MHUR Nexus V345 — icônes et traductions de fiches */
.cbBuildActions{display:flex;align-items:center;gap:10px!important}
.cbIconAction{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  gap:7px!important;height:46px!important;min-width:46px!important;padding:0 13px!important;
  border:3px solid #07111e!important;border-radius:14px!important;
  box-shadow:0 3px 0 #07111e,0 6px 15px rgba(0,0,0,.22)!important;
  transition:transform .14s ease,filter .14s ease,box-shadow .14s ease!important;
}
.cbIconAction:hover{transform:translateY(-2px)!important;filter:brightness(1.06)!important;box-shadow:0 5px 0 #07111e,0 9px 18px rgba(0,0,0,.25)!important}
.cbIconAction:active{transform:translateY(2px)!important;box-shadow:0 1px 0 #07111e!important}
.cbActionIcon{display:grid!important;place-items:center!important;width:23px!important;height:23px!important}
.cbActionIcon svg{display:block!important;width:23px!important;height:23px!important}
.cbFavorite{background:#fff!important;color:#18263c!important}
.cbFavorite.active{background:#ffd92e!important;color:#111!important}
.cbHeart{background:#fff!important;color:#e83e70!important}
.cbHeart.liked{background:#ff4d7d!important;color:#fff!important}
.cbHeart b{font-size:17px!important;line-height:1!important}
.cbHeart.compact{height:40px!important;min-width:52px!important;padding:0 10px!important}
.cbHeart.compact .cbActionIcon,.cbHeart.compact svg{width:20px!important;height:20px!important}

.cbAuthorButton{display:inline-flex!important;align-items:center!important;gap:7px!important;padding:4px 10px 4px 5px!important}
.cbAuthorAvatar{
  width:28px!important;height:28px!important;min-width:28px!important;border-radius:50%!important;
  object-fit:cover!important;border:2px solid #61d5ff!important;background:#10223c!important;
  overflow:hidden!important;display:grid!important;place-items:center!important;color:#fff!important;
}
.cbAuthorAvatarFallback svg{width:19px;height:19px}

.skillTypeBadge{
  display:inline-flex;align-items:center;justify-content:center;
  margin:0 0 8px 2px;padding:6px 14px;border:3px solid #000;border-radius:999px;
  background:#ffe600;color:#000;font-size:14px;font-weight:1000;letter-spacing:.03em;
}
.quirkSectionTitle{
  margin:12px 16px 2px!important;padding:10px 14px!important;
  border-left:9px solid #ffe100;border-radius:5px;background:#202632!important;
  color:#fff!important;text-transform:uppercase;font-style:italic;text-shadow:2px 2px #000;
}


/* ===== css/v354-comprehensive-fixes.css ===== */
/* MHUR Nexus V354 — finitions demandées */
.skillText::before,.skillText:before{display:none!important;content:none!important}
.skillTypeBadge{display:inline-flex!important;align-items:center;justify-content:center;background:#ffe500;color:#000;border:3px solid #000;border-radius:999px;padding:6px 14px;margin:0 8px 9px 0;font-weight:1000}
.skillTypeBadge~.skillTypeBadge{display:none!important}

.cbIconAction{width:52px!important;height:52px!important;min-width:52px!important;border:3px solid #05080d!important;border-radius:15px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;padding:8px!important;box-shadow:0 4px 0 #05080d!important;background:#eef4ff!important;color:#0b2d53!important;transition:.12s ease!important}
.cbIconAction:hover{transform:translateY(-2px)!important;filter:brightness(1.05)!important}
.cbIconAction .cbActionIcon{width:25px;height:25px;display:block;line-height:0}
.cbIconAction svg{width:100%;height:100%;display:block}
.cbHeart.cbIconAction{width:auto!important;min-width:70px!important;padding:8px 12px!important;background:#fff!important;color:#ff3d72!important}
.cbHeart.cbIconAction.liked{background:#ff4d80!important;color:#fff!important}
.cbHeart.cbIconAction b{font-size:18px!important}
.cbFavorite.cbIconAction.active{background:#ffe44a!important;color:#07101d!important}
.cbAuthorAvatarFallback{display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;background:#253b59!important}
.cbAuthorAvatarFallback svg{width:70%;height:70%}

.cbDeleteOwn{background:#ef3340!important;color:#fff!important;border:3px solid #05080d!important;border-radius:12px!important;padding:10px 14px!important;font-weight:1000!important;box-shadow:0 3px 0 #05080d!important;white-space:nowrap}
.cbDeleteOwn.compact{width:52px!important;height:52px!important;overflow:hidden!important;font-size:0!important;padding:0!important}
.cbDeleteOwn.compact::before{content:'🗑';font-size:21px!important}

/* Les T.U.N.I.N.G des builds reprennent exactement la carte officielle des costumes. */
.cbCostumeTuningGridV306 .gameSlot,.cbOfficialCreatorScreenV308 .gameSlot{width:100%!important;margin:7px 0!important;min-height:66px!important;height:66px!important;border-radius:12px!important}
.cbCostumeTuningGridV306 .gameSlot.spBand,.cbOfficialCreatorScreenV308 .gameSlot.spBand{min-height:92px!important;height:92px!important}
.cbCostumeTuningGridV306 .slotMax,.cbOfficialCreatorScreenV308 .slotMax{display:block!important}
.cbCostumeTuningGridV306.micro .gameSlot,.cbCostumeTuningGridV306.mini .gameSlot{min-height:66px!important;height:66px!important}
.cbCostumeTuningGridV306.micro .gameSlot.spBand,.cbCostumeTuningGridV306.mini .gameSlot.spBand{min-height:84px!important;height:84px!important}
/* V410 : la carte officielle garde désormais les styles .gameSlot. */

.costumeInfoBox>p,.costumeNotes,.costumeDescription,.costumeMiniDesc{display:none!important}
@media(max-width:900px){.cbBuildActions{flex-wrap:wrap!important}.cbDeleteOwn:not(.compact){padding:8px 10px!important}}

.mhurGenericAvatar{display:flex!important;align-items:center!important;justify-content:center!important;background:#253b59!important;color:#fff!important}.mhurGenericAvatar svg{width:65%;height:65%}


/* ===== css/v355-major-upgrades.css ===== */
/* MHUR Nexus V355 — grosses améliorations communautaires, SEO et PWA */
.mhurV355DrawerIcon{width:25px;height:25px;object-fit:contain;border-radius:7px;vertical-align:middle;margin-right:9px}
.mhurLeaderboardGrid{display:grid;gap:12px}
.mhurLeaderboardRow{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:13px;padding:12px 14px;background:#15263f;border:2px solid #37577e;border-radius:14px;color:#fff;text-align:left;width:100%}
.mhurLeaderboardRow:hover{transform:translateY(-1px);border-color:#2fd3ff}
.mhurLeaderboardRank{font-size:24px;font-weight:1000;text-align:center;color:#ffe100}
.mhurLeaderboardUser{display:flex;align-items:center;gap:12px;min-width:0}
.mhurLeaderboardAvatar{width:48px;height:48px;border-radius:50%;object-fit:cover;background:#273e60;border:2px solid #60dfff}
.mhurLeaderboardAvatar.fallback{display:grid;place-items:center;font-size:22px}
.mhurLeaderboardUser b{font-size:18px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mhurLeaderboardUser small{display:block;color:#bcd0e8;margin-top:3px}
.mhurLeaderboardScore{text-align:right}.mhurLeaderboardScore b{font-size:22px;color:#ffe100;display:block}.mhurLeaderboardScore small{color:#cbd9e9}
.mhurProfileBadgesV355{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 2px}
.mhurProfileBadgeV355{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;border:2px solid #54759d;background:#0d1b31;color:white;font-weight:900;font-size:13px}
.mhurProfileBadgeV355.gold{border-color:#ffe100;color:#ffe100}.mhurProfileBadgeV355.blue{border-color:#2ed4ff;color:#7be5ff}.mhurProfileBadgeV355.pink{border-color:#ff5b94;color:#ff8db6}.mhurProfileBadgeV355.green{border-color:#31dc80;color:#73f0a9}
.mhurInstallButtonV355{background:#2cc9ef!important;color:#071526!important;border-color:#071526!important}
.mhurSeoShareCard{display:none}
@media(max-width:650px){.mhurLeaderboardRow{grid-template-columns:42px minmax(0,1fr)}.mhurLeaderboardScore{grid-column:2;text-align:left;display:flex;gap:8px;align-items:center}.mhurLeaderboardAvatar{width:42px;height:42px}}


/* ===== css/v358-final-fixes.css ===== */
/* V358 — correctifs réels : Tier List, personnages et cache OAuth */
.mhurTierPage{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:18px!important;
  overflow:visible!important;
}
.mhurTierPageTop{
  width:100%!important;
  max-width:100%!important;
  grid-template-columns:auto minmax(0,1fr) minmax(230px,310px)!important;
  overflow:visible!important;
}
.mhurTierTopActions,.mhurTierActionButtons,.mhurTierFilter,.mhurTierFilter select{
  min-width:0!important;
  max-width:100%!important;
}
.mhurTierActionButtons button{min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important}
.mhurTierList,.mhurTierListPage,.mhurTierRow,.mhurTierItems{width:100%!important;max-width:100%!important;min-width:0!important}
.mhurTierItems{overflow:hidden!important}
@media(max-width:1100px){
  .mhurTierPageTop{grid-template-columns:auto minmax(0,1fr)!important}
  .mhurTierTopActions{grid-column:1/-1!important;width:100%!important}
}
@media(max-width:760px){
  .mhurTierPage{padding:8px!important}
  .mhurTierPageTop{grid-template-columns:1fr!important}
  .mhurTierTopActions{grid-column:auto!important}
}


/* ===== css/v360-stability-final.css ===== */
/* V360: stability, mobile installation and leaderboard fixes. */
.mhurSafeError{max-width:900px;margin:30px auto;padding:28px;border:3px solid #ff5b5b;background:#14243a}
.mhurSafeError p{overflow-wrap:anywhere}
.mhurLeaderboardError{padding:20px;border:2px solid #ff6262;border-radius:14px;background:#1c2635;line-height:1.5}
.mhurInstallButtonV360{display:flex!important}
.costumeMiniDesc{display:block!important}
@media(max-width:760px){
  .mhurLeaderboardRow{grid-template-columns:48px minmax(0,1fr)!important;gap:8px!important}
  .mhurLeaderboardScore{grid-column:2;text-align:left!important}
  .mhurHubPanel{width:calc(100vw - 22px)!important;max-height:88vh!important}
}


/* ===== css/v362-layering-fixes.css ===== */
/* Keep the site banner above costume/tuning content on every browser. */
.top{
  position:sticky!important;
  top:0!important;
  z-index:200000!important;
  isolation:isolate!important;
  transform:translateZ(0);
}
.brand,.menuBtn,.lang,.mhurAccountButton{position:relative;z-index:200001!important}
.costumeGroup,.costumeGalleryGroup,.costumeTile,.costumeTileBadge,.costumeTileStars,
.gameCostumeScreen,.gameTuningArea,.tuningColumns,.tuningColumn,.tuningPicker,.tuningOptions,.tuningOption{
  z-index:auto!important;
}
/* Cards must clip their slot icons instead of allowing them to cross the header. */
.costumeGroup,.costumeGalleryGroup,.gameCostumeScreen{position:relative!important;overflow:hidden!important}
.costumeTile{position:relative!important;overflow:hidden!important}


/* ===== css/v363-header-fix.css ===== */
/* V363 — restore the top navigation layout after the layering patch. */
.top{
  position:sticky!important;
  top:0!important;
  z-index:200000!important;
  isolation:isolate!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  overflow:visible!important;
}
.top .brand{
  position:static!important;
  z-index:200001!important;
  margin:0 auto!important;
  max-width:min(42vw,460px)!important;
  white-space:normal!important;
  text-align:center!important;
  pointer-events:none;
}
.top .menuBtn{
  position:absolute!important;
  left:14px!important;
  right:auto!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:200002!important;
  margin:0!important;
}
.top .lang{
  position:absolute!important;
  right:14px!important;
  left:auto!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:200002!important;
  margin:0!important;
}
.top .mhurAccountButton{
  position:absolute!important;
  right:135px!important;
  left:auto!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:200002!important;
  margin:0!important;
}
.drawer{
  top:72px!important;
  z-index:199999!important;
}
@media(max-width:700px){
  .top .brand{
    max-width:135px!important;
    font-size:12px!important;
    line-height:1.02!important;
  }
  .top .menuBtn{
    left:8px!important;
    width:46px!important;
    height:46px!important;
  }
  .top .lang{
    right:8px!important;
    padding:10px 9px!important;
    font-size:13px!important;
  }
  .top .mhurAccountButton{
    right:76px!important;
    width:52px!important;
    max-width:52px!important;
    padding:5px!important;
    justify-content:center!important;
  }
  .top .mhurAccountButtonText{display:none!important}
}
@media(min-width:701px) and (max-width:980px){
  .top .brand{max-width:250px!important;font-size:14px!important}
  .top .mhurAccountButton{right:118px!important;max-width:180px!important}
  .top .lang{padding:10px 13px!important}
}


/* ===== css/v367-fixes.css ===== */
/* V367: no costume family/name between the left and right T.U.N.I.N.G gems. */
.costumeMiniDesc,.costumeTileDesc,.costumeSlotName,.costumeTile .miniDesc{display:none!important}
/* Keep the two tuning badges clear and clickable. */
.costumeTileBadge{z-index:4!important}


/* ===== css/v370-stable-core.css ===== */
.costumeMiniDesc{display:none!important}
.mhurInstallButtonV370{display:flex!important;align-items:center;gap:8px;white-space:normal;line-height:1.15}
.mhurInstallButtonV370.is-ready{outline:2px solid #ffe100;box-shadow:0 0 0 3px rgba(255,225,0,.18)}
.mhurInstallButtonV370.is-pending{opacity:.78}
.mhurInstallButtonV370.is-installed{opacity:.72}
.mhurInstallButtonV370:disabled{cursor:default}
.top{z-index:10000!important}.drawer{z-index:9999!important}


/* ===== css/v385-fixed-header-navigation.css ===== */
/* V385 — final fixed header + fixed back button. Loaded LAST on purpose. */
:root{--mhur-top-height:72px;--mhur-back-gap:12px}
html{
  scroll-behavior:auto!important;
  scroll-padding-top:calc(var(--mhur-top-height) + 76px)!important;
}
body{
  padding-top:var(--mhur-top-height)!important;
}

/* The real top bar must stay attached to the viewport at all times. */
body > header.top,
header.top,
.top{
  position:fixed!important;
  inset:0 0 auto 0!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  height:var(--mhur-top-height)!important;
  min-height:var(--mhur-top-height)!important;
  margin:0!important;
  transform:none!important;
  translate:none!important;
  z-index:2147483600!important;
  overflow:visible!important;
  isolation:isolate!important;
}
.top .menuBtn,
.menuBtn{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  position:absolute!important;
  left:14px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:2147483603!important;
}
.top .brand{z-index:2147483601!important}
.top .mhurAccountButton,
.top .lang{
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:2147483603!important;
}

/* Drawer is also tied to the viewport below the header. */
.drawer{
  position:fixed!important;
  top:var(--mhur-top-height)!important;
  bottom:0!important;
  left:0!important;
  height:auto!important;
  max-height:calc(100dvh - var(--mhur-top-height))!important;
  z-index:2147483500!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
}

/* Back remains usable while the detail page scrolls. */
#app > .back,
.wrap > .back,
.back{
  position:fixed!important;
  top:calc(var(--mhur-top-height) + var(--mhur-back-gap))!important;
  left:18px!important;
  z-index:2147483400!important;
  margin:0!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  transform:none!important;
}
/* Reserve space so page titles do not sit under the fixed back button. */
#app:has(> .back){padding-top:62px!important}

@media(max-width:700px){
  :root{--mhur-top-height:64px;--mhur-back-gap:10px}
  .top .menuBtn,.menuBtn{left:8px!important}
  #app > .back,.wrap > .back,.back{left:10px!important}
  #app:has(> .back){padding-top:58px!important}
}


/* ===== css/v386-menu-sections.css ===== */
/* V386 — organisation visuelle du menu uniquement. */
#drawer .v386-menu-section{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:14px 0 18px;
}
#drawer .v386-menu-section-title{
  margin:0 10px 2px;
  padding:0 4px 8px;
  border-bottom:1px solid rgba(120,166,218,.38);
  color:#ffd900;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.12em;
  text-transform:uppercase;
  line-height:1.2;
}
#drawer .v386-menu-section .navItem{margin:0!important;width:100%;}
#drawer .v386-menu-home{margin-bottom:4px!important;}
@media(max-width:760px){
  #drawer .v386-menu-section{gap:8px;margin:12px 0 16px;}
  #drawer .v386-menu-section-title{font-size:11px;}
}

/* V395: alignement fiable des icônes et libellés. */
.v395-nav-icon{display:inline-flex;width:1.55em;justify-content:center;align-items:center;flex:0 0 1.55em}
.v395-nav-label{display:inline-block;min-width:0}
#drawer .navItem{display:flex!important;align-items:center;gap:.55em}


/* ===== css/community-mods.css ===== */
/* V390 — Community Mods, stable and responsive */
.modsPage{display:flex;flex-direction:column;gap:20px;padding-bottom:40px}.modsHero{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:26px;border:3px solid #000;border-radius:20px;background:linear-gradient(135deg,#11233c,#08111f);box-shadow:0 0 0 2px #3f638f inset}.modsHero h1{margin:0;font-size:clamp(36px,5vw,58px);text-shadow:3px 3px #000}.modsHero p{margin:8px 0 0;color:#d7e7ff;font-size:18px}.modsPrimary{background:#ffe000;color:#000;border:3px solid #000;border-radius:13px;padding:12px 17px;font-weight:1000;box-shadow:0 4px 0 #000;cursor:pointer}.modsTutorial{border:3px solid #000;border-radius:18px;overflow:hidden;background:#0f1c2e}.modsTutorial summary{cursor:pointer;padding:17px 21px;background:linear-gradient(90deg,#ff8a00,#ffe000);color:#000;font-size:22px;font-weight:1000}.modsTutorialBody{padding:20px 24px;font-size:17px;line-height:1.55}.modsTutorialBody code{background:#020710;border:1px solid #44658f;border-radius:7px;padding:3px 7px;color:#83d9ff;word-break:break-all}.modsWarning{padding:12px;border:2px solid #ffb000;border-radius:12px;background:#3a2600;color:#fff0b5;font-weight:800}.modsToolbar{display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(150px,auto));gap:10px}.modsToolbar input,.modsToolbar select,.modsForm input,.modsForm select,.modsForm textarea{width:100%;box-sizing:border-box;background:#08111f;color:#fff;border:2px solid #38577e;border-radius:12px;padding:12px 14px}.modsResultCount{color:#9fb5d1;font-weight:800}.modsGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:20px}.modCard{display:flex;flex-direction:column;min-height:405px;background:#0d1828;border:3px solid #000;border-radius:18px;overflow:hidden;box-shadow:0 0 0 2px #304c72 inset;transition:transform .18s ease}.modCard:hover{transform:translateY(-3px)}.modCardOpen,.modTitle{appearance:none;background:none;border:0;color:inherit;padding:0;text-align:left;cursor:pointer}.modPreview{height:190px;background:#040912;display:flex;align-items:center;justify-content:center;overflow:hidden}.modPreview img,.modPreview video,.modsDetailPreview img,.modsDetailPreview video{width:100%;height:100%;object-fit:cover}.modPreviewFallback{font-size:64px}.modBody{padding:16px;display:flex;flex-direction:column;gap:9px;flex:1}.modTags{display:flex;gap:6px;flex-wrap:wrap}.modTag{background:#19c9de;color:#00131a;border:2px solid #000;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:1000;cursor:pointer}.modBody h3{margin:0;font-size:24px;line-height:1.12}.modBody p{margin:0;color:#d5dfef;line-height:1.43;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.modMeta{margin-top:auto;color:#8ea9cb;font-size:13px}.modStats{display:flex;gap:15px;font-weight:900;color:#ffd85b}.modsEmpty,.modsError{padding:28px;text-align:center;border:2px dashed #55739a;border-radius:16px;color:#cfe0f6}.modsError{border-color:#ff6269;color:#ffd5d8}.modsModal{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.84);display:flex;align-items:center;justify-content:center;padding:18px}.modsModal[hidden]{display:none}.modsDialog{width:min(780px,100%);max-height:94vh;overflow:auto;background:#101c2d;border:4px solid #000;border-radius:20px;box-shadow:0 0 0 3px #4b79af}.modsDetailDialog{width:min(980px,100%)}.modsDialogHead{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;padding:15px 18px;background:#19375d;border-bottom:3px solid #000}.modsDialogHead h2{margin:0}.modsClose{width:42px;height:42px;border-radius:50%;background:#ff5c62;color:#fff;border:3px solid #000;font-size:22px;font-weight:1000;cursor:pointer}.modsForm{display:grid;gap:15px;padding:20px}.modsFormGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.modsForm label{display:grid;gap:7px;font-weight:900}.modsForm textarea{min-height:130px;resize:vertical}.modsFieldHint{font-size:12px;color:#9fb5d1;font-weight:500}.modsSubmit{background:#ffe000;color:#000;border:3px solid #000;border-radius:13px;padding:14px;font-weight:1000;font-size:18px}.modsSubmit:disabled{opacity:.55}.modsProgress{font-weight:800;color:#7fdcff}.modsDetailPreview{height:min(55vh,520px);background:#050a12}.modsDetailBody{padding:22px;display:grid;gap:18px}.modsDetailInfo{display:flex;gap:12px;flex-wrap:wrap;color:#b9cbe2;font-weight:800}.modsDetailDescription{white-space:pre-wrap;line-height:1.6;font-size:17px}.modsDetailActions{display:flex;gap:10px;flex-wrap:wrap}.modDownload,.modDelete,.modsLike{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:2px solid #000;border-radius:11px;padding:11px 14px;font-weight:1000;cursor:pointer}.modDownload{background:#ffe000;color:#000}.modDelete{background:#ff5b62;color:#fff}.modsLike{background:#243957;color:#fff}.modsLike.active{background:#ff4d73}.modsComments{border-top:2px solid #36557d;padding-top:15px}.modsComments h3{font-size:24px}.modsComments form{display:grid;gap:10px}.modsComments textarea{min-height:90px;background:#08111f;color:#fff;border:2px solid #38577e;border-radius:12px;padding:12px}.modsCommentsList{display:grid;gap:12px;margin-top:16px}.modComment{display:grid;grid-template-columns:44px 1fr;gap:10px;padding:12px;border:2px solid #2d496e;border-radius:13px;background:#0b1626}.modCommentAvatar{width:44px;height:44px;border-radius:50%;overflow:hidden;background:#203754;display:grid;place-items:center}.modCommentAvatar img{width:100%;height:100%;object-fit:cover}.modComment small{display:block;color:#839dbd}.modComment p{margin:6px 0 0;white-space:pre-wrap}
@media(max-width:860px){.modsToolbar{grid-template-columns:1fr 1fr}.modsFormGrid{grid-template-columns:1fr}.modsDetailPreview{height:340px}}
@media(max-width:600px){.modsHero{padding:18px}.modsTutorial summary{font-size:18px}.modsTutorialBody{padding:15px;font-size:15px}.modsToolbar{grid-template-columns:1fr}.modsGrid{grid-template-columns:1fr}.modPreview{height:210px}.modsModal{padding:6px}.modsDialog{max-height:98vh;border-radius:14px}.modsDetailPreview{height:260px}.modsDetailBody{padding:15px}.modsDetailActions>*{width:100%}}


/* V397 — tutoriel Mods PC Steam */
.modsTutorialPoster{display:block;width:100%;height:auto;margin:18px 0;border:3px solid #000;border-radius:14px;box-shadow:0 0 0 2px #46688f;object-fit:contain;background:#07101d}
.modsTutorialSteps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.modsTutorialSteps article{background:#091525;border:2px solid #34557e;border-radius:14px;padding:16px}
.modsTutorialSteps h3{margin:0 0 10px;color:#ffe000;font-size:20px}
.modsTutorialSteps ol{margin:0;padding-left:22px}
.modsTutorialSteps li{margin:8px 0}
.modsImportant{margin:12px 0 0;padding:10px 12px;border:2px solid #ffb000;border-radius:10px;background:#382500;color:#fff3bf;font-weight:900}
.modsCopyCommand{display:inline-flex;align-items:center;gap:10px;margin-left:6px;padding:8px 10px;border:2px solid #ffe000;border-radius:9px;background:#020710;color:#fff;cursor:pointer;font-weight:900}
.modsCopyCommand code{border:0;padding:0;background:transparent;color:#83d9ff}
.modsCopyCommand span{color:#ffe000}
@media(max-width:760px){.modsTutorialSteps{grid-template-columns:1fr}.modsTutorialPoster{border-radius:10px}.modsCopyCommand{display:flex;margin:8px 0 0;width:100%;justify-content:space-between}}

/* V415 — progression des gros fichiers et vidéos jusqu’à 50 MB. */
.modsUploadProgress{width:100%;height:18px;accent-color:#19c9de}.modsUploadProgress[hidden]{display:none}

/* V416 — galerie d'images + vidéo facultative */
.modsDetailMedia{display:grid;gap:12px;background:#050a12;padding:12px}
.modsGallery{display:grid;gap:8px;min-height:260px}
.modsGallery1{grid-template-columns:1fr}
.modsGallery2{grid-template-columns:repeat(2,1fr)}
.modsGallery3{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,minmax(150px,1fr))}
.modsGallery3 .modsGalleryItem:first-child{grid-row:1 / span 2}
.modsGallery4{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,minmax(150px,1fr))}
.modsGalleryItem{border:0;padding:0;min-height:180px;background:#02060c;overflow:hidden;cursor:zoom-in}
.modsGalleryItem img{width:100%;height:100%;object-fit:cover;display:block}
.modsDetailVideo{background:#000;max-height:520px;display:grid;place-items:center}
.modsDetailVideo video{width:100%;max-height:520px;display:block;background:#000}
.modsDescriptionEmpty{opacity:.65;font-style:italic}
.modsImageLightbox{position:fixed;inset:0;z-index:12050;background:rgba(0,0,0,.94);display:flex;align-items:center;justify-content:center;padding:24px}
.modsImageLightbox[hidden]{display:none}
.modsImageLightbox img{max-width:96vw;max-height:92vh;object-fit:contain}
.modsLightboxClose{position:fixed;top:18px;right:18px;width:48px;height:48px;border-radius:50%;border:3px solid #000;background:#ff5c62;color:#fff;font-size:28px;font-weight:1000;cursor:pointer}
@media(max-width:600px){.modsDetailMedia{padding:6px}.modsGallery{min-height:220px}.modsGallery2,.modsGallery3,.modsGallery4{gap:4px}.modsGallery3{grid-template-rows:repeat(2,minmax(110px,1fr))}.modsGallery4{grid-template-rows:repeat(2,minmax(110px,1fr))}.modsGalleryItem{min-height:110px}}

/* V433 — pièces jointes dans les commentaires */
.modCommentTools{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.modCommentFile{display:inline-flex;align-items:center;gap:6px;padding:10px 12px;border:2px solid #47688f;border-radius:10px;background:#172944;font-weight:900;cursor:pointer}.modCommentFile input{display:none}.modCommentFileName{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#b9cbe2;font-size:12px}.modCommentProgress{width:130px}.modCommentMedia{display:block;max-width:min(100%,620px);max-height:460px;margin-top:10px;border:2px solid #36577e;border-radius:12px;background:#020710;object-fit:contain}@media(max-width:700px){.modCommentTools{align-items:stretch}.modCommentTools .modsPrimary,.modCommentFile{justify-content:center}.modCommentMedia{width:100%}}


/* ===== css/v409-community-edit-fixes.css ===== */
/* V409 — édition des créations, fichiers .pak iPhone et fenêtre du patch stable */

/* La fenêtre du patch ne fait plus défiler son en-tête avec toute la page.
   Seul le contenu sous le titre défile, donc la croix reste toujours au bon endroit. */
#patchModalV296.modalV296.open{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  padding:max(82px,calc(env(safe-area-inset-top) + 12px)) 8px 8px!important;
}
#patchModalV296 .patchPanelV296{
  display:flex!important;
  flex-direction:column!important;
  width:min(1180px,100%)!important;
  max-height:calc(100dvh - 90px)!important;
  margin:0 auto!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
#patchModalV296 .patchPanelV296>header{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  flex:0 0 auto!important;
  min-height:72px!important;
  padding:14px 72px 14px 18px!important;
  overflow:hidden!important;
  border-radius:8px 8px 0 0!important;
}
#patchModalV296 .patchPanelV296>header h2{
  min-width:0!important;
  overflow-wrap:anywhere!important;
  line-height:1.08!important;
}
#patchModalV296 .patchPanelV296>header button{
  position:absolute!important;
  top:10px!important;
  right:10px!important;
  left:auto!important;
  bottom:auto!important;
  margin:0!important;
  transform:none!important;
}
#patchModalV296 .modalBodyV296{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
}

/* Les sauts de ligne français / anglais restent visibles sur les cartes de mods. */
.modBody p{
  white-space:pre-wrap!important;
  overflow-wrap:anywhere!important;
}

/* Boutons propriétaire des mods. */
.modOwnerActions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:2px;
}
.modEdit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:11px 14px;
  border:2px solid #000;
  border-radius:11px;
  background:#2d8cff;
  color:#fff;
  font-weight:1000;
  cursor:pointer;
  text-decoration:none;
}
.modEdit:hover{filter:brightness(1.08)}
.modOwnerActions .modEdit{width:100%}

/* Bouton Modifier des builds, assorti aux actions existantes. */
.cbEditOwn{
  background:#2d8cff!important;
  color:#fff!important;
  border:3px solid #05080d!important;
  border-radius:12px!important;
  padding:10px 14px!important;
  font-weight:1000!important;
  box-shadow:0 3px 0 #05080d!important;
  white-space:nowrap!important;
}
.cbEditOwn:hover{filter:brightness(1.08)!important;transform:translateY(-1px)!important}
.cbEditOwn.compact{
  width:52px!important;
  height:52px!important;
  overflow:hidden!important;
  padding:0!important;
  font-size:0!important;
}
.cbEditOwn.compact::before{content:'✏️';font-size:20px!important}

/* Les champs de fichiers restent confortables sur Safari iPhone. */
.modsForm input[type="file"]{
  min-height:48px;
  font-size:16px;
}

@media(max-width:760px){
  #patchModalV296.modalV296.open{
    padding:max(74px,calc(env(safe-area-inset-top) + 8px)) 4px 4px!important;
  }
  #patchModalV296 .patchPanelV296{
    max-height:calc(100dvh - 78px)!important;
    border-radius:12px!important;
  }
  #patchModalV296 .patchPanelV296>header{
    min-height:68px!important;
    padding:10px 62px 10px 12px!important;
  }
  #patchModalV296 .patchPanelV296>header h2{
    font-size:clamp(21px,7.2vw,31px)!important;
  }
  #patchModalV296 .patchPanelV296>header button{
    top:8px!important;
    right:8px!important;
  }
  .modsDetailActions .modEdit,
  .modsDetailActions .modDelete,
  .modsDetailActions .modDownload,
  .modsDetailActions .modsLike{
    width:100%;
  }
  .cbEditOwn:not(.compact){padding:8px 10px!important}
}


/* ===== css/v410-community-build-tuning.css ===== */
/* V410 — cartes T.U.N.I.N.G communautaires identiques aux costumes + navigation mobile */

/* Les cartes du créateur et des builds publiés réutilisent réellement la carte officielle.
   Les anciennes hauteurs fixes qui coupaient les noms longs sont neutralisées. */
#cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot.gameSlot,
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.gameSlot{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:74px!important;
  margin:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  text-align:left!important;
  cursor:default!important;
}
#cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot.gameSlot{
  cursor:pointer!important;
}
#cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot.gameSlot.spBand,
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.gameSlot.spBand{
  height:auto!important;
  min-height:94px!important;
}

/* Zone de texte : elle garde la place de l'hexagone et du badge MAX. */
#cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot .slotBandText,
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot .slotBandText{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  min-height:74px!important;
  max-height:none!important;
  padding:6px 86px 29px 10px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  text-align:left!important;
}
#cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot.spBand .slotBandText,
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.spBand .slotBandText{
  min-height:94px!important;
  padding:7px 91px 23px 11px!important;
}

/* Le nom utilise la taille calculée dans le JavaScript. Plus il est long, plus il rétrécit. */
#cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot .equippedName,
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot .equippedName{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  max-height:2.08em!important;
  margin:0!important;
  color:#000!important;
  font-size:var(--equip-font,20px)!important;
  font-weight:1000!important;
  line-height:1.04!important;
  white-space:normal!important;
  overflow:hidden!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  text-overflow:clip!important;
  text-shadow:none!important;
}
#cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot.spBand .equippedName,
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.spBand .equippedName{
  max-height:2.12em!important;
  color:#fff!important;
  font-size:var(--equip-font,18px)!important;
  line-height:1.06!important;
  text-shadow:2px 2px 0 #000!important;
}
#cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot .equippedChar,
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot .equippedChar{
  display:block!important;
  width:100%!important;
  margin:0 0 2px!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-shadow:2px 2px 0 #000!important;
}

/* MAX est maintenant présent dans le créateur comme sur la page Costumes. */
#cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot .slotMax,
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot .slotMax{
  display:inline-flex!important;
  left:9px!important;
  bottom:6px!important;
  z-index:7!important;
  font-size:10px!important;
  padding:2px 6px!important;
}
#cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot.spBand .slotMax,
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.spBand .slotMax{
  left:10px!important;
  bottom:7px!important;
}

/* Hexagone officiel, sans changement de position pendant les rerendus. */
#cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot .slotGem,
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot .slotGem{
  position:absolute!important;
  top:50%!important;
  right:7px!important;
  width:64px!important;
  height:64px!important;
  margin:0!important;
  transform:translateY(-50%)!important;
}
#cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot.spBand .slotGem,
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.spBand .slotGem{
  right:6px!important;
  width:70px!important;
  height:70px!important;
}

/* Tailles des cartes dans les listes et dans la fenêtre de détail. */
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.mini.gameSlot{
  min-height:68px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.mini.gameSlot.spBand{
  min-height:82px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.mini .slotBandText{
  min-height:68px!important;
  padding:5px 69px 25px 8px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.mini.spBand .slotBandText{
  min-height:82px!important;
  padding:6px 73px 21px 9px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.mini .slotGem{
  width:52px!important;
  height:52px!important;
  right:6px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.mini.spBand .slotGem{
  width:58px!important;
  height:58px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.mini .slotMax{
  font-size:8px!important;
}

.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.micro.gameSlot{
  min-height:56px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.micro.gameSlot.spBand{
  min-height:70px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.micro .slotBandText{
  min-height:56px!important;
  padding:4px 55px 21px 6px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.micro.spBand .slotBandText{
  min-height:70px!important;
  padding:5px 59px 18px 7px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.micro .slotGem{
  width:40px!important;
  height:40px!important;
  right:5px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.micro.spBand .slotGem{
  width:46px!important;
  height:46px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.micro .slotMax{
  left:6px!important;
  bottom:4px!important;
  padding:1px 4px!important;
  font-size:7px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.micro .equippedChar{
  font-size:8px!important;
}

.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.detail.gameSlot{
  min-height:98px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.detail.gameSlot.spBand{
  min-height:104px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.detail .slotBandText{
  min-height:98px!important;
  padding:8px 98px 31px 13px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.detail.spBand .slotBandText{
  min-height:104px!important;
  padding:8px 102px 25px 13px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.detail .slotGem{
  width:78px!important;
  height:78px!important;
  right:8px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.detail.spBand .slotGem{
  width:84px!important;
  height:84px!important;
}
.cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.detail .slotMax{
  left:12px!important;
  bottom:8px!important;
  font-size:11px!important;
}

/* La liste compatible respecte aussi sa taille dynamique au lieu d'imposer 20 px. */
#cbBuilderContent .cbOfficialCreatorScreenV308 .tuningOptionName{
  font-size:var(--option-font,20px)!important;
  line-height:1.03!important;
}

/* Le bouton Retour des builds reste au-dessus des anciens gestionnaires de navigation. */
.cbCommunityBuildBack{
  position:relative;
  z-index:2;
}

/* Cibles de l'auto-défilement mobile. */
#cbBuilderContent [data-cb-slot-anchor],
#cbBuilderContent [data-cb-picker]{
  scroll-margin-top:12px;
  scroll-margin-bottom:12px;
}

@media(max-width:1050px){
  #cbBuilderContent .cbOfficialCreatorScreenV308 .gameTuningArea{
    grid-template-columns:minmax(0,1fr)!important;
  }
  #cbBuilderContent .cbOfficialCreatorScreenV308 .tuningColumns.gameSlots{
    grid-template-columns:minmax(0,1fr)!important;
  }
  #cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot.gameSlot{
    touch-action:manipulation!important;
  }
}

@media(max-width:700px){
  #cbBuilderContent .cbOfficialCreatorScreenV308{
    margin:0 8px 14px!important;
  }
  #cbBuilderContent .cbOfficialCreatorScreenV308 .gameTuningArea{
    padding:8px!important;
  }
  #cbBuilderContent .cbOfficialCreatorScreenV308 .slotList{
    padding:8px!important;
  }
  #cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot.gameSlot{
    min-height:70px!important;
  }
  #cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot.gameSlot.spBand{
    min-height:88px!important;
  }
  #cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot .slotBandText{
    min-height:70px!important;
    padding:5px 74px 26px 8px!important;
  }
  #cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot.spBand .slotBandText{
    min-height:88px!important;
    padding:6px 78px 21px 9px!important;
  }
  #cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot .slotGem{
    width:56px!important;
    height:56px!important;
    right:6px!important;
  }
  #cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot.spBand .slotGem{
    width:62px!important;
    height:62px!important;
  }
  #cbBuilderContent .cbOfficialCreatorScreenV308 .cbCommunityCreatorSlot .slotMax{
    left:7px!important;
    bottom:5px!important;
    font-size:9px!important;
  }
  .cbCostumeTuningGridV306.detail{
    padding:8px!important;
    gap:10px!important;
  }
  .cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.detail.gameSlot,
  .cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.detail.gameSlot.spBand{
    min-height:88px!important;
  }
  .cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.detail .slotBandText,
  .cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.detail.spBand .slotBandText{
    min-height:88px!important;
    padding:6px 79px 25px 9px!important;
  }
  .cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.detail .slotGem,
  .cbCostumeTuningGridV306 .cbOfficialBuildTuningSlot.detail.spBand .slotGem{
    width:62px!important;
    height:62px!important;
    right:6px!important;
  }
}


/* ===== css/v411-community-plus.css ===== */
/* MHUR Nexus V411 — bibliothèque, comparaison, réactions, historique et profils */
.cbCopyBuild,.cbCompareBuild,.modInstallGuide,.modReport,.modFavorite{
  border:2px solid #44597a;border-radius:10px;background:#17243a;color:#fff;padding:9px 12px;font-weight:900;
}
.cbCopyBuild:hover,.cbCompareBuild:hover,.modInstallGuide:hover{background:#213756}
.cbCopyBuild.compact,.cbCompareBuild.compact{font-size:12px;padding:6px 8px}
.cbDetailVersion,.cbInspiredBy{display:inline-flex;align-items:center;gap:6px;margin:5px 8px 5px 0;padding:7px 10px;border-radius:999px;background:#17263b;border:1px solid #49658d;font-weight:900}
.cbCompatibilityWarning{margin:12px 0;padding:12px 14px;border:2px solid #d39a00;border-radius:12px;background:#4b3700;color:#ffe37a;font-weight:900;line-height:1.35}
.cbInspiredDraft{grid-column:1/-1;padding:10px 12px;border-radius:10px;background:#112b3f;border:1px solid #2ea9d3}
.mhurBuildReactions{margin-top:20px;padding:18px;border:2px solid #3c526f;border-radius:14px;background:#0d1726}
.mhurBuildReactions h3{margin:0 0 12px}.mhurReactionButtons{display:flex;gap:10px;flex-wrap:wrap}
.mhurReactionButtons button{padding:10px 13px;border:2px solid #415777;border-radius:999px;background:#17253b;color:white;font-weight:900}
.mhurReactionButtons button.active{background:#ffe100;color:#111;border-color:#111}.mhurReactionButtons button b{margin-left:5px}
.mhurPlusOverlay{position:fixed;inset:0;z-index:10050;background:rgba(1,4,9,.86);display:none;padding:20px;overflow:auto}
.mhurPlusOverlay.open{display:flex;align-items:flex-start;justify-content:center}
.mhurPlusPanel{position:relative;width:min(1180px,100%);margin:auto;background:#101a29;border:3px solid #49658d;border-radius:18px;color:#fff;box-shadow:0 20px 70px #000;overflow:hidden}
.mhurPlusPanel>header{padding:20px 70px 16px 22px;background:#17263b;border-bottom:1px solid #405778}.mhurPlusPanel>header h2{margin:0;font-size:30px}.mhurPlusPanel>header p{margin:7px 0 0;color:#c9d7ec}
.mhurPlusClose{position:absolute;right:14px;top:12px;width:48px;height:48px;border-radius:50%;background:#ff5c65;color:white;font-size:30px;font-weight:900;border:3px solid #000;z-index:2}
.mhurPlusBody{padding:20px;max-height:78vh;overflow:auto}.mhurPlusLoading{padding:30px;text-align:center;font-weight:900}
.mhurPlusToast{position:fixed;left:50%;bottom:24px;z-index:11000;transform:translate(-50%,30px);opacity:0;pointer-events:none;background:#ffe100;color:#111;border:3px solid #000;border-radius:14px;padding:14px 18px;font-weight:900;transition:.2s;max-width:min(620px,90vw);text-align:center}
.mhurPlusToast.show{opacity:1;transform:translate(-50%,0)}
.mhurCompareGrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.mhurCompareBuild{min-width:0;background:#0a111c;border:2px solid #3b526f;border-radius:14px;padding:14px;overflow:hidden}
.mhurCompareBuild>header{display:grid;grid-template-columns:100px 1fr;gap:12px;align-items:center;margin-bottom:12px}.mhurCompareBuild>header img{width:100px;height:100px;object-fit:cover;border-radius:10px;background:#18263a}.mhurCompareBuild h3{margin:0 0 6px;font-size:24px}.mhurCompareBuild p,.mhurCompareBuild small{display:block;margin:3px 0;color:#c8d7ea}
.mhurCompareDiff{margin-top:18px;background:#0b1421;border-radius:14px;padding:16px}.mhurCompareDiff>div{display:grid;grid-template-columns:150px 1fr 30px 1fr;gap:10px;align-items:center;padding:10px;border-bottom:1px solid #31445e}.mhurCompareDiff span{overflow-wrap:anywhere}.mhurCompareDiff code{color:#ffe100}
.mhurLibrarySection{margin-bottom:24px}.mhurLibraryGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.mhurLibraryGrid button{display:grid;grid-template-columns:80px 1fr;gap:12px;align-items:center;text-align:left;background:#17253a;color:white;border:2px solid #3d5575;border-radius:12px;padding:9px}.mhurLibraryGrid img{width:80px;height:72px;object-fit:cover;border-radius:8px;background:#0a111a}.mhurLibraryGrid span{min-width:0}.mhurLibraryGrid b,.mhurLibraryGrid small{display:block;overflow-wrap:anywhere}.mhurLibraryGrid small{color:#c5d4e8;margin-top:6px}
.mhurWeeklyCreators{margin-bottom:18px}.mhurWeeklyCreators article{display:grid;grid-template-columns:42px 48px 1fr auto;gap:10px;align-items:center;padding:10px;border-bottom:1px solid #344962}.mhurWeeklyCreators img,.mhurWeeklyCreators article>span{width:44px;height:44px;border-radius:50%;object-fit:cover;display:grid;place-items:center;background:#233650}.mhurWeeklyCreators em{color:#ffe100;font-weight:900}
.mhurWeeklyColumns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.mhurWeeklyColumns section{background:#0b1421;border:2px solid #354b68;border-radius:14px;padding:12px}.mhurWeeklyColumns button{width:100%;display:grid;grid-template-columns:44px 62px 1fr;gap:9px;align-items:center;text-align:left;background:#17253a;color:white;border:0;border-bottom:1px solid #33465f;padding:8px}.mhurWeeklyColumns button img{width:58px;height:52px;object-fit:cover;border-radius:7px}.mhurWeeklyColumns button span,.mhurWeeklyColumns button small{display:block}.mhurWeeklyColumns button small{color:#cbd8e8;margin-top:4px}
.modFavorite{padding:5px 10px}.modFavorite.active{background:#ffe100;color:#111;border-color:#111}.modStats .modFavorite{margin-left:auto}
.modVersionHistory{margin-top:24px;padding-top:14px;border-top:2px solid #30445f}.modVersionRow{padding:12px;margin:10px 0;border:1px solid #3c526e;border-radius:10px;background:#0d1725}.modVersionRow>div{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.modVersionRow b{color:#ffe100}.modVersionRow small{margin-left:auto;color:#b9c9dd}.modVersionRow p{white-space:pre-wrap}.modVersionRow a{display:inline-block;background:#ffe100;color:#111;padding:9px 12px;border-radius:9px;text-decoration:none;font-weight:900}
.mhurInstallPath{display:flex;gap:10px;align-items:center;padding:12px;background:#08101b;border-radius:10px;overflow:auto}.mhurInstallPath code{flex:1;white-space:nowrap}.mhurInstallPath button,.mhurPlusPrimary{background:#ffe100;color:#111;border:2px solid #111;border-radius:9px;padding:10px 14px;font-weight:900}.mhurInstallSteps{font-size:18px;line-height:1.55}.mhurInstallSteps li{margin:12px 0}
.mhurPlusField{display:block;margin:12px 0;font-weight:900}.mhurPlusField select,.mhurPlusField textarea{display:block;width:100%;margin-top:7px;background:#08111d;color:white;border:2px solid #405778;border-radius:10px;padding:12px}.mhurPlusField textarea{min-height:130px;resize:vertical}
.mhurProfileBadges{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.mhurProfileBadge{display:inline-flex;padding:7px 10px;border-radius:999px;background:#ffe100;color:#111;font-size:13px;font-weight:900;border:2px solid #111}.mhurProfileStats{grid-template-columns:repeat(4,1fr)!important}.mhurProfileMod .mhurProfileBuildImg{display:grid;place-items:center;font-size:30px}
#drawer [data-mhur-plus]{font:inherit;border:0}
@media(max-width:850px){
  .mhurPlusOverlay{padding:6px}.mhurPlusPanel{border-radius:12px}.mhurPlusBody{padding:12px;max-height:82vh}
  .mhurCompareGrid,.mhurWeeklyColumns{grid-template-columns:1fr}.mhurCompareDiff>div{grid-template-columns:1fr}.mhurCompareDiff>div b{display:none}
  .mhurReactionButtons button{flex:1 1 45%;font-size:13px}.cbCopyBuild,.cbCompareBuild{font-size:12px;padding:7px 8px}
  .mhurProfileStats{grid-template-columns:repeat(2,1fr)!important}.mhurWeeklyCreators article{grid-template-columns:36px 42px 1fr}.mhurWeeklyCreators em{grid-column:3}
}
.cbCardVersion{color:#ffe100!important;font-weight:900}


/* ===== css/v417-mobile-modal-fixes.css ===== */
/* MHUR Nexus V417 — modales mobiles, navigation et titres */
.mhurPlusPanel>header,
.mhurPlusPanel>header h2,
.mhurPlusPanel>header p,
#patchModalV296 .patchPanelV296>header,
#patchModalV296 .patchPanelV296>header h2{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.mhurPlusPanel>header h2{line-height:1.08!important;text-wrap:balance}
.mhurPlusPanel>header p{line-height:1.35!important}
.mhurWeeklyCreators h3,.mhurWeeklyColumns h3{margin:0 0 12px;line-height:1.2}
.mhurWeeklyCreators article strong,.mhurWeeklyCreators article em{min-width:0;overflow-wrap:anywhere}
.cbShareCode{white-space:normal!important;overflow-wrap:anywhere!important}

@media(max-width:760px){
  .mhurPlusOverlay{padding:max(72px,calc(env(safe-area-inset-top) + 8px)) 6px 6px!important;align-items:flex-start!important}
  .mhurPlusPanel{width:100%!important;margin:0 auto!important;max-height:calc(100dvh - 80px)!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
  .mhurPlusPanel>header{flex:0 0 auto!important;padding:16px 72px 14px 16px!important}
  .mhurPlusPanel>header h2{font-size:clamp(28px,8vw,42px)!important;line-height:1.05!important}
  .mhurPlusPanel>header p{font-size:15px!important;margin-top:8px!important}
  .mhurPlusClose{width:54px!important;height:54px!important;right:10px!important;top:10px!important}
  .mhurPlusBody{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important}
  .mhurWeeklyCreators article{grid-template-columns:34px 46px minmax(0,1fr)!important;gap:9px!important}
  .mhurWeeklyCreators em{grid-column:3!important;margin-top:2px}
  .mhurWeeklyColumns button{grid-template-columns:38px 64px minmax(0,1fr)!important}
  .mhurWeeklyColumns button span{min-width:0!important;overflow-wrap:anywhere!important}
  #patchModalV296 .patchPanelV296>header h2{font-size:clamp(22px,6.4vw,30px)!important;line-height:1.05!important;display:-webkit-box!important;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden!important}
}


/* ===== css/v422-route-stats-fixes.css ===== */
/* V422 — routes persistantes, tableaux compacts et stabilité des modales */
.skillText .tables{max-width:100%}
.skillText .toggle{width:min(100%,760px);border-radius:0}
.skillText .simpleTable{width:max-content;max-width:100%;min-width:0;overflow-x:auto;background:#20262b}
.skillText .dataTable{width:auto;min-width:0;max-width:100%;table-layout:auto}
.skillText .dataTable th,.skillText .dataTable td{white-space:nowrap}
.skillText .dataTable th:last-child,.skillText .dataTable td:last-child{padding-right:22px}
@media(max-width:760px){
  .skillText .toggle{width:100%}
  .skillText .simpleTable{width:100%}
  .skillText .dataTable{min-width:max-content}
}
.modsLike,.modFavorite,.modInstallGuide,.modReport,.modEdit,.modDelete{touch-action:manipulation}


/* ===== css/v424-route-menu-fixes.css ===== */
/* V423 — titres de statistiques centrés, pleine largeur et menu harmonisé */
.skillText .tables{
  width:100%;
  max-width:none;
}
.skillText .toggle{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%!important;
  min-height:48px;
  padding:11px 54px!important;
  border-radius:0!important;
  text-align:center!important;
  font-size:17px!important;
  font-weight:900!important;
  line-height:1.25;
  letter-spacing:.01em;
}
.skillText .toggle .statsToggleTitle{
  display:block;
  width:100%;
  text-align:center;
}
.skillText .toggle .statsToggleArrow{
  position:absolute;
  right:20px;
  top:50%;
  transform:translateY(-50%);
  font-size:18px;
  line-height:1;
  transition:transform .18s ease;
}
.skillText .toggle[aria-expanded="true"] .statsToggleArrow{
  transform:translateY(-50%) rotate(180deg);
}
.skillText .simpleTable{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow-x:auto;
}
.skillText .dataTable{
  width:100%!important;
  min-width:100%!important;
  max-width:none!important;
  table-layout:fixed!important;
}
.skillText .dataTable th,
.skillText .dataTable td{
  text-align:center!important;
  white-space:normal!important;
  vertical-align:middle;
  padding:10px 12px!important;
}
.skillText .dataTable th:first-child,
.skillText .dataTable td:first-child{
  width:22%;
}
#drawer .navItem[data-mhur-plus]{
  font-family:inherit!important;
  font-size:inherit!important;
  font-weight:inherit!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
  text-transform:none!important;
}
#drawer .navItem[data-mhur-plus] span{
  font:inherit!important;
}
@media(max-width:760px){
  .skillText .toggle{
    min-height:46px;
    padding:10px 44px!important;
    font-size:15px!important;
  }
  .skillText .toggle .statsToggleArrow{right:15px}
  .skillText .dataTable{min-width:560px!important;table-layout:auto!important}
  .skillText .dataTable th,.skillText .dataTable td{white-space:nowrap!important}
}


/* V424 — même typographie que les autres entrées Communauté. */
#drawer button.navItem[data-mhur-plus],
#drawer button.navItem[data-mhur-plus] > span{
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:20px!important;
  font-weight:900!important;
  font-style:normal!important;
  line-height:1.2!important;
  letter-spacing:0!important;
}
@media(max-width:760px){
  #drawer button.navItem[data-mhur-plus],
  #drawer button.navItem[data-mhur-plus] > span{font-size:20px!important}
}


/* ===== css/v412-community-quality.css ===== */
/* MHUR Nexus V412 — brouillons, partage, validation, sécurité et notifications */
.v412Toast{position:fixed;left:50%;bottom:90px;z-index:100000;transform:translate(-50%,25px);opacity:0;pointer-events:none;background:#07111f;color:#fff;border:2px solid #ffe100;border-radius:12px;padding:12px 18px;font-weight:900;box-shadow:0 10px 35px #000b;transition:.2s}.v412Toast.show{transform:translate(-50%,0);opacity:1}
.v412Overlay{position:fixed;inset:0;z-index:99990;background:#020713df;display:none;place-items:center;padding:18px}.v412Overlay.open{display:grid}.v412Panel{width:min(760px,100%);max-height:92vh;overflow:auto;background:#101923;color:#fff;border:3px solid #5678a6;border-radius:18px;box-shadow:0 25px 80px #000;position:relative}.v412Panel>header{padding:20px 64px 15px 20px;border-bottom:1px solid #43526a}.v412Panel h2{margin:0;font-size:28px}.v412Close{position:absolute;right:12px;top:10px;width:46px;height:46px;border-radius:50%;border:3px solid #05070b;background:#ff5a62;color:#fff;font-size:30px;font-weight:900}.v412Body{padding:20px}
.v412DraftBar,.v412ModDraftBar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:12px;background:#07111f;border:2px solid #416b9f;border-radius:12px}.v412DraftBar>div:first-child,.v412ModDraftBar>div:first-child{display:flex;flex-direction:column}.v412DraftBar small,.v412ModDraftBar small{color:#aebed2}.v412DraftActions,.v412ModDraftBar>div:last-child{display:flex;gap:8px;flex-wrap:wrap}.v412DraftBar button,.v412ModDraftBar button{border:2px solid #111;border-radius:8px;background:#ffe100;color:#111;padding:8px 10px;font-weight:900}
.v412Validation{margin:14px 0;padding:13px 15px;border-radius:12px;border:2px solid #52657d;background:#09121e}.v412Validation.ok{border-color:#26d878}.v412Validation.error{border-color:#ff5862}.v412Validation header{display:flex;justify-content:space-between;gap:12px}.v412Validation ul{margin:9px 0 0;padding-left:22px}.v412Validation li{margin:4px 0}.v412Validation details{margin-top:8px;color:#ffd95a}
.cbShareCode{display:inline-flex;align-items:center;gap:4px;margin-top:7px;padding:6px 10px;border:0;border-radius:8px;background:#07111f;color:#ffe100;font:inherit;font-weight:900;cursor:pointer;transition:transform .15s ease,background .15s ease,color .15s ease}.cbShareCode:hover{transform:translateY(-1px)}.cbShareCode:focus-visible{outline:3px solid #fff;outline-offset:2px}.cbShareCode.copied{background:#147a3d;color:#fff}.cbShareBuild,.v412ImportBuild{border:2px solid #111;border-radius:9px;background:#1ecae0;color:#07111f;padding:9px 12px;font-weight:900}.v412ImportBuild{margin:8px 0}
.v412ShareCode{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;background:#07111f;border:2px solid #ffe100;border-radius:14px;padding:16px}.v412ShareCode small{grid-column:1}.v412ShareCode strong{font-size:30px;color:#ffe100;letter-spacing:2px}.v412ShareCode button,.v412ShareActions button{border:2px solid #111;border-radius:9px;background:#ffe100;color:#111;padding:10px 14px;font-weight:900}.v412ShareLink{display:block;margin:16px 0;font-weight:900}.v412ShareLink input{width:100%;margin-top:6px;padding:11px;background:#07111f;color:#fff;border:2px solid #405778;border-radius:9px}.v412ShareActions{display:flex;gap:10px;flex-wrap:wrap}
.modSecurityBadge{display:inline-flex;align-items:center;gap:5px;margin-top:7px;padding:5px 8px;border-radius:999px;font-size:12px;font-weight:900;border:1px solid currentColor}.modSecurityBadge.verified{color:#48e48c;background:#07331e}.modSecurityBadge.checked{color:#65d8ff;background:#082b39}.modSecurityBadge.warning{color:#ffd35b;background:#352800}.modSecurityBadge.blocked{color:#ff6972;background:#39090d}.modSecurityPanel{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0;padding:12px;background:#07111f;border-radius:10px}.modSecurityPanel .modSecurityBadge{margin:0}.modSecurityPanel code{color:#8ee8ff}.modSecurityPanel small{flex-basis:100%;color:#b6c5d7}
.v412NotificationTools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px}.v412NotificationTools button{border:2px solid #405778;border-radius:9px;background:#07111f;color:#fff;padding:9px 11px;font-weight:900}.v412NotificationTools button.active{background:#ffe100;color:#111}.v412NotificationList{display:grid;gap:10px}.v412Notification{display:grid;grid-template-columns:1fr auto;border:2px solid #3b4d67;border-radius:12px;background:#09131f;overflow:hidden}.v412Notification.unread{border-color:#ffe100;background:#14223a}.v412NotificationOpen{display:grid;grid-template-columns:42px 1fr;gap:10px;text-align:left;border:0;background:transparent;color:#fff;padding:13px}.v412NotificationOpen>span{font-size:27px}.v412NotificationOpen b{display:block;font-size:17px}.v412NotificationOpen p{margin:4px 0;white-space:pre-wrap;color:#d5e0ee}.v412NotificationOpen small{color:#93a7c0}.v412NotificationDelete{border:0;border-left:1px solid #3b4d67;background:#141c28;color:#ff7b83;font-size:24px;padding:0 14px}.v412Empty,.v412Loading{text-align:center;padding:35px;color:#b9c8da}.v412Connectivity{position:fixed;top:10px;left:50%;z-index:100001;transform:translate(-50%,-80px);opacity:0;background:#1c8f55;color:white;border:2px solid #07111f;border-radius:999px;padding:9px 15px;font-weight:900;transition:.25s}.v412Connectivity.offline{background:#b74049}.v412Connectivity.show{transform:translate(-50%,0);opacity:1}
@media(max-width:760px){.v412Overlay{padding:5px}.v412Panel{max-height:96vh;border-radius:12px}.v412Body{padding:12px}.v412DraftBar,.v412ModDraftBar{align-items:flex-start;flex-direction:column}.v412ShareCode strong{font-size:23px}.v412ShareActions button{flex:1 1 45%}.v412NotificationOpen{grid-template-columns:34px 1fr;padding:10px}.v412NotificationOpen>span{font-size:22px}}

/* V413 — corrections visibles des brouillons et des actions de build */
.v412Overlay{z-index:2147483647!important;isolation:isolate}
.v412Toast,.v412Connectivity{z-index:2147483647!important}
.cbDetailHero{overflow:hidden!important;box-sizing:border-box!important}
.cbDetailHero>div:nth-child(2){min-width:0!important;max-width:100%!important}
.cbDetailHero .cbBuildActions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:stretch!important;
  align-content:flex-start!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.cbDetailHero .cbBuildActions>button{
  flex:0 1 auto!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  line-height:1.15!important;
}
.cbDetailHero .cbShareBuild{background:#1ecae0!important;color:#07111f!important}
.cbCompareBuild.selected{background:#ffe100!important;color:#111!important;border-color:#111!important;box-shadow:0 0 0 2px #fff8 inset}
.v412DraftBar [data-v412-clear],.v412ModDraftBar [data-v412-mod-clear]{background:#ff6570!important;color:#111!important}
@media(max-width:760px){
  .cbDetailHero .cbBuildActions>button{flex:1 1 calc(50% - 8px)!important}
  .cbDetailHero .cbBuildActions>.cbFavorite,.cbDetailHero .cbBuildActions>.cbHeart{flex:0 0 auto!important}
}
.mhurPlusOverlay{z-index:2147483647!important}
.mhurPlusToast{z-index:2147483647!important}


/* ===== css/v425-fullwidth-tier-date.css ===== */
/* V425 — tableaux de compétences sur toute la largeur + date de création des Tier Lists. */
.skillText .simpleTable{display:block!important;width:100%!important;max-width:100%!important;min-width:100%!important}
.skillText table.dataTable{display:table!important;width:100%!important;min-width:100%!important;max-width:100%!important;table-layout:fixed!important;border-collapse:collapse!important}
.skillText .dataTable thead{display:table-header-group!important}
.skillText .dataTable tbody{display:table-row-group!important}
.skillText .dataTable tr{display:table-row!important;width:100%!important}
.skillText .dataTable th,.skillText .dataTable td{display:table-cell!important;width:auto!important;text-align:center!important;vertical-align:middle!important}
.skillText .dataTable th:first-child,.skillText .dataTable td:first-child{width:auto!important;text-align:center!important}
@media(max-width:760px){.skillText .simpleTable{overflow-x:auto!important}.skillText table.dataTable{min-width:560px!important}}


/* ===== css/v426-details-routes.css ===== */
/* V426 — détails fermés par défaut + fermeture fiable. */
.skillText .simpleTable.hidden{
  display:none!important;
}
.skillText .toggle{
  position:relative!important;
  width:100%!important;
}
.skillText .statsToggleTitle{
  display:block!important;
  width:100%!important;
  padding:0 42px!important;
  text-align:center!important;
}
.skillText .statsToggleArrow{
  position:absolute!important;
  right:16px!important;
  top:50%!important;
  transform:translateY(-50%) rotate(0deg)!important;
  transition:transform .16s ease!important;
}
.skillText .toggle[aria-expanded="true"] .statsToggleArrow{
  transform:translateY(-50%) rotate(180deg)!important;
}


/* ===== css/v427-navigation-details.css ===== */
/* V427 — la classe fermée gagne sur tous les anciens display:block!important. */
.skillText .simpleTable.hidden,
.skillText .simpleTable[hidden],
.skillText .simpleTable[aria-hidden="true"]{
  display:none!important;
}
.skillText .simpleTable:not(.hidden):not([hidden]){
  display:block!important;
  width:100%!important;
}


/* ===== css/nexus-header-links.css ===== */
/* MHUR Nexus — boutons Réseaux sociaux et Youtubeurs */
.nexusHeaderLinks{position:absolute;left:76px;top:11px;display:flex;gap:9px;z-index:45}
.nexusHeaderBtn{height:50px;padding:0 15px;border:2px solid #49658d;border-radius:14px;background:#132139;color:#fff;font-weight:900;display:flex;align-items:center;gap:9px;box-shadow:0 4px 12px rgba(0,0,0,.22);white-space:nowrap}
.nexusHeaderBtn:hover,.nexusHeaderBtn[aria-expanded="true"]{border-color:#ffe000;background:#1d3152;color:#ffe000}
.nexusHeaderIcon{font-size:21px;line-height:1}.nexusHeaderChevron{font-size:12px;opacity:.8}
.nexusLinksOverlay{position:fixed;inset:72px 0 0 0;z-index:43;pointer-events:none}
.nexusLinksOverlay.is-open{pointer-events:auto}
.nexusLinksBackdrop{position:absolute;inset:0;background:rgba(1,5,12,.38);opacity:0;transition:.16s}
.nexusLinksOverlay.is-open .nexusLinksBackdrop{opacity:1}
.nexusLinksPanel{position:absolute;top:12px;left:76px;width:min(390px,calc(100vw - 28px));max-height:calc(100vh - 100px);overflow:auto;background:#0c1422;border:2px solid #4c6a95;border-radius:16px;box-shadow:0 18px 55px rgba(0,0,0,.55);transform:translateY(-8px) scale(.98);opacity:0;transition:.16s;padding:12px}
.nexusLinksOverlay.is-open .nexusLinksPanel{transform:none;opacity:1}
.nexusLinksTitle{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 8px 12px;font-size:20px;font-weight:1000;color:#fff}
.nexusLinksClose{width:36px;height:36px;border-radius:10px;background:#182843;color:#fff;font-size:22px}
.nexusLinkRow,.nexusLanguageRow{width:100%;display:flex;align-items:center;gap:12px;padding:12px;margin:5px 0;border:1px solid #314865;border-radius:13px;background:#111d30;color:#fff;text-align:left;text-decoration:none;transition:.13s}
.nexusLinkRow:hover,.nexusLanguageRow:hover{transform:translateX(3px);border-color:#ffe000;background:#192a45}
.nexusLinkRow.is-disabled{opacity:.68;cursor:default}.nexusLinkRow.is-disabled:hover{transform:none;border-color:#314865;background:#111d30}
.nexusServiceIcon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;flex:0 0 42px;background:#243857;font-size:22px;overflow:hidden}
.nexusServiceIcon svg{width:25px;height:25px;display:block;fill:currentColor}.nexusServiceIcon.discord{background:#5865f2}.nexusServiceIcon.youtube{background:#ff0033}.nexusServiceIcon.email{background:#1f8fdf}.nexusServiceIcon.website{background:#754fd6}
.nexusLinkText{min-width:0;flex:1}.nexusLinkText b{display:block;font-size:16px;overflow-wrap:anywhere}.nexusLinkText small{display:block;margin-top:4px;color:#b9c9e1;line-height:1.25}.nexusLinkArrow{font-size:20px;color:#ffe000}
.nexusBackBtn{display:flex;align-items:center;gap:8px;background:transparent;color:#8ec7ff;font-weight:900;padding:7px 4px 10px}
.nexusChannelAvatar{width:54px;height:54px;border-radius:50%;object-fit:cover;background:#243857;border:2px solid #ffe000;display:grid;place-items:center;font-weight:1000;font-size:18px;flex:0 0 54px}
.nexusEmptyHint{margin:10px 5px 4px;padding:11px;border-radius:11px;background:#241e06;border:1px solid #8c7600;color:#ffe57a;font-size:13px;line-height:1.35}
@media(max-width:950px){.nexusHeaderBtn{width:50px;padding:0;justify-content:center}.nexusHeaderBtnLabel,.nexusHeaderChevron{display:none}}
@media(max-width:620px){.nexusHeaderLinks{left:69px;gap:5px}.nexusHeaderBtn{width:42px;height:42px;border-radius:12px}.nexusLinksPanel{left:10px;top:8px;width:calc(100vw - 20px)}.nexusLinksOverlay{inset:64px 0 0}.top{min-height:64px}.nexusHeaderLinks{top:11px}}

/* v1.2 — Creator directory and Discord avatars */
.nexusCreatorGrid{display:grid;gap:14px;padding:2px 0 6px}
.nexusCreatorCard{display:flex;gap:14px;padding:15px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));box-shadow:0 8px 24px rgba(0,0,0,.18)}
.nexusCreatorAvatar{width:66px;height:66px;min-width:66px;border-radius:18px;object-fit:cover;border:1px solid rgba(255,255,255,.16);background:#17172a}
.nexusCreatorInitials{display:grid;place-items:center;font-weight:900;font-size:20px;letter-spacing:.04em;background:linear-gradient(135deg,#653cff,#ec3e94);color:#fff}
.nexusCreatorInfo{min-width:0;flex:1}
.nexusCreatorHeading{display:flex;align-items:center;gap:8px}
.nexusCreatorHeading h3{margin:0;font-size:17px;line-height:1.25;color:#fff}
.nexusCreatorFlag{font-size:17px}
.nexusCreatorInfo p{margin:6px 0 11px;color:rgba(255,255,255,.72);font-size:13px;line-height:1.42}
.nexusCreatorLinks{display:flex;flex-wrap:wrap;gap:7px}
.nexusPlatformBtn{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:7px 10px;border-radius:10px;text-decoration:none!important;color:#fff!important;font-weight:800;font-size:12px;border:1px solid rgba(255,255,255,.14);transition:transform .15s ease,filter .15s ease,box-shadow .15s ease}
.nexusPlatformBtn:hover{transform:translateY(-2px);filter:brightness(1.12);box-shadow:0 7px 18px rgba(0,0,0,.24)}
.nexusPlatformBtn .nexusServiceIcon{width:17px;height:17px;min-width:17px;background:transparent;padding:0}
.nexusPlatformBtn .nexusServiceIcon svg{width:15px;height:15px;fill:currentColor}
.nexusPlatformBtn.is-youtube{background:#e62117}
.nexusPlatformBtn.is-twitch{background:#9146ff}
.nexusPlatformBtn.is-discord{background:#5865f2}
.nexusPlatformBtn.is-x{background:#111}
.nexusPlatformBtn.is-tiktok{background:#1c1c24}
.nexusLinkRow .nexusChannelAvatar{object-fit:cover;background:#17172a}
@media (max-width:560px){.nexusCreatorCard{align-items:flex-start;padding:13px}.nexusCreatorAvatar{width:54px;height:54px;min-width:54px;border-radius:14px}.nexusPlatformBtn{padding:7px 9px}.nexusPlatformBtn span:last-child{font-size:11px}}

/* v1.3 — cadrage, icônes et avatars */
.nexusLinkRow .nexusChannelAvatar{object-fit:contain!important;object-position:center!important;padding:2px;background:#050914!important}
.nexusCreatorAvatar{object-fit:cover!important;object-position:center!important;background:#0b1220!important}
.nexusPlatformBtn .nexusServiceIcon{display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;overflow:visible!important}
.nexusPlatformBtn .nexusServiceIcon>span{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;line-height:1!important;font-family:Arial,Helvetica,sans-serif!important;font-weight:900!important}
.nexusPlatformBtn.is-x .nexusServiceIcon>span{font-size:15px!important;transform:none!important}
.nexusPlatformBtn.is-tiktok .nexusServiceIcon>span{font-size:18px!important;transform:translateY(-1px)!important}


/* v1.5 — drapeaux fiables sur PC + alignement des plateformes */
.nexusFlagIcon{display:inline-flex;width:30px;height:20px;border-radius:4px;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,.28);vertical-align:middle;background:#fff}
.nexusFlagIcon svg{display:block;width:100%;height:100%}
.nexusLanguageFlag{padding:0!important;background:#243857!important;overflow:visible!important}
.nexusLanguageFlag .nexusFlagIcon{width:30px;height:20px}
.nexusCreatorFlag{display:inline-flex;align-items:center}
.nexusCreatorFlag .nexusFlagIcon{width:24px;height:16px;border-radius:3px}
.nexusPlatformBtn{justify-content:flex-start!important;gap:10px!important;min-width:118px!important;padding-left:13px!important;padding-right:13px!important}
.nexusPlatformBtn .nexusServiceIcon{flex:0 0 18px!important;width:18px!important;height:18px!important;justify-content:flex-start!important}
.nexusPlatformBtn.is-x{min-width:76px!important}
.nexusPlatformBtn.is-tiktok{min-width:108px!important}
@media(max-width:560px){.nexusPlatformBtn{min-width:116px!important}.nexusPlatformBtn.is-x{min-width:76px!important}.nexusPlatformBtn.is-tiktok{min-width:108px!important}}


/* ===== css/v17-mobile-tuning-fix.css ===== */
/* MHUR Nexus v1.7 — correction du chevauchement des cartes T.U.N.I.N.G sur mobile */
@media (max-width: 760px) {
  .tuningCard .gameHeader,
  .tuningCard.spTuning .gameHeader {
    grid-template-columns: 76px minmax(0, 1fr);
    column-gap: 14px;
    padding: 16px 14px;
    align-items: center;
  }

  .tuningCard .gameIcon,
  .tuningCard.spTuning .gameIcon {
    width: 72px;
    height: 72px;
    min-width: 72px;
    max-width: 72px;
    overflow: hidden;
  }

  .tuningCard .gameIcon img,
  .tuningCard.spTuning .gameIcon img {
    width: 100%;
    height: 100%;
    max-width: 72px;
    max-height: 72px;
    object-fit: contain;
  }

  .tuningCard .gameName {
    min-width: 0;
    margin: 0;
    font-size: clamp(23px, 6.4vw, 31px);
    line-height: 1.08;
    overflow-wrap: anywhere;
    word-break: normal;
  }
}

@media (max-width: 390px) {
  .tuningCard .gameHeader,
  .tuningCard.spTuning .gameHeader {
    grid-template-columns: 66px minmax(0, 1fr);
    column-gap: 11px;
    padding: 14px 12px;
  }

  .tuningCard .gameIcon,
  .tuningCard.spTuning .gameIcon,
  .tuningCard .gameIcon img,
  .tuningCard.spTuning .gameIcon img {
    width: 64px;
    height: 64px;
    min-width: 64px;
    max-width: 64px;
    max-height: 64px;
  }

  .tuningCard .gameName {
    font-size: clamp(21px, 6.2vw, 27px);
  }
}


/* ===== css/v19-ios-header-update.css ===== */
/* V1.9 — correctif iPhone : langue compacte et barre supérieure sans chevauchement. */
.top .lang{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  min-width:82px!important;
  width:82px!important;
  height:44px!important;
  padding:0 9px!important;
  border-radius:15px!important;
  white-space:nowrap!important;
}
.top .langPart{display:inline-block!important;font-size:14px!important;line-height:1!important;transform:none!important}
.top .langPart.active{color:#ffe100!important;transform:none!important;text-shadow:0 0 8px rgba(255,225,0,.35)!important}
.top .langSep{font-size:13px!important;line-height:1!important}
@media(max-width:700px){
  .top .lang{right:7px!important;top:50%!important;transform:translateY(-50%)!important}
  .top .mhurAccountButton{
    right:96px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    width:46px!important;
    min-width:46px!important;
    max-width:46px!important;
    height:46px!important;
    padding:3px!important;
    border-radius:14px!important;
  }
  .top .mhurAccountButton img,.top .mhurAccountAvatar{width:36px!important;height:36px!important;flex-basis:36px!important}
  .top .mhurAccountButtonText{display:none!important}
}
@media(max-width:390px){
  .top .lang{width:76px!important;min-width:76px!important;padding:0 7px!important}
  .top .mhurAccountButton{right:88px!important}
  .top .brand{max-width:125px!important;font-size:12px!important}
}


/* ===== css/v24-ios-standalone-header.css ===== */
/* V2.4 — iPhone installé : tous les éléments du header restent sur UNE seule ligne,
   juste sous la barre d’état. Le décalage est appliqué au groupe complet, y compris
   les boutons Réseaux sociaux et Créateurs de contenu. */
:root{--mhur-ios-safe-top:0px}

html.mhur-ios-standalone{
  --mhur-ios-safe-top:env(safe-area-inset-top,0px);
}

@media(max-width:700px){
  html.mhur-ios-standalone body{
    padding-top:calc(64px + var(--mhur-ios-safe-top))!important;
  }

  html.mhur-ios-standalone .top{
    position:fixed!important;
    inset:0 0 auto 0!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:calc(64px + var(--mhur-ios-safe-top))!important;
    min-height:calc(64px + var(--mhur-ios-safe-top))!important;
    padding:0!important;
    margin:0!important;
    box-sizing:border-box!important;
    background:#070b13!important;
  }

  /* Centre vertical commun de tous les contrôles sous la zone d’état iOS. */
  html.mhur-ios-standalone .top .menuBtn,
  html.mhur-ios-standalone .top .mhurAccountButton,
  html.mhur-ios-standalone .top .lang{
    top:calc(var(--mhur-ios-safe-top) + 32px)!important;
    transform:translateY(-50%)!important;
    margin:0!important;
  }

  html.mhur-ios-standalone .top .brand{
    position:absolute!important;
    left:50%!important;
    top:calc(var(--mhur-ios-safe-top) + 32px)!important;
    transform:translate(-50%,-50%)!important;
    margin:0!important;
  }

  /* Ces deux boutons étaient les seuls à rester collés en haut : ils suivent
     maintenant exactement la même ligne que le menu, le logo et le profil. */
  html.mhur-ios-standalone .top .nexusHeaderLinks{
    top:calc(var(--mhur-ios-safe-top) + 11px)!important;
    margin:0!important;
  }

  html.mhur-ios-standalone .drawer{
    top:calc(64px + var(--mhur-ios-safe-top))!important;
    max-height:calc(100dvh - 64px - var(--mhur-ios-safe-top))!important;
  }

  html.mhur-ios-standalone .nexusLinksOverlay{
    inset:calc(64px + var(--mhur-ios-safe-top)) 0 0!important;
  }

  html.mhur-ios-standalone #app>.back,
  html.mhur-ios-standalone .wrap>.back,
  html.mhur-ios-standalone .back{
    top:calc(74px + var(--mhur-ios-safe-top))!important;
  }
}


/* ===== css/v25-desktop-display-guard.css ===== */
/* V2.5 — garde-fou d'affichage bureau.
   Rend l'interface compacte lorsque le navigateur est zoomé, que Windows utilise
   une forte mise à l'échelle ou que l'écran est peu haut. Aucun zoom CSS global :
   la page reste nette et les fonctions d'accessibilité du navigateur restent actives. */

/* La bannière Analytics ne doit jamais recouvrir toute la largeur sur ordinateur. */
@media (min-width:681px){
  #mhurAnalyticsConsent{
    left:auto!important;
    right:18px!important;
    bottom:18px!important;
    width:min(520px,calc(100vw - 36px))!important;
    max-width:520px!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:13px!important;
    padding:15px 16px!important;
  }
  #mhurAnalyticsConsent>div:last-child{
    display:flex!important;
    justify-content:flex-end!important;
    gap:9px!important;
  }
  #mhurAnalyticsConsent button{
    min-width:118px!important;
    margin:0!important;
  }
}

/* Mode bureau compact : s'active aussi automatiquement quand un zoom navigateur
   réduit la hauteur CSS disponible. */
@media (min-width:701px) and (max-height:900px){
  :root{
    --mhur-top-height:clamp(54px,8.5dvh,66px)!important;
    --mhur-back-gap:9px!important;
  }

  .top .menuBtn,.menuBtn{
    width:44px!important;
    height:44px!important;
    font-size:26px!important;
    border-radius:12px!important;
  }

  .top .nexusHeaderLinks{
    top:50%!important;
    transform:translateY(-50%)!important;
    gap:7px!important;
  }
  .top .nexusHeaderBtn{
    height:44px!important;
    padding:0 12px!important;
    border-radius:12px!important;
    gap:7px!important;
    font-size:14px!important;
  }
  .top .nexusHeaderIcon{font-size:18px!important}

  .top .brand{
    max-width:min(33vw,360px)!important;
    font-size:clamp(12px,2.15dvh,16px)!important;
    line-height:1!important;
  }

  .top .mhurAccountButton{
    height:46px!important;
    max-width:205px!important;
    padding:4px 9px!important;
    border-radius:13px!important;
  }
  .top .mhurAccountButton img,
  .top .mhurAccountAvatar{
    width:34px!important;
    height:34px!important;
    flex-basis:34px!important;
  }
  .top .mhurAccountButtonText b{font-size:13px!important}
  .top .mhurAccountButtonText small{font-size:9px!important}

  .top .lang{
    min-height:46px!important;
    padding:0 14px!important;
    display:flex!important;
    align-items:center!important;
    border-radius:20px!important;
    font-size:14px!important;
  }

  .wrap{padding-top:clamp(12px,2.4dvh,22px)!important}
  .homeV296{
    max-width:min(1280px,calc(100dvh * 1.66))!important;
    padding-top:10px!important;
  }
  .seasonV296{
    max-width:min(1100px,calc(100dvh * 1.36))!important;
    margin-top:5px!important;
    margin-bottom:18px!important;
    padding:clamp(17px,3.1dvh,26px) clamp(16px,3.2dvh,28px) clamp(16px,2.8dvh,24px)!important;
  }
  .seasonV296 h1{
    margin-top:2px!important;
    margin-bottom:7px!important;
    font-size:clamp(30px,6dvh,42px)!important;
  }
  .seasonLineV296>strong{
    margin-bottom:10px!important;
    font-size:clamp(14px,2.7dvh,18px)!important;
  }
  .countdownV296{
    max-width:min(820px,calc(100dvh * 1.08))!important;
    gap:clamp(8px,1.6dvh,14px)!important;
  }
  .countdownV296 span{
    min-height:clamp(76px,15dvh,108px)!important;
    padding:9px 6px 8px!important;
  }
  .countdownV296 b{font-size:clamp(29px,7dvh,44px)!important}
  .countdownV296 small{font-size:clamp(9px,1.7dvh,12px)!important}
  .seasonV296>small{
    margin-top:12px!important;
    font-size:clamp(10px,1.75dvh,13px)!important;
  }
  .homeDividerV296{margin:18px 0 14px!important}
  .homeTitleV296{
    margin-bottom:12px!important;
    font-size:clamp(23px,4.1dvh,32px)!important;
  }
  .homeTitleV296:before{
    width:14px!important;
    height:clamp(34px,6dvh,46px)!important;
  }
}

/* Très faible hauteur : priorité à une barre stable et à un premier écran lisible. */
@media (min-width:701px) and (max-height:650px){
  .top .mhurAccountButtonText small{display:none!important}
  .top .mhurAccountButton{max-width:175px!important}
  .homeV296{max-width:min(1120px,calc(100dvh * 1.62))!important}
  .seasonV296{max-width:min(900px,calc(100dvh * 1.34))!important}
  .seasonV296>small{margin-top:9px!important}
  .homeDividerV296{height:11px!important;margin:14px 0 11px!important}
}

/* Évite tout débordement horizontal même avec une police système agrandie. */
@media (min-width:701px){
  .top,.homeV296,.seasonV296,#mhurAnalyticsConsent{min-width:0!important}
  .top .nexusHeaderBtnLabel,
  .top .mhurAccountButtonText,
  .seasonV296>*{min-width:0!important}
}


/* ===== css/v29-media-drop.css ===== */
/* MHUR Nexus V2.9 — glisser-déposer et aperçu au-dessus des champs */
.mhurCommentComposer{display:flex!important;flex-direction:column!important;gap:10px!important}
.mhurCommentTools{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.mhurMediaDraftPreview{order:-2;margin:0 0 10px!important;width:100%}
.mhurMediaDraftPreview:empty{display:none}
.mhurMediaDraftCard{width:min(380px,100%);max-width:380px!important;min-width:0!important;padding:8px!important;border:2px solid #4d75a8!important;background:#081321!important}
.mhurMediaDraftCard img,.mhurMediaDraftCard video{width:100%!important;height:auto!important;max-height:300px!important;object-fit:contain!important;background:#02060c!important}
.mhurMediaDraftCard small{font-size:.8rem!important}
.mhurMediaDropZone{position:relative;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}
.mhurMediaDropZone.mhurMediaDropActive{border-color:#ffe100!important;background:#172947!important;box-shadow:0 0 0 4px #ffe10055 inset,0 0 24px #ffe10044!important}
.mhurMediaDropZone.mhurMediaDropActive::after{content:'📥 ' attr(data-drop-label);position:absolute;inset:8px;z-index:20;display:grid;place-items:center;padding:18px;border:3px dashed #ffe100;border-radius:14px;background:#07111ee8;color:#ffe100;font-size:clamp(16px,3vw,24px);font-weight:1000;text-align:center;pointer-events:none}
.mhurMediaDropHint{color:#9fb2ce;font-size:.78rem;font-weight:800}
#modCommentForm{display:flex;flex-direction:column;gap:10px;padding:12px;border:2px dashed #38587d;border-radius:14px;background:#0b1728}
#modCommentForm .mhurMediaDraftPreview{order:-2}
#modCommentForm textarea{order:-1}
.modsForm [data-mod-image-drop],.modsForm [data-mod-video-drop]{display:block;padding:12px;border:2px dashed #45688f;border-radius:14px;background:#0b1728}
.modsForm [data-mod-image-drop] input,.modsForm [data-mod-video-drop] input{margin-top:8px}
.modCommentMedia,.mhurCommentMedia{cursor:zoom-in}
.modCommentAvatar.mhurProfileOpenButtonV29{width:42px;height:42px;padding:0!important;border-radius:50%;overflow:hidden;flex:0 0 42px}
.modCommentAvatar.mhurProfileOpenButtonV29 img{width:100%;height:100%;object-fit:cover}
.modsDetailInfo>.mhurProfileOpenButtonV29{padding:5px 8px;border:1px solid #3f5d82;border-radius:999px;background:#14243a}
@media(max-width:640px){.mhurMediaDraftCard{width:100%;max-width:none!important}.mhurMediaDraftCard img,.mhurMediaDraftCard video{max-height:240px!important}.mhurCommentTools,.modCommentTools{align-items:stretch}.mhurCommentTools>*,.modCommentTools>*{justify-content:center}.mhurMediaDropZone.mhurMediaDropActive::after{font-size:16px}}


/* ===== css/v29-user-moderation.css ===== */
.mhurUserModerationOverlay,.mhurUserAdminOverlayV29{position:fixed;inset:0;z-index:25000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.9);backdrop-filter:blur(6px)}
.mhurUserModerationOverlay.open,.mhurUserAdminOverlayV29.open{display:flex}
.mhurUserModerationDialog{width:min(650px,96vw);padding:28px;border:5px solid #000;border-radius:22px;color:#fff;text-align:center;box-shadow:0 0 0 4px currentColor,0 24px 80px #000}
.mhurUserModerationDialog.warning{background:linear-gradient(145deg,#74151d,#b7232f);color:#ffda4a}.mhurUserModerationDialog.ban{background:linear-gradient(145deg,#3a0810,#850d1f);color:#ff4f61}
.mhurModerationIcon{font-size:58px}.mhurUserModerationDialog h2{margin:8px 0 14px;font-size:clamp(25px,5vw,42px);color:#fff}.mhurUserModerationDialog p{margin:12px auto;max-width:560px;color:#fff;font-size:19px;line-height:1.5;white-space:pre-wrap}.mhurUserModerationDialog small{display:block;color:#ffd8dc}.mhurUserModerationDialog button{margin-top:20px;padding:13px 22px;border:4px solid #000;border-radius:12px;background:#ffe100;color:#000;font-weight:1000;font-size:17px}.mhurBanActionsV29{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.mhurBanActionsV29 button:last-child{background:#fff}
#mhurReadOnlyBadgeV29{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));z-index:18000;transform:translateX(-50%);padding:10px 15px;border:3px solid #000;border-radius:999px;background:#bd1e31;color:#fff;font-weight:1000;box-shadow:0 5px 20px #0008}
.mhurUserAdminDialogV29{position:relative;width:min(780px,97vw);max-height:94vh;overflow:auto;padding:26px;border:4px solid #47698f;border-radius:20px;background:#0b1626;color:#fff;box-shadow:0 20px 70px #000}.mhurUserAdminCloseV29{position:absolute;right:12px;top:12px;width:44px;height:44px;border:3px solid #000;border-radius:50%;background:#e5484f;color:#fff;font-size:25px;font-weight:1000}.mhurAdminKickerV29{color:#ffe100;font-weight:1000}.mhurUserAdminDialogV29 h2{margin:5px 55px 18px 0;font-size:30px}.mhurUserAdminDialogV29 label{display:block;margin:16px 0;color:#ffe100;font-weight:1000}.mhurUserAdminDialogV29 textarea,.mhurUserAdminDialogV29 input{display:block;width:100%;margin-top:7px;padding:12px;border:2px solid #46668e;border-radius:11px;background:#07111f;color:#fff;font:inherit}.mhurUserAdminDialogV29 textarea{min-height:120px;resize:vertical}.mhurUserAdminButtonsV29{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mhurUserAdminButtonsV29 button{padding:12px;border:3px solid #000;border-radius:11px;background:#ffcc28;color:#000;font-weight:1000}.mhurUserAdminButtonsV29 button.danger{background:#e5484f;color:#fff}.mhurUserAdminButtonsV29 button.success{background:#20cf70}.mhurModerationStatusV29{display:grid;gap:10px;padding:13px;border:2px solid #3d5c82;border-radius:13px;background:#101f34}.mhurModerationStatusV29>div{display:grid;gap:4px;padding:10px;border-left:5px solid #e5484f;background:#08111e}.mhurModerationStatusV29 span,.mhurModerationStatusV29 small{color:#c7d4e8}.mhurModerationStatusV29.neutral{color:#b7c7df}.mhurProfileAdminV29{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:3px solid #000;background:linear-gradient(90deg,#48202b,#182942)}.mhurProfileAdminV29 span{color:#ff6876;font-size:12px;font-weight:1000}.mhurProfileAdminV29 h3{margin:2px 0 0}.mhurProfileAdminV29 button{padding:10px 14px;border:3px solid #000;border-radius:10px;background:#e5484f;color:#fff;font-weight:1000}
.mhurProfileOpenButtonV29{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:inherit;padding:0;font:inherit;font-weight:inherit;cursor:pointer}.mhurProfileOpenButtonV29:hover{text-decoration:underline;color:#ffe100}
@media(max-width:620px){.mhurUserAdminButtonsV29{grid-template-columns:1fr}.mhurProfileAdminV29{align-items:flex-start;flex-direction:column}.mhurUserModerationDialog{padding:20px}.mhurUserModerationDialog p{font-size:16px}}


/* ===== css/v30-profile-admin-fixes.css ===== */
/* MHUR Nexus v3.0 — profils administrateur et superposition de modération */
#mhurUserAdminOverlayV29.mhurUserAdminOverlayV29{
  position:fixed!important;
  inset:0!important;
  z-index:2147483600!important;
  isolation:isolate;
}
#mhurUserAdminOverlayV29 .mhurUserAdminDialogV29{z-index:1}
html.mhurUserAdminOpenV30,html.mhurProfileDirectoryOpenV30{overflow:hidden!important}
html.mhurUserAdminOpenV30 body,html.mhurProfileDirectoryOpenV30 body{overflow:hidden!important}

/* La croix du profil ne recouvre plus le bouton Avertir / bannir. */
.mhurPublicProfilePanel{isolation:isolate}
.mhurPublicProfileClose{z-index:50!important}
.mhurProfileAdminV29{
  position:relative;
  min-height:82px;
  padding-right:82px!important;
}
.mhurProfileAdminV29>button{
  flex:0 1 auto;
  max-width:min(250px,calc(100% - 145px));
  white-space:normal;
  line-height:1.15;
}

/* Bouton de l’annuaire dans Mon compte. */
.mhurAuthProfileListV30{
  width:100%;
  margin-top:10px;
  padding:11px;
  border:3px solid #000;
  border-radius:10px;
  background:#ffe100;
  color:#000;
  font-weight:1000;
  box-shadow:0 3px 0 #000;
}
.mhurAuthProfileListV30:hover{filter:brightness(1.06)}

/* Annuaire administrateur. */
.mhurProfileDirectoryV30{
  position:fixed;
  inset:0;
  z-index:2147483500;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(0,0,0,.92);
  backdrop-filter:blur(7px);
}
.mhurProfileDirectoryV30.open{display:flex}
.mhurProfileDirectoryPanelV30{
  position:relative;
  width:min(920px,97vw);
  max-height:94vh;
  overflow:auto;
  padding:24px;
  border:4px solid #47698f;
  border-radius:20px;
  background:#0b1626;
  color:#fff;
  box-shadow:0 24px 80px #000;
}
.mhurProfileDirectoryPanelV30 header{padding-right:58px}
.mhurProfileDirectoryPanelV30 header>span{
  display:inline-block;
  padding:4px 8px;
  border-radius:999px;
  background:#ffe100;
  color:#000;
  font-size:11px;
  font-weight:1000;
}
.mhurProfileDirectoryPanelV30 h2{margin:7px 0 4px;font-size:32px}
.mhurProfileDirectoryPanelV30 header p{margin:0;color:#bfd0e7}
.mhurProfileDirectoryCloseV30{
  position:absolute;
  right:12px;
  top:12px;
  z-index:2;
  width:46px;
  height:46px;
  border:3px solid #000;
  border-radius:50%;
  background:#e5484f;
  color:#fff;
  font-size:27px;
  font-weight:1000;
}
.mhurProfileDirectorySearchV30{
  display:flex;
  align-items:center;
  gap:10px;
  margin:18px 0 8px;
  padding:0 13px;
  border:2px solid #45668f;
  border-radius:12px;
  background:#07111f;
}
.mhurProfileDirectorySearchV30 input{
  width:100%;
  min-height:48px;
  border:0;
  outline:0;
  background:transparent;
  color:#fff;
  font:inherit;
  font-weight:800;
}
.mhurProfileDirectoryCountV30{margin:8px 2px;color:#ffe100;font-size:12px;font-weight:1000}
.mhurProfileDirectoryListV30{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mhurProfileDirectoryCardV30{
  display:grid;
  grid-template-columns:58px minmax(0,1fr) auto 18px;
  align-items:center;
  gap:11px;
  min-width:0;
  padding:11px;
  border:2px solid #36577f;
  border-radius:13px;
  background:#13233a;
  color:#fff;
  text-align:left;
}
.mhurProfileDirectoryCardV30:hover{border-color:#19dcef;transform:translateY(-1px)}
.mhurProfileDirectoryAvatarV30,.mhurProfileDirectoryAvatarV30 img{
  width:58px;
  height:58px;
  border-radius:50%;
}
.mhurProfileDirectoryAvatarV30{display:grid;place-items:center;overflow:hidden;border:3px solid #ffe100;background:#263c5c;color:#fff;font-weight:1000}
.mhurProfileDirectoryAvatarV30 img{display:block;object-fit:cover}
.mhurProfileDirectoryIdentityV30{min-width:0}
.mhurProfileDirectoryIdentityV30 b,.mhurProfileDirectoryIdentityV30 small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mhurProfileDirectoryIdentityV30 b{font-size:17px}
.mhurProfileDirectoryIdentityV30 small{margin-top:4px;color:#bfd0e7;font-size:11px}
.mhurProfileDirectoryRoleV30{padding:5px 8px;border-radius:999px;background:#263c5c;color:#dce8f8;font-size:10px;font-weight:1000;white-space:nowrap}
.mhurProfileDirectoryRoleV30.admin,.mhurProfileDirectoryRoleV30.administrator{background:#ffe100;color:#000}
.mhurProfileDirectoryRoleV30.moderator{background:#20cf70;color:#04130a}
.mhurProfileDirectoryArrowV30{color:#ffe100;font-size:27px;font-weight:1000}
.mhurProfileDirectoryEmptyV30{grid-column:1/-1;padding:44px 18px;text-align:center;color:#c7d4e8;font-weight:900}
.mhurProfileDirectoryEmptyV30.error{color:#ff8b93}

/* La barre Modération et le nom du compte ne se chevauchent plus dans une fenêtre étroite. */
@media (min-width:761px) and (max-width:1050px){
  .mhurAdminTopButton{right:255px!important;max-width:125px;padding:0 10px!important;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .mhurAccountButton{right:82px!important;max-width:165px!important}
  .lang{right:8px!important}
}
@media(max-width:760px){
  .mhurProfileDirectoryListV30{grid-template-columns:1fr}
  .mhurProfileDirectoryPanelV30{padding:18px 13px}
  .mhurProfileDirectoryPanelV30 h2{font-size:25px}
  .mhurProfileAdminV29{padding-right:72px!important}
  .mhurProfileAdminV29>button{max-width:100%;margin-right:0}
}
@media(max-width:460px){
  .mhurProfileDirectoryCardV30{grid-template-columns:50px minmax(0,1fr) 15px}
  .mhurProfileDirectoryAvatarV30,.mhurProfileDirectoryAvatarV30 img{width:50px;height:50px}
  .mhurProfileDirectoryRoleV30{display:none}
}


/* ===== css/v32-moderation-top-layer.css ===== */
/* MHUR Nexus v3.2 — fenêtre de modération toujours au premier plan. */
dialog#mhurUserAdminOverlayV29.mhurUserAdminNativeV32{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  max-width:none!important;
  height:100dvh!important;
  max-height:none!important;
  margin:0!important;
  padding:18px!important;
  border:0!important;
  border-radius:0!important;
  box-sizing:border-box!important;
  overflow:auto!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(0,0,0,.72)!important;
  color:#fff!important;
  backdrop-filter:blur(7px)!important;
  z-index:2147483647!important;
}
dialog#mhurUserAdminOverlayV29.mhurUserAdminNativeV32[open],
dialog#mhurUserAdminOverlayV29.mhurUserAdminNativeV32.open{
  display:flex!important;
}
dialog#mhurUserAdminOverlayV29.mhurUserAdminNativeV32::backdrop{
  background:rgba(0,0,0,.92)!important;
  backdrop-filter:blur(7px)!important;
}
dialog#mhurUserAdminOverlayV29 .mhurUserAdminDialogV29{
  position:relative!important;
  z-index:1!important;
  flex:0 0 auto!important;
  margin:auto!important;
}
/* Le profil reste visible derrière, mais ne peut plus intercepter les clics. */
html.mhurUserAdminOpenV30 .mhurPublicProfileModal,
html.mhurUserAdminOpenV30 .mhurProfileDirectoryV30{
  pointer-events:none!important;
}
@media(max-width:620px){
  dialog#mhurUserAdminOverlayV29.mhurUserAdminNativeV32{padding:10px!important;align-items:flex-start!important}
  dialog#mhurUserAdminOverlayV29 .mhurUserAdminDialogV29{width:100%!important;max-height:calc(100dvh - 20px)!important;padding:20px 14px!important}
}


/* ===== css/v31-header-admin-layout.css ===== */
/* MHUR Nexus v3.1 — barre administrateur sans chevauchement.
   Les actions de droite sont regroupées dans un vrai conteneur flex sur ordinateur,
   au lieu d'utiliser trois positions absolues susceptibles de se recouvrir. */

html,body{
  max-width:100%!important;
  overflow-x:hidden!important;
}
@supports (overflow:clip){
  html,body{overflow-x:clip!important}
}
.top{max-width:100vw!important}

@media (min-width:761px){
  .top .mhurTopActionsV31{
    position:absolute!important;
    right:14px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    z-index:2147483606!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:9px!important;
    min-width:0!important;
    max-width:min(49vw,590px)!important;
    margin:0!important;
    padding:0!important;
    pointer-events:none;
  }
  .top .mhurTopActionsV31 > *{pointer-events:auto}

  /* Annule les anciennes coordonnées absolues : le conteneur flex gère l'espace. */
  .top .mhurTopActionsV31 > .mhurAdminTopButton,
  .top .mhurTopActionsV31 > .mhurAccountButton,
  .top .mhurTopActionsV31 > .lang{
    position:static!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
    translate:none!important;
    margin:0!important;
    flex:0 0 auto!important;
  }

  .top .mhurTopActionsV31 > .mhurAdminTopButton{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    height:48px!important;
    min-width:0!important;
    max-width:180px!important;
    padding:0 13px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    z-index:auto!important;
  }
  .top .mhurTopActionsV31 > .mhurAccountButton{
    min-width:0!important;
    max-width:205px!important;
    z-index:auto!important;
  }
  .top .mhurTopActionsV31 > .mhurAccountButton .mhurAccountButtonText{
    min-width:0!important;
  }
  .top .mhurTopActionsV31 > .lang{
    z-index:auto!important;
  }
}

/* Fenêtres plus serrées ou zoom navigateur élevé : on compacte sans recouvrir. */
@media (min-width:761px) and (max-width:1250px){
  .top .mhurTopActionsV31{gap:6px!important;max-width:47vw!important}
  .top .mhurTopActionsV31 > .mhurAdminTopButton{
    max-width:125px!important;
    padding:0 9px!important;
    font-size:12px!important;
  }
  .top .mhurTopActionsV31 > .mhurAccountButton{max-width:155px!important}
  .top .mhurTopActionsV31 > .lang{padding-left:10px!important;padding-right:10px!important}
}

@media (min-width:761px) and (max-width:1020px){
  .top .mhurTopActionsV31 > .mhurAdminTopButton{
    width:46px!important;
    max-width:46px!important;
    padding:0!important;
    font-size:0!important;
  }
  .top .mhurTopActionsV31 > .mhurAdminTopButton::before{
    content:'🛡️';
    font-size:18px;
    line-height:1;
  }
  .top .mhurTopActionsV31 > .mhurAccountButton{max-width:135px!important}
}


/* ===== css/v35-full-ban.css ===== */
/* V3.5 — a suspended account cannot read or interact with the site. */
html.mhurUserBannedV29,html.mhurUserBannedV29 body{overflow:hidden!important;background:#05070c!important}
html.mhurUserBannedV29 body>*:not(#mhurBanOverlayV29){visibility:hidden!important;pointer-events:none!important;user-select:none!important}
html.mhurUserBannedV29 #mhurBanOverlayV29{visibility:visible!important;display:grid!important;position:fixed!important;inset:0!important;z-index:2147483647!important;place-items:center!important;background:rgba(2,4,9,.995)!important;padding:18px!important;pointer-events:auto!important}
html.mhurUserBannedV29 #mhurBanOverlayV29 .mhurUserModerationDialog{max-width:680px!important;width:min(100%,680px)!important;border:5px solid #ef4242!important;box-shadow:0 0 0 5px #050505,0 0 70px rgba(239,66,66,.5)!important}
html.mhurUserBannedV29 #mhurBanReadOnlyV29{display:none!important}
html.mhurUserBannedV29 #mhurBanOverlayV29 h2{font-size:clamp(30px,7vw,54px)!important}
html.mhurUserBannedV29 #mhurBanOverlayV29 p{font-size:clamp(18px,4vw,28px)!important}
html.mhurUserBannedV29 #mhurBanLogoutV29{display:block!important;margin:22px auto 0!important}


/* ===== css/v42-mobile-display-fixes.css ===== */
/* MHUR Nexus v4.2 — corrections d'affichage mobile profils, annuaire et en-tête. */

/* Toutes les fenêtres communautaires conservent la police et le modèle de boîte du site. */
.mhurPublicProfileModal,
.mhurPublicProfilePanel,
.mhurProfileDirectoryV30,
.mhurProfileDirectoryPanelV30,
.mhurUserAdminOverlayV29,
.mhurUserAdminDialogV29{
  box-sizing:border-box!important;
  font-family:Arial,Helvetica,sans-serif!important;
}
.mhurPublicProfilePanel *,
.mhurProfileDirectoryPanelV30 *,
.mhurUserAdminDialogV29 *{box-sizing:border-box!important}

/* Profil public : aucun bloc ne remonte sur l'avatar ou sur la date d'inscription. */
.mhurPublicProfilePanel{display:flex!important;flex-direction:column!important}
.mhurPublicProfileClose{position:absolute!important;top:12px!important;right:12px!important;float:none!important}
.mhurProfileAdminV29{flex:0 0 auto!important;order:-1!important;padding-right:76px!important}
.mhurPublicProfileHero{flex:0 0 auto!important;position:relative!important;min-height:0!important}
.mhurProfileStats{flex:0 0 auto!important;position:relative!important;z-index:1!important}
.mhurProfileBuilds{flex:0 0 auto!important}

/* Annuaire : le champ de recherche reste sous le texte d'introduction. */
.mhurProfileDirectoryPanelV30{display:flex!important;flex-direction:column!important}
.mhurProfileDirectoryPanelV30>header{position:relative!important;display:block!important;flex:0 0 auto!important;min-height:0!important;margin:0!important;padding:0 58px 0 0!important}
.mhurProfileDirectoryPanelV30>header h2,
.mhurProfileDirectoryPanelV30>header p{position:static!important;display:block!important;float:none!important;transform:none!important}
.mhurProfileDirectorySearchV30{position:relative!important;inset:auto!important;transform:none!important;flex:0 0 auto!important;clear:both!important}
.mhurProfileDirectoryCountV30,.mhurProfileDirectoryListV30{flex:0 0 auto!important}

@media(max-width:700px){
  /* Le bouton vert de modération du header n'écrase plus le logo, le profil et FR/EN.
     La modération reste accessible depuis le compte puis "Liste des profils". */
  header.top #mhurAdminButton,
  .top #mhurAdminButton.mhurAdminTopButton{display:none!important}

  .mhurPublicProfileModal{padding:8px!important;align-items:flex-start!important}
  .mhurPublicProfilePanel{
    width:100%!important;
    max-width:100%!important;
    max-height:calc(100dvh - 16px)!important;
    margin:0!important;
    border-width:4px!important;
    border-radius:22px!important;
  }
  .mhurPublicProfileClose{top:10px!important;right:10px!important;width:48px!important;height:48px!important}
  .mhurProfileAdminV29{
    min-height:106px!important;
    padding:15px 68px 15px 16px!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    gap:10px!important;
  }
  .mhurProfileAdminV29>div{min-width:0!important}
  .mhurProfileAdminV29 h3{font-size:22px!important;line-height:1.15!important}
  .mhurProfileAdminV29>button{
    width:auto!important;
    max-width:100%!important;
    margin:0!important;
    padding:10px 13px!important;
    font-size:16px!important;
  }
  .mhurPublicProfileHero{
    flex-direction:column!important;
    align-items:center!important;
    gap:10px!important;
    padding:22px 16px 18px!important;
    text-align:center!important;
  }
  .mhurPublicProfileAvatar{
    width:108px!important;height:108px!important;flex-basis:108px!important;
  }
  .mhurPublicProfileHero h2{margin:5px 0!important;font-size:28px!important;line-height:1.08!important;overflow-wrap:anywhere!important}
  .mhurPublicProfileHero p{font-size:15px!important;line-height:1.3!important}
  .mhurProfileStats{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    padding:12px!important;
  }
  .mhurProfileStats>div{min-width:0!important;padding:13px 5px!important}
  .mhurProfileStats b{font-size:25px!important}
  .mhurProfileStats span{font-size:14px!important;line-height:1.15!important;overflow-wrap:anywhere!important}
  .mhurProfileBuilds{padding:18px 16px!important}
  .mhurProfileBuilds h3{font-size:25px!important}
  .mhurProfileLoading,.mhurProfileEmpty{padding:38px 10px!important}

  .mhurProfileDirectoryV30{padding:12px!important;align-items:flex-start!important}
  .mhurProfileDirectoryPanelV30{
    width:100%!important;
    max-width:100%!important;
    max-height:calc(100dvh - 24px)!important;
    padding:18px 14px!important;
    border-radius:20px!important;
  }
  .mhurProfileDirectoryPanelV30>header{padding-right:56px!important}
  .mhurProfileDirectoryPanelV30 h2{margin:7px 0 6px!important;font-size:27px!important;line-height:1.1!important}
  .mhurProfileDirectoryPanelV30 header p{margin:0!important;font-size:15px!important;line-height:1.35!important}
  .mhurProfileDirectorySearchV30{margin:16px 0 9px!important;min-height:50px!important}
  .mhurProfileDirectorySearchV30 input{min-width:0!important;font-size:16px!important}
  .mhurProfileDirectoryListV30{grid-template-columns:1fr!important;gap:9px!important}
  .mhurProfileDirectoryCardV30{min-height:82px!important;padding:10px!important}
}

@media(min-width:701px) and (max-width:900px){
  /* Tablettes et téléphones en paysage : actions compactes, sans recouvrement. */
  .top .mhurTopActionsV31{max-width:46vw!important;gap:5px!important}
  .top .mhurTopActionsV31>.mhurAdminTopButton{
    width:46px!important;max-width:46px!important;padding:0!important;font-size:0!important;
  }
  .top .mhurTopActionsV31>.mhurAdminTopButton::before{content:'🛡️';font-size:18px!important}
  .top .mhurTopActionsV31>.mhurAccountButton{width:46px!important;max-width:46px!important;padding:3px!important}
  .top .mhurTopActionsV31>.mhurAccountButtonText{display:none!important}
  .top .brand{max-width:160px!important;font-size:14px!important}
}


/* ===== css/v44-mod-upload-auth.css ===== */
/* V4.4 — zones de fichiers clairement différenciées */
.modsForm .mhurModUploadSection{
  position:relative;
  display:block;
  padding:58px 16px 16px;
  border-width:3px;
  border-style:solid;
  border-radius:18px;
  overflow:hidden;
  isolation:isolate;
}
.modsForm .mhurModUploadSection::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.16;
  pointer-events:none;
}
.modsForm .mhurUploadTypeBadge{
  position:absolute;
  top:0;
  left:0;
  right:0;
  min-height:42px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:9px 14px;
  font-size:14px;
  font-weight:1000;
  letter-spacing:.06em;
  border-bottom:3px solid currentColor;
}
.modsForm .mhurModUploadFiles{border-color:#ffb020;color:#ffd27a}
.modsForm .mhurModUploadFiles::before{background:#ff9d00}
.modsForm .mhurModUploadFiles .mhurUploadTypeBadge{background:#3a2605;color:#ffd27a}
.modsForm .mhurModUploadImages{border-color:#38bdf8;color:#8cddff}
.modsForm .mhurModUploadImages::before{background:#0284c7}
.modsForm .mhurModUploadImages .mhurUploadTypeBadge{background:#062c43;color:#8cddff}
.modsForm .mhurModUploadVideo{border-color:#c084fc;color:#e2c2ff}
.modsForm .mhurModUploadVideo::before{background:#7e22ce}
.modsForm .mhurModUploadVideo .mhurUploadTypeBadge{background:#2b1240;color:#e2c2ff}
.modsForm .mhurModUploadSection>input[type=file]{
  background:#07111f;
  border:2px solid currentColor;
  border-radius:12px;
  padding:10px;
  color:#fff;
}
.modsForm .mhurModUploadSection .modsFieldHint,
.modsForm .mhurModUploadSection .mhurPasteHint{display:block;margin-top:8px;color:#dcecff}
@media(max-width:600px){
  .modsForm .mhurModUploadSection{padding:54px 12px 13px;border-radius:14px}
  .modsForm .mhurUploadTypeBadge{font-size:13px}
}


/* ===== css/v50-moderation-center.css ===== */
#mhurBanOverlayV29,#mhurWarningOverlayV29,#mhurReadOnlyBadgeV29{display:none!important}.mhurSanctionV50{position:fixed;inset:0;z-index:2147483600;display:none;overflow:auto;padding:max(20px,env(safe-area-inset-top)) 16px max(20px,env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 10%,#d3273b 0,#66111d 34%,#19050a 78%);color:#fff;align-items:center;justify-content:center}.mhurSanctionV50.open{display:flex}.mhurSanctionV50.warning{background:radial-gradient(circle at 50% 10%,#ef7f1a,#8d261a 38%,#200706 82%)}.mhurSanctionCardV50{width:min(760px,100%);padding:clamp(22px,5vw,48px);border:5px solid #080808;border-radius:28px;background:linear-gradient(155deg,rgba(15,4,7,.96),rgba(75,8,19,.96));box-shadow:0 0 0 4px #ff334e,0 28px 100px #000;text-align:center}.warning .mhurSanctionCardV50{box-shadow:0 0 0 4px #ffb11b,0 28px 100px #000}.mhurSanctionIconV50{font-size:clamp(55px,12vw,90px)}.mhurSanctionKickerV50{margin:5px 0;color:#ffb9c1;font-weight:1000;letter-spacing:.14em}.mhurSanctionCardV50 h1{margin:8px 0;font-size:clamp(27px,6vw,52px);line-height:1.04}.mhurSanctionTypeV50{display:inline-block;margin:10px;padding:9px 16px;border:2px solid #ff5368;border-radius:999px;background:#510b16;font-weight:1000}.mhurSanctionReasonV50{margin:22px 0;padding:18px;border:2px solid #a83646;border-radius:16px;background:#13060a}.mhurSanctionReasonV50 b{color:#ff7082}.mhurSanctionReasonV50 p{margin:10px 0 0;white-space:pre-wrap;font-size:18px;line-height:1.5}.mhurCountdownV50{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:20px 0}.mhurCountdownV50 div{padding:13px 5px;border:2px solid #ff5368;border-radius:13px;background:#25070d}.mhurCountdownV50 strong{display:block;font-size:clamp(27px,7vw,48px)}.mhurCountdownV50 span{font-size:11px;font-weight:1000;color:#ffabb5}.mhurSanctionDatesV50{color:#ffc2c9}.mhurSanctionActionsV50{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.mhurSanctionActionsV50 button,.mhurAppealButtonsV50 button,.mhurAdminActionsV50 button,.mhurAdminAppealCardV50 button{padding:13px 18px;border:3px solid #000;border-radius:12px;background:#ffe226;color:#090909;font:inherit;font-weight:1000}.mhurSanctionActionsV50 button:disabled{opacity:.6}.mhurSanctionActionsV50 #mhurAckBtnV50{background:#fff}.mhurAppealDialogV50,.mhurAdminV50{width:min(680px,96vw);max-height:92vh;padding:0;border:0;border-radius:22px;background:#0b1422;color:#fff;box-shadow:0 25px 100px #000}.mhurAdminV50{width:min(850px,97vw)}.mhurAppealDialogV50::backdrop,.mhurAdminV50::backdrop{background:#000c;backdrop-filter:blur(8px)}.mhurAppealDialogV50 form,.mhurAdminV50>section{position:relative;padding:28px}.mhurCloseV50{position:absolute;right:12px;top:12px;width:42px;height:42px;border:2px solid #000;border-radius:50%;background:#e43d51;color:#fff;font-size:25px}.mhurAppealDialogV50 textarea,.mhurAdminV50 textarea,.mhurAdminV50 input,.mhurAdminV50 select{box-sizing:border-box;width:100%;margin-top:8px;padding:12px;border:2px solid #496587;border-radius:10px;background:#07101d;color:#fff;font:inherit}.mhurAppealDialogV50 textarea{min-height:180px}.mhurAppealButtonsV50{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.mhurAdminV50 label{display:block;margin:15px 0;color:#ffe226;font-weight:1000}.mhurAdminActionsV50{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mhurAdminActionsV50 .danger{background:#e53d52;color:#fff}.mhurAdminActionsV50 .success{background:#28cf76}.mhurCurrentV50,.mhurAdminAppealCardV50{margin:14px 0;padding:15px;border:2px solid #425d80;border-radius:13px;background:#101e31}.mhurAdminAppealCardV50 p{white-space:pre-wrap}.mhurAdminAppealCardV50 textarea{min-height:100px}.mhurSanctionLockedV50 body{overflow:hidden!important}@media(max-width:600px){.mhurCountdownV50{grid-template-columns:repeat(2,1fr)}.mhurAdminActionsV50{grid-template-columns:1fr}.mhurSanctionCardV50{border-radius:20px}.mhurAppealButtonsV50{flex-direction:column-reverse}}


/* ===== css/v51-moderation-center.css ===== */
/* MHUR Nexus v5.1 — sanctions stables, sans conflit avec l'ancien écran de ban. */

/* Neutralise entièrement l'ancien verrou V3.5. Le nouveau verrou V5.1 prend le relais. */
html.mhurModerationV51Ready.mhurUserBannedV29,
html.mhurModerationV51Ready.mhurUserBannedV29 body{
  overflow:auto!important;
  background:revert!important;
}
html.mhurModerationV51Ready.mhurUserBannedV29 body > *:not(#mhurBanOverlayV29){
  visibility:visible!important;
  pointer-events:auto!important;
  user-select:auto!important;
}
html.mhurModerationV51Ready.mhurUserBannedV29 #mhurBanOverlayV29,
html.mhurModerationV51Ready #mhurBanOverlayV29,
html.mhurModerationV51Ready #mhurWarningOverlayV29,
html.mhurModerationV51Ready #mhurReadOnlyBadgeV29{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
html.mhurSanctionLockedV51,
html.mhurSanctionLockedV51 body{overflow:hidden!important}

.mhurSanctionV51{
  position:fixed;
  inset:0;
  z-index:2147483646;
  display:none;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  overflow:auto;
  overscroll-behavior:contain;
  padding:max(20px,env(safe-area-inset-top)) 16px max(20px,env(safe-area-inset-bottom));
  background:radial-gradient(circle at 50% 8%,#e12d45 0,#76111f 34%,#180409 80%);
  color:#fff;
  font-family:Arial,Helvetica,sans-serif;
  pointer-events:auto;
}
.mhurSanctionV51.open{display:flex!important}
.mhurSanctionV51.warning{background:radial-gradient(circle at 50% 8%,#ef6d20 0,#8d2418 38%,#210605 82%)}
.mhurSanctionV51 *{box-sizing:border-box}
.mhurSanctionCardV51{
  width:min(760px,100%);
  margin:auto;
  padding:clamp(22px,5vw,48px);
  border:5px solid #070707;
  border-radius:28px;
  background:linear-gradient(155deg,rgba(14,4,7,.98),rgba(77,8,20,.98));
  box-shadow:0 0 0 4px #ff3853,0 28px 100px #000;
  text-align:center;
}
.warning .mhurSanctionCardV51{box-shadow:0 0 0 4px #ffae20,0 28px 100px #000}
.mhurSanctionIconV51{font-size:clamp(55px,12vw,92px);line-height:1}
.mhurSanctionKickerV51{margin:9px 0;color:#ffb9c2;font-weight:1000;letter-spacing:.14em}
.mhurSanctionCardV51 h1{margin:8px 0;font-size:clamp(27px,6vw,52px);line-height:1.04;overflow-wrap:anywhere}
.mhurSanctionTypeV51{display:inline-block;margin:10px;padding:9px 16px;border:2px solid #ff5369;border-radius:999px;background:#510b17;font-weight:1000}
.mhurSanctionReasonV51{margin:22px 0;padding:18px;border:2px solid #a83647;border-radius:16px;background:#13060a}
.mhurSanctionReasonV51 b{color:#ff7284}
.mhurSanctionReasonV51 p{margin:10px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:18px;line-height:1.5}
.mhurCountdownV51{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:20px 0}
.mhurCountdownV51[hidden]{display:none!important}
.mhurCountdownV51 div{min-width:0;padding:13px 5px;border:2px solid #ff5369;border-radius:13px;background:#25070d}
.mhurCountdownV51 strong{display:block;font-size:clamp(27px,7vw,48px)}
.mhurCountdownV51 span{font-size:11px;font-weight:1000;color:#ffabb6;overflow-wrap:anywhere}
.mhurSanctionDatesV51{color:#ffc2ca;line-height:1.45}
.mhurSanctionActionsV51{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.mhurSanctionActionsV51 button,
.mhurAppealButtonsV51 button,
.mhurAdminActionsV51 button,
.mhurAdminAppealCardV51 button{
  min-height:48px;
  padding:12px 18px;
  border:3px solid #000;
  border-radius:12px;
  background:#ffe226;
  color:#090909;
  font:inherit;
  font-weight:1000;
  cursor:pointer;
}
.mhurSanctionActionsV51 button:disabled,
.mhurAdminActionsV51 button:disabled{opacity:.58;cursor:not-allowed}
.mhurSanctionActionsV51 #mhurAckBtnV51{background:#fff}
.mhurAppealStatusV51{margin:16px 0 0;white-space:pre-wrap;color:#ffe5e8;font-weight:800}

.mhurAppealDialogV51,.mhurAdminV51{
  width:min(680px,96vw);
  max-width:calc(100vw - 20px);
  max-height:92dvh;
  padding:0;
  border:0;
  border-radius:22px;
  background:#0b1422;
  color:#fff;
  box-shadow:0 25px 100px #000;
  font-family:Arial,Helvetica,sans-serif;
}
.mhurAdminV51{width:min(850px,97vw)}
.mhurAppealDialogV51::backdrop,.mhurAdminV51::backdrop{background:#000c;backdrop-filter:blur(8px)}
.mhurAppealDialogV51 form,.mhurAdminV51>section{position:relative;box-sizing:border-box;max-height:92dvh;overflow:auto;padding:28px}
.mhurAppealDialogV51 *,.mhurAdminV51 *{box-sizing:border-box}
.mhurCloseV51{position:absolute;right:12px;top:12px;width:42px;height:42px;border:2px solid #000;border-radius:50%;background:#e43d52;color:#fff;font-size:25px;font-weight:1000;cursor:pointer}
.mhurAppealDialogV51 h2,.mhurAdminV51 h2{margin-right:52px}
.mhurAppealDialogV51 textarea,.mhurAdminV51 textarea,.mhurAdminV51 input,.mhurAdminV51 select{
  width:100%;
  margin-top:8px;
  padding:12px;
  border:2px solid #496588;
  border-radius:10px;
  background:#07101d;
  color:#fff;
  font:inherit;
}
.mhurAppealDialogV51 textarea{min-height:180px;resize:vertical}
.mhurAppealButtonsV51{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}
.mhurAdminV51 label{display:block;margin:15px 0;color:#ffe226;font-weight:1000}
.mhurAdminActionsV51{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mhurAdminActionsV51 .danger{background:#e53d53;color:#fff}
.mhurAdminActionsV51 .success{background:#28cf76}
.mhurCurrentV51,.mhurAdminAppealCardV51{margin:14px 0;padding:15px;border:2px solid #425d80;border-radius:13px;background:#101e31}
.mhurCurrentV51 p,.mhurAdminAppealCardV51 p{white-space:pre-wrap;overflow-wrap:anywhere}
.mhurAdminAppealCardV51 textarea{min-height:100px;resize:vertical}

@media(max-width:600px){
  .mhurSanctionV51{align-items:flex-start;padding:calc(10px + env(safe-area-inset-top)) 10px calc(10px + env(safe-area-inset-bottom))}
  .mhurSanctionCardV51{padding:22px 14px;border-radius:20px}
  .mhurCountdownV51{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mhurSanctionActionsV51{flex-direction:column}
  .mhurSanctionActionsV51 button{width:100%}
  .mhurAppealButtonsV51{flex-direction:column-reverse}
  .mhurAppealButtonsV51 button{width:100%}
  .mhurAdminActionsV51{grid-template-columns:1fr}
  .mhurAppealDialogV51 form,.mhurAdminV51>section{padding:22px 15px}
}


/* ===== css/v51-responsive-guard.css ===== */
/* MHUR Nexus v5.1 — garde anti-chevauchement pour toutes les tailles et tous les zooms. */
header.top{box-sizing:border-box!important;min-width:0!important}
header.top .brand,
header.top .nexusHeaderLinks,
header.top .mhurTopActionsV31{min-width:0!important}

header.top.mhurHeaderCompactV51 .nexusHeaderBtn{
  width:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  padding:0!important;
  justify-content:center!important;
}
header.top.mhurHeaderCompactV51 .nexusHeaderBtnLabel,
header.top.mhurHeaderCompactV51 .nexusHeaderChevron{display:none!important}
header.top.mhurHeaderCompactV51 .mhurAccountButton{
  width:48px!important;
  min-width:48px!important;
  max-width:48px!important;
  padding:4px!important;
  justify-content:center!important;
}
header.top.mhurHeaderCompactV51 .mhurAccountButtonText{display:none!important}
header.top.mhurHeaderCompactV51 .mhurAdminTopButton{
  width:48px!important;
  min-width:48px!important;
  max-width:48px!important;
  padding:0!important;
  font-size:0!important;
}
header.top.mhurHeaderCompactV51 .mhurAdminTopButton::before{content:'🛡️';font-size:19px!important;line-height:1!important}
header.top.mhurHeaderCompactV51 .mhurTopActionsV31{gap:6px!important;max-width:none!important}
header.top.mhurHeaderCompactV51 .brand{max-width:230px!important;font-size:15px!important;line-height:1.02!important}

header.top.mhurHeaderTightV51 .nexusHeaderLinks{gap:4px!important}
header.top.mhurHeaderTightV51 .nexusHeaderBtn{width:42px!important;min-width:42px!important;max-width:42px!important;height:44px!important}
header.top.mhurHeaderTightV51 .mhurAccountButton,
header.top.mhurHeaderTightV51 .mhurAdminTopButton{width:42px!important;min-width:42px!important;max-width:42px!important;height:44px!important}
header.top.mhurHeaderTightV51 .mhurAccountButton img,
header.top.mhurHeaderTightV51 .mhurAccountAvatar{width:34px!important;height:34px!important;flex-basis:34px!important}
header.top.mhurHeaderTightV51 .lang{min-width:58px!important;padding-left:8px!important;padding-right:8px!important}
header.top.mhurHeaderTightV51 .brand{max-width:165px!important;font-size:12px!important;letter-spacing:.02em!important}
header.top.mhurHeaderTightV51 .brand span{font-size:.9em!important}

header.top.mhurHeaderMinimalV51 .brand{display:none!important}
header.top.mhurHeaderMinimalV51 .nexusHeaderLinks{left:58px!important;top:50%!important;transform:translateY(-50%)!important;gap:4px!important}
header.top.mhurHeaderMinimalV51 .nexusHeaderBtn{width:38px!important;min-width:38px!important;max-width:38px!important;height:40px!important;border-radius:11px!important}
header.top.mhurHeaderMinimalV51 .nexusHeaderIcon{font-size:18px!important}
header.top.mhurHeaderMinimalV51 .mhurAdminTopButton{display:none!important}
header.top.mhurHeaderMinimalV51 .mhurAccountButton{width:40px!important;min-width:40px!important;max-width:40px!important;height:42px!important;padding:2px!important}
header.top.mhurHeaderMinimalV51 .mhurAccountButton img,
header.top.mhurHeaderMinimalV51 .mhurAccountAvatar{width:34px!important;height:34px!important;flex-basis:34px!important}
header.top.mhurHeaderMinimalV51 .lang{min-width:54px!important;height:42px!important;padding:0 7px!important;font-size:13px!important}
header.top.mhurHeaderMinimalV51 > .mhurAccountButton{position:absolute!important;right:66px!important;top:50%!important;transform:translateY(-50%)!important}
header.top.mhurHeaderMinimalV51 > .lang{position:absolute!important;right:7px!important;top:50%!important;transform:translateY(-50%)!important}

/* Même sans JavaScript, les largeurs intermédiaires sont compactées assez tôt. */
@media(max-width:1320px) and (min-width:701px){
  header.top .nexusHeaderBtn{max-width:50px!important;width:50px!important;padding:0!important;justify-content:center!important}
  header.top .nexusHeaderBtnLabel,header.top .nexusHeaderChevron{display:none!important}
  header.top .mhurAccountButtonText{display:none!important}
  header.top .mhurAccountButton{max-width:50px!important;width:50px!important;padding:4px!important}
  header.top .mhurAdminTopButton{max-width:50px!important;width:50px!important;padding:0!important;font-size:0!important}
  header.top .mhurAdminTopButton::before{content:'🛡️';font-size:18px!important}
}
@media(max-width:700px){
  header.top #mhurAdminButton{display:none!important}
}


/* ===== css/v52-header-sanction-lock.css ===== */
/* MHUR Nexus v5.2 — header toujours complet, sans chevauchement. */
header.top{isolation:isolate!important}

/* On annule le mode v5.1 qui supprimait le logo ou le bouton de modération. */
header.top.mhurHeaderMinimalV51 .brand,
header.top.mhurHeaderMinimalV51 .mhurAdminTopButton,
header.top #mhurAdminButton{display:flex!important}

@media (max-width:760px){
  header.top,
  header.top.mhurHeaderCompactV51,
  header.top.mhurHeaderTightV51,
  header.top.mhurHeaderMinimalV51{
    position:relative!important;
    min-height:132px!important;
    height:auto!important;
    padding:10px 8px 12px!important;
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    grid-template-rows:52px 52px!important;
    gap:7px!important;
    align-items:center!important;
    overflow:visible!important;
  }
  header.top > .menuBtn{
    position:static!important;inset:auto!important;transform:none!important;
    grid-column:1!important;grid-row:1!important;
    width:100%!important;min-width:0!important;max-width:none!important;height:52px!important;margin:0!important;
  }
  header.top > .nexusHeaderLinks{
    position:static!important;inset:auto!important;transform:none!important;
    grid-column:2 / span 2!important;grid-row:1!important;
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;width:100%!important;min-width:0!important;
  }
  header.top .nexusHeaderBtn,
  header.top.mhurHeaderCompactV51 .nexusHeaderBtn,
  header.top.mhurHeaderTightV51 .nexusHeaderBtn,
  header.top.mhurHeaderMinimalV51 .nexusHeaderBtn{
    width:100%!important;min-width:0!important;max-width:none!important;height:52px!important;padding:0!important;
    justify-content:center!important;border-radius:14px!important;
  }
  header.top .nexusHeaderBtnLabel,header.top .nexusHeaderChevron{display:none!important}
  header.top .nexusHeaderIcon{font-size:22px!important}

  header.top > #mhurAdminButton,
  header.top > .mhurAdminTopButton{
    position:static!important;inset:auto!important;transform:none!important;
    grid-column:4!important;grid-row:1!important;
    display:flex!important;width:100%!important;min-width:0!important;max-width:none!important;height:52px!important;
    padding:0!important;font-size:0!important;margin:0!important;justify-content:center!important;
  }
  header.top > #mhurAdminButton::before,
  header.top > .mhurAdminTopButton::before{content:'🛡️';font-size:22px!important;line-height:1!important}

  header.top > #mhurAccountButton,
  header.top > .mhurAccountButton{
    position:static!important;inset:auto!important;transform:none!important;
    grid-column:5!important;grid-row:1!important;
    width:100%!important;min-width:0!important;max-width:none!important;height:52px!important;padding:4px!important;margin:0!important;
    justify-content:center!important;
  }
  header.top .mhurAccountButtonText{display:none!important}
  header.top .mhurAccountAvatar,header.top .mhurAccountButton img{width:40px!important;height:40px!important;flex:0 0 40px!important}

  header.top > .lang{
    position:static!important;inset:auto!important;transform:none!important;
    grid-column:6!important;grid-row:1!important;
    width:100%!important;min-width:0!important;max-width:none!important;height:52px!important;padding:0 4px!important;margin:0!important;
    font-size:14px!important;justify-content:center!important;
  }
  header.top > .brand,
  header.top.mhurHeaderMinimalV51 > .brand{
    position:static!important;inset:auto!important;transform:none!important;
    grid-column:1 / -1!important;grid-row:2!important;
    display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;
    width:100%!important;max-width:none!important;min-width:0!important;height:52px!important;margin:0!important;padding:0 6px!important;
    font-size:17px!important;line-height:1!important;text-align:center!important;white-space:normal!important;overflow:hidden!important;
  }
  header.top .brand span{font-size:14px!important;line-height:1!important}
  body{padding-top:132px!important}
  .nexusLinksOverlay{inset:132px 0 0!important}
}

@media (max-width:430px){
  header.top,header.top.mhurHeaderCompactV51,header.top.mhurHeaderTightV51,header.top.mhurHeaderMinimalV51{
    min-height:128px!important;padding-inline:5px!important;gap:5px!important;grid-template-rows:50px 50px!important;
  }
  header.top > .menuBtn,header.top .nexusHeaderBtn,header.top > #mhurAdminButton,header.top > .mhurAdminTopButton,
  header.top > #mhurAccountButton,header.top > .mhurAccountButton,header.top > .lang{height:50px!important;border-radius:12px!important}
  header.top .mhurAccountAvatar,header.top .mhurAccountButton img{width:37px!important;height:37px!important;flex-basis:37px!important}
  header.top > .brand{font-size:15px!important;height:50px!important}
  header.top .brand span{font-size:13px!important}
  body{padding-top:128px!important}
  .nexusLinksOverlay{inset:128px 0 0!important}
}

/* L'écran de sanction reste toujours au-dessus de toute l'application. */
#mhurSanctionV51{z-index:2147483647!important;position:fixed!important;inset:0!important}
html.mhurSanctionLockedV52,html.mhurSanctionLockedV52 body{overflow:hidden!important;overscroll-behavior:none!important}
html.mhurSanctionLockedV52 body>*:not(#mhurSanctionV51):not(#mhurAppealDialogV51){pointer-events:none!important;user-select:none!important}


/* ===== css/v53-responsive-header-modal.css ===== */
/* MHUR Nexus v5.3 — header responsive sans chevauchement ni bouton masqué. */
:root{--mhur-top-height:72px}

/* Les fenêtres doivent toujours passer devant le header. */
.mhurProfileDirectoryV30,
.mhurPublicProfileModal,
.mhurAuthOverlay,
#mhurUserAdminOverlayV29,
#mhurAppealDialogV51,
#mhurSanctionV51{
  z-index:2147483647!important;
}
html.mhurProfileDirectoryOpenV30 header.top,
html.mhurUserAdminOpenV30 header.top,
body:has(.mhurProfileDirectoryV30.open) header.top,
body:has(.mhurPublicProfileModal.open) header.top,
body:has(.mhurAuthOverlay.open) header.top{
  pointer-events:none!important;
}

@media (max-width:760px){
  :root{--mhur-top-height:122px!important}
  html{scroll-padding-top:calc(var(--mhur-top-height) + 70px)!important}
  body{padding-top:var(--mhur-top-height)!important}

  body > header.top,
  header.top,
  header.top.mhurHeaderCompactV51,
  header.top.mhurHeaderTightV51,
  header.top.mhurHeaderMinimalV51{
    box-sizing:border-box!important;
    position:fixed!important;
    inset:0 0 auto 0!important;
    width:100%!important;
    height:var(--mhur-top-height)!important;
    min-height:var(--mhur-top-height)!important;
    padding:8px!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:52px minmax(104px,1fr) minmax(156px,1.35fr)!important;
    grid-template-rows:52px 46px!important;
    grid-template-areas:
      "menu links actions"
      "brand brand brand"!important;
    gap:8px!important;
    align-items:center!important;
    overflow:visible!important;
  }

  header.top > .menuBtn{
    grid-area:menu!important;
    position:static!important;
    inset:auto!important;
    transform:none!important;
    width:52px!important;
    min-width:52px!important;
    max-width:52px!important;
    height:52px!important;
    margin:0!important;
  }

  header.top > .nexusHeaderLinks{
    grid-area:links!important;
    position:static!important;
    inset:auto!important;
    transform:none!important;
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
  }
  header.top .nexusHeaderBtn{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:52px!important;
    padding:0!important;
    justify-content:center!important;
    border-radius:13px!important;
  }
  header.top .nexusHeaderBtnLabel,
  header.top .nexusHeaderChevron{display:none!important}
  header.top .nexusHeaderIcon{font-size:21px!important}

  /* Les trois actions restent toutes présentes : modération, compte, langue. */
  header.top > .mhurTopActionsV31{
    grid-area:actions!important;
    position:static!important;
    inset:auto!important;
    transform:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:52px!important;
    margin:0!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
    align-items:center!important;
    pointer-events:auto!important;
  }
  header.top .mhurTopActionsV31 > .mhurAdminTopButton,
  header.top .mhurTopActionsV31 > #mhurAdminButton,
  header.top .mhurTopActionsV31 > .mhurAccountButton,
  header.top .mhurTopActionsV31 > #mhurAccountButton,
  header.top .mhurTopActionsV31 > .lang{
    position:static!important;
    inset:auto!important;
    transform:none!important;
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:52px!important;
    margin:0!important;
    padding:0 3px!important;
    justify-content:center!important;
    border-radius:13px!important;
  }
  header.top .mhurTopActionsV31 > .mhurAdminTopButton,
  header.top .mhurTopActionsV31 > #mhurAdminButton{font-size:0!important}
  header.top .mhurTopActionsV31 > .mhurAdminTopButton::before,
  header.top .mhurTopActionsV31 > #mhurAdminButton::before{content:'🛡️';font-size:20px!important;line-height:1!important}
  header.top .mhurAccountButtonText{display:none!important}
  header.top .mhurAccountAvatar,
  header.top .mhurAccountButton img{width:38px!important;height:38px!important;flex:0 0 38px!important}
  header.top .lang{font-size:13px!important;white-space:nowrap!important}

  header.top > .brand,
  header.top.mhurHeaderMinimalV51 > .brand{
    grid-area:brand!important;
    position:static!important;
    inset:auto!important;
    transform:none!important;
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:46px!important;
    margin:0!important;
    padding:0 8px!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    overflow:visible!important;
    white-space:normal!important;
    text-align:center!important;
    font-size:16px!important;
    line-height:.95!important;
  }
  header.top .brand span{font-size:13px!important;line-height:1!important}

  .drawer{top:var(--mhur-top-height)!important;max-height:calc(100dvh - var(--mhur-top-height))!important}
  .nexusLinksOverlay{inset:var(--mhur-top-height) 0 0!important}
  #app > .back,.wrap > .back,.back{top:calc(var(--mhur-top-height) + 10px)!important}

  /* L'annuaire utilise toute la fenêtre et ne passe jamais sous le header. */
  .mhurProfileDirectoryV30{padding:8px!important;align-items:flex-start!important}
  .mhurProfileDirectoryPanelV30{width:100%!important;max-width:720px!important;max-height:calc(100dvh - 16px)!important;margin:auto!important}
}

@media (max-width:520px){
  :root{--mhur-top-height:116px!important}
  body > header.top,
  header.top,
  header.top.mhurHeaderCompactV51,
  header.top.mhurHeaderTightV51,
  header.top.mhurHeaderMinimalV51{
    height:116px!important;
    min-height:116px!important;
    grid-template-columns:48px minmax(96px,1fr) minmax(144px,1.45fr)!important;
    grid-template-rows:48px 44px!important;
    gap:6px!important;
    padding:7px 6px!important;
  }
  header.top > .menuBtn{width:48px!important;min-width:48px!important;max-width:48px!important;height:48px!important}
  header.top .nexusHeaderBtn,
  header.top .mhurTopActionsV31,
  header.top .mhurTopActionsV31 > *{height:48px!important}
  header.top > .nexusHeaderLinks,
  header.top > .mhurTopActionsV31{gap:4px!important}
  header.top .mhurAccountAvatar,
  header.top .mhurAccountButton img{width:34px!important;height:34px!important;flex-basis:34px!important}
  header.top .lang{font-size:12px!important;padding:0 1px!important}
  header.top > .brand{height:44px!important;font-size:15px!important}
  header.top .brand span{font-size:12px!important}
}

@media (max-width:390px){
  :root{--mhur-top-height:112px!important}
  body > header.top,
  header.top,
  header.top.mhurHeaderCompactV51,
  header.top.mhurHeaderTightV51,
  header.top.mhurHeaderMinimalV51{
    height:112px!important;
    min-height:112px!important;
    grid-template-columns:44px minmax(88px,1fr) minmax(132px,1.45fr)!important;
    grid-template-rows:46px 42px!important;
    gap:5px!important;
    padding:7px 5px!important;
  }
  header.top > .menuBtn{width:44px!important;min-width:44px!important;max-width:44px!important;height:46px!important}
  header.top .nexusHeaderBtn,
  header.top .mhurTopActionsV31,
  header.top .mhurTopActionsV31 > *{height:46px!important;border-radius:11px!important}
  header.top .nexusHeaderIcon{font-size:18px!important}
  header.top .mhurTopActionsV31 > .mhurAdminTopButton::before,
  header.top .mhurTopActionsV31 > #mhurAdminButton::before{font-size:18px!important}
  header.top .mhurAccountAvatar,
  header.top .mhurAccountButton img{width:31px!important;height:31px!important;flex-basis:31px!important}
  header.top .lang{font-size:11px!important}
  header.top > .brand{height:42px!important;font-size:14px!important}
}


/* ===== css/v510-back-button-offset.css ===== */
/* MHUR Nexus v5.10 — bouton Retour toujours sous la totalité du header mobile.
   Ce fichier doit rester chargé après v5.9. */

@media (max-width:760px){
  :root{
    --mhur-header-visual-bottom:var(--mhur-header-bottom,var(--mhur-top-height,108px));
  }

  /* Le contenu commence sous le point le plus bas réellement occupé par le header,
     y compris lorsqu'un bouton ou une ligne déborde visuellement. */
  html body{
    padding-top:var(--mhur-header-visual-bottom)!important;
  }

  main#app.wrap,
  #app.wrap,
  #app{
    margin-top:0!important;
  }

  /* Le bouton Retour reste dans le flux de la page. Ainsi il ne peut plus remonter
     devant le header, même pendant le premier rendu, une rotation ou un retour cache. */
  #app > .back,
  .wrap > .back,
  .back{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    inset:auto!important;
    translate:none!important;
    transform:none!important;
    float:none!important;
    clear:both!important;
    display:inline-flex!important;
    width:max-content!important;
    max-width:calc(100vw - 24px)!important;
    margin:14px 0 14px 10px!important;
    z-index:120!important;
  }

  #app.mhurHasBackV57,
  #app:has(> .back){
    padding-top:0!important;
  }

  .back + .title,
  .back + .charPanel,
  .back + .pageFrame,
  .back + .styleGrid,
  .back + *{
    margin-top:0!important;
  }
}

/* iPhone très étroit : conserver un espace visible sans gaspiller de hauteur. */
@media (max-width:430px){
  #app > .back,
  .wrap > .back,
  .back{
    margin-top:12px!important;
    margin-bottom:12px!important;
    margin-left:8px!important;
  }
}


/* ===== css/v514-targeted-ui-fixes.css ===== */
/* MHUR Nexus v5.14 — corrections ciblées uniquement.
   - Profil public au-dessus des statistiques.
   - Panneaux Réseaux/Créateurs entièrement visibles sur téléphone.
   - Header desktop stable après redimensionnement. */

/* Le profil, son avatar et son identité gardent une vraie place dans le flux. */
#mhurPublicProfileBody{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
}
#mhurPublicProfileBody>.mhurProfileAdminV29{order:1!important}
#mhurPublicProfileBody>.mhurPublicProfileHero{
  order:2!important;
  position:relative!important;
  inset:auto!important;
  z-index:3!important;
  display:flex!important;
  width:100%!important;
  height:auto!important;
  min-height:176px!important;
  margin:0!important;
  overflow:visible!important;
  transform:none!important;
}
#mhurPublicProfileBody>.mhurProfileStats{
  order:3!important;
  position:relative!important;
  inset:auto!important;
  z-index:1!important;
  width:100%!important;
  margin:0!important;
  transform:none!important;
}
#mhurPublicProfileBody>.mhurProfileBuilds{order:4!important}
.mhurPublicProfileHero>.mhurPublicProfileAvatar,
.mhurPublicProfileHero>img.mhurPublicProfileAvatar,
.mhurPublicProfileHero>span.mhurPublicProfileAvatar{
  position:relative!important;
  inset:auto!important;
  z-index:4!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
}
.mhurPublicProfileHero>div{
  position:relative!important;
  inset:auto!important;
  z-index:4!important;
  min-width:0!important;
  height:auto!important;
  overflow:visible!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
}

/* Tous les éléments du header ordinateur restent sur la même ligne après
   un passage téléphone -> ordinateur. Aucune structure DOM n'est modifiée ici. */
@media (min-width:761px){
  body>header.top,
  header.top{
    height:72px!important;
    min-height:72px!important;
    align-items:center!important;
  }
  header.top>.menuBtn,
  header.top>.nexusHeaderLinks,
  header.top>.mhurTopActionsV31{
    top:50%!important;
    bottom:auto!important;
    translate:none!important;
    transform:translateY(-50%)!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
  header.top>.menuBtn{left:14px!important}
  header.top>.nexusHeaderLinks{left:76px!important}
  header.top>.brand{
    position:static!important;
    inset:auto!important;
    margin:0!important;
    translate:none!important;
    transform:none!important;
  }
}

@media (max-width:760px){
  /* Le panneau commence réellement sous le header fixe. Les propriétés sont
     séparées au lieu du raccourci inset afin d'éviter les anciennes règles iOS. */
  html body .nexusLinksOverlay{
    position:fixed!important;
    top:calc(var(--mhur-mobile-header-height,var(--mhur-header-bottom,112px)) + 2px)!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    inset-block-start:calc(var(--mhur-mobile-header-height,var(--mhur-header-bottom,112px)) + 2px)!important;
    box-sizing:border-box!important;
    padding:14px max(10px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px))!important;
    align-items:flex-start!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  html body .nexusLinksPanel{
    position:relative!important;
    top:0!important;
    right:auto!important;
    bottom:auto!important;
    left:0!important;
    box-sizing:border-box!important;
    width:min(560px,100%)!important;
    max-width:100%!important;
    max-height:calc(100dvh - var(--mhur-mobile-header-height,var(--mhur-header-bottom,112px)) - 30px)!important;
    margin:0 auto!important;
    padding:16px 12px 12px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scroll-padding-top:0!important;
    transform:none!important;
  }
  html body .nexusLinksOverlay.is-open .nexusLinksPanel{
    transform:none!important;
    opacity:1!important;
  }

  /* Le titre n'est plus sticky : il ne peut donc plus être replacé sous le
     header lorsque le navigateur restaure une ancienne position de défilement. */
  html body .nexusLinksTitle{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    z-index:5!important;
    box-sizing:border-box!important;
    min-height:54px!important;
    margin:0 0 10px!important;
    padding:6px 4px 10px!important;
    flex:0 0 auto!important;
    background:#0c1422!important;
    line-height:1.12!important;
    transform:none!important;
  }

  /* Sur téléphone le bloc identité est entièrement visible avant les statistiques. */
  #mhurPublicProfileBody>.mhurPublicProfileHero{
    min-height:190px!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:12px!important;
    padding:24px 16px 20px!important;
    text-align:center!important;
  }
  .mhurPublicProfileHero>.mhurPublicProfileAvatar,
  .mhurPublicProfileHero>img.mhurPublicProfileAvatar,
  .mhurPublicProfileHero>span.mhurPublicProfileAvatar{
    flex:0 0 112px!important;
    width:112px!important;
    height:112px!important;
    min-width:112px!important;
    min-height:112px!important;
  }
  .mhurPublicProfileHero h2,
  .mhurPublicProfileHero p,
  .mhurProfileBadges{
    position:static!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
  }
}


/* ===== css/v516-final-targeted-fixes.css ===== */
/* MHUR Nexus v5.16 — correctifs ciblés.
   1) Header ordinateur stable dès le premier affichage.
   2) Panneaux Réseaux/Créateurs réellement sous les deux lignes du header mobile.
   3) Présentation des médias existants lors de la modification d'un mod. */

/* Le HTML initial utilise volontairement les conteneurs mobiles pour éviter les
   sauts sur téléphone. Sur ordinateur, ces conteneurs sont neutralisés dès le
   premier rendu, avant l'exécution du JavaScript. */
@media (min-width:761px){
  html body > header.top,
  html body header.top{
    position:relative!important;
    box-sizing:border-box!important;
    display:flex!important;
    width:100%!important;
    height:72px!important;
    min-height:72px!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
  }

  html body header.top > .mhurMobileBrandRowV57,
  html body header.top > .mhurMobileToolbarV57{
    display:contents!important;
  }

  html body header.top > .menuBtn,
  html body header.top .mhurMobileToolbarV57 > .menuBtn{
    position:absolute!important;
    inset:auto auto auto 14px!important;
    top:50%!important;
    margin:0!important;
    translate:none!important;
    transform:translateY(-50%)!important;
  }

  html body header.top > .nexusHeaderLinks,
  html body header.top .mhurMobileToolbarV57 > .nexusHeaderLinks{
    position:absolute!important;
    inset:auto auto auto 76px!important;
    top:50%!important;
    margin:0!important;
    translate:none!important;
    transform:translateY(-50%)!important;
  }

  html body header.top > .brand,
  html body header.top .mhurMobileBrandRowV57 > .brand{
    position:absolute!important;
    inset:auto!important;
    top:50%!important;
    left:50%!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    translate:none!important;
    transform:translate(-50%,-50%)!important;
  }

  html body header.top > .mhurTopActionsV31,
  html body header.top .mhurMobileToolbarV57 > .mhurTopActionsV31{
    position:absolute!important;
    inset:auto 14px auto auto!important;
    top:50%!important;
    margin:0!important;
    translate:none!important;
    transform:translateY(-50%)!important;
  }

  html body header.top .menuBtn,
  html body header.top .nexusHeaderLinks,
  html body header.top .brand,
  html body header.top .mhurTopActionsV31{
    transition-property:background-color,border-color,color,box-shadow,opacity!important;
  }
}

@media (max-width:760px){
  /* La valeur est mesurée sur le bas de la deuxième ligne (toolbar), pas
     uniquement sur la boîte du header qui peut être plus petite sur iOS. */
  html body .nexusLinksOverlay{
    position:fixed!important;
    top:var(--mhur-links-panel-top,calc(var(--mhur-mobile-header-height,112px) + 4px))!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    inset-block-start:var(--mhur-links-panel-top,calc(var(--mhur-mobile-header-height,112px) + 4px))!important;
    box-sizing:border-box!important;
    padding:12px max(10px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px))!important;
    align-items:flex-start!important;
    justify-content:center!important;
    overflow:hidden!important;
  }

  html body .nexusLinksPanel{
    position:relative!important;
    inset:auto!important;
    top:0!important;
    box-sizing:border-box!important;
    width:min(560px,100%)!important;
    max-width:100%!important;
    max-height:calc(100dvh - var(--mhur-links-panel-top,calc(var(--mhur-mobile-header-height,112px) + 4px)) - 14px)!important;
    margin:0 auto!important;
    padding:18px 12px 12px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scroll-padding-top:0!important;
    translate:none!important;
    transform:none!important;
  }

  html body .nexusLinksOverlay.is-open .nexusLinksPanel{
    opacity:1!important;
    translate:none!important;
    transform:none!important;
  }

  html body .nexusLinksTitle{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    z-index:5!important;
    box-sizing:border-box!important;
    min-height:58px!important;
    margin:0 0 12px!important;
    padding:8px 54px 12px 4px!important;
    line-height:1.14!important;
    overflow:visible!important;
    translate:none!important;
    transform:none!important;
  }
}

/* Médias déjà enregistrés dans la fenêtre de modification d'un mod. */
.modsForm .mhurModFilesDraft,
.modsForm .mhurMediaDraftPreview{
  width:100%;
}
.modsForm .mhurModFileDraftCard{
  position:relative;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 32px;
  gap:10px;
  align-items:center;
  width:100%;
  margin:8px 0;
  padding:10px;
  border:1px solid #43628b;
  border-radius:12px;
  background:#0b1628;
  color:#fff;
}
.modsForm .mhurModFileDraftCard > span{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:10px;
  background:#172943;
  font-size:22px;
}
.modsForm .mhurModFileDraftCard > div{min-width:0}
.modsForm .mhurModFileDraftCard b,
.modsForm .mhurModFileDraftCard small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.modsForm .mhurModFileDraftCard small{margin-top:3px;color:#b8cae2}
.modsForm .mhurExistingMediaCard{box-shadow:inset 4px 0 0 #ffe000}
.modsForm .mhurNewMediaCard{box-shadow:inset 4px 0 0 #38bdf8}
.modsForm .mhurMediaStateBadge{
  display:inline-block!important;
  width:auto!important;
  height:auto!important;
  margin:0 0 6px!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  background:#263b5b!important;
  color:#ffe000!important;
  font-size:.7rem!important;
  font-weight:900!important;
  line-height:1!important;
}


/* ===== css/v517-header-panels-final.css ===== */
/* MHUR Nexus v5.17 — correctif final ciblé du header et des panneaux.
   - Les boutons Réseaux sociaux / Créateurs de contenu sont stylés et placés
     dès le premier rendu ordinateur.
   - Sur téléphone, les panneaux commencent réellement sous les DEUX lignes
     du header et leur titre ne peut plus être restauré dans une position coupée. */

@media (min-width:761px){
  html body > header.top,
  html body header.top{
    position:relative!important;
    display:flex!important;
    box-sizing:border-box!important;
    width:100%!important;
    height:72px!important;
    min-height:72px!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
  }

  html body header.top > .mhurMobileBrandRowV57,
  html body header.top > .mhurMobileToolbarV57{
    display:contents!important;
  }

  html body header.top .menuBtn{
    position:absolute!important;
    top:50%!important;
    right:auto!important;
    bottom:auto!important;
    left:14px!important;
    width:50px!important;
    height:50px!important;
    margin:0!important;
    translate:none!important;
    transform:translateY(-50%)!important;
  }

  html body header.top .nexusHeaderLinks{
    position:absolute!important;
    top:50%!important;
    right:auto!important;
    bottom:auto!important;
    left:76px!important;
    z-index:45!important;
    display:flex!important;
    width:auto!important;
    height:50px!important;
    margin:0!important;
    padding:0!important;
    align-items:stretch!important;
    gap:9px!important;
    translate:none!important;
    transform:translateY(-50%)!important;
  }

  html body header.top .nexusHeaderBtn{
    -webkit-appearance:none!important;
    appearance:none!important;
    position:static!important;
    display:flex!important;
    box-sizing:border-box!important;
    width:auto!important;
    min-width:0!important;
    height:50px!important;
    margin:0!important;
    padding:0 15px!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    border:2px solid #49658d!important;
    border-radius:14px!important;
    background:#132139!important;
    color:#fff!important;
    box-shadow:0 4px 12px rgba(0,0,0,.22)!important;
    font-size:16px!important;
    font-weight:900!important;
    line-height:1!important;
    white-space:nowrap!important;
    translate:none!important;
    transform:none!important;
  }
  html body header.top .nexusHeaderBtn:hover,
  html body header.top .nexusHeaderBtn[aria-expanded="true"]{
    border-color:#ffe000!important;
    background:#1d3152!important;
    color:#ffe000!important;
  }
  html body header.top .nexusHeaderIcon{font-size:21px!important;line-height:1!important}
  html body header.top .nexusHeaderBtnLabel{display:inline!important}
  html body header.top .nexusHeaderChevron{display:inline!important;font-size:12px!important;opacity:.8!important}

  html body header.top .brand{
    position:absolute!important;
    top:50%!important;
    right:auto!important;
    bottom:auto!important;
    left:50%!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    translate:none!important;
    transform:translate(-50%,-50%)!important;
  }

  html body header.top .mhurTopActionsV31{
    position:absolute!important;
    top:50%!important;
    right:14px!important;
    bottom:auto!important;
    left:auto!important;
    z-index:2147483606!important;
    display:flex!important;
    width:auto!important;
    min-width:0!important;
    max-width:min(49vw,590px)!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:9px!important;
    pointer-events:none!important;
    translate:none!important;
    transform:translateY(-50%)!important;
  }
  html body header.top .mhurTopActionsV31 > *{pointer-events:auto!important}
  html body header.top .mhurTopActionsV31 > .mhurAdminTopButton,
  html body header.top .mhurTopActionsV31 > .mhurAccountButton,
  html body header.top .mhurTopActionsV31 > .lang{
    position:static!important;
    inset:auto!important;
    margin:0!important;
    flex:0 0 auto!important;
    translate:none!important;
    transform:none!important;
  }
}

@media (min-width:761px) and (max-width:950px){
  html body header.top .nexusHeaderBtn{
    width:50px!important;
    min-width:50px!important;
    padding:0!important;
  }
  html body header.top .nexusHeaderBtnLabel,
  html body header.top .nexusHeaderChevron{display:none!important}
}

@media (max-width:760px){
  :root{
    --mhur-v517-header-fallback:calc(108px + env(safe-area-inset-top,0px));
    --mhur-v517-panel-top:max(var(--mhur-v517-measured-header-bottom,0px),var(--mhur-v517-header-fallback));
  }

  html body .nexusLinksOverlay{
    position:fixed!important;
    top:var(--mhur-v517-panel-top)!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    inset-block-start:var(--mhur-v517-panel-top)!important;
    box-sizing:border-box!important;
    display:block!important;
    height:auto!important;
    max-height:none!important;
    padding:12px max(10px,env(safe-area-inset-right,0px)) max(14px,env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scroll-behavior:auto!important;
    scroll-padding-top:0!important;
  }

  html body .nexusLinksPanel{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    box-sizing:border-box!important;
    width:min(560px,100%)!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0 auto 14px!important;
    padding:18px 12px 12px!important;
    overflow:visible!important;
    overscroll-behavior:auto!important;
    scroll-behavior:auto!important;
    opacity:0;
    translate:none!important;
    transform:none!important;
  }

  html body .nexusLinksOverlay.is-open .nexusLinksPanel{
    opacity:1!important;
    translate:none!important;
    transform:none!important;
  }

  html body .nexusLinksTitle{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    z-index:5!important;
    box-sizing:border-box!important;
    display:flex!important;
    min-height:62px!important;
    margin:0 0 12px!important;
    padding:8px 54px 12px 4px!important;
    align-items:flex-start!important;
    overflow:visible!important;
    line-height:1.14!important;
    scroll-margin-top:0!important;
    translate:none!important;
    transform:none!important;
  }
  html body .nexusLinksTitle > span{
    display:block!important;
    min-width:0!important;
    overflow:visible!important;
  }
}

@media (max-width:390px){
  :root{
    --mhur-v517-header-fallback:calc(100px + env(safe-area-inset-top,0px));
  }
}


/* ===== css/v518-desktop-fixed-header.css ===== */
/* MHUR Nexus v5.18 — correction ciblée ordinateur.
   Le correctif v5.17 avait remis le header dans le flux de la page sur PC,
   ce qui créait un espace vide au-dessus et empêchait la barre de rester fixe.
   Cette règle restaure uniquement le comportement fixe d'origine sur ordinateur. */

@media (min-width:761px){
  :root{
    --mhur-top-height:72px;
  }

  html body{
    padding-top:var(--mhur-top-height)!important;
  }

  html body > header.top,
  html body header.top{
    position:fixed!important;
    inset:0 0 auto 0!important;
    top:0!important;
    right:0!important;
    bottom:auto!important;
    left:0!important;
    width:100%!important;
    height:var(--mhur-top-height)!important;
    min-height:var(--mhur-top-height)!important;
    margin:0!important;
    z-index:2147483600!important;
    translate:none!important;
    transform:none!important;
  }
}


/* ===== css/v561-discount-full-width.css ===== */
/* MHUR FRANCE — V561
   Corrige les cartes de réduction coupées en deux.
   Le vieux CSS conservait plusieurs colonnes à l'intérieur des cartes V559.
*/

.discountGridV296.v559DiscountGrid > .v559DiscountCard {
  grid-template-columns: minmax(0, 1fr) !important;
  grid-auto-columns: minmax(0, 1fr) !important;
  grid-auto-flow: row !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

/* Chaque partie prend toute la largeur de la carte. */
.discountGridV296.v559DiscountGrid > .v559DiscountCard > .v559DiscountArt,
.discountGridV296.v559DiscountGrid > .v559DiscountCard > .s18DiscountArtV19 {
  grid-column: 1 / -1 !important;
  grid-row: 1 !important;
  justify-self: stretch !important;
  align-self: stretch !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.discountGridV296.v559DiscountGrid > .v559DiscountCard > .v559DiscountName {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  justify-self: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

.discountGridV296.v559DiscountGrid > .v559DiscountCard > .v559DiscountRole {
  grid-column: 1 / -1 !important;
  grid-row: 3 !important;
  justify-self: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

.discountGridV296.v559DiscountGrid > .v559DiscountCard > .v559DiscountPointsRow {
  grid-column: 1 / -1 !important;
  grid-row: 4 !important;
  justify-self: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

/* Le portrait remplit réellement le bloc image. */
.discountGridV296.v559DiscountGrid
> .v559DiscountCard
> .v559DiscountArt
> img,
.discountGridV296.v559DiscountGrid
> .v559DiscountCard
> .s18DiscountArtV19
> img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: none !important;
  box-sizing: border-box !important;
}

/* Protection contre les anciennes règles qui recréaient une colonne étroite. */
.discountGridV296.v559DiscountGrid > .v559DiscountCard > * {
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@media (min-width: 701px) {
  .discountGridV296.v559DiscountGrid > .v559DiscountCard {
    grid-template-rows: 174px 40px 45px 45px !important;
  }
}

@media (max-width: 700px) {
  .discountGridV296.v559DiscountGrid > .v559DiscountCard {
    grid-template-rows: 150px 39px 43px 43px !important;
  }
}


/* ===== css/v582-final-new.css ===== */

/* MHUR Nexus — V582 : couleurs INCOMING + NEW fiables */

/* Les anciens NEW sont masqués uniquement sur les cartes gérées par V582. */
.card[data-char] > .s18NewBadge,
.styleCard[data-style] > .s18NewBadge,
.costumeTile > .s18NewBadge,
.costumeCard > .s18NewBadge,
.costumeResult > .s18NewBadge{
  display:none!important;
  visibility:hidden!important;
}

/* Le badge V582 réutilise exactement l'image NEW du site. */
.mhurNewV582{
  position:absolute!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:none!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:
    transparent
    url('../assets/home/icons/new_badge_custom.png')
    center/contain no-repeat!important;
  color:transparent!important;
  text-indent:-9999px!important;
  overflow:visible!important;
  box-shadow:none!important;
  transform-origin:center!important;
  z-index:100!important;
  animation:mhurNewPulseV582 .9s ease-in-out infinite!important;
  will-change:transform!important;
}

@keyframes mhurNewPulseV582{
  0%,100%{transform:scale(.90)}
  50%{transform:scale(1.14)}
}

/* Gentle à l'accueil bouge également. */
.s18PlannedCardV12[data-planned="gentle"] .s18PlannedNewV12{
  animation:mhurNewPulseV582 .9s ease-in-out infinite!important;
  transform-origin:center!important;
}

/* Personnages et T.U.N.I.N.G : haut à droite. */
.card[data-char] > .mhurNewV582,
.styleCard[data-style] > .mhurNewV582{
  top:7px!important;
  right:7px!important;
  left:auto!important;
  width:88px!important;
  height:44px!important;
}

/* Costumes : plus petit, sous les étoiles à droite. */
.costumeTile > .mhurNewV582,
.costumeCard > .mhurNewV582,
.costumeResult > .mhurNewV582{
  top:38px!important;
  right:8px!important;
  left:auto!important;
  width:64px!important;
  height:34px!important;
  z-index:90!important;
}

.costumeTile > .costumeTileStars,
.costumeCard > .costumeTileStars,
.costumeResult > .costumeTileStars{
  position:absolute!important;
  top:7px!important;
  right:8px!important;
  z-index:101!important;
}

/* INCOMING commun : grand et complètement fixe. */
.mhurIncomingV582{
  position:absolute!important;
  z-index:105!important;
  top:9px!important;
  right:10px!important;
  min-width:172px!important;
  height:58px!important;
  padding:0 19px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:4px solid #050505!important;
  border-radius:10px!important;
  color:#fff!important;
  font-family:Impact,Haettenschweiler,'Arial Black',sans-serif!important;
  font-size:24px!important;
  font-style:italic!important;
  line-height:1!important;
  letter-spacing:.8px!important;
  white-space:nowrap!important;
  box-shadow:0 5px 0 #050505!important;
  text-shadow:2px 2px 0 #000!important;
  animation:none!important;
  transform:none!important;
  filter:none!important;
}

/* Twice Support : vert et noir. */
.mhurIncomingTwiceV582{
  background:
    linear-gradient(
      135deg,
      #21cf55 0%,
      #21cf55 52%,
      #050505 52%,
      #050505 100%
    )!important;
}

/* Tsuyu : rouge et noir. */
.mhurIncomingTsuyuV582{
  background:
    linear-gradient(
      135deg,
      #e3223e 0%,
      #e3223e 52%,
      #050505 52%,
      #050505 100%
    )!important;
}

@media(max-width:700px){
  .card[data-char] > .mhurNewV582,
  .styleCard[data-style] > .mhurNewV582{
    width:76px!important;
    height:38px!important;
  }

  .costumeTile > .mhurNewV582,
  .costumeCard > .mhurNewV582,
  .costumeResult > .mhurNewV582{
    top:34px!important;
    right:7px!important;
    width:54px!important;
    height:29px!important;
  }

  .mhurIncomingV582{
    min-width:148px!important;
    height:50px!important;
    padding:0 14px!important;
    font-size:20px!important;
  }
}


/* ===== css/v587-images-notes-stable.css ===== */

/* MHUR Nexus — V587 : bouton Notes, navigation et résultats mixtes */

/* Le bouton reste toujours dans le header. */
#mhurPatchDevButtonV14,
.mhurPatchDevButtonV14,
[data-s18-notes-button]{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  pointer-events:auto!important;
  flex:0 0 auto!important;
  min-width:46px!important;
  min-height:42px!important;
  z-index:250!important;
}

.mhurPatchDevIconV587{
  width:22px!important;
  height:22px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 22px!important;
}

.mhurPatchDevIconV587 svg{
  display:block!important;
  width:22px!important;
  height:22px!important;
}

.mhurPatchDevLabelV587{
  display:inline!important;
  white-space:nowrap!important;
}

/* Les deux onglets Patch Notes / Dev Notes restent toujours visibles. */
#s18NotesDevModalV10 .s18NotesPanelV10 > nav{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  min-height:54px!important;
  flex:0 0 54px!important;
  pointer-events:auto!important;
  position:sticky!important;
  top:0!important;
  z-index:30!important;
}

#s18NotesDevModalV10 .s18NotesPanelV10 > nav > button{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  pointer-events:auto!important;
  min-height:52px!important;
  flex:1 1 50%!important;
}

#s18NotesDevModalV10 [data-patch-index]{
  pointer-events:auto!important;
  cursor:pointer!important;
  position:relative!important;
  z-index:2!important;
}

/* Carte mixte : NERF sur certains niveaux et BUFF sur d'autres. */
.s18PatchChangeV10.mixed{
  border-color:#f3a62f!important;
  box-shadow:
    inset 5px 0 0 #c92340,
    inset -5px 0 0 #15944a!important;
}

.s18ToneV10.mixed,
.s18PatchDetailHeadV10 .mixed{
  color:#fff!important;
  background:
    linear-gradient(
      90deg,
      #c92340 0%,
      #c92340 50%,
      #15944a 50%,
      #15944a 100%
    )!important;
  border:2px solid #080b10!important;
  border-radius:999px!important;
  font-weight:1000!important;
  white-space:nowrap!important;
}

.s18ToneV10.mixed{
  min-width:128px!important;
  text-align:center!important;
}

.s18PatchTableV10 tr.after td{
  position:relative!important;
}

.s18PatchTableV10 tr.after td.mhurLevel-buffV587{
  background:#164b2d!important;
  box-shadow:inset 0 -4px 0 #20d26f!important;
}

.s18PatchTableV10 tr.after td.mhurLevel-nerfV587{
  background:#551923!important;
  box-shadow:inset 0 -4px 0 #ff4e67!important;
}

.s18PatchTableV10 tr.after td.mhurLevel-sameV587{
  background:#273347!important;
  box-shadow:inset 0 -4px 0 #8da2bf!important;
}

.s18PatchTableV10 tr.after td.mhurLevel-unknownV587{
  background:#3b300f!important;
  box-shadow:inset 0 -4px 0 #d1a92a!important;
}

.mhurLevelToneV587{
  display:block!important;
  margin-top:4px!important;
  font-size:10px!important;
  font-weight:1000!important;
  line-height:1!important;
  letter-spacing:.5px!important;
}

.mhurLevel-buffV587 .mhurLevelToneV587{
  color:#6dffa3!important;
}

.mhurLevel-nerfV587 .mhurLevelToneV587{
  color:#ff8b9b!important;
}

@media(max-width:900px){
  #mhurPatchDevButtonV14,
  .mhurPatchDevButtonV14,
  [data-s18-notes-button]{
    min-width:42px!important;
    width:42px!important;
    padding:8px!important;
  }

  .mhurPatchDevLabelV587,
  #mhurPatchDevButtonV14 > span:last-child{
    display:none!important;
  }

  #s18NotesDevModalV10 .s18NotesPanelV10 > nav{
    min-height:50px!important;
    flex-basis:50px!important;
  }
}


html,body{background:#07101f!important}
html.mhurV630Booting body,
html.mhurV630Booting body>*,
html.mhurV630RouteLoading #app,
html.mhurV633Preparing body,
html.mhurV633RoutePreparing #app,
html.mhurV633CPreparing body,
html.mhurV633CRoutePreparing #app,
html.mhurV636InitialPreparing body,
html.mhurV636RoutePreparing #app,
html.mhurV637Preparing body,
html.mhurV637Preparing body>*{
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  overflow:visible!important;
}
html.mhurV630Booting::before,
html.mhurV630Booting::after,
html.mhurV630RouteLoading::before,
html.mhurV630RouteLoading::after,
html.mhurV633Preparing::before,
html.mhurV633CPreparing::before,
html.mhurV636InitialPreparing::before,
html.mhurV637Preparing::before{
  content:none!important;
  display:none!important;
}
html body .costumeTile>img,
html body #app .costumeTile>img[data-v622-waiting],
html body #app .costumeTile>img:not([data-v622-ready]){
  visibility:visible!important;
  opacity:1!important;
}
html body .costumeTile,
html body .mhurTierItem,
html body .tuningCard,
html body .communityBuildCard{
  content-visibility:auto;
  contain-intrinsic-size:auto 420px;
}


/* V639 RUNTIME START */
html,
body{
  background:#07101f!important;
}

/* Neutralisation définitive des anciens moteurs de rendu. */
html.mhurV630Booting body,
html.mhurV630Booting body>*,
html.mhurV630RouteLoading #app,
html.mhurV633Preparing body,
html.mhurV633RoutePreparing #app,
html.mhurV633CPreparing body,
html.mhurV633CRoutePreparing #app,
html.mhurV636InitialPreparing body,
html.mhurV636RoutePreparing #app,
html.mhurV637Preparing body,
html.mhurV637Preparing body>*{
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}

html.mhurV630Booting::before,
html.mhurV630Booting::after,
html.mhurV630RouteLoading::before,
html.mhurV630RouteLoading::after,
html.mhurV633Preparing::before,
html.mhurV633CPreparing::before,
html.mhurV636InitialPreparing::before,
html.mhurV637Preparing::before{
  content:none!important;
  display:none!important;
}

/* Les anciennes versions ne peuvent plus cacher les images. */
html body .costumeTile>img,
html body #app .costumeTile>img[data-v622-waiting],
html body #app .costumeTile>img:not([data-v622-ready]){
  visibility:visible!important;
  opacity:1!important;
}
/* V639 RUNTIME END */
