/* Pages additionnelles uniquement : ne modifie pas accueil ni inscription */
.inner-page{min-height:100svh;overflow:visible;background:#080b12}
.inner-page .page-bg{position:fixed;top:var(--header-height)!important;height:calc(100svh - var(--header-height))!important;opacity:.72;filter:saturate(.95)}
.inner-page:after{position:fixed;background:linear-gradient(180deg,rgba(8,11,18,.70) 0%,rgba(8,11,18,.88) 42%,rgba(8,11,18,.96) 100%)}
.inner-main{position:relative;z-index:2;width:var(--content-width);max-width:1160px;margin:0 auto;padding:clamp(44px,7vh,72px) 0 140px}
.page-title{text-align:center;margin:0 0 36px}.page-title h1{margin:0 0 12px;font-weight:400;letter-spacing:.5px}.page-title h1 span{color:#e31e26}.page-title p{margin:0 auto;color:#d9d9d9;max-width:760px}.panel{background:rgba(14,18,28,.8);border:1px solid rgba(227,30,38,.32);border-radius:16px}.section-card2{padding:clamp(0px,0.1vw,0px);margin-bottom:24px}.section-card{padding:clamp(22px,3vw,34px);margin-bottom:24px}.section-head{display:flex;align-items:center;gap:14px;margin-bottom:20px}.section-head img{width:36px;height:36px;object-fit:contain}.section-head h2{margin:0;color:#fff;font-weight:400}.muted{color:#d9d9d9}.btn-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}.outline-btn, .red-btn{min-height:47px;border-radius:7px;padding:0 22px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:15px}.red-btn{background:#e31e26;color:#fff;border:1px solid #e31e26}.outline-btn{color:#fff;border:1px solid rgba(255,255,255,.28);background:rgba(8,11,18,.42)}

.game-list{display:grid;gap:24px}.game-card{padding:clamp(22px,3vw,34px);display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:24px;align-items:start}.game-card h2{margin:0 0 6px;font-weight:400}.game-card .category{color:#e31e26;margin:0 0 18px}.game-card p{color:#d9d9d9;line-height:1.55}.game-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}.game-meta div{border:1px solid rgba(255,255,255,.16);background:rgba(8,11,18,.44);padding:13px;border-radius:8px}.game-meta strong{display:block;color:#fff;font-weight:400}.game-meta span{display:block;color:#d9d9d9;margin-top:4px;font-size:16px}.prize-box{text-align:center;background:rgba(227,30,38,.16);border:1px solid #e31e26;border-radius:10px;padding:20px}.prize-box strong{display:block;font-weight:400}.prize-box span{font-size:16px;color:#d9d9d9}.feature-list{margin:18px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 18px}.feature-list li{color:#d9d9d9}.feature-list li:before{content:"•";color:#e31e26;margin-right:9px}
.rules-stack{display:grid;gap:22px}.rule-list{margin:0;padding:0;list-style:none;display:grid;gap:14px}.rule-list li{color:#d9d9d9;line-height:1.55;padding-left:28px;position:relative}.rule-list li:before{content:"✓";position:absolute;left:0;top:0;color:#e31e26}.rule-list strong{color:#fff;font-weight:400}
.tag{background:#e31e26;color:#fff;font-size:16px;border-radius:999px;padding:6px 11px;white-space:nowrap}
.contact-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:24px}.contact-form{display:grid;gap:16px}.two-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.contact-form label{color:#fff}.contact-form input, .contact-form select, .contact-form textarea{display:block;width:100%;margin-top:8px;border:1px solid #d9d9d9;border-radius:5px;background:rgba(8,11,18,.54);color:#fff;padding:0 12px;font-size:14px;outline:none}.contact-form input, .contact-form select{height:40px}.contact-form textarea{min-height:150px;padding-top:12px;resize:vertical}.contact-form option{color:#111}.contact-info{display:grid;gap:16px}.contact-line{display:flex;align-items:flex-start;gap:13px;color:#d9d9d9}.contact-line img{width:28px;height:28px;object-fit:contain;flex:0 0 auto}.contact-line strong{display:block;color:#fff;font-weight:400;margin-bottom:4px}
.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px}.about-list{display:grid;gap:14px}.about-list div{padding:16px;background:rgba(8,11,18,.44);border:1px solid rgba(255,255,255,.12);border-radius:10px}.about-list strong{display:block;color:#e31e26;font-weight:400;margin-bottom:6px}.about-list p{margin:0;color:#d9d9d9;line-height:1.5}
@media (max-width:980px){.inner-main{padding-top:42px;padding-bottom:44px}.game-meta{grid-template-columns:1fr}.game-card, .contact-grid, .about-grid{grid-template-columns:1fr}.feature-list{grid-template-columns:1fr}.tag{width:max-content}.two-cols{grid-template-columns:1fr}}
@media (max-width:640px){.page-title{text-align:left}.section-card2{border-radius:12px}.section-card{border-radius:12px}.btn-row a{width:100%}}

/* Admin inscriptions */
.admin-main{padding-bottom:150px}.admin-title{margin-bottom:24px}.admin-alert{margin:0 0 18px;padding:12px 15px;border-radius:8px;border:1px solid transparent;background:rgba(14,18,28,.8)}.admin-alert.success{border-color:rgba(40,167,69,.72);background:rgba(40,167,69,.18)}.admin-alert.error{border-color:rgba(227,30,38,.72);background:rgba(227,30,38,.18)}.admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.stat-card{border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(14,18,28,.8);padding:18px}.stat-card span{display:block;color:#d9d9d9;margin-bottom:8px}.stat-card strong{font-weight:400;line-height:1}.stat-card.pending{border-color:rgba(255,193,7,.45)}.stat-card.confirmed{border-color:rgba(40,167,69,.45)}.stat-card.rejected{border-color:rgba(227,30,38,.45)}.admin-filters{padding:18px;margin-bottom:18px}.admin-filters form{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.admin-filters label{display:grid;gap:7px;font-size:16px;text-transform:uppercase;color:#fff;min-width:190px}.admin-filters select{height:40px;border:1px solid rgba(255,255,255,.28);border-radius:7px;background:#080b12;color:#fff;padding:0 12px}.admin-filter-btn, .admin-reset-btn{height:40px;border-radius:7px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:14px}.admin-filter-btn{border:1px solid #e31e26;background:#e31e26;color:#fff}.admin-reset-btn{border:1px solid rgba(255,255,255,.28);background:rgba(8,11,18,.45);color:#fff}.admin-game-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.game-count-card{border:1px solid rgba(227,30,38,.28);border-radius:14px;background:rgba(14,18,28,.8);padding:16px}.game-count-card h2{font-size:18px;font-weight:400;margin:0 0 8px}.game-count-card p{margin:0 0 12px;color:#e31e26}.mini-stats{display:flex;gap:8px;flex-wrap:wrap}.mini-stats span{font-size:16px;color:#d9d9d9;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:5px 8px}.admin-table-panel{overflow:hidden}.admin-table-head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid rgba(255,255,255,.12)}.admin-table-head h2{margin:0;font-size:22px;font-weight:400}.admin-table-head span{color:#d9d9d9}.admin-table{width:100%;border-collapse:collapse;min-width:980px}.admin-table th, .admin-table td{padding:14px 16px;text-align:left;border-bottom:1px solid rgba(255,255,255,.1);vertical-align:top}.admin-table th{text-transform:uppercase;color:#d9d9d9;font-weight:400;background:rgba(8,11,18,.45)}.admin-table td strong, .admin-table td span{display:block}.admin-table td span{color:#d9d9d9;margin-top:4px}.status-pill{display:inline-flex!important;align-items:center;border-radius:999px;padding:5px 10px;font-size:16px!important;margin:0!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)}.status-pill.pending{background:rgba(255,193,7,.16);border-color:rgba(255,193,7,.44)}.status-pill.confirmed{background:rgba(40,167,69,.18);border-color:rgba(40,167,69,.5)}.status-pill.rejected{background:rgba(227,30,38,.18);border-color:rgba(227,30,38,.5)}.small-action{height:30px;border-radius:6px;border:1px solid rgba(255,255,255,.2);padding:0 9px;color:#fff;background:rgba(8,11,18,.6);font-size:16px;cursor:pointer}.small-action.confirm{border-color:rgba(40,167,69,.8);background:rgba(40,167,69,.24)}.small-action.reject, .small-action.delete{border-color:rgba(227,30,38,.8);background:rgba(227,30,38,.22)}.small-action.pending{border-color:rgba(255,193,7,.65);background:rgba(255,193,7,.14)}.empty-admin{padding:36px;text-align:center;color:#d9d9d9}.login-btn{text-decoration:none}.login-btn.active{color:#e31e26}
@media (max-width:980px){.admin-stats, .admin-game-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-main{padding-bottom:60px}.admin-filters form{align-items:stretch}.admin-filters label{min-width:min(100%,220px)}}
@media (max-width:620px){.admin-stats, .admin-game-counts{grid-template-columns:1fr}.admin-filter-btn, .admin-reset-btn{width:100%}.admin-filters label{width:100%}.admin-table-head{align-items:flex-start;gap:8px;flex-direction:column}}

/* Admin jeux */
.admin-tabs{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 18px}.admin-tabs a{height:40px;border-radius:7px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:#fff;border:1px solid rgba(255,255,255,.22);background:rgba(8,11,18,.48);font-size:14px}.admin-tabs a.active{border-color:#e31e26;background:#e31e26}.admin-game-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.admin-game-top h2{margin:0 0 6px;font-size:24px;font-weight:400}.admin-game-top p{margin:0;color:#e31e26}.game-status{border-radius:999px;padding:6px 10px;font-size:16px;color:#fff;border:1px solid rgba(255,255,255,.18);white-space:nowrap}.game-status.active{background:rgba(40,167,69,.18);border-color:rgba(40,167,69,.55)}.game-status.disabled{background:rgba(227,30,38,.18);border-color:rgba(227,30,38,.55)}.admin-game-form{display:grid;gap:12px;margin-top:14px}.admin-game-form label{display:grid;gap:7px;color:#fff;font-size:16px;text-transform:uppercase}.admin-game-form input{height:40px;border:1px solid rgba(255,255,255,.28);border-radius:7px;background:#080b12;color:#fff;padding:0 12px;outline:none}.admin-alert.small{font-size:16px;padding:9px 10px;margin:0 0 12px}
@media (max-width:680px){.admin-tabs a{width:100%}}

/* Priorité 4 : planning / matchs */
.admin-match-create{margin-bottom:18px;overflow:hidden}.compact-head{padding-bottom:12px}.match-create-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:18px 20px 20px}.match-create-form label, .match-inline-form label{display:grid;gap:7px;color:#fff;font-size:16px;text-transform:uppercase}.match-create-form input, .match-create-form select, .match-inline-form input, .match-inline-form select{height:40px;border:1px solid rgba(255,255,255,.28);border-radius:7px;background:#080b12;color:#fff;padding:0 12px;outline:none}.match-create-form option, .match-create-form optgroup, .match-inline-form option{color:#111}.match-create-form .admin-filter-btn{align-self:end}.match-actions-cell{min-width:420px}.match-inline-form{display:grid;grid-template-columns:1.2fr 1.35fr 72px 72px 1fr auto;gap:8px;align-items:center;margin-bottom:8px}.match-inline-form input, .match-inline-form select{height:32px;font-size:16px;padding:0 8px}.matches-table{min-width:1180px}.status-pill.upcoming{background:rgba(255,193,7,.16);border-color:rgba(255,193,7,.44)}.status-pill.live{background:rgba(227,30,38,.28);border-color:rgba(227,30,38,.7)}.status-pill.finished{background:rgba(40,167,69,.18);border-color:rgba(40,167,69,.5)}.status-pill.cancelled{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25)}.live-tag{background:#e31e26!important}.compact-match-list{display:grid;gap:12px}.compact-match-list div{border:1px solid rgba(255,255,255,.12);border-radius:9px;background:rgba(8,11,18,.38);padding:12px}.compact-match-list strong{display:block;font-weight:400;margin-bottom:5px}.compact-match-list span{display:block;color:#d9d9d9;font-size:16px}
@media (max-width:1100px){.match-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}.match-inline-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){.match-create-form{grid-template-columns:1fr}.match-create-form .admin-filter-btn{width:100%}}

/* Priorité 5 : sécurité admin */
.logout-form{margin:0;display:flex}.logout-form .login-btn{cursor:pointer;font-family:inherit}.admin-login-main{min-height:calc(100svh - var(--header-height,75px) - 104px);display:flex;align-items:center;justify-content:center;padding-top:110px;padding-bottom:80px}.admin-login-card{width:min(92vw,520px);padding:30px;border-color:rgba(227,30,38,.34);background:rgba(14,18,28,.88)}.login-title{margin-bottom:20px}.admin-login-form{display:grid;gap:16px;margin-top:18px}.admin-login-form label{display:grid;gap:8px;color:#fff;font-size:16px;text-transform:uppercase}.admin-login-form input{height:44px;border:1px solid rgba(255,255,255,.28);border-radius:7px;background:#080b12;color:#fff;padding:0 14px;outline:none}.admin-login-form input:focus{border-color:#e31e26}.admin-login-form .admin-filter-btn{width:100%;height:44px}
@media (max-width:700px){.admin-login-main{align-items:flex-start;padding-top:120px}.admin-login-card{padding:22px}.logout-form, .logout-form .login-btn{width:100%}}

/* Priorité 6 : tableau de bord admin */
.dashboard-stats .admin-stat-card small{display:block;margin-top:8px;color:#d9d9d9;font-size:16px;line-height:1.35}
.admin-stat-card.warning{border-color:rgba(255,193,7,.42)}
.admin-stat-card.success{border-color:rgba(40,167,69,.42)}
.admin-stat-card.live{border-color:rgba(227,30,38,.65);background:linear-gradient(135deg,rgba(227,30,38,.18),rgba(14,18,28,.82))}
.dashboard-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-top:18px;align-items:start}
.lower-dashboard-grid{grid-template-columns:1fr 1fr}
.dashboard-card{margin-bottom:0;min-height:100%}
.dashboard-card .admin-table-head h2, .quick-actions-card h2{margin:0 0 6px;font-size:24px;font-weight:400;color:#fff}
.dashboard-card .admin-table-head p, .quick-actions-card p{margin:0;color:#d9d9d9;font-size:16px}
.dashboard-game-list, .dashboard-player-list{display:grid;gap:12px}
.dashboard-game-row, .dashboard-player-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(120px,.72fr) auto;gap:14px;align-items:center;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(8,11,18,.42);padding:12px}
.dashboard-game-row strong, .dashboard-player-row strong{display:block;color:#fff;font-weight:400;margin-bottom:4px}
.dashboard-game-row span, .dashboard-player-row span{display:block;color:#d9d9d9;font-size:16px}
.dashboard-game-row em{font-style:normal;color:#e31e26;font-size:16px;white-space:nowrap;text-align:right}
.dashboard-mini-bar{height:8px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden}
.dashboard-mini-bar span{display:block;height:100%;border-radius:999px;background:#e31e26}
.dashboard-match-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 16px}
.dashboard-match-stats span{border:1px solid rgba(255,255,255,.12);border-radius:9px;background:rgba(8,11,18,.42);padding:12px;color:#d9d9d9;font-size:16px}
.dashboard-match-stats strong{display:block;color:#fff;font-size:24px;font-weight:400;margin-bottom:3px}
.dashboard-compact-list .dashboard-live-item{border-color:rgba(227,30,38,.58);background:rgba(227,30,38,.14)}
.dashboard-player-row{grid-template-columns:1fr auto}
.dashboard-player-row .status-pill{font-style:normal;white-space:nowrap}
.dashboard-actions{display:grid;grid-template-columns:1fr;gap:12px;margin-top:18px}
.dashboard-actions .red-btn, .dashboard-actions .outline-btn{width:100%;min-height:43px}
.quick-actions-card{display:flex;flex-direction:column}
@media (max-width:980px){.dashboard-grid, .lower-dashboard-grid{grid-template-columns:1fr}.dashboard-game-row{grid-template-columns:1fr}.dashboard-game-row em{text-align:left}.dashboard-match-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.dashboard-match-stats{grid-template-columns:1fr}.dashboard-player-row{grid-template-columns:1fr}.dashboard-player-row .status-pill{width:max-content}}

/* Pied de page des tableaux de bord */
body.inner-page{
  min-height:100svh;
  display:flex;
  flex-direction:column;
  overflow-x:hidden;
}
body.inner-page .header{
  flex:0 0 auto;
}
body.inner-page .inner-main{
  flex:1 0 auto;
}
body.inner-page .footer{
  position:relative;
  left:auto;
  right:auto;
  bottom:auto;
  width:100%;
  margin-top:auto;
  flex:0 0 auto;
}
@media (min-width:981px){
  body.inner-page .footer{
    height:104px;
  }
}

/* Mise en page des tableaux de bord */
body.inner-page.admin-page{
  --header-height:75px;
  --content-width:min(75vw,1160px);
  min-height:100svh;
  display:flex;
  flex-direction:column;
  overflow-x:hidden;
  background:#080b12;
}
body.inner-page.admin-page .header{
  flex:0 0 auto;
}
body.inner-page.admin-page .page-bg{
  position:fixed;
  top:var(--header-height)!important;
  height:calc(100svh - var(--header-height))!important;
  object-position:center top!important;
}
body.inner-page.admin-page .inner-main{
  width:var(--content-width);
  max-width:1160px;
  margin-left:auto;
  margin-right:auto;
  flex:1 0 auto;
  padding-left:0;
  padding-right:0;
  padding-top:clamp(44px,7vh,72px);
  padding-bottom:64px;
}
body.inner-page.admin-page .footer{
  position:relative;
  left:auto;
  right:auto;
  bottom:auto;
  width:100%;
  height:104px;
  margin-top:auto;
  flex:0 0 auto;
}
body.inner-page.admin-page .footer-line, body.inner-page.admin-page .footer-content{
  width:var(--content-width);
}

.admin-page .admin-title, .admin-page .page-title{
  width:100%;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:24px;
  text-align:center;
}
.admin-page .admin-tabs{
  width:100%;
  margin:0 0 18px;
}
.admin-page .admin-stats.dashboard-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  width:100%;
  margin:0 0 18px;
}
.admin-page .admin-stat-card{
  min-width:0;
  padding:18px;
  background:rgba(14,18,28,.8);
  border:1px solid rgba(255,255,255,.16);
  border-radius:14px;
}
.admin-page .admin-stat-card span{
  display:block;
  color:#d9d9d9;
  font-size:16px;
  margin-bottom:8px;
}
.admin-page .admin-stat-card strong{
  display:block;
  color:#fff;
  font-size:34px;
  line-height:1;
  font-weight:400;
}
.admin-page .dashboard-grid, .admin-page .lower-dashboard-grid{
  width:100%;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin-top:18px;
  align-items:stretch;
}
.admin-page .dashboard-card{
  margin:0;
  min-width:0;
  height:100%;
}
.admin-page .dashboard-card .admin-table-head{
  padding:0 0 16px;
  margin-bottom:16px;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.admin-page .dashboard-game-row{
  grid-template-columns:minmax(0,1fr) minmax(120px,.72fr) auto;
}
.admin-page .quick-actions-card{
  justify-content:flex-start;
}

@media (max-width:1200px){
  body.inner-page.admin-page{--content-width:min(88vw,1040px)}
}
@media (max-width:1100px) and (min-width:981px){
  body.inner-page.admin-page{--content-width:90vw}
}
@media (max-width:980px){
  body.inner-page.admin-page{--header-height:124px;--content-width:92vw}
  body.inner-page.admin-page .inner-main{padding-top:42px;padding-bottom:44px}
  body.inner-page.admin-page .footer{height:auto;padding:18px 24px}
  .admin-page .admin-stats.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-page .dashboard-grid, .admin-page .lower-dashboard-grid{grid-template-columns:1fr;align-items:start}
  .admin-page .dashboard-game-row{grid-template-columns:1fr}
  .admin-page .dashboard-game-row em{text-align:left}
}
@media (max-width:640px){
  body.inner-page.admin-page{--header-height:116px;--content-width:92vw}
  body.inner-page.admin-page .footer{padding:18px 16px}
  .admin-page .admin-title, .admin-page .page-title{text-align:left}
  .admin-page .admin-stats.dashboard-stats{grid-template-columns:1fr}
  .admin-page .dashboard-match-stats{grid-template-columns:1fr}
  .admin-page .dashboard-player-row{grid-template-columns:1fr}
}

/* Public dynamic pages */
.disabled-cta{opacity:.65;cursor:not-allowed}.public-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}.public-summary-card{padding:18px;border-color:rgba(227,30,38,.24)}.public-summary-card span{display:block;color:#d9d9d9;font-size:16px;text-transform:uppercase;letter-spacing:.03em;margin-bottom:6px}.public-summary-card strong{display:block;color:#fff;font-size:32px;font-weight:400}.public-game-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:6px}.game-card.is-closed{border-color:rgba(255,255,255,.12);opacity:.86}.public-capacity{margin:16px 0 2px}.public-game-actions{margin-top:18px}.disabled-link{opacity:.58;cursor:not-allowed;pointer-events:none}.public-games-list .game-card{align-items:stretch}
@media (max-width:980px){.public-summary-grid{grid-template-columns:1fr}.public-game-head{flex-direction:column}.public-games-list .game-card{grid-template-columns:1fr}}

/* Admin : infos dynamiques de l'accueil */
.admin-settings-form{
  max-width:720px;
  margin:0 auto;
  display:grid;
  gap:16px;
}
.admin-settings-form label{
  display:grid;
  gap:8px;
  color:#fff;
  font-size:16px;
  text-transform:uppercase;
  letter-spacing:.02em;
}
.admin-settings-form input{
  height:44px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:7px;
  background:#080b12;
  color:#fff;
  padding:0 14px;
  outline:none;
  font-family:inherit;
}
.admin-settings-form input:focus{border-color:#e31e26}
.admin-settings-preview{
  max-width:720px;
  margin:18px auto 0;
}
.admin-settings-preview .home-info{
  margin-top:0;
  max-width:none;
}
@media (max-width:700px){
  .admin-settings-form, .admin-settings-preview{max-width:none}
}

/* Admin export / sauvegarde */
.export-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-bottom:18px;
}
.export-card{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.export-card h2{
  margin:0;
  color:#fff;
  font-size:24px;
  font-weight:400;
}
.export-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}
.export-actions form{margin:0}
.export-actions .red-btn, .export-actions .outline-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 18px;
  text-decoration:none;
}
.compact-export-actions .outline-btn{min-width:116px}
.export-game-list{
  display:grid;
  gap:10px;
}
.export-game-list a{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:9px;
  background:rgba(8,11,18,.46);
  color:#fff;
  text-decoration:none;
}
.export-game-list a:hover{border-color:#e31e26}
.export-game-list span{color:#d9d9d9;font-size:16px}
.export-backups-panel{margin-top:4px}
.export-backups-panel code{
  color:#fff;
  background:rgba(227,30,38,.18);
  padding:2px 6px;
  border-radius:5px;
}
@media (max-width:900px){
  .export-grid{grid-template-columns:1fr}
  .export-actions{align-items:stretch}
  .export-actions .red-btn, .export-actions .outline-btn, .export-actions form{width:100%}
}

/* Email confirmation / Resend */
.email-date{display:block;margin-top:5px;color:#b8b8b8;font-size:16px;white-space:nowrap}.small-action.email{color:#fff}.email-confirm-panel{max-width:720px;margin:0 auto;text-align:center}.email-confirm-panel h2{margin:0 0 10px;color:#fff;font-weight:400}.email-confirm-panel p{color:#d9d9d9}.email-confirm-panel.success{border-color:rgba(47,178,106,.45)}.email-confirm-panel.error{border-color:rgba(227,30,38,.45)}.email-confirm-actions{justify-content:center}.email-confirm-actions a{text-decoration:none;min-height:42px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center}

/* Priorité 11 : compte joueur avec mot de passe après confirmation */
.player-page .player-main{padding-top:clamp(44px,7vh,72px)}
.player-card{padding:clamp(22px,3vw,32px);max-width:720px;margin:0 auto 18px;background:rgba(14,18,28,.84)}
.login-player-card{max-width:520px}
.player-summary{border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(8,11,18,.38);padding:16px;margin-bottom:18px}
.player-summary.big{margin-bottom:18px}
.player-summary h2, .player-card h2{margin:0 0 12px;color:#fff;font-weight:400;font-size:clamp(22px,2.2vw,30px)}
.player-summary p{margin:6px 0;color:#d9d9d9}.player-summary strong{color:#fff;font-weight:400}.player-form{display:grid;gap:16px}.player-form label{display:grid;gap:8px;color:#fff;font-size:16px;text-transform:uppercase}.player-form input, .player-form select{height:44px;border:1px solid rgba(255,255,255,.28);border-radius:7px;background:#080b12;color:#fff;padding:0 14px;outline:none}.player-form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#e31e26 50%),linear-gradient(135deg,#e31e26 50%,transparent 50%);background-position:calc(100% - 18px) 19px,calc(100% - 12px) 19px;background-size:6px 6px,6px 6px;background-repeat:no-repeat}.player-form option{color:#111}.player-form input:focus, .player-form select:focus{border-color:#e31e26}.player-help{margin:14px 0 0;color:#d9d9d9;font-size:16px;line-height:1.5}.player-submit{width:100%;height:46px;border:0;cursor:pointer;font-family:inherit}.player-submit:disabled{opacity:.58;cursor:not-allowed}.player-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch}.player-dashboard-grid .player-card{max-width:none;margin:0;min-height:100%}.player-status-list{display:grid;gap:10px}.player-status-list div{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(8,11,18,.38);padding:12px}.player-status-list span{color:#d9d9d9;font-size:16px}.player-status-list strong{color:#fff;font-weight:400;text-align:right}.player-status-list strong.ok, .player-status-list strong.confirmed{color:#35d07f}.player-status-list strong.warn, .player-status-list strong.pending{color:#ffc857}.player-status-list strong.rejected{color:#ff6961}.player-logout{width:100%;background:transparent;cursor:pointer;font-family:inherit}.payment-card .player-submit{margin-top:16px}.email-confirm-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.status-pill.verified{background:rgba(53,208,127,.16);border-color:rgba(53,208,127,.42);color:#35d07f}.status-pill.unverified{background:rgba(255,200,87,.13);border-color:rgba(255,200,87,.38);color:#ffc857}
@media (max-width:860px){.player-dashboard-grid{grid-template-columns:1fr}.player-status-list div{align-items:flex-start;flex-direction:column}.player-status-list strong{text-align:left}.player-card{padding:22px}}

.text-link{
  color: #e31e26;
  text-decoration: none;
  font-weight: 700;
}

.text-link:hover{
  text-decoration: underline;
}

.player-summary-mini{
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 18px;
  padding: 14px 16px;
  border: 1px solid rgba(227, 30, 38, 0.35);
  border-radius: 10px;
  background: rgba(227, 30, 38, 0.08);
  color: #fff;
}

.player-summary-mini span{
  color: rgba(255,255,255,.72);
  font-size:16px;
}

.unified-login-main{
  min-height: calc(100svh - var(--header-height) - var(--footer-height, 104px));
  display: grid;
  place-items: center;
}

.unified-login-card{
  max-width: 520px;
  width: min(100%, 520px);
}

.unified-login-card .login-title{
  margin-bottom: 22px;
}

/* Notifications globales */
.toast-root{
  position:fixed;
  right:clamp(16px,3vw,34px);
  bottom:clamp(16px,3vw,34px);
  pointer-events:none;
}
.toast-root.toast-root-center{
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px;
  background:rgba(0,0,0,.42);
  backdrop-filter:blur(5px);
}
.site-toast{
  position:relative;
  display:flex;
  align-items:center;
  gap:12px;
  color:#fff;
  border:1px solid rgba(255,255,255,.16);
  transform:translateY(120%);
  opacity:0;
  transition:transform .38s ease, opacity .38s ease;
  overflow:hidden;
  pointer-events:auto;
}
.site-toast-center{
  background:linear-gradient(145deg,rgba(12,16,28,.98),rgba(4,6,12,.98));
  box-shadow:0 26px 90px rgba(0,0,0,.58),0 0 0 1px rgba(255,255,255,.05) inset;
  transform:translateY(18px) scale(.96);
}
.site-toast.is-visible{transform:translateY(0);opacity:1}
.site-toast-center.is-visible{transform:translateY(0) scale(1);opacity:1}
.site-toast.is-leaving{transform:translateY(120%);opacity:0}
.site-toast-center.is-leaving{transform:translateY(18px) scale(.96);opacity:0}
.site-toast-content{display:grid;gap:5px;min-width:0}
.site-toast-title{display:block;margin:0;color:#fff}
.site-toast p{margin:0}
.site-toast-center p{color:#f2f2f2}
.site-toast-bar{width:5px;align-self:stretch;border-radius:999px;background:#e31e26;flex:0 0 auto}
.site-toast-center .site-toast-bar{width:7px}
.site-toast-success .site-toast-bar{background:#21c55d}
.site-toast-error .site-toast-bar{background:#e31e26}
.site-toast-info .site-toast-bar{background:#d9d9d9}
.site-toast-mail .site-toast-bar{background:#21c55d}
.site-toast-info{border-color:rgba(217,217,217,.28)}
.site-toast-mail{border-color:rgba(33,197,93,.42)}
.site-toast-close{
  position:absolute;
  top:12px;
  right:12px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}
.site-toast-close:hover{background:rgba(227,30,38,.28);border-color:rgba(227,30,38,.45)}

/* Erreurs liées directement aux champs */
.field-error{
  display:block;
  margin-top:6px;
  color:#ff7b80;
  font-size:16px;
  line-height:1.25;
}
.has-field-error{
  border-color:#e31e26!important;
  box-shadow:0 0 0 2px rgba(227,30,38,.18)!important;
}
.check-row-error span{color:#ffb1b4}
.check-field-error{margin:7px 0 0 0}
.player-form label, .grid-form label{position:relative}

@media (max-width:640px){
  .toast-root:not(.toast-root-center){right:14px;bottom:14px;left:14px}
  .toast-root.toast-root-center{padding:14px}
  .site-toast:not(.site-toast-center){width:100%}
  .site-toast-center{min-height:120px;padding:20px 50px 20px 18px}
}

/* Menu déroulant des actions dans Admin > Inscriptions */
.admin-table-panel, .admin-table-wrap{
  overflow:visible;
}
.admin-table-wrap{
  overflow-x:auto;
}
.admin-actions{
  display:flex;
  align-items:flex-start;
  gap:8px;
  flex-wrap:nowrap;
  min-width:160px;
}
.admin-actions form{
  margin:0;
}
.edit-icon-action{
  width:36px;
  height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  border:1px solid rgba(227,30,38,.7);
  border-radius:8px;
  background:rgba(227,30,38,.13);
  text-decoration:none;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.edit-icon-action:hover{
  background:rgba(227,30,38,.24);
  border-color:#e31e26;
  transform:translateY(-1px);
}
.edit-icon-action img{
  width:18px;
  height:18px;
  display:block;
}
.action-dropdown{
  position:relative;
  min-width:116px;
}
.action-dropdown summary{
  height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:8px;
  background:rgba(8,11,18,.62);
  color:#fff;
  font-size:16px;
  text-transform:uppercase;
  cursor:pointer;
  user-select:none;
}
.action-dropdown summary::-webkit-details-marker{
  display:none;
}
.action-dropdown summary::after{
  content:"";
  width:7px;
  height:7px;
  margin-left:9px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  transition:transform .2s ease;
}
.action-dropdown[open] summary{
  border-color:rgba(227,30,38,.58);
  background:rgba(227,30,38,.14);
}
.action-dropdown[open] summary::after{
  transform:rotate(225deg) translateY(-1px);
}
.action-dropdown-list{
  display:grid;
  gap:6px;
  margin-top:8px;
  width:180px;
  padding:8px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:10px;
  background:rgba(8,11,18,.96);
  box-shadow:0 16px 36px rgba(0,0,0,.34);
}
.action-dropdown-list .small-action{
  width:100%;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  padding:0 10px;
  text-align:left;
}
.action-dropdown-list form{
  width:100%;
}
.small-action.email{
  border-color:rgba(217,217,217,.44);
  background:rgba(217,217,217,.08);
}

@media (max-width:760px){
  .admin-actions{
    min-width:148px;
  }
  .action-dropdown{
    min-width:104px;
  }
  .action-dropdown-list{
    width:160px;
  }
}

/* Correction page édition joueur : même logique visuelle que la page inscription */
.registration-like-edit{
  width:100%;
  max-width:1160px;
  margin:0 auto 28px;
  padding:0;
  border:0;
  border-radius:16px;
  background:rgba(14,18,28,.80);
  box-shadow:0 18px 60px rgba(0,0,0,.22);
  overflow:hidden;
}
.registration-like-edit .admin-table-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:24px 31px 16px;
  border-bottom:0;
  background:transparent;
}
.registration-like-edit .admin-table-head h2{
  margin:0;
  color:#fff;
  font-size:20px;
  line-height:24px;
  font-weight:400;
  text-transform:uppercase;
}
.registration-like-edit .admin-table-head p{
  margin:7px 0 0;
  color:#d9d9d9;
  font-size:14px;
  line-height:17px;
}
.registration-like-edit .admin-reset-btn{
  height:36px;
  border-radius:5px;
  border:1px solid #d9d9d9;
  background:transparent;
  color:#fff;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  white-space:nowrap;
}
.admin-edit-status{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding:0 31px 20px;
}
.admin-edit-status span{
  border:1px solid rgba(217,217,217,.42);
  border-radius:6px;
  background:rgba(8,11,18,.32);
  color:#d9d9d9;
  padding:8px 12px;
  font-size:16px;
  line-height:1.2;
}
.admin-edit-status strong{
  color:#fff;
  font-weight:400;
}
.registration-edit-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,464px));
  column-gap:31px;
  row-gap:14px;
  padding:0 31px 32px;
  align-items:start;
}
.registration-edit-form label{
  display:block;
  color:#fff;
  font-size:14px;
  line-height:17px;
  text-transform:uppercase;
  font-weight:400;
}
.registration-edit-form input, .registration-edit-form select{
  display:block;
  width:100%;
  height:36px;
  margin-top:7px;
  border:1px solid #d9d9d9;
  border-radius:5px;
  background:transparent;
  color:#fff;
  padding:0 12px;
  font-size:14px;
  outline:none;
  font-family:inherit;
}
.registration-edit-form select{
  appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,#fff 50%),linear-gradient(135deg,#fff 50%,transparent 50%);
  background-position:calc(100% - 17px) 15px,calc(100% - 12px) 15px;
  background-size:5px 5px,5px 5px;
  background-repeat:no-repeat;
  padding-right:34px;
}
.registration-edit-form input:focus, .registration-edit-form select:focus{
  border-color:#e31e26;
  box-shadow:0 0 0 2px rgba(227,30,38,.18);
}
.registration-edit-form option{
  color:#111;
}
.admin-edit-note{
  grid-column:1/-1;
  margin-top:3px;
  border:1.5px solid #e31e26;
  background:rgba(227,30,38,.16);
  border-radius:6px;
  color:#fff;
  padding:14px 16px;
  font-size:16px;
  line-height:1.45;
}
.admin-edit-note strong{
  color:#e31e26;
  font-weight:400;
}
.admin-edit-actions{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:10px;
}
.admin-edit-actions .admin-filter-btn{
  min-width:260px;
  height:47px;
  border:0;
  border-radius:7px;
  background:#e31e26;
  color:#fff;
  font-size:18px;
  font-family:inherit;
  cursor:pointer;
}
.admin-edit-actions .admin-reset-btn{
  min-width:160px;
  height:47px;
  border-radius:7px;
}
@media (max-width:980px){
  .registration-like-edit .admin-table-head, .admin-edit-status, .registration-edit-form{
    padding-left:24px;
    padding-right:24px;
  }
  .registration-edit-form{
    grid-template-columns:repeat(2,minmax(220px,1fr));
  }
}
@media (max-width:720px){
  .registration-like-edit{
    border-radius:12px;
  }
  .registration-like-edit .admin-table-head{
    flex-direction:column;
  }
  .registration-like-edit .admin-reset-btn{
    width:100%;
  }
  .registration-edit-form{
    grid-template-columns:1fr;
    padding-bottom:24px;
  }
  .admin-edit-actions .admin-filter-btn, .admin-edit-actions .admin-reset-btn{
    width:100%;
    min-width:0;
  }
}

/* Recherche + pagination admin inscriptions */
.admin-search-panel form{
  display:grid;
  grid-template-columns:minmax(240px,2fr) repeat(5,minmax(145px,1fr)) auto auto;
  align-items:end;
}
.admin-search-panel label{
  min-width:0;
}
.admin-search-panel .admin-search-field{
  min-width:240px;
}
.admin-filters input[type="search"]{
  height:40px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:7px;
  background:#080b12;
  color:#fff;
  padding:0 12px;
  outline:none;
  font-family:inherit;
}
.admin-filters input[type="search"]:focus, .admin-filters select:focus{
  border-color:#e31e26;
}
.admin-pagination{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:18px 20px;
  border-top:1px solid rgba(255,255,255,.12);
  background:rgba(8,11,18,.26);
}
.pagination-pages{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  flex-wrap:wrap;
}
.pagination-btn, .pagination-number{
  min-height:34px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:7px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  color:#fff;
  background:rgba(8,11,18,.55);
  font-size:16px;
  padding:0 12px;
}
.pagination-number{
  min-width:34px;
  padding:0 8px;
}
.pagination-number.active{
  background:#e31e26;
  border-color:#e31e26;
}
.pagination-btn.disabled{
  opacity:.38;
  pointer-events:none;
}
.pagination-info{
  color:#d9d9d9;
  font-size:16px;
  white-space:nowrap;
}
.pagination-info strong{
  color:#fff;
  font-weight:400;
}

@media (max-width:1280px){
  .admin-search-panel form{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .admin-search-panel .admin-search-field{
    grid-column:span 3;
  }
}
@media (max-width:760px){
  .admin-search-panel form{
    grid-template-columns:1fr;
  }
  .admin-search-panel .admin-search-field{
    grid-column:auto;
  }
  .admin-pagination{
    flex-direction:column;
    align-items:stretch;
  }
  .pagination-btn, .pagination-info{
    width:100%;
    text-align:center;
  }
}

/* Icon-only buttons for admin inscription filters */
.admin-search-panel .admin-icon-btn{
  width:40px;
  height:40px;
  border-radius:7px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  text-decoration:none;
  cursor:pointer;
  transition:transform .18s ease, border-color .18s ease, background .18s ease;
}
.admin-search-panel .admin-icon-btn img{
  width:18px;
  height:18px;
  display:block;
  pointer-events:none;
}
.admin-search-panel .admin-icon-search{
  border:1px solid #e31e26;
  background:#e31e26;
}
.admin-search-panel .admin-icon-reset{
  border:1px solid rgba(227,30,38,.55);
  background:rgba(8,11,18,.55);
}
.admin-search-panel .admin-icon-btn:hover{
  transform:translateY(-1px);
}
.admin-search-panel .admin-icon-search:hover{
  background:#ff2b34;
  border-color:#ff2b34;
}
.admin-search-panel .admin-icon-reset:hover{
  background:rgba(227,30,38,.14);
  border-color:#e31e26;
}
@media (max-width:760px){
  .admin-search-panel .admin-icon-btn{
    width:100%;
  }
}

/* Live video board */

.live-video-shell{
  width: 100%;
}

.live-video-header{
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 14px;
}

.live-video-header h2{
  margin: 8px 0 0;
  color: #fff;
  font-size: clamp(22px, 3vw, 38px);
  line-height: 1;
}

.live-state{
  border: 1px solid rgba(227, 30, 38, .65);
  border-radius: 999px;
  padding: 8px 12px;
  font-size:16px;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.live-state.on{
  color: #fff;
  background: rgba(227, 30, 38, .22);
}

.live-state.off{
  color: rgba(255,255,255,.72);
  background: rgba(8, 11, 18, .45);
}

.live-video-actions{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: wrap;
}


.live-video-frame{
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border: 1px solid rgba(227, 30, 38, .55);
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(8,11,18,.92), rgba(14,18,28,.62)),
    #080b12;
  box-shadow: 0 18px 60px rgba(0,0,0,.35);
}

.live-video-frame video, .live-video-frame iframe{
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  object-fit: cover;
  background: #000;
}

.live-video-empty{
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 28px;
  text-align: center;
  color: #fff;
}

.live-video-empty strong{
  color: #e31e26;
  font-size: clamp(20px, 2.4vw, 34px);
  text-transform: uppercase;
}

.live-video-empty p{
  max-width: 560px;
  margin: 12px auto 0;
  color: rgba(255,255,255,.78);
}

/* Shared HLS player: keep the existing public/admin video frame. */
.hls-player{position:absolute;inset:0}
/* Keep all notices outside YouTube's viewport and native controls/branding. */
.live-video-frame.has-youtube-player{aspect-ratio:auto}
.youtube-player{width:100%}
.youtube-player-viewport{position:relative;width:100%;min-height:200px;aspect-ratio:16/9;background:#000}
.youtube-player-info{position:relative;padding:12px 14px;color:#d6d9df;background:#0d121c;font-size:14px;line-height:1.45}
.youtube-player-info p{margin:0 0 10px}
.youtube-player-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.youtube-player-actions a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.youtube-player-actions button{padding:8px 12px;border:1px solid #e31e26;border-radius:7px;background:#e31e26;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.youtube-player-actions button:focus-visible,.youtube-player-actions a:focus-visible{outline:2px solid #fff;outline-offset:3px}
.hls-player video{object-fit:contain}
.hls-player-status{position:absolute;z-index:1;top:14px;left:14px;right:14px;padding:10px 14px;border-radius:8px;background:rgba(8,11,18,.82);color:#fff;text-align:center;font-size:14px;pointer-events:none}
.hls-player-quality{position:absolute;z-index:2;right:14px;bottom:54px;display:flex;align-items:center;gap:8px;max-width:calc(100% - 28px);padding:7px 10px;border-radius:8px;background:rgba(8,11,18,.9);color:#fff;font-size:13px}
.hls-player-quality select{min-height:36px;padding:4px 8px;border:1px solid rgba(255,255,255,.5);border-radius:5px;background:#141821;color:#fff;font:inherit;cursor:pointer}
.hls-player-quality select:focus-visible{outline:2px solid #fff;outline-offset:3px}
.hls-player-quality-note{pointer-events:none}
.hls-player-message{z-index:2;background:rgba(8,11,18,.96)}
.hls-player-play-prompt{position:absolute;z-index:2;left:14px;right:14px;bottom:54px;padding:14px;border-radius:8px;background:rgba(8,11,18,.92);color:#fff;text-align:center}
.hls-player-play-prompt p{margin:0 0 10px}
.hls-player-message button,.hls-player-play-prompt button{margin-top:12px;padding:10px 16px;border:1px solid #e31e26;border-radius:7px;background:#e31e26;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.hls-player-play-prompt button{margin-top:0}
.hls-player-message button:focus-visible,.hls-player-play-prompt button:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(max-width:560px){.hls-player-message{padding:14px}.hls-player-message strong{font-size:18px}.hls-player-message p{margin:8px 0 0;font-size:13px}.hls-player-status,.hls-player-play-prompt{font-size:13px}}

.live-video-matches{
  margin-top: 0;
}

/* Admin live settings */


.admin-live-form{
  display: flex;
  flex-direction: column;
  gap: 24px;
}


.admin-field{
  display: flex;
  flex-direction: column;
  gap: 8px;
  color: #fff;
  font-size: 14px;
  text-transform: uppercase;
}

.admin-field input, .admin-field select, .admin-field textarea{
  width: 100%;
  border: 1px solid rgba(255,255,255,.78);
  border-radius: 6px;
  background: rgba(8,11,18,.42);
  color: #fff;
  padding: 12px 13px;
  outline: none;
  font: inherit;
  text-transform: none;
}

.admin-field textarea{
  resize: vertical;
  min-height: 92px;
}

.admin-field input:focus, .admin-field select:focus, .admin-field textarea:focus{
  border-color: #e31e26;
  box-shadow: 0 0 0 3px rgba(227,30,38,.18);
}

.admin-field-wide{
  grid-column: 1 / -1;
}


.live-video-frame.preview{
  max-width: 920px;
}

.primary-admin-btn{
  align-self: flex-start;
  border: 0;
  border-radius: 8px;
  background: #e31e26;
  color: #fff;
  padding: 14px 26px;
  font-weight: 700;
  cursor: pointer;
  text-transform: uppercase;
}

.primary-admin-btn:hover{
  filter: brightness(1.08);
}

@media (max-width: 860px) {
  .live-video-header{
    align-items: flex-start;
    flex-direction: column;
  }

  .live-video-actions{
    align-items: flex-start;
    justify-content: flex-start;
  }


}

.admin-field .file-input{
  cursor: pointer;
  padding: 10px 12px;
}

.admin-field .file-input::file-selector-button{
  margin-right: 12px;
  border: 1px solid #e31e26;
  border-radius: 6px;
  background: #e31e26;
  color: #fff;
  padding: 8px 12px;
  cursor: pointer;
  font-family: inherit;
  text-transform: uppercase;
}

.admin-field small{
  color: rgba(255,255,255,.62);
  font-size:16px;
  line-height: 1.45;
  text-transform: none;
}

.current-video-box{
  border: 1px solid rgba(227,30,38,.35);
  border-radius: 10px;
  padding: 12px 14px;
  background: rgba(227,30,38,.08);
}

.current-video-box code{
  display: block;
  color: rgba(255,255,255,.82);
  font-size:16px;
  overflow-wrap: anywhere;
  text-transform: none;
}

/* Public live player: native browser controls are kept visible. */

.live-video-embed{
  width: 100%;
  height: 100%;
  border: 0;
}



/* Admin live : mêmes boutons rapides que les autres panels admin */


.admin-panel-tabs a.active{
  border-color:#e31e26;
  background:#e31e26;
}



/* Images de la page À propos */
.about-grid{
  align-items:stretch;
}
.about-grid > .section-card{
  height:100%;
  margin-bottom:0;
}
.about-grid > .section-card2{
  height:100%;
  margin-bottom:0;
}
.about-list{
  height:100%;
}
.about-games-list{
  display:grid;
  gap:18px;
}
.about-game-card{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,42%);
  align-items:stretch;
  min-height:235px;
  padding:0;
}
.about-game-content{
  position:relative;
  z-index:2;
  padding:clamp(22px,2.5vw,32px);
  min-width:0;
}
.about-game-visual{
  position:relative;
  align-self:stretch;
  min-height:100%;
  height:100%;
  margin-left:-1px;
  border-left:0 !important;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  overflow:hidden;
}
.about-game-visual::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(14,18,28,.98) 0%,rgba(14,18,28,.62) 26%,rgba(14,18,28,.08) 72%,rgba(14,18,28,.18) 100%);
  pointer-events:none;
}
.about-game-visual::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,rgba(8,11,18,.38),rgba(8,11,18,0));
  pointer-events:none;
}
.about-game-visual--fc26{background-image:url("/assets/about-fc26.jpg");}
.about-game-visual--mortal-kombat{background-image:url("/assets/about-mortal-kombat.png");}
.about-game-visual--tekken{background-image:url("/assets/about-tekken.png");}
.about-game-card--fc26 .about-game-visual{background-image:url("/assets/about-fc26.jpg");}
.about-game-card--mortal-kombat .about-game-visual{background-image:url("/assets/about-mortal-kombat.png");}
.about-game-card--tekken .about-game-visual{background-image:url("/assets/about-tekken.png");}
.about-game-card.is-closed .about-game-visual{
  filter:grayscale(.45);
}
@media (max-width:980px){
  .about-game-card{
    grid-template-columns:1fr;
    min-height:0;
  }
  .about-game-visual{
    min-height:220px;
    height:220px;
    margin-left:0;
    order:-1;
  }
  .about-game-visual::before{
    background:linear-gradient(0deg,rgba(14,18,28,.92) 0%,rgba(14,18,28,.18) 68%,rgba(14,18,28,.1) 100%);
  }
}
@media (max-width:640px){
  .about-game-visual{
    min-height:170px;
    height:170px;
  }
}

/* Version Shop de la page À propos */
.about-shop-main{
  display:grid;
  gap:24px;
}
.about-shop-title{
  margin-bottom:4px;
}
.about-shop-eyebrow{
  margin:0 0 9px!important;
  color:#e31e26!important;
  font-size:15px!important;
  font-weight:600;
  letter-spacing:.18em;
}
.about-shop-hero{
  min-height:430px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,48%);
  overflow:hidden;
}
.about-shop-hero-copy{
  position:relative;
  z-index:2;
  padding:clamp(30px,4vw,52px);
  align-self:center;
}
.about-shop-hero-copy>span,
.about-shop-service>div>span{
  display:block;
  margin-bottom:10px;
  color:#e31e26;
  font-size:14px;
  font-weight:600;
  letter-spacing:.14em;
}
.about-shop-hero h2,
.about-shop-service h2{
  margin:0 0 18px;
  color:#fff;
  font-size:clamp(28px,3vw,42px);
  line-height:1.06;
  font-weight:500;
}
.about-shop-hero-copy p,
.about-shop-service p{
  max-width:650px;
  margin:0 0 12px;
  color:#c8ced8;
  font-size:16px;
  line-height:1.62;
}
.about-shop-actions{
  margin-top:28px;
}
.about-shop-hero-visual{
  position:relative;
  min-height:430px;
  background:url("/assets/og-mhtm-shop.jpg") center/cover no-repeat;
}
.about-shop-hero-visual::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(14,18,28,1) 0%,rgba(14,18,28,.34) 27%,rgba(14,18,28,.02) 65%);
}
.about-shop-values{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.about-shop-value-card{
  min-height:210px;
  padding:26px;
  display:flex;
  align-items:flex-start;
  gap:18px;
  border-color:rgba(255,255,255,.11);
}
.about-shop-value-card>img{
  width:44px;
  height:44px;
  flex:0 0 44px;
  object-fit:contain;
}
.about-shop-value-card span{
  display:block;
  margin-bottom:7px;
  color:#e31e26;
  font-size:13px;
  letter-spacing:.12em;
}
.about-shop-value-card h2{
  margin:0 0 10px;
  color:#fff;
  font-size:21px;
  font-weight:500;
}
.about-shop-value-card p{
  margin:0;
  color:#aeb4be;
  font-size:15px;
  line-height:1.55;
}
.about-shop-service{
  padding:clamp(28px,4vw,44px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  background:linear-gradient(115deg,rgba(227,30,38,.13),rgba(14,18,28,.88) 50%);
}
.about-shop-service h2{
  margin-bottom:10px;
  font-size:clamp(25px,2.5vw,34px);
}
.about-shop-service p{
  margin-bottom:0;
}
.about-shop-service>.red-btn{
  min-width:210px;
  flex:0 0 auto;
}
@media (max-width:980px){
  .about-shop-hero{
    grid-template-columns:1fr;
  }
  .about-shop-hero-visual{
    min-height:330px;
    order:-1;
  }
  .about-shop-hero-visual::before{
    background:linear-gradient(0deg,rgba(14,18,28,1) 0%,rgba(14,18,28,.08) 54%);
  }
  .about-shop-values{
    grid-template-columns:1fr;
  }
  .about-shop-value-card{
    min-height:0;
  }
}
@media (max-width:640px){
  .about-shop-main{
    gap:16px;
  }
  .about-shop-hero-visual{
    min-height:220px;
  }
  .about-shop-hero-copy{
    padding:24px 18px 28px;
  }
  .about-shop-actions a,
  .about-shop-service>.red-btn{
    width:100%;
  }
  .about-shop-service{
    align-items:stretch;
    flex-direction:column;
    gap:22px;
  }
}

/* Champs de texte du règlement */
.admin-rules-form{
  display:grid;
  gap:22px;
}
.admin-rule-card{
  background:rgba(14,18,28,.80);
  border:1px solid rgba(227,30,38,.32);
  border-radius:16px;
}
.admin-rule-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:20px;
}
.admin-rule-card label{
  display:grid;
  gap:8px;
  color:#fff;
  font-size:16px;
  text-transform:uppercase;
  letter-spacing:.02em;
  margin-top:16px;
}
.admin-rule-card input[type="text"], .admin-rule-card textarea{
  width:100%;
  border:1px solid rgba(255,255,255,.78);
  border-radius:6px;
  background:rgba(8,11,18,.42);
  color:#fff;
  padding:12px 13px;
  outline:none;
  font:inherit;
  text-transform:none;
  box-sizing:border-box;
}
.admin-rule-card input[type="text"]{
  min-height:44px;
}
.admin-rule-card textarea{
  min-height:180px;
  resize:vertical;
  line-height:1.5;
}
.admin-rule-card input[type="text"]:focus, .admin-rule-card textarea:focus{
  border-color:#e31e26;
  box-shadow:0 0 0 3px rgba(227,30,38,.18);
}
.admin-rule-card small{
  color:#d9d9d9;
  font-size:16px;
  line-height:1.45;
  text-transform:none;
  letter-spacing:0;
}
.admin-rule-card small strong{
  color:#fff;
  font-weight:400;
}
.admin-rules-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  padding:18px;
  background:rgba(14,18,28,.80);
}
@media (max-width:700px){
  .admin-rule-card-head, .admin-rules-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .admin-rules-actions .admin-filter-btn, .admin-rules-actions .admin-reset-btn{
    width:100%;
    justify-content:center;
  }
}

/* Admin live upload confirmation button */
.live-upload-control{
  display: grid;
  grid-template-columns: minmax(0, 1fr) 54px;
  gap: 10px;
  align-items: stretch;
}

.live-file-picker{
  position: relative;
  display: flex;
  align-items: center;
  min-height: 54px;
  border: 1px solid rgba(255,255,255,.78);
  border-radius: 6px;
  background: rgba(8,11,18,.42);
  overflow: hidden;
  cursor: pointer;
}

.live-file-picker:focus-within{
  border-color: #e31e26;
  box-shadow: 0 0 0 3px rgba(227,30,38,.18);
}

.live-file-picker .live-file-input{
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.live-file-name{
  display: block;
  width: 100%;
  padding: 12px 13px;
  color: rgba(255,255,255,.88);
  font-size: 14px;
  text-transform: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.live-upload-btn{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  min-height: 54px;
  border: 1px solid rgba(255,255,255,.78);
  border-radius: 6px;
  background: rgba(8,11,18,.62);
  cursor: pointer;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease, opacity .2s ease;
}

.live-upload-btn img{
  width: 28px;
  height: 28px;
  object-fit: contain;
  filter: invert(1);
  pointer-events: none;
}

.live-upload-btn:not(:disabled):hover, .live-upload-btn:not(:disabled):focus-visible{
  border-color: #e31e26;
  box-shadow: 0 0 0 3px rgba(227,30,38,.18);
  transform: translateY(-1px);
}

.live-upload-btn:disabled{
  cursor: not-allowed;
  opacity: .45;
}

.live-upload-btn.is-uploading{
  cursor: wait;
  border-color: rgba(227,30,38,.75);
}

.live-upload-btn.is-done{
  border-color: rgba(67, 255, 164, .78);
  box-shadow: 0 0 0 3px rgba(67, 255, 164, .15);
}

.live-upload-status{
  margin-top: 4px;
  color: rgba(255,255,255,.62);
  font-size:16px;
  line-height: 1.45;
  text-transform: none;
}

.live-upload-status[data-state="uploading"]{
  color: rgba(255,255,255,.82);
}

.live-upload-status[data-state="success"]{
  color: #43ffa4;
}

.live-upload-status[data-state="error"]{
  color: #ff5b64;
}

/* Typographie gaming MHTM - pages internes/admin */
.admin-title, .admin-title h1, .page-title h1, .section-head h2, .game-card h2{
  font-family:var(--font-hero);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.035em;
}

.admin-table th, .admin-table td, .admin-filters label, .match-create-form label, .match-inline-form label, .form-panel label, .confirm-title, .live-upload-status, .toast, .field-error{
  font-family:var(--font-body);
}

.stat-card strong, .stat-card span, .game-meta strong, .game-meta span, .admin-table .number, .admin-table .cash, .admin-table .price{
  font-family:var(--font-stats);
  letter-spacing:.025em;
}

.admin-filter-btn, .red-btn, .outline-btn, .submit-btn, .live-upload-btn, .status-pill{
  font-family:var(--font-action);
  letter-spacing:.055em;
  text-transform:uppercase;
}

/* Ajustement tailles pages internes/admin */
.page-title h1{
  font-size:clamp(44px,4.8vw,68px);
  line-height:.92;
}


.game-card p, .rule-list li, .feature-list li{
  font-size:18px;
  line-height:1.42;
}

.game-meta strong, .game-meta span{
  font-size:17px;
}

.form-panel label, .admin-filters label, .match-create-form label, .match-inline-form label{
  font-size:16px;
}

.form-panel input, .form-panel select, .form-panel textarea, .admin-filters input, .admin-filters select, .match-create-form input, .match-create-form select, .match-inline-form input, .match-inline-form select{
  font-size:18px;
}

.summary-row strong{
  font-size:19px;
}

.summary-row span{
  font-size:17px;
}

.limited strong{
  font-size:23px;
}

.limited span{
  font-size:17px;
  line-height:1.18;
}

.admin-title h1{
  font-size:clamp(42px,4.2vw,64px);
  line-height:.92;
}

.admin-filter-btn, .red-btn, .outline-btn, .status-pill{
  font-size:17px;
}


/* Graisse des polices des pages internes */

.page-title p, .form-title p, .game-card p, .rule-list li, .feature-list li, .form-panel label, .check-row, .admin-alert, .admin-table th, .admin-table td{
  font-weight:400;
}

/* Ajustement demandé : règles, textes longs et prix encore plus light */
.page-title p, .form-title p, .game-card p, .rule-list li, .rule-list strong, .feature-list li, .form-panel label, .check-row, .admin-alert, .admin-table th, .admin-table td{
  font-weight:300;
}

.page-title h1, .admin-title h1, .form-title h1, .section-head h2, .game-card h2{
  font-weight:500;
}

.admin-filter-btn, .red-btn, .outline-btn, .submit-btn, .live-upload-btn, .status-pill{
  font-weight:400;
  opacity:.92;
}

.stat-card strong, .game-meta strong, .game-meta span, .summary-row strong, .summary-row span{
  font-weight:400;
}

.limited strong{
  font-weight:400;
}

.limited span{
  font-weight:300;
}

.rules-stack, .rules-stack *, .rule-list, .rule-list *{
  font-weight:300;
}


.age-selection-form{margin-top:18px}.age-selection-form select.has-field-error{border-color:#e31e26}

/* Planning anchor */
#planning-programme{scroll-margin-top:120px}

/* Page /planning - reproduction de la maquette fournie, sans changer header/footer/fond */
.planning-shot-page{--content-width:min(75vw,1160px)}
.planning-shot-page .page-bg{opacity:.76;filter:saturate(.95) brightness(.72)}
.planning-shot-page:after{background:linear-gradient(90deg,rgba(8,11,18,.50) 0%,rgba(8,11,18,.14) 48%,rgba(8,11,18,.04) 100%)}
.planning-shot-main{width:var(--content-width);max-width:1160px;padding-top:75px;padding-bottom:150px}

.planning-shot-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}
.planning-shot-left{min-width:0}
.planning-shot-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:16px}
.planning-shot-day{height:58px;border-radius:7px;border:1px solid rgba(255,255,255,.17);background:linear-gradient(180deg,rgba(17,24,36,.90),rgba(8,12,20,.93));color:#fff;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:12px;font-size:17px;font-weight:400;letter-spacing:1px;text-transform:uppercase;box-shadow:inset 0 1px 0 rgba(255,255,255,.05);transition:.18s ease;white-space:nowrap}
.planning-shot-day img{width:20px;height:20px;filter:brightness(0) invert(1)}
.planning-shot-day.active, .planning-shot-day:hover{background:linear-gradient(180deg,#f23437,#d41e23);border-color:#f23437;box-shadow:0 10px 30px rgba(227,30,38,.22)}
.planning-shot-card, .planning-shot-side-card{background:linear-gradient(180deg,rgba(10,17,29,.94),rgba(8,12,21,.92));border:1px solid rgba(255,255,255,.12);border-radius:10px;box-shadow:0 24px 70px rgba(0,0,0,.34);overflow:hidden}
.planning-shot-table-wrap{padding:0 17px 13px 17px;background:rgba(8,12,20,.35)}
.planning-shot-table{border-collapse:collapse}
.planning-shot-table thead tr{background:linear-gradient(90deg,rgba(14,23,38,.98),rgba(17,27,45,.95))}
.planning-shot-table th{padding:26px 18px 18px;color:#8f99a8;font-size:16px;font-weight:400;letter-spacing:1.2px;text-transform:uppercase;text-align:center;border-bottom:1px solid rgba(255,255,255,.08)}
.planning-shot-table td{padding:10px 18px;border-bottom:1px solid rgba(255,255,255,.08);vertical-align:middle;background:rgba(9,14,23,.72);height:51px}
.planning-shot-table tbody tr:last-child td{border-bottom:0}
.planning-shot-table tr:hover td{background:rgba(255,255,255,.03)}
.planning-shot-table tr.is-live td:first-child{box-shadow:inset 4px 0 0 #e31e26}
.planning-shot-table tr.is-finished{opacity:.92}
.planning-shot-time{font-size:20px;color:#fff;white-space:nowrap;width:90px}
.planning-shot-game{display:flex;align-items:center;gap:14px;min-width:170px}
.planning-shot-game img{width:40px;height:40px;object-fit:contain;display:block}
.planning-shot-game strong{color:#fff;font-size:15px;font-weight:400;text-transform:uppercase;white-space:nowrap;letter-spacing:.3px}
.planning-shot-phase{color:#f23437;font-size:14px;letter-spacing:1px;text-transform:uppercase;white-space:nowrap}
.planning-shot-versus{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:13px;min-width:290px}
.planning-shot-versus strong{color:#fff;font-size:14px;font-weight:400;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.8px;text-align:center}
.planning-shot-versus strong:first-child{text-align:right}.planning-shot-versus strong:last-child{text-align:left}
.planning-shot-versus span{color:#f23437;font-size:17px;font-weight:700;letter-spacing:.8px;text-align:center}
.planning-shot-score{display:block;margin-top:4px;color:#cbd3de;text-transform:uppercase;letter-spacing:.5px;text-align:center}.planning-shot-score.live{color:#f23437}

.planning-shot-sidebar{display:grid;gap:20px;padding-top:0}
.planning-shot-side-card header{display:flex;align-items:center;gap:14px;height:64px;padding:0 24px;border-bottom:1px solid rgba(255,255,255,.10)}
.planning-shot-side-card h2{margin:0;color:#fff;font-size:20px;font-weight:400;letter-spacing:.8px;text-transform:uppercase}
.planning-shot-info-icon{width:28px;height:28px;border:2px solid #e31e26;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#e31e26;font-size:17px;font-weight:600;line-height:1;flex:0 0 auto;font-family:Arial,sans-serif}
.planning-shot-star{width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:#f23437;font-size:26px;line-height:1;flex:0 0 auto}
.planning-shot-info-row{display:grid;grid-template-columns:42px 1fr;gap:16px;min-height:72px;padding:14px 24px;border-bottom:1px solid rgba(255,255,255,.08);align-items:center}
.planning-shot-info-row:last-child{border-bottom:0}
.planning-shot-info-row img{width:30px;height:30px;object-fit:contain;filter:brightness(0) saturate(100%) invert(18%) sepia(89%) saturate(4845%) hue-rotate(350deg) brightness(92%) contrast(97%)}
.planning-shot-info-row strong{display:block;color:#fff;font-size:15px;font-weight:400;letter-spacing:.6px;text-transform:uppercase}
.planning-shot-info-row span{display:block;margin-top:5px;color:#d8dee8;font-size:14px;line-height:1.35;letter-spacing:.2px}
.planning-shot-watch-list{display:grid}
.planning-shot-watch-item{display:grid;grid-template-columns:50px 1fr auto;gap:12px;align-items:center;min-height:69px;padding:14px 22px;border-bottom:1px solid rgba(255,255,255,.08)}
.planning-shot-watch-item img{width:42px;height:42px;object-fit:contain;display:block}
.planning-shot-watch-item strong{display:block;color:#fff;font-size:14px;font-weight:400;line-height:1.28;text-transform:uppercase;letter-spacing:.55px}
.planning-shot-watch-item strong span{color:#f23437;margin:0 7px}
.planning-shot-watch-item small{display:block;margin-top:4px;color:#cdd5e0;font-size:16px;letter-spacing:.6px;text-transform:uppercase}
.planning-shot-watch-item time{display:inline-flex;align-items:center;justify-content:center;min-width:54px;height:31px;padding:0 10px;border:1px solid #e31e26;border-radius:5px;color:#f23437;font-size:15px}
.planning-shot-more{display:flex;align-items:center;justify-content:flex-start;gap:10px;height:63px;padding:0 24px;color:#f23437;text-decoration:none;font-size:15px;letter-spacing:1px;text-transform:uppercase;border-top:1px solid rgba(255,255,255,.08)}
.planning-shot-more span{font-size:22px;line-height:1}
.planning-shot-more:hover{color:#fff}
@media (max-width:1400px){.planning-shot-page{--content-width:min(75vw,1160px)}.planning-shot-main{width:var(--content-width);max-width:1160px}.planning-shot-layout{grid-template-columns:minmax(0,1fr) 330px}.planning-shot-table{min-width:0}.planning-shot-day{font-size:15px}}
@media (max-width:1120px){.planning-shot-layout{grid-template-columns:1fr}.planning-shot-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-shot-table{min-width:780px}}
@media (max-width:760px){.planning-shot-page{--content-width:92vw}.planning-shot-main{width:92vw;padding-top:26px;padding-bottom:46px}.planning-shot-days{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.planning-shot-day{height:48px;font-size:14px;padding:0 8px}.planning-shot-sidebar{grid-template-columns:1fr}.planning-shot-table{min-width:760px}.planning-shot-side-card header{height:62px}.planning-shot-side-card h2{font-size:18px}.planning-shot-watch-item{grid-template-columns:46px 1fr}.planning-shot-watch-item time{grid-column:2;justify-self:start;margin-top:6px}}

/* Planning title: same style as Règlement / Contact */
.planning-shot-title{margin:0 0 36px;text-align:center}
.planning-shot-title h1 span{color:#e31e26}
.planning-shot-title p{max-width:760px}
@media (max-width:760px){.planning-shot-title{margin-bottom:24px}}

/* Menu burger mobile en panneau latéral sombre, couleur thème MHTM */
@media (max-width:820px){

  .header .mobile-menu-toggle{
    cursor:pointer!important;
  }

  .header .mobile-menu-toggle.is-open{
    gap:0!important;
  }

  .header .mobile-menu-toggle + .brand + .nav, .page .mobile-menu-toggle + .brand + .nav, .page.inner-page .mobile-menu-toggle + .brand + .nav, .home-page .mobile-menu-toggle + .brand + .nav, body.inner-page .mobile-menu-toggle + .brand + .nav, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav{
    border-left:3px solid #e31e26!important;
  }

  .header .mobile-menu-toggle + .brand + .nav::before, .page .mobile-menu-toggle + .brand + .nav::before, .page.inner-page .mobile-menu-toggle + .brand + .nav::before, .home-page .mobile-menu-toggle + .brand + .nav::before, body.inner-page .mobile-menu-toggle + .brand + .nav::before, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav::before{
    color:#e31e26;
    font-family:"Barlow Condensed","Barlow Condensed",sans-serif;
    font-size:16px;
    letter-spacing:.18em;
    line-height:1;
  }

  .header .mobile-menu-toggle + .brand + .nav a, .page .mobile-menu-toggle + .brand + .nav a, .page.inner-page .mobile-menu-toggle + .brand + .nav a, .home-page .mobile-menu-toggle + .brand + .nav a, body.inner-page .mobile-menu-toggle + .brand + .nav a, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav a{
    align-items:center!important;
    justify-content:flex-start!important;
  }

  .header .mobile-menu-toggle + .brand + .nav a:hover, .header .mobile-menu-toggle + .brand + .nav a:focus-visible, .header .mobile-menu-toggle + .brand + .nav a.active, .page .mobile-menu-toggle + .brand + .nav a:hover, .page .mobile-menu-toggle + .brand + .nav a:focus-visible, .page .mobile-menu-toggle + .brand + .nav a.active, .home-page .mobile-menu-toggle + .brand + .nav a:hover, .home-page .mobile-menu-toggle + .brand + .nav a:focus-visible, .home-page .mobile-menu-toggle + .brand + .nav a.active, body.inner-page .mobile-menu-toggle + .brand + .nav a:hover, body.inner-page .mobile-menu-toggle + .brand + .nav a:focus-visible, body.inner-page .mobile-menu-toggle + .brand + .nav a.active, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav a:hover, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav a:focus-visible, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav a.active{
    color:#e31e26!important;
    padding-left:14px!important;
  }
}

@media (max-width:420px){

  .header .mobile-menu-toggle + .brand + .nav, .page .mobile-menu-toggle + .brand + .nav, .page.inner-page .mobile-menu-toggle + .brand + .nav, .home-page .mobile-menu-toggle + .brand + .nav, body.inner-page .mobile-menu-toggle + .brand + .nav, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav{
    padding-left:14px!important;
    padding-right:14px!important;
  }
}

/* Correctif mobile : menu burger en liste latérale attachée à gauche, sans effet popup */
@media (max-width:820px){
  body.mobile-nav-open{
    overflow:hidden!important;
  }

  body.mobile-nav-open::before{
    content:""!important;
    position:fixed!important;
    inset:0!important;
    z-index:70!important;
    background:rgba(3,5,10,.48)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    pointer-events:none!important;
  }

  .header .mobile-menu-toggle.is-open{
    position:fixed!important;
    left:16px!important;
    top:25px!important;
    z-index:100!important;
    width:28px!important;
    height:28px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    padding:0!important;
    box-shadow:none!important;
  }

  .header .mobile-menu-toggle.is-open span{
    position:absolute!important;
    width:22px!important;
    height:2px!important;
    background:#fff!important;
    border-radius:999px!important;
    box-shadow:none!important;
  }

  .header .mobile-menu-toggle.is-open span:nth-child(1){
    transform:rotate(45deg)!important;
  }

  .header .mobile-menu-toggle.is-open span:nth-child(2){
    opacity:0!important;
  }

  .header .mobile-menu-toggle.is-open span:nth-child(3){
    transform:rotate(-45deg)!important;
  }

  .header .mobile-menu-toggle + .brand + .nav, .page .mobile-menu-toggle + .brand + .nav, .page.inner-page .mobile-menu-toggle + .brand + .nav, .home-page .mobile-menu-toggle + .brand + .nav, body.inner-page .mobile-menu-toggle + .brand + .nav, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav{
    display:flex!important;
    position:fixed!important;
    left:0!important;
    top:0!important;
    right:auto!important;
    bottom:0!important;
    width:min(67vw,260px)!important;
    max-width:260px!important;
    height:100dvh!important;
    min-height:100svh!important;
    z-index:90!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    padding:78px 20px 26px!important;
    border:0!important;
    border-right:1px solid rgba(255,255,255,.08)!important;
    border-radius:0!important;
    background:linear-gradient(180deg,rgba(8,13,22,.99) 0%,rgba(4,8,14,.99) 100%)!important;
    box-shadow:12px 0 28px rgba(0,0,0,.42)!important;
    overflow:hidden!important;
    white-space:normal!important;
    opacity:0!important;
    pointer-events:none!important;
    transform:translateX(-100%)!important;
    transition:transform .28s ease,opacity .2s ease!important;
  }

  .header .mobile-menu-toggle + .brand + .nav::before, .page .mobile-menu-toggle + .brand + .nav::before, .page.inner-page .mobile-menu-toggle + .brand + .nav::before, .home-page .mobile-menu-toggle + .brand + .nav::before, body.inner-page .mobile-menu-toggle + .brand + .nav::before, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav::before{
    content:""!important;
    position:absolute!important;
    right:22px!important;
    top:28px!important;
    left:auto!important;
    width:20px!important;
    height:20px!important;
    border:2px solid rgba(255,255,255,.96)!important;
    border-radius:999px!important;
    background:transparent!important;
    pointer-events:none!important;
  }

  .header .mobile-menu-toggle + .brand + .nav::after, .page .mobile-menu-toggle + .brand + .nav::after, .page.inner-page .mobile-menu-toggle + .brand + .nav::after, .home-page .mobile-menu-toggle + .brand + .nav::after, body.inner-page .mobile-menu-toggle + .brand + .nav::after, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav::after{
    content:""!important;
    position:absolute!important;
    right:17px!important;
    top:48px!important;
    width:11px!important;
    height:2px!important;
    border-radius:999px!important;
    background:#fff!important;
    transform:rotate(45deg)!important;
    pointer-events:none!important;
  }

  .header .mobile-menu-toggle + .brand + .nav.is-open, .page .mobile-menu-toggle + .brand + .nav.is-open, .page.inner-page .mobile-menu-toggle + .brand + .nav.is-open, .home-page .mobile-menu-toggle + .brand + .nav.is-open, body.inner-page .mobile-menu-toggle + .brand + .nav.is-open, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav.is-open{
    opacity:1!important;
    pointer-events:auto!important;
    transform:translateX(0)!important;
  }

  .header .mobile-menu-toggle + .brand + .nav a, .page .mobile-menu-toggle + .brand + .nav a, .page.inner-page .mobile-menu-toggle + .brand + .nav a, .home-page .mobile-menu-toggle + .brand + .nav a, body.inner-page .mobile-menu-toggle + .brand + .nav a, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav a{
    position:relative!important;
    display:block!important;
    min-height:0!important;
    margin:0!important;
    padding:9px 0 10px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#fff!important;
    font-family:"Barlow Condensed","Barlow Condensed",sans-serif!important;
    font-size:18px!important;
    font-weight:500!important;
    line-height:1.15!important;
    letter-spacing:.02em!important;
    text-align:left!important;
    box-shadow:none!important;
    text-decoration:none!important;
    transform:none!important;
    transition:color .2s ease,padding-left .2s ease!important;
  }

  .header .mobile-menu-toggle + .brand + .nav a::after, .page .mobile-menu-toggle + .brand + .nav a::after, .page.inner-page .mobile-menu-toggle + .brand + .nav a::after, .home-page .mobile-menu-toggle + .brand + .nav a::after, body.inner-page .mobile-menu-toggle + .brand + .nav a::after, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav a::after{
    display:none!important;
    content:none!important;
  }

  .header .mobile-menu-toggle + .brand + .nav a::before, .page .mobile-menu-toggle + .brand + .nav a::before, .page.inner-page .mobile-menu-toggle + .brand + .nav a::before, .home-page .mobile-menu-toggle + .brand + .nav a::before, body.inner-page .mobile-menu-toggle + .brand + .nav a::before, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav a::before{
    content:""!important;
    position:absolute!important;
    left:-20px!important;
    top:50%!important;
    width:3px!important;
    height:22px!important;
    border-radius:0!important;
    background:#e31e26!important;
    opacity:0!important;
    transform:translateY(-50%)!important;
    transition:opacity .2s ease!important;
  }

  .header .mobile-menu-toggle + .brand + .nav a:hover, .header .mobile-menu-toggle + .brand + .nav a:focus-visible, .page .mobile-menu-toggle + .brand + .nav a:hover, .page .mobile-menu-toggle + .brand + .nav a:focus-visible, .home-page .mobile-menu-toggle + .brand + .nav a:hover, .home-page .mobile-menu-toggle + .brand + .nav a:focus-visible, body.inner-page .mobile-menu-toggle + .brand + .nav a:hover, body.inner-page .mobile-menu-toggle + .brand + .nav a:focus-visible, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav a:hover, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav a:focus-visible{
    color:#e31e26!important;
    padding-left:4px!important;
  }

  .header .mobile-menu-toggle + .brand + .nav a.active, .page .mobile-menu-toggle + .brand + .nav a.active, .page.inner-page .mobile-menu-toggle + .brand + .nav a.active, .home-page .mobile-menu-toggle + .brand + .nav a.active, body.inner-page .mobile-menu-toggle + .brand + .nav a.active, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav a.active{
    color:#fff!important;
    padding-left:0!important;
  }

  .header .mobile-menu-toggle + .brand + .nav a.active::before, .page .mobile-menu-toggle + .brand + .nav a.active::before, .page.inner-page .mobile-menu-toggle + .brand + .nav a.active::before, .home-page .mobile-menu-toggle + .brand + .nav a.active::before, body.inner-page .mobile-menu-toggle + .brand + .nav a.active::before, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav a.active::before{
    opacity:1!important;
  }

  .header .mobile-menu-toggle + .brand + .nav a:nth-last-child(1){
    margin-top:0!important;
    padding-top:9px!important;
    border-top:0!important;
  }
}

@media (max-width:420px){
  .header .mobile-menu-toggle.is-open{
    left:14px!important;
    top:24px!important;
  }

  .header .mobile-menu-toggle + .brand + .nav, .page .mobile-menu-toggle + .brand + .nav, .page.inner-page .mobile-menu-toggle + .brand + .nav, .home-page .mobile-menu-toggle + .brand + .nav, body.inner-page .mobile-menu-toggle + .brand + .nav, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav{
    left:0!important;
    top:0!important;
    bottom:0!important;
    width:min(68vw,245px)!important;
    max-width:245px!important;
    height:100dvh!important;
    padding:74px 18px 24px!important;
    border-radius:0!important;
  }

  .header .mobile-menu-toggle + .brand + .nav a, .page .mobile-menu-toggle + .brand + .nav a, .page.inner-page .mobile-menu-toggle + .brand + .nav a, .home-page .mobile-menu-toggle + .brand + .nav a, body.inner-page .mobile-menu-toggle + .brand + .nav a, body.inner-page.admin-page .mobile-menu-toggle + .brand + .nav a{
    font-size:17px!important;
    padding-top:8px!important;
    padding-bottom:9px!important;
  }
}

/* Pied de page mobile commun */
@media (max-width:820px){
  .page:not(.home-page) .footer, body.inner-page .footer, body.inner-page.admin-page .footer{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    height:auto!important;
    margin-top:auto!important;
    padding:0 22px 12px!important;
    background:linear-gradient(180deg,rgba(5,8,14,0) 0%,rgba(5,8,14,.88) 26%,#05080e 100%)!important;
    flex:0 0 auto!important;
  }

  .page:not(.home-page) .footer-line, body.inner-page .footer-line, body.inner-page.admin-page .footer-line{
    display:none!important;
  }

  .page:not(.home-page) .footer-content, body.inner-page .footer-content, body.inner-page.admin-page .footer-content{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    transform:none!important;
    width:100%!important;
    height:48px!important;
    display:grid!important;
    grid-template-columns:1fr auto 1fr!important;
    align-items:center!important;
    justify-items:center!important;
    gap:10px!important;
  }

  .page:not(.home-page) .footer-brand, body.inner-page .footer-brand, body.inner-page.admin-page .footer-brand{
    position:relative!important;
    height:42px!important;
    justify-self:start!important;
  }

  .page:not(.home-page) .footer-brand img, body.inner-page .footer-brand img, body.inner-page.admin-page .footer-brand img{
    position:absolute!important;
    left:0!important;
    top:8px!important;
    width:64px!important;
    height:30px!important;
    object-fit:contain!important;
  }

  .page:not(.home-page) .footer-brand span, body.inner-page .footer-brand span, body.inner-page.admin-page .footer-brand span{
    display:block!important;
    position:absolute!important;
    left:68px!important;
    top:16px!important;
    color:#fff!important;
    font-size:16px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  .page:not(.home-page) .footer-content p, body.inner-page .footer-content p, body.inner-page.admin-page .footer-content p{
    margin:0!important;
    font-size:16px!important;
    white-space:nowrap!important;
  }

  .page:not(.home-page) .footer-social, body.inner-page .footer-social, body.inner-page.admin-page .footer-social{
    height:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-self:end!important;
    font-size:0!important;
    white-space:nowrap!important;
  }

  .page:not(.home-page) .footer-social img, body.inner-page .footer-social img, body.inner-page.admin-page .footer-social img{
    width:36px!important;
    height:36px!important;
  }

  .page:not(.home-page) .footer-social a:nth-child(2), body.inner-page .footer-social a:nth-child(2), body.inner-page.admin-page .footer-social a:nth-child(2){
    display:inline-flex!important;
    width:36px!important;
    height:36px!important;
    border-radius:8px!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    color:transparent!important;
    background:linear-gradient(180deg,#2f7fff 0%,#1f63c5 100%)!important;
    position:relative!important;
    text-decoration:none!important;
  }

  .page:not(.home-page) .footer-social a:nth-child(2)::before, body.inner-page .footer-social a:nth-child(2)::before, body.inner-page.admin-page .footer-social a:nth-child(2)::before{
    content:""!important;
    width:25px!important;
    height:20px!important;
    border-radius:4px 4px 6px 6px!important;
    background:#06101e!important;
    box-shadow:inset 0 8px 0 #2f7fff!important;
  }
}

@media (max-width:420px){
  .page:not(.home-page) .footer, body.inner-page .footer, body.inner-page.admin-page .footer{
    padding-left:15px!important;
    padding-right:15px!important;
  }

  .page:not(.home-page) .footer-brand img, body.inner-page .footer-brand img, body.inner-page.admin-page .footer-brand img{
    width:55px!important;
  }

  .page:not(.home-page) .footer-brand span, body.inner-page .footer-brand span, body.inner-page.admin-page .footer-brand span{
    left:59px!important;
    font-size:16px!important;
  }

  .page:not(.home-page) .footer-content p, body.inner-page .footer-content p, body.inner-page.admin-page .footer-content p{
    font-size:16px!important;
  }

  .page:not(.home-page) .footer-social img, .page:not(.home-page) .footer-social a:nth-child(2), body.inner-page .footer-social img, body.inner-page .footer-social a:nth-child(2), body.inner-page.admin-page .footer-social img, body.inner-page.admin-page .footer-social a:nth-child(2){
    width:32px!important;
    height:32px!important;
  }
}

/* Pied de page mobile */
@media (max-width:820px){
  .page:not(.home-page) .footer-brand, body.inner-page .footer-brand, body.inner-page.admin-page .footer-brand{
    width:64px!important;
    flex:0 0 64px!important;
  }

  .page:not(.home-page) .footer-brand span, body.inner-page .footer-brand span, body.inner-page.admin-page .footer-brand span, .page:not(.home-page) .footer-social a:nth-child(2), body.inner-page .footer-social a:nth-child(2), body.inner-page.admin-page .footer-social a:nth-child(2){
    display:none!important;
  }

  .page:not(.home-page) .footer-social, body.inner-page .footer-social, body.inner-page.admin-page .footer-social{
    width:auto!important;
    flex:0 0 auto!important;
    gap:0!important;
  }
}

@media (max-width:420px){
  .page:not(.home-page) .footer-brand, body.inner-page .footer-brand, body.inner-page.admin-page .footer-brand{
    width:64px!important;
    flex:0 0 64px!important;
  }
}
.planning-shot-empty{padding:28px 18px!important;text-align:center;color:#cdd5e0;font-size:15px;letter-spacing:.3px;text-transform:none;background:rgba(9,14,23,.72)}
.planning-shot-empty-small{margin:0;padding:22px 24px!important;text-align:left;border-bottom:1px solid rgba(255,255,255,.08)}

/* Planning: keep table inside the card and remove side gutters */
.planning-shot-card#planning-programme, #planning-programme.planning-shot-card{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}
.planning-shot-table-wrap{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  padding-left:0!important;
  padding-right:0!important;
  overflow-x:hidden!important;
}
.planning-shot-table{
  width:100%;
  max-width:100%;
  min-width:0!important;
  table-layout:fixed;
}
.planning-shot-table th, .planning-shot-table td{
  box-sizing:border-box;
}
.planning-shot-table th:nth-child(1), .planning-shot-table td:nth-child(1){width:13%}
.planning-shot-table th:nth-child(2), .planning-shot-table td:nth-child(2){width:24%}
.planning-shot-table th:nth-child(3), .planning-shot-table td:nth-child(3){width:17%}
.planning-shot-table th:nth-child(4), .planning-shot-table td:nth-child(4){width:46%}
.planning-shot-game, .planning-shot-versus{
  min-width:0;
}
.planning-shot-game strong, .planning-shot-phase{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
@media (max-width:760px){
  .planning-shot-table th, .planning-shot-table td{padding-left:8px;padding-right:8px}
  .planning-shot-time{font-size:16px;width:auto}
  .planning-shot-game{gap:8px}
  .planning-shot-game img{width:30px;height:30px}
  .planning-shot-game strong, .planning-shot-phase, .planning-shot-versus strong{font-size:16px;letter-spacing:.2px}
  .planning-shot-versus{gap:6px}
  .planning-shot-score{font-size:16px}
}

/* Planning: keep the left column and sidebar at the same height on desktop */
@media (min-width:1121px){
  .planning-shot-layout{
    align-items:stretch!important;
  }
  .planning-shot-left, .planning-shot-sidebar{
    height:100%;
    min-height:0;
  }
  .planning-shot-left{
    display:flex;
    flex-direction:column;
  }
  .planning-shot-card#planning-programme, #planning-programme.planning-shot-card{
    flex:1 1 auto;
  }
  .planning-shot-sidebar{
    align-content:stretch;
    grid-template-rows:repeat(2,minmax(0,1fr));
  }
  .planning-shot-side-card{
    height:100%;
  }
}

/* /planning desktop : même largeur/fond que les autres pages */
@media (min-width:761px){
  .planning-shot-page{
    --content-width:min(75vw,1160px);
  }


  .planning-shot-page .planning-shot-main{
    width:var(--content-width);
    max-width:1160px;
  }

  .planning-shot-page .footer-line, .planning-shot-page .footer-content{
    width:var(--content-width);
    max-width:1160px;
  }
}

/* Planning: hide scrollbar when the match list becomes long */
.planning-shot-page, .planning-shot-table-wrap, .planning-shot-card#planning-programme, #planning-programme.planning-shot-card{
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.planning-shot-page::-webkit-scrollbar, .planning-shot-table-wrap::-webkit-scrollbar, .planning-shot-card#planning-programme::-webkit-scrollbar, #planning-programme.planning-shot-card::-webkit-scrollbar{
  width:0;
  height:0;
  display:none;
}

/* Keep the submit animation visible even when the button is temporarily disabled. */
.submit-btn.is-submit-loading, .red-btn.is-submit-loading, .outline-btn.is-submit-loading, .login-btn.is-submit-loading, .admin-filter-btn.is-submit-loading, .player-submit.is-submit-loading, button.is-submit-loading{
  opacity:1 !important;
  cursor:wait !important;
}

/* Player avatar upload + planning avatars */
.player-profile-block{
  display:flex;
  align-items:center;
  gap:18px;
}
.player-avatar-preview{
  width:96px;
  height:96px;
  flex:0 0 96px;
  border-radius:50%;
  border:2px solid rgba(227,30,38,.55);
  background:linear-gradient(180deg,rgba(227,30,38,.24),rgba(8,11,18,.82));
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  box-shadow:0 16px 34px rgba(0,0,0,.32);
}
.player-avatar-preview img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.player-avatar-preview span{
  color:#fff;
  font-size:34px;
  letter-spacing:1px;
  line-height:1;
  text-transform:uppercase;
}
.player-profile-info{min-width:0}.player-profile-info h2{word-break:break-word}
.player-avatar-form{
  display:grid;
  gap:8px;
  margin-top:18px;
}
.player-avatar-input{
  display:block;
  color:#fff;
  font-size:16px;
  letter-spacing:.7px;
  text-transform:uppercase;
}
.player-avatar-file-control{
  position:relative;
  display:block;
  width:100%;
}
.player-avatar-file-control input{
  width:100%;
  min-height:46px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:8px;
  background:rgba(8,11,18,.74);
  color:#d9d9d9;
  padding:10px 58px 10px 11px;
  font-family:inherit;
}
.player-avatar-file-control input::file-selector-button{
  border:0;
  border-radius:6px;
  background:#e31e26;
  color:#fff;
  padding:8px 12px;
  margin-right:12px;
  font-family:inherit;
  cursor:pointer;
}
.player-avatar-submit{
  min-height:42px;
  padding:0 15px;
  cursor:pointer;
  background:transparent;
  font-family:inherit;
  white-space:nowrap;
}
.player-avatar-icon-submit{
  position:absolute;
  top:50%;
  right:4px;
  transform:translateY(-50%);
  width:42px;
  min-width:42px;
  height:38px;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-color:rgba(227,30,38,.72);
  background:rgba(227,30,38,.12);
}
.player-avatar-icon-submit img{
  width:22px;
  height:22px;
  display:block;
  filter:invert(1);
}
.player-avatar-icon-submit span{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.player-avatar-icon-submit:hover, .player-avatar-icon-submit:focus-visible{
  background:#e31e26;
  border-color:#e31e26;
}
.player-avatar-delete-form{margin-top:10px}.player-avatar-delete{
  border:0;
  background:transparent;
  color:#e31e26;
  font:inherit;
  font-size:16px;
  cursor:pointer;
  padding:0;
  text-decoration:underline;
}
.planning-player-name{
  display:flex!important;
  gap:8px;
  min-width:0;
}
.planning-player-avatar{
  border-radius:50%;
  border:1px solid rgba(227,30,38,.48);
  background:rgba(227,30,38,.16);
  overflow:hidden;
}
.planning-player-avatar img{
  display:block;
}
.planning-player-avatar span{
  color:#fff;
  line-height:1;
  letter-spacing:.3px;
}
.planning-player-label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
@media (max-width:760px){
  .player-profile-block{align-items:flex-start;gap:14px}
  .player-avatar-preview{width:76px;height:76px;flex-basis:76px}.player-avatar-preview span{font-size:27px}
  .player-avatar-submit{width:42px}
  .planning-shot-versus{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
}

/* Planning: avatars positionnés selon le côté du joueur, même taille que l'image du jeu */
.planning-player-one{
  justify-content:flex-end!important;
}
.planning-player-one .planning-player-avatar{
  order:0!important;
}
.planning-player-one .planning-player-label{
  order:1!important;
}
.planning-player-two{
  justify-content:flex-start!important;
}
.planning-player-two .planning-player-label{
  order:1!important;
}
.planning-player-two .planning-player-avatar{
  order:2!important;
}
@media (max-width:760px){
  .planning-player-avatar span{
    font-size:16px!important;
  }
}

/* Planning: compact finished rows and align avatars with game thumbnails */
.planning-shot-table tr.is-finished td{
  padding-top:0!important;
  padding-bottom:0!important;
}
.planning-shot-table tr.is-finished .planning-shot-score{
  margin-top:0!important;
}
.planning-shot-table tr.is-finished .planning-shot-game, .planning-shot-table tr.is-finished .planning-shot-versus, .planning-shot-table tr.is-finished .planning-player-name{
  margin-top:0!important;
  margin-bottom:0!important;
}
.planning-shot-versus{
  align-items:center!important;
}
.planning-player-name{
  height:40px!important;
  line-height:40px!important;
  align-items:center!important;
}
.planning-player-avatar{
  width:40px!important;
  height:40px!important;
  flex:0 0 40px!important;
  align-self:center!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.planning-player-avatar img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
@media (max-width:760px){
  .planning-player-name{
    height:30px!important;
    line-height:30px!important;
  }
  .planning-player-avatar{
    width:30px!important;
    height:30px!important;
    flex-basis:30px!important;
  }
  .planning-shot-table tr.is-finished td{
    padding-top:0!important;
    padding-bottom:0!important;
  }
}

/* Planning: avatars séparés + centre pseudo VS pseudo / score */
.planning-shot-match-cell{
  padding-top:6px!important;
  padding-bottom:6px!important;
}
.planning-shot-matchup{
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) 40px!important;
  align-items:center!important;
  gap:12px!important;
  min-width:330px!important;
}
.planning-shot-avatar-box{
  width:40px!important;
  height:40px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.planning-shot-avatar-left{justify-self:start!important;}
.planning-shot-avatar-right{justify-self:end!important;}
.planning-shot-match-center{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
}
.planning-shot-match-center .planning-shot-versus{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
  width:100%!important;
}
.planning-shot-match-center .planning-player-name{
  display:block!important;
  height:auto!important;
  line-height:1.15!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.planning-shot-match-center .planning-player-one{text-align:right!important;justify-content:initial!important;}
.planning-shot-match-center .planning-player-two{text-align:left!important;justify-content:initial!important;}
.planning-shot-match-center .planning-player-label{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.planning-shot-match-center .planning-shot-vs{
  color:#f23437!important;
  font-size:15px!important;
  font-weight:700!important;
  letter-spacing:.8px!important;
  text-align:center!important;
  line-height:1!important;
}
.planning-shot-match-center .planning-shot-score{
  margin-top:0!important;
  line-height:1.1!important;
  text-align:center!important;
}
.planning-shot-matchup .planning-player-avatar{
  width:40px!important;
  height:40px!important;
  flex:0 0 40px!important;
  margin:0!important;
}
.planning-shot-table tr.is-finished .planning-shot-match-cell{
  padding-top:4px!important;
  padding-bottom:4px!important;
}
.planning-shot-table tr.is-finished .planning-shot-matchup, .planning-shot-table tr.is-finished .planning-shot-match-center, .planning-shot-table tr.is-finished .planning-shot-versus, .planning-shot-table tr.is-finished .planning-player-name, .planning-shot-table tr.is-finished .planning-shot-score{
  margin-top:0!important;
  margin-bottom:0!important;
}
@media (max-width:760px){
  .planning-shot-matchup{
    grid-template-columns:30px minmax(0,1fr) 30px!important;
    gap:8px!important;
    min-width:260px!important;
  }
  .planning-shot-avatar-box, .planning-shot-matchup .planning-player-avatar{
    width:30px!important;
    height:30px!important;
    flex-basis:30px!important;
  }
  .planning-shot-match-center .planning-shot-versus{
    gap:6px!important;
  }
  .planning-shot-match-center .planning-shot-vs{
    font-size:16px!important;
  }
}

/* Planning: finished match content can scroll horizontally without a visible scrollbar */
.planning-shot-table tr.is-finished .planning-shot-match-cell::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}
@media (max-width:760px){
  .planning-shot-table tr.is-finished .planning-shot-matchup{
    min-width:100%!important;
  }
}

/* Planning: hide vertical scrollbar while keeping vertical scrolling available */
.planning-shot-table-wrap, .planning-shot-card#planning-programme, #planning-programme.planning-shot-card{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.planning-shot-table-wrap::-webkit-scrollbar, .planning-shot-card#planning-programme::-webkit-scrollbar, #planning-programme.planning-shot-card::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}
.planning-shot-table-wrap{
  -webkit-overflow-scrolling:touch;
}

/* Planning: keep matchup constrained inside its table cell */
.planning-shot-match-cell{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.planning-shot-match-cell .planning-shot-matchup{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.planning-shot-match-cell .planning-shot-match-center, .planning-shot-match-cell .planning-shot-versus{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.planning-shot-match-cell .planning-player-name, .planning-shot-match-cell .planning-player-label{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.planning-shot-table tr.is-finished .planning-shot-match-cell{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  max-width:100%!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  -webkit-overflow-scrolling:touch;
}
.planning-shot-table tr.is-finished .planning-shot-matchup{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  grid-template-columns:40px minmax(0,1fr) 40px!important;
}
.planning-shot-table tr.is-finished .planning-shot-match-center{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
.planning-shot-table tr.is-finished .planning-shot-match-center .planning-shot-versus{
  width:100%!important;
  max-width:100%!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
}
.planning-shot-table tr.is-finished .planning-shot-match-center .planning-player-name, .planning-shot-table tr.is-finished .planning-shot-match-center .planning-player-label{
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
@media (max-width:760px){
  .planning-shot-table tr.is-finished .planning-shot-matchup{
    grid-template-columns:30px minmax(0,1fr) 30px!important;
  }
}

/* Contact mini Google Maps */

.contact-mini-map{
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 11;
  min-height: 220px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 12px;
  background: rgba(8,11,18,.54);
}

.contact-mini-map iframe{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
  filter: grayscale(.08) contrast(1.02);
}


@media (max-width: 760px) {
  .contact-mini-map{
    min-height: 210px;
  }
}

/* Admin games: uniform small game icons */
.admin-page .admin-game-top{
  align-items:center;
}

.admin-page .admin-game-thumb{
  width:44px;
  height:44px;
  min-width:44px;
  flex:0 0 44px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(8,11,18,.62);
}

.admin-page .admin-game-thumb img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

@media (max-width:680px){
  .admin-page .admin-game-thumb{
    width:38px;
    height:38px;
    min-width:38px;
    flex-basis:38px;
    border-radius:9px;
  }
}

/* Contact: map fills the whole panel */
.contact-map-card{
  display: flex;
  padding: 0;
  min-height: 260px;
  overflow: hidden;
}

.contact-map-card .contact-mini-map{
  flex: 1 1 auto;
  width: 100%;
  height: auto;
  min-height: 100%;
  aspect-ratio: auto;
  border: 0;
  border-radius: inherit;
  background: rgba(8,11,18,.54);
}

.contact-map-card .contact-mini-map iframe{
  width: 100%;
  height: 100%;
}

@media (max-width: 760px) {
  .contact-map-card{
    min-height: 230px;
  }

  .contact-map-card .contact-mini-map{
    min-height: 230px;
  }
}

/* Admin live — éditeur complet de la page publique */
.admin-live-layout{width:100%}
.admin-live-layout .admin-live-form{display:block}

.admin-live-toolbar{
  position:sticky;
  top:12px;
  z-index:30;
  min-height:74px;
  margin-bottom:20px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  background:rgba(8,11,18,.96);
  box-shadow:0 16px 36px rgba(0,0,0,.34);
  backdrop-filter:blur(14px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.admin-live-toolbar>div{display:flex;align-items:center;gap:12px;min-width:0}
.admin-live-toolbar p{margin:0;color:rgba(255,255,255,.64);font-size:14px;line-height:1.4}
.admin-live-toolbar a,.admin-live-toolbar button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}

.admin-live-editor-grid{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);
  align-items:start;
  gap:24px;
}

.admin-live-main, .admin-live-preview-col{
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}

.admin-live-card{
  background: rgba(14,18,28,.82);
  border-color: rgba(255,255,255,.10);
}

.admin-live-editor-section{padding:0;overflow:hidden}
.admin-live-editor-section>summary{
  list-style:none;
  padding:18px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  cursor:pointer;
  user-select:none;
}
.admin-live-editor-section>summary::-webkit-details-marker{display:none}
.admin-live-editor-section>summary h2,.admin-live-help-card h2{margin:5px 0 0;color:#fff;font-size:22px;line-height:1.08;text-transform:uppercase}
.admin-live-editor-section>summary p{margin:7px 0 0;color:rgba(255,255,255,.55);font-size:14px;line-height:1.45}
.admin-live-editor-section>summary>span:last-child{width:32px;height:32px;flex:0 0 32px;border:1px solid rgba(255,255,255,.13);border-radius:50%;display:grid;place-items:center;color:#fff;font-size:22px;line-height:1;transition:transform .2s ease,background .2s ease}
.admin-live-editor-section[open]>summary>span:last-child{transform:rotate(45deg);background:rgba(227,30,38,.14);border-color:rgba(227,30,38,.45)}
.admin-live-section-content{padding:4px 20px 20px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:16px}
.admin-live-section-content>.admin-field:first-child,.admin-live-section-content>.admin-live-option:first-child{margin-top:16px}

.admin-live-card-head{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.admin-live-card-head h2{
  margin: 5px 0 0;
  color: #fff;
  font-size: clamp(18px, 2vw, 26px);
  line-height: 1.05;
  text-transform: uppercase;
}

.admin-live-kicker{
  display: inline-flex;
  color: #e31e26;
  font-size:16px;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.admin-live-pill{
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  padding: 7px 11px;
  color: rgba(255,255,255,.74);
  font-size:16px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.admin-live-pill.is-on{
  border-color: rgba(58, 199, 116, .45);
  background: rgba(58, 199, 116, .12);
  color: #fff;
}

.admin-live-pill.is-off{
  border-color: rgba(227,30,38,.42);
  background: rgba(227,30,38,.10);
}

.admin-live-row{
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
}

.admin-live-row.is-single{
  grid-template-columns: 1fr;
}

.admin-live-switch-field{
  justify-content:center;
  min-height: 100%;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 12px;
  padding: 14px;
  background: rgba(8,11,18,.28);
}

.admin-live-switch-field input{
  width: 24px;
  height: 24px;
  accent-color: #e31e26;
}

.admin-live-source-select{
  min-height: 48px;
  font-weight: 700;
}

.admin-live-source-panels{
  margin-top: 16px;
}

.admin-live-source-box{
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 12px;
  padding: 14px;
  background: rgba(8,11,18,.30);
}
.admin-live-source-box[hidden]{display:none!important}

.admin-live-current-source{
  margin-top: 16px;
}

.admin-live-preview-card{
  position: sticky;
  top: 106px;
}

.admin-live-preview-frame{
  max-width: none;
  width: 100%;
  border-radius: 12px;
}

.admin-live-preview-info{
  margin-top: 14px;
  border: 1px solid rgba(227,30,38,.28);
  border-radius: 12px;
  padding: 13px 14px;
  background: rgba(227,30,38,.08);
  color: rgba(255,255,255,.76);
}

.admin-live-preview-info strong{
  display: block;
  color: #fff;
  font-size:16px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.admin-live-preview-info p{
  margin: 6px 0 0;
  font-size:16px;
  line-height: 1.45;
}

.admin-live-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.admin-live-option{
  min-height:54px;
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:10px;
  background:rgba(8,11,18,.3);
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:#fff;
  cursor:pointer;
}
.admin-live-option input{width:20px;height:20px;flex:0 0 20px;margin:1px 0 0;accent-color:#e31e26}
.admin-live-option span{display:flex;flex-direction:column;gap:4px;min-width:0}
.admin-live-option strong{font-size:14px;line-height:1.35}
.admin-live-option small{color:rgba(255,255,255,.52);font-size:12px;line-height:1.4}
.admin-live-source-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}
.admin-live-source-links a,.admin-live-help-card a{min-height:38px;padding:9px 12px;border:1px solid rgba(227,30,38,.45);border-radius:8px;display:inline-flex;align-items:center;color:#fff;background:rgba(227,30,38,.08);font-size:13px;font-weight:700}
.admin-live-subsection{padding:15px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(7,10,16,.26);display:flex;flex-direction:column;gap:14px}
.admin-live-help-card p{color:rgba(255,255,255,.62);font-size:14px;line-height:1.55}
.admin-live-help-card a{margin-top:8px}
.admin-live-banner-upload{
  margin-top:22px;
  display:grid;
  grid-template-columns:minmax(220px,1fr) minmax(180px,320px) minmax(220px,.8fr) minmax(220px,.8fr) auto;
  align-items:center;
  gap:16px;
  background:rgba(14,18,28,.82);
}
.admin-live-banner-upload h2{margin:5px 0 0;color:#fff;font-size:20px;text-transform:uppercase}
.admin-live-banner-upload p{margin:7px 0 0;color:rgba(255,255,255,.55);font-size:13px;line-height:1.45}
.admin-live-banner-upload>img{width:100%;height:94px;border-radius:9px;object-fit:cover;background:#080b12}
.admin-live-banner-upload>.admin-field,.admin-live-banner-upload>.admin-live-option{margin:0}
.admin-live-banner-upload>button{min-height:44px;white-space:nowrap}

.admin-live-actions-bar{
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.admin-live-actions-bar p{
  margin: 0;
  color: rgba(255,255,255,.62);
  font-size:16px;
  line-height: 1.45;
}

.admin-live-actions-bar strong{
  color: #fff;
}

@media (max-width: 1040px) {
  .admin-live-editor-grid{grid-template-columns:1fr}
  .admin-live-banner-upload{grid-template-columns:1fr 1fr}

  .admin-live-preview-card{
    position: static;
  }
}

@media (max-width: 680px) {
  .admin-live-card-head, .admin-live-actions-bar,.admin-live-toolbar,.admin-live-toolbar>div{
    align-items: flex-start;
    flex-direction: column;
  }

  .admin-live-toolbar{position:static}
  .admin-live-toolbar>div:last-child{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .admin-live-toolbar a,.admin-live-toolbar button{width:100%;padding-inline:8px}

  .admin-live-row{
    grid-template-columns: 1fr;
  }

  .admin-live-option-grid{grid-template-columns:1fr}
  .admin-live-banner-upload{grid-template-columns:1fr}
  .admin-live-editor-section>summary{padding:16px}
  .admin-live-section-content{padding:4px 16px 16px}

  .admin-live-switch-field{
    justify-content: flex-start;
  }

  .admin-live-card-head h2{
    font-size: 18px;
  }
}

/* Security/error pages */
.error-main{
  min-height: 52vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.error-card{
  max-width: 760px;
  width: 100%;
  text-align: center;
}

.error-code{
  margin: 0 0 8px;
  color: rgba(255,255,255,.35);
  font-family: "Teko", "Barlow Condensed", sans-serif;
  font-size: clamp(64px, 12vw, 132px);
  line-height: .85;
  letter-spacing: .04em;
}

.error-title{
  margin-bottom: 12px;
}

.error-message{
  max-width: 560px;
  margin: 0 auto 24px;
  color: rgba(255,255,255,.78);
  font-size: 16px;
  line-height: 1.55;
}

.error-actions{
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}

.error-actions .ghost-btn{
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px;
  padding: 0 22px;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .08em;
  background: rgba(255,255,255,.06);
}

@media (max-width: 760px) {
  .error-main{
    min-height: 46vh;
  }

  .error-message{
    font-size: 14px;
  }

  .error-actions a{
    width: 100%;
  }
}
/* Pages dynamiques publiques */
.dynamic-page-main{display:grid;gap:18px}
.dynamic-section{padding:clamp(18px,2.4vw,30px)}
.dynamic-section h2{margin:0 0 12px;color:#fff;font-weight:400;text-transform:uppercase}
.dynamic-section h3{margin:10px 0 8px;color:#fff;font-weight:500}
.dynamic-section p,.dynamic-list{color:rgba(255,255,255,.78)}
.dynamic-hero,.dynamic-text-image{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,42%);gap:24px;align-items:center}
.dynamic-text-image.image-left img{order:-1}
.dynamic-hero img,.dynamic-text-image img,.dynamic-image img,.dynamic-gallery img,.dynamic-cards img{width:100%;display:block;border-radius:14px;object-fit:cover;background:#080b12;border:1px solid rgba(255,255,255,.10)}
.dynamic-hero img,.dynamic-text-image img{max-height:360px}
.dynamic-hero p{margin:0 0 18px;max-width:680px}
.dynamic-image{margin:0}.dynamic-image figcaption,.dynamic-gallery figcaption{margin-top:8px;color:rgba(255,255,255,.62);font-size:16px;text-align:center}
.dynamic-embed{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:14px;background:#080b12;border:1px solid rgba(255,255,255,.10)}
.dynamic-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.dynamic-map{aspect-ratio:16/7;min-height:320px}
.dynamic-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.dynamic-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.dynamic-cards article{padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(8,11,18,.42)}
.dynamic-faq{display:grid;gap:10px}.dynamic-faq details{border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(8,11,18,.42);padding:14px}.dynamic-faq summary{color:#fff;cursor:pointer;font-weight:600}.dynamic-faq p{margin:10px 0 0}
.dynamic-list{margin:10px 0 0;padding-left:20px}.dynamic-button-row{display:flex;justify-content:center}.dynamic-empty-section{text-align:center}
@media (max-width:900px){.dynamic-hero,.dynamic-text-image{grid-template-columns:1fr}.dynamic-text-image.image-left img{order:0}.dynamic-gallery,.dynamic-cards{grid-template-columns:1fr}.dynamic-map{aspect-ratio:4/3;min-height:260px}}

/* OBS layer */
.obs-layer-body{
  margin:0;
  width:100vw;
  height:100vh;
  overflow:hidden;
  background:transparent!important;
  font-family:"Teko","Teko",""Barlow Condensed"",Arial,sans-serif;
  color:#fff;
}
.obs-layer-canvas{
  position:relative;
  width:100vw;
  height:100vh;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(3,5,10,.18),rgba(3,5,10,0) 34%,rgba(3,5,10,.32));
  letter-spacing:.02em;
}
.obs-layer-topbar{
  position:absolute;
  top:32px;
  left:42px;
  right:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.obs-layer-brand{
  display:flex;
  align-items:center;
  gap:14px;
  padding:10px 18px 10px 12px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  background:rgba(8,11,18,.68);
  box-shadow:0 18px 45px rgba(0,0,0,.32);
  backdrop-filter:blur(12px);
}
.obs-layer-brand img{width:58px;height:58px;object-fit:contain}.obs-layer-brand span{display:block;color:#e31e26;font-size:22px;line-height:1;text-transform:uppercase}.obs-layer-brand strong{display:block;margin-top:4px;font-size:28px;line-height:1;text-transform:uppercase;font-weight:600;color:#fff}
.obs-layer-live-pill{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:150px;
  justify-content:center;
  padding:12px 18px;
  border-radius:999px;
  background:rgba(8,11,18,.72);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 18px 45px rgba(0,0,0,.32);
  font-size:28px;
  line-height:1;
  font-weight:700;
  text-transform:uppercase;
}
.obs-layer-live-pill span{width:12px;height:12px;border-radius:50%;background:#e31e26;box-shadow:0 0 0 7px rgba(227,30,38,.2)}
.obs-layer-live-pill.is-live span{animation:obsPulse 1.4s infinite}
@keyframes obsPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.28);opacity:.62}}
.obs-layer-match-card{
  position:absolute;
  left:50%;
  bottom:92px;
  width:min(1180px,calc(100vw - 120px));
  transform:translateX(-50%);
  padding:18px 24px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:26px;
  background:linear-gradient(135deg,rgba(8,11,18,.84),rgba(20,24,34,.74));
  box-shadow:0 24px 80px rgba(0,0,0,.48);
  backdrop-filter:blur(14px);
}
.obs-layer-game{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:12px;color:#e31e26;text-transform:uppercase;font-size:28px;font-weight:700;line-height:1}.obs-layer-game img{width:32px;height:32px;object-fit:cover;border-radius:8px}
.obs-layer-versus{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:28px}.obs-layer-player{display:flex;align-items:center;gap:16px;min-width:0}.obs-layer-player-right{flex-direction:row-reverse;text-align:right}.obs-layer-player strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:44px;font-weight:700;text-transform:uppercase;line-height:.95}.obs-layer-avatar{display:grid;place-items:center;width:76px;height:76px;flex:0 0 76px;border-radius:22px;border:2px solid rgba(255,255,255,.18);background:linear-gradient(135deg,rgba(227,30,38,.86),rgba(255,255,255,.10));overflow:hidden}.obs-layer-avatar img{width:100%;height:100%;object-fit:cover}.obs-layer-avatar b{font-size:30px;line-height:1;color:#fff}
.obs-layer-scorebox{min-width:260px;text-align:center;padding:12px 24px;border-radius:22px;background:rgba(0,0,0,.38);border:1px solid rgba(255,255,255,.14)}.obs-layer-scorebox span{display:block;color:#d9d9d9;font-size:22px;line-height:1;text-transform:uppercase}.obs-layer-scorebox strong{display:block;margin:4px 0;font-size:62px;line-height:.92;color:#fff}.obs-layer-scorebox em{font-style:normal;color:#e31e26;font-size:30px;vertical-align:middle}.obs-layer-scorebox small{display:block;color:#ffc857;font-size:24px;line-height:1;text-transform:uppercase}.obs-layer-empty{text-align:center;padding:18px}.obs-layer-empty strong{display:block;font-size:74px;line-height:1}.obs-layer-empty span{display:block;color:#d9d9d9;font-size:32px}
.obs-layer-bottom-ticker{position:absolute;left:42px;right:42px;bottom:24px;display:flex;align-items:center;gap:18px;padding:10px 18px;border-radius:18px;background:rgba(8,11,18,.78);border:1px solid rgba(255,255,255,.16);box-shadow:0 18px 45px rgba(0,0,0,.32);overflow:hidden}.obs-layer-bottom-ticker>strong{flex:0 0 auto;color:#e31e26;font-size:26px;line-height:1;text-transform:uppercase}.obs-layer-ticker-items{display:flex;align-items:center;gap:26px;min-width:0;overflow:hidden}.obs-layer-ticker-items span{flex:0 0 auto;color:#fff;font-size:24px;line-height:1;white-space:nowrap;text-transform:uppercase}
.admin-layer-layout{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(420px,1.28fr);gap:22px;align-items:start}.admin-layer-card{padding:clamp(18px,2.4vw,28px)}.admin-layer-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.admin-layer-help{margin-top:18px;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(8,11,18,.42)}.admin-layer-help strong{display:block;color:#fff;margin-bottom:6px}.admin-layer-help p{margin:0;color:#d9d9d9;line-height:1.5}.admin-layer-preview-frame{position:relative;width:100%;aspect-ratio:16/9;border:1px solid rgba(255,255,255,.14);border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#161b26,#0b0f18)}.admin-layer-preview-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;transform:scale(.5);transform-origin:top left;width:200%;height:200%;background:transparent}
@media (max-width:920px){.admin-layer-layout{grid-template-columns:1fr}.obs-layer-topbar{top:18px;left:18px;right:18px}.obs-layer-match-card{width:calc(100vw - 36px);bottom:84px}.obs-layer-versus{gap:12px}.obs-layer-player strong{font-size:28px}.obs-layer-avatar{width:56px;height:56px;flex-basis:56px}.obs-layer-scorebox{min-width:180px}.obs-layer-scorebox strong{font-size:44px}.obs-layer-bottom-ticker{left:18px;right:18px}.obs-layer-ticker-items span{font-size:18px}}

/* =========================================================
   SHOP MHTM GAME + gestion visibilité pages
   ========================================================= */
.shop-main{padding-bottom:110px}
.shop-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);align-items:center;gap:28px;overflow:hidden;padding:clamp(28px,5vw,64px);margin-bottom:22px;background:linear-gradient(120deg,rgba(9,12,19,.97),rgba(25,8,12,.9));border-color:rgba(227,30,38,.5)}
.shop-hero::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(118deg,transparent 0 58px,rgba(255,255,255,.018) 59px 60px);pointer-events:none}
.shop-hero>div{position:relative;z-index:1}
.shop-kicker{margin:0 0 12px;color:#e31e26;font-size:14px;font-weight:700;letter-spacing:.18em}
.shop-hero h1{margin:0;font-size:clamp(46px,7vw,92px);font-weight:400;line-height:.84;letter-spacing:-.025em}
.shop-hero h1 span{color:#e31e26}
.shop-hero p:not(.shop-kicker){max-width:640px;margin:22px 0 0;color:#d9d9d9;font-size:clamp(15px,1.4vw,19px);line-height:1.55}
.shop-hero-mark{display:grid;place-items:center;min-height:220px}
.shop-hero-mark::before{content:"";position:absolute;width:min(30vw,330px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(227,30,38,.24),transparent 68%);filter:blur(4px)}
.shop-hero-mark img{position:relative;width:min(24vw,260px);max-height:220px;filter:drop-shadow(0 28px 50px rgba(0,0,0,.55))}

.shop-toolbar{display:flex;align-items:end;gap:14px;flex-wrap:wrap;padding:18px;margin-bottom:24px}
.shop-toolbar label{display:grid;gap:7px;min-width:190px;color:#fff;font-size:16px;letter-spacing:.08em}
.shop-toolbar .shop-search-field{flex:1 1 320px}
.shop-toolbar input,.shop-toolbar select{width:100%;height:44px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#080b12;color:#fff;padding:0 13px;outline:none}
.shop-toolbar input:focus,.shop-toolbar select:focus{border-color:#e31e26;box-shadow:0 0 0 3px rgba(227,30,38,.12)}
.shop-toolbar .admin-filter-btn,.shop-toolbar .admin-reset-btn{height:44px}
.shop-search-btn{width:44px;min-width:44px;padding:0;flex:0 0 44px}
.shop-search-btn{border-color:#e31e26!important;background:rgba(8,11,18,.7)!important}.shop-search-btn:hover{background:rgba(227,30,38,.12)!important}.shop-search-btn img{width:19px;height:19px;display:block}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}


.shop-result-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:4px 0 18px}
.shop-result-head>div{display:grid;gap:3px}.shop-result-head span{color:#e31e26;font-weight:700;letter-spacing:.15em}.shop-result-head strong{font-weight:400}.shop-result-head small{color:#9fa5b0}
.shop-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.shop-product-card{overflow:hidden;min-width:0;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.shop-product-card:hover{transform:translateY(-4px);border-color:rgba(227,30,38,.65);box-shadow:0 20px 45px rgba(0,0,0,.25)}
.shop-product-image{position:relative;display:block;aspect-ratio:1/1;background:#060a12 url("/assets/shop-article-bg.png") center center/cover no-repeat;overflow:hidden}.shop-product-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,5,9,.08),rgba(3,5,9,.22));pointer-events:none}
.shop-product-image>img{width:100%;height:100%;display:block;object-fit:contain;padding:16px;transition:transform .25s ease}.shop-product-card:hover .shop-product-image>img{transform:scale(1.025)}
.shop-image-fallback{display:grid;place-items:center;width:100%;height:100%;background:rgba(5,8,14,.12) url("/assets/shop-article-bg.png") center center/cover no-repeat}.shop-image-fallback img{width:72px;height:72px;opacity:.66}
.shop-badge{position:absolute;top:12px;padding:5px 8px;border-radius:5px;font-weight:700;letter-spacing:.06em;backdrop-filter:blur(8px)}
.shop-badge-promo{left:12px;background:#e31e26;color:#fff}.shop-badge-stock,.shop-badge-out{right:12px}.shop-badge-stock{background:rgba(19,91,54,.92);color:#d8ffe7}.shop-badge-out{background:rgba(25,27,34,.92);color:#b8bdc8}
.shop-product-body{padding:17px 17px 18px}.shop-product-category{margin:0 0 7px;color:#e31e26;font-weight:400;letter-spacing:.11em;text-transform:uppercase}.shop-product-body h2{min-height:48px;margin:0 0 3px;font-weight:400}.shop-product-body h2 a{color:#fff;text-decoration:none}.shop-product-body>small{display:block;min-height:20px;color:#9fa5b0}
.shop-product-price{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;margin:14px 0}.shop-product-price strong{font-weight:600;color:#fff}.shop-product-price del{color:#8e949f}
.shop-card-action{display:flex;align-items:center;justify-content:space-between;padding-top:13px;border-top:1px solid rgba(255,255,255,.1);color:#fff;text-decoration:none;font-weight:700;letter-spacing:.06em}.shop-card-action span{color:#e31e26;font-size:18px}.shop-card-action:hover{color:#e31e26}
.shop-state-card{display:grid;place-items:center;text-align:center;padding:64px 24px}.shop-state-card>img{width:54px;height:54px;margin-bottom:18px;opacity:.8}.shop-state-card h2{margin:0 0 9px;font-weight:400}.shop-state-card p{max-width:640px;margin:0;color:#b9bec8;line-height:1.55}
.shop-pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:30px}.shop-pagination a,.shop-pagination span{min-height:42px;display:inline-flex;align-items:center;padding:0 14px;border:1px solid rgba(255,255,255,.16);border-radius:7px;color:#fff;text-decoration:none}.shop-pagination a:hover{border-color:#e31e26;color:#e31e26}.shop-pagination strong{color:#e31e26}

.shop-product-page{padding-bottom:120px}.shop-back-link{display:inline-flex;margin-bottom:18px;color:#c7cbd2;text-decoration:none}.shop-back-link:hover{color:#e31e26}
.shop-product-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);overflow:hidden}
.shop-detail-media{min-height:560px;display:grid;place-items:center;background:#060a12 url("/assets/shop-article-bg.png") center center/cover no-repeat;border-right:1px solid rgba(255,255,255,.1)}.shop-detail-media>img{width:100%;height:100%;max-height:680px;object-fit:contain;padding:30px}
.shop-detail-content{padding:clamp(26px,4vw,54px)}.shop-detail-content h1{margin:7px 0 5px;font-weight:400}.shop-detail-vendor{margin:0;color:#8f96a2;letter-spacing:.08em}
.shop-detail-price{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin:25px 0 14px}.shop-detail-price strong{color:#fff;font-weight:600}.shop-detail-price del{color:#8f96a2}
.shop-detail-stock{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-weight:700;letter-spacing:.05em}.shop-detail-stock>span{width:9px;height:9px;border-radius:50%}.shop-detail-stock.is-stock{color:#7ce3a7}.shop-detail-stock.is-stock>span{background:#39c978;box-shadow:0 0 0 5px rgba(57,201,120,.12)}.shop-detail-stock.is-out{color:#b4b7bf}.shop-detail-stock.is-out>span{background:#777d87}.shop-detail-stock small{width:100%;margin-left:17px;color:#8f96a2;font-weight:400;letter-spacing:0}
.shop-detail-specifications{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:24px 0 0;border:1px solid rgba(255,255,255,.11);border-radius:9px;overflow:hidden;background:rgba(255,255,255,.08)}.shop-detail-specifications>div{display:grid;gap:4px;min-width:0;padding:12px 14px;background:#080b12}.shop-detail-specifications dt{color:#e31e26;font-size:12px;font-weight:800;letter-spacing:.11em}.shop-detail-specifications dd{min-width:0;margin:0;color:#f3f4f6;font-size:16px;line-height:1.35;overflow-wrap:anywhere}.shop-detail-description{margin:24px 0;color:#c9cdd4;white-space:pre-line}.shop-variant-list{margin-top:26px;border-top:1px solid rgba(255,255,255,.12);padding-top:20px}.shop-variant-list h2{margin:0 0 12px;font-weight:600;letter-spacing:.08em}.shop-variant-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.08)}.shop-variant-row>div{display:grid;gap:3px}.shop-variant-row strong{font-weight:500}.shop-variant-row small{color:#858b96}.shop-variant-row>span{white-space:nowrap;color:#fff}
.shop-detail-actions{margin-top:28px}.shop-buy-btn{width:100%;min-height:52px}.shop-buy-btn.is-disabled{opacity:.5;pointer-events:none}.shop-no-checkout{margin:0;padding:13px;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#b6bbc5}

.admin-pages-card,.admin-shopify-card{overflow:hidden}.admin-page-toggle-list{display:grid;gap:10px}.admin-page-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(8,11,18,.48);cursor:pointer}.admin-page-toggle-row:hover{border-color:rgba(227,30,38,.38)}.admin-page-toggle-row>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-page-toggle-row strong{font-size:16px;font-weight:500}.admin-page-toggle-row code{color:#9ca3ae;font-size:16px}.admin-page-tag{padding:3px 6px;border-radius:4px;background:rgba(227,30,38,.17);color:#ff7e83;font-weight:700;letter-spacing:.08em}
.admin-visibility-switch{position:relative;display:inline-flex;width:52px;height:28px;flex:0 0 52px}.admin-visibility-switch input{position:absolute;opacity:0;pointer-events:none}.admin-visibility-switch>span{position:absolute;inset:0;border-radius:999px;background:#343945;border:1px solid rgba(255,255,255,.12);transition:.18s ease}.admin-visibility-switch>span::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#c4c8cf;transition:.18s ease}.admin-visibility-switch input:checked+span,.admin-visibility-switch.is-checked>span{background:#e31e26;border-color:#e31e26}.admin-visibility-switch input:checked+span::after,.admin-visibility-switch.is-checked>span::after{transform:translateX(24px);background:#fff}.admin-visibility-switch input:focus-visible+span,.admin-visibility-switch:focus-visible>span{box-shadow:0 0 0 3px rgba(227,30,38,.24)}button.admin-visibility-switch{padding:0;border:0;background:transparent;cursor:pointer}button.admin-visibility-switch:disabled{cursor:wait;opacity:.58}
.admin-pages-actions{display:flex;justify-content:flex-end;margin-top:18px}.admin-shopify-status{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;font-weight:700;letter-spacing:.07em}.admin-shopify-status.is-ok{border:1px solid rgba(57,201,120,.42);background:rgba(57,201,120,.12);color:#7ce3a7}.admin-shopify-status.is-off{border:1px solid rgba(227,30,38,.38);background:rgba(227,30,38,.12);color:#ff8b8f}
.admin-shopify-status.is-version{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:#aeb5c1}.admin-shopify-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.admin-shopify-info-grid>div{display:grid;gap:6px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(8,11,18,.4);min-width:0}.admin-shopify-info-grid span{color:#949ba6;text-transform:uppercase}.admin-shopify-info-grid strong{overflow-wrap:anywhere;font-size:16px;font-weight:500}.admin-shopify-last-sync{color:#a8aeb8}

@media (max-width:1180px){.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-shopify-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:820px){.shop-hero{grid-template-columns:1fr}.shop-hero-mark{display:none}.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-product-detail{grid-template-columns:1fr}.shop-detail-media{min-height:340px;border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.shop-result-head{align-items:start;flex-direction:column}.admin-shopify-info-grid{grid-template-columns:1fr}}
@media (max-width:560px){.shop-hero{padding:26px 20px}.shop-hero h1{font-size:46px}.shop-toolbar{align-items:stretch}.shop-toolbar label,.shop-toolbar .shop-search-field{flex:1 1 100%;min-width:0}.shop-toolbar .admin-filter-btn{flex:0 0 44px}.shop-toolbar .admin-reset-btn{flex:1 1 auto}.shop-grid{grid-template-columns:1fr}.shop-product-body h2{min-height:0}.shop-pagination{justify-content:space-between}.shop-pagination a,.shop-pagination span{padding:0 9px;font-size:16px}.shop-detail-content{padding:24px 20px}.shop-detail-media{min-height:300px}.shop-detail-media>img{padding:18px}.shop-detail-specifications{grid-template-columns:1fr}.admin-page-toggle-row>div{display:grid;gap:4px}.admin-pages-actions .admin-filter-btn{width:100%}}

/* Admin Shop panel */
.admin-shop-control-card,.admin-shop-products-card{overflow:hidden}
.admin-shop-panel-head{gap:18px}.admin-shop-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.admin-shop-head-actions form{margin:0}.admin-shop-delete-local-btn{border-color:rgba(255,70,76,.62);background:rgba(227,30,38,.13);color:#ff9296}.admin-shop-delete-local-btn:hover{border-color:#ff5d63;background:rgba(227,30,38,.25);color:#fff}
.admin-shop-stat-grid{display:grid;gap:12px;margin:18px 0}.admin-shop-stat-grid>div{display:grid;gap:5px;padding:15px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(8,11,18,.48)}.admin-shop-stat-grid span{letter-spacing:.08em;text-transform:uppercase;color:#979eaa}.admin-shop-stat-grid strong{font-size:25px;font-weight:500;color:#fff}
.admin-shop-meta-line{display:flex;gap:18px;flex-wrap:wrap;color:#9299a5}.admin-shop-meta-line strong{color:#d7dbe2;font-weight:500}
.admin-shop-filterbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:18px 0}.admin-shop-filterbar label{display:grid;gap:6px;min-width:170px}.admin-shop-filterbar label:first-child{flex:1 1 300px}.admin-shop-filterbar label>span{letter-spacing:.08em;color:#979eaa}.admin-shop-filterbar input,.admin-shop-filterbar select{height:42px;border:1px solid rgba(255,255,255,.12);border-radius:7px;background:#0a0d13;color:#fff;padding:0 12px;outline:none}.admin-shop-filterbar input:focus,.admin-shop-filterbar select:focus{border-color:rgba(227,30,38,.7)}
.admin-shop-product-list{display:grid;gap:9px}.admin-shop-product-row{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(7,10,16,.58);transition:.18s ease}.admin-shop-product-row:hover{border-color:rgba(255,255,255,.18)}.admin-shop-product-row.is-hidden-product{opacity:.68;background:rgba(7,10,16,.35)}
.admin-shop-product-thumb{display:grid;place-items:center;width:76px;height:70px;overflow:hidden;border-radius:8px;background:#f3f3f3}.admin-shop-product-thumb img{width:100%;height:100%;object-fit:contain;padding:5px}.admin-shop-product-main{min-width:0}.admin-shop-product-titleline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-shop-product-titleline h3{margin:0;font-size:15px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:700px}.admin-shop-product-state{padding:3px 7px;border-radius:999px;font-weight:800;letter-spacing:.07em}.admin-shop-product-state.is-visible{background:rgba(57,201,120,.12);border:1px solid rgba(57,201,120,.35);color:#7ce3a7}.admin-shop-product-state.is-hidden{background:rgba(227,30,38,.12);border:1px solid rgba(227,30,38,.35);color:#ff8b8f}.admin-shop-product-main>p{margin:5px 0;color:#9299a5;font-size:16px}.admin-shop-product-meta{display:flex;align-items:center;gap:11px;flex-wrap:wrap;font-size:16px}.admin-shop-product-meta strong{font-size:14px;color:#fff}.admin-shop-product-meta span{color:#aab0bb}.admin-shop-product-meta .is-stock{color:#75dfa1}.admin-shop-product-meta .is-out{color:#ff898e}.admin-shop-product-meta code{color:#aeb5c1}
.admin-shop-product-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.admin-shop-product-actions form{margin:0}.admin-shop-small-btn,.admin-shop-toggle-btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 10px;border-radius:6px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);color:#dce0e7;font:inherit;font-weight:700;letter-spacing:.05em;text-decoration:none;cursor:pointer}.admin-shop-small-btn:hover{border-color:rgba(255,255,255,.32);color:#fff}.admin-shop-toggle-btn.danger{border-color:rgba(227,30,38,.4);background:rgba(227,30,38,.12);color:#ff9296}.admin-shop-toggle-btn.success{border-color:rgba(57,201,120,.4);background:rgba(57,201,120,.11);color:#7ce3a7}.admin-shop-toggle-btn:hover{filter:brightness(1.15)}.admin-shop-empty{padding:32px;text-align:center;color:#9ca3ae;border:1px dashed rgba(255,255,255,.13);border-radius:9px}.admin-shop-pagination{margin-top:18px}
@media (max-width:1180px){.admin-shop-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-shop-product-row{grid-template-columns:68px minmax(0,1fr)}.admin-shop-product-thumb{width:68px;height:66px}.admin-shop-product-actions{grid-column:2;justify-content:flex-start}}
@media (max-width:720px){.admin-shop-panel-head{align-items:flex-start;flex-direction:column}.admin-shop-head-actions{justify-content:flex-start}.admin-shop-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-shop-filterbar label,.admin-shop-filterbar label:first-child{flex:1 1 100%;min-width:0}.admin-shop-filterbar .admin-filter-btn,.admin-shop-filterbar .admin-reset-btn{flex:1 1 calc(50% - 6px)}.admin-shop-product-row{grid-template-columns:60px minmax(0,1fr);gap:10px}.admin-shop-product-thumb{width:60px;height:60px}.admin-shop-product-titleline h3{white-space:normal;max-width:none}.admin-shop-product-actions{grid-column:1/-1;justify-content:flex-start;padding-top:2px}.admin-shop-meta-line{display:grid;gap:6px}}

/* Accueil : mode Shop */
.home-mode-shop{min-height:100svh;overflow-x:hidden}.home-mode-shop .home-bg{filter:brightness(.56) saturate(.9)}.home-mode-shop::after{content:"";position:absolute;z-index:1;inset:var(--header-height) 0 0;pointer-events:none;background:linear-gradient(90deg,rgba(3,5,9,.92) 0%,rgba(3,5,9,.68) 44%,rgba(3,5,9,.2) 78%,rgba(3,5,9,.44) 100%)}
.home-mode-shop .header,.home-mode-shop .hero,.home-mode-shop .home-shop-products,.home-mode-shop .footer{position:relative;z-index:2}.home-mode-shop .home-shop-landing{width:min(720px,var(--content-width));margin-top:clamp(90px,14vh,125px);padding-bottom:42px}.home-mode-shop .home-shop-landing .eyebrow{color:#ff5b61;font-weight:600;letter-spacing:.09em}.home-mode-shop .home-shop-landing h1{max-width:720px}.home-mode-shop .home-shop-intro{max-width:650px;color:#e5e7eb}.home-mode-shop .home-shop-info{margin-top:28px}.home-mode-shop .home-shop-info .info-block{min-width:175px}.home-mode-shop .home-shop-info .info-block img{filter:drop-shadow(0 8px 18px rgba(227,30,38,.25))}.home-mode-shop .home-shop-landing .cta{margin-top:30px}
.home-shop-products{width:min(1180px,var(--content-width));margin:0 auto 120px}.home-shop-products-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}.home-shop-products-head>div{display:grid;gap:1px}.home-shop-products-head>div>span{color:#e31e26;font-size:16px;font-weight:800;letter-spacing:.13em}.home-shop-products-head h2{margin:0;font-family:"Teko",Impact,sans-serif;line-height:1;font-weight:500}.home-shop-products-head>a{color:#fff;text-decoration:none;font-size:16px;font-weight:700;letter-spacing:.08em}.home-shop-products-head>a span{color:#e31e26;margin-left:7px}
.home-shop-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.home-shop-product-card{overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(7,10,16,.9);box-shadow:0 20px 45px rgba(0,0,0,.24)}.home-shop-product-image{position:relative;display:grid;place-items:center;aspect-ratio:1.18/1;background:#060a12 url("/assets/shop-article-bg.png") center center/cover no-repeat;overflow:hidden}.home-shop-product-image>img:not(.home-shop-fallback){width:100%;height:100%;object-fit:contain;padding:12px;transition:transform .2s ease}.home-shop-product-card:hover .home-shop-product-image>img{transform:scale(1.035)}.home-shop-fallback{width:70px;height:70px;filter:invert(1);opacity:.38}.home-shop-badge{position:absolute;top:10px;padding:5px 8px;border-radius:999px;font-weight:800;letter-spacing:.06em}.home-shop-badge.promo{left:10px;background:#e31e26;color:#fff}.home-shop-badge.stock,.home-shop-badge.out{right:10px}.home-shop-badge.stock{background:#0f7b45;color:#eafff3}.home-shop-badge.out{background:#353a43;color:#e6e8ec}.home-shop-product-body{padding:14px}.home-shop-product-body small{display:block;color:#e31e26;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.home-shop-product-body h3{margin:6px 0 13px;min-height:38px}.home-shop-product-body h3 a{color:#fff;text-decoration:none}.home-shop-product-body>div{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}.home-shop-product-body del{color:#7f8792}.home-shop-empty-state{display:grid;gap:6px;padding:22px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(7,10,16,.76);color:#aeb4be}.home-shop-empty-state strong{color:#fff;font-size:14px}

/* Admin : mode accueil + backgrounds */
.admin-home-settings{display:grid;gap:18px}.admin-home-mode-card,.admin-home-config{overflow:hidden}.admin-home-current-mode{display:inline-flex;align-items:center;min-height:30px;padding:0 11px;border-radius:999px;border:1px solid rgba(227,30,38,.42);background:rgba(227,30,38,.13);color:#ff8e92;font-weight:800;letter-spacing:.09em;white-space:nowrap}.admin-home-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.admin-home-mode-option{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon title" "icon desc";column-gap:14px;align-items:center;padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(7,10,16,.5);cursor:pointer;transition:.18s ease}.admin-home-mode-option:hover{border-color:rgba(255,255,255,.24)}.admin-home-mode-option.is-selected{border-color:#e31e26;background:linear-gradient(135deg,rgba(227,30,38,.18),rgba(7,10,16,.64));box-shadow:inset 0 0 0 1px rgba(227,30,38,.12)}.admin-home-mode-option input{position:absolute;opacity:0;pointer-events:none}.admin-home-mode-icon{grid-area:icon;display:grid;place-items:center;width:48px;height:48px;border-radius:10px;background:rgba(255,255,255,.06);font-size:24px}.admin-home-mode-option strong{grid-area:title;font-size:16px}.admin-home-mode-option small{grid-area:desc;margin-top:3px;color:#9ea5b0;line-height:1.35}.admin-home-fields{max-width:none;margin:18px 0 0;grid-template-columns:repeat(3,minmax(0,1fr))}.admin-home-config[data-home-config="shop"] .admin-home-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-home-config[data-home-config="shop"] .admin-home-fields label:last-child{grid-column:1/-1}.admin-home-fields textarea{min-height:108px;resize:vertical;border:1px solid rgba(255,255,255,.28);border-radius:7px;background:#080b12;color:#fff;padding:12px 14px;outline:none;font:inherit}.admin-home-fields textarea:focus{border-color:#e31e26}
.admin-home-background-editor{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(280px,1.15fr);gap:18px;align-items:center;margin-top:20px;padding-top:20px;border-top:1px solid rgba(255,255,255,.09)}.admin-home-background-preview{position:relative;overflow:hidden;aspect-ratio:16/9;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#05070b}.admin-home-background-preview img{width:100%;height:100%;object-fit:cover}.admin-home-background-preview span{position:absolute;left:10px;bottom:10px;padding:5px 8px;border-radius:5px;background:rgba(0,0,0,.72);color:#fff;font-weight:800;letter-spacing:.08em}.admin-home-background-controls{display:grid;gap:10px}.admin-home-background-controls>label:first-child{display:grid;gap:8px;color:#fff;text-transform:uppercase}.admin-home-background-controls input[type="file"]{width:100%;padding:10px;border:1px dashed rgba(255,255,255,.22);border-radius:8px;background:rgba(8,11,18,.55);color:#b9c0ca}.admin-home-background-controls small{color:#969da8;line-height:1.45}.admin-home-reset-check{display:flex;align-items:center;gap:8px;color:#d6dae1;cursor:pointer}.admin-home-reset-check input{accent-color:#e31e26}.admin-home-savebar{position:sticky;bottom:12px;z-index:12;display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(8,11,18,.94);backdrop-filter:blur(12px);box-shadow:0 14px 40px rgba(0,0,0,.32)}

@media (max-width:980px){.home-shop-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-home-fields,.admin-home-config[data-home-config="shop"] .admin-home-fields{grid-template-columns:1fr 1fr}.admin-home-background-editor{grid-template-columns:1fr}.admin-home-background-preview{max-width:620px}.home-mode-shop .home-shop-landing{margin-top:70px}}
@media (max-width:700px){.admin-home-mode-grid{grid-template-columns:1fr}.admin-home-fields,.admin-home-config[data-home-config="shop"] .admin-home-fields{grid-template-columns:1fr}.admin-home-config[data-home-config="shop"] .admin-home-fields label:last-child{grid-column:auto}.admin-home-savebar{bottom:7px}.admin-home-savebar .admin-filter-btn,.admin-home-savebar .admin-reset-btn{flex:1}.home-mode-shop .home-shop-landing{width:var(--content-width);margin:42px auto 0;padding-bottom:35px;text-align:left}.home-mode-shop .home-shop-landing .eyebrow{font-size:18px;line-height:1.15;text-align:left}.home-mode-shop .home-shop-landing h1{text-align:left}.home-mode-shop .home-shop-intro{line-height:1.4;text-align:left}.home-mode-shop .home-shop-info{grid-template-columns:1fr;gap:11px}.home-mode-shop .home-shop-info .info-block{min-width:0}.home-shop-products{margin-bottom:70px}.home-shop-products-head{align-items:flex-start}}
@media (max-width:520px){.home-shop-product-grid{grid-template-columns:1fr 1fr;gap:8px}.home-shop-product-card{border-radius:9px}.home-shop-product-body{padding:10px}.home-shop-product-body h3{font-size:16px;min-height:32px;margin-bottom:9px}.home-shop-product-body strong{font-size:16px}.home-shop-badge{top:6px;padding:4px 6px;font-size:16px}.home-shop-badge.promo{left:6px}.home-shop-badge.stock,.home-shop-badge.out{right:6px}.admin-home-savebar{flex-direction:column}.admin-home-savebar .admin-filter-btn,.admin-home-savebar .admin-reset-btn{width:100%}}
.admin-home-config{transition:border-color .18s ease,box-shadow .18s ease}.admin-home-config.is-current{border-color:rgba(227,30,38,.46);box-shadow:0 0 0 1px rgba(227,30,38,.08),0 18px 50px rgba(0,0,0,.12)}


/* =========================================================
   PANIER SHOP GROUPE + MODES DE PAIEMENT
   ========================================================= */
.header-cart-btn{position:relative;display:grid;place-items:center;width:42px;height:42px;min-width:42px;min-height:42px;padding:0;border:0;border-radius:7px;color:#e31e26;text-decoration:none;background:transparent}
.header-cart-btn:hover,.header-cart-btn.active{background:rgba(227,30,38,.10);color:#e31e26}.header-cart-icon{display:grid;place-items:center;width:24px;height:24px;line-height:1}.header-cart-icon img{width:22px;height:22px;display:block}.header-cart-count{position:absolute;top:1px;right:0;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border:2px solid #080b12;border-radius:999px;background:#2a2e37;color:#fff;font-size:16px;line-height:1}.header-cart-count.has-items{background:#e31e26}.header-cart-count:not(.has-items){display:none}
.shop-card-actions{display:grid;grid-template-columns:1fr 1.15fr;gap:8px;padding-top:13px;border-top:1px solid rgba(255,255,255,.1)}.shop-card-actions .shop-card-action{padding:0;border:0;min-height:38px;justify-content:center;border:1px solid rgba(255,255,255,.12);border-radius:6px}.shop-card-add{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid rgba(227,30,38,.65);border-radius:6px;background:#e31e26;color:#fff;font:inherit;font-size:16px;font-weight:800;letter-spacing:.05em;text-decoration:none;cursor:pointer}.shop-card-add:hover{filter:brightness(1.08)}.shop-card-add.is-link{background:rgba(227,30,38,.12);color:#ff8f93}.shop-card-add.is-disabled{border-color:rgba(255,255,255,.08);background:#242832;color:#818793;cursor:default}
.shop-purchase-box{display:grid;gap:16px;margin-top:28px;padding:18px;border:1px solid rgba(227,30,38,.34);border-radius:10px;background:rgba(227,30,38,.055)}.shop-variant-select-field{display:grid;gap:7px}.shop-variant-select-field>span{color:#aeb4be;font-size:16px;font-weight:700;letter-spacing:.1em}.shop-variant-select-field select{width:100%;height:46px;border:1px solid rgba(255,255,255,.17);border-radius:7px;background:#090c13;color:#fff;padding:0 12px;outline:none}.shop-variant-select-field select:focus{border-color:#e31e26}.shop-purchase-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px}.shop-quantity-control{display:grid;grid-template-columns:38px 52px 38px;align-items:center;height:52px;border:1px solid rgba(255,255,255,.16);border-radius:7px;overflow:hidden;background:#090c13}.shop-quantity-control button{height:100%;border:0;background:rgba(255,255,255,.04);color:#fff;font-size:22px;cursor:pointer}.shop-quantity-control button:hover:not(:disabled){background:rgba(227,30,38,.16)}.shop-quantity-control button:disabled{opacity:.28;cursor:not-allowed;background:rgba(255,255,255,.015)}.shop-quantity-control input{width:100%;height:100%;border:0;border-left:1px solid rgba(255,255,255,.1);border-right:1px solid rgba(255,255,255,.1);background:transparent;color:#fff;text-align:center;font:inherit;font-weight:700;outline:none;-moz-appearance:textfield}.shop-quantity-control input::-webkit-inner-spin-button,.shop-quantity-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.shop-view-cart-link{display:flex;align-items:center;justify-content:center;gap:8px;color:#d8dce3;text-decoration:none;font-size:16px;font-weight:700;letter-spacing:.06em}.shop-view-cart-link span{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#323741}.shop-view-cart-link span.has-items{background:#e31e26;color:#fff}
.cart-main{padding-bottom:110px}.cart-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:22px}.cart-title-row h1{margin:0;font-family:"Teko",Impact,sans-serif;font-weight:500}.cart-title-row p:not(.shop-kicker){margin:8px 0 0;color:#abb1bc}.cart-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.72fr);gap:18px;align-items:start}.cart-items-panel,.cart-summary-panel{overflow:hidden}.cart-panel-head,.cart-summary-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid rgba(255,255,255,.1)}.cart-panel-head>div,.cart-summary-head{letter-spacing:.08em}.cart-panel-head span,.cart-summary-head span{color:#8f96a2}.cart-panel-head strong{display:block;margin-top:3px;color:#fff;font-weight:500;letter-spacing:0}.cart-clear-btn{border:0;background:transparent;color:#ff858a;font:inherit;font-weight:700;letter-spacing:.07em;cursor:pointer}.cart-empty{display:grid;place-items:center;text-align:center;padding:70px 24px}.cart-empty[hidden],.cart-lines[hidden]{display:none!important}.cart-empty-icon{display:grid;place-items:center;width:60px;height:60px;margin-bottom:16px;border:1px solid rgba(227,30,38,.28);border-radius:16px;background:rgba(227,30,38,.08)}.cart-empty-icon img{width:29px;height:29px;display:block;filter:invert(17%) sepia(91%) saturate(5527%) hue-rotate(349deg) brightness(94%) contrast(89%)}.cart-empty h2{margin:0 0 7px;font-weight:500}.cart-empty p{max-width:480px;margin:0 0 20px;color:#aeb4bf}.cart-lines{display:grid}.cart-line{display:grid;grid-template-columns:104px minmax(0,1fr) auto;gap:15px;align-items:center;padding:15px 18px;border-bottom:1px solid rgba(255,255,255,.08)}.cart-line:last-child{border-bottom:0}.cart-line-media{display:grid;place-items:center;width:104px;height:92px;overflow:hidden;border-radius:9px;background:#060a12 url("/assets/shop-article-bg.png") center center/cover no-repeat}.cart-line-media img{width:100%;height:100%;object-fit:contain;padding:7px}.cart-line-fallback{color:#d8dee8;font-weight:800}.cart-line-info{display:grid;gap:4px;min-width:0}.cart-line-title{overflow:hidden;text-overflow:ellipsis;color:#fff;text-decoration:none;font-weight:600}.cart-line-info small{color:#999faa}.cart-line-info code{color:#777f8d}.cart-line-unit-price{margin-top:5px}.cart-line-controls{display:grid;grid-template-columns:auto auto;align-items:center;justify-items:end;gap:8px 15px}.cart-line-quantity{height:40px;grid-template-columns:32px 44px 32px}.cart-line-remove{grid-column:1/-1;border:0;background:transparent;color:#ff858a;font:inherit;font-weight:700;letter-spacing:.06em;cursor:pointer}
.cart-summary-panel{position:sticky;top:18px}.cart-summary-head strong{color:#fff;font-weight:600;letter-spacing:0}.cart-summary-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 20px;border-bottom:1px solid rgba(255,255,255,.07);color:#aeb4be}.cart-summary-row strong{color:#fff;font-weight:500}.cart-payment-title{display:grid;gap:3px;padding:20px 20px 10px}.cart-payment-title>span{color:#fff;font-weight:800;letter-spacing:.09em}.cart-payment-title small{color:#8d949f}.cart-payment-grid{display:grid;gap:8px;padding:0 20px}.cart-payment-option{position:relative;display:grid;grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:62px;padding:9px 11px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(8,11,18,.48);cursor:pointer}.cart-payment-option input{position:absolute;opacity:0}.cart-payment-option.is-active{border-color:rgba(57,201,120,.48);background:rgba(57,201,120,.055)}.cart-payment-option.is-disabled{opacity:.48;cursor:not-allowed}.cart-payment-brand{display:grid;place-items:center;width:82px;height:38px;padding:4px 6px;border-radius:6px;background:#fff;color:#111;font-weight:900;letter-spacing:-.02em;overflow:hidden}.cart-payment-brand img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.cart-payment-brand.cart-payment-brand-logo{background:#fff}.cart-payment-brand.shopify{background:#95bf47;color:#163300}.cart-payment-brand.mvola{background:#fff;color:#17418b}.cart-payment-brand.orange{background:#fff;color:#fff}.cart-payment-brand.visa{background:#fff;color:#17357c;font-size:15px;font-style:italic}.cart-payment-copy{display:grid;gap:2px}.cart-payment-copy strong{font-weight:600}.cart-payment-copy small{color:#8f96a2}.cart-payment-option em{font-style:normal;padding:4px 6px;border-radius:999px;background:rgba(255,255,255,.07);color:#9da4af;font-weight:800;letter-spacing:.08em}.cart-payment-option.is-active em{background:rgba(57,201,120,.14);color:#7ce3a7}.cart-checkout-note{margin:16px 20px 12px;color:#9299a5;font-size:16px;line-height:1.45}.cart-checkout-btn{width:calc(100% - 40px);margin:0 20px 14px;min-height:50px}.cart-checkout-btn:disabled{opacity:.42;cursor:not-allowed}.cart-checkout-btn.is-loading{opacity:.72}.cart-checkout-error{margin:0 20px 18px;padding:10px;border:1px solid rgba(227,30,38,.3);border-radius:7px;background:rgba(227,30,38,.08);color:#ff9a9e;font-size:16px}
@media (max-width:1050px){.cart-layout{grid-template-columns:1fr}.cart-summary-panel{position:static}}
@media (max-width:700px){.cart-title-row{align-items:flex-start;flex-direction:column}.cart-line{grid-template-columns:76px minmax(0,1fr);gap:10px}.cart-line-media{width:76px;height:72px}.cart-line-controls{grid-column:1/-1;grid-template-columns:auto 1fr auto;justify-items:start}.cart-line-total{justify-self:end}.cart-line-remove{grid-column:auto}.shop-purchase-row{grid-template-columns:1fr}.shop-quantity-control{width:100%;grid-template-columns:1fr 58px 1fr}.header-cart-btn{width:38px;height:38px;min-width:38px;min-height:38px}.header-cart-icon{width:21px;height:21px}.header-cart-icon img{width:19px;height:19px}}
@media (max-width:480px){.shop-card-actions{grid-template-columns:1fr}.cart-payment-option{grid-template-columns:72px minmax(0,1fr)}.cart-payment-brand{width:68px;height:34px;padding:4px 5px}.cart-payment-option em{display:none}.cart-line-controls{grid-template-columns:auto 1fr}.cart-line-total{justify-self:end}.cart-line-remove{grid-column:1/-1}}

.cart-payment-brand.binance-pay,
.topup-binance-pay-mark{display:flex;align-items:center;justify-content:center;gap:6px;background:#fff!important;color:#101010!important;font-family:Inter,Arial,sans-serif;font-size:11px;font-style:normal;font-weight:900;letter-spacing:.02em;white-space:nowrap}
.cart-payment-brand.binance-pay img,
.topup-binance-pay-mark img{display:block;width:20px;height:20px;flex:0 0 20px;object-fit:contain}
.cart-payment-brand.binance-pay span,
.topup-binance-pay-mark span{display:block;line-height:1}
.topup-binance-pay-mark{width:78px;height:34px;padding:4px 6px;border-radius:5px}
.topup-payment-option>strong>small{display:block;margin-top:3px;color:#8f96a2;font-size:11px;font-weight:600}

.admin-shop-payments-card{overflow:hidden}.admin-payment-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.admin-payment-status{display:grid;gap:5px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(8,11,18,.45)}.admin-payment-status span{width:max-content;padding:3px 7px;border-radius:999px;font-weight:800;letter-spacing:.07em}.admin-payment-status small{color:#8f96a2}.admin-payment-status.is-active{border-color:rgba(57,201,120,.35)}.admin-payment-status.is-active span{background:rgba(57,201,120,.13);color:#7ce3a7}.admin-payment-status.is-coming span{background:rgba(255,255,255,.07);color:#aeb4be}@media(max-width:900px){.admin-payment-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.admin-payment-status-grid{grid-template-columns:1fr}}

/* v1.13 — Header shop actions: recherche intégrée → panier → utilisateur */
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto;position:relative}
.header-search{display:flex;align-items:center;gap:7px;flex:0 1 auto;min-width:42px}
.header-search-toggle{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;padding:0;border:0;border-radius:7px;background:transparent;cursor:pointer;transition:background .18s ease}
.header-search-toggle:hover,.header-search.is-open .header-search-toggle{background:rgba(227,30,38,.10)}
.header-search-toggle img{display:block;width:21px;height:21px}
.header-search-inline{display:block;overflow:hidden;width:0;max-width:0;opacity:0;pointer-events:none;transition:width .22s ease,max-width .22s ease,opacity .16s ease}
.header-search.is-open .header-search-inline{width:260px;max-width:260px;opacity:1;pointer-events:auto}
.header-search-inline input{display:block;width:100%;height:40px;border:1px solid rgba(255,255,255,.16);border-radius:7px;background:#05070c;color:#fff;padding:0 12px;font:inherit;font-size:14px;outline:none}
.header-search-inline input::placeholder{color:#777f8b}
.header-search-inline input:focus{border-color:#e31e26;box-shadow:0 0 0 3px rgba(227,30,38,.10)}
.header-actions .header-cart-btn{margin:0}
.header-actions .login-btn{margin-left:2px}

/* v1.11 — /shop: catégories à la place de la barre de recherche */
.shop-category-nav{display:grid;gap:12px;padding:16px 18px;margin-bottom:24px;overflow:hidden}
.shop-category-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.shop-category-heading>span{color:#fff;font-weight:600;letter-spacing:.1em}
.shop-category-heading>small{color:#8f96a2;letter-spacing:.04em}
.shop-category-list{display:flex;gap:8px;overflow-x:auto;padding:2px 1px 5px;scrollbar-width:thin;scrollbar-color:rgba(227,30,38,.5) transparent}
.shop-category-list::-webkit-scrollbar{height:4px}.shop-category-list::-webkit-scrollbar-track{background:transparent}.shop-category-list::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(227,30,38,.5)}
.shop-category-chip{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 15px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:rgba(8,11,18,.58);color:#d9dde4;text-decoration:none;font-weight:600;letter-spacing:.055em;white-space:nowrap;transition:border-color .18s ease,background .18s ease,color .18s ease}
.shop-category-chip:hover{border-color:rgba(227,30,38,.55);background:rgba(227,30,38,.07);color:#fff}
.shop-category-chip.active{border-color:#e31e26;background:#e31e26;color:#fff}

@media (max-width:980px){
  .header-actions{margin-left:auto}
}
@media (max-width:640px){
  .header-actions{gap:4px}
  .header-search{min-width:36px;gap:5px}
  .header-search-toggle,.header-actions .header-cart-btn{width:36px;height:36px;min-width:36px;min-height:36px}
  .header-search-toggle img{width:18px;height:18px}
  .header-actions .header-cart-icon{width:20px;height:20px}.header-actions .header-cart-icon img{width:18px;height:18px}
  .header-search.is-open .header-search-inline{width:min(190px,42vw);max-width:min(190px,42vw)}
  .header-search-inline input{height:36px;padding:0 10px;font-size:16px}
  .shop-category-nav{padding:14px;margin-bottom:18px}
  .shop-category-heading{align-items:flex-start;flex-direction:column;gap:3px}
  .shop-category-chip{min-height:36px;padding:0 12px;font-size:16px}
}

/* v1.12 — Admin Shop: catégories gaming, exceptions produit et ruptures */
.admin-shop-visibility-card{overflow:hidden}
.admin-shop-stock-setting{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin:0}
.admin-shop-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:18px}
.admin-shop-category-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 13px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(8,11,18,.48);transition:border-color .18s ease,opacity .18s ease}
.admin-shop-category-row:hover{border-color:rgba(255,255,255,.2)}
.admin-shop-category-row.is-hidden-category{background:rgba(8,11,18,.30);border-color:rgba(227,30,38,.18)}
.admin-shop-category-row>div{min-width:0;display:grid;gap:5px}
.admin-shop-category-row form{margin:0;flex:0 0 auto}
.admin-shop-category-titleline{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.admin-shop-category-titleline>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-weight:600}
.admin-shop-category-row small{color:#9299a5;line-height:1.4}
.admin-shop-category-row small strong{color:#f0b45c;font-weight:600}
.admin-shop-category-hidden-label{display:inline-flex;margin-left:5px;padding:2px 5px;border:1px solid rgba(227,30,38,.30);border-radius:999px;background:rgba(227,30,38,.08);color:#ff8b8f;font-weight:800;letter-spacing:.05em;vertical-align:middle}
.admin-shop-global-note{display:inline-flex;align-items:center;min-height:34px;padding:0 9px;border:1px solid rgba(255,255,255,.11);border-radius:6px;background:rgba(255,255,255,.035);color:#8f96a2;font-weight:700;letter-spacing:.05em;text-align:center}
.admin-shop-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1000px){.admin-shop-category-grid{grid-template-columns:1fr}.admin-shop-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-shop-stock-setting{justify-content:flex-start}}
@media(max-width:640px){.admin-shop-category-row{align-items:flex-start;flex-direction:column}.admin-shop-category-row form,.admin-shop-category-row .admin-shop-toggle-btn{width:100%}.admin-shop-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-shop-stock-setting{width:100%;display:grid}.admin-shop-stock-setting .admin-filter-btn{width:100%}}

/* =========================================================
   v1.14 — Harmonisation typographique globale
   IMPORTANT : le header est volontairement exclu de cette passe.
   Échelle : display > page > section > card > body > secondary > micro.
   ========================================================= */
:root{
  --type-display:clamp(54px,5.2vw,76px);
  --type-page:clamp(38px,4vw,50px);
  --type-section:clamp(24px,2.4vw,30px);
  --type-card:20px;
}

/* Accueil tournoi / accueil shop — sans toucher au header */
.home-page .eyebrow{font-size:20px;line-height:1.1}
.home-page .hero h1{font-size:var(--type-display);line-height:.9}
.home-page .intro{font-size:var(--type-body);line-height:1.45}
.home-page .info-block strong,.home-page .info-block span{font-size:18px;line-height:1.3}
.home-page .cta{font-size:15px;height:54px}
.home-mode-shop .home-shop-landing h1{font-size:var(--type-display);line-height:.9}
.home-mode-shop .home-shop-intro{font-size:var(--type-body);line-height:1.5}
.home-shop-products-head>div>span,.home-shop-products-head>a{font-size:16px}
.home-shop-products-head h2{font-size:30px}
.home-shop-badge{font-size:16px}
.home-shop-product-body small{font-size:16px}
.home-shop-product-body h3{font-size:18px;line-height:1.28}
.home-shop-product-body strong{font-size:16px}
.home-shop-product-body del{font-size:16px}

/* Titres de pages et sections */
.page-title h1,.admin-title h1{font-size:var(--type-page);line-height:.95}
.page-title p{font-size:var(--type-body);line-height:1.5}
.section-head h2{font-size:var(--type-section);line-height:1}
.dynamic-section h2{font-size:var(--type-section);line-height:1.05}
.dynamic-section h3{font-size:19px}
.dynamic-section p,.dynamic-list{font-size:var(--type-body);line-height:1.6}
.admin-table-head h2,.admin-game-top h2,.quick-actions-card h2{font-size:22px}
.email-confirm-panel h2{font-size:24px}
.player-card h2{font-size:clamp(21px,2vw,26px)}
.login-title h1{font-size:clamp(32px,3.5vw,42px)}

/* Pages jeux / règlement */
.game-card h2{font-size:clamp(28px,3vw,36px);line-height:.95}
.game-card .category{font-size:16px}
.game-card p,.rule-list li,.feature-list li{font-size:var(--type-body);line-height:1.5}
.game-meta strong,.game-meta span{font-size:14px}
.prize-box strong{font-size:24px}
.prize-box span,.tag,.mini-stats span{font-size:16px}

/* Formulaires publics */
.form-title h1{line-height:1}
.form-title p{font-size:18px;line-height:1.45}
.form-panel label,.admin-filters label,.match-create-form label,.match-inline-form label{font-size:14px}
.form-panel input,.form-panel select,.form-panel textarea,.admin-filters input,.admin-filters select,.match-create-form input,.match-create-form select,.match-inline-form input,.match-inline-form select{font-size:15px}
.confirm-title{font-size:15px}
.check-row{font-size:16px;line-height:1.4}
.submit-btn{font-size:16px;height:50px}
.contact-form label{font-size:14px}
.contact-form input,.contact-form select,.contact-form textarea{font-size:15px}

/* Admin général */
.stat-card strong{font-size:32px}
.stat-card span{font-size:16px}
.admin-alert{font-size:14px}
.admin-table th{font-size:16px}
.admin-table td{font-size:14px}
.status-pill,.small-action,.game-status,.admin-alert.small,.pagination-btn,.pagination-number,.live-state,.live-upload-status,.field-error{font-size:16px!important}
.email-date,.action-dropdown summary{font-size:16px}
.admin-field small,.admin-rule-card small,.dashboard-stats .admin-stat-card small{font-size:16px}

/* Planning : conserver le côté compact sans descendre sous une taille lisible */
.planning-shot-game strong,.planning-shot-phase,.planning-shot-versus strong,.planning-shot-watch-item small{font-size:16px}
.planning-shot-score{font-size:16px}
.planning-player-avatar span{font-size:16px!important}

/* Shop catalogue */
.shop-result-head span{font-size:16px}
.shop-result-head strong{font-size:22px}
.shop-result-head small{font-size:16px}
.shop-badge{font-size:16px}
.shop-product-category{font-size:16px}
.shop-product-body h2{font-size:18px;line-height:1.28}
.shop-product-body>small{font-size:16px}
.shop-product-price del{font-size:16px}
.shop-card-action{font-size:16px}
.shop-state-card h2{font-size:24px}
.shop-state-card p{font-size:var(--type-body)}
.shop-pagination a,.shop-pagination span{font-size:16px}
.shop-back-link{font-size:16px}
.shop-detail-content h1{font-size:clamp(32px,4vw,44px);line-height:1}
.shop-detail-vendor{font-size:16px}
.shop-detail-stock{font-size:16px}
.shop-detail-description{font-size:var(--type-body);line-height:1.6}
.shop-variant-list h2{font-size:18px}
.shop-variant-row strong{font-size:14px}
.shop-variant-row small{font-size:16px}
.shop-card-add,.shop-view-cart-link,.shop-variant-select-field>span{font-size:16px}

/* Catégories shop */
.shop-category-heading>span{font-size:16px}
.shop-category-heading>small{font-size:16px}
.shop-category-chip{font-size:16px}

/* Panier */
.cart-title-row h1{font-size:clamp(38px,4.5vw,52px);line-height:.95}
.cart-title-row p:not(.shop-kicker){font-size:var(--type-body)}
.cart-panel-head>div,.cart-summary-head{font-size:16px}
.cart-panel-head strong{font-size:16px}
.cart-clear-btn{font-size:16px}
.cart-empty h2{font-size:24px}
.cart-empty p{font-size:var(--type-body)}
.cart-line-fallback{font-size:16px}
.cart-line-title{font-size:16px}
.cart-line-info small{font-size:16px}
.cart-line-info code{font-size:16px}
.cart-line-unit-price{font-size:14px}
.cart-line-total{font-size:15px}
.cart-line-remove{font-size:16px}
.cart-summary-row{font-size:16px}
.cart-payment-title>span{font-size:16px}
.cart-payment-title small{font-size:16px}
.cart-payment-brand{font-size:16px}
.cart-payment-copy strong{font-size:16px}
.cart-payment-copy small{font-size:16px}
.cart-payment-option em{font-size:16px}
.cart-checkout-note,.cart-checkout-error{font-size:16px}

/* Admin Shop / Admin Accueil */
.admin-page-tag{font-size:16px}
.admin-shopify-status{font-size:16px}
.admin-shopify-info-grid span{font-size:16px}
.admin-shopify-last-sync{font-size:16px}
.admin-shop-stat-grid span{font-size:16px}
.admin-shop-meta-line{font-size:16px}
.admin-shop-filterbar label>span{font-size:16px}
.admin-shop-product-state{font-size:16px}
.admin-shop-product-main>p,.admin-shop-product-meta{font-size:16px}
.admin-shop-small-btn,.admin-shop-toggle-btn{font-size:16px}
.admin-payment-status strong{font-size:16px}
.admin-payment-status span{font-size:16px}
.admin-payment-status small{font-size:16px}
.admin-shop-category-titleline>strong{font-size:16px}
.admin-shop-category-row small{font-size:16px}
.admin-shop-category-hidden-label{font-size:16px}
.admin-shop-global-note{font-size:16px}
.admin-home-current-mode{font-size:16px}
.admin-home-mode-option small{font-size:16px}
.admin-home-background-preview span{font-size:16px}
.admin-home-background-controls>label:first-child{font-size:16px}
.admin-home-background-controls small{font-size:16px}
.admin-home-reset-check{font-size:16px}

/* Footer uniquement — header volontairement non ciblé */
.page:not(.home-page) .footer-brand span,
body.inner-page .footer-brand span,
body.inner-page.admin-page .footer-brand span,
.page:not(.home-page) .footer-content p,
body.inner-page .footer-content p,
body.inner-page.admin-page .footer-content p{font-size:16px!important}
.home-page .footer-brand span,.home-page .footer-content p,.home-page .footer-social{font-size:16px}

@media(max-width:700px){
  :root{
    --type-display:clamp(42px,12vw,54px);
    --type-page:clamp(32px,9.5vw,40px);
    --type-section:clamp(22px,6.5vw,26px);
  }
  .home-page .eyebrow{font-size:18px}
  .home-mode-shop .home-shop-landing h1{font-size:var(--type-display)}
  .home-mode-shop .home-shop-intro{font-size:15px}
  .home-shop-products-head h2{font-size:26px}
  .home-shop-product-body h3{font-size:14px}
  .home-shop-product-body strong{font-size:15px}
  .home-shop-badge{font-size:16px}
  .page-title p{font-size:15px}
  .game-card h2{font-size:28px}
  .form-title h1{font-size:28px}
  .admin-title h1{font-size:clamp(32px,9vw,38px)}
  .shop-category-heading>span{font-size:16px}
  .shop-category-heading>small{font-size:16px}
  .shop-category-chip{font-size:16px}
  .shop-detail-content h1{font-size:clamp(30px,9vw,38px)}
  .cart-title-row h1{font-size:clamp(34px,10vw,42px)}
}

/* =========================================================
   v1.15 — Échelle typographique demandée
   Header EXCLU : aucune règle ci-dessous ne cible .header / .nav / .login-btn.
   Normal: 19px | Secondaire: 16px | Micro: 13px
   ========================================================= */
:root{
  --type-body:19px;
  --type-secondary:16px;
  --type-micro: 16px;
  --type-action:16px;
}

/* Texte normal */
.home-page .intro,
.home-mode-shop .home-shop-intro,
.page-title p,
.dynamic-section p,.dynamic-list,
.game-card p,.rule-list li,.feature-list li,
.shop-state-card p,
.shop-detail-description,
.cart-title-row p:not(.shop-kicker),
.cart-empty p,
.form-panel input,.form-panel select,.form-panel textarea,
.contact-form input,.contact-form select,.contact-form textarea,
.admin-filters input,.admin-filters select,
.match-create-form input,.match-create-form select,
.match-inline-form input,.match-inline-form select{
  font-size:var(--type-body)!important;
}

/* Texte secondaire */
.home-page .info-block strong,.home-page .info-block span,
.home-page .cta,
.home-shop-product-body h3,.home-shop-product-body strong,
.game-card .category,.game-meta strong,.game-meta span,
.form-title p,
.form-panel label,.admin-filters label,.match-create-form label,.match-inline-form label,
.confirm-title,.submit-btn,
.contact-form label,
.admin-alert,.admin-table td,
.shop-result-head small,
.shop-product-body h2,.shop-product-body>small,
.shop-product-price del,
.shop-detail-stock,
.shop-variant-list h2,.shop-variant-row strong,
.shop-category-heading>span,.shop-category-chip,
.cart-panel-head strong,.cart-line-title,.cart-line-unit-price,.cart-line-total,
.cart-summary-row,.cart-payment-title>span,.cart-payment-copy strong,
.admin-page-toggle-row strong,
.admin-shop-category-titleline>strong,
.admin-payment-status strong{
  font-size:var(--type-secondary)!important;
}

/* Micro-textes : jamais sous 13px */
.home-shop-products-head>div>span,.home-shop-products-head>a,
.home-shop-badge,.home-shop-product-body small,.home-shop-product-body del,
.prize-box span,.tag,.mini-stats span,
.check-row,
.stat-card span,
.admin-table th,
.status-pill,.small-action,.game-status,.admin-alert.small,
.pagination-btn,.pagination-number,.live-state,.live-upload-status,.field-error,
.email-date,.action-dropdown summary,
.admin-field small,.admin-rule-card small,.dashboard-stats .admin-stat-card small,
.planning-shot-game strong,.planning-shot-phase,.planning-shot-versus strong,.planning-shot-watch-item small,
.planning-shot-score,.planning-player-avatar span,
.shop-result-head span,.shop-badge,.shop-product-category,
.shop-card-action,.shop-pagination a,.shop-pagination span,.shop-back-link,
.shop-detail-vendor,.shop-variant-row small,.shop-card-add,.shop-view-cart-link,.shop-variant-select-field>span,
.shop-category-heading>small,
.cart-panel-head>div,.cart-summary-head,.cart-clear-btn,.cart-line-fallback,
.cart-line-info small,.cart-line-info code,.cart-line-remove,
.cart-payment-title small,.cart-payment-brand,.cart-payment-copy small,.cart-payment-option em,
.cart-checkout-note,.cart-checkout-error,
.admin-page-tag,.admin-shopify-status,.admin-shopify-info-grid span,.admin-shopify-last-sync,
.admin-shop-stat-grid span,.admin-shop-meta-line,.admin-shop-filterbar label>span,
.admin-shop-product-state,.admin-shop-product-main>p,.admin-shop-product-meta,
.admin-shop-small-btn,.admin-shop-toggle-btn,
.admin-payment-status span,.admin-payment-status small,
.admin-shop-category-row small,.admin-shop-category-hidden-label,.admin-shop-global-note,
.admin-home-current-mode,.admin-home-mode-option small,.admin-home-background-preview span,
.admin-home-background-controls>label:first-child,.admin-home-background-controls small,.admin-home-reset-check{
  font-size:var(--type-micro)!important;
}

/* Quelques composants dont le texte principal doit rester clairement au niveau normal */
.form-title h1{font-size:clamp(28px,3vw,36px)}
.shop-product-price strong{font-size:22px}
.shop-detail-price strong{font-size:30px}
.cart-summary-head strong{font-size:22px}
.admin-table td a,.admin-table td button{font-size:16px}

/* Footer : secondaire, sans toucher au header */
.page:not(.home-page) .footer-brand span,
body.inner-page .footer-brand span,
body.inner-page.admin-page .footer-brand span,
.page:not(.home-page) .footer-content p,
body.inner-page .footer-content p,
body.inner-page.admin-page .footer-content p,
.home-page .footer-brand span,.home-page .footer-content p,.home-page .footer-social{
  font-size:var(--type-secondary)!important;
}

@media(max-width:700px){
  :root{
    --type-body:18px;
    --type-secondary:15px;
    --type-micro:12px;
    --type-action:15px;
  }
  .home-mode-shop .home-shop-intro,.page-title p{font-size:var(--type-body)!important}
  .home-shop-product-body h3,.home-shop-product-body strong{font-size:var(--type-secondary)!important}
  .home-shop-badge,.shop-category-heading>small{font-size:var(--type-micro)!important}
  .shop-category-heading>span,.shop-category-chip{font-size:var(--type-secondary)!important}
}

/* v1.15 — couverture des textes sans classe typographique dédiée */
.inner-main p:not(.shop-kicker):not(.shop-product-category):not(.shop-detail-vendor),
.inner-main li,
.form-panel p,
.contact-info .contact-line span,
.contact-info .contact-line strong,
.public-summary-card strong,
.public-summary-card span{
  font-size:var(--type-body);
  line-height:1.5;
}

/* Les libellés / métadonnées restent au niveau secondaire */
.inner-main :where(label, .category, .meta, .subtitle),
.admin-table td,
.contact-info .contact-line strong,
.public-summary-card span{
  font-size:var(--type-secondary);
}

/* Les badges, codes, aides et petites métadonnées restent au niveau micro */
.inner-main :where(small, code),
.admin-table th,
.status-pill,.small-action,.game-status,
.shop-badge,.shop-product-category,.shop-detail-vendor,
.admin-page-tag,.admin-shop-category-hidden-label{
  font-size:var(--type-micro)!important;
}

/* Contrôles : contenu normal, actions secondaires */
.inner-main :where(input,select,textarea),
.form-panel :where(input,select,textarea){font-size:var(--type-body)!important}
.inner-main :where(button,.red-btn,.outline-btn,.admin-filter-btn,.admin-reset-btn),
.form-panel button{font-size:var(--type-secondary)}

@media(max-width:700px){
  .inner-main p:not(.shop-kicker):not(.shop-product-category):not(.shop-detail-vendor),
  .inner-main li,
  .form-panel p{font-size:var(--type-body)}
}

/* =========================================================
   v1.15.2 — Admin Shop : liste de catalogues compacte
   Une ligne = nom + produits + stock + switch. Pas de cartes volumineuses.
   ========================================================= */
.admin-shop-category-compact-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:24px;
  row-gap:0;
  margin-top:10px;
}
.admin-shop-category-compact-row{
  gap:10px;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.09);
  background:transparent;
}
.admin-shop-category-compact-row:hover{
  border-color:rgba(255,255,255,.16);
  background:transparent;
}
.admin-shop-category-compact-row.is-hidden-category{
  border-color:rgba(255,255,255,.065);
  background:transparent;
  opacity:.58;
}
.admin-shop-category-compact-info{
  min-width:0;
  display:flex!important;
  align-items:baseline;
  white-space:nowrap;
  overflow:hidden;
}
.admin-shop-category-compact-info>strong{
  flex:0 1 auto;
  max-width:48%;
  overflow:hidden;
  text-overflow:ellipsis;
  color:#fff;
  font-weight:700;
  letter-spacing:.015em;
  white-space:nowrap;
  text-transform:uppercase;
}
.admin-shop-category-compact-info>span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  color:#9299a5;
  line-height:1.2;
  white-space:nowrap;
}
.admin-shop-category-switch-form{
  margin:0;
  flex:0 0 auto;
}
.admin-shop-category-switch{
  width:42px;
  height:22px;
  flex-basis:42px;
}
.admin-shop-category-switch>span::after{
  top:2px;
  left:2px;
  width:16px;
  height:16px;
}
.admin-shop-category-switch input:checked+span::after{
  transform:translateX(20px);
}
.admin-shop-category-manual{
  flex:0 0 auto;
  color:#8f96a2;
  font-size:16px;
  font-weight:700;
  letter-spacing:.06em;
}
@media(max-width:900px){
  .admin-shop-category-compact-list{grid-template-columns:1fr}
}
@media(max-width:640px){
  .admin-shop-category-compact-row{
    min-height:38px;
    padding:5px 0;
    align-items:center;
    flex-direction:row;
  }
  .admin-shop-category-compact-row form{width:auto}
  .admin-shop-category-compact-info{display:flex!important}
  .admin-shop-category-compact-info>strong{max-width:42%}
}

/* v1.15.4 — Admin Shop SPA / chargement sélectif */
.admin-shop-spa-summary{overflow:hidden}
.admin-shop-spa-stats{display:grid;gap:8px;margin-top:14px}
.admin-shop-spa-stats>div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:9px 11px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:rgba(7,10,16,.45)}
.admin-shop-spa-stats span{font-size:16px;color:#9ca3ae}
.admin-shop-spa-stats strong{font-size:20px;color:#fff;font-weight:600}
.admin-shop-view-buttons{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.admin-shop-view-btn{min-height:34px;padding:0 11px;border:1px solid rgba(255,255,255,.13);border-radius:7px;background:rgba(255,255,255,.035);color:#aab0bb;font:inherit;font-size:16px;font-weight:700;letter-spacing:.04em;cursor:pointer}
.admin-shop-view-btn.is-active{border-color:rgba(227,30,38,.55);background:rgba(227,30,38,.13);color:#fff}
.admin-shop-spa-products .admin-shop-filterbar{margin:13px 0 14px}
.admin-shop-spa-loading{padding:18px;text-align:center;color:#c5cad2;font-size:16px;letter-spacing:.08em}
.admin-shop-spa-more-wrap{display:flex;justify-content:center;margin-top:14px}
.admin-shop-spa-more-wrap .admin-filter-btn{min-width:150px}
.admin-shop-product-actions .js-product-visibility-form{display:block;margin:0}.admin-shop-product-actions .js-product-visibility-form .admin-shop-toggle-btn{width:100%;white-space:nowrap}
.admin-shop-category-compact-list{gap:5px}
.admin-shop-category-compact-row{min-height:48px;padding:7px 10px;border-radius:7px}
.admin-shop-category-compact-info{gap:2px!important}
.admin-shop-category-compact-info>strong{font-size:16px!important}
.admin-shop-category-compact-info>span{font-size:16px!important}
@media(max-width:900px){.admin-shop-spa-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.admin-shop-spa-stats{grid-template-columns:1fr}.admin-shop-view-buttons{width:100%}.admin-shop-view-btn{flex:1 1 0}.admin-shop-category-compact-list{grid-template-columns:1fr}}

/* v1.15.5 - Edition locale des articles depuis Admin/Shop */
.admin-shop-small-btn.is-edited{border-color:rgba(227,30,38,.48);background:rgba(227,30,38,.14);color:#ff9da1}
body.admin-shop-modal-open{overflow:hidden}
.admin-shop-edit-modal[hidden]{display:none!important}.admin-shop-edit-modal{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:24px}.admin-shop-edit-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.76);backdrop-filter:blur(7px)}.admin-shop-edit-dialog{position:relative;z-index:1;width:min(900px,100%);max-height:min(88vh,900px);overflow:auto;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:#0b0f16;box-shadow:0 24px 80px rgba(0,0,0,.6);padding:22px}.admin-shop-edit-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.1)}.admin-shop-edit-head>div>span{display:block;color:#e31e26;font-size:16px;font-weight:800;letter-spacing:.12em;margin-bottom:5px}.admin-shop-edit-head h2{margin:0;color:#fff;font-size:22px}.admin-shop-edit-head p{margin:7px 0 0;max-width:700px;color:#9ca3ae;font-size:16px;line-height:1.5}.admin-shop-edit-close{border:0;background:transparent;color:#fff;font-size:32px;line-height:1;cursor:pointer;padding:0 5px}.admin-shop-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.admin-shop-edit-grid>label,.admin-shop-edit-preview-wrap{display:grid;gap:7px;align-content:start}.admin-shop-edit-grid label>span,.admin-shop-edit-preview-wrap>span{color:#c8cdd6;font-size:16px;font-weight:800;letter-spacing:.08em}.admin-shop-edit-grid input[type="text"],.admin-shop-edit-grid input[type="file"],.admin-shop-edit-grid textarea{width:100%;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#070a10;color:#f3f4f6;padding:10px 11px;font:inherit;font-size:16px;outline:none}.admin-shop-edit-grid input:focus,.admin-shop-edit-grid textarea:focus{border-color:rgba(227,30,38,.68);box-shadow:0 0 0 2px rgba(227,30,38,.08)}.admin-shop-edit-grid textarea{resize:vertical;min-height:126px}.admin-shop-edit-grid small{color:#7f8793;font-size:16px;line-height:1.4}.admin-shop-edit-description{grid-column:1/2}.admin-shop-edit-preview-wrap{grid-column:2/3;grid-row:3/4}.admin-shop-edit-preview{height:150px;border:1px solid rgba(255,255,255,.12);border-radius:9px;overflow:hidden;background:#05070b url("/assets/shop-article-bg.png") center/cover no-repeat;display:grid;place-items:center}.admin-shop-edit-preview img{width:100%;height:100%;object-fit:contain;padding:8px}.admin-shop-edit-remove-image{display:flex!important;align-items:center;gap:8px;color:#c8cdd6;font-size:16px}.admin-shop-edit-remove-image input{accent-color:#e31e26}.admin-shop-edit-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.admin-shop-edit-actions>div{display:flex;gap:8px}.admin-shop-edit-actions button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:720px){.admin-shop-edit-modal{padding:10px}.admin-shop-edit-dialog{padding:15px;max-height:94vh}.admin-shop-edit-grid{grid-template-columns:1fr}.admin-shop-edit-description,.admin-shop-edit-preview-wrap{grid-column:auto;grid-row:auto}.admin-shop-edit-actions{align-items:stretch;flex-direction:column}.admin-shop-edit-actions>div{display:grid;grid-template-columns:1fr 1fr}.admin-shop-edit-actions>.admin-reset-btn{width:100%}}

/* Édition du nom public et de l'icône des catégories Shop */
.admin-shop-category-actions{display:flex!important;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto}
.admin-shop-category-edit-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px;padding:0 9px;border:1px solid rgba(255,255,255,.14);border-radius:6px;background:rgba(255,255,255,.04);color:#dce0e7;font:inherit;font-size:14px;font-weight:750;letter-spacing:.05em;cursor:pointer}
.admin-shop-category-edit-btn:hover,.admin-shop-category-edit-btn:focus-visible{border-color:rgba(255,255,255,.34);color:#fff;outline:none}
.admin-shop-category-edit-btn.is-edited{border-color:rgba(227,30,38,.5);background:rgba(227,30,38,.14);color:#ff9da1}
.admin-shop-category-edit-btn img{width:14px;height:14px;object-fit:contain;filter:brightness(0) invert(1);opacity:.88}
.admin-shop-category-modal{place-items:start center;overflow-y:auto;padding-top:max(18px,calc(env(safe-area-inset-top) + 18px));padding-bottom:max(18px,calc(env(safe-area-inset-bottom) + 18px))}
.admin-shop-category-modal>.admin-shop-edit-backdrop{position:fixed}
.admin-shop-category-edit-dialog{width:min(790px,100%)}
.admin-shop-category-edit-form{display:grid;gap:20px;margin-top:20px}
.admin-shop-category-name-field{display:grid;gap:7px}
.admin-shop-category-name-field>span,.admin-shop-category-icon-file>span{color:#c8cdd6;font-size:16px;font-weight:800;letter-spacing:.08em}
.admin-shop-category-name-field input{width:100%;height:44px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#070a10;color:#f3f4f6;padding:0 11px;font:inherit;font-size:16px;outline:none}
.admin-shop-category-name-field input:focus{border-color:rgba(227,30,38,.68);box-shadow:0 0 0 2px rgba(227,30,38,.08)}
.admin-shop-category-name-field small,.admin-shop-category-icon-upload small{color:#7f8793;font-size:14px;line-height:1.45}
.admin-shop-category-icon-upload{display:grid!important;grid-template-columns:128px minmax(0,1fr);gap:16px;align-items:center;padding:14px;border:1px solid rgba(255,255,255,.11);border-radius:10px;background:rgba(255,255,255,.025)}
.admin-shop-category-icon-preview{display:grid;place-items:center;width:128px;aspect-ratio:1;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#070a10;overflow:hidden}
.admin-shop-category-icon-preview img{width:100%;height:100%;padding:14px;object-fit:contain}
.admin-shop-category-icon-upload>div:last-child{display:grid;gap:9px;min-width:0}
.admin-shop-category-icon-file{display:grid;gap:7px}
.admin-shop-category-icon-file input{width:100%;min-height:42px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#070a10;color:#f3f4f6;padding:7px;font:inherit;font-size:14px}
.admin-shop-category-icon-upload .admin-reset-btn{justify-self:start}
@media(max-width:640px){.admin-shop-category-actions{gap:6px}.admin-shop-category-edit-btn{width:32px;min-width:32px;padding:0}.admin-shop-category-edit-btn span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.admin-shop-category-edit-form{gap:16px}.admin-shop-category-icon-upload{grid-template-columns:88px minmax(0,1fr);gap:11px;padding:10px}.admin-shop-category-icon-preview{width:88px}.admin-shop-category-icon-preview img{padding:9px}.admin-shop-category-modal{padding:8px;padding-top:max(8px,calc(env(safe-area-inset-top) + 8px))}}








/* Métadonnées du catalogue administrable */
.admin-shop-spa-stats{grid-template-columns:repeat(6,minmax(0,1fr))}
.admin-shop-metadata-badge{display:inline-flex;align-items:center;min-height:22px;padding:2px 7px;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:rgba(255,255,255,.035);color:#aab0bb;font-size:16px;line-height:1}
.admin-shop-metadata-badge.structured{border-color:rgba(57,201,120,.3);background:rgba(57,201,120,.08);color:#7ce3a7}
.admin-shop-metadata-badge.warning{border-color:rgba(245,158,11,.42);background:rgba(245,158,11,.1);color:#f4c269}
.admin-shop-structured-source{margin-top:3px!important;color:#7f8792!important;font-size:16px!important;line-height:1.4!important}
@media(max-width:1100px){.admin-shop-spa-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.admin-shop-spa-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.admin-shop-good-note-form{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:end;margin-top:14px}.admin-shop-good-note-text{display:grid;gap:6px;min-width:0}.admin-shop-good-note-text>span{color:#c8cdd6;font-size:16px;font-weight:800;letter-spacing:.08em}.admin-shop-good-note-text input{width:100%;height:42px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#070a10;color:#f3f4f6;padding:0 11px;font:inherit;font-size:16px;outline:none}.admin-shop-good-note-text input:focus{border-color:rgba(227,30,38,.68);box-shadow:0 0 0 2px rgba(227,30,38,.08)}.admin-shop-good-note-text small{color:#7f8793;font-size:16px;line-height:1.4}.admin-shop-good-note-switch{align-self:center;margin-bottom:4px}@media(max-width:720px){.admin-shop-good-note-form{grid-template-columns:1fr}.admin-shop-good-note-switch{justify-self:start}.admin-shop-good-note-form .admin-filter-btn{width:100%}}

/* Bibliothèque des valeurs de catalogue */
.admin-shop-note-library-form{display:grid;gap:12px;margin-top:14px}
.admin-shop-note-mapping-list{display:grid;gap:7px}
.admin-shop-note-mapping-row{display:grid;grid-template-columns:minmax(150px,.45fr) minmax(0,1fr);gap:12px;align-items:center;padding:9px 10px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:rgba(7,10,16,.46)}
.admin-shop-note-source{display:grid;gap:2px;min-width:0}
.admin-shop-note-source strong{color:#fff;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-shop-note-source small{color:#7f8793;font-size:16px}
.admin-shop-note-mapping-row input{width:100%;height:38px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#070a10;color:#f3f4f6;padding:0 10px;font:inherit;font-size:16px;outline:none}
.admin-shop-note-mapping-row input:focus{border-color:rgba(227,30,38,.68);box-shadow:0 0 0 2px rgba(227,30,38,.08)}
.admin-shop-note-mapping-row input::placeholder{color:#646b75}
.admin-shop-note-empty{margin:0;color:#7f8793;font-size:16px}
.admin-shop-note-library-actions{display:flex;align-items:center;justify-content:space-between;gap:14px}
.admin-shop-note-library-actions small{color:#7f8793;font-size:16px;line-height:1.45}
.admin-shop-note-library-actions .admin-filter-btn{flex:0 0 auto}
@media(max-width:720px){.admin-shop-note-mapping-row{grid-template-columns:1fr}.admin-shop-note-library-actions{align-items:stretch;flex-direction:column}.admin-shop-note-library-actions .admin-filter-btn{width:100%}}

/* =========================================================
   MHTM PLAYER PROFILE v1.15.19 — gaming dashboard + XP
   ========================================================= */
.gamer-profile-page{
  min-height:100vh;
  background:#070b12;
}
.gamer-profile-main{
  width:min(75vw,1160px);
  max-width:1160px;
  padding-top:36px!important;
  padding-bottom:54px!important;
  position:relative;
  z-index:2;
}
.gamer-profile-title{margin:0 0 14px}.gamer-profile-title h1{margin:0;color:#fff;font-size:30px;font-weight:400;letter-spacing:.2px}.gamer-profile-title h1 strong{font-weight:600;color:#fff}
.gamer-profile-shell{display:grid;grid-template-columns:220px minmax(0,1fr);gap:16px;align-items:start}
.gamer-profile-left{display:grid;gap:12px;min-width:0}
.gamer-profile-sidebar{border:1px solid rgba(255,255,255,.13);border-radius:9px;overflow:hidden;background:linear-gradient(180deg,rgba(17,22,34,.94),rgba(10,14,23,.92));box-shadow:0 18px 48px rgba(0,0,0,.28)}
.gamer-profile-nav-item{min-height:48px;padding:0 15px;display:flex;align-items:center;gap:11px;color:#f1f1f1;text-decoration:none;border:0;border-bottom:1px solid rgba(255,255,255,.055);background:transparent;font:500 16px/1 "Barlow Condensed",sans-serif;width:100%;text-align:left;cursor:pointer;transition:.18s ease}
.gamer-profile-nav-item:hover{background:rgba(227,30,38,.08);color:#fff}.gamer-profile-nav-item.is-active{background:linear-gradient(90deg,rgba(227,30,38,.18),rgba(227,30,38,.04));box-shadow:inset 3px 0 #e31e26,inset 0 0 0 1px rgba(227,30,38,.42);color:#fff;text-shadow:0 0 10px rgba(227,30,38,.45)}
.gamer-profile-nav-icon{width:20px;height:20px;display:grid;place-items:center;color:#e34b52;text-align:center}.gamer-profile-nav-icon img{width:18px;height:18px;display:block;object-fit:contain}.gamer-profile-logout-form{margin:0}.gamer-profile-logout{border-bottom:0;color:#d8d8d8}
.gamer-profile-mini-activity{border:1px solid rgba(255,255,255,.11);border-radius:9px;overflow:hidden;background:linear-gradient(180deg,rgba(15,20,31,.92),rgba(8,12,19,.92));box-shadow:0 14px 38px rgba(0,0,0,.2)}
.gamer-profile-mini-activity-head{min-height:38px;padding:0 11px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.07)}.gamer-profile-mini-activity-head strong{color:#f3f4f6;font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:.45px}.gamer-profile-mini-activity-head span{min-width:20px;height:20px;padding:0 6px;border-radius:999px;display:grid;place-items:center;background:rgba(227,30,38,.18);border:1px solid rgba(227,30,38,.42);color:#ff7379;font-size:16px}
.gamer-profile-mini-activity-list{display:grid}.gamer-profile-mini-activity-item{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:7px;align-items:center;padding:9px 10px;color:inherit;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.055);transition:.16s}.gamer-profile-mini-activity-item:hover{background:rgba(227,30,38,.06)}.gamer-profile-mini-activity-item:last-child{border-bottom:0}.gamer-profile-mini-activity-icon{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:rgba(227,30,38,.11);color:#ef555c;font-size:16px}.gamer-profile-mini-activity-copy{min-width:0;display:grid;gap:1px}.gamer-profile-mini-activity-copy strong{color:#e8eaee;font-size:16px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gamer-profile-mini-activity-copy small{color:#737c89;font-size:16px}.gamer-profile-mini-activity-item b{color:#e7b95e;font-size:16px;white-space:nowrap}.gamer-profile-mini-empty{padding:18px 10px;color:#747d89;font-size:16px;text-align:center}.gamer-profile-mini-activity-more{display:block;padding:8px 10px;border-top:1px solid rgba(255,255,255,.07);color:#d7dbe1;text-decoration:none;text-align:center;font-size:16px;letter-spacing:.35px}.gamer-profile-mini-activity-more:hover{color:#fff;background:rgba(255,255,255,.025)}
.gamer-profile-content{min-width:0}
.gamer-profile-hero{height:118px;position:relative;border:1px solid rgba(255,255,255,.16);border-radius:9px;background:rgba(11,15,24,.88);overflow:visible;margin-bottom:12px;box-shadow:0 18px 50px rgba(0,0,0,.25)}
.gamer-profile-hero-backdrop{position:absolute;inset:0;border-radius:9px;overflow:hidden;background:linear-gradient(90deg,rgba(3,7,13,.88),rgba(15,20,31,.55),rgba(5,8,14,.88)),url("/assets/shop-article-bg.png") center/cover no-repeat;opacity:.9}
.gamer-profile-hero-backdrop:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 120%,rgba(227,30,38,.17),transparent 38%)}
.gamer-profile-avatar-wrap{position:absolute;left:50%;top:28px;transform:translateX(-50%);z-index:3}
.gamer-profile-avatar{width:82px;height:82px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#171d28,#080b12);border:3px solid #e31e26;box-shadow:0 0 0 5px rgba(227,30,38,.16),0 0 28px rgba(227,30,38,.45),0 12px 28px rgba(0,0,0,.55)}
.gamer-profile-avatar img{width:100%;height:100%;object-fit:cover}.gamer-profile-avatar span{font:600 28px/1 "Barlow Condensed",sans-serif;color:#fff}
.gamer-profile-avatar-upload{position:absolute;right:-5px;bottom:1px;margin:0}.gamer-profile-avatar-upload input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.gamer-profile-avatar-upload label{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#e31e26;color:#fff;border:2px solid #0a0e16;font-size:16px;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.4)}
.gamer-profile-identity{position:absolute;left:16px;bottom:10px;z-index:2;display:grid;gap:1px}.gamer-profile-identity strong{color:#fff;font-size:20px;font-weight:500}.gamer-profile-identity span{color:#b7bdc8;font-size:16px;letter-spacing:.6px;text-transform:uppercase}
.gamer-xp-card,.gamer-dashboard-card,.gamer-settings-panel{border:1px solid rgba(255,255,255,.15);border-radius:9px;background:linear-gradient(180deg,rgba(16,21,32,.96),rgba(10,14,23,.96));box-shadow:0 18px 48px rgba(0,0,0,.25)}
.gamer-xp-card{padding:15px 17px 14px}
.gamer-xp-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.gamer-xp-head span{display:block;color:#d4d7de;font-size:14px}.gamer-xp-head h2{margin:1px 0 0;color:#fff;font-size:23px;font-weight:600;letter-spacing:.5px}.gamer-xp-head>strong{font-size:15px;color:#b7bdc8;font-weight:500;white-space:nowrap}
.gamer-xp-track{height:16px;border-radius:999px;margin:9px 0 12px;padding:2px;background:#030509;border:1px solid rgba(255,255,255,.13);overflow:hidden}.gamer-xp-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#a4141a,#e62a31);box-shadow:0 0 16px rgba(227,30,38,.36);position:relative}.gamer-xp-track span:after{content:"";position:absolute;inset:1px 2px 55%;border-radius:999px;background:rgba(255,255,255,.22)}
.gamer-xp-summary-grid{display:grid;grid-template-columns:1.45fr .8fr .8fr;border-top:1px solid rgba(255,255,255,.08);padding-top:10px}.gamer-xp-summary-grid>div{padding:0 12px;border-right:1px solid rgba(255,255,255,.1)}.gamer-xp-summary-grid>div:first-child{padding-left:0}.gamer-xp-summary-grid>div:last-child{border-right:0}.gamer-xp-summary-grid small{display:block;color:#9ba2ad;font-size:16px;text-transform:uppercase;letter-spacing:.5px}.gamer-xp-summary-grid strong{display:block;color:#fff;font-size:17px;margin-top:2px;font-weight:500}
.gamer-dashboard-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:12px;margin-top:12px}.gamer-dashboard-card{padding:14px}.gamer-card-title{min-height:31px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(255,255,255,.09);margin:-2px 0 10px;padding-bottom:8px}.gamer-card-title h3{margin:0;color:#fff;font-size:19px;font-weight:500}.gamer-card-title span{color:#e3a64b;font-size:16px;font-weight:600}
.gamer-activity-list{display:grid;gap:6px}.gamer-activity-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:8px 9px;border:1px solid rgba(255,255,255,.07);border-radius:6px;background:rgba(4,7,12,.32)}.gamer-activity-row div{min-width:0}.gamer-activity-row strong{display:block;color:#eceef2;font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gamer-activity-row small{display:block;color:#7e8794;font-size:16px;margin-top:2px}.gamer-activity-row b{color:#e7b95e;font-size:16px;white-space:nowrap}.gamer-empty-state{padding:28px 10px;color:#858c97;text-align:center}
.gamer-current-game{display:grid;grid-template-columns:112px minmax(0,1fr);gap:13px;align-items:stretch}.gamer-current-game-cover{height:122px;overflow:hidden;background:transparent}.gamer-current-game-cover img{width:100%;height:100%;object-fit:cover;display:block}.gamer-current-game>div:last-child{display:grid;grid-template-columns:auto 1fr;gap:5px 10px;align-content:center}.gamer-current-game span{color:#888f9a;font-size:16px;text-transform:uppercase}.gamer-current-game strong{color:#fff;font-size:14px;font-weight:500}.gamer-current-game strong.is-good,.gamer-account-stats strong.is-good{color:#43d77e}
.gamer-next-match{margin-top:10px;padding:9px 11px;border-radius:6px;border:1px solid rgba(227,30,38,.28);background:rgba(227,30,38,.07);display:grid;gap:2px}.gamer-next-match span{color:#e65b61;font-size:16px;font-weight:600;letter-spacing:.7px}.gamer-next-match strong{color:#fff;font-size:14px;font-weight:500}.gamer-next-match small{color:#a8aeb8}.gamer-next-match.is-muted{border-color:rgba(255,255,255,.09);background:rgba(255,255,255,.025)}
.gamer-badge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gamer-badge{min-height:105px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:9px 5px;border-radius:7px;border:1px solid rgba(255,255,255,.08);background:rgba(5,8,13,.34)}.gamer-badge-icon{width:41px;height:41px;border-radius:50%;display:grid;place-items:center;margin-bottom:6px;font-size:20px}.gamer-badge strong{color:#d8dbe0;font-size:16px;font-weight:500;line-height:1.05}.gamer-badge small{margin-top:4px;font-size:16px;letter-spacing:.6px}.gamer-badge.is-unlocked{border-color:rgba(214,166,72,.32);background:linear-gradient(180deg,rgba(183,128,37,.11),rgba(5,8,13,.35))}.gamer-badge.is-unlocked .gamer-badge-icon{color:#f1bd5d;background:rgba(189,133,43,.16);border:1px solid rgba(238,183,85,.48);box-shadow:0 0 16px rgba(210,152,54,.12)}.gamer-badge.is-unlocked small{color:#d9a449}.gamer-badge.is-locked{filter:saturate(.2);opacity:.57}.gamer-badge.is-locked .gamer-badge-icon{background:#151a22;color:#7a8089;border:1px solid rgba(255,255,255,.12)}.gamer-badge.is-locked small{color:#777e88}
.gamer-account-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px}.gamer-account-stats div{padding:9px 10px;border-radius:6px;background:rgba(5,8,13,.32);border:1px solid rgba(255,255,255,.07)}.gamer-account-stats span{display:block;color:#848b96;font-size:16px;text-transform:uppercase}.gamer-account-stats strong{display:block;color:#fff;margin-top:2px;font-size:16px;font-weight:500}.gamer-account-actions{display:flex;gap:7px;margin-top:9px}.gamer-account-actions a{flex:1;text-align:center;color:#fff;text-decoration:none;border:1px solid rgba(227,30,38,.4);background:rgba(227,30,38,.07);border-radius:5px;padding:8px 4px;font-size:16px;letter-spacing:.4px}.gamer-account-actions a:hover{background:#e31e26;border-color:#e31e26}

/* Player settings screen */
.gamer-settings-panel{padding:0 15px 16px}.gamer-settings-heading{padding:13px 0 9px;border-bottom:1px solid rgba(255,255,255,.1)}.gamer-settings-heading h2{margin:0;color:#fff;font-size:24px;font-weight:500}.gamer-settings-heading p{margin:2px 0 0;color:#9198a3;font-size:16px}.gamer-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:10px}.gamer-settings-column{padding:0 15px 0 0}.gamer-settings-column+.gamer-settings-column{padding:0 0 0 15px;border-left:1px solid rgba(255,255,255,.12)}.gamer-settings-column h3{margin:0 0 8px;color:#fff;font-size:19px;font-weight:500}.gamer-settings-form{display:grid;gap:7px}.gamer-settings-form label{display:grid;gap:3px;color:#d9dce1;font-size:16px}.gamer-settings-form input,.gamer-settings-form textarea{width:100%;border:1px solid rgba(227,30,38,.66);border-radius:6px;background:#090d14;color:#fff;padding:8px 10px;font:400 14px/1.25 "Barlow Condensed",sans-serif;outline:none;box-shadow:inset 0 0 12px rgba(0,0,0,.22)}.gamer-settings-form input{height:39px}.gamer-settings-form textarea{resize:vertical;min-height:78px}.gamer-settings-form input:focus,.gamer-settings-form textarea:focus{border-color:#f03a42;box-shadow:0 0 0 2px rgba(227,30,38,.11),0 0 14px rgba(227,30,38,.1)}.gamer-settings-form input:disabled{color:#8a909a;border-color:rgba(255,255,255,.16);background:#0a0d12}.gamer-settings-save{height:39px;border:1px solid #e31e26;border-radius:6px;background:linear-gradient(180deg,rgba(227,30,38,.19),rgba(119,11,15,.22));color:#fff;font:500 14px/1 "Barlow Condensed",sans-serif;cursor:pointer;box-shadow:0 0 13px rgba(227,30,38,.17)}.gamer-settings-save:hover{background:#e31e26}.gamer-settings-save-secondary{margin-top:7px}.gamer-settings-separator{height:1px;background:rgba(255,255,255,.11);margin:13px 0 11px}
.gamer-preferences-form{display:grid;gap:8px}.gamer-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer}.gamer-toggle-row>span{display:grid;gap:2px}.gamer-toggle-row strong{color:#e7e9ed;font-size:16px;font-weight:500}.gamer-toggle-row small{color:#858c97;font-size:16px;line-height:1.2}.gamer-toggle-row input{appearance:none;width:36px;height:20px;border-radius:999px;background:#252a32;border:1px solid rgba(255,255,255,.18);position:relative;flex:0 0 36px;cursor:pointer;transition:.18s}.gamer-toggle-row input:before{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#9ba1aa;transition:.18s}.gamer-toggle-row input:checked{background:#35c968;border-color:#4be07d}.gamer-toggle-row input:checked:before{left:18px;background:#fff}

@media (max-width:1050px){
  .gamer-profile-main{width:min(92vw,980px)}
  .gamer-profile-shell{grid-template-columns:190px minmax(0,1fr)}
  .gamer-dashboard-grid{grid-template-columns:1fr}
}
@media (max-width:760px){
  .gamer-profile-main{width:calc(100% - 24px);padding-top:24px!important}
  .gamer-profile-title h1{font-size:25px}
  .gamer-profile-shell{grid-template-columns:1fr}
  .gamer-profile-sidebar{display:grid;grid-template-columns:repeat(4,1fr);position:sticky;top:64px;z-index:8}
  .gamer-profile-nav-item{min-height:46px;padding:5px;justify-content:center;flex-direction:column;gap:3px;font-size:16px;text-align:center;border-bottom:0;border-right:1px solid rgba(255,255,255,.06)}
  .gamer-profile-nav-icon{font-size:15px}.gamer-profile-logout-form{display:none}
  .gamer-profile-left{gap:9px}.gamer-profile-mini-activity{display:none}
  .gamer-profile-hero{height:108px}.gamer-profile-avatar-wrap{top:21px}.gamer-profile-avatar{width:74px;height:74px}.gamer-profile-identity{left:11px;bottom:7px}.gamer-profile-identity strong{font-size:17px}.gamer-profile-identity span{font-size:16px}
  .gamer-xp-head{align-items:flex-start;flex-direction:column;gap:4px}.gamer-xp-head h2{font-size:20px}.gamer-xp-summary-grid{grid-template-columns:1fr 1fr 1fr}.gamer-xp-summary-grid strong{font-size:14px}.gamer-xp-summary-grid small{font-size:16px}
  .gamer-current-game{grid-template-columns:90px 1fr}.gamer-current-game-cover{height:105px}
  .gamer-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gamer-account-stats{grid-template-columns:1fr 1fr}
  .gamer-settings-grid{grid-template-columns:1fr;gap:20px}.gamer-settings-column{padding:0}.gamer-settings-column+.gamer-settings-column{padding:18px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.12)}
}
@media (max-width:420px){
  .gamer-profile-sidebar{grid-template-columns:repeat(4,1fr)}
  .gamer-xp-summary-grid{grid-template-columns:1fr}.gamer-xp-summary-grid>div{padding:6px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}.gamer-xp-summary-grid>div:last-child{border-bottom:0}
  .gamer-account-stats{grid-template-columns:1fr}.gamer-account-actions{flex-direction:column}
}
.gamer-xp-toast{position:fixed;right:24px;top:86px;z-index:45;min-width:170px;padding:10px 14px;border:1px solid rgba(226,166,72,.6);border-radius:8px;background:rgba(9,13,20,.96);box-shadow:0 12px 30px rgba(0,0,0,.45),0 0 20px rgba(211,154,57,.12);animation:gamerXpToast 5s ease both}.gamer-xp-toast strong{display:block;color:#f0bd62;font-size:18px}.gamer-xp-toast span{display:block;color:#b6bdc7;font-size:16px;margin-top:1px}@keyframes gamerXpToast{0%{opacity:0;transform:translateY(-8px)}8%,82%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-5px);pointer-events:none}}@media(max-width:760px){.gamer-xp-toast{top:72px;right:12px}}

/* XP rewards shop */
.gamer-profile-avatar.has-xp-neon-frame{border-color:#ff3a43;box-shadow:0 0 0 5px rgba(227,30,38,.2),0 0 22px rgba(255,35,45,.75),0 0 46px rgba(227,30,38,.34),0 12px 28px rgba(0,0,0,.55);animation:gamerRewardFramePulse 2.8s ease-in-out infinite}
@keyframes gamerRewardFramePulse{0%,100%{box-shadow:0 0 0 5px rgba(227,30,38,.16),0 0 20px rgba(255,35,45,.55),0 12px 28px rgba(0,0,0,.55)}50%{box-shadow:0 0 0 6px rgba(227,30,38,.22),0 0 34px rgba(255,35,45,.82),0 12px 28px rgba(0,0,0,.55)}}
.gamer-profile-identity em{width:max-content;margin-top:2px;padding:2px 7px;border:1px solid rgba(230,166,75,.42);border-radius:999px;background:rgba(230,166,75,.09);color:#f0bd62;font-size:16px;font-style:normal;font-weight:600;letter-spacing:.7px}
.gamer-reward-store{margin-top:12px;padding:14px 15px;border:1px solid rgba(230,166,75,.24);border-radius:9px;background:linear-gradient(180deg,rgba(17,22,33,.97),rgba(9,13,21,.97));box-shadow:0 18px 48px rgba(0,0,0,.24)}
.gamer-reward-store-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:11px;border-bottom:1px solid rgba(255,255,255,.09)}.gamer-reward-store-head>div:first-child>span{display:block;color:#d9a449;font-size:16px;text-transform:uppercase;letter-spacing:.8px}.gamer-reward-store-head h3{margin:1px 0 2px;color:#fff;font-size:20px;font-weight:600}.gamer-reward-store-head p{margin:0;max-width:580px;color:#838c98;font-size:16px;line-height:1.35}
.gamer-reward-balance{min-width:118px;padding:8px 10px;border:1px solid rgba(230,166,75,.25);border-radius:7px;background:rgba(230,166,75,.06);text-align:right}.gamer-reward-balance small{display:block;color:#8f97a2;font-size:16px;text-transform:uppercase}.gamer-reward-balance strong{display:inline;color:#f0bd62;font-size:23px;font-weight:600}.gamer-reward-balance span{margin-left:3px;color:#d2a75c;font-size:16px}
.gamer-reward-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:11px}.gamer-reward-card{min-width:0;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:rgba(5,8,13,.38);display:grid;grid-template-rows:auto 1fr auto;gap:7px}.gamer-reward-card.is-ready{border-color:rgba(227,30,38,.4);background:linear-gradient(180deg,rgba(227,30,38,.09),rgba(5,8,13,.4))}.gamer-reward-card.is-claimed{border-color:rgba(230,166,75,.32);background:linear-gradient(180deg,rgba(230,166,75,.08),rgba(5,8,13,.38))}.gamer-reward-card.is-locked{opacity:.68}
.gamer-reward-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(230,166,75,.33);background:rgba(230,166,75,.08);color:#efbd63;font-size:17px}.gamer-reward-copy strong{display:block;color:#f0f2f5;font-size:16px;font-weight:500}.gamer-reward-copy p{margin:3px 0 0;color:#7f8792;font-size:16px;line-height:1.28}.gamer-reward-card-foot{display:flex;align-items:center;justify-content:space-between;gap:6px;padding-top:7px;border-top:1px solid rgba(255,255,255,.06)}.gamer-reward-card-foot>span{color:#e7b95e;font-size:16px;font-weight:600;white-space:nowrap}.gamer-reward-card-foot form{margin:0}.gamer-reward-card-foot button{min-width:74px;height:27px;padding:0 8px;border:1px solid rgba(227,30,38,.5);border-radius:5px;background:rgba(227,30,38,.08);color:#fff;font:500 10px/1 "Barlow Condensed",sans-serif;cursor:pointer}.gamer-reward-card-foot button:hover:not(:disabled){background:#e31e26;border-color:#e31e26}.gamer-reward-card-foot button:disabled{cursor:default;border-color:rgba(255,255,255,.1);background:rgba(255,255,255,.025);color:#777f8a}.gamer-reward-card.is-claimed .gamer-reward-card-foot button:disabled{border-color:rgba(230,166,75,.28);color:#d9a449;background:rgba(230,166,75,.05)}
@media(max-width:1050px){.gamer-reward-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.gamer-reward-store-head{flex-direction:column}.gamer-reward-balance{width:100%;text-align:left}.gamer-reward-grid{grid-template-columns:1fr 1fr}.gamer-reward-card-foot{align-items:flex-start;flex-direction:column}.gamer-reward-card-foot form,.gamer-reward-card-foot button{width:100%}}
@media(max-width:380px){.gamer-reward-grid{grid-template-columns:1fr}}

/* v1.15.22 — page Récompenses XP */
.gamer-rewards-page{display:grid;gap:12px}
.gamer-rewards-page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 17px;border:1px solid rgba(230,166,75,.28);border-radius:9px;background:linear-gradient(135deg,rgba(22,27,40,.97),rgba(10,14,23,.97));box-shadow:0 18px 48px rgba(0,0,0,.24)}
.gamer-rewards-page-head>div:first-child>span{display:block;color:#d9a449;font-size:16px;text-transform:uppercase;letter-spacing:.85px}.gamer-rewards-page-head h2{margin:2px 0 3px;color:#fff;font-size:24px;font-weight:600}.gamer-rewards-page-head p{margin:0;max-width:610px;color:#8c949f;font-size:16px;line-height:1.4}
.gamer-rewards-wallet{min-width:142px;padding:10px 12px;border:1px solid rgba(230,166,75,.32);border-radius:8px;background:rgba(230,166,75,.07);text-align:right}.gamer-rewards-wallet small{display:block;color:#989fab;font-size:16px;text-transform:uppercase;letter-spacing:.5px}.gamer-rewards-wallet strong{display:inline-block;margin-top:2px;color:#f0bd62;font-size:30px;font-weight:600;line-height:1}.gamer-rewards-wallet span{margin-left:4px;color:#d2a75c;font-size:16px;font-weight:600}
.gamer-rewards-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid rgba(255,255,255,.12);border-radius:9px;background:rgba(9,13,21,.94);overflow:hidden}.gamer-rewards-stats>div{padding:11px 13px;border-right:1px solid rgba(255,255,255,.08)}.gamer-rewards-stats>div:last-child{border-right:0}.gamer-rewards-stats small{display:block;color:#858d98;font-size:16px;text-transform:uppercase;letter-spacing:.45px}.gamer-rewards-stats strong{display:block;margin-top:2px;color:#f2f3f5;font-size:18px;font-weight:500}
.gamer-reward-store-page{margin-top:0}
.gamer-reward-history{border:1px solid rgba(255,255,255,.13);border-radius:9px;background:linear-gradient(180deg,rgba(16,21,32,.96),rgba(9,13,21,.96));overflow:hidden;box-shadow:0 18px 48px rgba(0,0,0,.22)}
.gamer-reward-history-head{min-height:58px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(255,255,255,.08)}.gamer-reward-history-head span{display:block;color:#d9a449;font-size:16px;text-transform:uppercase;letter-spacing:.75px}.gamer-reward-history-head h3{margin:1px 0 0;color:#fff;font-size:18px;font-weight:600}.gamer-reward-history-head>strong{color:#8f97a2;font-size:16px;font-weight:500}
.gamer-reward-history-list{display:grid;max-height:520px;overflow:auto}.gamer-reward-history-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:57px;padding:8px 13px;border-bottom:1px solid rgba(255,255,255,.055)}.gamer-reward-history-row:last-child{border-bottom:0}.gamer-reward-history-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.035);font-size:16px}.gamer-reward-history-row>div{min-width:0}.gamer-reward-history-row>div strong{display:block;color:#e8eaed;font-size:16px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gamer-reward-history-row>div small{display:block;margin-top:2px;color:#777f8b;font-size:16px}.gamer-reward-history-row>b{font-size:16px;font-weight:600;white-space:nowrap}.gamer-reward-history-row.is-earned .gamer-reward-history-icon,.gamer-reward-history-row.is-earned>b{color:#e8b65a}.gamer-reward-history-row.is-spent .gamer-reward-history-icon,.gamer-reward-history-row.is-spent>b{color:#ff7379}.gamer-reward-history-row.is-spent{background:linear-gradient(90deg,rgba(227,30,38,.045),transparent 28%)}
@media(max-width:760px){.gamer-rewards-page-head{align-items:flex-start;flex-direction:column}.gamer-rewards-wallet{width:100%;text-align:left}.gamer-rewards-stats{grid-template-columns:1fr 1fr}.gamer-rewards-stats>div:nth-child(2){border-right:0}.gamer-rewards-stats>div:nth-child(-n/**/+2){border-bottom:1px solid rgba(255,255,255,.08)}.gamer-reward-history-list{max-height:none}}
@media(max-width:420px){.gamer-rewards-stats{grid-template-columns:1fr}.gamer-rewards-stats>div{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.08)}.gamer-rewards-stats>div:last-child{border-bottom:0}.gamer-reward-history-row{grid-template-columns:30px minmax(0,1fr) auto;padding-left:10px;padding-right:10px}}


/* Authentification Google */
.google-auth-btn{
  width:100%;
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.22);
  border-radius:8px;
  background:#fff;
  color:#171717;
  text-decoration:none;
  font-size:16px;
  font-weight:800;
  letter-spacing:.04em;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.google-auth-btn:hover{transform:translateY(-1px);border-color:rgba(227,30,38,.5);box-shadow:0 10px 28px rgba(0,0,0,.2)}
.google-auth-mark{width:25px;height:25px;display:block;flex:0 0 25px;object-fit:contain;background:transparent;border:0}

.auth-divider{display:flex;align-items:center;gap:12px;margin:15px 0;color:rgba(255,255,255,.48);font-size:16px;font-weight:800}
.auth-divider::before,.auth-divider::after{content:"";height:1px;flex:1;background:rgba(255,255,255,.14)}
.auth-divider span{padding:0 3px}
.google-auth-btn-registration{max-width:640px;margin:0 0 4px}
.auth-divider-registration{max-width:640px}
.google-connected-card{display:flex;align-items:center;gap:12px;margin:0 0 18px;padding:12px 14px;border:1px solid rgba(66,133,244,.35);border-radius:10px;background:rgba(66,133,244,.08);color:#fff}
.google-connected-card img{width:42px;height:42px;border-radius:50%;object-fit:cover}
.google-connected-card div{display:grid;gap:3px}.google-connected-card strong{font-size:16px}.google-connected-card span{font-size:16px;color:rgba(255,255,255,.72)}
.google-connected-card+form input[readonly]{opacity:.82;cursor:not-allowed}
.gamer-google-status{display:flex;align-items:center;gap:10px;padding:12px;margin-bottom:14px;border:1px solid rgba(66,133,244,.28);border-radius:10px;background:rgba(66,133,244,.07)}
.gamer-google-status div{display:grid;gap:2px}.gamer-google-status strong{color:#fff;font-size:16px}.gamer-google-status small{color:rgba(255,255,255,.6);font-size:16px}
.gamer-settings-hint{margin:0;padding:11px 12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:rgba(255,255,255,.68);background:rgba(255,255,255,.03);font-size:16px;line-height:1.5}

/* v1.15.25 — actions connexion compactes */
.player-auth-help-row{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.player-auth-help-row .player-signup-link{margin-left:auto;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
@media (max-width:520px){.player-auth-help-row{gap:12px}.player-auth-help-row .player-signup-link{margin-left:auto}}

/* v1.15.27 — Paiements B2B MVola / Orange Money */
.cart-b2b-reference{margin:0 20px 12px;padding:12px 13px;border:1px solid rgba(255,215,35,.28);border-radius:8px;background:rgba(255,215,35,.055);display:grid;gap:3px}.cart-b2b-reference[hidden]{display:none}.cart-b2b-reference>span{font-size:16px;font-weight:900;letter-spacing:.1em;color:#ffd723}.cart-b2b-reference>strong{font-size:17px;letter-spacing:.08em;color:#fff}.cart-b2b-reference>small{font-size:16px;color:#aeb4be}.cart-payment-option:not(.is-disabled){cursor:pointer}.cart-payment-option:not(.is-disabled):hover{border-color:rgba(227,30,38,.35)}
.admin-shop-b2b-card{display:grid;gap:18px}.admin-shop-b2b-settings{display:grid;gap:14px}.admin-shop-b2b-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-shop-b2b-method{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 12px;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:rgba(255,255,255,.025)}.admin-shop-b2b-method>span:nth-child(2){display:grid;gap:2px}.admin-shop-b2b-method strong{font-size:16px;color:#fff}.admin-shop-b2b-method small{font-size:16px;color:#8e96a2}.admin-shop-b2b-method input[type=checkbox]{width:19px;height:19px;accent-color:#e31e26}.admin-shop-b2b-config-grid{display:grid;gap:12px;align-items:start}.admin-shop-b2b-config-grid label,.admin-shop-b2b-provider-fields label{display:grid;gap:6px}.admin-shop-b2b-config-grid label>span,.admin-shop-b2b-provider-fields label>span{font-size:16px;font-weight:800;letter-spacing:.08em;color:#949ca8;text-transform:uppercase}.admin-shop-b2b-config-grid input,.admin-shop-b2b-config-grid select{width:100%;min-height:42px;border:1px solid rgba(255,255,255,.12);border-radius:7px;background:#0a0d14;color:#fff;padding:0 10px;outline:none}.admin-shop-b2b-config-grid input:focus,.admin-shop-b2b-config-grid select:focus{border-color:rgba(227,30,38,.62)}.admin-shop-b2b-provider-fields{display:grid;gap:10px}.admin-shop-b2b-provider-fields[hidden]{display:none}.admin-shop-b2b-provider-fields[data-b2b-provider-fields=messenger]{grid-template-columns:1fr}.admin-shop-b2b-save-row{display:flex;justify-content:space-between;align-items:center;gap:15px}.admin-shop-b2b-save-row small{max-width:760px;color:#858e9b;font-size:16px;line-height:1.45}.admin-shop-b2b-requests-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:4px;border-top:1px solid rgba(255,255,255,.07)}.admin-shop-b2b-requests-head>div{display:grid;gap:2px}.admin-shop-b2b-requests-head strong{font-size:16px;color:#fff}.admin-shop-b2b-requests-head small{font-size:16px;color:#858e9b}.admin-shop-b2b-requests{display:grid;gap:7px}.admin-shop-b2b-request{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 11px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(255,255,255,.018)}.admin-shop-b2b-request-main{display:grid;gap:2px;min-width:0}.admin-shop-b2b-request-main strong{font-size:16px;letter-spacing:.05em;color:#fff}.admin-shop-b2b-request-main span{font-size:16px;color:#d4d9e1}.admin-shop-b2b-request-main small{font-size:16px;color:#7f8794}.admin-shop-b2b-request-status{padding:5px 7px;border-radius:999px;font-size:16px;font-weight:900;letter-spacing:.08em;white-space:nowrap;background:rgba(255,255,255,.07);color:#aeb4be}.admin-shop-b2b-request-status.status-discussion{background:rgba(255,215,35,.09);color:#ffe36a}.admin-shop-b2b-request-status.status-agreed{background:rgba(75,149,255,.1);color:#8bb8ff}.admin-shop-b2b-request-status.status-paid{background:rgba(57,201,120,.1);color:#7ce3a7}.admin-shop-b2b-request-status.status-cancelled{background:rgba(227,30,38,.1);color:#f28c91}.admin-shop-b2b-request-actions{display:flex;gap:5px}.admin-shop-b2b-request-actions button{min-height:30px;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:#121722;color:#d7dce4;padding:0 8px;font:inherit;font-size:16px;font-weight:900;letter-spacing:.05em;cursor:pointer}.admin-shop-b2b-request-actions button:hover{border-color:rgba(227,30,38,.5);color:#fff}.admin-shop-b2b-empty{margin:0;padding:15px;text-align:center;color:#777f8b;font-size:16px;border:1px dashed rgba(255,255,255,.09);border-radius:8px}
.admin-shop-b2b-config-grid{grid-template-columns:1fr}.admin-shop-b2b-provider-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-shop-b2b-provider-fields label small{color:#858e9b;font-size:14px;line-height:1.35;text-transform:none;letter-spacing:normal}
@media(max-width:760px){.admin-shop-b2b-methods,.admin-shop-b2b-config-grid,.admin-shop-b2b-provider-fields{grid-template-columns:1fr}.admin-shop-b2b-save-row,.admin-shop-b2b-requests-head{align-items:stretch;flex-direction:column}.admin-shop-b2b-request{grid-template-columns:1fr}.admin-shop-b2b-request-actions{flex-wrap:wrap}}
.cart-b2b-messenger-bubble{position:fixed;right:22px;bottom:22px;z-index:80;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#168aff;color:#fff;text-decoration:none;box-shadow:0 12px 34px rgba(0,0,0,.4);font-size:25px;transition:transform .15s ease,filter .15s ease}.cart-b2b-messenger-bubble:hover{transform:translateY(-2px);filter:brightness(1.08)}@media(max-width:650px){.cart-b2b-messenger-bubble{right:15px;bottom:15px;width:54px;height:54px}}

/* v1.15.29 — téléphone demandé uniquement au paiement */
.cart-payment-contact{display:grid;gap:6px;margin:18px 20px 0;padding:12px 13px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(8,11,18,.48)}
.cart-payment-contact label{color:#fff;font-size:16px;font-weight:800;letter-spacing:.08em}
.cart-payment-contact input{width:100%;height:40px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:rgba(255,255,255,.045);color:#fff;padding:0 12px;outline:none}
.cart-payment-contact input:focus{border-color:rgba(227,30,38,.68)}
.cart-payment-contact input.has-field-error{border-color:#e31e26;box-shadow:0 0 0 2px rgba(227,30,38,.12)}
.cart-payment-contact small{color:#8d949f;font-size:16px}

/* Ancien style B2B conservé pour compatibilité visuelle */
.cart-b2b-payment-instructions{margin-top:10px;padding:12px 13px;border:1px solid rgba(57,201,120,.38);border-radius:8px;background:rgba(57,201,120,.08);display:grid;gap:4px}.cart-b2b-payment-instructions[hidden]{display:none}.cart-b2b-payment-instructions>span{font-size:16px;font-weight:900;letter-spacing:.09em;color:#7ce3a7}.cart-b2b-payment-instructions>strong{font-size:22px;letter-spacing:.06em;color:#fff}.cart-b2b-payment-instructions>small{font-size:16px;color:#d9dee6}.cart-b2b-payment-instructions>em{font-style:normal;font-size:16px;color:#8e97a4}.admin-shop-b2b-payment-numbers{grid-column:1/-1}.admin-shop-b2b-payment-numbers input{width:100%;min-height:42px;border:1px solid rgba(255,255,255,.12);border-radius:7px;background:#0a0d14;color:#fff;padding:0 10px;outline:none}.admin-shop-b2b-payment-numbers input:focus{border-color:rgba(227,30,38,.62)}.admin-shop-b2b-payment-numbers label>small{color:#858e9b;font-size:14px;line-height:1.4}

/* Aide B2B */
.admin-shop-b2b-trigger-help{margin-top:14px;padding:14px 16px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(0,0,0,.2);display:grid;gap:8px}
.admin-shop-b2b-trigger-help>strong{font-size:16px;letter-spacing:.08em}
.admin-shop-b2b-trigger-help p,.admin-shop-b2b-trigger-help small{margin:0;line-height:1.45;opacity:.86}
.admin-shop-b2b-trigger-help code{display:block;padding:12px;border-radius:9px;background:rgba(255,255,255,.06);white-space:normal;font:inherit;font-weight:700}

/* v1.15.38 — Bulle B2B native MHTM */
.b2b-chat-root { position: fixed; right: 20px; bottom: 20px; z-index: 10050; font-family: inherit; }
.b2b-chat-launcher { position: relative; width: 62px; height: 62px; border: 0; border-radius: 50%; background: #e3182d; color: #fff; box-shadow: 0 14px 38px rgba(0,0,0,.34); cursor: pointer; display: grid; place-items: center; font-weight: 900; letter-spacing: .04em; }
.b2b-chat-launcher-icon { width: 30px; height: 30px; display: block; object-fit: contain; }
.b2b-chat-unread { position: absolute; right: -2px; top: -5px; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 999px; background: #fff; color: #111; border: 2px solid #e3182d; font-size:16px; font-weight: 900; line-height: 18px; }
.b2b-chat-panel[hidden] { display: none !important; }
.b2b-chat-panel { position: absolute; right: 0; bottom: 76px; width: min(390px, calc(100vw - 24px)); height: min(620px, calc(100vh - 120px)); min-height: 430px; border: 1px solid rgba(255,255,255,.14); border-radius: 18px; overflow: hidden; background: #101116; color: #fff; box-shadow: 0 24px 70px rgba(0,0,0,.48); display: grid; grid-template-rows: auto auto 1fr auto; }
.b2b-chat-header { padding: 14px 16px; background: linear-gradient(135deg, #e3182d, #8e0f1d); display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.b2b-chat-header div { display: flex; flex-direction: column; min-width: 0; }
.b2b-chat-header strong { font-size: 20px; letter-spacing: .08em; }
.b2b-chat-header span { font-size:16px; opacity: .9; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.b2b-chat-header button { width: 34px; height: 34px; border: 0; border-radius: 50%; color: #fff; background: rgba(0,0,0,.18); font-size: 24px; cursor: pointer; }
.b2b-chat-status { padding: 8px 14px; background: #181a20; border-bottom: 1px solid rgba(255,255,255,.08); font-size:16px; font-weight: 900; letter-spacing: .08em; color: #c9cbd2; }
.b2b-chat-status.status-agreed { color: #ffd46a; }
.b2b-chat-status.status-paid { color: #69e5a4; }
.b2b-chat-status.status-cancelled { color: #ff7b86; }
.b2b-chat-messages { padding: 14px; overflow-y: auto; display: flex; flex-direction: column; gap: 10px; background: radial-gradient(circle at top right, rgba(227,24,45,.08), transparent 34%), #111217; }
.b2b-chat-message { max-width: 88%; padding: 10px 12px; border-radius: 14px; background: #202229; border: 1px solid rgba(255,255,255,.07); align-self: flex-start; }
.b2b-chat-message.sender-visitor { align-self: flex-end; background: #e3182d; border-color: transparent; }
.b2b-chat-message.sender-system { background: #17191f; border-left: 3px solid #e3182d; }
.b2b-chat-message.kind-cart_summary { max-width: 96%; }
.b2b-chat-message.kind-payment_instructions { max-width: 96%; border-left: 3px solid #ffd46a; }
.b2b-chat-message.kind-gift_code { max-width: 96%; border-left: 3px solid #34c77b; }
.b2b-gift-copy { display:block; margin-top:12px; padding:9px 14px; border:1px solid rgba(255,255,255,.3); border-radius:9px; color:#fff; background:#D62828; font-size:14px; font-weight:700; cursor:pointer; }
.b2b-gift-copy:focus-visible { outline:2px solid #fff; outline-offset:2px; }
.b2b-chat-message-meta { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 5px; font-size:16px; opacity: .72; }
.b2b-chat-message p { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; font-size:16px; line-height: 1.48; }
.b2b-chat-empty { padding: 28px 20px; align-self: center; text-align: center; color: #d7d9df; }
.b2b-chat-empty strong { display: block; margin-bottom: 8px; font-size: 16px; }
.b2b-chat-empty p { margin: 0 0 18px; font-size:16px; line-height: 1.5; color: #aeb1b9; }
.b2b-chat-empty a { display: inline-flex; padding: 11px 16px; border-radius: 10px; background: #e3182d; color: #fff; text-decoration: none; font-size:16px; font-weight: 900; }
.b2b-chat-compose { padding: 10px; display: grid; gap: 8px; background: #17181d; border-top: 1px solid rgba(255,255,255,.08); }
.b2b-chat-compose textarea { resize: none; min-height: 42px; max-height: 120px; padding: 11px 12px; border-radius: 11px; border: 1px solid rgba(255,255,255,.13); background: #0f1014; color: #fff; outline: none; font: inherit; font-size:16px; }
.b2b-chat-compose textarea:focus { border-color: rgba(227,24,45,.7); }
.b2b-chat-compose button { border: 0; border-radius: 10px; padding: 0 13px; background: #e3182d; color: #fff; font-weight: 900; font-size:16px; cursor: pointer; }
@media (max-width: 640px) {
  .b2b-chat-root { right: 12px; bottom: 12px; }
  .b2b-chat-panel { position: fixed; inset: 8px; width: auto; height: auto; min-height: 0; border-radius: 16px; }
  .b2b-chat-launcher { width: 58px; height: 58px; }
}

/* v1.15.38 — Panel admin B2B */
.admin-b2b-title { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; }
.admin-b2b-title p { margin: 5px 0 0; opacity: .72; }
.admin-b2b-layout { display: grid; grid-template-columns: 330px minmax(0,1fr); gap: 14px; min-height: 680px; }
.admin-b2b-sidebar { overflow: hidden; display: flex; flex-direction: column; min-height: 680px; }
.admin-b2b-sidebar-head { display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.08); }
.admin-b2b-sidebar-head div { display: flex; align-items: center; gap: 8px; }
.admin-b2b-sidebar-head span { min-width: 24px; height: 24px; border-radius: 999px; display: grid; place-items: center; background: #e3182d; color: #fff; font-size:16px; font-weight: 900; }
.admin-b2b-sidebar-head button { border: 0; border-radius: 9px; cursor: pointer; background: rgba(255,255,255,.08); color: #fff; font-size: 18px; }
.admin-b2b-filter-row { display: grid; grid-template-columns: 1fr 105px; gap: 7px; border-bottom: 1px solid rgba(255,255,255,.08); }
.admin-b2b-filter-row input, .admin-b2b-filter-row select { min-width: 0; border: 1px solid rgba(255,255,255,.12); background: rgba(0,0,0,.28); color: #fff; border-radius: 9px; padding: 9px; font-size:16px; }
.admin-b2b-conversation-list { overflow-y: auto; flex: 1; }
.admin-b2b-conversation-item { width: 100%; border: 0; border-bottom: 1px solid rgba(255,255,255,.07); background: transparent; color: #fff; text-align: left; cursor: pointer; display: flex; flex-direction: column; }
.admin-b2b-conversation-item:hover, .admin-b2b-conversation-item.is-active { background: rgba(227,24,45,.13); }
.admin-b2b-conversation-item.is-active { box-shadow: inset 3px 0 #e3182d; }
.admin-b2b-conversation-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.admin-b2b-conversation-item>span { font-size:16px; color: #d0d2d8; }
.admin-b2b-conversation-item>small { font-size:16px; color: #9ea1aa; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.admin-b2b-conversation-item>em { font-style: normal; font-size:16px; color: #777b84; }
.admin-b2b-mini-status { padding: 4px 6px; border-radius: 999px; font-size:16px; font-weight: 900; letter-spacing: .04em; background: rgba(255,255,255,.08); }
.admin-b2b-mini-status.status-agreed, .admin-b2b-current-status.status-agreed { color: #ffd46a; }
.admin-b2b-mini-status.status-paid, .admin-b2b-current-status.status-paid { color: #69e5a4; }
.admin-b2b-mini-status.status-cancelled, .admin-b2b-current-status.status-cancelled { color: #ff7b86; }
.admin-b2b-chat-shell { display: grid; grid-template-rows: auto auto minmax(0,1fr) auto; min-height: 680px; overflow: hidden; }
.admin-b2b-chat-head { display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.08); }
.admin-b2b-chat-customer { min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.admin-b2b-chat-customer strong { font-size: 17px; }
.admin-b2b-chat-customer span { font-size:16px; color: #c8cad1; }
.admin-b2b-chat-customer small { font-size:16px; color: #777b84; }
.admin-b2b-status-actions { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.admin-b2b-current-status { font-weight: 900; border-radius: 8px; background: rgba(255,255,255,.07); }
.admin-b2b-status-actions button { border: 0; color: #fff; font-weight: 900; cursor: pointer; }
.admin-b2b-status-actions button:disabled { opacity: .35; cursor: not-allowed; }
.admin-b2b-status-actions .is-confirm { background: #b88717; }
.admin-b2b-status-actions .is-paid { background: #16854d; }
.admin-b2b-status-actions .is-cancel { background: #872331; }
.admin-b2b-status-actions .is-delete-local { border:1px solid rgba(255,91,99,.72); background:transparent; color:#ff8e93; }
.admin-b2b-status-actions .is-delete-local:hover { background:rgba(227,30,38,.16); color:#fff; }
.admin-b2b-order-summary { border-bottom: 1px solid rgba(255,255,255,.08); background: rgba(255,255,255,.025); }
.admin-b2b-order-summary>div:first-child { display: flex; justify-content: space-between; gap: 15px; margin-bottom: 6px; }
.admin-b2b-order-lines { display: flex; flex-wrap: wrap; gap: 5px 10px; }
.admin-b2b-order-lines span { font-size:16px; color: #aeb1ba; }
.admin-b2b-order-lines em { font-style: normal; color: #fff; margin-left: 4px; }
.admin-b2b-messages { overflow-y: auto; display: flex; flex-direction: column; background: rgba(0,0,0,.12); }
.admin-b2b-message { max-width: 78%; align-self: flex-start; background: #202229; border: 1px solid rgba(255,255,255,.07); }
.admin-b2b-message.sender-agent { align-self: flex-end; background: #8f1422; border-color: transparent; }
.admin-b2b-message.sender-system { border-left: 3px solid #e3182d; background: #17191f; }
.admin-b2b-message.kind-cart_summary, .admin-b2b-message.kind-payment_instructions { max-width: 92%; }
.admin-b2b-message.kind-payment_instructions { border-left: 3px solid #ffd46a; }
.admin-b2b-message>div { display: flex; justify-content: space-between; gap: 12px; font-size:16px; opacity: .7; }
.admin-b2b-message p { margin: 0; font-size:16px; line-height: 1.5; overflow-wrap: anywhere; }
.admin-b2b-compose { display: grid; border-top: 1px solid rgba(255,255,255,.08); }
.admin-b2b-compose textarea { border: 1px solid rgba(255,255,255,.12); background: rgba(0,0,0,.28); color: #fff; font: inherit; font-size:16px; }
.admin-b2b-compose button { border: 0; border-radius: 9px; padding: 0 16px; background: #e3182d; color: #fff; font-size:16px; font-weight: 900; cursor: pointer; }
.admin-b2b-chat-empty-state { min-height: 680px; display: grid; place-items: center; align-content: center; text-align: center; padding: 30px; }
.admin-b2b-chat-empty-state p, .admin-b2b-no-conversation { color: #9da0a9; font-size:16px; }
.admin-b2b-no-conversation { padding: 24px 14px; text-align: center; }
@media (max-width: 900px) {
  .admin-b2b-layout { grid-template-columns: 1fr; min-height: 0; }
  .admin-b2b-sidebar { min-height: 320px; max-height: 420px; }
  .admin-b2b-chat-shell { min-height: 650px; }
  .admin-b2b-chat-head { align-items: flex-start; flex-direction: column; }
  .admin-b2b-status-actions { justify-content: flex-start; }
}

/* v1.15.41 — Informations client / livraison du checkout */
.cart-checkout-customer{margin:18px 20px 0;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(8,11,18,.48)}
.cart-checkout-customer .cart-customer-title{padding:0 0 12px}
.cart-customer-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.cart-customer-field{display:grid;gap:6px;min-width:0}
.cart-customer-field-wide{grid-column:1/-1}
.cart-customer-field>span{color:#fff;font-size:16px;font-weight:800;letter-spacing:.08em}
.cart-customer-field input,.cart-customer-field textarea{width:100%;border:1px solid rgba(255,255,255,.16);border-radius:7px;background:rgba(255,255,255,.045);color:#fff;padding:0 12px;outline:none;font:inherit;font-size:16px;transition:border-color .16s ease,box-shadow .16s ease}
.cart-customer-field input{height:42px}
.cart-customer-field textarea{min-height:76px;padding-top:10px;padding-bottom:10px;resize:vertical;line-height:1.45}
.cart-customer-field input:focus,.cart-customer-field textarea:focus{border-color:rgba(227,30,38,.68)}
.cart-customer-field input.has-field-error,.cart-customer-field textarea.has-field-error{border-color:#e31e26;box-shadow:0 0 0 2px rgba(227,30,38,.12)}
.cart-customer-privacy{display:block;margin-top:9px;color:#7f8793;font-size:16px;line-height:1.4}
@media (max-width:640px){.cart-customer-fields{grid-template-columns:1fr}.cart-customer-field-wide{grid-column:auto}.cart-checkout-customer{margin-left:14px;margin-right:14px}.cart-payment-grid{padding-left:14px;padding-right:14px}.cart-checkout-note{margin-left:14px;margin-right:14px}.cart-checkout-btn{width:calc(100% - 28px);margin-left:14px;margin-right:14px}}
.admin-b2b-customer-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(0,0,0,.16)}
.admin-b2b-customer-card span{display:grid;gap:2px;min-width:0;color:#d6d8df;font-size:16px;word-break:break-word}
.admin-b2b-customer-card b{color:#7f8793;font-size:16px;text-transform:uppercase;letter-spacing:.08em}
.admin-b2b-customer-card .is-address{grid-column:1/-1}
@media (max-width:780px){.admin-b2b-customer-card{grid-template-columns:1fr}.admin-b2b-customer-card .is-address{grid-column:auto}}


/* =========================================================
   v1.15.43 — Normalisation typographique finale
   Échelle utilisateur conservée : Normal 19px / Secondaire 16px / Micro 13px.
   Objectif : aucun texte utile sous 13px et aucun titre standard démesuré.
   ========================================================= */
:root{
  --mhtm-text-normal:19px;
  --mhtm-text-secondary:16px;
  --mhtm-text-micro: 16px;
  --mhtm-title-display:clamp(44px,5vw,60px);
  --mhtm-title-page:clamp(32px,4vw,44px);
  --mhtm-title-section:clamp(22px,2.5vw,28px);
}

/* Titres principaux : conserve le caractère gaming, mais évite les 70–100px. */
.home-page .hero h1,
.home-mode-shop .home-shop-landing h1,
.shop-hero h1{
  font-size:var(--mhtm-title-display)!important;
  line-height:.95!important;
}

.page-title h1,
.admin-title h1,
.cart-title-row h1,
.shop-detail-content h1,
.login-title h1,
.form-title h1{
  font-size:var(--mhtm-title-page)!important;
  line-height:1!important;
}

.section-head h2,
.dynamic-section h2,
.game-card h2,
.player-card h2,
.admin-table-head h2,
.admin-game-top h2,
.quick-actions-card h2{
  font-size:var(--mhtm-title-section)!important;
  line-height:1.1!important;
}

/* Typographie du paiement */
.cart-customer-field>span,
.cart-customer-privacy{
  font-size:var(--mhtm-text-micro)!important;
  line-height:1.4!important;
}
.cart-customer-field input,
.cart-customer-field textarea{
  font-size:var(--mhtm-text-normal)!important;
  line-height:1.45!important;
}

/* Bulle B2B : contenu lisible, métadonnées compactes mais jamais minuscules. */
.b2b-chat-header strong,
.b2b-chat-empty strong{
  font-size:var(--mhtm-text-secondary)!important;
}
.b2b-chat-header span,
.b2b-chat-status,
.b2b-chat-message-meta,
.b2b-chat-unread,
.b2b-chat-empty a,
.b2b-chat-compose button{
  font-size:var(--mhtm-text-micro)!important;
}
.b2b-chat-message p,
.b2b-chat-empty p,
.b2b-chat-compose textarea{
  font-size:var(--mhtm-text-secondary)!important;
  line-height:1.5!important;
}

/* Panel B2B : même logique que le chat client. */
.admin-b2b-title p,
.admin-b2b-chat-customer strong,
.admin-b2b-message p,
.admin-b2b-compose textarea{
  font-size:var(--mhtm-text-secondary)!important;
  line-height:1.5!important;
}
.admin-b2b-sidebar-head span,
.admin-b2b-filter-row input,
.admin-b2b-filter-row select,
.admin-b2b-conversation-item>span,
.admin-b2b-conversation-item>small,
.admin-b2b-conversation-item>em,
.admin-b2b-mini-status,
.admin-b2b-chat-customer span,
.admin-b2b-chat-customer small,
.admin-b2b-current-status,
.admin-b2b-status-actions button,
.admin-b2b-order-lines span,
.admin-b2b-message>div,
.admin-b2b-compose button,
.admin-b2b-chat-empty-state p,
.admin-b2b-no-conversation,
.admin-b2b-customer-card span,
.admin-b2b-customer-card b{
  font-size:var(--mhtm-text-micro)!important;
  line-height:1.4!important;
}

/* Éléments Shop/Admin apparus après l’échelle v1.15. */
.admin-shop-edit-grid label>span,
.admin-shop-edit-preview-wrap>span,
.admin-shop-edit-grid small,
.admin-shop-metadata-badge,
.admin-shop-structured-source{
  font-size:var(--mhtm-text-micro)!important;
  line-height:1.4!important;
}
.admin-shop-edit-grid input[type="text"],
.admin-shop-edit-grid input[type="file"],
.admin-shop-edit-grid textarea,
.admin-shop-edit-grid select{
  font-size:var(--mhtm-text-secondary)!important;
}

@media(max-width:700px){
  :root{
    --mhtm-text-normal:18px;
    --mhtm-text-secondary:15px;
    --mhtm-text-micro: 16px;
    --mhtm-title-display:clamp(40px,11vw,50px);
    --mhtm-title-page:clamp(30px,8.5vw,38px);
    --mhtm-title-section:clamp(21px,6vw,26px);
  }
}

/* v1.15.47 — Modale de confirmation MHTM (remplace les dialogues natifs du navigateur) */
.mhtm-site-dialog[hidden] { display: none !important; }
.mhtm-site-dialog {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: grid;
  place-items: center;
  padding: 24px;
}
.mhtm-site-dialog-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(4, 5, 10, 0.78);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
}
.mhtm-site-dialog-card {
  position: relative;
  z-index: 1;
  width: min(520px, 100%);
  border: 1px solid rgba(255,255,255,0.13);
  border-radius: 22px;
  background: linear-gradient(160deg, rgba(22,24,34,0.98), rgba(9,10,16,0.98));
  box-shadow: 0 30px 90px rgba(0,0,0,0.55);
  padding: 30px;
  color: #fff;
  font-family: "Barlow Condensed", sans-serif;
}
.mhtm-site-dialog-close {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  background: rgba(255,255,255,0.07);
  color: rgba(255,255,255,0.78);
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}
.mhtm-site-dialog-icon {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 16px;
  margin-bottom: 20px;
  background: rgba(227,30,38,0.14);
  border: 1px solid rgba(227,30,38,0.42);
  color: #ff4b52;
  font: 800 30px/1 "Barlow Condensed", sans-serif;
}
.mhtm-site-dialog-kicker {
  display: block;
  color: #ff4b52;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: 0.12em;
  margin-bottom: 5px;
}
.mhtm-site-dialog-copy h2 {
  margin: 0;
  color: #fff;
  font: 700 30px/1.05 "Teko", "Barlow Condensed", sans-serif;
  letter-spacing: 0.035em;
}
.mhtm-site-dialog-copy p {
  margin: 12px 0 0;
  color: rgba(255,255,255,0.78);
  font-size: 19px;
  line-height: 1.4;
}
.mhtm-site-dialog-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 28px;
}
.mhtm-site-dialog-btn {
  min-height: 50px;
  border-radius: 13px;
  border: 1px solid rgba(255,255,255,0.12);
  font: 800 18px/1 "Barlow Condensed", sans-serif;
  letter-spacing: 0.06em;
  cursor: pointer;
}
.mhtm-site-dialog-btn.is-cancel {
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.82);
}
.mhtm-site-dialog-btn.is-confirm {
  border-color: #E31E26;
  background: #E31E26;
  color: #fff;
  box-shadow: 0 10px 28px rgba(227,30,38,0.24);
}
.mhtm-site-dialog.is-success .mhtm-site-dialog-icon {
  background: rgba(43,182,115,0.14);
  border-color: rgba(43,182,115,0.4);
  color: #55d89b;
}
.mhtm-site-dialog.is-success .mhtm-site-dialog-kicker { color: #55d89b; }
.mhtm-site-dialog.is-success .mhtm-site-dialog-btn.is-confirm {
  background: #20865c;
  border-color: #20865c;
  box-shadow: 0 10px 28px rgba(32,134,92,0.24);
}
html.mhtm-dialog-open,
html.mhtm-dialog-open body { overflow: hidden !important; }
@media (max-width: 640px) {
  .mhtm-site-dialog { padding: 14px; align-items: end; }
  .mhtm-site-dialog-card { border-radius: 20px 20px 14px 14px; padding: 26px 20px 20px; }
  .mhtm-site-dialog-copy h2 { font-size: 28px; }
  .mhtm-site-dialog-copy p { font-size: 18px; }
  .mhtm-site-dialog-actions { grid-template-columns: 1fr; }
  .mhtm-site-dialog-btn.is-confirm { order: -1; }
}

/* Discussion B2B et pièces jointes */
.b2b-chat-compose{grid-template-columns:auto minmax(0,1fr) auto}
.b2b-chat-compose .b2b-chat-attach{width:42px;padding:0;font-size:24px;line-height:1;background:#292b33}
.b2b-chat-attachment-image,.admin-b2b-attachment-image{display:block;margin-top:8px;border-radius:10px;overflow:hidden;max-width:290px}
.b2b-chat-attachment-image img,.admin-b2b-attachment-image img{display:block;width:100%;max-height:320px;object-fit:contain;background:#0b0c10}
.b2b-chat-attachment-file,.admin-b2b-attachment-file{display:inline-flex;margin-top:8px;padding:9px 11px;border-radius:8px;background:rgba(255,255,255,.1);color:#fff;text-decoration:none;font-weight:800}
.b2b-chat-recover-toggle{display:block;margin:12px auto 0;border:0;background:transparent;color:#cfd1d7;text-decoration:underline;cursor:pointer;font:inherit;font-size:16px}
.b2b-chat-recover{margin-top:12px;display:grid;gap:8px}
.b2b-chat-recover[hidden]{display:none!important}
.b2b-chat-recover input{height:42px}
.b2b-chat-recover button{height:42px;border:0;background:#e3182d;color:#fff;font-weight:900;cursor:pointer}
.admin-b2b-compose .admin-b2b-attach-btn{background:#292b33}
.admin-b2b-shopify-order{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px;padding-top:9px;border-top:1px solid rgba(255,255,255,.08)}
.admin-b2b-shopify-order b{color:#8f949e;font-size:16px}
.admin-b2b-shopify-order strong{color:#69e5a4;font-size:16px}

/* v1.15.48 — commandes B2B dans le profil */
.gamer-b2b-orders-card{margin-top:24px;padding:22px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(15,15,18,.86)}
.gamer-b2b-orders-list{display:grid;gap:10px;margin-top:14px}
.gamer-b2b-order-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;width:100%;padding:14px 16px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(255,255,255,.035);color:#fff;text-align:left;cursor:pointer}
.gamer-b2b-order-row span{display:grid;gap:3px;min-width:0}.gamer-b2b-order-row strong{font-size:16px}.gamer-b2b-order-row small{font-size:16px;color:rgba(255,255,255,.64)}.gamer-b2b-order-row b{font-size:16px;white-space:nowrap}.gamer-b2b-order-row em{font-size:16px;font-style:normal;font-weight:900;white-space:nowrap}.gamer-b2b-order-row em.status-paid{color:#64d892}.gamer-b2b-order-row em.status-agreed{color:#f3bb64}.gamer-b2b-order-row em.status-cancelled{color:#ff7378}
@media(max-width:700px){.gamer-b2b-order-row{grid-template-columns:1fr auto}.gamer-b2b-order-row em{grid-column:1/-1}}

/* v1.15.48 — livraison B2B */
.admin-b2b-delivery-editor{display:grid;align-items:end;border-bottom:1px solid rgba(255,255,255,.08)}
.admin-b2b-delivery-editor label{display:grid;gap:6px}.admin-b2b-delivery-editor label span{font-size:16px;font-weight:800}.admin-b2b-delivery-editor input{border:1px solid rgba(255,255,255,.16);border-radius:9px;background:rgba(0,0,0,.28);color:#fff;font-size:16px}.admin-b2b-delivery-editor button{border:0;border-radius:9px;background:#E31E26;color:#fff;font-weight:900}.admin-b2b-delivery-editor small{grid-column:1/-1;font-size:16px;color:rgba(255,255,255,.68)}
.admin-b2b-discount-editor{display:grid;gap:8px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}.admin-b2b-discount-editor>strong{font-size:16px;letter-spacing:.08em;color:#ff9ca0}.admin-b2b-discount-fields{display:grid;grid-template-columns:minmax(125px,.7fr) minmax(120px,.7fr) minmax(220px,1.6fr) auto auto;gap:8px;align-items:end}.admin-b2b-discount-fields label{display:grid;gap:5px}.admin-b2b-discount-fields label span{font-size:16px;font-weight:800}.admin-b2b-discount-fields input,.admin-b2b-discount-fields select{width:100%;min-height:38px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:rgba(0,0,0,.28);color:#fff;padding:0 10px;font-size:16px}.admin-b2b-discount-fields button{min-height:38px;border:0;border-radius:8px;background:#E31E26;color:#fff;font-weight:900;padding:0 12px}.admin-b2b-discount-fields button.is-remove{border:1px solid rgba(255,255,255,.18);background:transparent;color:#c9cdd5}.admin-b2b-discount-fields button:disabled{opacity:.5;cursor:not-allowed}.admin-b2b-discount-editor>small{font-size:16px;color:rgba(255,255,255,.72)}.admin-b2b-discount-editor>small b{color:#fff}
@media(max-width:700px){.admin-b2b-delivery-editor{grid-template-columns:1fr}.admin-b2b-delivery-editor small{grid-column:auto}}
@media(max-width:1050px){.admin-b2b-discount-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-b2b-discount-fields .is-reason{grid-column:1/-1}.admin-b2b-discount-fields button{width:100%}}
@media(max-width:700px){.admin-b2b-discount-fields{grid-template-columns:1fr}.admin-b2b-discount-fields .is-reason{grid-column:auto}}

/* v1.15.50 — Panel B2B humain, compact, réponses rapides et aide */
.admin-b2b-title-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.admin-b2b-tool-btn{min-height:32px!important;padding:6px 10px!important;font-size:16px!important;line-height:1!important}
.admin-b2b-agent-chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:5px 10px;border:1px solid rgba(105,229,164,.28);border-radius:999px;background:rgba(105,229,164,.09);color:#fff;font-size:16px}
.admin-b2b-agent-chip[hidden]{display:none!important}.admin-b2b-agent-chip>span{color:#69e5a4;font-size:12px}.admin-b2b-agent-chip strong{font-size:16px}

.admin-b2b-chat-head{padding:10px 12px!important;gap:9px!important}
.admin-b2b-status-actions{gap:5px!important}
.admin-b2b-status-actions button{min-height:31px!important;padding:5px 9px!important;border-radius:7px!important;font-size:16px!important;line-height:1!important}
.admin-b2b-current-status{padding:5px 8px!important;font-size:16px!important}
.admin-b2b-sidebar-head{padding:10px 12px!important}.admin-b2b-sidebar-head button{width:30px!important;height:30px!important}
.admin-b2b-filter-row{padding:8px!important}.admin-b2b-filter-row input,.admin-b2b-filter-row select{min-height:35px!important;padding:6px 8px!important}
.admin-b2b-conversation-item{padding:9px 10px!important;gap:3px!important}
.admin-b2b-order-summary{padding:8px 12px!important}
.admin-b2b-delivery-editor{grid-template-columns:minmax(150px,220px) auto!important;gap:7px 9px!important;padding:8px 0!important}
.admin-b2b-delivery-editor input{min-height:34px!important;height:34px!important;padding:0 9px!important}.admin-b2b-delivery-editor button{min-height:34px!important;height:34px!important;padding:0 10px!important;font-size:16px!important}
.admin-b2b-customer-card{margin:6px 0 8px!important;padding:7px!important;gap:5px!important}
.admin-b2b-messages{padding:11px!important;gap:7px!important}.admin-b2b-message{padding:8px 10px!important;border-radius:10px!important}.admin-b2b-message>div{margin-bottom:3px!important}

.admin-b2b-quick-replies{display:flex;gap:5px;overflow-x:auto;padding:7px 9px 0;border-top:1px solid rgba(255,255,255,.07);scrollbar-width:thin}
.admin-b2b-quick-replies[hidden]{display:none!important}.admin-b2b-quick-replies button{flex:0 0 auto;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.055);color:#e7e8ec;padding:5px 9px;font-size:16px;cursor:pointer}
.admin-b2b-quick-replies button:hover{border-color:rgba(227,30,38,.55);background:rgba(227,30,38,.09)}

.admin-b2b-compose{grid-template-columns:34px minmax(0,1fr) auto!important;gap:6px!important;padding:7px 9px!important;align-items:end!important}
.admin-b2b-compose textarea{min-height:36px!important;height:36px;max-height:86px!important;padding:7px 9px!important;border-radius:8px!important;line-height:1.3!important;resize:vertical!important}
.admin-b2b-compose .admin-b2b-attach-btn{width:34px!important;height:36px!important;min-height:36px!important;padding:0!important;font-size:20px!important;border-radius:8px!important}
.admin-b2b-compose .admin-b2b-send-btn{height:36px!important;min-height:36px!important;padding:0 11px!important;border-radius:8px!important;font-size:16px!important;line-height:1!important}

.admin-b2b-help-box{margin:0;border-top:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.13);padding:8px 10px;color:#d9dbe1}
.admin-b2b-help-box>summary{cursor:pointer;color:#fff;font-weight:900;font-size:16px}.admin-b2b-help-box>p{margin:8px 0;font-size:16px;line-height:1.45;color:#afb2ba}
.admin-b2b-help-box #adminB2bFaqList{display:grid;gap:5px}.admin-b2b-help-box details{border:1px solid rgba(255,255,255,.07);border-radius:7px;padding:6px 7px;background:rgba(255,255,255,.025)}
.admin-b2b-help-box details summary{cursor:pointer;font-size:16px;font-weight:800;color:#f1f1f3}.admin-b2b-help-box details p{font-size:16px;line-height:1.4;color:#bfc2ca;margin:6px 0}
.admin-b2b-help-box details button{border:0;border-radius:6px;background:rgba(227,30,38,.16);color:#fff;padding:4px 7px;font-size:16px;cursor:pointer}

.admin-b2b-modal[hidden]{display:none!important}.admin-b2b-modal{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:18px}.admin-b2b-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.76);backdrop-filter:blur(7px)}
.admin-b2b-modal-card{position:relative;z-index:1;width:min(94vw,520px);max-height:90vh;overflow:auto;border:1px solid rgba(255,255,255,.13);border-radius:15px;background:#17181d;color:#fff;box-shadow:0 24px 70px rgba(0,0,0,.52);padding:18px}
.admin-b2b-agent-card{width:min(92vw,430px)}.admin-b2b-modal-kicker{display:block;color:#e31e26;font-weight:900;font-size:16px;letter-spacing:.08em}.admin-b2b-modal-card h2{margin:5px 0 7px;font-size:24px}.admin-b2b-modal-card>p{margin:0 0 14px;color:#b9bbc2;font-size:16px;line-height:1.45}
.admin-b2b-agent-card label,.admin-b2b-settings-grid label,.admin-b2b-wide-field{display:grid;gap:5px}.admin-b2b-agent-card label>span,.admin-b2b-settings-grid label>span,.admin-b2b-wide-field>span{font-size:16px;font-weight:800;color:#d8dae0}
.admin-b2b-agent-card input{height:38px;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:#0f1014;color:#fff;padding:0 10px;font-size:16px}.admin-b2b-agent-card>button{width:100%;height:38px;margin-top:12px;border:0;border-radius:8px;background:#e31e26;color:#fff;font-size:16px;font-weight:900;cursor:pointer}
.admin-b2b-tools-card{width:min(95vw,760px);padding:16px}.admin-b2b-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.admin-b2b-modal-head h2{margin:3px 0 0}.admin-b2b-modal-close{width:32px;height:32px;border:0;border-radius:8px;background:rgba(255,255,255,.08);color:#fff;font-size:22px;cursor:pointer}
.admin-b2b-tools-card>details{border-top:1px solid rgba(255,255,255,.09);padding:9px 0}.admin-b2b-tools-card>details>summary{cursor:pointer;font-size:16px;font-weight:900;color:#fff}.admin-b2b-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:9px}.admin-b2b-settings-grid label:first-child,.admin-b2b-settings-grid label:nth-child(2){grid-column:1/-1}
.admin-b2b-settings-grid textarea,.admin-b2b-wide-field textarea{width:100%;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#0f1014;color:#fff;padding:8px 9px;font:inherit;font-size:16px;line-height:1.4;resize:vertical}.admin-b2b-wide-field{margin-top:8px}.admin-b2b-template-help{display:block;margin-top:7px;color:#9498a2;font-size:16px;line-height:1.35}
.admin-b2b-settings-actions{display:flex;justify-content:flex-end;gap:7px;padding-top:10px;border-top:1px solid rgba(255,255,255,.09)}.admin-b2b-settings-actions button{height:34px;border:0;border-radius:7px;padding:0 11px;background:#e31e26;color:#fff;font-size:16px;font-weight:900;cursor:pointer}.admin-b2b-settings-actions .is-secondary{background:#30323a}

@media(max-width:780px){.admin-b2b-title-actions{justify-content:flex-start}.admin-b2b-settings-grid{grid-template-columns:1fr}.admin-b2b-settings-grid label:first-child,.admin-b2b-settings-grid label:nth-child(2){grid-column:auto}.admin-b2b-delivery-editor{grid-template-columns:1fr!important}.admin-b2b-compose{grid-template-columns:34px minmax(0,1fr) auto!important}.admin-b2b-status-actions{width:100%;overflow-x:auto;flex-wrap:nowrap!important}.admin-b2b-status-actions>*{flex:0 0 auto}}

/* v1.15.52 — Contact vers B2B */
.contact-form-status{margin:0;padding:10px 12px;border-radius:8px;font-size:16px;line-height:1.4}
.contact-form-status.is-success{border:1px solid rgba(57,201,120,.35);background:rgba(57,201,120,.08);color:#9ce6b9}
.contact-form-status.is-error{border:1px solid rgba(227,30,38,.35);background:rgba(227,30,38,.08);color:#ff9a9e}

/* v1.15.53 — rôles Admin / Modérateur / User */
.admin-moderators-title{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.admin-role-badge{padding:7px 10px;border:1px solid rgba(227,30,38,.35);border-radius:999px;background:rgba(227,30,38,.08);color:#ff8e93;font-size:16px;font-weight:800}.admin-moderator-create-card,.admin-moderator-card{display:grid;gap:16px}.admin-moderator-fields{display:grid;gap:12px}.admin-moderator-fields label{display:grid;gap:6px}.admin-moderator-fields label>span{color:#aab1bc;font-size:16px;font-weight:800;letter-spacing:.06em}.admin-moderator-fields input{width:100%;height:42px;padding:0 11px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#090c13;color:#fff;font:inherit;outline:none}.admin-moderator-fields input:focus{border-color:#e31e26}.admin-permission-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:14px}.admin-permission-card{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:9px;padding:11px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(8,11,18,.5);cursor:pointer}.admin-permission-card input{margin-top:4px;accent-color:#e31e26}.admin-permission-card span{display:grid;gap:3px}.admin-permission-card strong{font-size:16px}.admin-permission-card small{color:#9199a5;font-size:16px;line-height:1.35}.admin-moderator-form-actions{display:flex;justify-content:flex-end;margin-top:12px}.admin-moderator-list{display:grid;gap:12px;margin-top:16px}.admin-moderator-card{position:relative}.admin-moderator-card.is-disabled{opacity:.62}.admin-moderator-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-moderator-card-head>div{display:grid;gap:2px}.admin-moderator-card-head strong{font-size:19px}.admin-moderator-card-head span{color:#969eaa;font-size:16px}.admin-moderator-state{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.07);color:#a5acb7;font-size:16px;font-weight:800}.admin-moderator-state.is-active{background:rgba(57,201,120,.12);color:#7ce3a7}.admin-moderator-meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:#8f97a3;font-size:16px}.admin-moderator-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.admin-moderator-active-switch{display:flex;align-items:center;gap:8px;color:#d6dae1}.admin-moderator-active-switch input{accent-color:#e31e26}.admin-moderator-delete-form{left:18px;bottom:18px}.admin-moderator-delete{color:#ff858a}.admin-moderator-empty{text-align:center}.admin-moderator-empty p{color:#959da9}@media(max-width:1050px){.admin-permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.admin-moderators-title{align-items:flex-start;flex-direction:column}.admin-moderator-fields,.admin-permission-grid{grid-template-columns:1fr}.admin-moderator-card-actions{padding-top:44px;justify-content:space-between}.admin-moderator-delete-form{left:14px;bottom:62px}}

/* v1.15.54 — rôles personnalisés + double authentification modérateur */
.admin-moderator-fields{grid-template-columns:repeat(4,minmax(0,1fr))}
.admin-moderator-security-note{display:flex;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;border:1px solid rgba(57,201,120,.24);border-radius:8px;background:rgba(57,201,120,.06)}
.admin-moderator-security-note strong{color:#7ce3a7;font-size:16px}.admin-moderator-security-note span{color:#aeb5c0;font-size:16px}
.admin-moderator-meta .is-mfa-ok{color:#7ce3a7}.admin-moderator-meta .is-mfa-waiting{color:#f0bd62}
.admin-moderator-danger-actions{display:flex;align-items:center;gap:8px;position:absolute;left:18px;bottom:18px}.admin-moderator-danger-actions form{position:static}.admin-moderator-delete-form{position:static}.admin-moderator-card-actions{padding-left:260px}
.moderator-mfa-main{min-height:72vh;display:grid;place-items:center;padding-top:40px;padding-bottom:70px}.moderator-mfa-card{width:min(680px,100%);display:grid;gap:18px;padding:24px}.moderator-mfa-card-compact{width:min(520px,100%)}
.moderator-mfa-head{display:grid;gap:6px}.moderator-mfa-step{width:max-content;padding:5px 8px;border-radius:999px;background:rgba(227,30,38,.11);color:#ff8e93;font-size:16px;font-weight:900;letter-spacing:.08em}.moderator-mfa-head h1{margin:0;font-family:"Teko",Impact,sans-serif;font-size:clamp(34px,5vw,48px);font-weight:500;line-height:1}.moderator-mfa-head p{margin:0;color:#aab1bc;font-size:16px}.moderator-mfa-head p strong{color:#fff}
.moderator-mfa-guide{display:grid;gap:8px}.moderator-mfa-guide>div{display:grid;grid-template-columns:32px 1fr;align-items:start;gap:9px;padding:9px 10px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(8,11,18,.42)}.moderator-mfa-guide>div>strong{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e31e26;color:#fff}.moderator-mfa-guide>div>span{color:#d8dce3;font-size:16px;line-height:1.45}
.moderator-mfa-secret{display:grid;gap:7px;padding:14px;border:1px solid rgba(227,30,38,.25);border-radius:9px;background:#080b12}.moderator-mfa-secret>span{color:#aab1bc;font-size:16px;font-weight:800}.moderator-mfa-secret code{display:block;overflow-wrap:anywhere;color:#fff;font-size:19px;letter-spacing:.08em}.moderator-mfa-secret small{color:#8f97a3;font-size:16px}
.moderator-mfa-form{display:grid;gap:12px}.moderator-mfa-form label{display:grid;gap:6px}.moderator-mfa-form label>span{color:#aab1bc;font-size:16px;font-weight:800}.moderator-mfa-form input{height:50px;padding:0 14px;border:1px solid rgba(255,255,255,.15);border-radius:9px;background:#090c13;color:#fff;font-size:22px;font-weight:800;letter-spacing:.15em;text-align:center;outline:none}.moderator-mfa-form input:focus{border-color:#e31e26}.moderator-mfa-note{margin:0;color:#969eaa;font-size:16px;line-height:1.45}.moderator-recovery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.moderator-recovery-grid code{padding:10px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#090c13;color:#fff;text-align:center;font-size:18px;letter-spacing:.08em}.moderator-mfa-continue{text-align:center;text-decoration:none}
@media(max-width:1050px){.admin-moderator-fields{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.admin-moderator-fields{grid-template-columns:1fr}.admin-moderator-danger-actions{position:static;flex-wrap:wrap}.admin-moderator-card-actions{padding-left:0}.moderator-recovery-grid{grid-template-columns:1fr}.moderator-mfa-card{padding:18px}.moderator-mfa-main{padding-top:20px}}

/* v1.15.55 — Connexion unique et mode modérateur */
.moderator-mode-main{display:grid;gap:20px}.moderator-mode-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px}.moderator-mode-kicker{display:block;margin-bottom:5px;color:#ff7e83;font-size:16px;font-weight:900;letter-spacing:.12em}.moderator-mode-hero h1{margin:0;color:#fff;font-size:34px;font-weight:600}.moderator-mode-hero p{margin:6px 0 0;color:#aeb4be;font-size:16px}.moderator-mode-hero p strong{color:#fff}.moderator-mode-logout{flex:0 0 auto}.moderator-mode-heading{display:grid;gap:4px}.moderator-mode-heading h2{margin:0;color:#fff;font-size:22px}.moderator-mode-heading p{margin:0;color:#969da8;font-size:16px}.moderator-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.moderator-mode-card{display:grid;gap:7px;min-height:160px;padding:18px;color:#fff;text-decoration:none;transition:transform .15s ease,border-color .15s ease}.moderator-mode-card:hover{transform:translateY(-2px);border-color:rgba(227,30,38,.5)}.moderator-mode-card strong{font-size:20px}.moderator-mode-card span{color:#9ea5b0;font-size:16px;line-height:1.45}.moderator-mode-card em{align-self:end;color:#ff858a;font-size:16px;font-style:normal;font-weight:900;letter-spacing:.06em}.moderator-mode-empty{grid-column:1/-1;display:grid;gap:6px;padding:22px}.moderator-mode-empty strong{font-size:19px}.moderator-mode-empty span{color:#9ea5b0;font-size:16px}@media(max-width:900px){.moderator-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.moderator-mode-hero{align-items:flex-start;flex-direction:column}.moderator-mode-grid{grid-template-columns:1fr}.moderator-mode-logout{width:100%;text-align:center}}

/* v1.15.56 — Validation Google Authenticator centralisée par l'administrateur */
.admin-shared-mfa-card{display:grid;gap:16px;margin-bottom:16px}.admin-shared-mfa-head{align-items:flex-start}.admin-shared-mfa-enabled{display:grid;gap:6px;padding:14px;border:1px solid rgba(57,201,120,.24);border-radius:9px;background:rgba(57,201,120,.06)}.admin-shared-mfa-enabled>strong{color:#7ce3a7;font-size:17px}.admin-shared-mfa-enabled p{margin:0;color:#d4d9e0;font-size:16px;line-height:1.45}.admin-shared-mfa-enabled small{color:#929aa6;font-size:16px}.admin-shared-mfa-setup{display:grid;gap:14px}.admin-shared-mfa-activate-form{grid-template-columns:minmax(220px,340px) auto;align-items:end}.admin-shared-mfa-activate-form button{height:50px}.admin-shared-mfa-reset-form{display:flex;justify-content:flex-end}.moderator-admin-approval-box{display:grid;gap:7px;padding:14px;border:1px solid rgba(227,30,38,.28);border-radius:9px;background:rgba(227,30,38,.06)}.moderator-admin-approval-box strong{color:#ff8f93;font-size:16px;letter-spacing:.05em}.moderator-admin-approval-box p{margin:0;color:#e0e4e9;font-size:16px;line-height:1.45}.moderator-admin-approval-box small{color:#969eaa;font-size:16px;line-height:1.4}
@media(max-width:700px){.admin-shared-mfa-activate-form{grid-template-columns:1fr}.admin-shared-mfa-reset-form .admin-reset-btn{width:100%}}

/* v1.15.58 — Récupération B2B invité par OTP Resend */
.b2b-chat-recover form{display:grid;gap:7px}.b2b-chat-recover form[hidden]{display:none!important}.b2b-chat-recover input{width:100%;min-height:36px;padding:7px 9px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#090d15;color:#fff;font:inherit;font-size:16px;outline:none}.b2b-chat-recover input:focus{border-color:rgba(227,30,38,.7)}.b2b-chat-recover button{min-height:34px;padding:6px 9px;border-radius:7px;font-size:16px}.b2b-chat-recover-back{border:0!important;background:transparent!important;color:#aeb4be!important;text-decoration:underline;cursor:pointer}.b2b-chat-recover-status{margin:7px 0 0;color:#8dd8aa;font-size:16px;line-height:1.35}.b2b-chat-recover-status.is-error{color:#ff9a9e}.b2b-chat-recover [data-b2b-recover-help]{margin:0;color:#aeb4be;font-size:16px;line-height:1.35}

/* v1.15.59 — Live Chat B2B accessible sans panier */
.b2b-chat-start{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 12px;border:0;border-radius:8px;background:#e3182d;color:#fff;font:inherit;font-size:16px;font-weight:900;cursor:pointer}
.b2b-chat-start:disabled{opacity:.55;cursor:wait}
.b2b-chat-start-box{margin-top:12px;display:grid;gap:7px}
.b2b-chat-start-box[hidden]{display:none!important}
.b2b-chat-start-box form{display:grid;gap:7px}
.b2b-chat-start-box input{width:100%;min-height:36px;padding:7px 9px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#090d15;color:#fff;font:inherit;font-size:16px;outline:none}
.b2b-chat-start-box input:focus{border-color:rgba(227,30,38,.7)}
.b2b-chat-start-box button{min-height:36px;padding:7px 10px;border:0;border-radius:7px;background:#e3182d;color:#fff;font:inherit;font-size:16px;font-weight:900;cursor:pointer}
.b2b-chat-start-status{margin:0!important;color:#8dd8aa!important;font-size:16px!important;line-height:1.35!important}
.b2b-chat-start-status.is-error{color:#ff9a9e!important}

/* v1.15.60 — cycle livraison B2B + pages légales */
.admin-b2b-shipping-box{display:grid;gap:8px;margin-top:10px;padding:10px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.025)}
.admin-b2b-shipping-box>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-b2b-shipping-box>div:first-child strong{font-size:16px}.admin-b2b-shipping-box>div:first-child span{color:#9da4af;font-size:16px}
.admin-b2b-tracking-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px!important}.admin-b2b-tracking-grid label{display:grid;gap:4px}.admin-b2b-tracking-grid label.is-wide{grid-column:1/-1}.admin-b2b-tracking-grid label span{color:#9098a4;font-size:16px}.admin-b2b-tracking-grid input{height:36px;padding:0 9px;border:1px solid rgba(255,255,255,.13);border-radius:7px;background:#090c13;color:#fff;font:inherit;font-size:16px;outline:none}.admin-b2b-tracking-grid input:focus{border-color:rgba(227,30,38,.7)}.admin-b2b-tracking-grid input:disabled{opacity:.6}
.admin-b2b-status-actions .is-prepare,.admin-b2b-status-actions .is-ship,.admin-b2b-status-actions .is-deliver{min-height:32px!important;padding:5px 8px!important;font-size:16px!important}.admin-b2b-status-actions .is-prepare{border-color:rgba(232,180,64,.45)!important}.admin-b2b-status-actions .is-ship{border-color:rgba(76,155,255,.5)!important}.admin-b2b-status-actions .is-deliver{border-color:rgba(57,201,120,.52)!important}
.status-preparing{color:#f1c76e!important}.status-shipped{color:#74b5ff!important}.status-delivered{color:#76dfa0!important}.admin-b2b-mini-status.status-preparing{background:rgba(232,180,64,.12)}.admin-b2b-mini-status.status-shipped{background:rgba(76,155,255,.12)}.admin-b2b-mini-status.status-delivered{background:rgba(57,201,120,.12)}
.legal-main{padding-bottom:90px}.legal-hero{max-width:900px;margin:0 0 22px}.legal-hero>span{display:block;color:#e31e26;font-size:16px;font-weight:800;letter-spacing:.12em}.legal-hero h1{margin:5px 0 8px;font-family:"Teko",Impact,sans-serif;font-size:clamp(44px,6vw,72px);font-weight:500;line-height:.95}.legal-hero p{max-width:780px;margin:0;color:#b3bac5;line-height:1.6;font-size:16px}.legal-hero small{display:block;margin-top:9px;color:#858d99;font-size:16px}.legal-layout{display:grid;grid-template-columns:minmax(220px,.34fr) minmax(0,1fr);gap:16px;align-items:start}.legal-nav{position:sticky;top:18px;display:grid;overflow:hidden;padding:10px}.legal-nav strong{padding:7px 9px 10px;color:#fff;font-size:16px;letter-spacing:.08em}.legal-nav a{padding:9px;border-radius:6px;color:#aeb5bf;text-decoration:none;font-size:16px}.legal-nav a:hover{background:rgba(227,30,38,.1);color:#fff}.legal-content{display:grid;gap:12px}.legal-section{padding:20px}.legal-section h2{margin:0 0 10px;color:#fff;font-size:22px;font-weight:600}.legal-section p{margin:0 0 10px;color:#b1b7c1;font-size:16px;line-height:1.65}.legal-section p:last-child{margin-bottom:0}.legal-section ul{display:grid;gap:7px;margin:0;padding-left:20px;color:#b1b7c1}.legal-section li{font-size:16px;line-height:1.55}.legal-section dl{display:grid;gap:1px;margin:0;overflow:hidden;border-radius:7px}.legal-section dl div{display:grid;grid-template-columns:minmax(130px,.32fr) minmax(0,1fr);gap:12px;padding:10px 12px;background:rgba(255,255,255,.035)}.legal-section dt{color:#8f97a3;font-size:16px}.legal-section dd{margin:0;color:#fff;font-size:16px}.legal-note{margin:2px 4px;color:#858d99;font-size:16px;line-height:1.55}.footer-legal-link{color:#929aa6;text-decoration:none;font-size:16px;white-space:nowrap}.footer-legal-link:hover{color:#fff}
@media(max-width:820px){.footer-legal-link{grid-column:1/-1;justify-self:center}.page:not(.home-page) .footer-content,body.inner-page .footer-content,body.inner-page.admin-page .footer-content,.home-page .footer-content{height:auto!important;min-height:70px!important}.legal-layout{grid-template-columns:1fr}.legal-nav{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.legal-nav strong{grid-column:1/-1}.legal-section{padding:16px}}
@media(max-width:520px){.legal-nav{grid-template-columns:1fr}.legal-section dl div{grid-template-columns:1fr;gap:3px}.admin-b2b-tracking-grid{grid-template-columns:1fr}.admin-b2b-tracking-grid label.is-wide{grid-column:auto}}


/* v1.15.61 — Cookie consent */
.mhtm-cookie-consent[hidden]{display:none!important}
.mhtm-cookie-consent{
  position:fixed;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  z-index:10040;
  width:min(720px,calc(100vw - 36px));
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:18px;
  padding:16px 18px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  background:rgba(12,15,22,.97);
  box-shadow:0 18px 55px rgba(0,0,0,.52);
  backdrop-filter:blur(14px);
  color:#fff;
}
.mhtm-cookie-consent-copy{min-width:0}
.mhtm-cookie-consent-copy strong{
  display:block;
  margin-bottom:5px;
  color:#fff;
  font-size:16px;
  font-weight:900;
  letter-spacing:.09em;
}
.mhtm-cookie-consent-copy p{
  margin:0;
  color:#b7bdc7;
  font-size:16px;
  line-height:1.45;
}
.mhtm-cookie-consent-copy a{
  display:inline-block;
  margin-top:7px;
  color:#ff8d92;
  font-size:16px;
  font-weight:700;
  text-decoration:none;
}
.mhtm-cookie-consent-copy a:hover{text-decoration:underline}
.mhtm-cookie-consent-actions{display:flex;align-items:center;gap:8px;white-space:nowrap}
.mhtm-cookie-btn{
  min-height:38px;
  padding:8px 12px;
  border-radius:7px;
  font:inherit;
  font-size:16px;
  font-weight:800;
  letter-spacing:.04em;
  cursor:pointer;
}
.mhtm-cookie-btn-primary{
  border:1px solid #e31e26;
  background:#e31e26;
  color:#fff;
}
.mhtm-cookie-btn-secondary{
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.055);
  color:#d8dce3;
}
.mhtm-cookie-btn:hover{filter:brightness(1.08)}
.footer-legal-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
@media(max-width:760px){
  .mhtm-cookie-consent{
    left:50%;
    bottom:10px;
    transform:translateX(-50%);
    width:calc(100vw - 20px);
    grid-template-columns:1fr;
    gap:12px;
    padding:14px;
  }
  .mhtm-cookie-consent-actions{display:grid;grid-template-columns:1fr 1fr}
  .mhtm-cookie-btn{width:100%}
  body.mhtm-cookie-open .b2b-chat-root,
  body.mhtm-cookie-open .cart-b2b-messenger-bubble{
    bottom:calc(var(--mhtm-cookie-banner-height,170px) + 20px)!important;
  }
}

/* Top-up gaming */
.topup-main{padding-bottom:110px}.topup-title{margin-bottom:22px}.topup-title h1 span{color:#e31e26}.topup-alert{margin-bottom:14px}.topup-shell{overflow:hidden}.topup-game-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.09);background:rgba(5,8,13,.42)}.topup-game-tab{min-height:44px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:rgba(255,255,255,.04);color:#b8bec8;font:inherit;font-size:16px;font-weight:800;letter-spacing:.06em;cursor:pointer}.topup-game-tab.is-active{border-color:rgba(227,30,38,.7);background:rgba(227,30,38,.14);color:#fff}.topup-grid{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(330px,.78fr)}.topup-product-column{padding:20px;border-right:1px solid rgba(255,255,255,.09)}.topup-checkout-column{padding:20px;background:rgba(5,8,13,.25)}.topup-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.topup-section-head>div{display:flex;align-items:center;gap:9px}.topup-section-head>div>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e31e26;color:#fff;font-size:16px;font-weight:900}.topup-section-head strong{font-size:16px;letter-spacing:.08em}.topup-section-head small{color:#8f96a2;font-size:16px}.topup-popular-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.topup-pack-card{display:grid;gap:4px;min-height:74px;padding:12px;border:1px solid rgba(255,255,255,.11);border-radius:9px;background:rgba(8,11,18,.56);color:#fff;text-align:left;cursor:pointer}.topup-pack-card strong{font-size:16px;font-weight:700}.topup-pack-card span{color:#aeb5c0;font-size:16px}.topup-pack-card:hover,.topup-pack-card.is-selected{border-color:#e31e26;background:rgba(227,30,38,.1)}.topup-pack-card.is-selected span{color:#ff9ca0}.topup-custom-field,.topup-player-form label,.topup-customer-fields label,.topup-requirements label{display:grid;gap:6px}.topup-custom-field{margin-top:10px}.topup-custom-field>span,.topup-player-form label>span,.topup-customer-fields label>span,.topup-requirements label>span,.topup-payment-label{color:#aeb5c0;font-size:16px;font-weight:700;letter-spacing:.06em}.topup-custom-field select,.topup-player-form input,.topup-player-form select,.topup-customer-fields input,.topup-requirements input,.topup-requirements select{width:100%;min-height:44px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#090c13;color:#fff;padding:9px 11px;font:inherit;font-size:16px;outline:none}.topup-custom-field select:focus,.topup-player-form input:focus,.topup-player-form select:focus,.topup-customer-fields input:focus,.topup-requirements input:focus,.topup-requirements select:focus{border-color:#e31e26}.topup-player-head{margin-top:24px}.topup-player-form{display:grid;gap:10px}.topup-requirements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.topup-verify-btn{min-height:46px;margin-top:2px}.topup-help{margin:9px 0 0;color:#8f96a2;font-size:16px}.topup-quote-empty{display:grid;place-items:center;text-align:center;min-height:250px;padding:24px;border:1px dashed rgba(255,255,255,.12);border-radius:9px}.topup-quote-empty strong{font-size:18px}.topup-quote-empty p{max-width:330px;margin:8px 0 0;color:#9299a5;font-size:16px}.topup-quote{display:grid;gap:0;border:1px solid rgba(255,255,255,.1);border-radius:10px;overflow:hidden}.topup-quote-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.07);font-size:16px}.topup-quote-row span{color:#9299a5}.topup-quote-row strong{max-width:62%;text-align:right;font-weight:600}.topup-quote-total{display:flex;align-items:center;justify-content:space-between;padding:14px 12px;background:rgba(227,30,38,.08)}.topup-quote-total span{font-size:16px;font-weight:800;letter-spacing:.09em}.topup-quote-total strong{color:#fff;font-size:23px}.topup-order-form{display:grid;gap:12px;padding:14px}.topup-customer-fields{display:grid;gap:9px}.topup-payment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.topup-payment-option{position:relative;display:grid;grid-template-columns:74px 1fr;align-items:center;gap:8px;min-height:54px;padding:8px 10px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:rgba(255,255,255,.03);cursor:pointer}.topup-payment-option input{position:absolute;opacity:0}.topup-payment-option:has(input:checked){border-color:#e31e26;background:rgba(227,30,38,.1)}.topup-payment-option>span{display:grid;place-items:center;width:70px;height:34px;padding:4px;border-radius:5px;background:#fff;overflow:hidden}.topup-payment-option img{display:block;max-width:100%;max-height:100%;object-fit:contain}.topup-payment-option strong{font-size:16px}.topup-payment-option.is-disabled{opacity:.45;cursor:not-allowed}.topup-order-btn{min-height:46px}.topup-order-status{margin:0;padding:9px 10px;border-radius:7px;background:rgba(57,201,120,.08);color:#8fe2b0;font-size:16px}.topup-order-status.is-error{background:rgba(227,30,38,.09);color:#ff9a9e}.topup-no-pack{grid-column:1/-1;margin:0;color:#9ca3ae;font-size:16px}.admin-b2b-topup-retry{margin-top:8px;min-height:34px;padding:6px 10px;border:1px solid #e31e26;border-radius:7px;background:#e31e26;color:#fff;font:inherit;font-size:16px;font-weight:800;cursor:pointer}
.topup-quote[hidden],.topup-quote-empty[hidden],.topup-quote-row[hidden]{display:none!important}
@media(max-width:900px){.topup-grid{grid-template-columns:1fr}.topup-product-column{border-right:0;border-bottom:1px solid rgba(255,255,255,.09)}}
@media(max-width:560px){.topup-product-column,.topup-checkout-column{padding:14px}.topup-game-tabs{padding:12px}.topup-popular-grid,.topup-payment-options,.topup-requirements{grid-template-columns:1fr}.topup-section-head{align-items:flex-start;flex-direction:column}.topup-quote-row{align-items:flex-start}.topup-quote-row strong{max-width:58%}}

/* Galeries produits sans déformation */
.shop-gallery{position:relative;isolation:isolate}.shop-gallery-link{display:block;width:100%;height:100%}.shop-gallery-slide{display:block;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;padding:0!important;object-fit:contain!important;object-position:center!important;transform:none!important}.shop-gallery-slide[hidden]{display:none!important}.shop-product-card:hover .shop-gallery-slide,.home-shop-product-card:hover .shop-gallery-slide{transform:none!important}.shop-gallery-nav{position:absolute;z-index:5;top:50%;display:grid;place-items:center;width:36px;height:44px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;cursor:pointer;transform:translateY(-50%);transition:transform .16s ease,opacity .16s ease}.shop-gallery-nav:hover{background:transparent;transform:translateY(-50%) scale(1.08)}.shop-gallery-nav:focus-visible{outline:3px solid rgba(255,255,255,.82);outline-offset:2px}.shop-gallery-prev{left:8px}.shop-gallery-next{right:8px}.shop-gallery-nav img{display:block;width:22px;height:22px;object-fit:contain;filter:brightness(0) invert(1)}.shop-gallery-counter{position:absolute;z-index:5;left:50%;bottom:8px;min-width:44px;padding:4px 7px;border-radius:999px;background:rgba(0,0,0,.72);color:#fff;font-size:12px;font-weight:800;line-height:1;text-align:center;transform:translateX(-50%);pointer-events:none}.shop-gallery-counter-detail{bottom:16px;font-size:14px;padding:6px 9px}.shop-product-image,.home-shop-product-image{display:block}.shop-product-image .shop-gallery-link,.home-shop-product-image .shop-gallery-link{position:absolute;inset:0}.shop-detail-media>.shop-gallery-slide{position:absolute;inset:0}.shop-detail-media{position:relative;overflow:hidden}.shop-product-image .shop-badge,.home-shop-product-image .home-shop-badge{z-index:4}
@media(max-width:560px){.shop-gallery-nav{width:32px;height:40px}.shop-gallery-prev{left:6px}.shop-gallery-next{right:6px}.shop-gallery-nav img{width:19px;height:19px}.shop-detail-media .shop-gallery-nav{width:38px;height:48px}}
/* Roue de la fortune */
.fortune-page {
  --fortune-bg: #080b12;
  --fortune-panel: #111722;
  --fortune-red: #d62828;
  background: var(--fortune-bg);
  color: #fff;
}

.fortune-page .page-bg {
  opacity: .1;
  filter: saturate(.55) contrast(1.15);
}

.fortune-main {
  position: relative;
  z-index: 2;
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: 126px 0 76px;
}

.fortune-heading {
  text-align: center;
  margin: 0 auto 32px;
}

.fortune-live-badge {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 7px 13px;
  border: 1px solid rgba(214, 40, 40, .55);
  border-radius: 999px;
  color: #f57777;
  background: rgba(214, 40, 40, .08);
  font: 600 12px/1 "Barlow Condensed", sans-serif;
  letter-spacing: 1.6px;
}

.fortune-live-badge i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #ec3138;
  box-shadow: 0 0 14px #ec3138;
  animation: fortunePulse 1.45s ease-in-out infinite;
}

.fortune-heading h1 {
  margin: 14px 0 5px;
  font: 400 clamp(42px, 6vw, 76px)/.95 Teko, "Barlow Condensed", sans-serif;
  letter-spacing: 2.5px;
}

.fortune-heading h1 span { color: var(--fortune-red); }
.fortune-heading p {
  max-width: 650px;
  margin: 11px auto 0;
  color: #9ba4b4;
  font: 400 17px/1.6 "Barlow Condensed", sans-serif;
}

.fortune-stage {
  display: grid;
  grid-template-columns: minmax(0, 720px) minmax(280px, 360px);
  gap: 36px;
  align-items: center;
  justify-content: center;
}

.fortune-wheel-column { min-width: 0; }
.fortune-wheel-wrap {
  position: relative;
  width: min(610px, 82vw);
  aspect-ratio: 1;
  margin: 0 auto;
  display: grid;
  place-items: center;
}

.fortune-wheel-wrap::before,
.fortune-wheel-wrap::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}

.fortune-wheel-wrap::before {
  inset: 0;
  border: 1px solid rgba(105, 117, 137, .2);
  box-shadow: inset 0 0 65px rgba(0,0,0,.65), 0 0 80px rgba(214,40,40,.08);
}

.fortune-wheel-wrap::after {
  inset: 5.8%;
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 0 0 9px rgba(17, 23, 34, .88), 0 0 0 12px #2b3340, 0 0 42px rgba(0,0,0,.8);
}

.fortune-wheel-svg {
  width: 88%;
  height: 88%;
  position: relative;
  z-index: 3;
  overflow: visible;
  filter: drop-shadow(0 30px 42px rgba(0,0,0,.7));
}

.fortune-wheel-svg [data-wheel-rotor] {
  transform-origin: 250px 250px;
  transform-box: view-box;
  will-change: transform;
}

.fortune-indicator {
  position: absolute;
  z-index: 8;
  top: 1.6%;
  left: 50%;
  width: 58px;
  height: 76px;
  transform: translateX(-50%);
  filter: drop-shadow(0 0 16px rgba(214, 40, 40, .9));
}

.fortune-indicator::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  transform: translateX(-50%);
  background: linear-gradient(145deg, #ff4c51, #9e1016);
  border: 4px solid #080b12;
  box-shadow: 0 0 0 2px #596170;
}

.fortune-indicator span {
  position: absolute;
  top: 31px;
  left: 50%;
  width: 0;
  height: 0;
  transform: translateX(-50%);
  border-left: 21px solid transparent;
  border-right: 21px solid transparent;
  border-top: 38px solid #d62828;
}

.fortune-outer-glow {
  position: absolute;
  z-index: 0;
  inset: 13%;
  border-radius: 50%;
  background: rgba(214,40,40,.13);
  filter: blur(55px);
}

.fortune-orbit-dot {
  position: absolute;
  z-index: 6;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #d62828;
  box-shadow: 0 0 13px #d62828;
}
.fortune-orbit-dot.dot-one { top: 23%; left: 5%; }
.fortune-orbit-dot.dot-two { right: 2%; top: 56%; }
.fortune-orbit-dot.dot-three { bottom: 9%; left: 24%; opacity: .65; }

.fortune-action-card {
  width: min(570px, 90%);
  margin: -9px auto 0;
  text-align: center;
}

.fortune-spin-btn {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 58px;
  align-items: center;
  justify-content: center;
  border: 1px solid #f13b41;
  border-radius: 5px;
  color: #fff;
  background: linear-gradient(100deg, #b2171e, #e02c32 48%, #a71016);
  box-shadow: 0 12px 30px rgba(214,40,40,.2), inset 0 1px rgba(255,255,255,.18);
  overflow: hidden;
  cursor: pointer;
  text-decoration: none;
  font: 700 18px/1 "Barlow Condensed", sans-serif;
  letter-spacing: 1.7px;
  transition: transform .18s ease, filter .18s ease, opacity .18s ease;
}

.fortune-spin-btn::before {
  content: "";
  position: absolute;
  inset: 0;
  transform: translateX(-110%);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent);
  transition: transform .65s ease;
}
.fortune-spin-btn:hover:not(:disabled)::before { transform: translateX(110%); }
.fortune-spin-btn:hover:not(:disabled) { transform: translateY(-2px); filter: brightness(1.1); }
.fortune-spin-btn:disabled { opacity: .54; cursor: not-allowed; filter: grayscale(.3); }
.fortune-spin-btn span { position: relative; z-index: 1; }
.fortune-action-card > p { margin: 11px 0 0; color: #7f899a; font: 400 14px/1.4 "Barlow Condensed", sans-serif; }

.fortune-player-panel {
  border: 1px solid #2a3240;
  border-radius: 6px;
  overflow: hidden;
  background: rgba(17,23,34,.88);
  box-shadow: 0 24px 70px rgba(0,0,0,.42);
  backdrop-filter: blur(12px);
}
.fortune-panel-head {
  padding: 22px 24px;
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #2a3240;
  background: linear-gradient(120deg, rgba(214,40,40,.13), transparent 56%);
}
.fortune-panel-head span,
.fortune-history h2 { color: #8d97a8; font: 600 11px/1 "Barlow Condensed", sans-serif; letter-spacing: 1.7px; }
.fortune-panel-head strong { margin-top: 8px; font: 600 24px/1 "Barlow Condensed", sans-serif; letter-spacing: .8px; }
.fortune-security-note { display: flex; gap: 13px; align-items: flex-start; padding: 19px 22px; border-bottom: 1px solid #252d39; }
.fortune-security-note > span { color: #d62828; text-shadow: 0 0 13px rgba(214,40,40,.7); }
.fortune-security-note strong { display: block; font: 600 13px/1 "Barlow Condensed", sans-serif; letter-spacing: 1px; }
.fortune-security-note p { margin: 7px 0 0; color: #8d97a8; font: 400 13px/1.45 "Barlow Condensed", sans-serif; }
.fortune-history { padding: 21px 22px 8px; }
.fortune-history h2 { margin: 0 0 12px; }
.fortune-history-item { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 0; border-top: 1px solid #252d39; }
.fortune-history-item:first-of-type { border-top: 0; }
.fortune-history-item div { min-width: 0; display: flex; flex-direction: column; gap: 5px; }
.fortune-history-item strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: 600 14px/1.2 "Barlow Condensed", sans-serif; }
.fortune-history-item time { color: #778194; font: 400 11px/1 "Barlow Condensed", sans-serif; }
.fortune-history-item > span { flex: 0 0 auto; padding: 5px 8px; border: 1px solid #3c4553; border-radius: 3px; color: #8f99a8; font: 600 10px/1 "Barlow Condensed", sans-serif; letter-spacing: .8px; }
.fortune-history-item.is-win > span { color: #ff7378; border-color: rgba(214,40,40,.65); background: rgba(214,40,40,.1); }
.fortune-empty { color: #778194; font: 400 14px/1.5 "Barlow Condensed", sans-serif; }
.fortune-total { margin: 11px 22px 22px; padding-top: 15px; border-top: 1px solid #252d39; color: #778194; font: 400 12px/1.4 "Barlow Condensed", sans-serif; }
.fortune-total strong { color: #fff; font-size: 16px; }

.fortune-result-modal[hidden] { display: none; }
.fortune-result-modal { position: fixed; z-index: 1200; inset: 0; display: grid; place-items: center; padding: 20px; }
.fortune-result-backdrop { position: absolute; inset: 0; background: rgba(3,5,9,.85); backdrop-filter: blur(7px); }
.fortune-result-card { position: relative; z-index: 1; width: min(440px, 100%); padding: 43px 34px 32px; border: 1px solid #414a59; border-top: 3px solid #d62828; border-radius: 7px; background: linear-gradient(145deg, #151c28, #0d121c); box-shadow: 0 30px 90px rgba(0,0,0,.65), 0 0 55px rgba(214,40,40,.14); text-align: center; }
.fortune-result-close { position: absolute; top: 10px; right: 13px; width: 34px; height: 34px; border: 0; color: #9ba4b4; background: transparent; cursor: pointer; font-size: 27px; }
.fortune-result-icon { display: grid; place-items: center; width: 68px; height: 68px; margin: 0 auto 16px; border: 1px solid #596170; border-radius: 50%; color: #d62828; background: #080b12; box-shadow: 0 0 24px rgba(214,40,40,.25); font-size: 27px; }
.fortune-result-card > p:first-of-type { color: #d85a60; margin: 0; font: 600 11px/1 "Barlow Condensed", sans-serif; letter-spacing: 2px; }
.fortune-result-card h2 { margin: 9px 0 13px; font: 400 42px/1 Teko, "Barlow Condensed", sans-serif; letter-spacing: 1.5px; }
.fortune-result-card > strong { display: block; color: #fff; font: 600 25px/1.2 "Barlow Condensed", sans-serif; }
.fortune-result-card > p:last-of-type { margin: 16px auto 23px; color: #939dad; font: 400 14px/1.55 "Barlow Condensed", sans-serif; }
.fortune-result-confirm { width: 100%; min-height: 48px; border: 1px solid #d62828; border-radius: 4px; color: #fff; background: #b81d23; cursor: pointer; font: 600 15px/1 "Barlow Condensed", sans-serif; letter-spacing: 1.3px; }
.fortune-result-modal.is-winner .fortune-result-icon { color: #fff; background: #d62828; box-shadow: 0 0 33px rgba(214,40,40,.6); }
.fortune-modal-open { overflow: hidden; }
.fortune-confetti { position: fixed; z-index: 1210; inset: 0; pointer-events: none; overflow: hidden; }
.fortune-confetti i { position: absolute; top: -20px; left: var(--x); width: 8px; height: 15px; background: #d62828; animation: fortuneConfetti 3.2s var(--delay) cubic-bezier(.2,.65,.45,1) forwards; }
.fortune-confetti i:nth-child(3n) { background: #fff; }
.fortune-confetti i:nth-child(4n) { background: #e09c25; }

@keyframes fortunePulse { 50% { opacity: .45; transform: scale(.78); } }
@keyframes fortuneConfetti { to { transform: translate(var(--drift), calc(100vh + 40px)) rotate(720deg); opacity: .2; } }

/* Superposition de bienvenue : le site reste visible derrière un voile à 80 %. */
.fortune-welcome-overlay[hidden] { display: none; }
.fortune-welcome-overlay {
  position: fixed;
  z-index: 1190;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 16px;
  font-family: Inter, sans-serif;
}
.fortune-welcome-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(3, 5, 9, .80);
}
.fortune-welcome-card {
  position: relative;
  z-index: 1;
  width: min(640px, 100%);
  max-height: calc(100svh - 32px);
  overflow: auto;
  padding: 6px 20px 16px;
  border: 0;
  border-radius: 0;
  color: #fff;
  background: transparent;
  box-shadow: none;
  text-align: center;
}
.fortune-welcome-card > header h2 {
  margin: 0 0 8px;
  color: #fff;
  font: 700 clamp(36px, 6vw, 48px)/1 Rajdhani, sans-serif;
  letter-spacing: 4px;
  text-shadow: 0 0 30px rgba(214,40,40,.4);
}
.fortune-welcome-card > header > p {
  margin: 0 auto 12px;
  max-width: 480px;
  color: #AEB4BE;
  font: 400 clamp(14px, 2vw, 16px)/1.45 Inter, sans-serif;
}
.fortune-welcome-card .fortune-live-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 6px 16px;
  border: 1px solid rgba(214,40,40,.3);
  border-radius: 999px;
  color: #D62828;
  background: rgba(214,40,40,.12);
  font: 500 14px/1 Inter, sans-serif;
  letter-spacing: 0;
}
.fortune-welcome-card .fortune-live-badge i { width: 8px; height: 8px; }
.fortune-welcome-wheel {
  width: min(400px, 78vw);
  aspect-ratio: 1;
  margin: 10px auto 14px;
  filter: drop-shadow(0 0 18px rgba(214,40,40,.45));
}
.fortune-welcome-wheel::before,
.fortune-welcome-wheel::after { display: none; }
.fortune-welcome-wheel .fortune-wheel-svg { width: 100%; height: 100%; filter: none; overflow: visible; }
.fortune-welcome-wheel [data-welcome-wheel-rotor] {
  transform-origin: 200px 200px;
  transform-box: view-box;
  will-change: transform;
}
.fortune-welcome-overlay.is-spinning .fortune-original-orbit-dot { animation: fortuneOriginalOrbitBlink var(--fortune-blink-duration) linear infinite; }
.fortune-welcome-overlay.is-spinning .fortune-original-indicator { animation: fortuneOriginalIndicatorPulse .12s ease-in-out infinite; transform-box: fill-box; transform-origin: center; }
.fortune-welcome-spin {
  width: auto;
  min-width: 220px;
  min-height: 56px;
  margin: 0 auto;
  padding: 0 48px;
  border: 0;
  border-radius: 12px;
  color: #fff;
  background: #D62828;
  box-shadow: 0 0 24px rgba(214,40,40,.4);
  font: 900 18px/1 Rajdhani, sans-serif;
  letter-spacing: 4px;
}
.fortune-welcome-spin::before { display: none; }
.fortune-welcome-spin:hover:not(:disabled) { background: #e83535; box-shadow: 0 0 28px rgba(214,40,40,.55); transform: translateY(-1px); }
.fortune-welcome-spin:active:not(:disabled) { transform: scale(.97); }
.fortune-welcome-spin:disabled { color: #AEB4BE; background: #1e2a3a; box-shadow: none; opacity: .45; }
.fortune-welcome-status { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.fortune-welcome-result {
  position: fixed;
  z-index: 1220;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 16px;
}
.fortune-welcome-result[hidden] { display: none; }
.fortune-welcome-result-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.75); backdrop-filter: blur(4px); }
.fortune-welcome-result-card {
  position: relative;
  z-index: 1;
  width: min(384px, 100%);
  padding: 32px;
  overflow: hidden;
  border: 1px solid #1e2a3a;
  border-radius: 16px;
  color: #fff;
  background: #111722;
  box-shadow: 0 0 40px rgba(0,0,0,.6);
  text-align: center;
  animation: fortuneOriginalRewardPop .4s cubic-bezier(.34,1.56,.64,1) forwards;
}
.fortune-welcome-result.is-winner .fortune-welcome-result-card { border-color: #D62828; box-shadow: 0 0 60px rgba(214,40,40,.4), 0 0 0 1px rgba(214,40,40,.2); }
.fortune-welcome-result-icon { display: block; margin: 0 0 12px; font-size: 48px; line-height: 1; }
.fortune-welcome-result-card > p:first-of-type { margin: 0 0 4px; color: #AEB4BE; font: 500 14px/1 Inter, sans-serif; letter-spacing: 2px; text-transform: uppercase; }
.fortune-welcome-result-card h3 { margin: 0; color: #fff; font: 700 24px/1.2 Rajdhani, sans-serif; letter-spacing: 1px; }
.fortune-welcome-reward { display: inline-grid; grid-template-columns: auto auto; align-items: center; gap: 0 8px; margin: 20px 0; padding: 16px 24px; border: 1px solid rgba(214,40,40,.3); border-radius: 12px; background: rgba(214,40,40,.1); }
.fortune-welcome-reward > span { font-size: 36px; line-height: 1; }
.fortune-welcome-reward > strong { color: #D62828; font: 900 36px/1 Rajdhani, sans-serif; }
.fortune-welcome-reward > small { grid-column: 1 / -1; margin-top: 4px; color: #AEB4BE; font: 400 12px/1.2 Inter, sans-serif; }
.fortune-welcome-result-card > p:last-of-type { margin: 0 0 24px; color: #AEB4BE; font: 400 14px/1.45 Inter, sans-serif; }
.fortune-welcome-actions { display: flex; flex-direction: column; gap: 12px; }
.fortune-welcome-actions .fortune-result-confirm,
.fortune-welcome-secondary { width: 100%; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; padding: 0 18px; border-radius: 12px; text-decoration: none; cursor: pointer; font: 700 14px/1 Rajdhani, sans-serif; letter-spacing: 2px; }
.fortune-welcome-actions .fortune-result-confirm { border: 0; color: #fff; background: #D62828; box-shadow: 0 0 18px rgba(214,40,40,.35); }
.fortune-welcome-secondary { color: #AEB4BE; border: 0; background: transparent; }
.fortune-welcome-secondary:hover { background: rgba(255,255,255,.05); }

@keyframes fortuneOriginalOrbitBlink { 0%, 100% { opacity: .4; } 50% { opacity: 1; } }
@keyframes fortuneOriginalIndicatorPulse { 0%, 100% { scale: 1 1; } 50% { scale: 1 1.3; } }
@keyframes fortuneOriginalRewardPop { 0% { transform: scale(.5); opacity: 0; } 60% { transform: scale(1.1); opacity: 1; } 100% { transform: scale(1); opacity: 1; } }

/* Administration de la roue */
.admin-wheel-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-bottom: 18px; }
.admin-wheel-stats article { padding: 20px 22px; display: flex; flex-direction: column; gap: 9px; }
.admin-wheel-stats span { color: #8c96a7; font: 600 11px/1 "Barlow Condensed", sans-serif; letter-spacing: 1.2px; }
.admin-wheel-stats strong { color: #fff; font: 600 28px/1 "Barlow Condensed", sans-serif; }
.admin-wheel-form { display: grid; gap: 18px; }
.admin-wheel-milestones { display: flex; flex-direction: column; gap: 9px; margin-top: 18px; }
.admin-wheel-milestones > span,
.admin-wheel-segment-row label > span:first-child { color: #aab2c0; font: 600 12px/1 "Barlow Condensed", sans-serif; letter-spacing: 1px; }
.admin-wheel-milestones input,
.admin-wheel-segment-row input[type="text"] { width: 100%; min-height: 49px; border: 1px solid #343d4b; border-radius: 4px; padding: 0 14px; color: #fff; background: #0b1018; outline: none; font: 400 16px/1 "Barlow Condensed", sans-serif; }
.admin-wheel-milestones input:focus,
.admin-wheel-segment-row input[type="text"]:focus { border-color: #d62828; box-shadow: 0 0 0 3px rgba(214,40,40,.1); }
.admin-wheel-milestones small { color: #7e8898; font: 400 13px/1.5 "Barlow Condensed", sans-serif; }
.admin-wheel-segments { display: grid; gap: 11px; margin-top: 18px; }
.admin-wheel-segment-row { display: grid; grid-template-columns: 42px minmax(0, 1fr) 185px; gap: 15px; align-items: end; padding: 15px; border: 1px solid #2b3442; border-radius: 5px; background: rgba(9,13,20,.6); }
.admin-wheel-segment-number { align-self: center; display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid #d62828; border-radius: 50%; color: #fff; background: rgba(214,40,40,.15); font: 600 16px/1 "Barlow Condensed", sans-serif; }
.admin-wheel-segment-row > label:not(.admin-wheel-winner-toggle) { display: flex; flex-direction: column; gap: 8px; }
.admin-wheel-winner-toggle { min-height: 49px; display: flex; align-items: center; gap: 10px; cursor: pointer; }
.admin-wheel-winner-toggle input { position: absolute; opacity: 0; pointer-events: none; }
.admin-wheel-winner-toggle > span { position: relative; flex: 0 0 auto; width: 42px; height: 24px; border: 1px solid #46505f; border-radius: 999px; background: #171e29; transition: .2s ease; }
.admin-wheel-winner-toggle > span::after { content: ""; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: #7d8796; transition: .2s ease; }
.admin-wheel-winner-toggle input:checked + span { border-color: #d62828; background: rgba(214,40,40,.25); }
.admin-wheel-winner-toggle input:checked + span::after { left: 21px; background: #ef343b; box-shadow: 0 0 12px rgba(214,40,40,.65); }
.admin-wheel-winner-toggle strong { color: #919baa; font: 600 12px/1 "Barlow Condensed", sans-serif; letter-spacing: .8px; }
.admin-wheel-winner-toggle input:checked ~ strong { color: #f26a6f; }
.admin-wheel-history-card { margin-top: 18px; }
.admin-wheel-result-pill { display: inline-flex; padding: 6px 9px; border: 1px solid #46505f; border-radius: 3px; color: #8e98a7; font: 600 10px/1 "Barlow Condensed", sans-serif; letter-spacing: .9px; }
.admin-wheel-result-pill.is-win { color: #ff767b; border-color: rgba(214,40,40,.6); background: rgba(214,40,40,.1); }

@media (max-width: 980px) {
  .fortune-main { padding-top: 112px; }
  .fortune-stage { grid-template-columns: minmax(0, 680px); }
  .fortune-player-panel { width: min(610px, 92%); margin: 15px auto 0; }
}

@media (max-width: 720px) {
  .fortune-main { width: min(100% - 24px, 620px); padding: 96px 0 54px; }
  .fortune-heading { margin-bottom: 20px; }
  .fortune-heading p { font-size: 15px; }
  .fortune-wheel-wrap { width: 100%; }
  .fortune-wheel-svg { width: 91%; height: 91%; }
  .fortune-indicator { top: 0; transform: translateX(-50%) scale(.84); transform-origin: top center; }
  .fortune-action-card { margin-top: 2px; width: 100%; }
  .fortune-spin-btn { min-height: 53px; font-size: 16px; }
  .fortune-player-panel { width: 100%; }
  .admin-wheel-stats { grid-template-columns: 1fr; }
  .admin-wheel-segment-row { grid-template-columns: 38px minmax(0, 1fr); align-items: center; }
  .admin-wheel-winner-toggle { grid-column: 2; min-height: 35px; }
  .fortune-welcome-overlay {
    place-items: start center;
    overflow-y: auto;
    padding: max(8px, env(safe-area-inset-top)) 8px max(8px, env(safe-area-inset-bottom));
  }
  .fortune-welcome-card {
    max-height: none;
    margin: 0 auto;
    overflow: visible;
    padding: 20px 14px 18px;
  }
  .fortune-welcome-wheel { width: min(350px, 86vw); }
  .fortune-welcome-spin { min-height: 56px; font-size: 18px; }
  .fortune-welcome-actions { flex-direction: column; }
  .fortune-welcome-actions .fortune-result-confirm,
  .fortune-welcome-secondary { width: 100%; flex-basis: 46px; }
}

@media (prefers-reduced-motion: reduce) {
  .fortune-live-badge i,
  .fortune-confetti i { animation: none !important; }
}

/* Boutons de fermeture communs — icône cross.svg fournie, affichée en blanc. */
.mhtm-close-icon {
  display: block;
  width: 15px;
  height: 15px;
  object-fit: contain;
  pointer-events: none;
  user-select: none;
}

.fortune-welcome-close-button {
  position: fixed;
  z-index: 3;
  top: max(16px, calc(env(safe-area-inset-top) + 10px));
  right: max(16px, calc(env(safe-area-inset-right) + 16px));
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 50%;
  color: #fff;
  background: rgba(8,11,18,.68);
  box-shadow: 0 8px 24px rgba(0,0,0,.28);
  cursor: pointer;
}

.fortune-welcome-close-button .mhtm-close-icon { width: 18px; height: 18px; }
.fortune-welcome-close-button:hover,
.fortune-welcome-close-button:focus-visible { background: rgba(214,40,40,.82); border-color: #d62828; }

.fortune-welcome-result-close {
  position: absolute;
  z-index: 2;
  top: 12px;
  right: 12px;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  color: #fff;
  background: rgba(255,255,255,.07);
  cursor: pointer;
}

.fortune-welcome-result-close:hover,
.fortune-welcome-result-close:focus-visible { background: rgba(214,40,40,.72); }

.mhtm-site-dialog-close,
.site-toast-close,
.b2b-chat-header [data-b2b-close],
.admin-shop-edit-close,
.admin-b2b-modal-close {
  display: grid !important;
  place-items: center !important;
  padding: 0 !important;
}

.mhtm-site-dialog-close .mhtm-close-icon,
.site-toast-close .mhtm-close-icon,
.b2b-chat-header [data-b2b-close] .mhtm-close-icon,
.admin-shop-edit-close .mhtm-close-icon,
.admin-b2b-modal-close .mhtm-close-icon {
  width: 14px;
  height: 14px;
}

@media (max-width: 640px) {
  .fortune-welcome-close-button {
    top: max(10px, calc(env(safe-area-inset-top) + 8px));
    right: max(10px, calc(env(safe-area-inset-right) + 10px));
  }

  .fortune-welcome-card > header { padding-right: 34px; padding-left: 34px; }
}

/* Contraste final du menu mobile */
@media (max-width: 820px) {
  body .header #primary-nav.nav {
    background: rgba(4, 8, 14, .99) !important;
  }

  body .header #primary-nav.nav a,
  body .header #primary-nav.nav a:visited,
  body .header #primary-nav.nav a:hover,
  body .header #primary-nav.nav a:focus-visible,
  body .header #primary-nav.nav a.active {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-shadow: none !important;
  }
}


/* v1.16.19 — paiement mobile money direct */

@media(min-width:761px){.admin-shop-b2b-methods{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Administration — réglages des paiements séparés du catalogue Shop */
.admin-panel-page .admin-payment-page{display:grid;gap:16px}
.admin-panel-page .admin-payment-header-actions{display:flex;align-items:center;gap:8px}
.admin-panel-page .admin-payment-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-panel-page .admin-payment-overview>.panel{min-width:0;margin:0;padding:16px}
.admin-panel-page .admin-payment-automatic-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px}
.admin-panel-page .admin-payment-automatic-card>p{grid-column:1/-1;margin:0;color:#8d96a4;font-size:14px;line-height:1.5}
.admin-panel-page .admin-payment-info-card{display:grid;align-content:start;gap:6px}
.admin-panel-page .admin-payment-info-card>span{color:#d44a54;font-size:13px;font-weight:800;letter-spacing:.09em}
.admin-panel-page .admin-payment-info-card>strong{color:#fff;font-size:17px}
.admin-panel-page .admin-payment-info-card>p{margin:0;color:#8d96a4;font-size:14px;line-height:1.5}
.admin-panel-page .admin-payment-status-pill{width:max-content;padding:5px 8px;border:1px solid rgba(255,255,255,.1);border-radius:999px;font-size:13px;font-weight:800;letter-spacing:.06em;white-space:nowrap}
.admin-panel-page .admin-payment-status-pill.is-ready{border-color:rgba(57,201,120,.32);background:rgba(57,201,120,.1);color:#7ce3a7}
.admin-panel-page .admin-payment-status-pill.is-unavailable{background:rgba(255,255,255,.05);color:#919aa7}
.admin-panel-page .admin-payment-settings-form{display:grid;gap:14px}
.admin-panel-page .admin-payment-provider-card{margin:0;padding:0;overflow:hidden}
.admin-panel-page .admin-payment-provider-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.07)}
.admin-panel-page .admin-payment-provider-heading{display:flex;align-items:center;gap:12px;min-width:0}
.admin-panel-page .admin-payment-provider-heading>div{min-width:0;display:grid;gap:2px}
.admin-panel-page .admin-payment-provider-heading>div>span{color:#d44a54;font-size:13px;font-weight:800;letter-spacing:.09em}
.admin-panel-page .admin-payment-provider-heading h2{margin:0;color:#fff;font-size:18px;line-height:1.15}
.admin-panel-page .admin-payment-provider-heading p{margin:0;color:#858f9d;font-size:14px;line-height:1.4}
.admin-panel-page .admin-payment-provider-logo{width:52px;height:42px;min-width:52px;padding:7px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#0a0f17;display:grid;place-items:center;overflow:hidden}
.admin-panel-page .admin-payment-provider-logo img{display:block;width:100%;height:100%;object-fit:contain}
.admin-panel-page .admin-payment-provider-logo.binance{background:#0a0f17;color:#141414}.admin-panel-page .admin-payment-provider-logo.binance img{width:26px;height:26px;object-fit:contain}
.admin-panel-page .admin-payment-enable{display:flex;align-items:center;gap:9px;color:#aeb5c0;font-size:13px;font-weight:800;letter-spacing:.07em;white-space:nowrap}
.admin-panel-page .admin-payment-enable input{width:19px;height:19px;accent-color:#d62828}
.admin-panel-page .admin-payment-enable input:disabled{cursor:not-allowed;opacity:.4}
.admin-panel-page .admin-payment-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:17px 18px 19px}
.admin-panel-page .admin-payment-field-grid>label{min-width:0;display:grid;align-content:start;gap:6px}
.admin-panel-page .admin-payment-field-grid>label>span{color:#969eaa;font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.admin-panel-page .admin-payment-field-grid input{width:100%;min-height:44px;border:1px solid rgba(255,255,255,.12);border-radius:7px;background:#0a0d14;color:#fff;padding:0 11px;font:inherit;font-size:15px;outline:none}
.admin-panel-page .admin-payment-field-grid input:focus{border-color:rgba(214,40,40,.72);box-shadow:0 0 0 2px rgba(214,40,40,.1)}
.admin-panel-page .admin-payment-field-grid input::placeholder{color:#66707e;opacity:1}
.admin-panel-page .admin-payment-field-grid small{color:#7f8997;font-size:13px;line-height:1.4}
.admin-panel-page .admin-payment-field-grid code{color:#d8dde5;font:inherit;font-weight:700}
.admin-panel-page .admin-payment-ussd-field{grid-column:1/-1}
.admin-panel-page .admin-payment-ussd-field input{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
.admin-panel-page .admin-payment-configuration-state{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px}
.admin-panel-page .admin-payment-configuration-state>span{font-size:13px;font-weight:800;letter-spacing:.07em}
.admin-panel-page .admin-payment-configuration-state>small{color:#7f8997;font-size:13px}
.admin-panel-page .admin-payment-configuration-state.is-ready>span{color:#7ce3a7}
.admin-panel-page .admin-payment-configuration-state.is-unavailable>span{color:#e4aa4a}
.admin-panel-page .admin-payment-save-bar{position:sticky;bottom:12px;z-index:3;margin:0;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:rgba(17,23,34,.96);backdrop-filter:blur(10px)}
.admin-panel-page .admin-payment-save-bar p{margin:0;color:#8d96a4;font-size:14px}

@media(max-width:980px){
  .admin-panel-page .admin-payment-overview{grid-template-columns:1fr 1fr}
  .admin-panel-page .admin-payment-automatic-card{grid-column:1/-1}
}
@media(max-width:680px){
  .admin-panel-page .admin-payment-overview{grid-template-columns:1fr}
  .admin-panel-page .admin-payment-automatic-card{grid-column:auto}
  .admin-panel-page .admin-payment-provider-head,.admin-panel-page .admin-payment-save-bar{align-items:stretch;flex-direction:column}
  .admin-panel-page .admin-payment-enable{justify-content:space-between;padding-top:10px;border-top:1px solid rgba(255,255,255,.07)}
  .admin-panel-page .admin-payment-field-grid{grid-template-columns:1fr}
  .admin-panel-page .admin-payment-ussd-field{grid-column:auto}
  .admin-panel-page .admin-payment-configuration-state{align-items:flex-start;flex-direction:column}
}

html.direct-payment-open{overflow:hidden}
.direct-payment-root{position:relative;z-index:10050;font-family:"Barlow Condensed",Arial,sans-serif}
.direct-payment-launcher{position:fixed;right:18px;bottom:92px;z-index:10051;border:1px solid rgba(214,40,40,.55);border-radius:999px;background:#111722;color:#fff;padding:10px 15px;font:800 12px/1 "Barlow Condensed",Arial,sans-serif;letter-spacing:.08em;box-shadow:0 10px 32px rgba(0,0,0,.35);cursor:pointer}
.direct-payment-backdrop{position:fixed;inset:0;z-index:10052;background:rgba(0,0,0,.70);display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}
.direct-payment-backdrop[hidden]{display:none}
.direct-payment-panel{position:relative;width:520px;max-width:100%;max-height:100%;overflow:auto;scrollbar-width:none;-ms-overflow-style:none;border:0;border-radius:16px;background:#1B2129;box-shadow:inset 0 0 40px rgba(0,0,0,.30),0 8px 40px rgba(0,0,0,.60);padding:0;color:#F5F6F7}
.direct-payment-panel::-webkit-scrollbar{display:none;width:0;height:0}
.direct-payment-close{position:absolute;top:7px;right:13px;width:32px;height:32px;border:0;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:5;padding:5px;transition:opacity .15s ease}
.direct-payment-close:hover{opacity:.70}
.direct-payment-close img{width:22px;height:22px;filter:brightness(0) invert(1);opacity:.85}
.direct-payment-layout{min-height:100%;background:#1B2129}
.direct-payment-columns{display:grid;grid-template-columns:1fr;gap:16px;padding:18px 24px 16px}
.direct-payment-main{min-width:0}
/* MVola automatique : espacement intérieur du popup, sans toucher aux autres moyens de paiement. */
.direct-payment-mvola{padding:22px 24px 14px}
.direct-payment-mvola .direct-payment-head{padding-right:32px}
.direct-payment-mvola-phone{display:grid;gap:8px;margin:16px 0 12px;color:#f5f6f7;font-size:14px;font-weight:700}
.direct-payment-mvola-phone>span{font-size:12px;letter-spacing:.045em;color:#d6dce2}
.direct-payment-mvola-phone input{box-sizing:border-box;width:100%;min-height:48px;padding:11px 13px;border:1px solid #6e7987;border-radius:10px;background:#11171e;color:#fff;font:inherit;font-size:17px}
.direct-payment-mvola-phone input:focus{outline:2px solid #e0343b;outline-offset:2px}
.direct-payment-mvola-phone small{font-size:12px;font-weight:400;line-height:1.35;color:#bdc7d0}

.direct-payment-mvola .direct-payment-paid-wrap,.direct-payment-mvola .direct-payment-help-wrap{padding-left:0;padding-right:0}
.direct-payment-head{text-align:left;padding:0}
.direct-payment-head>span{display:block;color:#9F3B43;font-size:17px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px}
.direct-payment-head h2{margin:0 0 8px;color:#F5F6F7;font-size:42px;font-weight:300;line-height:1.05;letter-spacing:-.02em}
.direct-payment-reserve-chip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;margin-bottom:14px;border-radius:7px;background:rgba(255,255,255,.10);color:#fff;width:fit-content}
.direct-payment-reserve-chip strong{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.direct-payment-reserve-chip span{font-size:13px;line-height:1}
.direct-payment-reserve-chip small{font-size:12px;font-weight:400;color:#fff}
.direct-payment-details{display:grid;gap:0}
.direct-payment-details>div,.direct-payment-reference{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.direct-payment-details>div:first-child{padding-top:0}
.direct-payment-details>div:last-child{border-bottom:0}
.direct-payment-details span,.direct-payment-reference span,.direct-payment-payment-ref>span{grid-column:1/-1;color:#959CA5;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.direct-payment-details strong,.direct-payment-reference strong{color:#F5F6F7;font-size:18px;font-weight:400;line-height:1.25;word-break:break-word}
.direct-payment-ussd-link{color:#F5F6F7;font-size:16px;font-weight:400;line-height:1.2;word-break:break-all;text-decoration:none}
.direct-payment-ussd-link:hover{text-decoration:underline}
.direct-payment-copy{display:inline-flex;align-items:center;justify-content:center;gap:4px;justify-self:end;height:32px;min-width:76px;padding:0 10px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#555C67;color:#fff;font-size:13px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;transition:filter .15s ease;flex-shrink:0}
.direct-payment-copy:hover{filter:brightness(1.15)}
.direct-payment-copy img{width:15px;height:15px;filter:brightness(0) invert(1)}
.direct-payment-side{display:flex;flex-direction:column;gap:16px;min-width:0}
.direct-payment-steps{display:grid;grid-template-columns:46px 1fr 40px 1fr 50px;align-items:start;gap:0}
.direct-payment-step{display:flex;flex-direction:column;align-items:center;min-width:0}
.direct-payment-step span{display:flex;align-items:center;justify-content:center;width:20px;height:20px;margin-bottom:3px;border-radius:50%;background:#3A424D;color:#7A8291;font-size:10px;font-weight:700}
.direct-payment-step small{color:#7A8291;font-size:11px;text-align:center;font-weight:400}
.direct-payment-step.is-active span{background:#fff;color:#1B2129}
.direct-payment-step.is-active small{color:#fff;font-weight:600}
.direct-payment-step-line{height:1px;background:#3A424D;margin-top:10px}
.direct-payment-step-line.is-active{background:#fff}
.direct-payment-order-card{overflow:hidden;border-radius:14px;background:#F1F2F2;box-shadow:0 2px 6px rgba(0,0,0,.12);color:#22272D}
.direct-payment-order-item{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 10px;border-bottom:1px solid rgba(0,0,0,.07)}
.direct-payment-order-thumb{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:#E3E5E6;overflow:hidden;color:#777;font-size:13px;flex-shrink:0}
.direct-payment-order-thumb img{width:100%;height:100%;object-fit:cover}
.direct-payment-order-text strong{display:block;color:#22272D;font-size:13px;font-weight:400;line-height:1.25}
.direct-payment-order-text small{display:block;color:#777;font-size:11px;line-height:1.2;margin-top:2px}
.direct-payment-order-item>span{color:#22272D;font-size:13px;font-weight:600;white-space:nowrap}
.direct-payment-order-more{padding:7px 10px;color:#666;font-size:12px;border-bottom:1px solid rgba(0,0,0,.08)}
.direct-payment-order-total{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;color:#22272D}
.direct-payment-order-total strong{font-size:13px;font-weight:400}
.direct-payment-order-total span{font-size:13px;font-weight:700}
.direct-payment-reserve-line{display:flex;align-items:center;gap:12px;padding:0 24px;margin:0 0 16px;color:#A7ACB3}
.direct-payment-reserve-line>span{flex:1;height:1px;background:rgba(255,255,255,.12)}
.direct-payment-reserve-line p{margin:0;font-size:13px;white-space:nowrap}
.direct-payment-payment-ref{display:grid;gap:6px;padding:0 24px;margin:0 0 12px}
.direct-payment-payment-ref input{width:100%;height:54px;border:1px solid rgba(255,255,255,.20);border-radius:12px;background:transparent;color:#F5F6F7;padding:0 14px;outline:none;font-family:"Barlow Condensed",Arial,sans-serif;font-size:16px}
.direct-payment-payment-ref input::placeholder{color:#7D838C}
.direct-payment-payment-ref small{color:#9299A2;font-size:13px;line-height:1.35}
.direct-payment-paid-wrap{padding:0 24px;margin-bottom:12px}
.direct-payment-paid{width:100%;height:58px;border:1px solid rgba(255,100,100,.35);border-radius:13px;background:linear-gradient(180deg,#B51E25 0%,#A8171D 100%);box-shadow:inset 0 -2px 5px rgba(0,0,0,.25);color:#fff;font-family:"Barlow Condensed",Arial,sans-serif;font-size:18px;font-weight:700;letter-spacing:.10em;text-transform:uppercase;cursor:pointer;transition:opacity .15s ease,filter .15s ease}
.direct-payment-paid:hover:not(:disabled){filter:brightness(1.07)}
.direct-payment-paid:disabled{background:linear-gradient(180deg,#7A1318 0%,#6E1115 100%);opacity:.65;cursor:not-allowed}
.direct-payment-help-wrap{display:flex;justify-content:center;margin-bottom:12px;padding:0 24px}
.direct-payment-help{border:0;background:transparent;color:#fff;font-family:"Barlow Condensed",Arial,sans-serif;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:opacity .15s ease}
.direct-payment-help-icon{width:20px;height:20px;object-fit:contain;filter:brightness(0) invert(1);opacity:.95;flex:0 0 auto}
.direct-payment-help>span{display:inline-block}
.direct-payment-help:hover{opacity:.70}
.direct-payment-meta{display:flex;align-items:center;justify-content:center;gap:20px;padding:0 24px 16px;color:#777E87;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.direct-payment-meta>span{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.direct-payment-meta img{width:17px;height:17px;object-fit:contain;filter:invert(50%) sepia(8%) saturate(381%) hue-rotate(175deg) brightness(93%) contrast(87%);flex:0 0 auto}
.direct-payment-success{text-align:center;padding:34px 24px 24px}
.direct-payment-success-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 14px;border-radius:50%;background:rgba(57,201,120,.12);border:1px solid rgba(57,201,120,.35);color:#7CE3A7;font-size:28px}
.direct-payment-success h2{margin:0 0 8px;color:#fff;font-size:24px}
.direct-payment-success p{margin:0;color:#A7ACB3;font-size:16px;line-height:1.45}
.direct-payment-reference{margin:20px 0 12px;text-align:left}
.direct-payment-binance{display:grid;gap:20px;padding:30px 24px 22px;background:radial-gradient(circle at 100% 0,rgba(243,186,47,.13),transparent 42%),#1B2129}
.direct-payment-binance-head{display:flex;align-items:center;gap:16px;padding-right:28px}
.direct-payment-binance-head>.topup-binance-pay-mark{flex:0 0 78px}
.direct-payment-binance-head>div{display:grid;gap:2px;min-width:0}
.direct-payment-binance-head>div>span,.direct-payment-binance-amount>span{color:#9ca3ad;font-size:13px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.direct-payment-binance-head h2{margin:0;color:#fff;font-size:36px;font-weight:400;line-height:1}
.direct-payment-binance-amount{display:grid;gap:5px;padding:16px;border:1px solid rgba(243,186,47,.28);border-radius:12px;background:rgba(243,186,47,.07)}
.direct-payment-binance-amount strong{color:#f3ba2f;font-size:28px;font-weight:800;letter-spacing:.02em}
.direct-payment-binance-amount small{color:#a7acb3;font-size:13px;line-height:1.35}
.direct-payment-binance-note{margin:0;color:#d5d9df;font-size:15px;line-height:1.5}
.direct-payment-binance .direct-payment-paid-wrap,.direct-payment-binance .direct-payment-help-wrap{padding:0;margin:0}
.direct-payment-binance-open{border-color:rgba(243,186,47,.5);background:linear-gradient(180deg,#f3ba2f 0%,#d9a51d 100%);box-shadow:inset 0 -2px 5px rgba(0,0,0,.18);color:#101010}
.direct-payment-binance-open:hover:not(:disabled){filter:brightness(1.06)}
.direct-payment-binance-open:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}
.direct-payment-binance-qr{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
.direct-payment-binance-qr img{display:block;box-sizing:content-box;width:216px;max-width:calc(100% - 28px);height:auto;aspect-ratio:1;object-fit:contain;border:14px solid #fff;border-radius:12px;background:#fff}
.direct-payment-binance-qr p{margin:0;color:#d5d9df;font-size:14px;line-height:1.45}
.direct-payment-binance-status{margin:0;text-align:center;color:#aeb4be;font-size:14px;line-height:1.45}
.direct-payment-binance .direct-payment-meta{padding:0;flex-wrap:wrap;gap:10px;white-space:normal}
.direct-payment-success.is-cancelled .direct-payment-success-icon{background:rgba(227,30,38,.12);border-color:rgba(227,30,38,.35);color:#f28c91}
.admin-b2b-binance-waiting{display:inline-flex;align-items:center;min-height:29px;padding:5px 9px;border:1px solid rgba(243,186,47,.24);border-radius:999px;background:rgba(243,186,47,.08);color:#f3ba2f;font-size:12px;font-weight:900;letter-spacing:.07em;white-space:nowrap}
@media(max-width:420px){.direct-payment-columns{padding:16px 18px 14px}.direct-payment-head h2{font-size:38px}.direct-payment-details strong,.direct-payment-reference strong{font-size:17px}.direct-payment-copy{min-width:68px;padding:0 8px}.direct-payment-reserve-line,.direct-payment-payment-ref,.direct-payment-paid-wrap,.direct-payment-help-wrap{padding-left:18px;padding-right:18px}.direct-payment-meta{padding-left:18px;padding-right:18px;gap:12px;font-size:12px}.direct-payment-reserve-line p{font-size:12px}.direct-payment-steps{grid-template-columns:44px 1fr 38px 1fr 48px}}
@media(max-width:420px){.direct-payment-binance{padding:26px 18px 20px}.direct-payment-binance-head{gap:12px}.direct-payment-binance-head h2{font-size:31px}.direct-payment-binance-amount strong{font-size:24px}.direct-payment-binance .direct-payment-meta{flex-wrap:wrap}}

/* =========================================================
   v1.16.28 — Fidélité typographique aux captures de référence
   Ajustements ciblés uniquement : Shop + fiche produit + espace joueur.
   Aucun agrandissement global afin de conserver la hiérarchie des maquettes.
   Les valeurs desktop ci-dessous priment sur les anciennes normalisations v1.15.
   ========================================================= */
@media (min-width:761px){
  /* SHOP — catalogue */
  .shop-category-heading>span{font-size:20px!important}
  .shop-category-heading>small{font-size:17px!important}
  .shop-result-head span{font-size:18px!important}
  .shop-result-head strong{font-size:24px!important}
  .shop-product-body h2{font-size:18px!important;line-height:1.25}
  .shop-card-action,.shop-card-add{font-size:17px!important}

  /* SHOP — fiche produit */
  .shop-back-link{font-size:18px!important}
  .shop-detail-content .shop-product-category{font-size:20px!important}
  .shop-detail-vendor{font-size:19px!important}
  .shop-detail-stock{font-size:18px!important}
  .shop-detail-stock small{font-size:16px!important}
  .shop-detail-specifications dt{font-size:16px!important}
  .shop-detail-specifications dd{font-size:19px!important}
  .shop-purchase-row .shop-quantity-control input{font-size:18px!important}
  .shop-buy-btn{font-size:18px!important}
  .shop-view-cart-link{font-size:18px!important}

  /* ESPACE JOUEUR — navigation / identité */
  .gamer-profile-nav-item{font-size:20px}
  .gamer-profile-mini-activity-head strong{font-size:20px}
  .gamer-profile-mini-activity-copy strong{font-size:18px}
  .gamer-profile-mini-activity-item b{font-size:18px}
  .gamer-profile-identity strong{font-size:28px}

  /* ESPACE JOUEUR — progression XP */
  .gamer-xp-head span{font-size:16px}
  .gamer-xp-head h2{font-size:24px}
  .gamer-xp-head>strong{font-size:16px}
  .gamer-xp-summary-grid strong{font-size:18px}

  /* ESPACE JOUEUR — dashboard */
  .gamer-card-title h3{font-size:20px}
  .gamer-activity-row strong{font-size:18px}
  .gamer-activity-row b{font-size:18px}
  .gamer-current-game strong{font-size:18px}
  .gamer-next-match span{font-size:18px}
  .gamer-next-match strong{font-size:18px}
  .gamer-account-stats strong{font-size:18px}
  .gamer-account-actions a{font-size:17px}
  .gamer-badge strong{font-size:17px}

  /* ESPACE JOUEUR — récompenses */
  .gamer-reward-card-foot button{font-size:14px}
}


/* =========================================================
   v1.16.28 — Références typographiques supplémentaires
   Base conservée : v1.16.28.
   Les 4 premières pages de référence restent inchangées.
   Ajustements ciblés : dashboard admin, connexion, récompenses,
   paramètres joueur, contact et accueil Shop.
   ========================================================= */
@media (min-width:761px){
  /* DASHBOARD ADMIN */

  /* CONNEXION */
  .login-page .login-title h1{font-size:38px!important}
  .login-page .google-auth-btn{font-size:16px!important}
  .login-page .auth-divider{font-size:15px!important}
  .login-page .player-form label{font-size:15px!important}
  .login-page .player-form input,
  .login-page .player-form select{font-size:16px!important}
  .login-page .player-submit{font-size:17px!important}
  .login-page .player-help,
  .login-page .text-link,
  .login-page .player-signup-link{font-size:16px!important}

  /* RÉCOMPENSES XP — conserve la navigation de la v1.16.28 */
  .gamer-rewards-page-head>div:first-child>span{font-size:16px!important}
  .gamer-rewards-page-head h2{font-size:24px!important}
  .gamer-rewards-page-head p{font-size:16px!important;line-height:1.45}
  .gamer-rewards-wallet small{font-size:15px!important}
  .gamer-rewards-wallet strong{font-size:30px!important}
  .gamer-rewards-wallet span{font-size:16px!important}
  .gamer-rewards-stats small{font-size:15px!important}
  .gamer-rewards-stats strong{font-size:18px!important}
  .gamer-reward-store-head>div:first-child>span{font-size:16px!important}
  .gamer-reward-store-head h3{font-size:21px!important}
  .gamer-reward-store-head p{font-size:16px!important}
  .gamer-reward-copy strong{font-size:17px!important}
  .gamer-reward-copy p{font-size:15px!important;line-height:1.35}
  .gamer-reward-card-foot>span{font-size:16px!important}
  .gamer-reward-history-head span{font-size:16px!important}
  .gamer-reward-history-head h3{font-size:20px!important}
  .gamer-reward-history-head>strong{font-size:15px!important}
  .gamer-reward-history-row>div strong{font-size:16px!important}
  .gamer-reward-history-row>div small{font-size:15px!important}
  .gamer-reward-history-row>b{font-size:16px!important}

  /* PARAMÈTRES JOUEUR */
  .gamer-settings-heading h2{font-size:24px!important}
  .gamer-settings-heading p{font-size:16px!important}
  .gamer-settings-column h3{font-size:19px!important}
  .gamer-settings-form label{font-size:15px!important}
  .gamer-settings-form input,
  .gamer-settings-form textarea{font-size:16px!important}
  .gamer-settings-save{font-size:16px!important}
  .gamer-google-status strong{font-size:16px!important}
  .gamer-google-status small,
  .gamer-settings-hint{font-size:15px!important}

  /* CONTACT */
  .contact-page .page-title h1{font-size:46px!important}
  .contact-page .page-title p{font-size:16px!important}
  .contact-page .section-head h2{font-size:22px!important}
  .contact-page .contact-form label{font-size:15px!important}
  .contact-page .contact-form input,
  .contact-page .contact-form select,
  .contact-page .contact-form textarea{font-size:16px!important}
  .contact-page .contact-form .submit-btn{font-size:17px!important}
  .contact-page .contact-line strong{font-size:16px!important}
  .contact-page .contact-line span{font-size:16px!important}

  /* ACCUEIL SHOP */
  .home-mode-shop .home-shop-landing .eyebrow{font-size:20px!important}
  .home-mode-shop .home-shop-landing h1{font-size:clamp(48px,4vw,58px)!important;line-height:.95!important}
  .home-mode-shop .home-shop-intro{font-size:17px!important}
  .home-mode-shop .home-shop-info .info-block strong{font-size:16px!important}
  .home-mode-shop .home-shop-info .info-block span{font-size:15px!important}
  .home-mode-shop .home-shop-landing .cta{font-size:17px!important}
  .home-shop-products-head>div>span{font-size:16px!important}
  .home-shop-products-head h2{font-size:31px!important}
  .home-shop-products-head>a{font-size:15px!important}
  .home-shop-badge{font-size:15px!important}
  .home-shop-product-body small{font-size:16px!important}
  .home-shop-product-body h3{font-size:18px!important}
  .home-shop-product-body strong{font-size:18px!important}
}

@media (max-width:760px){
  .login-page .login-title h1{font-size:34px!important}
  .contact-page .page-title h1{font-size:38px!important}
  .contact-page .page-title p{font-size:15px!important}
  .contact-page .section-head h2{font-size:20px!important}
  .contact-page .contact-form label{font-size:15px!important}
  .contact-page .contact-form input,
  .contact-page .contact-form select,
  .contact-page .contact-form textarea{font-size:16px!important}
  .home-mode-shop .home-shop-landing .eyebrow{font-size:18px!important}
  .home-mode-shop .home-shop-landing h1{font-size:clamp(44px,13vw,58px)!important}
  .home-mode-shop .home-shop-intro{font-size:16px!important}
  .home-shop-products-head h2{font-size:28px!important}
}

/* =========================================================
   Admin / Taille des textes
   ========================================================= */
.typography-admin-main{padding-bottom:150px!important}
.typography-admin-title{max-width:980px}
.typography-toolbar-card{padding:18px 20px!important;margin-bottom:14px!important}
.typography-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px}
.typography-search-wrap{display:grid;gap:7px;flex:1;max-width:680px}
.typography-search-wrap>span{color:#ff777c;font-size:16px;font-weight:800;letter-spacing:.1em}
.typography-search-wrap input{width:100%;height:46px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#080c13;color:#fff;padding:0 14px;font:400 17px/1 "Barlow Condensed",sans-serif;outline:none}
.typography-search-wrap input:focus{border-color:#e31e26;box-shadow:0 0 0 2px rgba(227,30,38,.1)}
.typography-toolbar-note{display:grid;gap:2px;text-align:right;color:#9ba3af}.typography-toolbar-note strong{color:#fff;font-size:19px}.typography-toolbar-note span{font-size:16px}
.typography-device-legend{display:grid;grid-template-columns:minmax(300px,1fr) 96px 96px 96px 138px 104px;gap:10px;margin-top:14px;padding:10px 12px;border-top:1px solid rgba(255,255,255,.08);color:#747d89;font-size:14px;font-weight:800;letter-spacing:.08em}.typography-device-legend span:not(:first-child){text-align:center}
.typography-groups{display:grid;gap:11px}.typography-group{overflow:hidden;border-radius:12px}.typography-group[hidden]{display:none!important}.typography-group>summary{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 18px;cursor:pointer;list-style:none;background:linear-gradient(90deg,rgba(227,30,38,.1),rgba(8,11,18,.12));border-bottom:1px solid rgba(255,255,255,.08)}.typography-group>summary::-webkit-details-marker{display:none}.typography-group>summary>span{color:#fff;font-size:20px;font-weight:700;letter-spacing:.06em}.typography-group>summary>small{color:#969eaa;font-size:16px}.typography-group:not([open])>summary{border-bottom:0}
.typography-group-body{padding:0 14px 14px}.typography-group-actions{display:flex;justify-content:flex-end;padding:10px 0}.typography-clear-group{min-height:32px!important;height:32px!important;padding:0 10px!important;font-size:13px!important}
.typography-rule-row{display:grid;grid-template-columns:minmax(300px,1fr) 96px 96px 96px 138px 104px;gap:10px;align-items:center;min-height:74px;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(4,7,12,.33);margin-bottom:7px}.typography-rule-row[hidden]{display:none!important}.typography-rule-row:hover{border-color:rgba(227,30,38,.3);background:rgba(227,30,38,.035)}
.typography-rule-copy{display:grid;gap:5px;min-width:0}.typography-rule-copy>strong{font-size:18px;color:#f2f3f5;font-weight:600}.typography-rule-meta{display:flex;align-items:center;gap:8px;min-width:0}.typography-rule-meta a{flex:0 0 auto;color:#ff777c;text-decoration:none;font-size:13px;font-weight:800;letter-spacing:.06em}.typography-rule-meta code{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#717a87;font:400 12px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace}
.typography-size-field{display:grid;gap:4px}.typography-size-field>span{display:none;color:#818a96;font-size:12px;font-weight:800}.typography-size-field input,.typography-size-field select,.typography-custom-row input,.typography-custom-row select{width:100%;height:40px;border:1px solid rgba(255,255,255,.13);border-radius:7px;background:#080c13;color:#fff;padding:0 9px;font:500 17px/1 "Barlow Condensed",sans-serif;text-align:center;outline:none}.typography-size-field select,.typography-custom-row select{cursor:pointer;color-scheme:dark}.typography-size-field input:focus,.typography-size-field select:focus,.typography-custom-row input:focus,.typography-custom-row select:focus{border-color:#e31e26;box-shadow:0 0 0 2px rgba(227,30,38,.09)}.typography-size-field input::placeholder,.typography-custom-row input::placeholder{color:#555e6b}.typography-size-field input:not(:placeholder-shown),.typography-size-field select:has(option:checked:not([value=""])),.typography-custom-row select:has(option:checked:not([value=""])){border-color:rgba(227,30,38,.45);background:rgba(227,30,38,.055)}
.typography-custom-group{margin-top:14px}.typography-custom-help{margin:14px 0 10px!important;color:#929aa6!important;font-size:16px!important;line-height:1.45!important}.typography-custom-help code{color:#fff;background:rgba(255,255,255,.05);padding:2px 5px;border-radius:4px}.typography-custom-rules{display:grid;gap:8px}.typography-custom-row{display:grid;grid-template-columns:minmax(140px,.55fr) minmax(230px,1.1fr) 82px 82px 82px 125px 94px 34px;gap:8px;align-items:end;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(4,7,12,.34)}.typography-custom-row label{display:grid;gap:5px}.typography-custom-row label>span{color:#7f8895;font-size:12px;font-weight:800;letter-spacing:.07em}.typography-custom-row input[type=text]{text-align:left;font-size:15px}.typography-remove-custom{width:34px;height:40px;border:1px solid rgba(227,30,38,.35)!important;border-radius:7px!important;background:rgba(227,30,38,.08)!important;color:#ff7b80!important;font-size:24px!important;line-height:1!important;cursor:pointer}.typography-add-custom{margin-top:10px;min-height:38px!important;font-size:15px!important}
.typography-savebar{position:sticky;z-index:30;bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:16px;padding:13px 14px;border:1px solid rgba(227,30,38,.4);border-radius:12px;background:rgba(8,11,18,.96);box-shadow:0 18px 55px rgba(0,0,0,.48),0 0 20px rgba(227,30,38,.08);backdrop-filter:blur(14px)}.typography-savebar>div{display:grid;gap:2px}.typography-savebar>div strong{font-size:18px}.typography-savebar>div span{color:#89929e;font-size:15px}.typography-savebar>.red-btn{min-width:250px;min-height:46px}
.typography-reset-form{display:flex;justify-content:flex-end;margin-top:12px}.typography-reset-form .admin-reset-btn{border-color:rgba(227,30,38,.45);color:#ff8d91}
@media(max-width:1100px){.typography-device-legend{display:none}.typography-rule-row{grid-template-columns:minmax(230px,1fr) repeat(3,82px) 118px 88px}.typography-custom-row{grid-template-columns:1fr 1fr repeat(3,76px) 110px 84px 34px}.typography-custom-selector{grid-column:auto}}
@media(max-width:760px){.typography-toolbar{align-items:stretch;flex-direction:column}.typography-toolbar-note{text-align:left}.typography-rule-row{grid-template-columns:repeat(2,1fr);gap:8px}.typography-rule-copy{grid-column:1/-1}.typography-size-field>span{display:block}.typography-custom-row{grid-template-columns:repeat(4,1fr)}.typography-custom-row>label:first-child,.typography-custom-selector{grid-column:1/-1}.typography-remove-custom{grid-column:4;justify-self:end}.typography-savebar{align-items:stretch;flex-direction:column;bottom:8px}.typography-savebar>.red-btn{width:100%;min-width:0}.typography-reset-form .admin-reset-btn{width:100%}}
@media(max-width:480px){.typography-group-body{padding-left:8px;padding-right:8px}.typography-rule-row{grid-template-columns:1fr}.typography-rule-copy,.typography-size-field{grid-column:1}.typography-rule-meta{align-items:flex-start;flex-direction:column}.typography-rule-meta code{width:100%}.typography-custom-row{grid-template-columns:1fr}.typography-custom-row>label,.typography-custom-row>label:first-child,.typography-custom-selector,.typography-remove-custom{grid-column:1}.typography-remove-custom{justify-self:end}}

/* =========================================================
   MINI-JEUX — DÉMINEUR
   Visuel porté fidèlement depuis le ZIP Figma fourni.
   Toutes les règles restent sous .minesweeper-* pour ne pas
   modifier le reste du site et rester réglables via /admin/taille-texte.
   ========================================================= */
.minigames-page{position:relative;background:#080B12!important;overflow-x:hidden}
.minigames-page .page-bg{opacity:.72!important;visibility:visible!important;filter:saturate(.95) brightness(.74)!important}
.minesweeper-main{
  width:min(1400px,calc(100vw - 32px))!important;
  max-width:1400px!important;
  padding-top:24px!important;
  padding-bottom:120px!important;
  font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  color:#fff;
}
.minesweeper-main *{box-sizing:border-box}
.minesweeper-shell{
  width:100%;
  overflow:hidden;
  border:1px solid #202A37;
  border-radius:16px;
  background:rgba(13,19,29,.92);
  backdrop-filter:blur(3px);
  box-shadow:0 10px 35px rgba(0,0,0,.35);
}
.minesweeper-layout{display:flex;min-height:520px}
.minesweeper-primary{display:flex;flex:1 1 auto;min-width:0;flex-direction:column;gap:16px;padding:20px}
.minesweeper-sidebar{display:flex;flex:0 0 288px;flex-direction:column;gap:12px;padding:20px;border-left:1px solid #202A37}
.minesweeper-topbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.minesweeper-stats{display:flex;gap:12px}
.minesweeper-controls{display:flex;align-items:flex-end;gap:12px;margin-left:auto}
.minesweeper-stat-card,
.minesweeper-difficulty-card,
.minesweeper-side-card{
  border:1px solid #202A37;
  background:#111722;
  box-shadow:0 4px 16px rgba(0,0,0,.25);
}
.minesweeper-stat-card{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.3)}
.minesweeper-icon{display:grid;place-items:center;flex:0 0 auto}
.minesweeper-icon svg{display:block;width:22px;height:22px}
.minesweeper-icon-clock svg{width:20px;height:20px}
.minesweeper-stat-copy{display:grid;gap:1px}
.minesweeper-stat-label,
.minesweeper-difficulty-label{
  color:#7D8794;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:10px!important;
  font-weight:600!important;
  letter-spacing:.12em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
}
.minesweeper-stat-value{
  color:#fff;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:22px!important;
  font-weight:700!important;
  letter-spacing:0!important;
  line-height:1.1!important;
}
.minesweeper-mines-left{color:#D62828!important}
.minesweeper-restart-wrap{display:flex;flex-direction:column;align-items:center;gap:4px}
.minesweeper-restart{
  position:relative;
  display:flex;
  width:60px!important;
  height:60px!important;
  min-width:60px!important;
  min-height:60px!important;
  align-items:center;
  justify-content:center;
  padding:0!important;
  border:3px solid #D62828!important;
  border-radius:50%!important;
  background:#0D131D!important;
  box-shadow:0 0 0 2px #080B12,0 0 16px rgba(214,40,40,.25)!important;
  opacity:1!important;
  cursor:pointer;
  transition:transform .1s ease;
}
.minesweeper-restart:hover{transform:scale(1.05)}
.minesweeper-restart:active{transform:scale(.95)}
.minesweeper-restart span,.minesweeper-restart svg{display:block}
.minesweeper-restart-label{
  color:#7D8794;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:9px!important;
  font-weight:600!important;
  letter-spacing:.14em!important;
  line-height:1.2!important;
}
.minesweeper-difficulty-card{display:flex;min-width:320px;flex-direction:column;gap:8px;padding:12px 16px;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.3)}
.minesweeper-difficulty-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.minesweeper-difficulty-button{
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  padding:7px 9px!important;
  border:1px solid #202A37!important;
  border-radius:8px!important;
  background:#161E2A!important;
  color:#AEB4BE!important;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:11px!important;
  font-weight:600!important;
  letter-spacing:.06em!important;
  line-height:1!important;
  opacity:1!important;
  cursor:pointer;
  transition:all .15s ease;
}
.minesweeper-difficulty-button:hover{border-color:#354254!important;color:#fff!important}
.minesweeper-difficulty-button.is-active{border-color:#D62828!important;background:#D62828!important;color:#fff!important;box-shadow:0 0 10px rgba(214,40,40,.35)!important}

.minesweeper-board-stage{position:relative;display:flex;min-height:360px;flex:1 1 auto;flex-direction:column}
.minesweeper-board-scroll{flex:1 1 auto;overflow:auto;padding:2px;-ms-overflow-style:none;scrollbar-width:none;overscroll-behavior:contain;touch-action:pan-x pan-y}
.minesweeper-board-scroll::-webkit-scrollbar{display:none}
.minesweeper-board{
  --mine-cell-size:32px;
  --mine-number-size:14px;
  display:inline-grid;
  gap:2px;
  align-content:start;
  justify-content:start;
}
.minesweeper-cell{
  display:flex!important;
  width:var(--mine-cell-size)!important;
  height:var(--mine-cell-size)!important;
  min-width:var(--mine-cell-size)!important;
  min-height:var(--mine-cell-size)!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #35404D!important;
  border-radius:2px!important;
  background:linear-gradient(145deg,#242D39,#18212C)!important;
  box-shadow:inset 1px 1px 1px rgba(255,255,255,.05)!important;
  color:#fff!important;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:var(--mine-number-size)!important;
  font-weight:700!important;
  letter-spacing:0!important;
  line-height:1!important;
  text-transform:none!important;
  opacity:1!important;
  cursor:pointer;
  user-select:none!important;
  -webkit-user-select:none!important;
  -moz-user-select:none!important;
  -webkit-touch-callout:none!important;
  -webkit-tap-highlight-color:transparent!important;
  touch-action:manipulation;
  transition:border-color .075s ease,transform .075s ease;
}
.minesweeper-board,.minesweeper-board *{-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important}
.minesweeper-cell>*,.minesweeper-cell svg{pointer-events:none}
.minesweeper-cell:hover{border-color:#4A5568!important}
.minesweeper-cell.is-revealed{border-color:#243040!important;background:#1A2130!important;box-shadow:none!important;cursor:default}
.minesweeper-cell.is-mine{border-color:#35404D!important;background:#1C1A1A!important}
.minesweeper-cell.is-exploded{border-color:#D62828!important;background:#3D0A0A!important;box-shadow:inset 0 0 8px rgba(214,40,40,.4)!important}
.minesweeper-cell.is-flagged{border-color:#D62828!important;box-shadow:inset 1px 1px 1px rgba(255,255,255,.05),0 0 6px rgba(214,40,40,.2)!important}
.minesweeper-cell svg{display:block;flex:0 0 auto}
.minesweeper-cell-number{
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:var(--mine-number-size)!important;
  font-weight:700!important;
  letter-spacing:0!important;
  line-height:1!important;
}
@keyframes minesweeperCellReveal{0%{transform:scale(.85);opacity:.4}100%{transform:scale(1);opacity:1}}
@keyframes minesweeperMineExplode{0%{transform:scale(1)}30%{transform:scale(1.3)}60%{transform:scale(.9)}100%{transform:scale(1)}}
@keyframes minesweeperMinePulse{0%,100%{box-shadow:0 0 0 0 rgba(214,40,40,.4)}50%{box-shadow:0 0 0 6px rgba(214,40,40,0)}}
@keyframes minesweeperFadeSlide{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.minesweeper-cell.cell-reveal{animation:minesweeperCellReveal .13s ease-out forwards}
.minesweeper-cell.mine-explode{animation:minesweeperMineExplode .25s ease-out,minesweeperMinePulse 1.2s ease-in-out infinite}

.minesweeper-overlay{position:absolute;inset:0;z-index:10;display:flex;align-items:flex-start;justify-content:center;padding-top:48px;border-radius:12px;background:rgba(8,11,18,.65);backdrop-filter:blur(2px);animation:minesweeperFadeSlide .2s ease-out forwards}
.minesweeper-overlay[hidden]{display:none!important}
.minesweeper-overlay-card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 32px;border:1px solid #354254;border-radius:16px;background:#111722;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.minesweeper-overlay-card.is-won{border-color:#D62828}
.minesweeper-overlay-title{color:#D62828;font-family:"Inter",system-ui,sans-serif!important;font-size:24px!important;font-weight:700!important;letter-spacing:.08em!important;line-height:1.15!important}
.minesweeper-overlay-text{margin:0!important;color:#AEB4BE!important;font-family:"Inter",system-ui,sans-serif!important;font-size:14px!important;line-height:1.4!important}
.minesweeper-overlay-text strong{color:#fff;font-weight:600}
.minesweeper-overlay-record{padding:4px 12px;border:1px solid rgba(128,214,43,.3);border-radius:999px;background:rgba(128,214,43,.15);color:#80D62B;font-family:"Inter",system-ui,sans-serif!important;font-size:12px!important;font-weight:700!important;line-height:1.2!important}
.minesweeper-overlay-button{
  min-height:0!important;
  margin-top:4px;
  padding:10px 24px!important;
  border:0!important;
  border-radius:8px!important;
  background:#D62828!important;
  color:#fff!important;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:14px!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  line-height:1!important;
  opacity:1!important;
  cursor:pointer;
}
.minesweeper-overlay-button:hover{background:#EA2D2D!important}


.minesweeper-side-card{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:12px}
.minesweeper-side-heading{display:flex;align-items:center;gap:8px}
.minesweeper-side-heading>span:first-child{display:grid;place-items:center;flex:0 0 16px}
.minesweeper-side-heading svg{display:block;width:16px;height:16px}
.minesweeper-side-title{
  color:#fff;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.1em!important;
  line-height:1.2!important;
}
.minesweeper-best-list{display:grid}
.minesweeper-best-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid #202A37}
.minesweeper-best-row:first-child{padding-top:0}
.minesweeper-best-row:last-child{padding-bottom:0;border-bottom:0}
.minesweeper-best-row span,
.minesweeper-best-row strong{
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:13px!important;
  line-height:1.25!important;
}
.minesweeper-best-row span{color:#AEB4BE;font-weight:400}
.minesweeper-best-row strong{color:#354254;font-weight:700}
.minesweeper-best-row.is-active span{color:#fff;font-weight:600}
.minesweeper-best-row.is-active strong{color:#354254}
.minesweeper-best-row.is-active.has-score strong{color:#D62828}
.minesweeper-best-row.has-score:not(.is-active) strong{color:#80D62B}
.minesweeper-instructions{display:grid;gap:8px}
.minesweeper-instructions>div{display:flex;align-items:flex-start;gap:10px}
.minesweeper-instruction-icon{display:block;flex:0 0 13px;margin-top:2px}
.minesweeper-instruction-icon svg{display:block;width:13px;height:13px}
.minesweeper-instruction-text,
.minesweeper-side-text{
  color:#AEB4BE!important;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1.5!important;
}
.minesweeper-side-text{margin:0!important}
.minesweeper-cta-title{color:#fff;font-family:"Inter",system-ui,sans-serif!important;font-size:13px!important;font-weight:700!important;line-height:1.3!important}
.minesweeper-cta-button{
  display:flex!important;
  width:100%!important;
  min-height:0!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:10px 12px!important;
  border:0!important;
  border-radius:8px!important;
  background:#D62828!important;
  color:#fff!important;
  box-shadow:0 2px 8px rgba(214,40,40,.25)!important;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:13px!important;
  font-weight:700!important;
  letter-spacing:.06em!important;
  line-height:1!important;
  opacity:1!important;
  cursor:pointer;
  transition:background .15s ease,box-shadow .15s ease,transform .15s ease;
}
.minesweeper-cta-button span{display:inline-block;transition:transform .15s ease}
.minesweeper-cta-button:hover{transform:translateY(-1px);background:#EA2D2D!important;box-shadow:0 6px 20px rgba(214,40,40,.4)!important}
.minesweeper-cta-button:hover span{transform:translateX(3px)}
.minesweeper-mobile-hint{display:none;margin-top:12px;text-align:center;color:#7D8794;font-family:"Inter",system-ui,sans-serif;font-size:11px}

@media(max-width:1100px){
  .minesweeper-layout{flex-direction:column}
  .minesweeper-sidebar{display:grid;border-top:1px solid #202A37;border-left:0}
  .minesweeper-board-stage{min-height:400px}
}
@media(max-width:820px){
  .minesweeper-main{width:min(100% - 24px,1400px)!important;padding-top:18px!important;padding-bottom:50px!important}
  .minesweeper-primary{padding:16px}
  .minesweeper-sidebar{grid-template-columns:1fr 1fr;padding:16px}
  .minesweeper-cta-card{grid-column:1/-1}
  .minesweeper-topbar{align-items:flex-start}
  .minesweeper-controls{width:100%;margin-left:0;justify-content:space-between}
  .minesweeper-board-stage{min-height:360px}
}
@media(max-width:640px){
  .minesweeper-main{width:calc(100vw - 16px)!important;padding-top:10px!important}
  .minesweeper-shell{border-radius:14px}
  .minesweeper-primary{gap:12px;padding:12px}
  .minesweeper-topbar{gap:10px}
  .minesweeper-stats{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .minesweeper-stat-card{gap:8px;padding:10px 11px}
  .minesweeper-controls{align-items:flex-end;gap:8px}
  .minesweeper-restart{width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important}
  .minesweeper-difficulty-card{min-width:0;flex:1;padding:10px 11px}
  .minesweeper-difficulty-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .minesweeper-difficulty-button{flex:1;padding:7px 6px!important}
  .minesweeper-board-stage{min-height:420px}
  .minesweeper-sidebar{padding:12px}
  .minesweeper-cta-card{grid-column:auto}
  .minesweeper-board{--mine-cell-size:42px;--mine-number-size:19px}
  .minesweeper-cell{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}
  .minesweeper-mobile-hint{display:block}
  .minesweeper-overlay{padding:28px 10px 10px}
  .minesweeper-overlay-card{width:min(100%,320px);padding:20px}
}
@media(max-width:390px){
  .minesweeper-stat-card{padding:9px}
  .minesweeper-icon svg{width:19px;height:19px}
  .minesweeper-controls{align-items:stretch}
  .minesweeper-restart-wrap{justify-content:center}
  .minesweeper-difficulty-button{font-size:9px!important;letter-spacing:.04em!important}
}

/* Démineur — joueur connecté, record serveur et historique */
.minesweeper-sidebar{width:310px;flex-basis:310px}
.minesweeper-player-card{gap:9px}
.minesweeper-player-pseudo{
  display:block;
  overflow:hidden;
  color:#fff;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:18px!important;
  font-weight:800!important;
  letter-spacing:.02em!important;
  line-height:1.15!important;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.minesweeper-login-link{color:#D62828;text-decoration:none;font-weight:700}
.minesweeper-login-link:hover{text-decoration:underline}
.minesweeper-best-row>span{display:grid;gap:1px;min-width:0}
.minesweeper-best-row>span>b{
  color:#AEB4BE;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:13px!important;
  font-weight:600!important;
  line-height:1.2!important;
}
.minesweeper-best-row>span>small{
  display:block;
  max-width:148px;
  overflow:hidden;
  color:#667181;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:10px!important;
  font-weight:500!important;
  line-height:1.25!important;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.minesweeper-best-row.is-active>span>b{color:#fff}
.minesweeper-best-row.has-score>strong{color:#D62828}
.minesweeper-best-row.has-score:not(.is-active)>strong{color:#80D62B}
.minesweeper-history-card{min-height:0}
.minesweeper-history-list{display:grid;max-height:220px;overflow:auto;-ms-overflow-style:none;scrollbar-width:none}
.minesweeper-history-list::-webkit-scrollbar{display:none}
.minesweeper-history-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #202A37}
.minesweeper-history-row:last-child{border-bottom:0}
.minesweeper-history-row>span{display:grid;gap:1px;min-width:0}
.minesweeper-history-row b,
.minesweeper-history-row strong{
  color:#fff;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.2!important;
}
.minesweeper-history-row small{
  color:#7D8794;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:9px!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  line-height:1.2!important;
}
.minesweeper-history-row.is-won small,.minesweeper-history-row.is-won>strong{color:#80D62B}
.minesweeper-history-row.is-lost small{color:#D96B70}
.minesweeper-history-empty{
  margin:0!important;
  color:#7D8794!important;
  font-family:"Inter",system-ui,sans-serif!important;
  font-size:11px!important;
  line-height:1.4!important;
}
.minesweeper-history-empty[hidden]{display:none!important}
@media(max-width:1100px){.minesweeper-sidebar{width:auto;flex-basis:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.minesweeper-cta-card{grid-column:auto}}
@media(max-width:640px){.minesweeper-sidebar{display:flex}.minesweeper-player-pseudo{font-size:17px!important}.minesweeper-history-list{max-height:190px}}

/* PC BUILDER — intégré au CSS principal pour rester disponible avant l’hydratation React */
.pc-builder-page {
  min-height: 100vh;
  overflow: visible !important;
}

.pc-builder-page::after {
  display: none;
}

.pc-builder-page::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: url("/assets/pc-builder-background.webp");
  background-position: center right;
  background-repeat: no-repeat;
  background-size: cover;
}

.pc-builder-page .footer {
  position: relative !important;
  inset: auto !important;
  margin-top: auto;
  z-index: 3;
}

#pc-builder-root {
  --bg: #080b12;
  --card: #111722;
  --card2: #151c28;
  --surface: #1b2330;
  --red: #d62828;
  --red-hover: #ef3333;
  --red-dark: #9e1e1e;
  --text: #fff;
  --text-secondary: #aeb4be;
  --text-tertiary: #737b88;
  --border: rgba(255, 255, 255, 0.08);
  --border-active: rgba(214, 40, 40, 0.65);
  --success: #31c769;
  --warning: #ffa62b;
  --error: #ff4d4d;
  --info: #3b82f6;
  position: relative;
  z-index: 2;
  flex: 1 0 auto;
  width: 100%;
  max-width: none;
  margin-right: auto;
  margin-left: auto;
  min-width: 0;
  min-height: calc(100vh - 179px);
  background: transparent;
  color: var(--text);
  font-family: "Inter", sans-serif;
}

#pc-builder-root,
#pc-builder-root * {
  box-sizing: border-box;
}

#pc-builder-root button,
#pc-builder-root input,
#pc-builder-root select {
  font: inherit;
}

#pc-builder-root ::-webkit-scrollbar {
  width: 4px;
  height: 4px;
}

#pc-builder-root ::-webkit-scrollbar-track {
  background: transparent;
}

#pc-builder-root ::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.14);
  border-radius: 2px;
}

#pc-builder-root ::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.24);
}

@keyframes pulse-red {
  0%, 100% { box-shadow: 0 0 0 0 rgba(214, 40, 40, 0.4); }
  50% { box-shadow: 0 0 0 8px rgba(214, 40, 40, 0); }
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes checkPop {
  0% { transform: scale(0); }
  60% { transform: scale(1.2); }
  100% { transform: scale(1); }
}

@keyframes countUp {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes barFill {
  from { width: 0%; }
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

@keyframes dots {
  0%, 20% { content: "."; }
  40% { content: ".."; }
  60%, 100% { content: "..."; }
}

#pc-builder-root .animate-fadein { animation: fadeInUp 0.3s ease forwards; }
#pc-builder-root .animate-bar { animation: barFill 0.8s ease forwards; }
#pc-builder-root .font-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
#pc-builder-root .font-heading { font-family: "Inter", sans-serif; }
#pc-builder-root .glow-red { box-shadow: 0 0 20px rgba(214, 40, 40, 0.3); }
#pc-builder-root .transition-all { transition: all 0.2s ease; }

#pc-builder-root .pc-builder-shell {
  background: transparent !important;
}

#pc-builder-root .pc-builder-landing {
  position: relative;
}

#pc-builder-root .pc-builder-hero {
  background-image: none;
}

#pc-builder-root .pc-builder-section {
  background: rgba(8, 11, 18, 0.78) !important;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

#pc-builder-root .pc-builder-component-nav {
  background: transparent !important;
}

#pc-builder-root .pc-builder-component-icon-image {
  display: block;
  width: 24px;
  height: 24px;
  object-fit: contain;
}

#pc-builder-root .pc-builder-workspace {
  background: rgba(8, 11, 18, 0.78) !important;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

#pc-builder-root .pc-builder-back-button {
  min-height: 40px;
  margin: 0 0 22px;
  padding: 0 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 9px;
  background: rgba(8, 11, 18, 0.54);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.05em;
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease;
}

#pc-builder-root .pc-builder-back-button:hover {
  border-color: rgba(214, 40, 40, 0.7);
  background: rgba(214, 40, 40, 0.14);
}

@media (max-width: 1180px) {
  #pc-builder-root .pc-builder-component-nav {
    width: 210px !important;
  }

  #pc-builder-root .pc-builder-main {
    padding: 22px !important;
  }

}

@media (max-width: 768px) {
  #pc-builder-root,
  #pc-builder-root .pc-builder-shell {
    min-height: calc(100vh - 132px) !important;
  }

  #pc-builder-root .pc-builder-hero {
    min-height: auto !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 44px;
    padding: 52px 18px 44px !important;
    background-image: none;
  }

  .pc-builder-page::before {
    background-position: 66% center;
  }

  #pc-builder-root .pc-builder-hero-copy {
    width: 100%;
    max-width: none !important;
  }

  #pc-builder-root .pc-builder-hero-visual {
    width: 100%;
    flex: 0 0 auto !important;
    transform: scale(0.92);
  }

  #pc-builder-root .pc-builder-hero-stats {
    justify-content: space-between;
    gap: 12px !important;
  }

  #pc-builder-root .pc-builder-section {
    padding: 44px 18px !important;
  }

  #pc-builder-root .pc-builder-upgrade-grid,
  #pc-builder-root .pc-builder-upgrade-fields,
  #pc-builder-root .pc-builder-final-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  #pc-builder-root .pc-builder-workspace {
    display: block !important;
    min-height: 0 !important;
  }

  #pc-builder-root .pc-builder-component-nav {
    position: sticky !important;
    top: 0 !important;
    z-index: 20;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }

  #pc-builder-root .pc-builder-component-nav > div:first-child,
  #pc-builder-root .pc-builder-component-nav > div:last-child {
    display: none !important;
  }

  #pc-builder-root .pc-builder-component-nav > button {
    min-width: 176px !important;
    width: auto !important;
    border-left: 0 !important;
    border-bottom: 3px solid transparent !important;
  }

  #pc-builder-root .pc-builder-main {
    overflow: visible !important;
    padding: 20px 14px 96px !important;
  }

  #pc-builder-root .pc-builder-back-button {
    width: 100%;
    margin-bottom: 18px;
  }

  #pc-builder-root .pc-builder-final-summary h2 {
    font-size: 29px !important;
  }

  #pc-builder-root .hidden-mobile { display: none !important; }
  #pc-builder-root .mobile-sticky { display: flex !important; }
}

@media (max-width: 480px) {
  #pc-builder-root .pc-builder-hero {
    padding-inline: 14px !important;
  }

  #pc-builder-root .pc-builder-hero-copy > div:nth-of-type(2) {
    width: 100%;
  }

  #pc-builder-root .pc-builder-hero-copy > div:nth-of-type(2) > button {
    flex: 1 1 100%;
  }

  #pc-builder-root .pc-builder-hero-visual {
    transform: scale(0.8);
    margin-block: -25px;
  }
}

/* Largeur publique complète
   Les pages de gestion et Maps conservent volontairement leur mise en page.
   Les marges sont internes : les conteneurs occupent bien toute la largeur
   disponible tout en restant confortables sur les petits écrans. */
body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.inner-page:not(.admin-page):not(.moderator-mfa-page) {
  --content-width: 100%;
  --public-content-gutter: clamp(18px, 2.1vw, 40px);
}

body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.inner-page:not(.admin-page):not(.moderator-mfa-page) > .header {
  padding-left: var(--public-content-gutter);
  padding-right: var(--public-content-gutter);
}

body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.inner-page:not(.admin-page):not(.moderator-mfa-page) > .inner-main {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  padding-left: var(--public-content-gutter);
  padding-right: var(--public-content-gutter);
}

body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.inner-page:not(.admin-page):not(.moderator-mfa-page) > .hero,
body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.inner-page:not(.admin-page):not(.moderator-mfa-page) > .home-shop-products {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  padding-left: var(--public-content-gutter);
  padding-right: var(--public-content-gutter);
}

body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.inner-page:not(.admin-page):not(.moderator-mfa-page) > .form-panel {
  width: calc(100% - var(--public-content-gutter) - var(--public-content-gutter));
  max-width: none;
}

body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.inner-page:not(.admin-page):not(.moderator-mfa-page) > #pc-builder-root {
  width: 100%;
  max-width: none;
}

body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.inner-page:not(.admin-page):not(.moderator-mfa-page) .minesweeper-main {
  width: 100% !important;
  max-width: none !important;
}

body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.inner-page:not(.admin-page):not(.moderator-mfa-page) > .footer .footer-line {
  left: var(--public-content-gutter);
  right: var(--public-content-gutter);
  width: auto;
  transform: none;
}

body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.inner-page:not(.admin-page):not(.moderator-mfa-page) > .footer .footer-content {
  left: 0;
  width: 100%;
  max-width: none;
  padding-left: var(--public-content-gutter);
  padding-right: var(--public-content-gutter);
  transform: none;
}

/* Dimensions historiques des éléments dans le nouveau canevas pleine largeur.
   L'espace supplémentaire ajoute des colonnes sans étirer les cartes. */
body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.inner-page:not(.admin-page):not(.moderator-mfa-page) .game-list > .game-card {
  width: min(100%, 1160px);
  justify-self: center;
}

body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.inner-page:not(.admin-page):not(.moderator-mfa-page) .minesweeper-shell {
  width: min(100%, 1400px);
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 1181px) {
  body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
    .page.inner-page:not(.admin-page):not(.moderator-mfa-page) .shop-grid {
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  }

  body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
    .page.inner-page:not(.admin-page):not(.moderator-mfa-page) .home-shop-product-grid {
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  }
}

@media (min-width: 1280px) {
  body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
    .page.inner-page:not(.admin-page):not(.moderator-mfa-page)
    :is(.public-summary-grid, .about-shop-values) {
    grid-template-columns: repeat(auto-fill, minmax(300px, 377px));
    justify-content: center;
  }
}

/* Accueil Shop : une seule rangée dont le nombre de colonnes est calculé
   depuis la largeur réellement disponible dans le navigateur. */
body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.home-mode-shop .home-shop-product-grid {
  grid-template-columns: none;
  grid-auto-flow: column;
  grid-auto-columns: clamp(250px, 15vw, 285px);
  justify-content: start;
  overflow-x: hidden;
  overflow-y: hidden;
}

body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
  .page.home-mode-shop .home-shop-product-grid[data-responsive-columns="true"] {
  grid-template-columns: repeat(var(--home-shop-column-count, 1), minmax(0, 1fr));
  grid-auto-flow: row;
  grid-auto-columns: auto;
}

@media (max-width: 980px) {
  body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
    .page.home-mode-shop .home-shop-product-grid {
    grid-auto-columns: calc(50% - 7px);
  }
}

@media (max-width: 520px) {
  body:not([data-page="admin"]):not([data-page="moderator"]):not([data-page="maps"])
    .page.home-mode-shop .home-shop-product-grid {
    grid-auto-columns: calc(50% - 4px);
  }
}

/* Shop premium — adaptation fonctionnelle du design update shop.zip. */
.shop-premium-page {
  --shop-premium-bg: #080b12;
  --shop-premium-surface: #0c1018;
  --shop-premium-card: #111722;
  --shop-premium-red: #d62828;
  --shop-premium-muted: #aeb4be;
  background: linear-gradient(180deg, #080b12 0%, #090d15 48%, #070a10 100%);
}

.shop-premium-page::after {
  position: fixed;
  background: linear-gradient(180deg, rgba(8, 11, 18, .74), rgba(8, 11, 18, .94) 44%, rgba(7, 10, 16, .98));
}

.shop-premium-page > .page-bg {
  opacity: .16;
  filter: saturate(.7) brightness(.46);
}

.shop-premium-page .shop-premium-main {
  width: calc(100% - clamp(32px, 4vw, 72px));
  max-width: none;
  padding: 18px 0 96px;
}

.shop-store-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 16px;
  align-items: start;
}

.shop-store-content {
  min-width: 0;
}

.shop-premium-hero {
  position: relative;
  isolation: isolate;
  min-height: 310px;
  overflow: hidden;
  border: 0;
  border-radius: 8px;
  background: #0b1018;
  box-shadow: 0 24px 64px rgba(0, 0, 0, .28);
}

.shop-premium-hero-art,
.shop-premium-hero-shade {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.shop-premium-hero-art {
  z-index: -2;
  object-fit: cover;
  object-position: center 28%;
  opacity: .92;
}

.shop-premium-hero-shade {
  z-index: -1;
  background:
    linear-gradient(90deg, #080c14 0%, rgba(8, 12, 20, .98) 31%, rgba(8, 12, 20, .66) 54%, rgba(8, 12, 20, .1) 84%),
    linear-gradient(180deg, rgba(8, 11, 18, .08), rgba(8, 11, 18, .42));
}

.shop-premium-hero-copy {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: min(58%, 690px);
  min-height: 310px;
  padding: 32px 38px;
  border: 0;
}

.shop-premium-hero-copy > p {
  margin: 0 0 5px;
  color: #ea2027;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: .11em;
}

.shop-premium-hero-copy h1 {
  margin: 0;
  color: #fff;
  font-family: "Teko", "Barlow Condensed", Impact, sans-serif;
  font-size: clamp(52px, 4.2vw, 76px);
  font-weight: 700;
  letter-spacing: .025em;
  line-height: .86;
  text-transform: uppercase;
  text-shadow: 0 6px 24px rgba(0, 0, 0, .5);
}

.shop-premium-hero-copy h1 span {
  color: #e31e26;
}

.shop-premium-hero-copy > strong {
  margin-top: 9px;
  color: #fff;
  font-size: 17px;
  letter-spacing: .025em;
}

.shop-premium-benefits {
  display: flex;
  gap: 16px;
  margin-top: 18px;
}

.shop-premium-benefits > div {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 8px;
}

.shop-premium-benefits > div > span {
  display: grid;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 6px;
  background: rgba(10, 14, 22, .74);
}

.shop-premium-benefits img {
  width: 17px;
  height: 17px;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.shop-premium-benefits p {
  display: grid;
  gap: 1px;
  margin: 0;
  line-height: 1.15;
}

.shop-premium-benefits b {
  color: #fff;
  font-size: 13px;
}

.shop-premium-benefits small {
  color: var(--shop-premium-muted);
  font-size: 12px;
  white-space: nowrap;
}

.shop-premium-hero-actions {
  display: flex;
  gap: 10px;
  margin-top: 20px;
}

.shop-premium-hero-actions > :is(button, a) {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 0 18px;
  border-radius: 6px;
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .035em;
  text-decoration: none;
}

.shop-premium-hero-actions button {
  border: 1px solid #d62828;
  background: #d62828;
}

.shop-premium-hero-actions a {
  border: 1px solid rgba(255, 255, 255, .22);
  background: rgba(10, 14, 22, .82);
}

.shop-premium-hero-actions > :is(button, a):hover,
.shop-premium-hero-actions > :is(button, a):focus-visible {
  border-color: #ea2027;
  background: #ea2027;
  box-shadow: 0 0 22px rgba(214, 40, 40, .2);
}

.shop-premium-hero-actions img {
  width: 17px;
  height: 17px;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.shop-premium-categories {
  margin-top: 15px;
}

.shop-premium-section-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
}

.shop-premium-section-title h2,
.shop-premium-catalog-head h2,
.shop-premium-side-card h2 {
  margin: 0;
  color: #fff;
  font-family: "Teko", "Barlow Condensed", Impact, sans-serif;
  font-size: 22px;
  font-weight: 600;
  letter-spacing: .065em;
  line-height: 1;
}

.shop-premium-section-title small {
  color: #737b88;
  font-size: 13px;
}

.shop-premium-category-list {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 108px;
  justify-content: start;
  gap: 8px;
  overflow-x: auto;
  padding: 2px 1px 6px;
  scrollbar-width: thin;
  scrollbar-color: #273040 transparent;
}

.shop-premium-category-card {
  display: flex;
  width: 100%;
  min-height: 0;
  min-width: 0;
  aspect-ratio: 1 / 1;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  gap: 0;
  padding: 8px 7px 7px;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 7px;
  background: linear-gradient(180deg, rgba(17, 23, 34, .96), rgba(10, 14, 22, .96));
  color: #aeb4be;
  text-align: center;
  text-decoration: none;
  transition: transform .18s ease, border-color .18s ease, color .18s ease, background .18s ease;
}

.shop-premium-category-card:hover,
.shop-premium-category-card:focus-visible,
.shop-premium-category-card.active {
  border-color: rgba(214, 40, 40, .7);
  background: #131b28;
  color: #fff;
  transform: translateY(-2px);
}

.shop-premium-category-card.active {
  box-shadow: inset 0 -3px 0 #d62828;
}

.shop-premium-category-card > span {
  display: grid;
  width: 75%;
  height: 75%;
  min-height: 0;
  flex: 0 0 75%;
  place-items: center;
}

.shop-premium-category-card img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: brightness(0) invert(.82);
  transition: filter .18s ease, transform .18s ease;
}
.shop-premium-category-card img.is-uploaded{filter:none}

.shop-premium-category-card:hover img,
.shop-premium-category-card:focus-visible img,
.shop-premium-category-card.active img {
  filter: brightness(0) invert(1) drop-shadow(0 5px 10px rgba(214, 40, 40, .25));
  transform: scale(1.06);
}
.shop-premium-category-card:hover img.is-uploaded,
.shop-premium-category-card:focus-visible img.is-uploaded,
.shop-premium-category-card.active img.is-uploaded{filter:drop-shadow(0 5px 10px rgba(214,40,40,.25))}

.shop-premium-category-card strong {
  overflow: hidden;
  width: 100%;
  max-width: 100%;
  margin-top: auto;
  padding-top: 4px;
  font-size: 13px;
  line-height: 1.15;
  text-overflow: ellipsis;
}

.shop-premium-catalog {
  scroll-margin-top: calc(var(--header-height) + 16px);
  margin-top: 16px;
}

.shop-premium-catalog-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 10px;
}

.shop-premium-catalog-head h2 {
  color: #e31e26;
}

.shop-premium-catalog-head p {
  margin: 3px 0 0;
  color: #fff;
  font-size: 15px;
}

.shop-premium-sort {
  display: flex;
  height: 38px;
  align-items: center;
  gap: 6px;
  padding: 0 7px 0 12px;
  border: 1px solid rgba(255, 255, 255, .15);
  border-radius: 6px;
  background: #0d121b;
  color: #aeb4be;
  font-size: 13px;
}

.shop-premium-sort:focus-within {
  border-color: rgba(214, 40, 40, .7);
}

.shop-premium-sort select {
  height: 100%;
  border: 0;
  outline: 0;
  background: #0d121b;
  color: #fff;
  font-weight: 700;
}

.shop-premium-page .shop-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)) !important;
  gap: 10px;
}

.shop-premium-page .shop-product-card {
  display: flex;
  min-width: 0;
  overflow: hidden;
  flex-direction: column;
  border: 1px solid rgba(214, 40, 40, .3);
  border-radius: 8px;
  background: linear-gradient(180deg, #0e1421, #090c14);
  box-shadow: none;
}

.shop-premium-page .shop-product-card:hover {
  border-color: rgba(214, 40, 40, .72);
  box-shadow: 0 16px 38px rgba(0, 0, 0, .32), 0 0 18px rgba(214, 40, 40, .06);
  transform: translateY(-3px);
}

.shop-premium-page .shop-product-image {
  aspect-ratio: 1 / 1;
  background-color: #07090e;
}

.shop-premium-page .shop-product-image::after {
  background:
    radial-gradient(circle at 50% 55%, rgba(214, 40, 40, .07), transparent 60%),
    linear-gradient(180deg, rgba(3, 5, 9, .02), rgba(3, 5, 9, .2));
}

.shop-premium-page .shop-badge {
  top: 7px;
  padding: 4px 6px;
  border-radius: 4px;
  font-size: 11px;
  letter-spacing: .045em;
}

.shop-premium-page .shop-badge-promo {
  left: 7px;
}

.shop-premium-page .shop-badge-stock,
.shop-premium-page .shop-badge-out {
  right: 7px;
}

.shop-premium-page .shop-product-body {
  display: flex;
  min-height: 176px;
  flex: 1;
  flex-direction: column;
  padding: 11px 11px 10px;
}

.shop-premium-page .shop-product-category {
  margin: 0 0 5px;
  color: #e31e26;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: .08em;
}

.shop-premium-page .shop-product-body h2 {
  display: -webkit-box;
  min-height: 38px;
  overflow: hidden;
  margin: 0 0 4px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: 15px;
  font-weight: 300;
  line-height: 1.27;
}

.shop-premium-page .shop-product-body > small {
  min-height: 17px;
  color: #737b88;
  font-size: 12px;
}

.shop-premium-page .shop-product-price {
  margin: auto 0 0;
  padding: 9px 0 7px;
  border-top: 1px solid rgba(255, 255, 255, .065);
}

.shop-premium-page .shop-product-price strong {
  color: #fff;
  font-size: 18px;
  font-weight: 700;
}

.shop-premium-page .shop-product-price del {
  font-size: 12px;
}

.shop-premium-page .shop-card-actions {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: 6px;
  margin-top: 0;
}

.shop-premium-page .shop-card-action,
.shop-premium-page .shop-card-add {
  min-width: 0;
  min-height: 35px;
  padding: 0 8px;
  border-radius: 5px;
  font-size: 12px;
}

.shop-premium-page .shop-card-action {
  border-color: rgba(255, 255, 255, .18);
  background: #070a10;
}

.shop-premium-page .shop-card-action:hover,
.shop-premium-page .shop-card-action:focus-visible {
  border-color: #d62828;
  color: #ea2027;
}

.shop-premium-page .shop-card-add {
  border-color: #d62828;
  background: #d62828;
}

.shop-premium-page .shop-card-add:hover,
.shop-premium-page .shop-card-add:focus-visible {
  background: #ea2027;
  box-shadow: 0 0 14px rgba(214, 40, 40, .24);
}

.shop-premium-sidebar {
  position: sticky;
  top: calc(var(--header-height) + 18px);
  display: grid;
  gap: 14px;
}

.shop-premium-side-card {
  overflow: hidden;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 9px;
  background: linear-gradient(180deg, rgba(17, 23, 34, .97), rgba(10, 14, 22, .97));
  box-shadow: 0 18px 40px rgba(0, 0, 0, .2);
}

.shop-premium-player-head {
  display: flex;
  align-items: center;
  gap: 12px;
}

.shop-premium-avatar {
  display: grid;
  width: 54px;
  height: 54px;
  overflow: hidden;
  flex: 0 0 54px;
  place-items: center;
  border: 2px solid rgba(214, 40, 40, .5);
  border-radius: 50%;
  background: linear-gradient(135deg, #27344b, #121a29);
  color: #fff;
  font-size: 18px;
  font-weight: 800;
}

.shop-premium-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.shop-premium-player-head > div {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.shop-premium-player-head strong {
  overflow: hidden;
  color: #fff;
  font-size: 16px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.shop-premium-player-head small,
.shop-premium-player-card > p {
  color: #aeb4be;
  font-size: 13px;
}

.shop-premium-player-card > p {
  margin: 15px 0;
  line-height: 1.45;
}

.shop-premium-xp {
  margin-top: 15px;
}

.shop-premium-xp > span {
  display: block;
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #303744;
}

.shop-premium-xp i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #d62828;
  box-shadow: 0 0 9px rgba(214, 40, 40, .45);
}

.shop-premium-xp p {
  margin: 6px 0 0;
  color: #aeb4be;
  font-size: 12px;
}

.shop-premium-xp b {
  color: #e31e26;
}

.shop-premium-next-level {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 14px 0;
  padding: 10px 12px;
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 7px;
  background: #090d15;
}

.shop-premium-next-level img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}

.shop-premium-next-level p {
  display: grid;
  gap: 2px;
  margin: 0;
}

.shop-premium-next-level b {
  font-size: 13px;
}

.shop-premium-next-level small {
  color: #aeb4be;
  font-size: 12px;
}

.shop-premium-side-primary,
.shop-premium-side-outline {
  display: flex;
  width: 100%;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .055em;
  text-align: center;
  text-decoration: none;
}

.shop-premium-side-primary {
  border: 1px solid #d62828;
  background: #d62828;
}

.shop-premium-side-outline {
  border: 1px solid #d62828;
  background: transparent;
  color: #e93a40;
}

.shop-premium-side-primary:hover,
.shop-premium-side-outline:hover,
.shop-premium-side-primary:focus-visible,
.shop-premium-side-outline:focus-visible {
  background: #ea2027;
  color: #fff;
}

.shop-premium-tournaments > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 13px;
}

.shop-premium-tournaments > header a {
  color: #e31e26;
  font-size: 13px;
  text-decoration: none;
}

.shop-premium-tournament-list {
  display: grid;
  gap: 10px;
}

.shop-premium-tournament {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) auto;
  gap: 9px;
  align-items: center;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(255, 255, 255, .065);
  color: #fff;
  text-decoration: none;
}

.shop-premium-tournament:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.shop-premium-tournament-thumb {
  display: grid;
  width: 58px;
  height: 58px;
  overflow: hidden;
  place-items: center;
  border-radius: 6px;
  background: #080b12;
}

.shop-premium-tournament-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.shop-premium-tournament-copy {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.shop-premium-tournament-copy b {
  overflow: hidden;
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.shop-premium-tournament-copy small,
.shop-premium-tournament-copy em {
  overflow: hidden;
  color: #aeb4be;
  font-size: 11px;
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.shop-premium-tournament > strong {
  padding: 3px 5px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 4px;
  background: rgba(255, 255, 255, .05);
  color: #aeb4be;
  font-size: 10px;
  white-space: nowrap;
}

.shop-premium-tournament > strong.is-open {
  border-color: rgba(49, 181, 106, .34);
  background: rgba(27, 120, 74, .24);
  color: #65d696;
}

.shop-premium-tournaments > .shop-premium-side-outline {
  margin-top: 14px;
}

.shop-premium-side-empty {
  margin: 0 0 8px;
  color: #aeb4be;
  font-size: 13px;
  line-height: 1.45;
}

.shop-premium-support > p {
  margin: 4px 0 14px;
  color: #aeb4be;
  font-size: 13px;
}

.shop-premium-support-features {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
  margin-bottom: 15px;
}

.shop-premium-support-features > div {
  display: flex;
  min-width: 0;
  align-items: center;
  flex-direction: column;
  gap: 4px;
  text-align: center;
}

.shop-premium-support-features span {
  display: grid;
  width: 35px;
  height: 35px;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, .09);
  border-radius: 7px;
  background: rgba(255, 255, 255, .035);
}

.shop-premium-support-features img {
  width: 18px;
  height: 18px;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.shop-premium-support-features b {
  overflow: hidden;
  max-width: 100%;
  font-size: 10px;
  letter-spacing: .03em;
  text-overflow: ellipsis;
}

.shop-premium-support-features small {
  color: #737b88;
  font-size: 10px;
}

@media (max-width: 1280px) {
  .shop-store-layout {
    grid-template-columns: minmax(0, 1fr) 290px;
  }

  .shop-premium-benefits {
    gap: 10px;
  }

  .shop-premium-benefits small {
    display: none;
  }
}

@media (max-width: 1100px) {
  .shop-store-layout {
    grid-template-columns: 1fr;
  }

  .shop-premium-sidebar {
    position: static;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .shop-premium-side-card {
    min-height: 100%;
  }
}

@media (max-width: 820px) {
  .shop-premium-page .shop-premium-main {
    width: calc(100% - 28px);
    padding-top: 14px;
  }

  .shop-premium-hero-copy {
    width: 78%;
  }

  .shop-premium-hero-art {
    object-position: 62% 28%;
    opacity: .72;
  }

  .shop-premium-hero-shade {
    background: linear-gradient(90deg, #080c14 0%, rgba(8, 12, 20, .94) 48%, rgba(8, 12, 20, .34));
  }

  .shop-premium-sidebar {
    grid-template-columns: 1fr 1fr;
  }

  .shop-premium-support {
    grid-column: 1 / -1;
  }
}

@media (max-width: 640px) {
  .shop-premium-page .shop-premium-main {
    width: calc(100% - 20px);
    padding-top: 10px;
  }

  .shop-premium-hero {
    min-height: 430px;
  }

  .shop-premium-hero-art {
    object-position: 68% center;
    opacity: .42;
  }

  .shop-premium-hero-shade {
    background: linear-gradient(180deg, rgba(8, 12, 20, .92), rgba(8, 12, 20, .72) 56%, rgba(8, 12, 20, .95));
  }

  .shop-premium-hero-copy {
    width: 100%;
    min-height: 430px;
    justify-content: flex-end;
    padding: 24px 18px;
  }

  .shop-premium-hero-copy h1 {
    font-size: clamp(38px, 11vw, 48px);
    white-space: nowrap;
  }

  .shop-premium-hero-copy > strong {
    font-size: 15px;
  }

  .shop-premium-benefits {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .shop-premium-benefits > div:last-child {
    grid-column: 1 / -1;
  }

  .shop-premium-benefits small {
    display: block;
  }

  .shop-premium-hero-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .shop-premium-hero-actions > :is(button, a) {
    width: 100%;
  }

  .shop-premium-category-list {
    grid-auto-columns: 96px;
  }

  .shop-premium-catalog-head {
    align-items: stretch;
    flex-direction: column;
  }

  .shop-premium-sort {
    width: 100%;
    justify-content: space-between;
  }

  .shop-premium-sort select {
    flex: 1;
    text-align: right;
  }

  .shop-premium-page .shop-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px;
  }

  .shop-premium-page .shop-product-body {
    min-height: 174px;
    padding: 9px 8px 8px;
  }

  .shop-premium-page .shop-product-body h2 {
    min-height: 35px;
    font-size: 13px;
  }

  .shop-premium-page .shop-product-category,
  .shop-premium-page .shop-product-body > small,
  .shop-premium-page .shop-card-action,
  .shop-premium-page .shop-card-add {
    font-size: 11px;
  }

  .shop-premium-page .shop-product-price strong {
    font-size: 16px;
  }

  .shop-premium-page .shop-card-actions {
    gap: 4px;
  }

  .shop-premium-page .shop-card-action,
  .shop-premium-page .shop-card-add {
    min-height: 33px;
    padding: 0 4px;
  }

  .shop-premium-sidebar {
    grid-template-columns: 1fr;
  }

  .shop-premium-support {
    grid-column: auto;
  }
}

/* Administration de la bannière du Shop (/admin/baner). */
.admin-banner-form {
  display: grid;
  gap: 18px;
}

.admin-banner-card {
  overflow: hidden;
}

.admin-banner-preview {
  position: relative;
  isolation: isolate;
  display: flex;
  min-height: 280px;
  overflow: hidden;
  align-items: center;
  margin-top: 20px;
  padding: clamp(24px, 4vw, 54px);
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 11px;
  background: #080b12;
}

.admin-banner-preview > img,
.admin-banner-preview-shade {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
}

.admin-banner-preview > img {
  object-fit: cover;
}

.admin-banner-preview-shade {
  z-index: -1;
  background: linear-gradient(90deg, rgba(8, 12, 20, .98), rgba(8, 12, 20, .72) 55%, rgba(8, 12, 20, .14));
}

.admin-banner-preview > div {
  display: grid;
  max-width: 720px;
  gap: 4px;
}

.admin-banner-preview small {
  color: #e31e26;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: .11em;
}

.admin-banner-preview strong {
  color: #fff;
  font-family: "Teko", "Barlow Condensed", Impact, sans-serif;
  font-size: clamp(48px, 6vw, 82px);
  font-weight: 700;
  letter-spacing: .025em;
  line-height: .9;
}

.admin-banner-preview > div > span {
  color: #fff;
  font-size: clamp(15px, 1.4vw, 19px);
  font-weight: 700;
}

.admin-banner-fields {
  max-width: none;
  margin-top: 20px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.admin-banner-image-editor .admin-home-background-preview {
  aspect-ratio: 8 / 3;
}

@media (max-width: 900px) {
  .admin-banner-fields {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .admin-banner-preview {
    min-height: 300px;
    align-items: flex-end;
    padding: 22px 16px;
  }

  .admin-banner-preview strong {
    font-size: clamp(38px, 12vw, 52px);
  }

  .admin-banner-image-editor .admin-home-background-preview {
    aspect-ratio: 16 / 9;
  }
}

/* Carte Bus intégrée : le scope .maps-page empêche tout conflit avec
   Google Maps, le header commun et les autres pages publiques. */
.maps-page {
  width: 100%;
  height: 100svh;
  min-height: 100svh;
  overflow: hidden !important;
  background: #e7edf6;
}

.maps-page::after {
  display: none;
}

.maps-page > .maps-integrated-stage {
  position: relative;
  z-index: 2;
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 0;
  flex: 1 1 auto;
  overflow: hidden;
  background: #e7edf6;
}

.maps-page .maps-integrated-frame {
  display: block;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  flex: 1 1 auto;
  border: 0;
  background: #e7edf6;
}

.maps-page .maps-unavailable {
  display: grid;
  width: min(92%, 620px);
  margin: auto;
  justify-items: center;
  gap: 12px;
  padding: clamp(28px, 5vw, 54px);
  border: 1px solid rgba(227, 30, 38, .34);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(8, 11, 18, .97), rgba(14, 18, 28, .95));
  color: #fff;
  box-shadow: 0 24px 60px rgba(0, 0, 0, .32);
  text-align: center;
}

.maps-page .maps-unavailable-icon {
  font-size: clamp(42px, 7vw, 68px);
  line-height: 1;
}

.maps-page .maps-unavailable strong {
  color: #fff;
  font-family: "Teko", "Barlow Condensed", sans-serif;
  font-size: clamp(28px, 4vw, 44px);
  font-weight: 500;
  letter-spacing: .045em;
  line-height: 1;
}

.maps-page .maps-unavailable p {
  max-width: 470px;
  margin: 0;
  color: #cbd2dc;
  font-size: clamp(15px, 2vw, 18px);
  line-height: 1.45;
}

@media (max-width: 820px) {
  .maps-page .maps-unavailable {
    width: calc(100% - 28px);
    padding: 28px 20px;
    border-radius: 12px;
  }
}

/* Navigation publique instantanée : les socles sont déjà dans le bundle
   principal et remplacent immédiatement l'ancienne page pendant les données. */
.navigation-shell-page :is(.navigation-skeleton-block,.navigation-skeleton-line,.navigation-skeleton-disc,.navigation-category-skeleton>i,.navigation-category-skeleton>b,.navigation-shop-benefit-row>span,.navigation-shop-action-row>span,.navigation-skeleton-actions>span){position:relative;overflow:hidden;background:linear-gradient(110deg,rgba(255,255,255,.045),rgba(255,255,255,.105),rgba(255,255,255,.045));background-size:220% 100%}
.navigation-shell-page :is(.navigation-skeleton-block,.navigation-skeleton-line,.navigation-skeleton-disc,.navigation-category-skeleton>i,.navigation-category-skeleton>b,.navigation-shop-benefit-row>span,.navigation-shop-action-row>span,.navigation-skeleton-actions>span)::after{position:absolute;inset:0;content:"";transform:translateX(-105%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);animation:mhtm-navigation-shimmer 1.25s ease-in-out infinite}
@keyframes mhtm-navigation-shimmer{to{transform:translateX(105%)}}
.navigation-skeleton-line{display:block;height:12px;border-radius:999px}.navigation-skeleton-line.is-short{width:34%}.navigation-skeleton-line.is-medium{width:62%}.navigation-skeleton-line.is-long{width:88%}
.navigation-skeleton-disc{display:block;width:42px;height:42px;border-radius:50%}

.navigation-shop-shell{animation:mhtm-navigation-shell-in .16s ease both}
@keyframes mhtm-navigation-shell-in{from{opacity:.78}to{opacity:1}}
.navigation-shop-hero .shop-premium-hero-art{filter:saturate(.75);opacity:.72}
.navigation-shop-hero .shop-premium-hero-copy{pointer-events:none}
.navigation-shop-benefit-row{display:flex;gap:12px;margin-top:18px}.navigation-shop-benefit-row>span{width:120px;height:32px;border-radius:6px}
.navigation-shop-action-row{display:flex;gap:10px;margin-top:20px}.navigation-shop-action-row>span{width:190px;height:44px;border-radius:6px}.navigation-shop-action-row>span:last-child{width:155px}
.navigation-category-skeleton{pointer-events:none}.navigation-category-skeleton>i{display:block;width:75%;height:68%;border-radius:6px}.navigation-category-skeleton>b{display:block;width:70%;height:9px;margin:auto auto 3px;border-radius:999px}
.navigation-sort-skeleton{display:block;width:170px;height:38px;border-radius:6px}
.shop-premium-page .shop-product-skeleton{pointer-events:none;border-color:rgba(255,255,255,.08)}
.shop-premium-page .shop-product-skeleton .shop-product-image{background-color:#090d15}
.shop-premium-page .shop-product-skeleton .shop-product-body{display:grid;min-height:176px;align-content:start;gap:13px;padding:13px 11px}
.navigation-skeleton-actions{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:auto}.navigation-skeleton-actions>span{height:34px;border-radius:5px}
.navigation-shop-sidebar{pointer-events:none}.navigation-side-skeleton{display:grid;min-height:174px;align-content:start;gap:15px}

.navigation-product-shell{padding-top:38px;padding-bottom:100px}.navigation-back-skeleton{display:block;width:170px;height:24px;margin-bottom:22px;border-radius:6px}.navigation-product-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr);gap:18px}.navigation-product-image{min-height:560px;border-radius:13px}.navigation-product-copy{display:grid;align-content:start;gap:22px;padding:30px}.navigation-product-field{height:52px;border-radius:7px}.navigation-product-button{height:50px;margin-top:10px;border-radius:7px}

.navigation-map-shell{position:relative;background:linear-gradient(135deg,#dfe6ef,#edf2f8)}.navigation-map-top{position:absolute;top:16px;left:16px;width:min(520px,calc(100% - 32px));height:68px;border-radius:16px;background-color:rgba(255,255,255,.82)!important}.navigation-map-pin{position:absolute;top:46%;left:54%;width:56px;height:56px;border-radius:50%;background-color:#c4cedc!important}.navigation-map-bottom{position:absolute;right:16px;bottom:24px;width:min(340px,calc(100% - 32px));height:168px;border-radius:14px;background-color:rgba(255,255,255,.82)!important}

.navigation-generic-shell{display:grid;gap:32px;padding-top:clamp(44px,8vh,90px);padding-bottom:110px}.navigation-generic-title{display:grid;width:min(720px,92%);justify-self:center;justify-items:center;gap:14px}.navigation-generic-title .navigation-skeleton-line{height:20px}.navigation-generic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.navigation-generic-grid.is-split{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr)}.navigation-generic-grid.is-split .navigation-generic-card:first-child{grid-row:span 2}.navigation-generic-grid.is-game{grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr)}.navigation-generic-card{display:grid;min-height:260px;align-content:start;gap:18px;padding:26px;border-color:rgba(255,255,255,.08)!important}.navigation-generic-button{width:48%;height:43px;margin-top:auto;border-radius:6px}

.shop-navigation-reveal .shop-grid .shop-product-card{animation:mhtm-shop-product-reveal .32s cubic-bezier(.22,1,.36,1) both}
.shop-navigation-reveal .shop-grid .shop-product-card:nth-child(2){animation-delay:35ms}.shop-navigation-reveal .shop-grid .shop-product-card:nth-child(3){animation-delay:70ms}.shop-navigation-reveal .shop-grid .shop-product-card:nth-child(4){animation-delay:105ms}.shop-navigation-reveal .shop-grid .shop-product-card:nth-child(5){animation-delay:140ms}.shop-navigation-reveal .shop-grid .shop-product-card:nth-child(6){animation-delay:175ms}.shop-navigation-reveal .shop-grid .shop-product-card:nth-child(7){animation-delay:210ms}.shop-navigation-reveal .shop-grid .shop-product-card:nth-child(8){animation-delay:245ms}.shop-navigation-reveal .shop-grid .shop-product-card:nth-child(n/**/+9){animation-delay:280ms}
@keyframes mhtm-shop-product-reveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.shop-card-image-placeholder{position:absolute;z-index:1;inset:0;overflow:hidden;background:linear-gradient(110deg,#090d15,#141b27,#090d15);background-size:220% 100%}.shop-card-image-placeholder::after{position:absolute;inset:0;content:"";transform:translateX(-105%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:mhtm-navigation-shimmer 1.25s ease-in-out infinite}.shop-gallery-slide.shop-card-image-reveal{position:relative;z-index:2;opacity:0;transition:opacity .28s ease}.shop-gallery-slide.shop-card-image-reveal.is-loaded{opacity:1}

@media(max-width:1100px){.navigation-generic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.navigation-product-image{min-height:480px}}
@media(max-width:820px){.navigation-product-grid{grid-template-columns:1fr}.navigation-product-image{min-height:420px}.navigation-generic-grid,.navigation-generic-grid.is-split,.navigation-generic-grid.is-game{grid-template-columns:1fr}.navigation-generic-grid.is-split .navigation-generic-card:first-child{grid-row:auto}.navigation-shop-sidebar{grid-template-columns:1fr 1fr}.navigation-side-skeleton:last-child{grid-column:1/-1}}
@media(max-width:640px){.navigation-shop-benefit-row>span{width:30%;height:36px}.navigation-shop-action-row{display:grid}.navigation-shop-action-row>span,.navigation-shop-action-row>span:last-child{width:100%}.shop-premium-page .shop-product-skeleton .shop-product-body{min-height:174px;padding:9px 8px 8px}.navigation-product-image{min-height:330px}.navigation-product-copy{padding:22px 18px}.navigation-generic-shell{padding-top:34px}.navigation-generic-card{min-height:210px;padding:20px}.navigation-map-bottom{right:10px;bottom:18px;width:calc(100% - 20px);height:128px}.navigation-shop-sidebar{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.navigation-shell-page :is(.navigation-skeleton-block,.navigation-skeleton-line,.navigation-skeleton-disc,.navigation-category-skeleton>i,.navigation-category-skeleton>b,.navigation-shop-benefit-row>span,.navigation-shop-action-row>span,.navigation-skeleton-actions>span)::after,.shop-card-image-placeholder::after,.navigation-shop-shell,.shop-navigation-reveal .shop-grid .shop-product-card{animation:none!important}.shop-gallery-slide.shop-card-image-reveal{transition:none}}

/* Wishlist des cartes Shop : remplace le badge redondant « En stock ». */
.shop-wishlist-button{position:absolute;z-index:6;top:12px;right:12px;display:grid;width:36px;height:36px;place-items:center;padding:0;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:rgba(4,6,10,.78);color:#fff;box-shadow:0 5px 16px rgba(0,0,0,.26);cursor:pointer;backdrop-filter:blur(8px);transition:color .18s ease,border-color .18s ease,background .18s ease,transform .18s ease}.shop-wishlist-button svg{display:block;width:19px;height:19px;overflow:visible}.shop-wishlist-button path{fill:transparent;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:fill .18s ease}.shop-wishlist-button:hover{border-color:rgba(227,30,38,.72);background:rgba(18,8,12,.9);color:#ff5960;transform:scale(1.06)}.shop-wishlist-button.is-active{border-color:rgba(227,30,38,.78);background:rgba(42,8,12,.92);color:#e31e26}.shop-wishlist-button.is-active path{fill:currentColor}.shop-wishlist-button:focus-visible{outline:3px solid rgba(255,255,255,.88);outline-offset:2px}.shop-badge-out{right:54px}.home-shop-wishlist-button{top:10px;right:10px}.home-shop-badge.out{right:52px}
.shop-premium-page .shop-wishlist-button{top:7px;right:7px;width:32px;height:32px}.shop-premium-page .shop-wishlist-button svg{width:17px;height:17px}.shop-premium-page .shop-badge-out{right:45px}
@media(max-width:520px){.home-shop-wishlist-button{top:6px;right:6px;width:32px;height:32px}.home-shop-badge.out{right:44px}}
@media(prefers-reduced-motion:reduce){.shop-wishlist-button,.shop-wishlist-button path{transition:none}}

/* Menu clic droit MHTM et éditeur typographique contextuel. */
.site-context-menu{
  position:fixed;
  z-index:300000;
  width:min(292px,calc(100vw - 16px));
  max-height:calc(100svh - 16px);
  overflow-x:hidden;
  overflow-y:auto;
  padding:7px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  background:rgba(6,9,15,.99);
  box-shadow:0 24px 70px rgba(0,0,0,.68),0 0 0 1px rgba(227,30,38,.06) inset;
  color:#fff;
  font-family:"Barlow Condensed",Arial,sans-serif;
  animation:mhtm-context-menu-in .13s cubic-bezier(.2,.75,.25,1) both;
  overscroll-behavior:contain;
  -webkit-font-smoothing:antialiased;
}
@keyframes mhtm-context-menu-in{from{opacity:0;transform:translateY(-4px) scale(.975)}to{opacity:1;transform:none}}
.site-context-menu-brand{display:flex;align-items:center;gap:9px;height:39px;margin:0 5px 5px;padding:0 7px;border-bottom:1px solid rgba(255,255,255,.09);color:#8d96a5;font-size:13px;font-weight:700;letter-spacing:.12em}
.site-context-menu-brand img{display:block;width:32px;height:27px;object-fit:contain}
.site-context-menu-item{display:grid!important;grid-template-columns:31px minmax(0,1fr)!important;align-items:center!important;width:100%!important;min-height:37px!important;margin:0!important;padding:6px 10px!important;border:0!important;border-radius:7px!important;background:transparent!important;box-shadow:none!important;color:#f6f7f9!important;font:500 17px/1.05 "Barlow Condensed",Arial,sans-serif!important;letter-spacing:.015em!important;text-align:left!important;text-transform:none!important;cursor:pointer!important;transition:background-color .12s ease,color .12s ease!important}
.site-context-menu-item:hover,.site-context-menu-item:focus-visible{outline:0!important;background:rgba(227,30,38,.16)!important;color:#fff!important}
.site-context-menu-item.is-admin-action{color:#ff777c!important}.site-context-menu-item.is-admin-action:hover,.site-context-menu-item.is-admin-action:focus-visible{background:rgba(227,30,38,.23)!important;color:#fff!important}
.site-context-menu-icon{display:grid;width:22px;height:22px;place-items:center;color:#e31e26;font-family:Arial,sans-serif;font-size:17px;font-weight:400;line-height:1}
.site-context-menu-separator{height:1px;margin:6px 5px;background:rgba(255,255,255,.1)}
.site-context-menu-hint{display:block;margin:6px 7px 3px;color:#707987;font:400 12px/1.3 "Barlow Condensed",Arial,sans-serif;letter-spacing:.02em}

html.mhtm-typography-editor-open,html.mhtm-typography-editor-open body{overflow:hidden!important}
.site-typography-editor{position:fixed;z-index:310000;inset:0;display:grid;place-items:center;padding:20px;font-family:"Barlow Condensed",Arial,sans-serif}
.site-typography-editor-backdrop{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:rgba(2,4,8,.84)!important;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);cursor:default!important}
.site-typography-editor-card{position:relative;z-index:1;width:min(780px,100%);max-height:min(90svh,820px);overflow:auto;padding:27px;border:1px solid rgba(255,255,255,.14);border-top:3px solid #e31e26;border-radius:16px;background:linear-gradient(155deg,rgba(19,24,34,.995),rgba(7,10,16,.995));box-shadow:0 34px 100px rgba(0,0,0,.7),0 0 42px rgba(227,30,38,.08);color:#fff;overscroll-behavior:contain}
.site-typography-editor-close{position:absolute!important;top:13px!important;right:13px!important;display:grid!important;width:38px!important;height:38px!important;min-height:0!important;place-items:center!important;margin:0!important;padding:10px!important;border:0!important;border-radius:50%!important;background:rgba(255,255,255,.07)!important;box-shadow:none!important;cursor:pointer!important}
.site-typography-editor-close:hover{background:rgba(227,30,38,.2)!important}.site-typography-editor-close img{display:block;width:100%;height:100%;filter:brightness(0) invert(1)}
.site-typography-editor-kicker{display:block;margin:0 48px 5px 0;color:#ff656b;font-size:14px;font-weight:800;letter-spacing:.13em}
.site-typography-editor-card h2{margin:0 48px 3px 0;color:#fff;font:600 33px/.95 "Teko","Barlow Condensed",sans-serif;letter-spacing:.045em}
.site-typography-editor-zone{margin:7px 48px 0 0;color:#aab2be;font-size:17px;line-height:1.35}
.site-typography-editor-preview{display:grid;min-height:92px;max-height:180px;place-items:center;overflow:auto;margin-top:20px;padding:16px;border:1px dashed rgba(255,255,255,.18);border-radius:10px;background:rgba(3,6,11,.55);text-align:center}
.site-typography-editor-preview span{max-width:100%;color:#fff;line-height:1.15;overflow-wrap:anywhere}
.site-typography-editor-current{margin-top:8px;color:#788392;font-size:14px;text-align:right}
.site-typography-editor-text{display:grid;gap:7px;margin-top:16px}.site-typography-editor-text>span{color:#aeb5c0;font-size:13px;font-weight:800;letter-spacing:.08em}.site-typography-editor-text textarea{width:100%;min-height:74px;max-height:180px;resize:vertical;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:#070b12;color:#fff;padding:10px 12px;outline:none;font:500 17px/1.25 "Barlow Condensed",Arial,sans-serif!important}.site-typography-editor-text textarea:focus{border-color:#e31e26;box-shadow:0 0 0 2px rgba(227,30,38,.11)}
.site-typography-editor-fields{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}
.site-typography-editor-fields label{position:relative;display:grid;gap:6px}.site-typography-editor-fields label>span{color:#aeb5c0;font-size:13px;font-weight:800;letter-spacing:.08em}
.site-typography-editor-fields input,.site-typography-editor-fields select{width:100%;height:43px;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:#070b12;color:#fff;padding:0 10px;outline:none;font:500 17px/1 "Barlow Condensed",Arial,sans-serif!important;color-scheme:dark}
.site-typography-editor-fields input{padding-right:29px;text-align:center}.site-typography-editor-fields label>small{position:absolute;right:9px;bottom:14px;color:#6f7886;font-size:12px;pointer-events:none}
.site-typography-editor-fields input:focus,.site-typography-editor-fields select:focus{border-color:#e31e26;box-shadow:0 0 0 2px rgba(227,30,38,.11)}
.site-typography-editor-help{margin:10px 0 0;color:#7f8997;font-size:14px;line-height:1.4}
.site-typography-editor-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:23px;padding-top:17px;border-top:1px solid rgba(255,255,255,.1)}.site-typography-editor-actions>div{display:flex;gap:8px}
.site-typography-editor-actions button{min-height:42px!important;margin:0!important;padding:0 15px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:8px!important;background:rgba(255,255,255,.055)!important;color:#d5d9df!important;box-shadow:none!important;font:700 15px/1 "Barlow Condensed",Arial,sans-serif!important;letter-spacing:.055em!important;cursor:pointer!important}
.site-typography-editor-actions button:hover{border-color:rgba(255,255,255,.3)!important;color:#fff!important}.site-typography-editor-actions button.is-primary{border-color:#e31e26!important;background:#e31e26!important;color:#fff!important}.site-typography-editor-actions button.is-primary:hover{background:#f02a32!important}.site-typography-editor-actions .site-typography-editor-reset{border-color:rgba(227,30,38,.38)!important;background:rgba(227,30,38,.07)!important;color:#ff8186!important}
.site-typography-editor-actions button:disabled,.site-typography-editor-close:disabled{opacity:.5!important;cursor:wait!important}

@media(max-width:680px){
  .site-typography-editor{align-items:end;padding:10px}
  .site-typography-editor-card{width:100%;max-height:calc(100svh - 20px);padding:24px 18px 18px;border-radius:17px 17px 10px 10px}
  .site-typography-editor-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-typography-editor-actions{align-items:stretch;flex-direction:column-reverse}.site-typography-editor-actions>div{display:grid;grid-template-columns:1fr 1fr}.site-typography-editor-actions button{width:100%}
}
@media(max-width:390px){.site-typography-editor-fields{grid-template-columns:1fr}.site-typography-editor-actions>div{grid-template-columns:1fr}.site-context-menu-hint{display:none}}
@media(prefers-reduced-motion:reduce){.site-context-menu{animation:none}.site-context-menu-item{transition:none!important}}

/* ========================================================================== 
   ACCUEIL HUB FIGMA MAKE — v2.0.32
   Reproduction fonctionnelle de la maquette fournie (boutique + tournois +
   mini-jeux), isolée sous .modern-home-page pour ne pas toucher aux autres pages.
   ========================================================================== */
.page.modern-home-page{min-height:100svh;overflow:visible;background:#050a12}.page.modern-home-page:after{display:none}.page.modern-home-page .mhtm-modern-home{position:relative;z-index:2;width:100%;min-height:100svh;color:#f5f6f8}.mhtm-modern-home *{box-sizing:border-box}.mhtm-modern-home a{text-decoration:none}.modern-home-container{margin:0 auto}.modern-home-section{background:#06101a}.modern-home-section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.modern-home-section-head h2{margin:0;color:#f7f8fa;font:800 clamp(20px,1.8vw,26px)/1.05 Inter,Arial,sans-serif;letter-spacing:-.03em}.modern-home-section-head>a{color:#ef3434;font:600 12px/1 Inter,Arial,sans-serif}.modern-home-section-head>a span{margin-left:5px}

/* header */
.modern-home-header{position:sticky;top:0;z-index:1200;height:65px;background:rgba(3,7,14,.96);border-bottom:1px solid rgba(214,40,40,.22);backdrop-filter:blur(16px);box-shadow:0 8px 30px rgba(0,0,0,.32)}.modern-home-header-inner{width:min(100% - 56px,1280px);height:100%;margin:0 auto;display:flex;align-items:center;gap:24px}.modern-home-logo{width:126px;height:54px;display:flex;align-items:center;justify-content:flex-start;flex:0 0 126px}.modern-home-logo img{width:112px;height:52px;display:block;object-fit:contain}.modern-home-nav{display:flex;align-items:stretch;height:100%;gap:29px;white-space:nowrap}.modern-home-nav a{position:relative;display:flex;align-items:center;color:#f4f5f7;font:600 12px/1 Inter,Arial,sans-serif;transition:.18s ease}.modern-home-nav a:hover,.modern-home-nav a.active{color:#ef3434}.modern-home-nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#d62828;box-shadow:0 0 14px rgba(214,40,40,.8)}.modern-home-actions{margin-left:auto;display:flex;align-items:center;gap:13px;min-width:0}.modern-home-search{width:225px;height:34px;display:flex;align-items:center;border:1px solid rgba(174,180,190,.18);border-radius:7px;background:#090f18;overflow:hidden}.modern-home-search input{width:100%;min-width:0;height:100%;border:0;background:transparent;color:#fff;padding:0 12px;outline:none;font:400 10px/1 Inter,Arial,sans-serif}.modern-home-search input::placeholder{color:#7f8793}.modern-home-search button{width:36px;height:100%;border:0;border-left:1px solid rgba(174,180,190,.1);background:transparent;display:grid;place-items:center}.modern-home-search img{width:16px;height:16px;filter:brightness(3)}.modern-home-cart{position:relative;width:30px;height:34px;display:grid;place-items:center}.modern-home-cart>img{width:21px;height:21px;filter:brightness(4)}.modern-home-cart b{position:absolute;right:-3px;top:-4px;min-width:15px;height:15px;padding:0 3px;border-radius:8px;background:#d62828;color:#fff;display:grid;place-items:center;font:800 8px/1 Inter,Arial,sans-serif}.modern-home-login{height:34px;min-width:113px;padding:0 13px;border:1px solid rgba(214,40,40,.85);border-radius:7px;background:rgba(214,40,40,.03);color:#fff;display:flex;align-items:center;justify-content:center;gap:7px;font:600 10px/1 Inter,Arial,sans-serif;box-shadow:0 0 16px rgba(214,40,40,.08)}.modern-home-login span{color:#ef3434;font-size:17px}.modern-home-menu-toggle{display:none;width:38px;height:36px;border:1px solid rgba(214,40,40,.45);border-radius:7px;background:#0a1018;padding:8px}.modern-home-menu-toggle span{display:block;height:2px;margin:4px 0;background:#fff;border-radius:2px}

/* hero */
.modern-home-hero{position:relative;overflow:hidden;background:#03070e}.modern-home-hero:before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,#03070e 0%,rgba(3,7,14,.98) 31%,rgba(3,7,14,.72) 51%,rgba(3,7,14,.18) 76%,rgba(3,7,14,.28) 100%)}.modern-home-hero:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(3,7,14,.08),transparent 58%,#06101a 100%)}.modern-home-hero-art{position:absolute;z-index:1;right:0;top:0;width:62%;height:100%;overflow:hidden}.modern-home-hero-art img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.modern-home-hero-grid{position:absolute;z-index:2;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent 9.8%,rgba(214,40,40,.075) 10%,transparent 10.2%);pointer-events:none}.modern-home-hero-content{position:relative;z-index:3;display:flex;align-items:center}.modern-home-hero-copy h1{margin:0 0 15px;color:#f7f8fa;font:800 clamp(37px,4.1vw,55px)/.97 Inter,Arial,sans-serif;letter-spacing:-.045em}.modern-home-hero-copy h1 span{display:block;color:#d62828}.modern-home-hero-copy p{margin:0 0 17px;color:#d1d4d9;font:400 12px/1.48 Inter,Arial,sans-serif;white-space:pre-line}

/* benefit cards */
.modern-home-benefits{background:#06101a;padding:0 0 18px}.modern-home-benefits-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.modern-home-benefit{border:1px solid rgba(174,180,190,.22);border-radius:8px;background:linear-gradient(180deg,#0d141f,#0a111b);display:flex;align-items:center;transition:.18s ease}.modern-home-benefit>span{display:grid;place-items:center;flex:0 0 34px}.modern-home-benefit img{object-fit:contain}.modern-home-benefit strong{display:block;color:#fff;font:700 12px/1.15 Inter,Arial,sans-serif}.modern-home-benefit small{display:block;color:#b8bec7;font:400 9px/1.35 Inter,Arial,sans-serif}

/* categories */
.modern-home-categories{padding-top:6px}.modern-home-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.modern-home-category-card{position:relative;border:1px solid rgba(174,180,190,.2);border-radius:8px;overflow:hidden;background:#111722}.modern-home-category-card:nth-child(1),.modern-home-category-card:nth-child(4){border-color:rgba(214,40,40,.45)}.modern-home-category-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .35s ease}.modern-home-category-card:hover .modern-home-category-art{transform:scale(1.045)}.modern-home-card-shade{position:absolute;inset:35% 0 0;background:linear-gradient(180deg,transparent,rgba(5,10,18,.98))}.modern-home-category-icon{position:absolute;z-index:2;top:11px;left:11px;border:1px solid rgba(214,40,40,.52);border-radius:7px;background:rgba(9,14,22,.65);display:grid;place-items:center}.modern-home-category-icon img{object-fit:contain}.modern-home-category-copy{position:absolute;z-index:2}.modern-home-category-copy strong{display:block;color:#fff;font:700 12px/1.1 Inter,Arial,sans-serif}.modern-home-category-copy small{display:block;color:#ced2d8;font:400 9px/1.25 Inter,Arial,sans-serif}

/* products */
.modern-home-products{padding-top:3px}.modern-home-product-wrap{position:relative}.modern-home-product-rail{display:grid;grid-auto-flow:column;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity;padding:1px}.modern-home-product-rail::-webkit-scrollbar{display:none}.modern-home-product-card{min-width:0;border:1px solid rgba(174,180,190,.22);border-radius:9px;overflow:hidden;background:linear-gradient(180deg,#111722,#0a1018);scroll-snap-align:start;transition:.18s ease}.modern-home-product-image{position:relative;background:radial-gradient(circle at 50% 42%,#1a2230,#090e16 72%);overflow:hidden}.modern-home-product-image>a{display:block;width:100%;height:100%}.modern-home-product-image>a>img{width:100%;height:100%;object-fit:contain;padding:7px;transition:transform .25s ease}.modern-home-product-card:hover .modern-home-product-image>a>img{transform:scale(1.04)}.modern-home-product-image .modern-home-wishlist,.modern-home-product-image .shop-wishlist-button{position:absolute;z-index:3;top:8px;right:8px}.modern-home-product-body h3{margin:0;font:600 10px/1.2 Inter,Arial,sans-serif}.modern-home-product-body h3 a{color:#fff}.modern-home-product-body>small{display:block;color:#d5d9de;font:400 8.5px/1.2 Inter,Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modern-home-product-price{display:flex;align-items:center;justify-content:space-between;gap:8px}.modern-home-product-price>strong{min-width:0;color:#ff3535;font:800 10px/1 Inter,Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modern-home-product-price>span{flex:0 0 auto;border-radius:4px;font:800 6px/1 Inter,Arial,sans-serif;letter-spacing:.03em}.modern-home-product-price .in-stock{border:1px solid rgba(35,190,102,.35);background:rgba(16,128,72,.24);color:#7ce7a8}.modern-home-product-price .out-stock{border:1px solid rgba(214,40,40,.35);background:rgba(214,40,40,.15);color:#ff8888}.modern-home-add{width:100%;height:25px;border:1px solid rgba(214,40,40,.85);border-radius:5px;background:rgba(214,40,40,.08);color:#fff;display:flex;align-items:center;justify-content:center;gap:6px;font:600 8px/1 Inter,Arial,sans-serif}.modern-home-add:hover{background:rgba(214,40,40,.2)}.modern-home-add img{filter:brightness(4)}.modern-home-add.disabled{opacity:.5;border-color:#48505d}.modern-home-rail-arrow{position:absolute;z-index:8;top:50%;width:34px;height:34px;border-radius:50%;border:1px solid rgba(174,180,190,.23);background:#0d141f;color:#fff;display:grid;place-items:center;font:400 29px/1 Inter,Arial,sans-serif;transform:translateY(-50%)}.modern-home-rail-arrow.prev{left:-18px}.modern-home-rail-arrow.next{right:-18px}.modern-home-rail-arrow:hover{background:#161f2e;border-color:rgba(214,40,40,.5)}.modern-home-products-empty{grid-column:1/-1;width:min(100%,620px);min-height:160px;border:1px solid rgba(174,180,190,.2);border-radius:9px;background:#0d141f;padding:24px;display:flex;align-items:center;gap:18px}.modern-home-products-empty>img{width:48px;height:48px}.modern-home-products-empty div{flex:1}.modern-home-products-empty strong,.modern-home-products-empty small{display:block}.modern-home-products-empty strong{font-size:15px}.modern-home-products-empty small{margin-top:5px;color:#aeb4be;font-size:12px}.modern-home-products-empty>a{padding:10px 14px;border:1px solid #d62828;border-radius:6px;color:#fff;font-size:11px}

/* tournaments */
.modern-home-tournaments{padding-top:0}.modern-home-tournament-panel{display:grid;grid-template-columns:1.35fr .82fr .9fr;border:1px solid rgba(174,180,190,.25);border-radius:9px;overflow:hidden;background:#0b111a}.modern-home-tournament-panel>article{min-width:0}.modern-home-tournament-promo{position:relative;overflow:hidden;border-right:1px solid rgba(174,180,190,.14)}.modern-home-tournament-promo>img{position:absolute;right:0;top:0;width:58%;height:100%;object-fit:cover;opacity:.8}.modern-home-tournament-promo>.modern-home-card-shade{inset:0;background:linear-gradient(90deg,#08101a 0%,rgba(8,16,26,.95) 43%,rgba(8,16,26,.3) 100%)}.modern-home-tournament-promo>div{position:relative;z-index:2;width:72%;height:100%;display:flex;flex-direction:column;align-items:flex-start}.modern-home-tournament-promo h2{margin:0;color:#f5f6f7;font:800 20px/1.12 Inter,Arial,sans-serif}.modern-home-tournament-promo h2 span{display:block;color:#ef3434}.modern-home-tournament-promo p{margin:9px 0 8px;color:#c6cbd2;font:400 9px/1.45 Inter,Arial,sans-serif}.modern-home-tournament-promo ul{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;color:#d5d9de;font:500 7.5px/1 Inter,Arial,sans-serif}.modern-home-tournament-promo a{margin-top:auto;min-width:112px;height:29px;border:1px solid rgba(239,85,85,.55);border-radius:5px;background:#d62828;color:#fff;display:flex;align-items:center;justify-content:center;font:700 8px/1 Inter,Arial,sans-serif}.modern-home-ranking{padding:13px;border-right:1px solid rgba(174,180,190,.14)}.modern-home-ranking h3,.modern-home-live h3{margin:0;color:#fff;font:700 11px/1.15 Inter,Arial,sans-serif}.modern-home-ranking-list{margin-top:7px}.modern-home-ranking-list>a{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:6px;color:#d6d9de}.modern-home-ranking-list>a>b{width:16px;height:16px;border-radius:50%;background:#171f2a;color:#aeb4be;display:grid;place-items:center;font:700 7px/1 Inter,Arial,sans-serif}.modern-home-ranking-list>a:first-child>b{background:#d62828;color:#fff}.modern-home-ranking-list span{min-width:0}.modern-home-ranking-list strong,.modern-home-ranking-list small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modern-home-ranking-list strong{font:600 8px/1.1 Inter,Arial,sans-serif}.modern-home-ranking-list small{margin-top:2px;color:#828b98;font:400 6.5px/1 Inter,Arial,sans-serif}.modern-home-ranking-list em{font:500 7px/1 Inter,Arial,sans-serif;font-style:normal}.modern-home-ranking-list>p{color:#8f97a3;line-height:1.4}.modern-home-ranking-link{display:block;margin-top:8px;color:#ef3434;font:600 7.5px/1 Inter,Arial,sans-serif}.modern-home-live{padding:13px}.modern-home-live-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.modern-home-live-head>strong{color:#fff;font:700 9px/1 Inter,Arial,sans-serif}.modern-home-live-head i{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:#ff3038;box-shadow:0 0 8px rgba(255,48,56,.7)}.modern-home-live-head>span{color:#ef3434;font:600 6.5px/1 Inter,Arial,sans-serif}.modern-home-live>p{margin:4px 0 9px;color:#aeb4be;font:400 7px/1.2 Inter,Arial,sans-serif}.modern-home-bracket{min-height:63px;display:flex;align-items:center;justify-content:center;gap:12px}.modern-home-bracket>div{display:flex;flex-direction:column;gap:8px}.modern-home-bracket>div:last-child{gap:4px}.modern-home-bracket span{width:47px;height:19px;border:1px solid rgba(94,106,122,.7);border-radius:3px;background:#101722;color:#727e8d;display:grid;place-items:center}.modern-home-bracket>b{color:#ef3434;font:800 10px/1 Inter,Arial,sans-serif}.modern-home-tournament-meta{display:block;text-align:center;color:#d3d7dc;font:600 8px/1 Inter,Arial,sans-serif}.modern-home-live>a{display:block;margin-top:9px;color:#ef3434;font:600 7.5px/1 Inter,Arial,sans-serif}

/* mini games */
.modern-home-minigames{padding-top:2px}.modern-home-minigame-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.modern-home-minigame-card{border:1px solid rgba(83,21,29,.85);border-radius:8px;overflow:hidden;background:linear-gradient(180deg,#111722,#08101a);display:grid;align-items:center;color:#fff;transition:.18s ease}.modern-home-minigame-card:nth-child(2){border-color:rgba(120,83,30,.85)}.modern-home-minigame-card:nth-child(5){border-color:rgba(18,74,112,.85)}.modern-home-minigame-card:hover{transform:translateY(-2px);filter:brightness(1.12)}.modern-home-minigame-card>img{display:block;object-fit:cover}.modern-home-minigame-card>div{min-width:0}.modern-home-minigame-card strong,.modern-home-minigame-card small{display:block}.modern-home-minigame-card strong{font:700 9.5px/1.1 Inter,Arial,sans-serif}.modern-home-minigame-card small{color:#aeb4be;font:400 7.5px/1.3 Inter,Arial,sans-serif}.modern-home-minigame-card>span{color:#aeb4be}.modern-home-minigame-card.active>span{color:#ef3434}

/* payment/trust */
.modern-home-trust{padding-top:2px;padding-bottom:20px}.modern-home-trust-panel{border:1px solid rgba(174,180,190,.18);border-radius:8px;background:linear-gradient(180deg,#101721,#0a1018);display:grid;grid-template-columns:39% 1px 1fr;align-items:stretch}.modern-home-payments{text-align:center}.modern-home-payments h2{margin:0;color:#fff;font:700 13px/1 Inter,Arial,sans-serif}.modern-home-payments p{color:#9ea5af;font:400 8px/1.2 Inter,Arial,sans-serif}.modern-home-payments>div{display:flex;align-items:center;justify-content:center;gap:17px}.modern-home-payments img{max-width:70px;max-height:24px;object-fit:contain}.modern-home-payments img[alt="Orange Money"]{max-width:78px}.modern-home-payments .visa{padding:6px 12px;border-radius:4px;background:#172c63;color:#fff;font:800 15px/1 Inter,Arial,sans-serif}.modern-home-payments .binance{display:inline-flex;align-items:center;gap:5px;color:#f5b82e;font:800 9px/1 Inter,Arial,sans-serif;white-space:nowrap}.modern-home-payments .binance img{width:16px;height:16px;flex:0 0 16px;object-fit:contain}.modern-home-trust-divider{width:1px;background:rgba(174,180,190,.18)}.modern-home-trust-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:center}.modern-home-trust-items>div{display:flex;align-items:flex-start;gap:9px}.modern-home-trust-items img{object-fit:contain;filter:grayscale(1) brightness(2.4)}.modern-home-trust-items strong,.modern-home-trust-items small{display:block}.modern-home-trust-items strong{color:#fff;font:700 8.5px/1.15 Inter,Arial,sans-serif}.modern-home-trust-items small{color:#aeb4be;font:400 7px/1.35 Inter,Arial,sans-serif}

/* footer */
.modern-home-footer{border-top:1px solid rgba(174,180,190,.1);background:linear-gradient(180deg,#060b13,#03070e);padding:23px 0 15px}.modern-home-footer-grid{display:grid;grid-template-columns:1.35fr repeat(5,1fr)}.modern-home-footer-grid h3{margin:0 0 10px;color:#f4f5f6;font:700 8.5px/1 Inter,Arial,sans-serif}.modern-home-footer-grid>div:not(.modern-home-footer-brand)>a,.modern-home-footer-grid>div:not(.modern-home-footer-brand)>span{display:block;margin:0 0 7px;color:#9ca4af;font:400 7.5px/1.2 Inter,Arial,sans-serif}.modern-home-footer-grid a:hover{color:#ef3434!important}.modern-home-footer-brand>img{object-fit:contain;display:block;margin:-8px 0 -4px}.modern-home-footer-brand>a{display:block;color:#ef3434;font:600 8px/1 Inter,Arial,sans-serif}.modern-home-footer-brand>p{margin:8px 0;color:#8d95a0;font:400 7.5px/1.5 Inter,Arial,sans-serif}.modern-home-footer-brand>div{display:flex;gap:7px}.modern-home-footer-brand>div>a{width:20px;height:20px;border-radius:50%;background:#141b25;display:grid;place-items:center}.modern-home-footer-brand>div img{width:11px;height:11px;object-fit:contain}.modern-home-footer-bottom{margin-top:18px;padding-top:12px;border-top:1px solid rgba(174,180,190,.08);display:flex;align-items:center;justify-content:flex-end;gap:14px;color:#707984;font:400 7px/1 Inter,Arial,sans-serif}.modern-home-footer-bottom a{color:#707984}.modern-home-footer-bottom i{font-style:normal;color:#535b65}

@media (max-width:1120px){.modern-home-header-inner{width:min(100% - 32px,1050px);gap:14px}.modern-home-logo{width:104px;flex-basis:104px}.modern-home-logo img{width:98px}.modern-home-nav{gap:17px}.modern-home-search{width:180px}.modern-home-footer-grid{gap:18px}}
@media (max-width:900px){.modern-home-header{height:auto;min-height:62px}.modern-home-header-inner{min-height:62px;flex-wrap:wrap;padding:6px 0}.modern-home-menu-toggle{display:block;margin-left:auto}.modern-home-actions{margin-left:0}.modern-home-search{display:none}.modern-home-nav{order:4;width:100%;height:auto;display:none;flex-wrap:wrap;gap:0;border-top:1px solid rgba(255,255,255,.08)}.modern-home-nav.is-open{display:grid;grid-template-columns:repeat(3,1fr)}.modern-home-nav a{min-height:40px;justify-content:center}.modern-home-nav a.active:after{height:2px}.modern-home-hero{min-height:350px}.modern-home-hero-content{min-height:350px}.modern-home-hero-art{width:100%;opacity:.6}.modern-home-hero:before{background:linear-gradient(90deg,rgba(3,7,14,.98),rgba(3,7,14,.78) 55%,rgba(3,7,14,.45))}.modern-home-hero-copy{width:min(72%,580px)}.modern-home-benefits-grid{grid-template-columns:repeat(2,1fr)}.modern-home-category-grid{grid-template-columns:repeat(2,1fr)}.modern-home-category-card{height:190px}.modern-home-product-rail{grid-auto-columns:calc((100% - 28px)/3)}.modern-home-tournament-panel{grid-template-columns:1fr 1fr}.modern-home-tournament-promo{grid-column:1/-1;min-height:190px;border-right:0;border-bottom:1px solid rgba(174,180,190,.14)}.modern-home-ranking{border-right:1px solid rgba(174,180,190,.14)}.modern-home-minigame-grid{grid-template-columns:repeat(3,1fr)}.modern-home-trust-panel{grid-template-columns:1fr;gap:15px}.modern-home-trust-divider{width:100%;height:1px}.modern-home-footer-grid{grid-template-columns:repeat(3,1fr)}.modern-home-footer-brand{grid-row:span 2}}
@media (max-width:640px){.modern-home-header-inner{width:calc(100% - 20px)}.modern-home-logo{width:92px;flex-basis:92px}.modern-home-logo img{width:86px}.modern-home-login{min-width:0;padding:0 9px}.modern-home-login span{display:none}.modern-home-cart{margin-left:auto}.modern-home-nav.is-open{grid-template-columns:repeat(2,1fr)}.modern-home-hero-content{align-items:flex-end}.modern-home-hero-art{width:100%;height:70%;top:0;opacity:.56}.modern-home-hero:before{background:linear-gradient(180deg,rgba(3,7,14,.18) 0%,rgba(3,7,14,.72) 46%,#03070e 74%)}.modern-home-hero-copy{width:100%}.modern-home-hero-copy p br{display:none}.modern-home-benefits{padding-top:12px}.modern-home-benefits-grid{grid-template-columns:1fr}.modern-home-category-grid{grid-template-columns:1fr 1fr;gap:9px}.modern-home-category-card{height:145px}.modern-home-rail-arrow{display:none}.modern-home-tournament-panel{grid-template-columns:1fr}.modern-home-tournament-promo{grid-column:auto}.modern-home-ranking{border-right:0;border-bottom:1px solid rgba(174,180,190,.14)}.modern-home-minigame-grid{grid-template-columns:1fr 1fr;gap:8px}.modern-home-trust-panel{padding:14px}.modern-home-payments>div{gap:10px;flex-wrap:wrap}.modern-home-trust-items{grid-template-columns:1fr}.modern-home-footer-grid{grid-template-columns:1fr 1fr}.modern-home-footer-brand{grid-column:1/-1;grid-row:auto}.modern-home-footer-bottom{justify-content:flex-start;flex-wrap:wrap}}
@media (max-width:400px){.modern-home-category-grid,.modern-home-minigame-grid{grid-template-columns:1fr}.modern-home-category-card{height:165px}.modern-home-product-rail{grid-auto-columns:78%}.modern-home-login{font-size:8px}}
.modern-home-product-image .shop-wishlist-button{width:26px;height:26px;border:0;background:rgba(7,11,18,.56);box-shadow:none}.modern-home-product-image .shop-wishlist-button svg{width:14px;height:14px}

/* ==========================================================================\n   v2.0.33 — Accueil Figma : largeur fluide + header historique + typo accueil\n   - remet le Header commun du site sur /\n   - retire la limite 1220px de la nouvelle home\n   - réutilise l'échelle typographique de l'ancien accueil\n   ========================================================================== */
.page.modern-home-page{
  --header-height:75px;
  padding-top:var(--header-height)!important;
  font-family:Inter,Arial,sans-serif;
}
.page.modern-home-page>.header{
  font-family:"Barlow Condensed",Inter,Arial,sans-serif;
}
.modern-home-container{
  width:calc(100% - 48px);
  max-width:none;
  margin-left:auto;
  margin-right:auto;
}

/* Echelle héritée de l'ancien accueil : display 54–76, section 30, body 16. */
.modern-home-section-head h2{font-size:30px;line-height:1;font-weight:800}
.modern-home-section-head>a{font-size:16px;line-height:1.2}
.modern-home-section-head>a span{font-size:20px}

.modern-home-hero{min-height:390px}
.modern-home-hero-content{min-height:390px}
.modern-home-hero-copy{width:min(54%,760px);padding:42px 0 36px}
.modern-home-hero-copy h1{font-size:var(--type-display);line-height:.94}
.modern-home-hero-copy p{font-size:16px;line-height:1.5;margin-bottom:24px}



.modern-home-benefits{padding-bottom:24px}
.modern-home-benefit{min-height:88px;padding:14px 18px;gap:16px}
.modern-home-benefit>span{width:42px;height:42px;flex-basis:42px}
.modern-home-benefit img{width:34px;height:34px}
.modern-home-benefit strong{font-size:18px;line-height:1.2}
.modern-home-benefit small{font-size:13px;line-height:1.35;margin-top:5px}

.modern-home-section{padding:25px 0}
.modern-home-category-grid{gap:18px}
.modern-home-category-card{height:230px}
.modern-home-category-icon{width:46px;height:46px}
.modern-home-category-icon img{width:32px;height:32px}
.modern-home-category-copy{left:16px;right:16px;bottom:16px}
.modern-home-category-copy strong{font-size:18px;line-height:1.15}
.modern-home-category-copy small{font-size:13px;line-height:1.3;margin-top:6px}

.modern-home-product-rail{grid-auto-columns:calc((100% - 72px)/5);gap:18px}
.modern-home-product-body{padding:14px}
.modern-home-product-body h3{min-height:46px;font-size:18px;line-height:1.28}
.modern-home-product-body>small{min-height:19px;margin-top:5px;font-size:13px;line-height:1.35}
.modern-home-product-price{margin:10px 0}
.modern-home-product-price>strong{font-size:16px}
.modern-home-product-price>span{font-size:11px;padding:5px 7px}
.modern-home-add{min-height:42px;font-size:14px}
.modern-home-add img{width:18px;height:18px}

.modern-home-tournament-panel{min-height:300px}
.modern-home-tournament-promo{min-height:300px}
.modern-home-tournament-promo>div{padding:24px}
.modern-home-tournament-promo h2{font-size:30px;line-height:1.05}
.modern-home-tournament-promo p{font-size:16px;line-height:1.45;max-width:560px}
.modern-home-tournament-promo li{font-size:13px;line-height:1.35}
.modern-home-tournament-promo a{min-height:44px;padding:0 18px;font-size:14px}
.modern-home-ranking,.modern-home-live{padding:20px}
.modern-home-ranking h3,.modern-home-live h3{font-size:20px;line-height:1.2}
.modern-home-ranking-list>a{min-height:45px}
.modern-home-ranking-list>a>b{font-size:13px}
.modern-home-ranking-list strong{font-size:15px;line-height:1.2}
.modern-home-ranking-list small{font-size:11px;line-height:1.25}
.modern-home-ranking-list em{font-size:13px}
.modern-home-ranking-list>p{font-size:13px}
.modern-home-ranking-link,.modern-home-live>a{font-size:14px;line-height:1.2}
.modern-home-live-head>strong{font-size:15px}
.modern-home-live-head>span{font-size:11px}
.modern-home-live>p{font-size:13px;line-height:1.35}
.modern-home-tournament-meta{font-size:13px;line-height:1.2}
.modern-home-bracket span{font-size:11px}
.modern-home-bracket>b{font-size:16px}

.modern-home-minigame-grid{gap:16px}
.modern-home-minigame-card{height:104px;grid-template-columns:104px 1fr 24px}
.modern-home-minigame-card>img{width:104px;height:104px}
.modern-home-minigame-card>div{padding:0 14px}
.modern-home-minigame-card strong{font-size:18px;line-height:1.15}
.modern-home-minigame-card small{font-size:13px;line-height:1.3;margin-top:6px}
.modern-home-minigame-card>span{font-size:22px}

.modern-home-trust-panel{min-height:140px;padding:22px 28px;gap:28px}
.modern-home-payments h2{font-size:20px}
.modern-home-payments p{font-size:13px;line-height:1.35;margin:8px 0 16px}
.modern-home-payments .binance{font-size:13px}
.modern-home-trust-items strong{font-size:16px;line-height:1.2}
.modern-home-trust-items small{font-size:13px;line-height:1.35;margin-top:5px}
.modern-home-trust-items img{width:40px;height:40px}

.modern-home-footer{padding-top:32px}
.modern-home-footer-grid{gap:30px}
.modern-home-footer-grid h3{font-size:16px;line-height:1.2}
.modern-home-footer-grid>div:not(.modern-home-footer-brand)>a,
.modern-home-footer-grid>div:not(.modern-home-footer-brand)>span{font-size:13px;line-height:1.3;margin-bottom:9px}
.modern-home-footer-brand>img{width:120px;height:60px}
.modern-home-footer-brand>a{font-size:14px}
.modern-home-footer-brand>p{font-size:13px;line-height:1.5}
.modern-home-footer-bottom{font-size:12px;line-height:1.3}

@media (max-width:1120px){
  .modern-home-container{width:calc(100% - 36px);max-width:none}
  .modern-home-product-rail{grid-auto-columns:calc((100% - 48px)/4);gap:16px}
  .modern-home-category-card{height:210px}
}
@media (max-width:980px){
  .page.modern-home-page{--header-height:124px;padding-top:var(--header-height)!important}
  .modern-home-hero{min-height:430px}.modern-home-hero-content{min-height:430px}
  .modern-home-product-rail{grid-auto-columns:calc((100% - 32px)/3);gap:16px}
  .modern-home-minigame-card strong{font-size:16px}
}
@media (max-width:640px){
  .page.modern-home-page{--header-height:116px;padding-top:var(--header-height)!important}
  .modern-home-container{width:calc(100% - 24px);max-width:none}
  .modern-home-hero{min-height:480px}.modern-home-hero-content{min-height:480px}
  .modern-home-hero-copy{padding:175px 0 32px}
  .modern-home-hero-copy h1{font-size:40px;line-height:1.02}
  .modern-home-hero-copy p{font-size:14px;line-height:1.45}
  
  .modern-home-section-head h2{font-size:26px}
  .modern-home-section-head>a{font-size:13px}
  .modern-home-benefit strong{font-size:16px}.modern-home-benefit small{font-size:13px}
  .modern-home-category-copy strong{font-size:16px}.modern-home-category-copy small{font-size:12px}
  .modern-home-product-rail{grid-auto-columns:calc((100% - 12px)/2);gap:12px}
  .modern-home-product-image{height:155px}
  .modern-home-product-body{padding:11px}
  .modern-home-product-body h3{font-size:14px;min-height:36px}
  .modern-home-product-body>small{font-size:12px}
  .modern-home-product-price>strong{font-size:15px}
  .modern-home-add{font-size:13px}
  .modern-home-tournament-promo h2{font-size:26px}
  .modern-home-tournament-promo p{font-size:14px}
  .modern-home-minigame-card{height:86px;grid-template-columns:86px 1fr 20px}
  .modern-home-minigame-card>img{width:86px;height:86px}
  .modern-home-minigame-card strong{font-size:14px}.modern-home-minigame-card small{font-size:12px}
  .modern-home-payments h2{font-size:18px}.modern-home-payments p{font-size:13px}
  .modern-home-trust-items strong{font-size:15px}.modern-home-trust-items small{font-size:12px}
  .modern-home-footer-grid h3{font-size:15px}
  .modern-home-footer-grid>div:not(.modern-home-footer-brand)>a,
  .modern-home-footer-grid>div:not(.modern-home-footer-brand)>span,
  .modern-home-footer-brand>p{font-size:12px}
}

/* ==========================================================================
   v2.0.34 — Accueil : marge Shop + cartes produits proportionnelles
   - la home reprend exactement la largeur de contenu du Shop
   - les cartes produits gardent un ratio fixe sans réduire leur typographie
   - le hover ne déplace plus la carte vers le haut, donc aucun bord n'est rogné
   ========================================================================== */

.modern-home-product-card{
  aspect-ratio:2 / 3;
  display:flex;
  flex-direction:column;
}
.modern-home-product-card:hover{
  transform:none;
  border-color:rgba(214,40,40,.54);
  box-shadow:0 12px 28px rgba(0,0,0,.22);
}
.modern-home-product-image{
  height:auto;
  min-height:0;
  flex:1 1 auto;
}
.modern-home-product-body{
  flex:0 0 auto;
}

@media (max-width:1120px){
  .page.modern-home-page .modern-home-container{
    width:var(--content-width);
    max-width:1040px;
  }
}
@media (max-width:640px){
  .page.modern-home-page .modern-home-container{
    width:var(--content-width);
    max-width:none;
  }
}

/* ==========================================================================
   v2.0.35 — Accueil : même padding interne que le Shop
   - .mhtm-modern-home reprend le gutter public du .shop-premium-main
   - les conteneurs internes occupent toute la largeur utile, sans double marge
   ========================================================================== */
.page.modern-home-page{
  --public-content-gutter:clamp(18px,2.1vw,40px);
}
.page.modern-home-page .mhtm-modern-home{
  padding-left:var(--public-content-gutter);
  padding-right:var(--public-content-gutter);
}
.page.modern-home-page .modern-home-container{
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
}

/* ==========================================================================
   v2.0.36 — Accueil : hover des cartes avantages sans rognage
   - les .modern-home-benefit ne se déplacent plus verticalement au survol
   - l'effet hover reste visible via bordure + ombre
   ========================================================================== */
.modern-home-benefit:hover{
  transform:none;
  border-color:rgba(214,40,40,.52);
  box-shadow:0 10px 24px rgba(0,0,0,.18);
}


/* ==========================================================================
   v2.0.37 — Footer moderne partagé sur toutes les pages publiques
   - remplace l'ancien .footer de PublicLayout par le footer de la nouvelle home
   - conserve les pages volontairement sans footer via showFooter={false}
   - applique le même gutter public que le Shop / accueil, sans double retrait
   ========================================================================== */
.page.inner-page > .site-modern-footer{
  width:100%;
  flex:0 0 auto;
  padding-left:var(--public-content-gutter,clamp(18px,2.1vw,40px));
  padding-right:var(--public-content-gutter,clamp(18px,2.1vw,40px));
}
.page.inner-page > .site-modern-footer > .site-modern-footer-inner{
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
}

/* ===========================================================================
   v2.0.38 — Header mobile compact + footer partagé avec fond garanti
   - l'action compte du header devient une icône sur mobile
   - un joueur avec avatar utilise sa vraie photo de profil
   - le footer moderne reste au-dessus du fond/overlay sur toutes les pages
   =========================================================================== */
.header-account-visual{
  display:none;
}
.header-account-label{
  display:inline;
}

.page.inner-page > .site-modern-footer{
  position:relative;
  z-index:4;
  isolation:isolate;
  background:linear-gradient(180deg,#060b13 0%,#03070e 100%)!important;
  box-shadow:0 -14px 34px rgba(0,0,0,.18);
}

@media (max-width:820px){
  .header-actions .header-account-btn{
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    background:transparent!important;
    box-shadow:none!important;
    display:inline-grid!important;
    place-items:center!important;
    overflow:visible!important;
    flex:0 0 42px!important;
  }
  .header-actions .header-account-btn::after{
    display:none!important;
    content:none!important;
  }
  .header-account-label{
    display:none!important;
  }
  .header .header-account-btn .header-account-visual{
    display:grid!important;
    place-items:center;
    width:32px;
    height:32px;
    border-radius:50%;
    overflow:hidden;
  }
  .header .header-account-btn .header-account-visual img{
    display:block!important;
    width:32px!important;
    height:32px!important;
    object-fit:contain;
  }
  .header .header-account-btn .header-account-visual img.is-profile-photo{
    object-fit:cover!important;
    border-radius:50%;
    border:1px solid rgba(214,40,40,.88);
    box-shadow:0 0 0 2px rgba(214,40,40,.10);
  }
}

@media (max-width:640px){
  .header-actions .header-account-btn{
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    min-height:36px!important;
    flex-basis:36px!important;
  }
  .header .header-account-btn .header-account-visual,
  .header .header-account-btn .header-account-visual img{
    width:30px!important;
    height:30px!important;
  }
}


/* ========================================================================== 
   v2.0.40 — Header mobile : autofocus iOS + bouton recherche à droite
   - header public mobile compact sur une seule rangée
   - à l'ouverture de la recherche : logo, panier et profil disparaissent
   - burger conservé ; champ à gauche et bouton recherche à droite
   - le champ utilise toute la largeur restante
   ========================================================================== */
@media (max-width:820px){
  .page.inner-page{
    --header-height:68px!important;
    padding-top:var(--header-height)!important;
  }
  .page.inner-page>.header{
    height:68px!important;
    min-height:68px!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
  }
  .page.inner-page>.header>.mobile-menu-toggle{
    flex:0 0 36px!important;
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    margin:0!important;
  }
  .page.inner-page>.header>.brand{
    width:92px!important;
    min-width:92px!important;
    height:48px!important;
    flex:0 0 92px!important;
    margin:0!important;
  }
  .page.inner-page>.header>.header-actions{
    min-width:0!important;
    margin-left:auto!important;
    display:flex!important;
    flex:0 0 auto!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:4px!important;
  }
  .page.inner-page>.header .header-search{
    min-width:36px!important;
    flex:0 0 36px!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    gap:6px!important;
  }
  .page.inner-page>.header .header-search-toggle{
    order:1!important;
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    flex:0 0 36px!important;
  }
  .page.inner-page>.header .header-search-inline{
    order:0!important;
  }

  /* Mode recherche : tout l'espace après le burger appartient à la recherche. */
  .page.inner-page>.header.search-is-open>.brand{
    display:none!important;
  }
  .page.inner-page>.header.search-is-open>.header-actions{
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    margin-left:0!important;
    justify-content:flex-start!important;
  }
  .page.inner-page>.header.search-is-open .header-cart-btn,
  .page.inner-page>.header.search-is-open .header-account-btn{
    display:none!important;
  }
  .page.inner-page>.header.search-is-open .header-search{
    width:100%!important;
    min-width:0!important;
    flex:1 1 auto!important;
  }
  .page.inner-page>.header.search-is-open .header-search-inline{
    display:block!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    flex:1 1 auto!important;
    opacity:1!important;
    overflow:visible!important;
    pointer-events:auto!important;
  }
  .page.inner-page>.header.search-is-open .header-search-inline input{
    width:100%!important;
    max-width:none!important;
    height:40px!important;
    padding:0 13px!important;
    font-size:16px!important;
  }
}

@media (max-width:420px){
  .page.inner-page{
    --header-height:64px!important;
  }
  .page.inner-page>.header{
    height:64px!important;
    min-height:64px!important;
    gap:5px!important;
  }
  .page.inner-page>.header>.brand{
    width:78px!important;
    min-width:78px!important;
    height:44px!important;
    flex-basis:78px!important;
  }
  .page.inner-page>.header.search-is-open .header-search{
    gap:5px!important;
  }
  .page.inner-page>.header.search-is-open .header-search-inline input{
    height:38px!important;
    padding-left:11px!important;
    padding-right:11px!important;
  }
}

/* ==========================================================================
   v2.0.42 — Shop : cartes identiques aux modern-home-product-card
   ========================================================================== */
.shop-premium-page .shop-modern-home-card{
  aspect-ratio:2 / 3;
  display:flex;
  min-width:0;
  overflow:hidden;
  flex-direction:column;
  border:1px solid rgba(174,180,190,.22);
  border-radius:9px;
  background:linear-gradient(180deg,#111722,#0a1018);
  box-shadow:none;
  transition:border-color .18s ease,box-shadow .18s ease;
}
.shop-premium-page .shop-modern-home-card:hover{
  transform:none;
  border-color:rgba(214,40,40,.54);
  box-shadow:0 12px 28px rgba(0,0,0,.22);
}
.shop-premium-page .shop-modern-home-card .shop-product-image{
  position:relative;
  aspect-ratio:auto;
  height:auto;
  min-height:0;
  flex:1 1 auto;
  background:radial-gradient(circle at 50% 42%,#1a2230,#090e16 72%);
  overflow:hidden;
}
.shop-premium-page .shop-modern-home-card .shop-product-image::after{
  display:none;
}
.shop-premium-page .shop-modern-home-card .shop-gallery-link{
  position:absolute;
  inset:0;
  display:block;
}
.shop-premium-page .shop-modern-home-card .shop-gallery-slide{
  width:100%!important;
  height:100%!important;
  padding:7px!important;
  object-fit:contain!important;
  transition:transform .25s ease!important;
}
.shop-premium-page .shop-modern-home-card:hover .shop-gallery-slide{
  transform:scale(1.04)!important;
}
.shop-premium-page .shop-modern-home-card .shop-product-body{
  display:block;
  min-height:0;
  flex:0 0 auto;
  padding:8px 9px 9px;
}
.shop-premium-page .shop-modern-home-card .shop-product-body h2{
  display:-webkit-box;
  min-height:25px;
  margin:0;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  font:600 10px/1.2 Inter,Arial,sans-serif;
}
.shop-premium-page .shop-modern-home-card .shop-product-body h2 a{
  color:#fff;
}
.shop-premium-page .shop-modern-home-card .shop-product-body>small{
  display:block;
  min-height:12px;
  margin-top:2px;
  overflow:hidden;
  color:#d5d9de;
  font:400 8.5px/1.2 Inter,Arial,sans-serif;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.shop-premium-page .shop-modern-home-card .modern-home-product-price{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin:6px 0;
  padding:0;
  border:0;
}
.shop-premium-page .shop-modern-price-stack{
  display:flex;
  min-width:0;
  align-items:baseline;
  gap:5px;
  overflow:hidden;
}
.shop-premium-page .shop-modern-price-stack strong{
  min-width:0;
  overflow:hidden;
  color:#ff3535;
  font:800 10px/1 Inter,Arial,sans-serif;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.shop-premium-page .shop-modern-price-stack del{
  flex:0 1 auto;
  overflow:hidden;
  color:#7f8792;
  font:400 7px/1 Inter,Arial,sans-serif;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.shop-premium-page .shop-modern-home-card .modern-home-product-price>span.in-stock,
.shop-premium-page .shop-modern-home-card .modern-home-product-price>span.out-stock{
  flex:0 0 auto;
  padding:3px 5px;
  border-radius:4px;
  font:800 6px/1 Inter,Arial,sans-serif;
  letter-spacing:.03em;
}
.shop-premium-page .shop-modern-home-card .modern-home-product-price>span.in-stock{
  border:1px solid rgba(35,190,102,.35);
  background:rgba(16,128,72,.24);
  color:#7ce7a8;
}
.shop-premium-page .shop-modern-home-card .modern-home-product-price>span.out-stock{
  border:1px solid rgba(214,40,40,.35);
  background:rgba(214,40,40,.15);
  color:#ff8888;
}
.shop-premium-page .shop-modern-home-card .modern-home-add{
  width:100%;
  height:25px;
  min-height:25px;
  padding:0;
  border:1px solid rgba(214,40,40,.85);
  border-radius:5px;
  background:rgba(214,40,40,.08);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  font:600 8px/1 Inter,Arial,sans-serif;
  text-transform:none;
}
.shop-premium-page .shop-modern-home-card .modern-home-add:hover,
.shop-premium-page .shop-modern-home-card .modern-home-add:focus-visible{
  background:rgba(214,40,40,.2);
  box-shadow:none;
}
.shop-premium-page .shop-modern-home-card .modern-home-add img{
  width:11px;
  height:11px;
  filter:brightness(4);
}
.shop-premium-page .shop-modern-home-card .modern-home-add.disabled{
  opacity:.5;
  border-color:#48505d;
}
.shop-premium-page .shop-modern-home-card .shop-badge-promo{
  top:8px;
  left:8px;
  z-index:4;
  padding:3px 5px;
  border-radius:4px;
  font-size:7px;
}
.shop-premium-page .shop-modern-home-card .shop-wishlist-button{
  top:8px;
  right:8px;
}

/* ==========================================================================
   v2.0.47 — Accueil : fond continu entre .mhtm-modern-home et son <main>
   - supprime la nuance verticale créée par le padding du conteneur parent
   - le parent reprend exactement le fond des sections de l'accueil
   - le <main> reste transparent pour ne jamais créer une seconde couche
   ========================================================================== */
.page.modern-home-page .mhtm-modern-home{
  background:#06101a;
}
.page.modern-home-page .mhtm-modern-home>main{
  background:transparent;
}

/* =========================================================
   CART FIGMA V2.0.49 — design issu du prototype cart.zip
   Header/Footer restent ceux de PublicLayout.
   ========================================================= */
.cart-figma-page{background:#080b12}
.cart-figma-main{
  width:100%;
  max-width:none;
  padding:0 clamp(18px,2.1vw,40px) 72px;
}
.cart-figma-hero{
  position:relative;
  min-height:128px;
  display:flex;
  align-items:center;
  margin:0 calc(0px - clamp(18px,2.1vw,40px)) 20px;
  padding:24px clamp(18px,3.8vw,58px);
  overflow:hidden;
  border-top:1px solid rgba(214,40,40,.22);
  border-bottom:1px solid rgba(214,40,40,.32);
  background:
    linear-gradient(90deg,rgba(4,7,12,.98),rgba(8,11,18,.86) 48%,rgba(24,5,9,.88)),
    radial-gradient(circle at 78% 50%,rgba(214,40,40,.16),transparent 33%);
}
.cart-figma-hero::before,.cart-figma-hero::after{
  content:"";position:absolute;top:-28px;width:260px;height:210px;opacity:.18;pointer-events:none;
  background-image:linear-gradient(30deg,transparent 24%,rgba(214,40,40,.8) 25%,rgba(214,40,40,.8) 27%,transparent 28%,transparent 74%,rgba(214,40,40,.8) 75%,rgba(214,40,40,.8) 77%,transparent 78%),linear-gradient(150deg,transparent 24%,rgba(214,40,40,.8) 25%,rgba(214,40,40,.8) 27%,transparent 28%,transparent 74%,rgba(214,40,40,.8) 75%,rgba(214,40,40,.8) 77%,transparent 78%);
  background-size:46px 80px;
}
.cart-figma-hero::before{left:-35px}.cart-figma-hero::after{right:-35px;transform:scaleX(-1)}
.cart-figma-hero>div{position:relative;z-index:1}
.cart-figma-hero h1{margin:0 0 10px;color:#fff;font-family:"Teko",Impact,sans-serif;font-size:clamp(44px,4vw,62px);font-weight:600;line-height:.9;letter-spacing:.01em}
.cart-figma-hero h1 span{color:#f0202b}
.cart-figma-hero nav{display:flex;align-items:center;gap:8px;font-size:13px}
.cart-figma-hero nav a{color:#aeb4be;text-decoration:none}.cart-figma-hero nav a:hover{color:#fff}.cart-figma-hero nav b{color:#616977;font-weight:400}.cart-figma-hero nav span{color:#d62828}

.cart-figma-layout{grid-template-columns:minmax(0,2.22fr) minmax(350px,.98fr);gap:30px;align-items:start}
.cart-figma-items{
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  border-radius:11px;
  background:linear-gradient(180deg,#111722 0%,#0c121b 100%);
  box-shadow:0 12px 34px rgba(0,0,0,.28);
}
.cart-figma-items .cart-lines{display:grid}
.cart-figma-items .cart-line{
  grid-template-columns:168px minmax(0,1fr) minmax(265px,auto);
  gap:20px;
  min-height:102px;
  padding:10px 16px;
  border-bottom:1px solid rgba(255,255,255,.075);
  background:transparent;
  transition:background .16s ease;
}
.cart-figma-items .cart-line:hover{background:rgba(255,255,255,.018)}
.cart-figma-items .cart-line-media{
  width:168px;height:80px;border-radius:8px;
  border:1px solid rgba(255,255,255,.1);
  background:#080c13 url("/assets/shop-article-bg.png") center/cover no-repeat;
}
.cart-figma-items .cart-line-media img{padding:5px;object-fit:contain}
.cart-figma-items .cart-line-info{gap:4px;align-content:center}
.cart-figma-items .cart-line-title{font-size:16px;font-weight:700;line-height:1.28;color:#f5f6f8}
.cart-figma-items .cart-line-info small{font-size:12px;color:#9aa2ae}
.cart-figma-items .cart-line-info code{font-size:10px;color:#737c89;background:rgba(255,255,255,.035);border-radius:4px;padding:2px 5px;width:max-content}
.cart-figma-items .cart-line-unit-price{display:none}
.cart-figma-items .cart-line-controls{grid-template-columns:114px minmax(100px,1fr) 30px;gap:16px;align-items:center;justify-items:end}
.cart-figma-items .cart-line-quantity{grid-template-columns:34px 44px 34px;height:42px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#0b1018;overflow:hidden}
.cart-figma-items .cart-line-quantity button{border:0;background:transparent;color:#b9c0ca;font-size:20px}
.cart-figma-items .cart-line-quantity button:hover:not(:disabled){background:rgba(214,40,40,.12);color:#f0202b}
.cart-figma-items .cart-line-quantity input{border:0;border-left:1px solid rgba(255,255,255,.1);border-right:1px solid rgba(255,255,255,.1);background:transparent;color:#fff;font-size:15px;font-weight:700;text-align:center}
.cart-figma-items .cart-line-total{font-size:17px;font-weight:800;color:#fff;white-space:nowrap}
.cart-figma-items .cart-line-remove{grid-column:auto;width:28px;height:28px;padding:0;border:1.5px solid #d62828;border-radius:50%;display:grid;place-items:center;color:#d62828;background:transparent;font-size:19px;font-weight:400;line-height:1;letter-spacing:0}
.cart-figma-items .cart-line-remove:hover{background:#d62828;color:#fff}
.cart-figma-clear-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-top:1px solid rgba(255,255,255,.04)}
.cart-figma-clear-row .cart-clear-btn{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 12px;border:1px solid rgba(214,40,40,.75);border-radius:5px;color:#f0202b;font-size:12px;font-weight:600;text-transform:none;letter-spacing:0}
.cart-figma-clear-row .cart-clear-btn:hover{border-color:#f0202b;background:rgba(214,40,40,.08)}
.cart-line-count{color:#737c89;font-size:11px}.cart-line-count b{color:#aeb4be}
.cart-figma-items .cart-empty{min-height:360px;padding:54px 24px;background:transparent}
.cart-figma-items .cart-empty h2{font-size:22px;text-transform:none;font-weight:700}.cart-figma-items .cart-empty p{font-size:13px}

.cart-figma-summary{
  position:sticky;top:90px;overflow:hidden;
  border:1px solid rgba(214,40,40,.92);
  border-radius:11px;
  background:linear-gradient(145deg,#111722,#0b1018);
  box-shadow:0 0 28px rgba(214,40,40,.075),0 16px 38px rgba(0,0,0,.3);
  padding:22px;
}
.cart-summary-title{margin:0 0 18px;color:#f0202b;font-size:13px;font-weight:900;letter-spacing:.03em}
.cart-figma-summary .cart-summary-row{padding:5px 0;border:0;color:#aeb4be;font-size:13px}
.cart-figma-summary .cart-summary-row strong{font-size:13px;font-weight:700;color:#fff}.cart-figma-summary .cart-summary-row .is-free{color:#69d27d}
.cart-summary-total{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:17px 0 0;padding:17px 0 0;border-top:1px solid rgba(255,255,255,.14)}
.cart-summary-total>span{display:grid;gap:3px}.cart-summary-total b{font-size:15px;color:#fff}.cart-summary-total small{font-size:10px;color:#8d95a2;font-weight:400}.cart-summary-total>strong{color:#f0202b;font-size:24px;white-space:nowrap}
.cart-figma-summary .cart-checkout-customer{margin:17px 0 0;padding:13px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(8,11,18,.45)}
.cart-figma-summary .cart-payment-title{padding:0 0 9px}.cart-figma-summary .cart-payment-title>span{font-size:11px}.cart-figma-summary .cart-payment-title small{font-size:10px}
.cart-figma-summary .cart-customer-fields{gap:7px}
.cart-figma-summary .cart-customer-field{gap:4px}.cart-figma-summary .cart-customer-field>span{font-size:9px;color:#aeb4be;letter-spacing:.06em}
.cart-figma-summary .cart-customer-field input,.cart-figma-summary .cart-customer-field textarea{font-size:11px;border-radius:6px;background:#0c1119}
.cart-figma-summary .cart-customer-field input{height:34px}.cart-figma-summary .cart-customer-field textarea{min-height:54px;padding-top:8px;padding-bottom:8px}
.cart-figma-summary>.cart-payment-title{padding:16px 0 8px}
.cart-figma-summary .cart-payment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:0}
.cart-figma-summary .cart-payment-option{grid-template-columns:44px minmax(0,1fr);gap:7px;min-height:44px;padding:6px 7px;border-radius:6px}
.cart-figma-summary .cart-payment-brand{width:42px;height:27px;padding:3px 4px;font-size:9px;border-radius:4px}
.cart-figma-summary .cart-payment-copy strong{font-size:10px}.cart-figma-summary .cart-payment-copy small{font-size:8px}.cart-figma-summary .cart-payment-option em{display:none}
.cart-figma-summary .cart-checkout-note{margin:11px 0 9px;font-size:10px;line-height:1.4}
.cart-figma-summary .cart-checkout-btn{width:100%;min-height:48px;margin:0;border-radius:7px;font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:8px}
.cart-continue-btn{display:flex;align-items:center;justify-content:center;width:100%;height:43px;margin-top:9px;border:1px solid rgba(255,255,255,.2);border-radius:7px;color:#b8bec8;text-decoration:none;font-size:11px;font-weight:700}.cart-continue-btn:hover{border-color:rgba(255,255,255,.38);color:#fff}
.cart-figma-summary .cart-checkout-error{margin:9px 0 0;font-size:10px}
.cart-secure-payments{margin-top:14px;padding:11px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:rgba(255,255,255,.015);text-align:center}
.cart-secure-payments>b{display:block;margin-bottom:9px;color:#c9cdd4;font-size:9px}.cart-secure-payments>div{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.cart-secure-payments>div>span{height:29px;display:flex;align-items:center;justify-content:center;padding:3px 5px;border:1px solid rgba(255,255,255,.14);border-radius:5px;background:#0b1018;color:#fff;font-size:8px;font-weight:800;overflow:hidden}.cart-secure-payments img{max-width:100%;max-height:100%;object-fit:contain}.cart-secure-payments .visa{color:#466bff}.cart-secure-payments .binance{display:inline-flex;align-items:center;gap:4px;color:#f0b90b;font-size:7px}.cart-secure-payments .binance img{width:12px;height:12px;flex:0 0 12px;object-fit:contain}

.cart-trust-strip{position:relative;display:grid;grid-template-columns:repeat(3,1fr);margin-top:14px;border:1px solid rgba(214,40,40,.68);border-radius:10px;background:#0c1119;overflow:hidden}
.cart-trust-strip::before{content:"";position:absolute;inset:0;opacity:.05;background-image:linear-gradient(30deg,#d62828 12%,transparent 12.5%,transparent 87%,#d62828 87.5%,#d62828),linear-gradient(150deg,#d62828 12%,transparent 12.5%,transparent 87%,#d62828 87.5%,#d62828);background-size:34px 58px;pointer-events:none}
.cart-trust-strip article{position:relative;z-index:1;min-height:72px;display:flex;align-items:center;justify-content:center;gap:14px;padding:12px 18px}.cart-trust-strip article+article{border-left:1px solid rgba(255,255,255,.08)}
.cart-trust-strip article>span{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px}.cart-trust-strip img{width:29px;height:29px;filter:invert(17%) sepia(91%) saturate(5527%) hue-rotate(349deg) brightness(94%) contrast(89%)}.cart-trust-bolt{color:#f0202b;font-size:34px;line-height:1}
.cart-trust-strip div{display:grid;gap:3px}.cart-trust-strip strong{font-size:11px;color:#fff}.cart-trust-strip small{font-size:10px;color:#9ba3af}

.cart-recommendations{margin-top:18px}.cart-recommendations h2{position:relative;margin:0 0 12px;padding-left:15px;color:#fff;font-size:15px;font-weight:800;letter-spacing:.03em}.cart-recommendations h2::before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:3px;border-radius:2px;background:#d62828}
.cart-recommend-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.cart-recommend-card{position:relative;display:grid;grid-template-columns:78px minmax(0,1fr) 34px;align-items:center;gap:10px;min-width:0;padding:9px;border:1px solid rgba(255,255,255,.11);border-radius:8px;background:linear-gradient(145deg,#111722,#0b1018);transition:border-color .16s ease,box-shadow .16s ease}.cart-recommend-card:hover{border-color:rgba(214,40,40,.55);box-shadow:0 8px 24px rgba(0,0,0,.22)}
.cart-recommend-image{width:78px;height:66px;display:grid;place-items:center;overflow:hidden;border-radius:6px;background:#070b11 url("/assets/shop-article-bg.png") center/cover no-repeat}.cart-recommend-image>img{width:100%;height:100%;object-fit:contain;padding:4px}.cart-recommend-image>span{display:grid;place-items:center}.cart-recommend-image>span img{width:30px;height:30px}
.cart-recommend-copy{min-width:0;display:grid;gap:3px}.cart-recommend-copy h3{margin:0;min-width:0;font-size:11px;line-height:1.25}.cart-recommend-copy h3 a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;text-decoration:none}.cart-recommend-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#9199a6;font-size:9px}.cart-recommend-copy>strong{margin-top:4px;color:#fff;font-size:12px}
.cart-recommend-add{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:5px;background:#f0202b;color:#fff;text-decoration:none;font-size:23px;line-height:1;cursor:pointer}.cart-recommend-add:hover{background:#d91d28}

@media(max-width:1180px){
  .cart-figma-layout{grid-template-columns:minmax(0,1.55fr) minmax(330px,.82fr);gap:18px}
  .cart-figma-items .cart-line{grid-template-columns:132px minmax(0,1fr) auto;gap:14px}.cart-figma-items .cart-line-media{width:132px;height:76px}.cart-figma-items .cart-line-controls{grid-template-columns:104px auto 28px;gap:10px}.cart-recommend-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .cart-figma-layout{grid-template-columns:1fr}.cart-figma-summary{position:static}.cart-recommend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .cart-figma-main{padding-left:14px;padding-right:14px;padding-bottom:50px}.cart-figma-hero{min-height:100px;margin-left:-14px;margin-right:-14px;margin-bottom:14px;padding:18px 14px}.cart-figma-hero h1{font-size:36px}.cart-figma-hero nav{font-size:11px}
  .cart-figma-layout{gap:14px}.cart-figma-items{border-radius:9px}
  .cart-figma-items .cart-line{grid-template-columns:108px minmax(0,1fr) 28px;grid-template-areas:"media info remove" "media controls controls";gap:8px 11px;min-height:0;padding:12px}
  .cart-figma-items .cart-line-media{grid-area:media;width:108px;height:74px}.cart-figma-items .cart-line-info{grid-area:info}.cart-figma-items .cart-line-title{font-size:13px}.cart-figma-items .cart-line-info small{font-size:10px}.cart-figma-items .cart-line-info code{display:none}.cart-figma-items .cart-line-controls{grid-area:controls;grid-template-columns:100px 1fr;gap:10px;width:100%;justify-items:end}.cart-figma-items .cart-line-quantity{width:100px;height:36px;grid-template-columns:30px 40px 30px}.cart-figma-items .cart-line-total{font-size:14px}.cart-figma-items .cart-line-remove{grid-area:remove;grid-column:auto;width:26px;height:26px;font-size:17px}.cart-figma-clear-row{padding:9px 12px}.cart-line-count{display:none}
  .cart-figma-summary{padding:16px;border-radius:9px}.cart-summary-title{font-size:12px;margin-bottom:15px}.cart-summary-total>strong{font-size:22px}.cart-figma-summary .cart-customer-fields{grid-template-columns:1fr}.cart-figma-summary .cart-customer-field-wide{grid-column:auto}.cart-figma-summary .cart-payment-grid{grid-template-columns:1fr 1fr}.cart-figma-summary .cart-payment-option{grid-template-columns:38px minmax(0,1fr)}.cart-figma-summary .cart-payment-brand{width:36px}
  .cart-trust-strip{grid-template-columns:1fr}.cart-trust-strip article{justify-content:flex-start;min-height:62px}.cart-trust-strip article+article{border-left:0;border-top:1px solid rgba(255,255,255,.08)}
  .cart-recommend-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}.cart-recommend-card{flex:0 0 268px;scroll-snap-align:start}
}

/* ================================================================
   v2.0.50 — Fiche article Figma Make, header/footer publics conservés
   ================================================================ */
.shop-article-v2050-page{
  background:#080b12;
}
.shop-article-v2050{
  width:100%;
  max-width:none;
  padding-left:clamp(18px,2.1vw,40px);
  padding-right:clamp(18px,2.1vw,40px);
  padding-bottom:64px;
}
.shop-article-breadcrumb{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  margin:0 0 12px;
  color:#747b86;
  font-size:13px;
  white-space:nowrap;
  overflow:hidden;
}
.shop-article-breadcrumb a{color:#8f96a2;text-decoration:none;transition:color .16s ease}
.shop-article-breadcrumb a:hover{color:#fff}
.shop-article-breadcrumb span{color:#535a66}
.shop-article-breadcrumb b{min-width:0;overflow:hidden;text-overflow:ellipsis;color:#9ca3ae;font-weight:500}
.shop-article-main-grid{
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(390px,.97fr);
  gap:28px;
  align-items:stretch;
}
.shop-article-gallery-shell{min-width:0}
.shop-article-gallery{
  min-height:0;
  height:clamp(420px,38vw,560px);
  border:1px solid rgba(255,255,255,.11);
  border-radius:14px;
  background:#090d15 url("/assets/shop-article-bg.png") center/cover no-repeat;
  overflow:hidden;
  box-shadow:0 10px 36px rgba(0,0,0,.18);
}
.shop-article-gallery::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:radial-gradient(circle at 50% 47%,rgba(214,40,40,.07),transparent 42%),linear-gradient(180deg,rgba(3,7,13,.04),rgba(3,7,13,.25));
}
.shop-article-gallery .shop-gallery-slide{
  z-index:1;
  padding:clamp(22px,3vw,46px)!important;
  object-fit:contain!important;
}
.shop-article-gallery .shop-image-fallback{position:relative;z-index:1}
.shop-article-gallery .shop-gallery-nav,.shop-article-gallery .shop-gallery-counter{z-index:6}
.shop-article-thumbnails{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:12px;
}
.shop-article-thumbnail{
  position:relative;
  height:92px;
  padding:7px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:11px;
  background:#0b111a;
  overflow:hidden;
  cursor:pointer;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
.shop-article-thumbnail:hover,.shop-article-thumbnail.is-active{
  border-color:#d62828;
  background:#0f151f;
  box-shadow:0 0 0 1px rgba(214,40,40,.12);
}
.shop-article-thumbnail img{width:100%;height:100%;object-fit:contain;display:block}
.shop-article-info-panel{
  min-width:0;
  padding:clamp(24px,2.4vw,36px);
  border:1px solid rgba(255,255,255,.1);
  border-radius:14px;
  background:linear-gradient(145deg,#0a1018 0%,#081019 62%,#07101a 100%);
  box-shadow:0 10px 36px rgba(0,0,0,.16);
}
.shop-article-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.shop-article-title-row>div{min-width:0}
.shop-article-info-panel .shop-product-category{
  margin:0 0 10px;
  color:#ea252b;
  font-size:12px;
  font-weight:800;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.shop-article-info-panel h1{
  margin:0;
  color:#f8f9fa;
  font-size:clamp(28px,2.35vw,40px);
  font-weight:700;
  line-height:1.14;
  letter-spacing:-.025em;
}
.shop-article-wishlist{
  flex:0 0 auto;
  width:40px!important;
  height:40px!important;
  margin-top:2px;
  border:1px solid rgba(255,255,255,.1)!important;
  border-radius:10px!important;
  background:#101721!important;
}
.shop-article-info-panel .shop-detail-vendor{margin:10px 0 0;color:#858d98;font-size:12px;letter-spacing:.07em}
.shop-article-rating{display:flex;align-items:center;gap:8px;margin-top:18px;color:#8f96a2;font-size:13px}
.shop-article-rating>span{color:#f1252b;letter-spacing:2px;font-size:17px}
.shop-article-rating>b{color:#aeb4be;font-weight:600}
.shop-article-rating>small{font-size:13px}
.shop-article-price-stock{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px}
.shop-article-info-panel .shop-detail-price{margin:0;gap:10px}
.shop-article-info-panel .shop-detail-price strong{color:#f0262c;font-size:clamp(27px,2vw,34px);font-weight:700}
.shop-article-info-panel .shop-detail-price del{font-size:14px}
.shop-article-info-panel .shop-detail-stock{
  justify-content:flex-end;
  padding:8px 13px;
  border-radius:8px;
  background:rgba(24,195,107,.09);
  font-size:11px;
  letter-spacing:.03em;
}
.shop-article-info-panel .shop-detail-stock.is-out{background:rgba(255,255,255,.05)}
.shop-article-info-panel .shop-detail-stock>span{width:7px;height:7px}
.shop-article-info-panel .shop-detail-stock small{width:100%;margin:1px 0 0;text-align:right;font-size:10px}
.shop-article-short-description{
  max-width:95%;
  margin:20px 0 0!important;
  color:#9ba2ac!important;
  font-size:14px!important;
  line-height:1.62!important;
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.shop-article-feature-chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:19px;
}
.shop-article-feature-chips>div{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:40px;
  max-width:100%;
  padding:7px 12px;
  border-radius:8px;
  background:#111821;
  color:#e7e9ec;
  font-size:11px;
}
.shop-article-feature-chips strong{color:#e6252b;font-size:10px;text-transform:uppercase;letter-spacing:.04em}
.shop-article-feature-chips span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.shop-article-purchase{
  gap:12px;
  margin-top:24px;
  padding:0;
  border:0;
  background:transparent;
}
.shop-article-purchase .shop-variant-select-field>span,.shop-article-qty-label{color:#8f969f;font-size:11px;font-weight:500;letter-spacing:0}
.shop-article-purchase .shop-variant-select-field select{height:45px;border-radius:9px;background:#10161f}
.shop-article-qty-label{margin-top:1px}
.shop-article-purchase-row{
  display:grid;
  grid-template-columns:108px minmax(0,1fr) minmax(0,1fr);
  gap:12px;
}
.shop-article-purchase-row .shop-quantity-control{
  grid-template-columns:34px 40px 34px;
  width:108px;
  height:50px;
  border-radius:9px;
  background:#10161f;
}
.shop-article-purchase-row .shop-quantity-control button{font-size:18px}
.shop-article-add-btn,.shop-article-buy-btn{
  min-width:0;
  height:50px;
  border-radius:9px;
  font:600 13px/1 inherit;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  transition:border-color .16s ease,background .16s ease,filter .16s ease;
}
.shop-article-add-btn{border:1px solid #d62828;background:#111720;color:#f2f3f5}
.shop-article-add-btn:hover{background:rgba(214,40,40,.09);border-color:#f02b31}
.shop-article-add-btn img{width:16px;height:16px;filter:brightness(0) invert(1)}
.shop-article-buy-btn{border:1px solid #e11e24;background:linear-gradient(90deg,#e11e24,#f0242a);color:#fff}
.shop-article-buy-btn:hover{filter:brightness(1.08)}
.shop-article-buy-btn span{color:#ffd450}
.shop-article-view-cart{margin-top:0;font-size:11px;color:#8f96a2}
.shop-article-tabs-panel{
  margin-top:22px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:12px;
  overflow:hidden;
  background:linear-gradient(100deg,#0a1017 0%,#0a1017 72%,#0b1119 100%);
}
.shop-article-tabs{
  display:flex;
  gap:10px;
  min-height:48px;
  padding:0 18px;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.shop-article-tabs button{
  position:relative;
  padding:0 14px;
  border:0;
  background:transparent;
  color:#8f96a2;
  font:500 14px/1 inherit;
  cursor:pointer;
}
.shop-article-tabs button::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:transparent}
.shop-article-tabs button.is-active{color:#fff}
.shop-article-tabs button.is-active::after{background:#f0232a}
.shop-article-tab-copy{min-height:92px;padding:16px 28px 20px;color:#aeb4be;font-size:14px;line-height:1.65}
.shop-article-tab-copy p{max-width:880px;margin:0;white-space:pre-line}
.shop-article-tab-copy dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}
.shop-article-tab-copy dl>div{padding:10px 12px;border:1px solid rgba(255,255,255,.07);border-radius:7px;background:#0d141d}
.shop-article-tab-copy dt{color:#e22a30;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.shop-article-tab-copy dd{margin:4px 0 0;color:#e4e6e9;font-size:13px;overflow-wrap:anywhere}
.shop-article-related-section{margin-top:22px}
.shop-article-related-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px;padding-left:12px;border-left:3px solid #e52329}
.shop-article-related-head h2{margin:0;color:#f5f6f7;font-size:18px;font-weight:700}
.shop-article-related-head a{color:#e62a30;text-decoration:none;font-size:11px}
.shop-article-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.shop-article-related-card{
  position:relative;
  display:grid;
  grid-template-columns:42% 1fr 34px;
  align-items:center;
  gap:10px;
  min-width:0;
  height:132px;
  padding:10px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:10px;
  background:#0b1119;
  overflow:hidden;
  transition:border-color .16s ease,box-shadow .16s ease;
}
.shop-article-related-card:hover{border-color:rgba(214,40,40,.65);box-shadow:0 8px 24px rgba(0,0,0,.16)}
.shop-article-related-image{display:grid;place-items:center;width:100%;height:100%;border-radius:7px;background:#0d141d;overflow:hidden}
.shop-article-related-image>img{width:100%;height:100%;object-fit:contain;padding:5px}
.shop-article-related-card>div{min-width:0}
.shop-article-related-card small{display:block;color:#8f96a2;font-size:10px;text-transform:uppercase}
.shop-article-related-card h3{margin:5px 0 9px;font-size:13px;line-height:1.3;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.shop-article-related-card h3 a{color:#f1f2f4;text-decoration:none}
.shop-article-related-card strong{color:#f1262c;font-size:13px}
.shop-article-related-action{display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;text-decoration:none;background:#111822;font-size:21px}
.shop-article-related-action:hover{border-color:#d62828;background:rgba(214,40,40,.12)}

@media(max-width:1050px){
  .shop-article-main-grid{grid-template-columns:minmax(0,1fr) minmax(340px,.95fr);gap:18px}
  .shop-article-gallery{height:480px}
  .shop-article-purchase-row{grid-template-columns:108px 1fr}.shop-article-buy-btn{grid-column:1/-1}
  .shop-article-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .shop-article-main-grid{grid-template-columns:1fr}
  .shop-article-gallery{height:min(70vw,520px)}
  .shop-article-info-panel{padding:22px}
  .shop-article-purchase-row{grid-template-columns:108px 1fr 1fr}.shop-article-buy-btn{grid-column:auto}
}
@media(max-width:640px){
  .shop-article-v2050{padding-left:14px;padding-right:14px;padding-bottom:46px}
  .shop-article-breadcrumb{font-size:10px;gap:7px;min-height:36px;margin-bottom:8px}
  .shop-article-gallery{height:76vw;min-height:275px;border-radius:11px}
  .shop-article-gallery .shop-gallery-slide{padding:18px!important}
  .shop-article-thumbnails{gap:7px;margin-top:8px}.shop-article-thumbnail{height:64px;padding:4px;border-radius:8px}
  .shop-article-info-panel{padding:18px;border-radius:11px}
  .shop-article-info-panel h1{font-size:27px}.shop-article-wishlist{width:36px!important;height:36px!important}
  .shop-article-price-stock{align-items:flex-start;flex-direction:column}.shop-article-info-panel .shop-detail-stock{justify-content:flex-start}.shop-article-info-panel .shop-detail-stock small{text-align:left}
  .shop-article-short-description{max-width:none;font-size:13px!important}
  .shop-article-feature-chips{display:grid;grid-template-columns:1fr}.shop-article-feature-chips>div{width:100%}
  .shop-article-purchase-row{grid-template-columns:104px minmax(0,1fr)}.shop-article-purchase-row .shop-quantity-control{width:104px;grid-template-columns:32px 40px 32px}.shop-article-buy-btn{grid-column:1/-1}
  .shop-article-tabs{overflow-x:auto;padding:0 8px;gap:0}.shop-article-tabs button{flex:0 0 auto;padding:0 14px;font-size:13px}
  .shop-article-tab-copy{padding:14px 16px 17px;font-size:13px}.shop-article-tab-copy dl{grid-template-columns:1fr}
  .shop-article-related-grid{grid-template-columns:1fr}.shop-article-related-card{height:122px}
}
@media(max-width:390px){
  .shop-article-thumbnails{grid-template-columns:repeat(3,minmax(0,1fr))}
  .shop-article-purchase-row{grid-template-columns:1fr}.shop-article-purchase-row .shop-quantity-control{width:100%;grid-template-columns:1fr 46px 1fr}.shop-article-buy-btn{grid-column:auto}
}
.shop-article-tab-copy .shop-detail-specifications.shop-article-details-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;border:0;background:transparent;border-radius:0;overflow:visible}
.shop-article-tab-copy .shop-detail-specifications.shop-article-details-list>div{padding:10px 12px;border:1px solid rgba(255,255,255,.07);border-radius:7px;background:#0d141d}
@media(max-width:640px){.shop-article-tab-copy .shop-detail-specifications.shop-article-details-list{grid-template-columns:1fr}}

/* ========================================================================== 
   v2.0.55 — Accueil : hero réellement pleine largeur
   - étend le fond du hero jusque sur les deux bords de .mhtm-modern-home
   - conserve le contenu aligné sur le gutter commun des autres sections
   ========================================================================== */
.page.modern-home-page .modern-home-hero{
  margin-inline-start:calc(0px - var(--public-content-gutter));
  margin-inline-end:calc(0px - var(--public-content-gutter));
  padding-inline:var(--public-content-gutter);
}

/* Jeux + planning — intégration des maquettes "new comp" */
.new-games-page,.new-planning-page{background:#080b12;color:#f5f6f8}
.new-games-page .page-bg,.new-planning-page .page-bg{opacity:.3;filter:brightness(.48) saturate(.8)}
.new-games-hero,.new-planning-hero{position:relative;isolation:isolate;min-height:190px;padding:42px max(28px,calc((100vw - 1600px)/2));display:flex;align-items:center;justify-content:space-between;gap:40px;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.07);background:radial-gradient(circle at 72% 35%,rgba(190,22,35,.24),transparent 33%),linear-gradient(110deg,#090c13 0%,#11101a 58%,#160910 100%)}
.new-games-hero:before,.new-planning-hero:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.28;background:repeating-linear-gradient(125deg,transparent 0 55px,rgba(214,40,40,.22) 56px,transparent 57px 100px)}
.new-games-hero>div,.new-planning-hero>div{max-width:720px}
.new-games-kicker,.new-planning-hero small{display:block;margin-bottom:9px;color:#d62828;font-size:12px;font-weight:700;letter-spacing:2.2px}
.new-games-hero h1,.new-planning-hero h1{margin:0;font-family:var(--font-title,"Arial Narrow",sans-serif);font-size:clamp(38px,4vw,62px);font-weight:800;line-height:.95;letter-spacing:.2px;text-transform:uppercase}
.new-games-hero h1 b,.new-planning-hero h1 b{color:#d62828}
.new-games-hero p,.new-planning-hero p{max-width:620px;margin:13px 0 0;color:#aeb4be;font-size:15px;line-height:1.6}
.new-games-hero>strong,.new-planning-hero>strong{color:rgba(255,255,255,.4);font-family:var(--font-title,"Arial Narrow",sans-serif);font-size:24px;font-style:italic;line-height:1.35;letter-spacing:3px;text-align:right;white-space:nowrap}
.new-games-hero>strong i{color:#d62828;font-style:inherit}
.new-games-main,.new-planning-main{position:relative;z-index:2;width:min(calc(100% - 56px),1600px);margin:0 auto;padding:22px 0 70px}
.new-games-filters{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.new-games-filters button{min-height:36px;padding:7px 15px;border:1px solid rgba(255,255,255,.13);border-radius:7px;background:#0d121b;color:#aeb4be;display:flex;align-items:center;gap:7px;font:600 12px/1.1 inherit;white-space:nowrap;cursor:pointer}
.new-games-filters button.is-active,.new-games-filters button:hover{border-color:#d62828;background:#d62828;color:#fff;box-shadow:0 5px 18px rgba(214,40,40,.2)}
.new-games-toolbar{margin:14px 0 17px;display:flex;align-items:center;gap:12px}
.new-games-search{width:min(420px,100%);height:40px;padding:0 12px;border:1px solid rgba(255,255,255,.1);border-radius:7px;background:#101620;display:flex;align-items:center;gap:9px}
.new-games-search img{width:17px;height:17px;filter:brightness(0) invert(1);opacity:.5}
.new-games-search input{width:100%;border:0!important;outline:0;background:transparent!important;color:#fff;font-size:13px}
.new-games-sort{height:40px;padding:0 10px;border:1px solid rgba(255,255,255,.1);border-radius:7px;background:#101620;display:flex;align-items:center;gap:5px;color:#7e8795;font-size:12px}
.new-games-sort select{border:0!important;padding:0 22px 0 0!important;background:transparent!important;color:#fff;font-weight:600}
.new-games-count{margin-left:auto;color:#7e8795;font-size:12px;white-space:nowrap}
.new-games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}
.new-game-card{min-width:0;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:#101620;box-shadow:0 12px 34px rgba(0,0,0,.25);transition:transform .18s ease,border-color .18s ease}
.new-game-card:hover{transform:translateY(-3px);border-color:rgba(214,40,40,.48)}
.new-game-card.is-closed{opacity:.76}
.new-game-visual{position:relative;aspect-ratio:16/8;overflow:hidden;background:radial-gradient(circle at 50% 30%,rgba(214,40,40,.23),transparent 60%),#080d15}
.new-game-visual:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#101620)}
.new-game-visual img{width:100%;height:100%;padding:13px;object-fit:contain;display:block;transition:transform .25s ease}
.new-game-card:hover .new-game-visual img{transform:scale(1.04)}
.new-game-status{position:absolute;z-index:2;top:11px;right:11px;padding:5px 8px;border-radius:4px;background:rgba(8,11,18,.85);color:#89919d;font-size:10px;font-weight:700;text-transform:uppercase}
.new-game-status.is-open{background:rgba(23,150,91,.9);color:#fff}
.new-game-copy{padding:14px}
.new-game-copy>small{color:#d62828;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase}
.new-game-copy h2{margin:5px 0 7px;color:#fff;font-family:var(--font-title,"Arial Narrow",sans-serif);font-size:22px;font-weight:700;line-height:1.05;text-transform:uppercase}
.new-game-copy>p{min-height:42px;margin:0;color:#89919d;font-size:12px;line-height:1.5}
.new-game-platforms{min-height:22px;margin:10px 0;display:flex;flex-wrap:wrap;gap:5px}
.new-game-platforms span:empty{display:none}
.new-game-platforms span{padding:3px 6px;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#aeb4be;font-size:9px;font-weight:600}
.new-game-capacity{display:grid;grid-template-columns:1fr auto;gap:6px;color:#aeb4be;font-size:11px}
.new-game-capacity em{color:#7e8795;font-style:normal}.new-game-capacity>i{grid-column:1/-1;height:3px;overflow:hidden;border-radius:2px;background:rgba(255,255,255,.08)}
.new-game-capacity>i>b{display:block;height:100%;background:linear-gradient(90deg,#d62828,#f0202b)}
.new-game-card-actions{margin-top:14px;display:flex;gap:7px}
.new-game-card-actions a{min-height:34px;padding:8px 10px;border:1px solid rgba(255,255,255,.13);border-radius:5px;color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;flex:1;text-align:center;font-size:10px;font-weight:700;text-decoration:none}
.new-game-card-actions a.is-primary{border-color:#d62828;background:#d62828}.new-game-card-actions a:hover{border-color:#d62828}
.new-games-empty{grid-column:1/-1;padding:60px 20px;border:1px dashed rgba(255,255,255,.14);border-radius:10px;text-align:center}.new-games-empty strong{font-size:20px}.new-games-empty p{color:#89919d}

.new-planning-hero{min-height:175px}.new-planning-hero>strong{font-size:19px}.new-planning-main{display:grid;gap:15px}
.new-planning-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.new-planning-stats article{min-height:84px;padding:14px 16px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#111722;display:flex;align-items:center;gap:13px}
.new-planning-stats article>span{width:43px;height:43px;border:1px solid rgba(214,40,40,.3);border-radius:8px;background:rgba(214,40,40,.09);color:#e42d35;display:grid;place-items:center;font-size:21px}
.new-planning-stats strong{display:block;font-size:26px;line-height:1}.new-planning-stats small{display:block;margin-top:5px;color:#7e8795;font-size:11px}
.new-planning-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:12px;align-items:start}
.new-planning-card{overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#111722}
.new-planning-card>header{min-height:64px;padding:12px 15px;border-bottom:1px solid rgba(255,255,255,.07);display:flex;align-items:center;justify-content:space-between;gap:12px}
.new-planning-card>header>div,.new-planning-filters>header{display:flex;align-items:center;gap:10px}.new-planning-card>header>div>span,.new-planning-card>header>span{color:#d62828;font-size:20px}
.new-planning-card h2{margin:0;color:#fff;font-size:14px;font-weight:700}.new-planning-card header p{margin:3px 0 0;color:#7e8795;font-size:10px}.new-planning-card header>small{color:#7e8795}
.new-planning-table-wrap{overflow-x:auto}.new-planning-table-card table{width:100%;min-width:850px;border-collapse:collapse}
.new-planning-table-card th{padding:10px 13px;color:#7e8795;font-size:9px;font-weight:700;letter-spacing:.7px;text-align:left}
.new-planning-table-card td{padding:12px 13px;border-top:1px solid rgba(255,255,255,.05);color:#aeb4be;font-size:11px;vertical-align:middle}
.new-planning-table-card tbody tr:hover td{background:rgba(255,255,255,.018)}
.new-planning-table-card td>b{color:#fff;font-weight:600}.new-planning-table-card td>span:not(.new-planning-status){color:#d62828;margin:0 4px}.new-planning-table-card td>small{display:block;margin-top:4px;color:#707a89;font-size:9px}
.new-planning-game{display:flex;align-items:center;gap:8px}.new-planning-game img{width:32px;height:32px;object-fit:contain}.new-planning-game strong{color:#fff;white-space:nowrap}
.new-planning-status{display:inline-flex;padding:4px 7px;border-radius:4px;background:rgba(255,255,255,.06);font-size:9px;font-weight:700;white-space:nowrap}.new-planning-status.is-live{background:rgba(214,40,40,.15);color:#ff4757}.new-planning-status.is-upcoming{background:rgba(244,182,62,.13);color:#f4b63e}.new-planning-status.is-finished{background:rgba(38,208,124,.13);color:#26d07c}
.new-planning-empty{padding:45px!important;text-align:center!important}
.new-planning-filters>div{padding:15px;display:grid;gap:13px}.new-planning-filters label{display:grid;gap:6px;color:#aeb4be;font-size:11px;font-weight:600}.new-planning-filters select{width:100%;height:37px;padding:0 10px;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:#0c131d;color:#dce0e6;font:12px inherit}
.new-planning-filters button{height:37px;border:1px solid rgba(255,255,255,.11);border-radius:6px;background:transparent;color:#aeb4be;font:600 11px inherit;cursor:pointer}.new-planning-filters button:hover{border-color:#d62828;color:#fff}
.new-planning-formats>div{padding:12px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.new-planning-formats article{min-height:100px;padding:13px;border:1px solid rgba(255,255,255,.07);border-radius:7px;background:#0b111a;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.new-planning-formats article>span{color:#d62828;font-size:23px}.new-planning-formats article strong{margin:7px 0 4px;color:#fff;font-size:11px}.new-planning-formats article small{color:#7e8795;font-size:9px}
.new-planning-games>div{padding:12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px}.new-planning-games button{min-height:72px;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:7px;background:#0b111a;color:#fff;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;text-align:left;cursor:pointer}.new-planning-games button:hover{border-color:rgba(214,40,40,.5)}.new-planning-games img{width:48px;height:48px;object-fit:contain}.new-planning-games button strong,.new-planning-games button small{display:block}.new-planning-games button strong{font-size:12px}.new-planning-games button small{margin-top:4px;color:#7e8795;font-size:9px}.new-planning-games button>b{color:#d62828;font-size:18px}
@media(max-width:1050px){.new-planning-layout{grid-template-columns:1fr}.new-planning-filters>div{grid-template-columns:repeat(3,minmax(0,1fr))}.new-planning-filters button{align-self:end}.new-games-grid{grid-template-columns:repeat(auto-fill,minmax(245px,1fr))}}
@media(max-width:760px){.new-games-hero,.new-planning-hero{min-height:160px;padding:28px 18px}.new-games-hero>strong,.new-planning-hero>strong{display:none}.new-games-main,.new-planning-main{width:calc(100% - 24px);padding-top:14px}.new-games-toolbar{align-items:stretch;flex-wrap:wrap}.new-games-search{width:100%}.new-games-sort{flex:1}.new-games-count{margin:auto 0}.new-games-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.new-game-copy{padding:11px}.new-game-copy h2{font-size:18px}.new-game-copy>p{display:none}.new-game-card-actions{flex-direction:column}.new-planning-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.new-planning-filters>div{grid-template-columns:1fr}.new-planning-formats>div{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.new-games-grid{grid-template-columns:1fr}.new-game-visual{aspect-ratio:16/7}.new-planning-hero h1,.new-games-hero h1{font-size:36px}.new-planning-stats article{min-height:74px;padding:10px}.new-planning-stats article>span{width:36px;height:36px}.new-planning-stats strong{font-size:22px}.new-planning-formats>div{grid-template-columns:1fr 1fr}}


/* v2.0.150 — gestion des contenus texte depuis /admin/taille-texte */
.typography-text-overrides{display:grid;gap:10px}.typography-text-override-row{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(320px,1.4fr) auto;gap:12px;align-items:end;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(4,7,12,.33)}.typography-text-override-copy{display:grid;gap:7px;min-width:0}.typography-text-override-copy>span,.typography-text-override-row label>span{color:#8d96a4;font-size:11px;font-weight:800;letter-spacing:.08em}.typography-text-override-copy code{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aeb4be;font-size:11px}.typography-text-override-row>label:not(.typography-text-delete){display:grid;gap:7px}.typography-text-override-row textarea{width:100%;min-height:68px;max-height:180px;resize:vertical;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#080c13;color:#fff;padding:9px 11px;font:500 14px/1.35 Inter,Arial,sans-serif;outline:none}.typography-text-override-row textarea:focus{border-color:rgba(214,40,40,.8);box-shadow:0 0 0 2px rgba(214,40,40,.1)}.typography-text-delete{display:flex!important;align-items:center;gap:8px;min-height:42px;padding:0 10px;border:1px solid rgba(214,40,40,.22);border-radius:8px;background:rgba(214,40,40,.05);cursor:pointer}.typography-text-delete input{accent-color:#d62828}.typography-text-delete span{white-space:nowrap;color:#ff777d!important}.typography-text-empty{padding:14px;border:1px dashed rgba(255,255,255,.11);border-radius:8px;color:#7e8795;font-size:13px}@media(max-width:980px){.typography-text-override-row{grid-template-columns:1fr}.typography-text-delete{justify-self:start}}

/* ========================================================================== 
   v2.0.59 — Live : design et échelle typographique unifiée
   - conserve le lecteur réel YouTube / HLS / iframe / MP4
   - conserve le header et le footer partagés
   - toutes les règles sont isolées de l'administration Live
   ========================================================================== */
.page.modern-live-page{
  --live-red:#d62828;
  --live-bg:#080b12;
  --live-panel:#0b1018;
  --live-card:#0e141e;
  --live-card-2:#111722;
  --live-border:rgba(255,255,255,.09);
  --live-muted:#aeb4be;
  --live-font-micro:12px;
  --live-font-small:13px;
  --live-font-body:14px;
  --live-font-readable:14px;
  --live-font-section:16px;
  --live-font-score:18px;
  --live-font-title:clamp(20px,1.6vw,24px);
  --live-font-display:clamp(26px,2vw,32px);
  background:var(--live-bg);
  overflow:visible;
}
.page.modern-live-page::after{display:none}
.mhtm-live-main{
  position:relative;
  z-index:2;
  width:min(calc(100% - 48px),1600px);
  margin:0 auto;
  padding:16px 0 42px;
  flex:1 0 auto;
  color:#fff;
  font-family:Inter,Arial,sans-serif;
}
.mhtm-live-main a{text-decoration:none}
.mhtm-live-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,420px);
  align-items:start;
  gap:16px;
}
.mhtm-live-primary,.mhtm-live-sidebar{min-width:0}
.mhtm-live-primary{display:flex;flex-direction:column;gap:14px}
.mhtm-live-sidebar{display:flex;flex-direction:column;gap:14px}
.mhtm-live-player-card{
  min-width:0;
  border:1px solid var(--live-border);
  border-radius:9px;
  overflow:hidden;
  background:var(--live-panel);
  box-shadow:0 18px 48px rgba(0,0,0,.22);
}
.mhtm-live-player-status{
  min-height:42px;
  padding:7px 11px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-bottom:1px solid var(--live-border);
  background:#0a0f17;
}
.mhtm-live-player-status>span{
  min-height:27px;
  padding:0 10px;
  border-radius:5px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#fff;
  font-size:var(--live-font-small);
  font-weight:700;
  letter-spacing:.055em;
}
.mhtm-live-player-status>span.is-live{background:var(--live-red)}
.mhtm-live-player-status>span.is-offline{border:1px solid rgba(255,255,255,.14);background:#151b25;color:#aeb4be}
.mhtm-live-player-status>span i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:currentColor;
}
.mhtm-live-player-status>span.is-live i{animation:mhtm-live-dot 1.45s ease-in-out infinite}
.mhtm-live-player-status>small{color:#89919d;font-size:var(--live-font-micro);font-weight:600;letter-spacing:.11em}
@keyframes mhtm-live-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.72)}}
@media(prefers-reduced-motion:reduce){.mhtm-live-player-status>span.is-live i{animation:none}}

.modern-live-page .live-video-frame{
  border:0;
  border-radius:0;
  box-shadow:none;
  background:#000;
}
.modern-live-page .live-video-frame:fullscreen{display:grid;place-items:center;background:#000}
.modern-live-page .live-video-frame:fullscreen video,
.modern-live-page .live-video-frame:fullscreen iframe{object-fit:contain}
.modern-live-page .youtube-player-info{
  border-top:1px solid var(--live-border);
  background:#0b1018;
  color:#aeb4be;
}
.modern-live-page .youtube-player-info p,
.modern-live-page .hls-player-status,
.modern-live-page .hls-player-play-prompt p{font-size:var(--live-font-readable)}
.modern-live-page .youtube-player-actions a,
.modern-live-page .youtube-player-actions button,
.modern-live-page .hls-player-quality,
.modern-live-page .hls-player-quality select,
.modern-live-page .hls-player-message button,
.modern-live-page .hls-player-play-prompt button{font-size:var(--live-font-body)!important}
.modern-live-page .live-video-empty{
  background:
    radial-gradient(circle at 50% 35%,rgba(214,40,40,.16),transparent 42%),
    linear-gradient(145deg,#101722,#080b12 70%);
}
.modern-live-page .live-video-empty::before{
  content:"";
  width:58px;
  height:58px;
  margin-bottom:15px;
  background:url("/assets/gamepad.svg") center/contain no-repeat;
  opacity:.72;
}
.modern-live-page .live-video-empty strong{font:700 var(--live-font-title)/1.12 Inter,Arial,sans-serif;letter-spacing:.025em}
.modern-live-page .live-video-empty p{font:400 var(--live-font-readable)/1.5 Inter,Arial,sans-serif;color:#aeb4be}

.mhtm-live-information{padding:14px 16px 16px}
.mhtm-live-channel-row{display:flex;align-items:flex-start;gap:12px}
.mhtm-live-channel-avatar{
  position:relative;
  width:52px;
  height:52px;
  flex:0 0 52px;
  border:2px solid var(--live-red);
  border-radius:50%;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:#080b12;
}
.mhtm-live-channel-avatar img{width:88%;height:88%;object-fit:contain}
.mhtm-live-heading{min-width:0;flex:1}
.mhtm-live-heading h1{
  margin:1px 0 5px;
  color:#fff;
  font-size:var(--live-font-title);
  font-weight:700;
  line-height:1.22;
  letter-spacing:-.012em;
  overflow-wrap:anywhere;
}
.mhtm-live-heading p{margin:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#aeb4be;font-size:var(--live-font-body)}
.mhtm-live-heading p strong{color:#fff;font-weight:600}
.mhtm-live-heading p span{padding-left:8px;border-left:1px solid rgba(255,255,255,.14)}
.mhtm-live-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.mhtm-live-actions button,.mhtm-live-actions a{
  min-height:36px;
  padding:0 12px;
  border:1px solid #242b35;
  border-radius:7px;
  background:var(--live-card-2);
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  font-family:Inter,Arial,sans-serif;
  font-size:var(--live-font-body)!important;
  font-weight:600!important;
  line-height:1;
  white-space:nowrap;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.mhtm-live-actions button:hover,.mhtm-live-actions a:hover{border-color:rgba(214,40,40,.55);background:#171e29}
.mhtm-live-actions button:focus-visible,.mhtm-live-actions a:focus-visible{outline:2px solid #fff;outline-offset:2px}
.mhtm-live-actions a.is-primary{border-color:var(--live-red);background:var(--live-red)}
.mhtm-live-actions a.is-primary:hover{background:#e33131}
.mhtm-live-actions svg,.mhtm-live-actions img{width:14px;height:14px;object-fit:contain}
.mhtm-live-actions svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mhtm-live-actions img{filter:brightness(0) invert(1)}
.mhtm-live-description{max-width:760px;margin:12px 0 10px;color:#b9bec7;font-size:var(--live-font-readable);line-height:1.55}
.mhtm-live-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mhtm-live-tags span{
  min-height:23px;
  padding:4px 9px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:5px;
  background:var(--live-card-2);
  color:#dde0e5;
  font-size:var(--live-font-micro);
  line-height:1.25;
}
.mhtm-live-tags span:nth-child(3){border-color:rgba(214,40,40,.5)}
.mhtm-live-match-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px}
.mhtm-live-match-card{
  min-width:0;
  padding:10px 11px;
  border:1px solid rgba(214,40,40,.25);
  border-radius:7px;
  background:linear-gradient(120deg,rgba(214,40,40,.08),rgba(17,23,34,.85));
}
.mhtm-live-match-card>div{display:flex;align-items:center;justify-content:space-between;gap:8px}
.mhtm-live-match-card>div span{color:#f2494f;font-size:var(--live-font-micro);font-weight:700;letter-spacing:.045em}
.mhtm-live-match-card>div small{min-width:0;color:#939aa5;font-size:var(--live-font-micro);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mhtm-live-match-card>p{margin:8px 0 0;display:grid;grid-template-columns:minmax(0,1fr) auto auto auto minmax(0,1fr);align-items:center;gap:7px}
.mhtm-live-match-card>p strong{min-width:0;color:#fff;font-size:var(--live-font-body);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mhtm-live-match-card>p strong:last-child{text-align:right}
.mhtm-live-match-card>p b{color:#fff;font-size:var(--live-font-score);font-weight:700}
.mhtm-live-match-card>p em{color:#d62828;font-size:var(--live-font-micro);font-weight:700;font-style:normal}

.mhtm-live-shop-banner{
  position:relative;
  min-height:174px;
  padding:18px 22px;
  border:1px solid rgba(214,40,40,.52);
  border-radius:9px;
  overflow:hidden;
  display:flex;
  align-items:stretch;
  color:#fff;
  background:
    radial-gradient(circle at 80% 50%,rgba(214,40,40,.17),transparent 30%),
    linear-gradient(100deg,#100b0d 0%,#13090c 48%,#0a0d13 100%);
  isolation:isolate;
}
.mhtm-live-shop-banner::before{
  content:"";
  position:absolute;
  inset:-70% 0;
  z-index:-1;
  background:repeating-linear-gradient(70deg,transparent 0 74px,rgba(214,40,40,.05) 75px 77px);
}
.mhtm-live-shop-banner-copy{position:relative;z-index:2;min-width:0;flex:1}
.mhtm-live-shop-banner-copy>span{display:flex;align-items:center;gap:7px;color:#fff;font-size:var(--live-font-micro);font-weight:700;letter-spacing:.07em}
.mhtm-live-shop-banner-copy>span img{width:23px;height:23px;object-fit:contain}
.mhtm-live-shop-banner-copy h2{margin:8px 0 3px;color:#fff;font:700 var(--live-font-display)/1.02 "Barlow Condensed",Inter,sans-serif;letter-spacing:.02em}
.mhtm-live-shop-banner-copy h2 b{color:#e52a30;font-weight:700}
.mhtm-live-shop-banner-copy p{margin:7px 0 12px;color:#aeb4be;font-size:var(--live-font-body);line-height:1.45}
.mhtm-live-shop-banner-copy>strong{color:#fff;font-size:var(--live-font-small);font-weight:700;letter-spacing:.03em}
.mhtm-live-shop-banner-copy>strong i{margin-left:6px;color:#ef3036;font-size:var(--live-font-section);font-style:normal}
.mhtm-live-shop-banner-art{position:relative;width:min(43%,360px);flex:0 0 min(43%,360px)}
.mhtm-live-shop-banner-art::before{
  content:"";
  position:absolute;
  left:10%;
  right:0;
  top:15%;
  bottom:-80%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(214,40,40,.26),transparent 64%);
}
.mhtm-live-shop-banner-art>span{
  position:absolute;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.13);
  border-radius:14px;
  background:linear-gradient(145deg,#1a202b,#0a0e15);
  box-shadow:0 16px 34px rgba(0,0,0,.38),0 0 20px rgba(214,40,40,.13);
  transform:rotate(-8deg);
}
.mhtm-live-shop-banner-art>span:nth-child(1){width:105px;height:105px;right:118px;top:28px}
.mhtm-live-shop-banner-art>span:nth-child(2){width:118px;height:118px;right:20px;top:14px;transform:rotate(7deg)}
.mhtm-live-shop-banner-art>span:nth-child(3){width:65px;height:65px;right:86px;bottom:-13px;transform:rotate(4deg)}
.mhtm-live-shop-banner-art img{width:62%;height:62%;object-fit:contain;filter:brightness(0) invert(1);opacity:.88}
.mhtm-live-shop-banner:hover{border-color:#d62828}

/* v2.0.57 — Chat public disponible uniquement pendant les directs */
.mhtm-live-chat,.mhtm-live-schedule{
  border:1px solid var(--live-border);
  border-radius:9px;
  overflow:hidden;
  background:var(--live-panel);
}
.mhtm-live-chat{height:var(--mhtm-live-chat-height,430px);min-height:0;display:flex;flex-direction:column}
.mhtm-live-chat>header,.mhtm-live-schedule>header{
  min-height:49px;
  padding:0 15px;
  border-bottom:1px solid var(--live-border);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  background:#0d131c;
}
.mhtm-live-chat>header>div{display:flex;align-items:center;gap:8px}
.mhtm-live-chat>header i{width:7px;height:7px;border-radius:50%;background:#d62828;box-shadow:0 0 9px rgba(214,40,40,.7)}
.mhtm-live-chat h2,.mhtm-live-schedule h2,.mhtm-live-products h2{margin:0;color:#fff;font-size:var(--live-font-section);font-weight:700;letter-spacing:.03em}
.mhtm-live-chat>header>span{color:#89919d;font-size:var(--live-font-micro)}
.mhtm-live-chat-empty{
  flex:1;
  min-height:0;
  overflow-y:auto;
  padding:30px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.mhtm-live-chat-empty>span{width:54px;height:54px;margin-bottom:14px;border-radius:50%;display:grid;place-items:center;background:#141b26}
.mhtm-live-chat-empty img{width:29px;height:29px;object-fit:contain;filter:grayscale(1) brightness(2)}
.mhtm-live-chat-empty strong{max-width:260px;color:#eef0f2;font-size:var(--live-font-body);font-weight:700;line-height:1.35}
.mhtm-live-chat-empty p{max-width:280px;margin:8px 0 0;color:#89919d;font-size:var(--live-font-small);line-height:1.5}
.mhtm-live-chat-empty.is-live-empty>span{background:rgba(214,40,40,.1)}
.mhtm-live-chat-empty.is-live-empty>span img{filter:brightness(0) invert(1);opacity:.9}
.mhtm-live-chat-messages{
  flex:1;
  min-height:0;
  padding:7px 9px 10px;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:rgba(214,40,40,.45) transparent;
}
.mhtm-live-chat-messages::-webkit-scrollbar{width:5px}
.mhtm-live-chat-messages::-webkit-scrollbar-thumb{border-radius:9px;background:rgba(214,40,40,.45)}
.mhtm-live-chat-message{
  padding:8px 7px;
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  align-items:start;
  gap:9px;
  border-radius:7px;
}
.mhtm-live-chat-message:hover,.mhtm-live-chat-message.is-own{background:rgba(255,255,255,.025)}
.mhtm-live-chat-avatar{
  width:30px;
  height:30px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:50%;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:linear-gradient(145deg,#242d3a,#111823);
  color:#fff;
  font:700 var(--live-font-micro)/1 Inter,Arial,sans-serif;
}
.mhtm-live-chat-message.is-own .mhtm-live-chat-avatar{border-color:rgba(214,40,40,.5);background:linear-gradient(145deg,#7b171b,#281014)}
.mhtm-live-chat-avatar img{width:100%;height:100%;object-fit:cover;filter:none}
.mhtm-live-chat-message>div{min-width:0}
.mhtm-live-chat-message header{min-height:16px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.mhtm-live-chat-message header strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f0f2f5;font-size:var(--live-font-small);font-weight:600}
.mhtm-live-chat-message header time{flex:0 0 auto;color:#7b8491;font-size:var(--live-font-micro)}
.mhtm-live-chat-message p{margin:2px 0 0;color:#c1c7d0;font:400 var(--live-font-body)/1.45 Inter,Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}
.mhtm-live-chat-connection{margin:0;padding:5px 11px;border-top:1px solid rgba(255,255,255,.04);background:#0c121b;color:#89919d;font-size:var(--live-font-micro);text-align:center}
.mhtm-live-chat-composer{margin-top:auto;border-top:1px solid var(--live-border);background:#0a0f17}
.mhtm-live-chat-composer .mhtm-live-chat-input{border-top:0}
.mhtm-live-chat-error{margin:0;padding:6px 10px 0;color:#ff6b70;font-size:var(--live-font-micro);line-height:1.35}
.mhtm-live-chat-input{min-height:58px;height:auto;padding:9px 10px;display:flex;gap:8px;border-top:1px solid var(--live-border);background:#0a0f17}
.mhtm-live-chat-input input{min-width:0;flex:1;border:1px solid rgba(255,255,255,.1);border-radius:7px;background:#101620;color:#eef0f3;padding:9px 11px;font-family:Inter,Arial,sans-serif;font-size:var(--live-font-body)!important;font-weight:400!important;line-height:1.25;outline:0}
.mhtm-live-chat-input input::placeholder{color:#68717d}
.mhtm-live-chat-input input:focus{border-color:rgba(214,40,40,.72);box-shadow:0 0 0 2px rgba(214,40,40,.09)}
.mhtm-live-chat-input input:disabled{color:#727a86}
.mhtm-live-chat-input button{width:40px;flex:0 0 40px;border:1px solid rgba(214,40,40,.22);border-radius:7px;background:rgba(214,40,40,.12);display:grid;place-items:center;opacity:.65;transition:background .16s ease,border-color .16s ease,opacity .16s ease}
.mhtm-live-chat-input button:not(:disabled){border-color:#d62828;background:#d62828;opacity:1;cursor:pointer}
.mhtm-live-chat-input button:disabled{cursor:not-allowed}
.mhtm-live-chat-input button img{width:18px;height:18px;filter:brightness(0) invert(1)}
.mhtm-live-chat-login{min-height:66px;margin-top:auto;padding:9px 10px;border-top:1px solid var(--live-border);background:#0a0f17;display:flex;flex-direction:column;justify-content:center;gap:6px}
.mhtm-live-chat-login p{margin:0;color:#ff6b70;font-size:var(--live-font-micro);line-height:1.3;text-align:center}
.mhtm-live-chat-login a{min-height:40px;padding:8px 10px;border:1px solid #d62828;border-radius:7px;display:flex;align-items:center;justify-content:center;background:#d62828;color:#fff;font-size:var(--live-font-small);font-weight:700;letter-spacing:.02em;text-align:center}

.mhtm-live-schedule>header a,.mhtm-live-products>header>a{color:#e5363c;font-size:var(--live-font-micro);font-weight:700;letter-spacing:.03em}
.mhtm-live-schedule>div{padding:7px 10px}
.mhtm-live-schedule-card{min-height:76px;padding:8px 4px;display:grid;grid-template-columns:67px minmax(0,1fr) auto;align-items:center;gap:9px;border-bottom:1px solid rgba(255,255,255,.06)}
.mhtm-live-schedule-card:last-child{border-bottom:0}
.mhtm-live-schedule-image{width:67px;height:52px;border-radius:6px;overflow:hidden;display:grid;place-items:center;background:#111822}
.mhtm-live-schedule-image img{width:100%;height:100%;object-fit:contain;padding:4px}
.mhtm-live-schedule-card>div{min-width:0}
.mhtm-live-schedule-card strong,.mhtm-live-schedule-card small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mhtm-live-schedule-card strong{color:#e8eaed;font-size:var(--live-font-small);font-weight:600}
.mhtm-live-schedule-card strong i{color:#d62828;font-style:normal;font-size:var(--live-font-micro)}
.mhtm-live-schedule-card small{margin-top:5px;color:#89919d;font-size:var(--live-font-micro)}
.mhtm-live-schedule-card time{min-width:44px;color:#fff;font-size:var(--live-font-small);font-weight:700;text-align:right}
.mhtm-live-schedule-empty{min-height:110px;margin:0;padding:30px 12px;display:grid;place-items:center;color:#89919d;font-size:var(--live-font-small);text-align:center}

.mhtm-live-products{margin-top:18px}
.mhtm-live-products>header{min-height:36px;margin-bottom:9px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.mhtm-live-products>header>div{display:flex;align-items:center;gap:8px}
.mhtm-live-products>header>div>span{width:28px;height:28px;border-radius:6px;display:grid;place-items:center;background:rgba(214,40,40,.12)}
.mhtm-live-products>header img{width:18px;height:18px;object-fit:contain}
.mhtm-live-product-rail{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.mhtm-live-product-card{
  min-width:0;
  border:1px solid var(--live-border);
  border-radius:8px;
  overflow:hidden;
  background:linear-gradient(180deg,#111722,#0a1018);
  transition:border-color .17s ease,box-shadow .17s ease;
}
.mhtm-live-product-card:hover{border-color:rgba(214,40,40,.5);box-shadow:0 12px 26px rgba(0,0,0,.2)}
.mhtm-live-product-image{position:relative;height:132px;background:radial-gradient(circle at 50% 42%,#1a2230,#090e16 72%);overflow:hidden}
.mhtm-live-product-image>a{display:block;width:100%;height:100%}
.mhtm-live-product-image>a>img{display:block;width:100%;height:100%;padding:9px;object-fit:contain;transition:transform .2s ease}
.mhtm-live-product-card:hover .mhtm-live-product-image>a>img{transform:scale(1.035)}
.mhtm-live-product-image .mhtm-live-product-wishlist{top:7px;right:7px;width:30px;height:30px;border-color:rgba(255,255,255,.12);background:rgba(8,11,18,.72);box-shadow:none}
.mhtm-live-product-image .mhtm-live-product-wishlist svg{width:16px;height:16px}
.mhtm-live-product-copy{padding:10px 11px 11px}
.mhtm-live-product-copy>small{display:block;color:#89919d;font-size:var(--live-font-micro);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mhtm-live-product-copy h3{min-height:calc(2 * 1.3em);height:auto;margin:5px 0 8px;font-size:var(--live-font-body);font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mhtm-live-product-copy h3 a{color:#f0f1f3}
.mhtm-live-product-copy>div{display:flex;align-items:center;justify-content:space-between;gap:9px}
.mhtm-live-product-copy>div strong{min-width:0;color:#ed3238;font-size:var(--live-font-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mhtm-live-product-copy>div>a{min-width:25px;min-height:25px;padding:4px;flex:0 0 auto;aspect-ratio:1;border:1px solid rgba(214,40,40,.45);border-radius:6px;display:grid;place-items:center;color:#fff;background:rgba(214,40,40,.1);font-size:var(--live-font-section);line-height:1}
.mhtm-live-products-empty{min-height:125px;padding:22px;border:1px solid var(--live-border);border-radius:8px;background:#0b1119;display:flex;align-items:center;justify-content:space-between;gap:20px}
.mhtm-live-products-empty strong{color:#fff;font-size:var(--live-font-section);font-weight:700}
.mhtm-live-products-empty p{margin:6px 0 0;color:#9aa1ab;font-size:var(--live-font-small)}
.mhtm-live-products-empty>a{min-height:38px;padding:8px 14px;border:1px solid #d62828;border-radius:7px;color:#fff;display:flex;align-items:center;font-size:var(--live-font-small);font-weight:700;white-space:nowrap}

@media(max-width:1220px){
  .mhtm-live-main{width:min(calc(100% - 36px),1600px)}
  .mhtm-live-layout{grid-template-columns:minmax(0,1fr) minmax(310px,350px)}
  .mhtm-live-actions a,.mhtm-live-actions button{padding:0 10px}
  .mhtm-live-shop-banner-art{width:34%;flex-basis:34%}
  .mhtm-live-shop-banner-art>span:nth-child(1){right:82px}
  .mhtm-live-shop-banner-art>span:nth-child(2){right:-10px}
}
@media(max-width:980px){
  .mhtm-live-main{padding-top:13px}
  .mhtm-live-layout{grid-template-columns:1fr}
  .mhtm-live-sidebar{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
  .mhtm-live-chat{height:var(--mhtm-live-chat-height,390px);min-height:0}
  .mhtm-live-product-rail{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mhtm-live-product-card:nth-child(n/**/+4){display:none}
}
@media(max-width:700px){
  .mhtm-live-main{width:calc(100% - 24px);padding:12px 0 32px}
  .mhtm-live-channel-row{display:grid;grid-template-columns:46px minmax(0,1fr)}
  .mhtm-live-channel-avatar{width:46px;height:46px;flex-basis:46px}
  .mhtm-live-actions{grid-column:1/-1;justify-content:flex-start}
  .mhtm-live-actions button,.mhtm-live-actions a{flex:1 1 auto}
  .mhtm-live-match-list{grid-template-columns:1fr}
  .mhtm-live-shop-banner{min-height:230px;padding:17px 18px}
  .mhtm-live-shop-banner-copy{max-width:72%}
  .mhtm-live-shop-banner-art{position:absolute;right:0;top:0;bottom:0;width:44%;opacity:.72}
  .mhtm-live-sidebar{grid-template-columns:1fr}
  .mhtm-live-chat{height:var(--mhtm-live-chat-height,min(62dvh,450px));min-height:0}
  .mhtm-live-chat-input{height:auto;min-height:58px;padding-bottom:max(9px,env(safe-area-inset-bottom))}
  .mhtm-live-chat-input input{font-size:16px!important}
  .mhtm-live-product-rail{
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:min(66vw,230px);
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    padding:1px;
  }
  .mhtm-live-product-rail::-webkit-scrollbar{display:none}
  .mhtm-live-product-card{scroll-snap-align:start}
  .mhtm-live-product-card:nth-child(n/**/+4){display:block}
  .mhtm-live-products-empty{align-items:flex-start;flex-direction:column}
}
@media(max-width:460px){
  .mhtm-live-main{width:calc(100% - 20px)}
  .mhtm-live-player-status{min-height:38px}
  .mhtm-live-information{padding:12px}
  .mhtm-live-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .mhtm-live-actions>*:last-child:nth-child(odd){grid-column:1/-1}
  .mhtm-live-actions button,.mhtm-live-actions a{width:100%;padding:0 8px}
  .mhtm-live-match-card>p{gap:5px}
  .mhtm-live-shop-banner{min-height:255px}
  .mhtm-live-shop-banner-copy{max-width:82%}
  .mhtm-live-shop-banner-copy p{max-width:220px;line-height:1.45}
  .mhtm-live-shop-banner-art{right:-34px;width:55%;opacity:.42}
  .mhtm-live-chat-empty{min-height:0;padding:22px 18px}
  .mhtm-live-schedule-card{grid-template-columns:58px minmax(0,1fr) auto;gap:7px}
  .mhtm-live-schedule-image{width:58px;height:48px}
  .mhtm-live-product-rail{grid-auto-columns:min(74vw,230px)}
  .mhtm-live-products>header{align-items:flex-end}
}



/* v2.0.73 — /jeux intégré au stylesheet principal du web-app */
/* Port fidèle des écrans JeuxListing et JeuDetail de l’archive new comp. */
.games-v3-page {
  --games-bg: #080b12;
  --games-bg-2: #0a0e15;
  --games-card: #111722;
  --games-card-2: #0e141e;
  --games-red: #d62828;
  --games-red-bright: #f0202b;
  --games-text: #fff;
  --games-text-sec: #aeb4be;
  --games-text-muted: #7e8795;
  --games-border: rgba(255, 255, 255, .08);
  overflow: visible;
  background: var(--games-bg);
  color: var(--games-text);
  font-family: Inter, Arial, sans-serif;
}

.games-v3-page > .page-bg,
.games-v3-page::after { display: none; }
.games-v3-page > :not(.page-bg):not(.header):not(.tournament-signup-modal) { position: relative; z-index: 2; }
.games-v3-page *, .games-v3-page *::before, .games-v3-page *::after { box-sizing: border-box; }
.games-v3-page a { text-decoration: none; }
.games-v3-page svg { display: block; width: 1em; height: 1em; flex: 0 0 auto; }
.games-v3-visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }

/* /jeux — héro 132 px de l’archive */
.games-v3-hero { position: relative; height: 132px; min-height: 132px; overflow: hidden; background: linear-gradient(135deg, #0d0208 0%, #1a0510 30%, #200a15 60%, #0d0510 100%); }
.games-v3-hero::before { content: "⚔"; position: absolute; right: 180px; top: 0; bottom: 0; width: 500px; display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,.42); background: linear-gradient(90deg, transparent, rgba(60,10,20,.4) 20%, rgba(80,15,25,.3) 50%, transparent); filter: blur(1px); font-size: 80px; line-height: 1; opacity: .5; }
.games-v3-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(8,11,18,.7) 0%, transparent 40%, transparent 60%, rgba(8,11,18,.5) 100%), radial-gradient(ellipse at 60% 50%, rgba(58,10,26,.35) 0%, transparent 70%); }
.games-v3-hero-inner { position: relative; z-index: 1; width: 100%; height: 100%; padding: 20px 28px 0; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.games-v3-hero-copy h1 { margin: 0; color: #fff; font: 900 38px/1 Inter,Arial,sans-serif; letter-spacing: -.5px; text-transform: uppercase; }
.games-v3-hero-copy h1 span { color: var(--games-red); }
.games-v3-hero-copy p { margin: 6px 0 0; color: var(--games-text-sec); font: 400 13px/1.5 Inter,Arial,sans-serif; }
.games-v3-hero-motto { margin: 0; color: var(--games-text-sec); display: flex; flex-direction: column; align-items: flex-end; font: italic 900 22px/1.15 Inter,Arial,sans-serif; letter-spacing: 2px; text-align: right; text-transform: uppercase; }
.games-v3-hero-motto b { color: var(--games-red); font-weight: 900; }

.games-v3-catalog { width: 100%; flex: 0 0 auto; min-height: 0; padding: 16px 28px 28px; background: var(--games-bg); }
.games-v3-filter-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 14px; }
.games-v3-filter-list button { width: auto; min-width: 0; height: 34px; padding: 0 14px; border: 1px solid rgba(255,255,255,.15); border-radius: 8px; background: transparent; color: var(--games-text-sec); display: inline-flex; align-items: center; justify-content: center; gap: 6px; box-shadow: none; cursor: pointer; font: 600 12px/1 Inter,Arial,sans-serif; letter-spacing: 0; text-transform: none; transition: all .15s; }
.games-v3-filter-list button svg { width: 13px; height: 13px; }
.games-v3-filter-list button:hover { border-color: rgba(214,40,40,.7); color: #fff; }
.games-v3-filter-list button.is-active { border-color: var(--games-red); background: var(--games-red); color: #fff; box-shadow: 0 0 10px rgba(240,32,43,.25); }

.games-v3-toolbar { min-height: 36px; margin: 0 0 16px; display: flex; align-items: center; gap: 12px; }
.games-v3-search, .games-v3-sort { height: 36px; border: 1px solid var(--games-border); border-radius: 8px; background: var(--games-card); color: var(--games-text-sec); display: flex; align-items: center; }
.games-v3-search { width: 310px; padding: 0 12px; gap: 8px; }
.games-v3-search > svg { width: 14px; height: 14px; color: var(--games-text-muted); }
.games-v3-search input { min-width: 0; width: 100%; height: 34px; padding: 0; border: 0; outline: 0; background: transparent; color: var(--games-text-sec); font: 400 12px/1 Inter,Arial,sans-serif; }
.games-v3-search input::placeholder { color: var(--games-text-muted); }
.games-v3-sort { padding: 0 9px 0 12px; gap: 4px; font: 400 12px/1 Inter,Arial,sans-serif; }
.games-v3-sort > span { white-space: nowrap; }
.games-v3-sort select { width: auto; height: 34px; padding: 0 20px 0 0; border: 0; outline: 0; background: transparent; color: #fff; font: 400 12px/1 Inter,Arial,sans-serif; cursor: pointer; }
.games-v3-sort option { background: var(--games-card); color: #fff; }
.games-v3-result-count { margin: 0 0 0 auto; color: var(--games-text-muted); font: 400 12px/1 Inter,Arial,sans-serif; white-space: nowrap; }

.games-v3-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin: 0 0 28px; }
.games-v3-card { min-width: 0; overflow: hidden; border: 1px solid var(--games-border); border-radius: 10px; background: var(--games-card); box-shadow: 0 4px 16px rgba(0,0,0,.3); transition: border-color .15s,transform .15s; }
.games-v3-card:hover { transform: translateY(-1px); border-color: rgba(255,255,255,.2); }
.games-v3-card-visual { position: relative; width: 100%; height: 145px; overflow: hidden; display: flex; align-items: center; justify-content: center; background: linear-gradient(160deg,#111800 0%,#1e2800 40%,#080c00 100%); }
.games-v3-card-visual::before { content: ""; position: absolute; inset: 0; z-index: 1; background: radial-gradient(ellipse at center,rgba(255,255,255,.05) 0%,transparent 70%); }
.games-v3-card-visual img { width: 100%; height: 100%; padding: 0; display: block; object-fit: cover; object-position: center; transition: transform .2s ease; }
.games-v3-card:hover .games-v3-card-visual img { transform: scale(1.025); }
.games-v3-card-shade { position: absolute; z-index: 2; left: 0; right: 0; bottom: 0; height: 40px; background: linear-gradient(transparent,var(--games-card)); }
.games-v3-card-status { position: absolute; z-index: 3; top: 9px; right: 9px; padding: 6px 9px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; background: rgba(10,13,19,.86); color: #fff; font: 700 13px/1 Inter,Arial,sans-serif; }
.games-v3-card-body { padding: 10px 12px 0; }
.games-v3-card-body h2 { margin: 0 0 5px; overflow: hidden; color: #fff; font: 700 13px/1.2 Inter,Arial,sans-serif; text-overflow: ellipsis; white-space: nowrap; }
.games-v3-platforms { min-height: 14px; margin: 0 0 5px; display: flex; align-items: center; gap: 4px; color: var(--games-text-sec); }
.games-v3-platforms > span { width: 14px; height: 14px; padding: 0; border: 0; border-radius: 0; background: transparent; display: grid; place-items: center; color: inherit; font-size: 14px; line-height: 1; opacity: .7; }
.games-v3-platforms > span.is-platform-text { width: auto; min-width: 14px; font-size: 7px; font-weight: 800; }
.games-v3-card-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.games-v3-card-meta > span { min-width: 0; color: var(--games-text-muted); font: 400 11px/1.2 Inter,Arial,sans-serif; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.games-v3-card-meta > span:last-child { flex: 0 0 auto; color: var(--games-text-sec); display: flex; align-items: center; gap: 4px; }
.games-v3-card-meta svg { width: 11px; height: 11px; }
.games-v3-card-date { margin-top: 7px; display: flex; align-items: center; gap: 6px; color: var(--games-text-sec); font: 500 13px/1.2 Inter,Arial,sans-serif; }
.games-v3-card-date svg { width: 13px; height: 13px; flex: 0 0 auto; color: var(--games-red); }
.games-v3-card-date span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.games-v3-card-prize { min-width: 0; margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--games-border); display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.games-v3-card-prize > span { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 5px; color: var(--games-text-sec); font: 500 13px/1.2 Inter,Arial,sans-serif; }
.games-v3-card-prize > span svg { width: 13px; height: 13px; color: var(--games-red); }
.games-v3-card-prize > strong { min-width: 0; overflow: hidden; color: #fff; font: 700 13px/1.2 Inter,Arial,sans-serif; text-overflow: ellipsis; white-space: nowrap; }
.games-v3-card-action { padding: 10px 12px 12px; }
.games-v3-card-cta { width: 100%; height: 30px; border: 0; border-radius: 6px; background: linear-gradient(135deg,#ff2535,#d91023); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 0 10px rgba(240,32,43,.22); font: 700 12px/1 Inter,Arial,sans-serif; letter-spacing: .2px; }
.games-v3-empty { grid-column: 1/-1; min-height: 230px; border: 1px solid var(--games-border); border-radius: 10px; background: var(--games-card); display: flex; flex-direction: column; align-items: center; justify-content: center; color: var(--games-text-muted); text-align: center; }
.games-v3-empty > svg { width: 34px; height: 34px; margin-bottom: 10px; color: var(--games-red); }
.games-v3-empty strong { color: #fff; font-size: 14px; }
.games-v3-empty p { margin: 5px 0 0; font-size: 12px; }

/* /jeux/:slug — dimensions et ordre stricts de JeuDetail.tsx */
.games-v3-detail-page { background: var(--games-bg); }
.games-v3-breadcrumb { width: 100%; min-height: 35px; padding: 10px 28px; display: flex; align-items: center; gap: 6px; background: var(--games-bg); font: 400 12px/1.25 Inter,Arial,sans-serif; }
.games-v3-breadcrumb a, .games-v3-breadcrumb span { color: var(--games-text-muted); }
.games-v3-breadcrumb b { color: var(--games-text-sec); font-weight: 400; }
.games-v3-detail-hero { width: calc(100% - 56px); height: 240px; margin: 0 28px; overflow: hidden; border: 1px solid var(--games-border); border-radius: 10px; display: grid; grid-template-columns: 54% 1fr; background: var(--games-card); }
.games-v3-detail-cover { position: relative; min-width: 0; overflow: hidden; background: linear-gradient(135deg,#0d3a26 0%,#1a5c38 40%,#0a1f14 100%); display: flex; align-items: center; justify-content: center; }
.games-v3-detail-cover::after { content: ""; position: absolute; inset: 0; background: radial-gradient(ellipse at center,rgba(0,150,80,.15) 0%,transparent 70%); pointer-events: none; }
.games-v3-detail-cover-main { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; }
.games-v3-detail-cover > span { position: absolute; z-index: 2; right: 0; bottom: 0; left: 0; height: 4px; background: var(--games-red); }
.games-v3-detail-intro { position: relative; min-width: 0; overflow: hidden; padding: 24px; background: linear-gradient(135deg,#100518 0%,#1e0a2a 40%,#0d0510 100%); display: flex; flex-direction: column; gap: 12px; }
.games-v3-detail-intro::after { content: ""; position: absolute; right: -20px; top: 0; bottom: 0; width: 160px; opacity: .08; background: radial-gradient(ellipse at right,var(--games-red),transparent); pointer-events: none; }
.games-v3-detail-intro > * { position: relative; z-index: 1; }
.games-v3-detail-intro h1 { margin: 0; color: #fff; font: 900 28px/1.1 Inter,Arial,sans-serif; letter-spacing: 0; text-transform: none; }
.games-v3-detail-intro h1 span { color: var(--games-red); }
.games-v3-detail-badges { display: flex; flex-wrap: wrap; gap: 6px; }
.games-v3-detail-badges > span, .games-v3-detail-badges > em { min-height: 22px; padding: 3px 8px; border: 1px solid var(--games-border); border-radius: 5px; background: rgba(255,255,255,.07); color: var(--games-text-sec); display: inline-flex; align-items: center; gap: 4px; font: 500 11px/1 Inter,Arial,sans-serif; font-style: normal; }
.games-v3-detail-badges > em { border-color: rgba(107,114,128,.3); background: rgba(107,114,128,.1); }
.games-v3-detail-badges > em i { width: 6px; height: 6px; border-radius: 50%; background: #6b7280; }
.games-v3-detail-badges > em.is-active { border-color: rgba(34,197,94,.3); background: rgba(34,197,94,.1); color: #22c55e; font-weight: 600; }
.games-v3-detail-badges > em.is-active i { background: #22c55e; }
.games-v3-detail-hero-stats { display: flex; align-items: center; gap: 20px; }
.games-v3-detail-hero-stats > span { display: inline-flex; align-items: center; gap: 6px; color: #fff; font: 600 13px/1 Inter,Arial,sans-serif; }
.games-v3-detail-hero-stats svg { width: 14px; height: 14px; color: var(--games-red); }
.games-v3-detail-hero-stats > span:last-child svg { color: var(--games-text-sec); }
.games-v3-detail-hero-stats b { font-weight: 600; }
.games-v3-detail-intro > p { flex: 1; min-height: 0; margin: 0; overflow: hidden; color: var(--games-text-sec); font: 400 12px/1.6 Inter,Arial,sans-serif; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.games-v3-detail-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.games-v3-detail-actions > a, .games-v3-detail-actions > button, .games-v3-detail-actions > span { width: auto; min-height: 32px; padding: 8px 14px; border: 1px solid var(--games-border); border-radius: 7px; background: rgba(255,255,255,.05); color: var(--games-text-sec); display: inline-flex; align-items: center; justify-content: center; gap: 6px; cursor: pointer; font: 600 12px/1 Inter,Arial,sans-serif; text-transform: none; }
.games-v3-detail-actions > a.is-primary { padding-inline: 16px; border-color: transparent; background: linear-gradient(135deg,#ff2535,#d91023); color: #fff; box-shadow: 0 0 12px rgba(240,32,43,.28); font-weight: 700; }
.games-v3-detail-actions > span.is-disabled { cursor: default; opacity: .58; }
.games-v3-detail-actions svg { width: 13px; height: 13px; }

.games-v3-detail-tabs { width: fit-content; margin: 12px 28px 0; overflow: hidden; border: 1px solid var(--games-border); border-radius: 8px; background: var(--games-card); display: flex; gap: 0; }
.games-v3-detail-tabs button { width: auto; min-width: 0; height: auto; padding: 10px 24px; border: 0; border-radius: 0; background: transparent; color: var(--games-text-sec); display: flex; align-items: center; gap: 6px; cursor: pointer; font: 600 13px/1 Inter,Arial,sans-serif; letter-spacing: 0; text-transform: none; }
.games-v3-detail-tabs button svg { width: 13px; height: 13px; }
.games-v3-detail-tabs button.is-active { background: var(--games-red); color: #fff; box-shadow: 0 0 10px rgba(214,40,40,.3); }
.games-v3-detail-content { width: 100%; padding: 16px 28px 28px; display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 16px; background: var(--games-bg); }
.games-v3-detail-left, .games-v3-detail-sidebar { min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.games-v3-detail-panel { min-width: 0; margin: 0; padding: 18px; border: 1px solid var(--games-border); border-radius: 8px; background: var(--games-card); scroll-margin-top: calc(var(--header-height,75px) + 12px); }
.games-v3-detail-panel > header { min-height: 15px; margin: 0 0 14px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.games-v3-detail-panel > header > div { min-width: 0; display: flex; align-items: center; gap: 8px; }
.games-v3-detail-panel > header svg { width: 15px; height: 15px; color: var(--games-red); }
#games-v3-ranking > header svg { color: #f59e0b; }
.games-v3-detail-panel > header h2 { margin: 0; color: #fff; font: 700 14px/1 Inter,Arial,sans-serif; letter-spacing: 0; text-transform: none; }
.games-v3-detail-panel > header > a { flex: 0 0 auto; color: var(--games-red); font: 400 12px/1 Inter,Arial,sans-serif; }

.games-v3-tournament-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.games-v3-tournament-card { min-width: 0; overflow: hidden; border: 1px solid var(--games-border); border-radius: 8px; background: var(--games-card-2); }
.games-v3-tournament-cover { position: relative; height: 90px; overflow: hidden; background: linear-gradient(135deg,#0a3d26,#1a5c38); display: flex; align-items: center; justify-content: center; }
.games-v3-tournament-cover img { width: 100%; height: 100%; display: block; object-fit: cover; opacity: .58; }
.games-v3-tournament-cover::after { content: ""; position: absolute; inset: 0; background: rgba(4,19,13,.28); }
.games-v3-tournament-cover span { position: absolute; z-index: 1; inset-inline: 10px; color: #00c97a; font: 900 13px/1.2 Inter,Arial,sans-serif; text-align: center; text-transform: uppercase; }
.games-v3-tournament-body { padding: 10px 12px; }
.games-v3-tournament-body p { margin: 0 0 4px; color: var(--games-text-sec); display: flex; align-items: center; gap: 5px; font: 400 11px/1.3 Inter,Arial,sans-serif; }
.games-v3-tournament-body p:nth-of-type(2) { margin-bottom: 6px; gap: 12px; }
.games-v3-tournament-body p > span { display: inline-flex; align-items: center; gap: 4px; }
.games-v3-tournament-body p svg { width: 11px; height: 11px; }
.games-v3-tournament-body > .games-v3-tournament-summary { margin: 0 0 8px; display: flex; align-items: center; justify-content: space-between; gap: 7px; }
.games-v3-tournament-actions { margin: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px; }
.games-v3-tournament-actions > form { min-width: 0; margin: 0; }
.games-v3-tournament-signup, .games-v3-tournament-actions > form .games-v3-tournament-signup, .games-v3-tournament-matches-link { width: 100%; min-width: 0; height: 30px; padding: 0 8px; border-radius: 5px; display: inline-flex; align-items: center; justify-content: center; gap: 5px; font: 700 10px/1 Inter,Arial,sans-serif; white-space: nowrap; }
.games-v3-tournament-signup, .games-v3-tournament-actions > form .games-v3-tournament-signup { border: 1px solid transparent; background: linear-gradient(135deg,#ff2535,#d91023); color: #fff; }
.games-v3-tournament-matches-link { border: 1px solid var(--games-border); background: transparent; color: var(--games-text-sec); }
.games-v3-tournament-matches-link svg { width: 11px; height: 11px; }
.games-v3-tournament-actions > .games-v3-tournament-matches-link:only-child { grid-column: 1/-1; }
.games-v3-tournament-body strong { min-width: 0; color: #f59e0b; display: flex; align-items: center; gap: 4px; font: 700 13px/1.1 Inter,Arial,sans-serif; }
.games-v3-tournament-body strong svg { width: 12px; height: 12px; }
.games-v3-tournament-body em { max-width: 52%; padding: 2px 7px; overflow: hidden; border: 1px solid rgba(107,114,128,.25); border-radius: 4px; background: rgba(107,114,128,.2); color: #6b7280; font: 600 10px/1.2 Inter,Arial,sans-serif; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.games-v3-tournament-body em.is-open { border-color: rgba(34,197,94,.25); background: rgba(34,197,94,.1); color: #22c55e; }

.games-v3-results-wrap { width: 100%; overflow-x: auto; }
.games-v3-results-wrap table { width: 100%; min-width: 660px; border-collapse: collapse; font: 400 12px/1.25 Inter,Arial,sans-serif; }
.games-v3-results-wrap th { padding: 0 8px 8px; border-bottom: 1px solid var(--games-border); color: var(--games-text-muted); font-size: 11px; font-weight: 500; text-align: left; }
.games-v3-results-wrap td { padding: 9px 8px; border-bottom: 1px solid rgba(255,255,255,.03); color: #fff; font-size: 12px; }
.games-v3-results-wrap td:first-child, .games-v3-results-wrap td:last-child { color: var(--games-text-muted); font-size: 11px; }
.games-v3-results-wrap th:nth-child(3), .games-v3-results-wrap td:nth-child(3) { text-align: center; }
.games-v3-results-wrap td:nth-child(3) > strong { display: inline-flex; align-items: center; gap: 3px; font-size: 12px; font-weight: 700; }
.games-v3-results-wrap td:nth-child(3) b { color: var(--games-text-sec); font-weight: 700; }
.games-v3-results-wrap td:nth-child(3) b.is-winner { color: #22c55e; }
.games-v3-results-wrap td:nth-child(3) i { color: var(--games-text-muted); font-style: normal; }
.games-v3-player-chip { display: inline-flex; align-items: center; gap: 6px; font-weight: 500; }
.games-v3-player-chip > i { width: 22px; height: 22px; border: 1px solid var(--games-border); border-radius: 50%; background: #1a2033; color: #fff; display: grid; place-items: center; font-size: 8px; font-style: normal; font-weight: 700; }
.games-v3-about-panel > header { margin-bottom: 12px; }
.games-v3-about-panel > p { margin: 0; color: var(--games-text-sec); font: 400 12px/1.7 Inter,Arial,sans-serif; white-space: pre-line; }

.games-v3-similar > div { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.games-v3-similar > div > a { min-width: 0; overflow: hidden; border: 1px solid var(--games-border); border-radius: 7px; background: var(--games-card-2); color: #fff; }
.games-v3-similar > div > a > img { width: 100%; height: 55px; display: block; object-fit: cover; }
.games-v3-similar > div > a > span { min-width: 0; padding: 8px 10px; display: block; }
.games-v3-similar strong, .games-v3-similar small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.games-v3-similar strong { color: #fff; font-size: 12px; font-weight: 600; line-height: 1.2; }
.games-v3-similar small { margin-top: 2px; color: var(--games-text-muted); font-size: 10px; line-height: 1.2; }
.games-v3-similar em { margin-top: 4px; display: flex; gap: 3px; }
.games-v3-similar em i { padding: 1px 5px; border-radius: 3px; background: rgba(255,255,255,.07); color: var(--games-text-muted); font-size: 9px; font-style: normal; line-height: 1.2; }

.games-v3-ranking-head, .games-v3-ranking-row { display: grid; grid-template-columns: 28px minmax(92px,1fr) 56px 52px; align-items: center; }
.games-v3-ranking-head { padding: 0 6px 8px; border-bottom: 1px solid var(--games-border); color: var(--games-text-muted); font-size: 10px; font-weight: 500; line-height: 1.2; }
.games-v3-ranking-row { min-height: 43px; padding: 0 6px; border-bottom: 1px solid rgba(255,255,255,.03); font-size: 12px; }
.games-v3-ranking-row > b { width: 22px; height: 22px; border-radius: 50%; background: #b45309; color: #fff; display: grid; place-items: center; font-size: 10px; font-weight: 800; }
.games-v3-ranking-row:nth-child(2) > b { background: #f59e0b; }
.games-v3-ranking-row:nth-child(3) > b { background: #9ca3af; }
.games-v3-ranking-row > span { min-width: 0; display: flex; align-items: center; gap: 7px; }
.games-v3-ranking-row > span > i, .games-v3-ranking-row > span > img { width: 26px; height: 26px; border: 1px solid var(--games-border); border-radius: 50%; background: #1a2033; display: grid; place-items: center; object-fit: cover; color: #fff; font-size: 9px; font-style: normal; font-weight: 700; flex: 0 0 26px; }
.games-v3-ranking-row > span strong { min-width: 0; overflow: hidden; color: #fff; font-size: 12px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.games-v3-ranking-row > span svg { width: 10px; height: 10px; color: #f59e0b; }
.games-v3-ranking-row > em, .games-v3-ranking-row > small { color: #fff; font-size: 12px; font-style: normal; font-weight: 600; }
.games-v3-ranking-row > small { color: var(--games-red); font-weight: 700; }

.games-v3-format-list { margin: 0; }
.games-v3-format-list > div { min-height: 33px; padding: 8px 0; border-bottom: 1px solid rgba(255,255,255,.04); display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; font: 400 12px/1.35 Inter,Arial,sans-serif; }
.games-v3-format-list > div:last-child { padding-bottom: 0; border-bottom: 0; }
.games-v3-format-list dt { color: var(--games-text-muted); }
.games-v3-format-list dd { max-width: 55%; margin: 0; color: var(--games-text-sec); text-align: right; }
.games-v3-format-list a { color: var(--games-red); }
.games-v3-schedule-list { display: grid; gap: 4px; }
.games-v3-schedule-list > span { display: block; white-space: nowrap; }
.games-v3-quick-stats > div { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.games-v3-quick-stats > div > span { min-width: 0; padding: 10px; border: 1px solid var(--games-border); border-radius: 7px; background: var(--games-card-2); display: flex; flex-direction: column; align-items: center; text-align: center; }
.games-v3-quick-stats > div > span > svg { width: 18px; height: 18px; margin-bottom: 6px; color: var(--games-red); }
.games-v3-quick-stats > div > span:nth-child(2) > svg { color: #22c55e; }
.games-v3-quick-stats b { margin-bottom: 2px; color: #fff; font-size: 18px; font-weight: 800; line-height: 1; }
.games-v3-quick-stats small { color: var(--games-text-muted); font-size: 10px; line-height: 1.3; }
.games-v3-detail-empty { min-height: 88px; margin: 0; border: 1px dashed rgba(255,255,255,.1); border-radius: 7px; background: var(--games-card-2); color: var(--games-text-muted); display: flex; align-items: center; justify-content: center; font: 400 12px/1.45 Inter,Arial,sans-serif; text-align: center; }
.games-v3-not-found { width: calc(100% - 56px); min-height: 390px; margin: 28px; padding: 30px; border: 1px solid var(--games-border); border-radius: 10px; background: var(--games-card); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.games-v3-not-found > svg { width: 44px; height: 44px; color: var(--games-red); }
.games-v3-not-found h1 { margin: 14px 0 4px; font: 800 28px/1.1 Inter,Arial,sans-serif; }
.games-v3-not-found p { margin: 0 0 16px; color: var(--games-text-sec); font-size: 12px; }
.games-v3-not-found a { padding: 9px 15px; border-radius: 6px; background: var(--games-red); color: #fff; font-size: 12px; font-weight: 700; }

@media (max-width:1100px) {
  .games-v3-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .games-v3-detail-hero { height: auto; min-height: 240px; grid-template-columns: 48% 1fr; }
  .games-v3-detail-content { grid-template-columns: minmax(0,1fr) 292px; }
  .games-v3-tournament-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width:820px) {
  .games-v3-hero::before { right: 20px; width: 310px; }
  .games-v3-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .games-v3-detail-hero { grid-template-columns: 1fr; }
  .games-v3-detail-cover { height: 240px; }
  .games-v3-detail-intro { min-height: 240px; }
  .games-v3-detail-content { grid-template-columns: 1fr; }
  .games-v3-detail-sidebar { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: start; }
  .games-v3-quick-stats { grid-column: 1/-1; }
}

@media (max-width:620px) {
  .games-v3-hero { height: 150px; min-height: 150px; }
  .games-v3-hero-inner { padding: 18px 16px 0; }
  .games-v3-hero-copy h1 { font-size: 32px; }
  .games-v3-hero-copy p { font-size: 11px; }
  .games-v3-hero-motto { display: none; }
  .games-v3-catalog { padding-inline: 16px; }
  .games-v3-filter-list { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 3px; scrollbar-width: none; }
  .games-v3-filter-list::-webkit-scrollbar { display: none; }
  .games-v3-filter-list button { flex: 0 0 auto; }
  .games-v3-toolbar { flex-wrap: wrap; }
  .games-v3-search { width: 100%; }
  .games-v3-result-count { margin-left: auto; }
  .games-v3-card-visual { height: 125px; }
  .games-v3-breadcrumb { padding-inline: 16px; }
  .games-v3-detail-hero { width: calc(100% - 32px); margin-inline: 16px; }
  .games-v3-detail-cover { height: 210px; }
  .games-v3-detail-intro { min-height: 0; padding: 18px; }
  .games-v3-detail-intro > p { display: block; overflow: visible; }
  .games-v3-detail-tabs { width: calc(100% - 32px); margin-inline: 16px; overflow-x: auto; }
  .games-v3-detail-tabs button { flex: 1 0 auto; padding-inline: 16px; }
  .games-v3-detail-content { padding: 16px 16px 28px; }
  .games-v3-detail-sidebar { display: flex; }
  .games-v3-tournament-grid, .games-v3-similar > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width:430px) {
  .games-v3-grid { grid-template-columns: 1fr; }
  .games-v3-card-visual { height: 145px; }
  .games-v3-detail-cover { height: 180px; }
  .games-v3-detail-intro h1 { font-size: 24px; }
  .games-v3-detail-hero-stats { flex-wrap: wrap; }
  .games-v3-detail-actions > a, .games-v3-detail-actions > button, .games-v3-detail-actions > span { flex: 1 1 auto; }
  .games-v3-tournament-grid, .games-v3-similar > div { grid-template-columns: 1fr; }
  .games-v3-tournament-actions { grid-template-columns: 1fr; }
  .games-v3-detail-panel { padding: 14px; }
  .games-v3-detail-panel > header { align-items: flex-start; }
  .games-v3-detail-panel > header > a { font-size: 10px; text-align: right; }
}


/* v2.0.73 — /planning + /planing intégrés au stylesheet principal du web-app */
.planning-overview-page {
  --plan-red: #d62828;
  --plan-green: #26d07c;
  --plan-blue: #3d9bff;
  --plan-panel: #111722;
  --plan-panel-deep: #0b111a;
  --plan-field: #0c131d;
  --plan-muted: #7e8795;
  --plan-soft: #aeb4be;
  min-height: 100vh;
  background: linear-gradient(180deg, #080b12, #070a10);
  color: #fff;
}

.planning-overview-page .mhtm-plan-hero,
.planning-overview-page .mhtm-plan-main,
.planning-overview-page .mhtm-plan-panel,
.planning-overview-page .mhtm-plan-panel * {
  box-sizing: border-box;
}

.mhtm-plan-hero {
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid rgba(255, 255, 255, .06);
  background: linear-gradient(135deg, #080b12 0%, #0d0f1a 50%, #150810 100%);
  font-family: Inter, Arial, sans-serif;
}

.mhtm-plan-hero-fade {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  bottom: 0;
  width: 45%;
  background: linear-gradient(90deg, #080b12 0%, transparent 35%);
}

.mhtm-plan-hero-glow {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
  width: 44%;
  background: radial-gradient(ellipse at 80% 50%, rgba(140, 10, 10, .4) 0%, rgba(20, 5, 30, .5) 60%, transparent 100%);
}

.mhtm-plan-hero-lines {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 180px;
  height: 100%;
  opacity: .2;
}

.mhtm-plan-hero-lines line {
  stroke: var(--plan-red);
  stroke-width: 1.5;
}

.mhtm-plan-hero-content {
  position: relative;
  z-index: 3;
  padding: 28px 30px 24px;
}

.mhtm-plan-hero h1 {
  margin: 0 0 8px;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 44px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -1.5px;
  text-transform: none;
}

.mhtm-plan-hero h1 span {
  color: #fff;
}

.mhtm-plan-hero h1 b {
  color: var(--plan-red);
  font-weight: 800;
}

.mhtm-plan-hero p {
  max-width: 520px;
  margin: 0;
  color: var(--plan-soft);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.55;
}

.mhtm-plan-hero-motto {
  position: absolute;
  z-index: 3;
  top: 50%;
  right: 30px;
  transform: translateY(-50%);
  text-align: center;
}

.mhtm-plan-hero-motto strong {
  display: block;
  color: rgba(255, 255, 255, .6);
  font-size: 22px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 4px;
}

.mhtm-plan-hero-motto small {
  display: block;
  margin-top: 6px;
  color: rgba(255, 255, 255, .3);
  font-size: 8px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 3px;
}

.mhtm-plan-main {
  width: 100%;
  padding: 20px 30px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  font-family: Inter, Arial, sans-serif;
}

.mhtm-plan-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.mhtm-plan-metrics article {
  min-width: 0;
  padding: 14px 16px;
  display: flex;
  align-items: center;
  gap: 14px;
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 8px;
  background: var(--plan-panel);
}

.mhtm-plan-metrics article > span {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--plan-red);
  border: 1px solid rgba(214, 40, 40, .25);
  border-radius: 8px;
  background: rgba(214, 40, 40, .1);
}

.mhtm-plan-metrics article > div {
  min-width: 0;
}

.mhtm-plan-metrics strong,
.mhtm-plan-metrics b,
.mhtm-plan-metrics small {
  display: block;
}

.mhtm-plan-metrics strong {
  color: #fff;
  font-size: 28px;
  font-weight: 800;
  line-height: 1;
}

.mhtm-plan-metrics b {
  margin-top: 2px;
  color: var(--plan-muted);
  font-size: 11px;
  font-weight: 400;
  line-height: 1.2;
}

.mhtm-plan-metrics small {
  margin-top: 3px;
  overflow: hidden;
  color: var(--plan-muted);
  font-size: 10px;
  font-weight: 500;
  line-height: 1.2;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.mhtm-plan-metrics article:nth-child(-n + 2) small {
  color: var(--plan-green);
}

.mhtm-plan-dashboard {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 12px;
}

.mhtm-plan-panel {
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 8px;
  background: var(--plan-panel);
}

.mhtm-plan-panel-heading {
  padding: 14px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid rgba(255, 255, 255, .07);
}

.mhtm-plan-heading-copy {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.mhtm-plan-heading-copy > span {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  color: var(--plan-red);
}

.mhtm-plan-heading-copy > div {
  min-width: 0;
}

.mhtm-plan-panel-heading h2 {
  margin: 0;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: none;
}

.mhtm-plan-panel-heading p {
  margin: 3px 0 0;
  color: var(--plan-muted);
  font-size: 11px;
  font-weight: 400;
  line-height: 1.3;
}

.mhtm-plan-heading-action {
  padding: 6px 12px;
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  color: var(--plan-soft);
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 5px;
  background: rgba(255, 255, 255, .05);
  font-size: 11px;
  font-weight: 400;
  line-height: 1;
  text-decoration: none;
}

.mhtm-plan-heading-action:hover {
  color: #fff;
  border-color: rgba(214, 40, 40, .4);
}

.mhtm-plan-table-scroll {
  width: 100%;
  overflow-x: auto;
  scrollbar-color: rgba(255, 255, 255, .12) transparent;
}

.mhtm-plan-table-head,
.mhtm-plan-table-row {
  min-width: 992px;
  display: grid;
  grid-template-columns: 120px 180px 160px 150px 200px 120px 30px;
  padding-right: 16px;
  padding-left: 16px;
}

.mhtm-plan-table-head {
  padding-top: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(255, 255, 255, .05);
}

.mhtm-plan-table-head > span {
  min-width: 0;
  color: var(--plan-muted);
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .8px;
}

.mhtm-plan-table-row {
  padding-top: 10px;
  padding-bottom: 10px;
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, .04);
}

.mhtm-plan-table-row:nth-child(even) {
  background: rgba(255, 255, 255, .01);
}

.mhtm-plan-table-row:hover {
  background: rgba(255, 255, 255, .018);
}

.mhtm-plan-table-row > span,
.mhtm-plan-table-row > time,
.mhtm-plan-table-row > div {
  min-width: 0;
  padding-right: 10px;
  overflow: hidden;
  color: var(--plan-soft);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.2;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.mhtm-plan-table-row > time {
  color: var(--plan-muted);
}

.mhtm-plan-game-cell {
  display: flex;
  align-items: center;
  gap: 8px;
}

.mhtm-plan-game-cell > span {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 4px;
  background: rgba(255, 255, 255, .05);
}

.mhtm-plan-game-cell img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.mhtm-plan-game-cell b {
  overflow: hidden;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.mhtm-plan-status {
  padding: 3px 8px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--plan-blue);
  border-radius: 4px;
  background: rgba(61, 155, 255, .15);
  font-size: 10px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
}

.mhtm-plan-status i {
  width: 5px;
  height: 5px;
  flex: 0 0 5px;
  border-radius: 50%;
  background: currentColor;
}

.mhtm-plan-status.is-live,
.mhtm-plan-status.is-finished {
  color: var(--plan-green);
  background: rgba(38, 208, 124, .15);
}

.mhtm-plan-status.is-confirmed {
  color: var(--plan-soft);
  background: rgba(174, 180, 190, .15);
}

.mhtm-plan-status.is-cancelled {
  color: #ff4757;
  background: rgba(255, 71, 87, .15);
}

.mhtm-plan-action-cell {
  padding: 0 !important;
  display: grid;
  place-items: center;
}

.mhtm-plan-action-cell a,
.mhtm-plan-action-cell > span {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  color: var(--plan-muted);
  border-radius: 4px;
}

.mhtm-plan-action-cell a:hover {
  color: #fff;
  background: rgba(255, 255, 255, .06);
}

.mhtm-plan-table-empty {
  min-width: 992px;
  min-height: 210px;
  display: grid;
  place-items: center;
  text-align: center;
}

.mhtm-plan-table-empty > div {
  color: var(--plan-muted);
}

.mhtm-plan-table-empty svg,
.mhtm-plan-table-empty strong,
.mhtm-plan-table-empty span {
  display: block;
}

.mhtm-plan-table-empty svg {
  margin: 0 auto 8px;
  color: var(--plan-red);
}

.mhtm-plan-table-empty strong {
  color: #fff;
  font-size: 13px;
}

.mhtm-plan-table-empty span {
  margin-top: 4px;
  font-size: 10px;
}

.mhtm-plan-filter-panel .mhtm-plan-panel-heading {
  justify-content: flex-start;
}

.mhtm-plan-filter-panel .mhtm-plan-heading-copy {
  gap: 8px;
}

.mhtm-plan-filter-panel .mhtm-plan-panel-heading h2 {
  font-size: 13px;
}

.mhtm-plan-filter-panel .mhtm-plan-panel-heading p {
  font-size: 10px;
}

.mhtm-plan-filter-fields {
  display: flex;
  flex-direction: column;
}

.mhtm-plan-filter-fields label {
  min-width: 0;
  display: block;
}

.mhtm-plan-filter-fields label > b {
  display: block;
  margin-bottom: 6px;
  color: var(--plan-soft);
  font-weight: 600;
  line-height: 1.2;
}

.mhtm-plan-filter-fields label > span {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--plan-muted);
  border: 1px solid rgba(255, 255, 255, .1);
  background: var(--plan-field);
}

.mhtm-plan-filter-fields label > span > svg {
  flex: 0 0 auto;
}

.mhtm-plan-filter-fields select {
  min-width: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  flex: 1;
  appearance: none;
  color: var(--plan-soft);
  border: 0;
  outline: 0;
  background: transparent;
  font: 400 12px/1 Inter, Arial, sans-serif;
  cursor: pointer;
}

.mhtm-plan-filter-fields select option {
  color: #fff;
  background: var(--plan-field);
}

.mhtm-plan-apply,
.mhtm-plan-reset {
  width: 100%;
  padding: 0 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border-radius: 6px;
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0;
  text-transform: none;
  cursor: pointer;
}

.mhtm-plan-apply {
  color: #fff;
  border: 0;
  background: linear-gradient(135deg, #f0202b, var(--plan-red));
  font-weight: 700;
}

.mhtm-plan-apply em {
  min-width: 17px;
  height: 17px;
  display: grid;
  place-items: center;
  color: var(--plan-red);
  border-radius: 50%;
  background: #fff;
  font-size: 9px;
  font-style: normal;
}

.mhtm-plan-reset {
  color: var(--plan-soft);
  border: 1px solid rgba(255, 255, 255, .1);
  background: transparent;
  font-weight: 400;
}

.mhtm-plan-reset:hover {
  color: #fff;
  border-color: rgba(214, 40, 40, .4);
}

.mhtm-plan-format-panel,
.mhtm-plan-recommend-panel {
  padding: 14px 16px;
}

.mhtm-plan-format-panel .mhtm-plan-panel-heading,
.mhtm-plan-recommend-panel .mhtm-plan-panel-heading {
  margin-bottom: 14px;
  padding: 0;
  justify-content: flex-start;
  border-bottom: 0;
}

.mhtm-plan-format-grid {
  display: grid;
  grid-template-columns: repeat(10, minmax(0, 1fr));
  gap: 8px;
}

.mhtm-plan-format-grid > button {
  min-width: 0;
  padding: 12px 8px;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 8px;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 7px;
  background: var(--plan-panel-deep);
  font-family: Inter, Arial, sans-serif;
  text-decoration: none;
  text-transform: none;
  cursor: pointer;
  transition: all .15s;
}

.mhtm-plan-format-grid > button:hover,
.mhtm-plan-format-grid > button:focus-visible {
  border-color: rgba(214, 40, 40, .4);
  background: rgba(214, 40, 40, .05);
}

.mhtm-plan-format-grid > button > span {
  display: grid;
  place-items: center;
  color: var(--plan-red);
}

.mhtm-plan-format-grid strong {
  min-height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  text-align: center;
}

.mhtm-plan-format-grid small {
  color: var(--plan-muted);
  font-size: 9px;
  font-weight: 400;
  line-height: 1.3;
  text-align: center;
}

.mhtm-plan-game-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.mhtm-plan-game-grid > button {
  min-width: 0;
  padding: 12px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 7px;
  background: var(--plan-panel-deep);
  font-family: Inter, Arial, sans-serif;
  text-align: left;
  text-transform: none;
  cursor: pointer;
}

.mhtm-plan-game-grid > button:hover,
.mhtm-plan-game-grid > button:focus-visible {
  border-color: rgba(214, 40, 40, .4);
  background: rgba(214, 40, 40, .05);
}

.mhtm-plan-game-grid > button > svg {
  flex: 0 0 auto;
  color: var(--plan-muted);
}

.mhtm-plan-game-art {
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 8px;
  background: rgba(214, 40, 40, .08);
}

.mhtm-plan-game-art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mhtm-plan-game-copy {
  min-width: 0;
  flex: 1;
}

.mhtm-plan-game-copy > b,
.mhtm-plan-game-copy > small,
.mhtm-plan-game-copy > i {
  display: block;
}

.mhtm-plan-game-copy > b {
  overflow: hidden;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.mhtm-plan-game-copy > small {
  margin-bottom: 8px;
  overflow: hidden;
  color: var(--plan-muted);
  font-size: 10px;
  font-weight: 400;
  line-height: 1.4;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.mhtm-plan-game-copy > i {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  font-style: normal;
}

.mhtm-plan-game-copy em {
  padding: 2px 6px;
  color: var(--plan-soft);
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 3px;
  background: rgba(255, 255, 255, .06);
  font-size: 9px;
  font-weight: 500;
  line-height: 1.2;
  font-style: normal;
  white-space: nowrap;
}

.mhtm-plan-games-empty {
  grid-column: 1 / -1;
  padding: 28px;
  color: var(--plan-muted);
  font-size: 12px;
  text-align: center;
}

@media (max-width: 1100px) {
  .mhtm-plan-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mhtm-plan-dashboard {
    grid-template-columns: 1fr;
  }

  .mhtm-plan-filter-fields {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .mhtm-plan-apply,
  .mhtm-plan-reset {
    align-self: end;
  }

  .mhtm-plan-format-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .mhtm-plan-game-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .mhtm-plan-hero-content {
    padding: 28px 18px;
  }

  .mhtm-plan-hero h1 {
    font-size: 36px;
  }

  .mhtm-plan-hero p {
    max-width: calc(100% - 10px);
  }

  .mhtm-plan-hero-motto {
    display: none;
  }

  .mhtm-plan-main {
    padding: 14px 12px 24px;
    gap: 12px;
  }

  .mhtm-plan-filter-fields {
    grid-template-columns: 1fr;
  }

  .mhtm-plan-format-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mhtm-plan-game-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 480px) {
  .mhtm-plan-hero p br {
    display: none;
  }

  .mhtm-plan-metrics {
    gap: 8px;
  }

  .mhtm-plan-metrics article {
    padding: 10px;
    gap: 9px;
  }

  .mhtm-plan-metrics article > span {
    width: 36px;
    height: 36px;
    flex-basis: 36px;
  }

  .mhtm-plan-metrics article > span svg {
    width: 17px;
    height: 17px;
  }

  .mhtm-plan-metrics strong {
    font-size: 22px;
  }

  .mhtm-plan-metrics b {
    font-size: 9px;
  }

  .mhtm-plan-metrics small {
    font-size: 8px;
  }

  .mhtm-plan-panel-heading {
    padding: 12px;
  }

  .mhtm-plan-panel-heading p {
    font-size: 9px;
  }

  .mhtm-plan-heading-action {
    display: none;
  }

  .mhtm-plan-format-panel,
  .mhtm-plan-recommend-panel {
    padding: 12px;
  }

  .mhtm-plan-game-grid > button {
    gap: 9px;
  }
}

/* v2.0.73 — les écrans React intégrés peuvent neutraliser le voile historique .inner-page::after. */
.page.inner-page.page-overlay-disabled::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

/* v2.0.73 — garde-fou pour un ancien bundle React présent avant le rebuild Docker. */
.page.inner-page.planning-overview-page::after,
.page.inner-page.games-v3-page::after,
.page.inner-page.admin-panel-page::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

/* v2.0.169 — le panel utilisateur moderne ne doit jamais recevoir le voile legacy des inner pages. */
.page.inner-page.user-panel-page::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

/* v2.0.74 — vues publiques de tournoi alignées sur /admin/matches */
.planning-format-header{position:relative;min-height:105px;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.07);overflow:hidden;background:#0b111a;display:flex;align-items:center;gap:16px}.planning-format-header:after{content:"";position:absolute;inset:0 0 0 auto;width:200px;background:linear-gradient(90deg,transparent,rgba(214,40,40,.04));pointer-events:none}.planning-format-icon{width:72px;height:72px;flex:0 0 auto;border:1px solid rgba(214,40,40,.4);border-radius:8px;background:rgba(214,40,40,.12);color:#d62828;display:grid;place-items:center}.planning-format-copy{position:relative;z-index:1;min-width:0}.planning-format-copy>span{margin-bottom:8px;padding:2px 7px;border-radius:3px;display:inline-block;background:#d62828;color:#fff;font-size:9px;font-weight:800;letter-spacing:1px}.planning-format-copy h2{margin:0!important;color:#fff!important;font-size:28px!important;font-weight:800!important;line-height:1.1!important;letter-spacing:-.5px!important;text-transform:none!important}.planning-format-copy p{margin:4px 0 0;color:#aeb4be;font-size:12px;line-height:1.4}.planning-format-header>strong{position:relative;z-index:1;margin-left:auto;color:rgba(255,255,255,.45);font-size:9px;font-weight:700;line-height:2.2;letter-spacing:4px;text-align:right}
.planning-match-card{width:100%;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:#0b111a;box-shadow:0 4px 12px rgba(0,0,0,.3)}.planning-match-team{height:26px;padding:0 6px;display:flex;align-items:center;gap:5px}.planning-match-team+.planning-match-team{border-top:1px solid rgba(255,255,255,.06)}.planning-match-team>span:first-child{width:12px;flex:0 0 auto;color:#7e8795;font-size:9px;text-align:right}.planning-match-team>strong{min-width:0;flex:1;overflow:hidden;color:#aeb4be;font-size:11px;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.planning-match-team>b{min-width:20px;padding:1px 6px;border-radius:3px;background:#1a2234;color:#fff;font-size:11px;text-align:center}.planning-match-team.is-winner{background:rgba(214,40,40,.1)}.planning-match-team.is-winner>strong{color:#fff;font-weight:600}.planning-match-team.is-winner>b{background:#d62828}.planning-match-card.is-compact .planning-match-team{height:22px}.planning-match-card.is-compact .planning-match-team>strong,.planning-match-card.is-compact .planning-match-team>b{font-size:10px}
.planning-single-platforms{display:grid;gap:18px}.planning-single-platform{border-top:1px solid rgba(255,255,255,.06)}.planning-single-platform:first-child{border-top:0}.planning-single-platform>header{padding:14px 20px 0;display:flex;align-items:baseline;justify-content:space-between;gap:12px}.planning-single-platform>header strong{color:#fff;font-size:13px}.planning-single-platform>header small{color:#7e8795!important;font-size:10px!important}.planning-single-platform>.planning-no-data{margin:14px 20px 20px}.planning-single-headings{width:860px;margin-bottom:12px;display:grid;grid-template-columns:repeat(4,185px);gap:40px}.planning-single-headings>div{text-align:center}.planning-single-headings strong,.planning-single-headings small{display:block}.planning-single-headings strong{color:#fff;font-size:12px}.planning-single-headings small{color:#7e8795!important;font-size:10px!important}.planning-single-bracket{position:relative;width:1020px;height:600px}.planning-single-bracket>svg{position:absolute;inset:0;overflow:visible;pointer-events:none}.planning-single-match{position:absolute;width:185px}.planning-winner-card{position:absolute;width:120px;padding:12px;border:1px solid rgba(214,40,40,.6);border-radius:8px;background:linear-gradient(135deg,#1a0505,#2a0808);box-shadow:0 0 20px rgba(214,40,40,.15);color:#d62828;text-align:center}.planning-winner-card svg{margin:0 auto 8px}.planning-winner-card small,.planning-winner-card strong{display:block}.planning-winner-card small{margin-bottom:6px;color:#d62828!important;font-size:8px!important;font-weight:800;letter-spacing:2px}.planning-winner-card strong{overflow:hidden;color:#fff;font-size:13px;font-weight:800;line-height:1.3;text-overflow:ellipsis}

.planning-roundrobin-content,.planning-swiss-content,.planning-ffa-content{padding:16px;overflow-x:auto}.planning-roundrobin-grid{min-width:930px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.planning-roundrobin-grid section>h3{margin:0 0 10px;color:#fff;font-size:13px}.planning-roundrobin-grid section>h3 span{color:#26d07c;font-size:10px;font-weight:500}.planning-table-scroll{overflow-x:auto}.planning-roundrobin-grid table{width:100%;border-collapse:collapse;color:#aeb4be;font-size:11px}.planning-roundrobin-grid th{padding:6px;color:#7e8795;font-size:10px;font-weight:700;text-align:center}.planning-roundrobin-grid th:nth-child(2){text-align:left}.planning-roundrobin-grid td{padding:7px 6px;border-top:1px solid rgba(255,255,255,.04);text-align:center}.planning-roundrobin-grid td:nth-child(2){text-align:left}.planning-roundrobin-grid td>span{display:flex;align-items:center;gap:6px;color:#fff;font-size:11px;font-weight:600;white-space:nowrap}.planning-roundrobin-grid td>strong{color:#d62828;font-size:13px}.planning-matrix th,.planning-matrix td{min-width:38px}.planning-matrix th:first-child,.planning-matrix td:first-child{min-width:100px}.planning-matrix th .planning-round-calendar{grid-column:1/-1}.planning-round-calendar>div{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:8px}.planning-round-calendar article{overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:6px;background:#0b111a}.planning-round-calendar article>header{padding:7px 10px;border-bottom:1px solid rgba(255,255,255,.06);background:#070d16}.planning-round-calendar article>header strong,.planning-round-calendar article>header small{display:block}.planning-round-calendar article>header strong{color:#d62828;font-size:11px}.planning-round-calendar article>header small{color:#7e8795!important;font-size:9px!important}.planning-round-calendar article>p{margin:0;padding:4px 8px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:4px}.planning-round-calendar article>p>span{min-width:0;overflow:hidden;display:flex;align-items:center;gap:4px;color:#aeb4be;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.planning-round-calendar article>p>span:last-child{justify-content:flex-end}.planning-round-calendar article>p>b{padding:1px 5px;border-radius:2px;background:#1a2234;color:#fff;font-size:10px}
.planning-swiss-rounds{min-width:980px;display:flex;gap:10px}.planning-swiss-rounds>article{min-width:170px;flex:1;overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:6px;background:#0b111a}.planning-swiss-rounds>article>header{padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.06);background:#070d16}.planning-swiss-rounds>article>header>*{display:block}.planning-swiss-rounds>article>header strong{color:#d62828;font-size:12px}.planning-swiss-rounds>article>header small{color:#7e8795!important;font-size:9px!important}.planning-swiss-rounds>article>p{margin:0 10px;padding:5px 0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:4px}.planning-swiss-rounds>article>p>span{min-width:0;overflow:hidden;display:flex;align-items:center;gap:4px;color:#aeb4be;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.planning-swiss-rounds>article>p>span:first-child{justify-content:flex-end}.planning-swiss-rounds>article>p>b{color:#fff;font-size:11px}.planning-swiss-rounds>article>p em{color:#7e8795;font-size:8px;font-style:normal}.planning-swiss-rounds>aside{width:220px;flex:0 0 220px;overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:6px;background:#0b111a}.planning-swiss-rounds>aside>header{padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.06);background:#070d16;color:#d62828;display:flex;align-items:center;gap:6px}.planning-swiss-rounds>aside>header strong{color:#fff;font-size:12px}.planning-standing-heading,.planning-swiss-rounds>aside>p{margin:0 10px;display:grid;grid-template-columns:24px 1fr 22px 22px 40px;gap:2px;align-items:center}.planning-standing-heading{padding:8px 0 5px;color:#7e8795;font-size:9px;font-weight:700}.planning-swiss-rounds>aside>p{padding:4px 0;border-bottom:1px solid rgba(255,255,255,.03);font-size:10px}.planning-swiss-rounds>aside>p>b{color:#ffd700}.planning-swiss-rounds>aside>p>span{min-width:0;overflow:hidden;color:#aeb4be;display:flex;align-items:center;gap:5px;text-overflow:ellipsis;white-space:nowrap}.planning-swiss-rounds>aside>p>em{color:#aeb4be;font-style:normal;text-align:center}.planning-swiss-rounds>aside>p>em:nth-last-child(3){color:#26d07c}.planning-swiss-rounds>aside>p>em:nth-last-child(2){color:#d62828}
.planning-ffa-phases{min-width:900px;padding:12px 4px;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center}.planning-ffa-phases>div{flex:1;display:flex;align-items:center;gap:8px}.planning-ffa-phases>div>b{width:24px;height:24px;flex:0 0 auto;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:rgba(255,255,255,.06);color:#fff;display:grid;place-items:center;font-size:10px}.planning-ffa-phases>div:first-child>b{border-color:#d62828;background:#d62828}.planning-ffa-phases>div>span{color:#7e8795;font-size:11px;white-space:nowrap}.planning-ffa-phases>div:first-child>span{color:#fff;font-weight:700}.planning-ffa-phases>div>i{min-width:20px;height:1px;flex:1;margin:0 10px;background:rgba(255,255,255,.1)}.planning-ffa-phases>aside{margin-left:24px;text-align:right}.planning-ffa-phases>aside small,.planning-ffa-phases>aside strong{display:block}.planning-ffa-phases>aside small{color:#7e8795!important;font-size:10px!important}.planning-ffa-phases>aside strong{color:#d62828;font-size:20px}.planning-ffa-title{margin:14px 0 12px;display:flex;align-items:center;gap:8px;color:#d62828}.planning-ffa-title strong,.planning-ffa-title small{display:block}.planning-ffa-title strong{color:#fff;font-size:14px}.planning-ffa-title small{color:#7e8795!important;font-size:11px!important;font-weight:400}.planning-ffa-grid{min-width:1150px;display:grid;grid-template-columns:repeat(4,1fr) 220px;gap:10px}.planning-ffa-grid>article,.planning-ffa-grid>aside>section{overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:6px;background:#0b111a}.planning-ffa-grid>article>header{padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.06);background:#070d16;display:flex;align-items:center;justify-content:space-between}.planning-ffa-grid>article>header strong,.planning-ffa-grid>article>header small{display:block}.planning-ffa-grid>article>header strong{color:#fff;font-size:12px}.planning-ffa-grid>article>header small{color:#7e8795!important;font-size:9px!important}.planning-ffa-grid>article>header>span{padding:2px 7px;border-radius:4px;background:rgba(61,155,255,.13);color:#3d9bff;font-size:9px;font-weight:700}.planning-lobby-heading,.planning-ffa-grid>article>p{margin:0 10px;display:grid;grid-template-columns:20px 1fr 36px;align-items:center;gap:2px}.planning-lobby-heading{padding:8px 0 4px;color:#7e8795;font-size:9px;font-weight:700}.planning-lobby-heading>span:last-child{text-align:right}.planning-ffa-grid>article>p{padding:4px 0;border-bottom:1px solid rgba(255,255,255,.03)}.planning-ffa-grid>article>p>b{color:#ffd700;font-size:9px}.planning-ffa-grid>article>p>span{min-width:0;overflow:hidden;color:#aeb4be;display:flex;align-items:center;gap:5px;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.planning-ffa-grid>article>p>strong{color:#fff;font-size:10px;text-align:right}.planning-ffa-grid>aside{display:flex;flex-direction:column;gap:10px}.planning-ffa-grid>aside>section{padding:10px}.planning-ffa-grid>aside>section>header{color:#d62828;display:flex;align-items:center;gap:6px}.planning-ffa-grid>aside>section>header strong{color:#fff;font-size:12px}.planning-ffa-grid>aside>section>p{margin:8px 0;color:#7e8795;font-size:10px;line-height:1.5}.planning-ffa-grid>aside>section>div{display:flex;align-items:center;justify-content:space-between;color:#aeb4be;font-size:11px}.planning-ffa-grid>aside>section>div>b{color:#d62828;font-size:16px}.planning-ffa-grid>aside>section>small{margin-top:8px;padding:6px 8px;border-radius:4px;background:rgba(255,255,255,.04);display:block;color:#7e8795!important;font-size:9px!important;line-height:1.6}.planning-ffa-grid>aside>section+section>p{margin:0;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.03);display:grid;grid-template-columns:18px 1fr 32px;align-items:center;gap:2px}.planning-ffa-grid>aside>section+section>p>b{color:#ffd700}.planning-ffa-grid>aside>section+section>p>span{min-width:0;overflow:hidden;color:#aeb4be;display:flex;align-items:center;gap:4px;text-overflow:ellipsis;white-space:nowrap}.planning-ffa-grid>aside>section+section>p>span>em{padding:1px 4px;border-radius:2px;background:rgba(38,208,124,.15);color:#26d07c;font-size:8px;font-style:normal}.planning-ffa-grid>aside>section+section>p>strong{color:#fff;text-align:right}.planning-no-data{padding:20px!important;color:#7e8795!important;font-size:10px!important;text-align:center}

.mhtm-plan-public-games{scroll-margin-top:90px}.mhtm-plan-public-game-grid{padding:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mhtm-plan-public-game-card{min-width:0;padding:0;border:1px solid rgba(255,255,255,.08);border-radius:9px;overflow:hidden;background:#0b111a;color:inherit;text-align:left;display:grid;grid-template-columns:150px minmax(0,1fr) 44px;align-items:stretch;cursor:pointer;transition:border-color .15s,transform .15s,background .15s}.mhtm-plan-public-game-card:hover{transform:translateY(-1px);border-color:rgba(214,40,40,.55);background:#0d141f}.mhtm-plan-public-game-image{position:relative;min-height:145px;overflow:hidden;background:#080b12}.mhtm-plan-public-game-image>img{width:100%;height:100%;object-fit:cover}.mhtm-plan-public-game-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,#0b111a)}.mhtm-plan-public-game-image>.mhtm-plan-status{position:absolute;z-index:2;left:10px;top:10px}.mhtm-plan-public-game-body{min-width:0;padding:16px 14px}.mhtm-plan-public-game-body>small{display:block;margin-bottom:4px;color:#d62828;font-size:8px;font-weight:800;letter-spacing:1.4px}.mhtm-plan-public-game-body>strong{display:block;color:#fff;font-size:18px;font-weight:800;line-height:1.2}.mhtm-plan-public-game-body>p{min-height:34px;margin:5px 0 12px;color:#7e8795;font-size:10px;line-height:1.55}.mhtm-plan-public-game-meta{display:flex;flex-wrap:wrap;gap:5px}.mhtm-plan-public-game-meta>b{padding:4px 7px;border:1px solid rgba(255,255,255,.08);border-radius:4px;background:rgba(255,255,255,.03);color:#aeb4be;display:inline-flex;align-items:center;gap:5px;font-size:9px;font-weight:500}.mhtm-plan-public-game-meta>b:first-child{border-color:rgba(214,40,40,.25);color:#fff}.mhtm-plan-public-next{display:block;margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.05)}.mhtm-plan-public-next>small,.mhtm-plan-public-next>strong{display:block}.mhtm-plan-public-next>small{color:#7e8795;font-size:8px;font-weight:700;letter-spacing:.8px}.mhtm-plan-public-next>strong{margin-top:2px;color:#26d07c;font-size:10px;font-weight:600}.mhtm-plan-public-game-arrow{display:grid;place-items:center;color:#7e8795;border-left:1px solid rgba(255,255,255,.05)}.mhtm-plan-public-game-card:hover .mhtm-plan-public-game-arrow{color:#d62828}

.mhtm-plan-public-tournament{display:flex;flex-direction:column;gap:14px;scroll-margin-top:90px}.mhtm-plan-public-tournament-top{border:1px solid rgba(255,255,255,.08);background:#111722;display:grid;grid-template-columns:115px minmax(0,1fr) auto;align-items:center}.mhtm-plan-public-tournament-top>button{border:1px solid rgba(255,255,255,.1);background:#0b111a;color:#aeb4be;display:flex;align-items:center;justify-content:center;gap:6px;font:600 10px/1 Inter,Arial,sans-serif;cursor:pointer}.mhtm-plan-public-tournament-top>button:hover{border-color:#d62828;color:#fff}.mhtm-plan-public-tournament-top>div{min-width:0;display:flex;align-items:center;gap:12px}.mhtm-plan-public-selected-art{width:68px;height:58px;flex:0 0 68px;border:1px solid rgba(255,255,255,.1);border-radius:6px;overflow:hidden;background:#080b12}.mhtm-plan-public-selected-art img{width:100%;height:100%;object-fit:cover}.mhtm-plan-public-tournament-top>div>div{min-width:0}.mhtm-plan-public-tournament-top>div small{display:block;color:#d62828;font-size:8px;font-weight:800;letter-spacing:1.1px}.mhtm-plan-public-tournament-top h2{margin:2px 0 2px;color:#fff;font-size:21px;font-weight:800;line-height:1.1}.mhtm-plan-public-tournament-top p{margin:0;color:#7e8795;font-size:10px}.mhtm-plan-public-tournament-top>aside{display:flex;align-items:center;gap:8px}.mhtm-plan-public-tournament-top>aside>span{min-width:94px;padding:9px 10px;border:1px solid rgba(255,255,255,.07);border-radius:6px;background:#0b111a}.mhtm-plan-public-tournament-top>aside small,.mhtm-plan-public-tournament-top>aside strong{display:block}.mhtm-plan-public-tournament-top>aside small{color:#7e8795;font-size:7px;font-weight:700;letter-spacing:.7px}.mhtm-plan-public-tournament-top>aside strong{margin-top:3px;color:#fff;font-size:11px;font-weight:700}.mhtm-plan-public-format-card{background:#0e141e}.mhtm-plan-public-format-card .planning-format-header{border-radius:8px 8px 0 0}.planning-public-match-card{padding:0;font-family:Inter,Arial,sans-serif;text-align:left;cursor:pointer;appearance:none}.planning-public-match-card:hover{border-color:rgba(214,40,40,.7);box-shadow:0 0 0 1px rgba(214,40,40,.2),0 6px 18px rgba(0,0,0,.35)}.planning-public-match-card:focus-visible{outline:2px solid #d62828;outline-offset:2px}.planning-round-calendar article>.planning-round-match-link,.planning-swiss-rounds>article>.planning-swiss-match-link{width:100%;border:0;border-top:1px solid rgba(255,255,255,.03);background:transparent;color:inherit;font-family:inherit;cursor:pointer}.planning-round-calendar article>.planning-round-match-link{margin:0;padding:5px 8px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:4px}.planning-round-calendar article>.planning-round-match-link:hover,.planning-swiss-rounds>article>.planning-swiss-match-link:hover{background:rgba(214,40,40,.08)}.planning-round-calendar article>.planning-round-match-link>span{min-width:0;overflow:hidden;display:flex;align-items:center;gap:4px;color:#aeb4be;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.planning-round-calendar article>.planning-round-match-link>span:last-child{justify-content:flex-end}.planning-round-calendar article>.planning-round-match-link>b{padding:1px 5px;border-radius:2px;background:#1a2234;color:#fff;font-size:10px}.planning-swiss-rounds>article>.planning-swiss-match-link{margin:0;padding:5px 10px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:4px}.planning-swiss-rounds>article>.planning-swiss-match-link>span{min-width:0;overflow:hidden;display:flex;align-items:center;gap:4px;color:#aeb4be;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.planning-swiss-rounds>article>.planning-swiss-match-link>span:first-child{justify-content:flex-end}.planning-swiss-rounds>article>.planning-swiss-match-link>b{color:#fff;font-size:11px}.planning-swiss-rounds>article>.planning-swiss-match-link em{color:#7e8795;font-size:8px;font-style:normal}.mhtm-plan-generic-format{padding:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.mhtm-plan-generic-format>section{padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:7px;background:#0b111a}.mhtm-plan-generic-format>section>header{margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;gap:8px}.mhtm-plan-generic-format>section>header strong{color:#fff;font-size:12px}.mhtm-plan-generic-format>section>header small{color:#7e8795;font-size:9px}.mhtm-plan-generic-format>section>div{display:grid;gap:7px}


@media(max-width:1100px){.mhtm-plan-public-game-grid{grid-template-columns:1fr}.mhtm-plan-public-tournament-top{grid-template-columns:105px minmax(0,1fr)}.mhtm-plan-public-tournament-top>aside{grid-column:1/-1;justify-content:flex-end}.mhtm-plan-public-tournament-top>aside>span{flex:1}}
@media(max-width:700px){.mhtm-plan-public-game-grid{padding:10px}.mhtm-plan-public-game-card{grid-template-columns:92px minmax(0,1fr) 34px}.mhtm-plan-public-game-image{min-height:132px}.mhtm-plan-public-game-body{padding:12px 10px}.mhtm-plan-public-game-body>strong{font-size:15px}.mhtm-plan-public-game-body>p{min-height:0}.mhtm-plan-public-next{display:none}.mhtm-plan-public-tournament-top{grid-template-columns:1fr}.mhtm-plan-public-tournament-top>button{width:max-content}.mhtm-plan-public-tournament-top>aside{grid-column:auto;display:grid;grid-template-columns:repeat(3,1fr)}.mhtm-plan-public-tournament-top>aside>span{min-width:0}.mhtm-plan-public-tournament-top h2{font-size:18px}.planning-format-header>strong{display:none}.planning-format-header{padding:13px}.planning-format-icon{width:54px;height:54px}.planning-format-copy h2{font-size:20px!important}.planning-single-scroll,.planning-roundrobin-content,.planning-swiss-content,.planning-ffa-content{padding:12px}}

/* v2.0.75 — Mobile bracket viewport: one-finger pan in both axes without moving the whole page. */
@media (max-width:700px){
  .planning-single-scroll{
    position:relative;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-x pan-y;
    -webkit-user-select:none;
    user-select:none;
    cursor:grab;
    scrollbar-width:thin;
  }
  .planning-single-scroll:active{cursor:grabbing}
  .planning-single-headings{
    position:sticky;
    top:0;
    z-index:12;
    padding:7px 0 9px;
    background:linear-gradient(180deg,rgba(8,11,18,.98) 0%,rgba(8,11,18,.94) 78%,rgba(8,11,18,0) 100%);
  }
}

/* v2.0.76 — Real two-axis bracket drag. The canvas keeps an intrinsic width so horizontal panning always has scrollable content. */
.planning-bracket-pan-viewport{overflow:auto;overscroll-behavior:contain}
.planning-bracket-canvas{position:relative;display:block;max-width:none;box-sizing:border-box}
@media(max-width:700px){
  .planning-bracket-pan-viewport{overflow:auto!important;-webkit-user-select:none;user-select:none}
  .planning-single-scroll{width:100%!important;max-width:100%!important;overflow:auto!important}
  .planning-single-scroll>.planning-bracket-canvas{width:max-content;max-width:none}
  .planning-single-bracket{max-width:none!important;flex:none!important}
  .planning-single-headings{max-width:none!important}
}

/* v2.0.79 — vues publiques des moteurs réels */

.planning-ffa-real-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;padding:16px}.planning-ffa-real-lobby{border:1px solid rgba(255,255,255,.08);background:#0e141e;border-radius:12px;overflow:hidden}.planning-ffa-real-lobby>header{display:flex;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid rgba(255,255,255,.07)}.planning-ffa-real-lobby>header div{display:grid;gap:2px}.planning-ffa-real-lobby>header small{color:#7e8795}.planning-ffa-real-lobby>header>span{font-size:11px;color:#d62828}.planning-ffa-real-lobby>p{display:grid;grid-template-columns:28px 1fr 50px;align-items:center;gap:8px;margin:0;padding:8px 14px;border-top:1px solid rgba(255,255,255,.045)}.planning-ffa-real-lobby>p>span{display:flex;align-items:center;gap:7px}.planning-ffa-real-lobby>p em{margin-left:auto;color:#26d07c;font-size:10px;font-style:normal}.planning-ffa-real-grid>aside{display:grid;align-content:start;gap:12px}.planning-ffa-real-grid>aside section{border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#0e141e;padding:12px}.planning-ffa-real-grid>aside p{display:grid;grid-template-columns:24px 1fr 42px;gap:7px;align-items:center;margin:0;padding:7px 0;border-top:1px solid rgba(255,255,255,.05)}
@media(max-width:720px){.planning-ffa-real-grid{grid-template-columns:1fr;padding:10px}}

.planning-swiss-bye { opacity: .82; }

/* v2.0.82 — Bracket pan UX: horizontal canvas, vertical page scroll. */
.planning-bracket-pan-viewport{
  box-sizing:border-box;
  cursor:grab;
  scrollbar-width:thin;
  scroll-behavior:auto;
  outline:none;
}
.planning-bracket-pan-viewport:focus-visible{
  box-shadow:inset 0 0 0 1px rgba(214,40,40,.48);
}
.planning-bracket-pan-viewport[data-dragging="true"]{
  cursor:grabbing!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
.planning-single-scroll{
  width:100%!important;
  max-width:100%!important;
  max-height:none!important;
  padding:20px 20px 14px;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  touch-action:pan-y!important;
}
.planning-single-scroll>.planning-bracket-canvas{
  width:max-content;
  max-width:none!important;
  min-width:max-content;
}
.planning-single-headings{
  position:relative!important;
  top:auto!important;
  z-index:2;
}

@media(max-width:700px){
  .planning-bracket-pan-viewport{
    max-height:none!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    touch-action:pan-y!important;
    cursor:grab;
  }
  .planning-single-scroll{
    max-height:none!important;
    padding:12px 12px 10px;
  }
  .planning-single-platform>header{
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }
  .planning-single-platform>header small::after{
    content:" · Glissez horizontalement ↔"!important;
    color:#aeb4be;
  }
}
@media(min-width:701px){
  .planning-single-platform>header small::after{
    content:" · Glissez à la souris ou utilisez Maj + molette ↔";
    color:#7e8795;
  }
}

/* v2.0.83 — Reliable mobile horizontal bracket drag (iOS/Android). */
.planning-single-platforms,
.planning-single-platform,
.planning-format-body,
.planning-reference-layout,
.planning-reference-main{min-width:0!important}
.planning-bracket-pan-viewport{
  display:block;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow-x:scroll!important;
  overflow-y:hidden!important;
  overscroll-behavior-x:contain;
  overscroll-behavior-y:auto;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-x pan-y pinch-zoom!important;
  scrollbar-gutter:auto;
}
.planning-bracket-pan-viewport>.planning-bracket-canvas,
.planning-single-scroll>.planning-bracket-canvas{
  display:block!important;
  width:max-content;
  min-width:max-content!important;
  max-width:none!important;
  flex:none!important;
}
@media(max-width:700px){
  .planning-bracket-pan-viewport,
  .planning-single-scroll{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow-x:scroll!important;
    overflow-y:hidden!important;
    touch-action:pan-x pan-y pinch-zoom!important;
  }
  .planning-single-bracket,
  .planning-single-headings{
    max-width:none!important;
    flex:none!important;
  }
}

/* v2.0.85 — /jeux: keep desktop toolbar controls at their designed compact size.
   /admin/taille-texte can target bare input/select with !important; these more
   specific rules prevent that global desktop rule from blowing up only the
   catalogue search/sort text while leaving mobile typography untouched. */
@media (min-width: 981px) {
  body .games-v3-page .games-v3-toolbar .games-v3-search input {
    font-family: Inter, Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
  }
  body .games-v3-page .games-v3-toolbar .games-v3-sort select {
    font-family: Inter, Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
  }
}

/* v2.0.87 — Result editor modal shared by public Calendar (admin session) and /admin/matches. */
.match-result-modal{
  position:fixed;
  inset:0;
  display:grid;
  place-items:center;
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
}
.match-result-modal-card{
  position:relative;
  overflow:auto;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(155deg,#121923 0%,#0b1119 100%);
  color:#fff;
}
.match-result-modal-head{
  position:sticky;
  top:0;
  z-index:3;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  border-bottom:1px solid rgba(255,255,255,.075);
  background:rgba(17,23,34,.97);
}
.match-result-modal-head>div{min-width:0}
.match-result-modal-head small{display:block;color:#d62828;font:800 9px/1.2 Inter,Arial,sans-serif;letter-spacing:1.2px}
.match-result-modal-head h2{margin:5px 0 3px;color:#fff;font:800 19px/1.15 Inter,Arial,sans-serif;white-space:normal}
.match-result-modal-head h2 span{color:#7e8795;font-size:.68em;font-weight:700}
.match-result-modal-head p{margin:0;color:#7e8795;font:500 10px/1.35 Inter,Arial,sans-serif}
.match-result-modal-close{
  flex:0 0 36px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(255,255,255,.11);
  border-radius:8px;
  background:#0a1018;
  color:#fff;
  font:400 24px/1 Inter,Arial,sans-serif;
  cursor:pointer;
}
.match-result-modal-close:hover,.match-result-modal-close:focus-visible{border-color:#d62828;background:rgba(214,40,40,.16);outline:none}
.match-result-modal-form{display:grid}
.match-result-modal-versus{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);align-items:end;gap:10px}
.match-result-modal-versus>b{padding-bottom:12px;color:#7e8795;text-align:center;font:800 18px/1 Inter,Arial,sans-serif}
.match-result-modal-form label{display:grid;color:#9ba4b0;font:700 10px/1.2 Inter,Arial,sans-serif}
.match-result-modal-versus label span{min-width:0;overflow:hidden;color:#fff;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.match-result-modal :is(input,select){
  width:100%;
  min-width:0;
  border:1px solid rgba(255,255,255,.12);
  background:#080d14;
  color:#fff;
  font-family:Inter,Arial,sans-serif!important;
  font-weight:600!important;
  line-height:1.2!important;
  outline:none;
}
.match-result-modal-versus input{text-align:center;font-weight:800!important}
.match-result-modal :is(input,select):focus{border-color:#d62828;box-shadow:0 0 0 3px rgba(214,40,40,.12)}
.match-result-modal-winner small{color:#697383;font-size:9px;font-weight:500;line-height:1.45}
.match-result-modal-warning{margin:0;padding:10px 12px;border:1px solid rgba(244,182,62,.25);border-radius:8px;background:rgba(244,182,62,.06);color:#c9b278;font:500 10px/1.45 Inter,Arial,sans-serif}
.match-result-modal-form footer{display:grid;grid-template-columns:120px minmax(0,1fr);gap:9px;margin-top:2px}
.match-result-modal-form footer button{border-radius:7px;font:800 10px/1 Inter,Arial,sans-serif;letter-spacing:.45px;cursor:pointer}
.match-result-modal-cancel{border:1px solid rgba(255,255,255,.12);background:transparent;color:#aeb4be}
.match-result-modal-submit{border:1px solid #d62828;background:linear-gradient(135deg,#e12a31,#c91f27);color:#fff;box-shadow:0 8px 22px rgba(214,40,40,.2)}
.match-result-modal-submit:hover,.match-result-modal-submit:focus-visible{filter:brightness(1.08)}
.mhtm-plan-admin-result-hint{display:flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid rgba(214,40,40,.24);border-radius:7px;background:rgba(214,40,40,.06);font-family:Inter,Arial,sans-serif}
.mhtm-plan-admin-result-hint strong{flex:0 0 auto;color:#ef4444;font-size:9px;letter-spacing:.7px}
.mhtm-plan-admin-result-hint span{color:#aeb4be;font-size:10px}
@media(max-width:640px){
  .match-result-modal{place-items:center}
  .match-result-modal-card{width:100%}
  .match-result-modal-head h2{font-size:16px}
  .match-result-modal-form{gap:14px}
  .match-result-modal-versus{grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);gap:7px}
  .match-result-modal-versus input{font-size:18px!important}
  .match-result-modal-form footer{grid-template-columns:1fr;gap:8px}
  .match-result-modal-submit{order:-1}
  .mhtm-plan-admin-result-hint{align-items:flex-start;flex-direction:column;gap:3px}
}

/* v2.0.88 — vrai arbre Double Elimination connecté */
.planning-double-tree-shell{min-width:0;padding:16px 18px 22px}.planning-double-tree-legend{display:flex;flex-wrap:wrap;gap:18px;margin:0 0 10px;color:#8791a2;font-size:10px;font-weight:700}.planning-double-tree-legend span{display:inline-flex;align-items:center;gap:7px}.planning-double-tree-legend i{display:block;width:22px;height:2px;border-radius:2px;background:#2f4c77}.planning-double-tree-viewport{width:100%;max-width:100%;min-width:0;overflow-x:auto!important;overflow-y:hidden!important;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:#080d15}.planning-double-tree-canvas{position:relative;display:block;max-width:none;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.008),rgba(255,255,255,.002))}.planning-double-tree-band{position:absolute;left:12px;right:12px;border:1px solid rgba(255,255,255,.045);border-radius:10px;background:rgba(13,20,31,.48);pointer-events:none}.planning-double-tree-band.is-upper{border-top-color:rgba(61,155,255,.28)}.planning-double-tree-band>strong,.planning-double-tree-band>small{position:absolute;left:14px;z-index:2}.planning-double-tree-band>strong{top:10px;color:#fff;font-size:11px;letter-spacing:.08em}.planning-double-tree-band>small{top:27px;color:#7f8998!important;font-size:9px!important}.planning-double-tree-lines{position:absolute;inset:0;z-index:1;overflow:visible;pointer-events:none}.planning-double-tree-lines path{fill:none;stroke:#31476a;stroke-width:1.5;vector-effect:non-scaling-stroke}.planning-double-tree-node{position:absolute;z-index:3;width:224px}.planning-double-tree-node>small{display:block;color:#758095!important;font-size:10px!important;font-weight:800;letter-spacing:.04em}.planning-double-tree-node>.planning-double-match-number{position:absolute;right:calc(100% + 5px);top:50%;z-index:4;width:18px;margin:0;padding:1px 0;transform:translateY(-50%);background:#080d15;color:#6f7783!important;font-size:10px!important;font-weight:400!important;letter-spacing:0!important;text-align:center;line-height:12px;white-space:nowrap;pointer-events:none}.planning-double-tree-node.is-final>.planning-double-match-number{position:static;width:auto;margin:0 0 5px;padding-left:3px;transform:none;text-align:left}.planning-double-tree-node.is-final>small{color:#e7b5b8!important}.planning-double-tree-champion{position:absolute;z-index:4;width:145px;padding:12px;border:1px solid rgba(214,40,40,.55);border-radius:10px;background:linear-gradient(135deg,#19070a,#29090c);text-align:center;box-shadow:0 0 22px rgba(214,40,40,.16)}.planning-double-tree-champion small,.planning-double-tree-champion strong{display:block}.planning-double-tree-champion small{color:#d62828!important;font-size:8px!important;font-weight:900;letter-spacing:.16em}.planning-double-tree-champion strong{margin-top:5px;color:#fff;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:700px){.planning-double-tree-shell{padding:10px 0 16px}.planning-double-tree-legend{padding:0 10px}.planning-double-tree-viewport{border-left:0;border-right:0;border-radius:0;touch-action:pan-x!important}.planning-double-tree-node{width:224px}.planning-double-tree-band>strong{font-size:10px}.planning-double-tree-band>small{font-size:8px!important}}

/* v2.0.88 — Double Elimination: arbre complet dès l'ouverture */
.planning-double-tree-legend i.is-placeholder{background:transparent;border-top:2px dashed #485264;height:0}.planning-double-tree-lines path.is-optional{stroke-dasharray:7 6;opacity:.7}.planning-double-tree-node.is-placeholder>small{opacity:.72}.planning-double-placeholder-card{width:224px;min-height:64px;box-sizing:border-box;border:1px dashed rgba(255,255,255,.14);border-radius:8px;background:rgba(11,16,25,.72);overflow:hidden;opacity:.78}.planning-double-placeholder-card>div{display:grid;grid-template-columns:24px minmax(0,1fr) 20px;align-items:center;gap:7px;min-height:31px;padding:0 8px;border-bottom:1px solid rgba(255,255,255,.055)}.planning-double-placeholder-card>div:last-child{border-bottom:0}.planning-double-placeholder-card strong{overflow:hidden;color:#8d97a7;font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.planning-double-placeholder-card b{color:#596273;font-size:12px;text-align:right}.planning-double-placeholder-dot{display:grid;width:18px;height:18px;place-items:center;border:1px solid rgba(255,255,255,.12);border-radius:4px;color:#6f7a8c;font-size:10px;font-weight:800}

/* v2.0.92 — Public Multi-stage planning */
.mhtm-plan-stage-timeline{margin:16px 0;padding:15px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:linear-gradient(180deg,rgba(17,23,34,.92),rgba(9,12,19,.92));overflow:hidden}.mhtm-plan-stage-timeline-heading{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:13px}.mhtm-plan-stage-timeline-heading small{color:#d62828;font-size:9px;font-weight:900;letter-spacing:.11em}.mhtm-plan-stage-timeline-heading strong{font-size:12px;color:#fff}.mhtm-plan-stage-timeline-heading span{margin-left:auto;color:#7e8795;font-size:10px}.mhtm-plan-stage-timeline-track{display:flex;align-items:stretch;gap:8px;overflow-x:auto;padding-bottom:5px;scrollbar-width:thin}.mhtm-plan-stage-timeline-step-wrap{display:flex;align-items:center;gap:8px;flex:0 0 auto}.mhtm-plan-stage-timeline-step{position:relative;display:grid;grid-template-columns:30px minmax(125px,1fr) auto;align-items:center;gap:9px;width:230px;min-height:70px;padding:10px 11px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:#0e141e;color:#fff;text-align:left;cursor:pointer}.mhtm-plan-stage-timeline-step:hover,.mhtm-plan-stage-timeline-step.is-selected{border-color:rgba(214,40,40,.7);background:#121923}.mhtm-plan-stage-index{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#1b2331;color:#aeb4be;font-size:11px;font-weight:900}.mhtm-plan-stage-timeline-step>span:nth-child(2){min-width:0}.mhtm-plan-stage-timeline-step small,.mhtm-plan-stage-timeline-step strong,.mhtm-plan-stage-timeline-step em{display:block}.mhtm-plan-stage-timeline-step small{font-size:8px;color:#7e8795;letter-spacing:.08em}.mhtm-plan-stage-timeline-step strong{margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.mhtm-plan-stage-timeline-step em{margin-top:3px;color:#aeb4be;font-size:9px;font-style:normal}.mhtm-plan-stage-timeline-step>b{align-self:start;padding:4px 6px;border-radius:999px;background:rgba(255,255,255,.055);color:#aeb4be;font-size:8px;white-space:nowrap}.mhtm-plan-stage-timeline-step>i{position:absolute;left:48px;bottom:5px;color:#d62828;font-size:8px;font-style:normal;font-weight:900}.mhtm-plan-stage-timeline-step.is-active .mhtm-plan-stage-index{background:rgba(214,40,40,.18);color:#ff5961}.mhtm-plan-stage-timeline-step.is-finished .mhtm-plan-stage-index{background:rgba(38,208,124,.13);color:#26d07c}.mhtm-plan-stage-connector{display:grid;place-items:center;color:#5f6875}.mhtm-plan-current-stage{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0;border:1px solid rgba(214,40,40,.24);background:rgba(214,40,40,.055)}.mhtm-plan-current-stage>div{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.mhtm-plan-current-stage small{color:#d62828;font-size:8px;font-weight:900;letter-spacing:.1em}.mhtm-plan-current-stage span{color:#aeb4be}.mhtm-plan-current-stage>b{margin-left:auto;padding:4px 7px;border-radius:999px;background:rgba(255,255,255,.055)}.mhtm-plan-current-stage>em{width:100%;color:#8f98a6;font-size:9px;font-style:normal}.mhtm-plan-current-stage.is-active>b{background:rgba(214,40,40,.14);color:#ff5961}.mhtm-plan-current-stage.is-finished>b{background:rgba(38,208,124,.12);color:#26d07c}
@media(max-width:700px){.mhtm-plan-stage-timeline{padding:12px}.mhtm-plan-stage-timeline-heading span{width:100%;margin-left:0}.mhtm-plan-stage-timeline-step{width:210px}.mhtm-plan-current-stage>b{margin-left:0}}


/* v2.0.95 — inscription tournoi rapide /jeux + dashboard */
.new-game-quick-register{display:contents}
.new-game-card-actions>form button{width:100%;height:100%;border:0;cursor:pointer}
.new-game-card-actions>button:disabled,.new-game-card-actions>form button:disabled{opacity:.55;cursor:not-allowed}
.new-game-card-actions .is-registered{background:rgba(47,184,112,.13)!important;border-color:rgba(47,184,112,.4)!important;color:#79e4ac!important}
.tournament-signup-modal{place-items:center}
.tournament-signup-backdrop{cursor:default}
.tournament-signup-card>header small{font:800 10px/1.2 Inter,Arial,sans-serif}
.tournament-signup-card>header h2{color:#fff;font:800 21px/1.15 Inter,Arial,sans-serif}
.tournament-signup-card>header p{font:500 11px/1.45 Inter,Arial,sans-serif}
.tournament-signup-close{line-height:1}
.tournament-signup-card form>label{font:700 11px/1.2 Inter,Arial,sans-serif}
.tournament-signup-card :is(input,select){font:600 13px/1 Inter,Arial,sans-serif}
.tournament-signup-card label small{font:500 10px/1.4 Inter,Arial,sans-serif}
.tournament-signup-google-age{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(66,133,244,.22);background:rgba(66,133,244,.06)}
.tournament-signup-google-age span{color:#8e98a6;font-size:11px}.tournament-signup-google-age strong{color:#dce7ff;font-size:11px}
.gamer-active-game-list{display:grid;gap:8px;margin-top:12px}
.gamer-active-game{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:rgba(5,9,15,.62)}
.gamer-active-game>img{width:46px;height:40px;object-fit:cover;border-radius:6px;background:#080b12}
.gamer-active-game>div{min-width:0;display:grid;gap:3px}.gamer-active-game>div strong{overflow:hidden;color:#fff;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.gamer-active-game>div small{color:#7f8998;font-size:9px}
.gamer-active-game>a,.gamer-active-game-disabled{min-height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0 9px;border:1px solid rgba(255,255,255,.12);border-radius:6px;color:#d9dde4;font:800 8px/1 Inter,Arial,sans-serif;letter-spacing:.35px;white-space:nowrap}
.gamer-active-game>a.is-primary{border-color:#d62828;background:#d62828;color:#fff}.gamer-active-game.is-registered{border-color:rgba(47,184,112,.28)}.gamer-active-game-disabled{opacity:.5}
@media(max-width:640px){.tournament-signup-card footer{grid-template-columns:1fr}.tournament-signup-card footer .red-btn{order:-1}.gamer-active-game{grid-template-columns:42px minmax(0,1fr) auto}.gamer-active-game>img{width:42px;height:38px}}

/* v2.0.96 — inscription tournoi rapide réellement branchée sur /jeux + dashboard */
.games-v3-card-action{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px}
.games-v3-card-secondary{width:100%;height:30px;border:1px solid var(--games-border);border-radius:6px;background:rgba(255,255,255,.035);color:var(--games-text-sec);display:flex;align-items:center;justify-content:center;font:700 10px/1 Inter,Arial,sans-serif;white-space:nowrap}
.games-v3-card-secondary.is-disabled{cursor:default;pointer-events:none}
.games-v3-card-action>.is-disabled{width:100%;height:30px;border:1px solid var(--games-border);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--games-text-muted);font:700 10px/1 Inter,Arial,sans-serif;opacity:.55}
.games-v3-quick-signup-form{margin:0;padding:0;border:0;background:transparent}
.games-v3-card-action .games-v3-quick-signup-form{display:contents}
.games-v3-card-action .games-v3-quick-signup-form>button{width:100%;height:30px;border:0;border-radius:6px;background:linear-gradient(135deg,#ff2535,#d91023);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 10px rgba(240,32,43,.22);font:700 12px/1 Inter,Arial,sans-serif;cursor:pointer}
.games-v3-detail-actions .games-v3-quick-signup-form{display:contents}
.games-v3-detail-actions .games-v3-quick-signup-form>button{width:auto;min-height:32px;padding:8px 16px;border:1px solid transparent;border-radius:7px;background:linear-gradient(135deg,#ff2535,#d91023);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:6px;box-shadow:0 0 12px rgba(240,32,43,.28);font:700 12px/1 Inter,Arial,sans-serif;cursor:pointer}
.games-v3-detail-actions .games-v3-quick-signup-form>button svg{width:13px;height:13px}
.games-v3-tournament-body .games-v3-quick-signup-form{display:block;width:100%}
.games-v3-tournament-body .games-v3-quick-signup-form>button{width:100%;height:28px;border:1px solid transparent;border-radius:5px;background:linear-gradient(135deg,#ff2535,#d91023);color:#fff;display:flex;align-items:center;justify-content:center;font:700 11px/1 Inter,Arial,sans-serif;cursor:pointer}
.gamer-active-game-register-form{margin:0;padding:0}
.gamer-active-game-register-form>button{min-height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0 9px;border:1px solid #d62828;border-radius:6px;background:#d62828;color:#fff;font:800 8px/1 Inter,Arial,sans-serif;letter-spacing:.35px;white-space:nowrap;cursor:pointer}
@media(max-width:640px){.games-v3-card-action{grid-template-columns:1fr}.games-v3-card-secondary{height:32px}.games-v3-card-action .games-v3-quick-signup-form>button{height:32px}.games-v3-detail-actions .games-v3-quick-signup-form{display:block;flex:1 1 auto}.games-v3-detail-actions .games-v3-quick-signup-form>button{width:100%}}
.games-v3-detail-actions>button.is-primary{padding-inline:16px;border-color:transparent;background:linear-gradient(135deg,#ff2535,#d91023);color:#fff;box-shadow:0 0 12px rgba(240,32,43,.28);font-weight:700}
.games-v3-tournament-body>button.is-primary{width:100%;height:28px;border:1px solid transparent;border-radius:5px;background:linear-gradient(135deg,#ff2535,#d91023);color:#fff;display:flex;align-items:center;justify-content:center;font:700 11px/1 Inter,Arial,sans-serif;cursor:pointer}
.games-v3-tournament-body>button.is-primary:disabled{opacity:.55;cursor:not-allowed}


/* v2.0.104 — UI polish for /jeux and /planning:
   - make notifications behave like real toasts
   - keep popups visually modal
   - compact search/select/button controls even when global typography is enlarged */
.toast-root{z-index:130000}
.site-toast{width:min(360px,calc(100vw - 28px));min-height:56px;padding:13px 16px 13px 13px;border-radius:12px;background:linear-gradient(180deg,rgba(13,18,28,.97),rgba(8,11,18,.97));box-shadow:0 22px 54px rgba(0,0,0,.48),0 0 0 1px rgba(255,255,255,.04) inset}
.site-toast-center{width:min(500px,calc(100vw - 36px));min-height:124px;padding:20px 52px 20px 18px;border-radius:18px}
.site-toast-title{font-size:14px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.site-toast p{font-size:13px;line-height:1.42;color:#eef2f6}
.site-toast-center p{font-size:16px;line-height:1.55}
.site-toast-close{width:32px;height:32px;border-radius:999px}
.site-toast-success{border-color:rgba(33,197,93,.32)}
.site-toast-error{border-color:rgba(227,30,38,.42)}

@media (min-width: 981px) {
  body .games-v3-page .games-v3-filter-list button {
    height: 32px !important;
    padding: 0 12px !important;
    border-radius: 7px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
  }
  body .games-v3-page .games-v3-toolbar {
    min-height: 34px !important;
    gap: 10px !important;
  }
  body .games-v3-page .games-v3-toolbar .games-v3-search,
  body .games-v3-page .games-v3-toolbar .games-v3-sort {
    height: 34px !important;
    border-radius: 7px !important;
  }
  body .games-v3-page .games-v3-toolbar .games-v3-search input,
  body .games-v3-page .games-v3-toolbar .games-v3-sort select {
    height: 32px !important;
    font-size: 11px !important;
    line-height: 1 !important;
  }
  body .games-v3-page .games-v3-card-cta,
  body .games-v3-page .games-v3-card-secondary,
  body .games-v3-page .games-v3-card-action .games-v3-quick-signup-form>button,
  body .games-v3-page .games-v3-detail-actions > a,
  body .games-v3-page .games-v3-detail-actions > button,
  body .games-v3-page .games-v3-detail-actions > span,
  body .games-v3-page .games-v3-detail-actions .games-v3-quick-signup-form>button {
    min-height: 31px !important;
    height: 31px !important;
    padding: 0 12px !important;
    border-radius: 7px !important;
    font-size: 11px !important;
  }

  body .tournament-signup-card :is(input,select),
  body .match-result-modal :is(input,select),
  body .mhtm-plan-filter-fields select {
    font-family: Inter, Arial, sans-serif !important;
    font-size: 12px !important;
    line-height: 1 !important;
  }
}
.tournament-signup-card>header{position:sticky;top:0;z-index:3;backdrop-filter:blur(12px)}
.tournament-signup-close{flex:0 0 32px}
.tournament-signup-card form>label{font-size:10px}
.tournament-signup-card :is(input,select){font-size:12px;font-weight:600}
.tournament-signup-google-age{padding:10px 11px;border-radius:8px}
.tournament-signup-google-age span,.tournament-signup-google-age strong{font-size:10px}
.tournament-signup-card footer{grid-template-columns:110px 1fr}
.tournament-signup-card footer button{min-height:38px;letter-spacing:.02em}

.mhtm-plan-filter-fields{padding:14px;gap:12px}
.mhtm-plan-filter-fields label > b{font-size:10px}
.mhtm-plan-filter-fields label > span{height:34px;padding:0 9px;border-radius:6px}
.mhtm-plan-filter-fields select{font-size:11px}
.mhtm-plan-apply{height:36px;margin-top:2px;font-size:11px}
.mhtm-plan-reset{height:34px;font-size:11px}
.mhtm-plan-public-tournament-top{padding:13px;border-radius:10px;gap:12px}
.mhtm-plan-public-tournament-top>button{height:32px;padding:0 10px;border-radius:6px;font-size:10px}
.mhtm-plan-current-stage{padding:10px 12px;border-radius:10px}
.mhtm-plan-current-stage strong{font-size:11px}
.mhtm-plan-current-stage span{font-size:9px}
.mhtm-plan-current-stage>b{font-size:8px}

.match-result-modal{z-index:140500;padding:22px;background:rgba(2,5,9,.82)}
.match-result-modal-card{width:min(520px,100%);max-height:calc(100dvh - 44px);border-radius:15px;box-shadow:0 30px 95px rgba(0,0,0,.68),0 0 0 1px rgba(214,40,40,.06)}
.match-result-modal-head{padding:16px 16px 13px}
.match-result-modal-head h2{font-size:18px}
.match-result-modal-close{width:34px;height:34px;flex-basis:34px}
.match-result-modal-form{gap:14px;padding:16px}
.match-result-modal-form label{gap:6px;font-size:10px}
.match-result-modal :is(input,select){height:40px;padding:0 11px;border-radius:8px;font-size:12px!important}
.match-result-modal-versus input{font-size:18px!important}
.match-result-modal-form footer button{min-height:38px;font-size:10px}

@media(max-width:640px){
  .tournament-signup-card :is(input,select){height:39px;font-size:12px}
  .tournament-signup-card footer button{min-height:37px;height:37px}
  .match-result-modal{padding:max(14px,env(safe-area-inset-top)) 12px max(14px,env(safe-area-inset-bottom))}
  .match-result-modal-card{max-height:min(88dvh,680px);border-radius:14px}
  .match-result-modal-head{padding:14px 14px 12px}
  .match-result-modal-form{padding:14px}
  .match-result-modal :is(input,select){height:39px;font-size:12px!important}
  .match-result-modal-form footer button{min-height:37px}
}


/* v2.0.106 — floating signup modal aligned with delete-game popup style */
@keyframes mhtmFloatingModalIn{
  from{opacity:0;transform:translate3d(0,10px,0) scale(.985)}
  to{opacity:1;transform:translate3d(0,0,0) scale(1)}
}

.tournament-signup-modal{
  position:fixed;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  z-index:140000;
  isolation:isolate;
}
.tournament-signup-backdrop{
  position:absolute;
  inset:0;
  border:0;
  padding:0;
  background:rgba(2,5,9,.78);
  -webkit-backdrop-filter:blur(7px);
  backdrop-filter:blur(7px);
}
.tournament-signup-card{
  position:relative;
  z-index:1;
  width:min(430px,calc(100vw - 32px));
  max-height:min(82dvh,640px);
  overflow:auto;
  border-radius:14px;
  border:1px solid rgba(214,40,40,.16);
  background:linear-gradient(180deg,#111722 0%,#0b1018 100%);
  box-shadow:0 28px 90px rgba(0,0,0,.68),0 0 0 1px rgba(255,255,255,.035) inset;
  animation:mhtmFloatingModalIn .18s ease-out;
}
.tournament-signup-card>header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  min-height:74px;
  padding:18px 22px 14px;
  border-bottom:1px solid rgba(255,255,255,.06);
  background:linear-gradient(180deg,rgba(17,23,34,.98),rgba(17,23,34,.94));
}
.tournament-signup-card>header small{
  display:block;
  margin-bottom:6px;
  color:#d62828;
  font-size:10px;
  font-weight:800;
  letter-spacing:.14em;
}
.tournament-signup-card>header h2{
  margin:0;
  font-size:19px;
  line-height:1.15;
}
.tournament-signup-card>header p{
  margin:6px 0 0;
  color:#aeb4be;
  font-size:11px;
  line-height:1.45;
}
.tournament-signup-close{
  width:34px;
  height:34px;
  min-width:34px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:9px;
  background:rgba(255,255,255,.02);
  color:#fff;
  font-size:18px;
  cursor:pointer;
}
.tournament-signup-close:hover{border-color:rgba(214,40,40,.34);background:rgba(214,40,40,.10)}
.tournament-signup-card form{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:18px 22px 20px;
}
.tournament-signup-card form>label{
  display:flex;
  flex-direction:column;
  gap:6px;
  color:#e7e9ed;
}
.tournament-signup-card form>label>span{
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#cdd3db;
}
.tournament-signup-card :is(input,select){
  width:100%;
  height:36px;
  min-height:36px;
  padding:0 11px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.08);
  background:#0f1621;
  color:#fff;
  outline:none;
  box-sizing:border-box;
}
.tournament-signup-card :is(input,select):focus{
  border-color:rgba(214,40,40,.5);
  box-shadow:0 0 0 3px rgba(214,40,40,.12);
}
.tournament-signup-card label small{
  color:#9aa3af;
  font-size:10px;
  line-height:1.45;
}
.tournament-signup-card footer{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin-top:4px;
  padding-top:6px;
}
.tournament-signup-card footer button{
  min-width:134px;
  height:36px;
  border-radius:8px;
}
@media(max-width:640px){
  .tournament-signup-modal{padding:16px 12px}
  .tournament-signup-card{width:min(430px,calc(100vw - 24px));max-height:min(86dvh,680px);border-radius:14px}
  .tournament-signup-card>header{padding:16px 16px 12px;min-height:unset}
  .tournament-signup-card form{padding:16px}
  .tournament-signup-card footer{flex-direction:column-reverse}
  .tournament-signup-card footer button{width:100%}
}


/* v2.0.109 — /jeux page layout fix based on deployed screenshot
   The catalogue must not create a fake full-height black section and floating
   UI must never participate in the normal page flow. */
.games-v3-page{
  min-height:100svh;
  overflow-x:hidden;
  overflow-y:visible;
}
.games-v3-page>.games-v3-hero,
.games-v3-page>.games-v3-catalog{
  flex:0 0 auto;
}
.games-v3-page>.games-v3-catalog{
  padding-bottom:28px;
}
.games-v3-page>.site-modern-footer{
  margin-top:0;
  flex:0 0 auto;
}

/* Safety net for SSR/old cached bundles: even if the signup modal is rendered
   as a direct child of /jeux, it stays outside the page layout. */
.games-v3-page>.tournament-signup-modal{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  min-height:0!important;
  margin:0!important;
  padding:24px!important;
  z-index:2147483000!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.games-v3-page>.tournament-signup-modal>.tournament-signup-backdrop{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
}
.games-v3-page>.tournament-signup-modal>.tournament-signup-card{
  position:relative!important;
  inset:auto!important;
  top:auto!important;
  left:auto!important;
  transform:none!important;
  margin:0!important;
}

@media(max-width:620px){
  .games-v3-page>.games-v3-catalog{padding-bottom:22px}
  .games-v3-page>.tournament-signup-modal{padding:12px!important}
}


/* v2.0.112 — qualification FFA manuelle par lobby/course/groupe */
.planning-ffa-manual-qualifier-note{margin:0 0 10px;padding:9px 11px;border:1px solid rgba(214,40,40,.2);border-radius:8px;background:rgba(214,40,40,.055);color:#c9ced6;font-size:13px;line-height:1.45}
.planning-ffa-result-grid.has-qualifier-column{grid-template-columns:minmax(130px,1fr) 68px 68px 92px}
.planning-ffa-qualifier-check{min-height:34px;display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:#0d141e;color:#dfe4eb;font-size:13px;font-weight:700;cursor:pointer}
.planning-ffa-qualifier-check input{width:16px!important;height:16px!important;min-height:16px!important;margin:0;accent-color:#d62828}
.planning-ffa-qualifier-check:has(input:checked){border-color:rgba(38,208,124,.48);background:rgba(38,208,124,.08);color:#79e4ac}
@media(max-width:700px){.planning-ffa-result-grid.has-qualifier-column{grid-template-columns:minmax(110px,1fr) 58px 58px 78px}.planning-ffa-qualifier-check span{font-size:13px}}

/* v2.0.113 — FFA qualifier checkbox always visible next to player */
.planning-ffa-result-grid.has-player-checkbox{grid-template-columns:minmax(180px,1fr) 72px 72px}
.planning-ffa-player-select{position:relative;min-width:0;min-height:36px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:9px;padding:6px 8px;border:1px solid rgba(255,255,255,.09);border-radius:7px;background:#0d141e;color:#e7e9ed;cursor:pointer;user-select:none}
.planning-ffa-player-select:hover{border-color:rgba(214,40,40,.4);background:#111925}
.planning-ffa-player-select>input[type=checkbox]{position:absolute!important;width:1px!important;height:1px!important;min-height:1px!important;opacity:0!important;pointer-events:none!important;margin:0!important;padding:0!important}
.planning-ffa-player-checkbox{width:18px;height:18px;display:grid;place-items:center;border:2px solid #737d8d;border-radius:4px;background:#080b12;box-sizing:border-box;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}
.planning-ffa-player-checkbox::after{content:"✓";opacity:0;color:#fff;font-size:13px;font-weight:900;line-height:1;transform:scale(.7);transition:opacity .12s ease,transform .12s ease}
.planning-ffa-player-select>input[type=checkbox]:checked+.planning-ffa-player-checkbox{border-color:#d62828;background:#d62828;box-shadow:0 0 0 3px rgba(214,40,40,.14)}
.planning-ffa-player-select>input[type=checkbox]:checked+.planning-ffa-player-checkbox::after{opacity:1;transform:scale(1)}
.planning-ffa-player-select>input[type=checkbox]:focus-visible+.planning-ffa-player-checkbox{outline:2px solid #fff;outline-offset:2px}
.planning-ffa-player-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700}
.planning-ffa-player-select:has(input:checked){border-color:rgba(38,208,124,.38);background:rgba(38,208,124,.07)}
@media(max-width:700px){.planning-ffa-result-grid.has-player-checkbox{grid-template-columns:minmax(150px,1fr) 58px 58px}.planning-ffa-player-select{grid-template-columns:18px minmax(0,1fr);gap:7px;padding:5px 6px}.planning-ffa-player-checkbox{width:17px;height:17px}}

/* v2.0.114 — force native FFA qualifier checkbox visibility even with legacy page rules */
.planning-ffa-unified-lobby .planning-ffa-qualified-native>.planning-ffa-qualified-checkbox{
  -webkit-appearance:checkbox!important;appearance:auto!important;position:static!important;display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;max-width:20px!important;max-height:20px!important;margin:0!important;padding:0!important;accent-color:#d62828!important
}


/* v2.0.140 — Double Elimination filled match = placeholder CSS.
   Only visual difference: the dashed outer frame becomes continuous.
   The former placeholder dot now contains the score; the adjacent strong contains the name. */
.planning-double-placeholder-card.is-filled{
  border-style:solid;
  margin:0;
  padding:0;
  font:inherit;
  color:inherit;
  text-align:left;
  appearance:none;
  -webkit-appearance:none;
}
button.planning-double-placeholder-card.is-filled{display:block;cursor:pointer}
button.planning-double-placeholder-card.is-filled:focus-visible{outline:2px solid rgba(61,155,255,.72);outline-offset:2px}


/* v2.0.142 — Double Elimination: labels allégés + scrollbar invisible. */
.planning-double-source-loser{opacity:.5}
.planning-bracket-pan-viewport,
.planning-double-tree-viewport{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  scrollbar-color:transparent transparent!important;
}
.planning-bracket-pan-viewport::-webkit-scrollbar,
.planning-double-tree-viewport::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  background:transparent!important;
}
.planning-bracket-pan-viewport::-webkit-scrollbar-track,
.planning-bracket-pan-viewport::-webkit-scrollbar-thumb,
.planning-double-tree-viewport::-webkit-scrollbar-track,
.planning-double-tree-viewport::-webkit-scrollbar-thumb{
  background:transparent!important;
  border-color:transparent!important;
}

/* v2.0.144 — FFA BYE automatique */
.planning-ffa-real-lobby.is-bye{border-style:dashed}
.planning-ffa-bye-card{min-height:72px;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"badge player" "badge note";align-items:center;column-gap:12px;padding:14px 16px;background:rgba(255,255,255,.018)}
.planning-ffa-bye-card>span{grid-area:badge;min-width:46px;padding:6px 8px;border:1px solid rgba(214,40,40,.45);border-radius:6px;background:rgba(214,40,40,.08);color:#fff;font-size:13px;font-weight:800;text-align:center}
.planning-ffa-bye-card>strong{grid-area:player;color:#fff;font-size:14px;font-weight:700}
.planning-ffa-bye-card>small{grid-area:note;color:#7e8795!important;font-size:13px!important}



/* ==========================================================================
   v2.0.147 — Accueil tournoi : bloc Figma "Prochain tournoi" + statistiques
   Les valeurs viennent uniquement des données déjà gérées par GAME.MHTM.MG :
   date/lieu/prize de Info Accueil, inscriptions validées, matchs live et jeux actifs.
   ========================================================================== */
.modern-home-hero.is-tournament-mode{min-height:620px}
.modern-home-hero.is-tournament-mode .modern-home-hero-content{min-height:620px;align-items:stretch}
.modern-home-hero-stack{position:relative;z-index:3;width:100%;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:40px 0 34px}
.modern-home-hero.is-tournament-mode .modern-home-hero-copy{width:min(57%,760px);padding:0}

.modern-home-tournament-countdown-card{
  width:min(560px,100%);
  min-height:90px;
  margin-top:24px;
  display:grid;
  grid-template-columns:minmax(210px,1fr) minmax(280px,1.05fr);
  align-items:stretch;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  border-radius:9px;
  background:rgba(13,19,28,.94);
  box-shadow:0 10px 34px rgba(0,0,0,.18);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}
.modern-home-tournament-countdown-info{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  padding:14px 18px;
  border-right:1px solid rgba(255,255,255,.055);
}
.modern-home-tournament-countdown-info small{
  color:#7e8795;
  font-size:13px;
  font-weight:700;
  line-height:1;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.modern-home-tournament-countdown-info>strong{
  min-width:0;
  overflow:hidden;
  color:#fff;
  font-size:16px;
  font-weight:800;
  line-height:1.15;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.modern-home-tournament-countdown-info>span{
  min-width:0;
  overflow:hidden;
  color:#aeb4be;
  font-size:13px;
  font-weight:500;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.modern-home-tournament-countdown-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;padding:11px 4px}
.modern-home-tournament-countdown-unit{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:0 8px}
.modern-home-tournament-countdown-unit:not(.is-last)::after{content:"";position:absolute;right:0;top:50%;width:1px;height:44px;background:rgba(255,255,255,.055);transform:translateY(-50%)}
.modern-home-tournament-countdown-unit>strong{display:flex;align-items:center;justify-content:center;color:#f0202b;font-size:30px;font-weight:400;line-height:1;font-variant-numeric:tabular-nums}
.modern-home-digital-value{height:30px;display:inline-flex;align-items:center;justify-content:center;gap:2px;color:inherit}
.modern-home-digital-glyph{display:block;width:19px;height:28px;overflow:visible;fill:currentColor;flex:0 0 19px}
.modern-home-tournament-countdown-unit>span{width:100%;color:#7e8795;font-size:10px;font-weight:700;line-height:1;letter-spacing:.045em;text-align:center;white-space:nowrap}

.modern-home-tournament-stats-card{
  width:min(900px,76%);
  min-height:92px;
  margin-top:56px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:center;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  border-radius:9px;
  background:rgba(13,19,28,.96);
  box-shadow:0 10px 34px rgba(0,0,0,.18);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}
.modern-home-tournament-stat{position:relative;min-width:0;display:flex;align-items:center;justify-content:center;gap:14px;padding:17px 22px}
.modern-home-tournament-stat:not(:last-child)::after{content:"";position:absolute;right:0;top:50%;width:1px;height:48px;background:rgba(255,255,255,.055);transform:translateY(-50%)}
.modern-home-tournament-stat>svg{width:32px;height:32px;flex:0 0 32px;fill:#f0202b;stroke:#f0202b;color:#f0202b}
.modern-home-tournament-stat>span{min-width:0;display:flex;flex-direction:column;gap:4px}
.modern-home-tournament-stat strong{min-width:0;overflow:hidden;color:#fff;font-size:18px;font-weight:800;line-height:1.05;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}
.modern-home-tournament-stat small{color:#aeb4be;font-size:13px;font-weight:500;line-height:1.15;white-space:nowrap}

@media(max-width:1120px){
  .modern-home-hero.is-tournament-mode .modern-home-hero-copy{width:min(68%,720px)}
  .modern-home-tournament-stats-card{width:min(900px,88%)}
  .modern-home-tournament-stat{padding-inline:14px;gap:10px}
}
@media(max-width:900px){
  .modern-home-hero.is-tournament-mode{min-height:690px}
  .modern-home-hero.is-tournament-mode .modern-home-hero-content{min-height:690px}
  .modern-home-hero.is-tournament-mode .modern-home-hero-copy{width:min(86%,720px)}
  .modern-home-tournament-stats-card{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:42px}
}
@media(max-width:640px){
  .modern-home-hero.is-tournament-mode{min-height:0}
  .modern-home-hero.is-tournament-mode .modern-home-hero-content{min-height:0;align-items:stretch}
  .modern-home-hero.is-tournament-mode .modern-home-hero-stack{justify-content:flex-start;margin-top:0!important;padding:0 0 28px}
  .modern-home-hero.is-tournament-mode .modern-home-hero-copy{width:100%;padding:0;margin-top:0}
  .modern-home-tournament-countdown-card{grid-template-columns:1fr;min-height:0;margin-top:20px}
  .modern-home-tournament-countdown-info{border-right:0;border-bottom:1px solid rgba(255,255,255,.055);padding:13px 14px}
  .modern-home-tournament-countdown-values{min-height:76px;padding:10px 2px}
  .modern-home-tournament-countdown-unit{gap:5px;padding-inline:3px}
  .modern-home-tournament-countdown-unit>strong{font-size:27px}
  .modern-home-digital-value{height:27px}
  .modern-home-digital-glyph{width:17px;height:25px;flex-basis:17px}
  .modern-home-tournament-countdown-unit>span{font-size:9px;letter-spacing:.02em}
  .modern-home-tournament-countdown-unit:not(.is-last)::after{height:38px}
  .modern-home-tournament-stats-card{grid-template-columns:1fr;margin-top:24px;min-height:0}
  .modern-home-tournament-stat{justify-content:flex-start;min-height:76px;padding:13px 12px;gap:9px}
  .modern-home-tournament-stat:not(:last-child)::after{display:none}
  .modern-home-tournament-stat:not(:last-child){border-bottom:1px solid rgba(255,255,255,.055)}
  .modern-home-tournament-stat>svg{width:28px;height:28px;flex-basis:28px}
  .modern-home-tournament-stat strong{font-size:16px}
  .modern-home-tournament-stat small{font-size:12px;white-space:normal}
}
@media(max-width:390px){
  .modern-home-hero.is-tournament-mode{min-height:0}
  .modern-home-hero.is-tournament-mode .modern-home-hero-content{min-height:0}
  .modern-home-tournament-stats-card{grid-template-columns:1fr}
}

/* v2.0.154 — paiement des frais d'inscription au tournoi */
.tournament-payment-card{
  display:grid;
  gap:12px;
  padding:14px;
  border:1px solid rgba(214,40,40,.24);
  border-radius:10px;
  background:rgba(7,11,17,.62);
}
.tournament-payment-summary{display:flex;align-items:center;justify-content:space-between;gap:14px}
.tournament-payment-summary>span{color:#b8c0cc;font-size:13px;font-weight:700;letter-spacing:.06em}
.tournament-payment-summary>strong{color:#fff;font-size:20px;white-space:nowrap}
.tournament-payment-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.tournament-payment-methods>label{
  position:relative;
  min-width:0;
  min-height:78px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:9px 6px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:9px;
  background:#0e151f;
  color:#e9edf2;
  cursor:pointer;
  text-align:center;
}
.tournament-payment-methods>label:hover{border-color:rgba(214,40,40,.42)}
.tournament-payment-methods>label.is-selected{border-color:#d62828;background:rgba(214,40,40,.11);box-shadow:0 0 0 2px rgba(214,40,40,.09)}
.tournament-payment-methods>label.is-disabled{opacity:.42;cursor:not-allowed}
.tournament-payment-methods input{position:absolute!important;width:1px!important;height:1px!important;min-height:1px!important;opacity:0!important;pointer-events:none!important}
.tournament-payment-methods label>span{height:24px;display:grid;place-items:center;color:#f3ba2f;font-size:18px}
.tournament-payment-methods img{width:32px;height:24px;object-fit:contain}
.tournament-payment-methods label>strong{max-width:100%;overflow:hidden;font-size:13px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
.tournament-payment-methods label>small{color:#c6cbd2!important;font-size:13px!important;line-height:1!important}
.tournament-payment-card>p{margin:0;color:#9fa8b5;font-size:13px;line-height:1.45}
.tournament-signup-error{margin:0;padding:10px 11px;border:1px solid rgba(239,68,68,.36);border-radius:8px;background:rgba(239,68,68,.09);color:#ffb2b2;font-size:13px;line-height:1.4}
.tournament-signup-card footer button{font-size:13px!important}
@media(max-width:520px){
  .tournament-payment-methods{grid-template-columns:1fr}
  .tournament-payment-methods>label{min-height:50px;display:grid;grid-template-columns:34px minmax(0,1fr);justify-items:start;text-align:left}
  .tournament-payment-methods label>small{grid-column:2}
}

/* ==========================================================================\n   v2.0.163 — Accueil desktop : carte tournoi en intro 2,5x puis retour à sa place\n   ========================================================================== */
@media(min-width:1024px){
  .modern-home-tournament-countdown-card.is-desktop-intro-target{
    opacity:0;
    pointer-events:none;
  }
  .modern-home-tournament-intro-layer{
    position:fixed;
    inset:0;
    z-index:9996;
    overflow:hidden;
    pointer-events:none;
    background:rgba(4,7,12,.54);
    -webkit-backdrop-filter:blur(2px);
    backdrop-filter:blur(2px);
    opacity:1;
    transition:background .9s cubic-bezier(.2,.78,.2,1),backdrop-filter .9s cubic-bezier(.2,.78,.2,1),opacity .9s cubic-bezier(.2,.78,.2,1);
  }
  .modern-home-tournament-intro-layer.is-flying{
    background:rgba(4,7,12,0);
    -webkit-backdrop-filter:blur(0);
    backdrop-filter:blur(0);
  }
  .modern-home-tournament-intro-card-wrap{
    position:fixed;
    left:var(--mhtm-intro-left);
    top:var(--mhtm-intro-top);
    width:var(--mhtm-intro-width);
    height:var(--mhtm-intro-height);
    transform:translate(var(--mhtm-intro-dx),var(--mhtm-intro-dy)) scale(2.5);
    transform-origin:center center;
    will-change:transform;
    transition:transform .88s cubic-bezier(.18,.82,.22,1);
  }
  .modern-home-tournament-intro-layer.is-flying .modern-home-tournament-intro-card-wrap{
    transform:translate(0,0) scale(1);
  }
  .modern-home-tournament-countdown-card.is-desktop-intro-card{
    width:100%;
    height:100%;
    min-height:0;
    margin-top:0;
    box-shadow:0 18px 56px rgba(0,0,0,.48),0 0 0 1px rgba(214,40,40,.15);
  }
  .modern-home-tournament-intro-seconds{
    position:absolute;
    top:-8px;
    right:-8px;
    width:28px;
    height:28px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(240,32,43,.85);
    border-radius:999px;
    background:#d62828;
    color:#fff;
    box-shadow:0 8px 22px rgba(0,0,0,.34);
    font-size:13px;
    font-weight:900;
    line-height:1;
    font-variant-numeric:tabular-nums;
    transition:opacity .24s ease;
  }
  .modern-home-tournament-intro-layer.is-flying .modern-home-tournament-intro-seconds{
    opacity:0;
  }
}

/* ==============================================================
   USER PANEL — Figma "nuw user all.zip" integration v2.0.167
   ============================================================= */
html:has(.up-shell),body:has(.up-shell),#root:has(.up-shell){min-height:100%;background:#080B12}
body:has(.up-shell){margin:0;overflow:auto;background:#080B12;color:#fff}
.up-shell,.up-shell *{box-sizing:border-box}
.up-shell{display:flex;width:100%;min-height:calc(100svh - 75px);height:auto;overflow:visible;background:#080B12;color:#fff;font-family:Inter,Arial,sans-serif;font-size:13px;line-height:1.4;flex:1 0 auto}
.user-panel-page>.up-shell{width:auto;max-width:none;margin-left:var(--public-content-gutter,clamp(18px,2.1vw,40px));margin-right:var(--public-content-gutter,clamp(18px,2.1vw,40px))}
.up-shell a{text-decoration:none}.up-shell button,.up-shell input,.up-shell textarea,.up-shell select{font:inherit}
.user-panel-page{background:#080B12}.user-panel-page>.page-bg{z-index:-1}.user-panel-page>.modern-home-footer{margin-top:0}

.up-sidebar{width:222px;min-width:222px;height:calc(100vh - 65px);max-height:calc(100vh - 65px);position:sticky;align-self:flex-start;left:auto;top:65px;z-index:80;display:flex;flex-direction:column;gap:12px;padding:12px 10px;border-right:1px solid rgba(255,255,255,.06);background:#080B12;overflow:hidden;scrollbar-width:none}
.up-sidebar::-webkit-scrollbar,.up-main::-webkit-scrollbar{display:none}
.up-sidebar nav{display:flex;flex-direction:column;gap:2px}
.up-nav-item{position:relative;width:100%;min-height:46px;display:flex;align-items:center;gap:14px;padding:0 12px;border-radius:7px;color:#AEB4BE;font-size:14px;font-weight:500;transition:.18s ease}
.up-nav-item:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:2px;border-radius:2px;background:transparent}
.up-nav-item:hover{background:rgba(255,255,255,.04);color:#fff}
.up-nav-item.is-active{background:linear-gradient(90deg,rgba(214,40,40,.22),rgba(214,40,40,.07));color:#F0202B}
.up-nav-item.is-active:before{background:#D62828}.up-nav-item span{flex:1}.up-nav-item b{width:20px;height:20px;display:grid;place-items:center;border-radius:999px;background:#F0202B;color:#fff;font-size:11px}
.up-sidebar-promo{margin-top:auto;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden;background:#0E141E;flex-shrink:0}
.up-sidebar-promo-art{height:122px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 70%,rgba(214,40,40,.35),transparent 52%),#080B12}
.up-sidebar-promo-art img{width:100%;height:100%;object-fit:cover;object-position:center;opacity:.75;transform:scale(1.12)}
.up-sidebar-promo-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,11,18,0),rgba(8,11,18,.85))}
.up-sidebar-promo>div:last-child{padding:10px 12px 12px}.up-sidebar-promo strong{display:block;color:#F0202B;font-family:Rajdhani,Inter,sans-serif;font-size:19px;line-height:1.05}.up-sidebar-promo b{display:block;margin-top:9px;color:#fff;font-size:12px}.up-sidebar-promo p{margin:2px 0 10px;color:#AEB4BE;font-size:12px;line-height:1.3}.up-sidebar-promo a{height:36px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #D62828;border-radius:6px;color:#fff;font-size:12px;font-weight:600}.up-sidebar-promo a:hover{background:rgba(214,40,40,.1)}
.up-logout{margin:0}.up-logout button{width:100%;height:38px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:#0E141E;color:#7E8795;cursor:pointer}.up-logout button:hover{color:#fff;border-color:rgba(214,40,40,.45)}
.up-main{flex:1;min-width:0;height:auto;overflow:visible;margin-left:0;padding:16px 16px 28px 12px;background:#080B12;scrollbar-width:none}
.up-page{width:100%;max-width:1500px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.up-alert{max-width:1500px;margin:0 auto 10px;padding:10px 13px;border-radius:7px;border:1px solid rgba(255,255,255,.12);background:#111722;color:#E7E9ED}.up-alert.is-success{border-color:rgba(32,217,107,.35);color:#8df8b5}.up-alert.is-error{border-color:rgba(240,32,43,.45);color:#ff8c91}.up-alert.is-xp{border-color:rgba(214,40,40,.45);color:#fff;background:rgba(214,40,40,.12)}
.up-card{border:1px solid rgba(255,255,255,.09);border-radius:10px;background:#0E141E;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.14)}
.up-card-head{height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid rgba(255,255,255,.07)}
.up-card-head>div{display:flex;align-items:center;gap:9px}.up-card-head-icon{color:#F0202B;display:flex}.up-card-head h2{margin:0;color:#fff;font-size:15px;font-weight:650}.up-card-head>a{display:flex;align-items:center;gap:6px;color:#F0202B;font-size:12px}.up-card-head>a:hover{color:#EA3038}
.up-page-hero{height:132px;position:relative;display:flex;align-items:center;justify-content:space-between;padding:22px 28px;border:1px solid rgba(255,255,255,.09);border-radius:11px;overflow:hidden;background:linear-gradient(100deg,#0D121B 0%,#0D121B 54%,rgba(14,20,30,.82) 72%,rgba(8,11,18,.95) 100%)}
.up-page-hero:after{content:"";position:absolute;right:0;top:0;width:44%;height:100%;background:radial-gradient(circle at 70% 50%,rgba(214,40,40,.14),transparent 42%),linear-gradient(90deg,transparent,rgba(8,11,18,.18));pointer-events:none}
.up-page-hero-copy{position:relative;z-index:1}.up-page-hero-copy>span{display:flex;align-items:center;gap:8px;color:#F0202B;font-size:12px;font-weight:700;letter-spacing:1.8px}.up-page-hero h1{margin:4px 0 2px;color:#fff;font-size:28px;line-height:1.1}.up-page-hero p{margin:0;color:#AEB4BE;font-size:13px}
.up-page-hero-brand{position:relative;z-index:1;width:310px;height:100%;display:flex;align-items:flex-end;justify-content:flex-end;flex-direction:column;padding-right:4px}.up-page-hero-brand img{position:absolute;inset:0 0 0 auto;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.32;filter:saturate(.9)}.up-page-hero-brand strong{color:#F0202B;font-family:Rajdhani,Inter,sans-serif;font-size:22px;line-height:1;text-align:right}.up-page-hero-brand small{margin-top:3px;color:#fff;font-weight:700}
.up-player-hero{min-height:196px;position:relative;display:flex;align-items:stretch;gap:20px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden;background:radial-gradient(circle at 78% 54%,rgba(214,40,40,.12),transparent 26%),linear-gradient(90deg,#0B1018,#101720 68%,#090D14)}
.up-player-hero:after{content:"";position:absolute;right:0;top:0;width:44%;height:100%;background:url('/assets/user-panel-hero-art.jpg') right center/cover no-repeat;opacity:.28;filter:saturate(.8);pointer-events:none}
.up-player-avatar-box{width:122px;min-width:122px;position:relative;z-index:1;display:flex;align-items:center;justify-content:center;border:0;border-radius:0;background:transparent;box-shadow:none}
.up-player-avatar{width:90px;height:90px;display:grid;place-items:center;border:2px solid rgba(214,40,40,.65);border-radius:50%;overflow:hidden;background:#111722;color:#fff;font-size:28px;font-weight:700;box-shadow:0 0 30px rgba(214,40,40,.16)}.up-player-avatar img{width:100%;height:100%;object-fit:cover}
.up-player-hero-copy{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;justify-content:center;min-width:0}.up-player-hero-copy>small{color:#E7E9ED;font-size:11px;font-weight:600;letter-spacing:2px}.up-player-hero-copy h1{margin:2px 0 0;color:#fff;font-size:29px;line-height:1.08}.up-player-hero-copy>p{margin:2px 0 5px;color:#AEB4BE;font-size:14px}.up-player-name{display:flex;align-items:center;gap:8px}.up-player-name strong{font-size:19px}.up-player-name>span{width:19px;height:19px;display:grid;place-items:center;border-radius:50%;background:#F0202B}.up-player-hero-copy>em{color:#AEB4BE;font-size:12px;font-style:normal}.up-player-progress{display:flex;align-items:center;gap:12px;margin-top:8px;color:#AEB4BE}.up-player-progress>span{white-space:nowrap}.up-player-progress>div{display:flex;align-items:center;gap:8px}.up-player-progress>div>i{width:190px;height:6px;display:block;border-radius:20px;overflow:hidden;background:#1C2531}.up-player-progress>div>i>b{display:block;height:100%;border-radius:20px;background:#F0202B}.up-player-progress small{font-size:11px;white-space:nowrap}
.up-player-hero-actions{position:relative;z-index:1;width:390px;min-width:320px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;padding:6px 4px 2px}.up-player-hero-actions blockquote{margin:0;max-width:285px;color:#AEB4BE;font-size:14px;font-style:italic;text-align:right}.up-player-hero-brand{color:#F0202B;font-family:Rajdhani,Inter,sans-serif;font-size:18px;font-weight:700;text-align:right;line-height:1.04}.up-player-hero-brand small{display:block;margin-top:3px;color:#fff;font-family:Inter,sans-serif;font-size:10px;letter-spacing:1.2px}.up-hero-buttons{width:100%;display:flex;gap:8px}.up-hero-buttons>a,.up-hero-upload{height:40px;flex:1;display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#111722;color:#fff;font-size:12px;font-weight:600;cursor:pointer;position:relative;overflow:hidden}.up-hero-buttons>a:hover,.up-hero-upload:hover{background:#151d29}.up-hero-buttons .is-primary{border-color:#F0202B;background:#F0202B}.up-hero-buttons .is-primary:hover{background:#EA3038}.up-hero-upload form{position:absolute;inset:0}.up-hero-upload input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.up-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.up-stat{min-height:90px;display:flex;align-items:center;gap:15px;padding:13px 16px;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:#111722}.up-stat-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:50%;background:rgba(214,40,40,.14);color:#F0202B;flex-shrink:0}.up-stat>div{min-width:0}.up-stat small{display:block;color:#AEB4BE;font-size:11px}.up-stat strong{display:block;margin-top:1px;color:#fff;font-size:22px;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.up-stat em{display:block;margin-top:4px;color:#35E87A;font-size:11px;font-style:normal}
.up-dashboard-layout,.up-two-cols,.up-settings-grid{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(300px,.95fr);gap:12px;align-items:start}.up-two-cols,.up-settings-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr)}.up-column{display:flex;flex-direction:column;gap:12px;min-width:0}
.up-game-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:12px}.up-game-card{min-width:0;border:1px solid rgba(255,255,255,.09);border-radius:8px;overflow:hidden;background:#111722}.up-game-cover{height:108px;position:relative;overflow:hidden;background:#080B12}.up-game-cover img{width:100%;height:100%;object-fit:cover}.up-game-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 32%,rgba(8,11,18,.92) 100%)}.up-game-cover strong{position:absolute;z-index:1;left:9px;right:9px;bottom:7px;color:#fff;font-size:11px;line-height:1.15}.up-game-card>div:last-child{padding:8px;display:flex;flex-direction:column;gap:8px}
.up-badge{width:max-content;max-width:100%;display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.05);color:#C5CBD4;line-height:1.2;white-space:nowrap}.up-badge i{width:6px;height:6px;border-radius:50%;background:currentColor}.up-badge.is-success{color:#35E87A;border-color:rgba(32,217,107,.3);background:rgba(19,180,90,.1)}.up-badge.is-warning{color:#F0B540;border-color:rgba(240,181,64,.28);background:rgba(240,181,64,.1)}.up-badge.is-danger{color:#ff666d;border-color:rgba(240,32,43,.35);background:rgba(214,40,40,.12)}.up-badge.is-info{color:#56AAFF;border-color:rgba(86,170,255,.3);background:rgba(22,139,255,.09)}
.up-red-button,.up-outline-button,.up-wide-link{min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;border-radius:6px;font-size:12px;font-weight:600;transition:.16s}.up-red-button{border:1px solid #F0202B;background:#F0202B;color:#fff}.up-red-button:hover{background:#EA3038}.up-outline-button{border:1px solid rgba(255,255,255,.14);background:#0E141E;color:#fff}.up-wide-link{width:100%;min-height:36px;margin-top:10px;border:1px solid rgba(214,40,40,.5);color:#fff}.up-wide-link.is-primary{background:#F0202B;border-color:#F0202B}.up-wide-link:hover{background:rgba(214,40,40,.12)}
.up-table-wrap{width:100%;overflow-x:auto}.up-table{width:100%;border-collapse:collapse;min-width:650px}.up-table th{padding:9px 12px;border-bottom:1px solid rgba(255,255,255,.07);color:#AEB4BE;font-size:11px;text-align:left;text-transform:uppercase;letter-spacing:.55px;font-weight:600}.up-table td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.055);color:#E7E9ED;font-size:12px;vertical-align:middle}.up-table tbody tr:last-child td{border-bottom:0}.up-table td strong{display:block;color:#fff;font-size:12px}.up-table td small{display:block;margin-top:2px;color:#7E8795;font-size:10px}.up-row-action{min-width:74px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(214,40,40,.65);border-radius:5px;background:rgba(214,40,40,.07);color:#fff;font-size:11px;cursor:pointer}.up-row-action.is-primary{background:#D62828}.up-row-action:hover{background:rgba(214,40,40,.18)}.up-game-cell{display:flex;align-items:center;gap:8px}.up-game-cell img{width:42px;height:34px;border-radius:5px;object-fit:cover;background:#080B12}
.up-notification-list>div{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.055)}.up-notification-list>div:last-child{border-bottom:0}.up-notification-list>div>span,.up-history-list>div>span{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.06);color:#AEB4BE}.up-notification-list .is-success,.up-history-list .is-success{background:rgba(19,180,90,.13);color:#35E87A}.up-notification-list .is-warning,.up-history-list .is-warning{background:rgba(240,181,64,.11);color:#F0B540}.up-notification-list .is-danger,.up-history-list .is-danger{background:rgba(214,40,40,.13);color:#F0202B}.up-notification-list .is-info,.up-history-list .is-info{background:rgba(22,139,255,.12);color:#56AAFF}.up-notification-list strong{display:block;color:#fff;font-size:12px}.up-notification-list small{display:block;color:#7E8795;font-size:11px;margin-top:1px}.up-notification-list time{color:#7E8795;font-size:10px;white-space:nowrap}
.up-info-row{min-height:38px;display:grid;grid-template-columns:118px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 13px;border-bottom:1px solid rgba(255,255,255,.05)}.up-info-row:last-child{border-bottom:0}.up-info-row>span{color:#AEB4BE;font-size:11px}.up-info-row>strong{color:#fff;font-size:12px;font-weight:550;overflow-wrap:anywhere}.up-info-row>.up-badge{justify-self:end}
.up-security-banner{min-height:76px;display:flex;align-items:center;gap:13px;padding:12px 14px;border:1px solid rgba(214,40,40,.4);border-radius:10px;background:linear-gradient(135deg,rgba(214,40,40,.1),#0E141E)}.up-security-banner>span{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:rgba(214,40,40,.14);color:#F0202B;flex-shrink:0}.up-security-banner>div{flex:1}.up-security-banner strong{display:block;font-size:13px}.up-security-banner p{margin:2px 0 0;color:#AEB4BE;font-size:11px}.up-security-banner>a{display:flex;align-items:center;gap:6px;padding:0 10px;height:32px;border-radius:5px;background:#F0202B;color:#fff;font-size:11px;white-space:nowrap}
.up-mini-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}.up-mini-stats .up-stat{min-height:78px}.up-mini-stats .up-stat strong{font-size:18px}.up-mini-stats .up-stat-icon{width:42px;height:42px}.up-profile-games{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px}.up-profile-games>a{border:1px solid rgba(255,255,255,.08);border-radius:8px;overflow:hidden;background:#111722;color:#fff}.up-profile-games img{width:100%;height:78px;object-fit:cover}.up-profile-games strong,.up-profile-games small{display:block;padding:0 8px}.up-profile-games strong{margin-top:6px;font-size:11px}.up-profile-games small{padding-bottom:7px;color:#7E8795;font-size:10px}
.up-side-list{display:flex;flex-direction:column}.up-side-list>a,.up-side-list>button{width:100%;min-height:52px;display:flex;align-items:center;gap:9px;padding:8px 11px;border:0;border-bottom:1px solid rgba(255,255,255,.05);background:transparent;color:#fff;text-align:left;cursor:pointer}.up-side-list>a:last-child,.up-side-list>button:last-child{border-bottom:0}.up-side-list img{width:40px;height:34px;object-fit:cover;border-radius:5px}.up-side-list>a>span,.up-side-list>button>span{flex:1;min-width:0}.up-side-list strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.up-side-list small{display:block;color:#7E8795;font-size:10px;margin-top:2px}.up-note{margin:0;padding:12px 14px 0;color:#AEB4BE;font-size:12px;line-height:1.55}
.up-filter{height:46px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 12px;border-bottom:1px solid rgba(255,255,255,.055)}.up-filter>span{display:flex;align-items:center;gap:7px;color:#7E8795;font-size:11px}.up-filter>a{height:29px;display:flex;align-items:center;padding:0 9px;border:1px solid rgba(214,40,40,.35);border-radius:5px;color:#F0202B;font-size:11px}
.up-timeline{padding:8px 12px}.up-timeline>button{width:100%;display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 0;border:0;border-bottom:1px solid rgba(255,255,255,.05);background:transparent;color:#fff;text-align:left;cursor:pointer}.up-timeline>button:last-child{border-bottom:0}.up-timeline>button>i{width:8px;height:8px;border-radius:50%;background:#7E8795}.up-timeline>button>i.is-success{background:#35E87A}.up-timeline>button>i.is-warning{background:#F0B540}.up-timeline>button>i.is-danger{background:#F0202B}.up-timeline>button>i.is-info{background:#56AAFF}.up-timeline strong{display:block;font-size:11px}.up-timeline small{display:block;color:#7E8795;font-size:10px}.up-timeline em{color:#7E8795;font-size:9px;font-style:normal;white-space:nowrap}
.up-payment-top{display:grid;grid-template-columns:1.6fr 1fr;gap:12px}.up-payment-top .up-card{padding:18px}.up-payment-top small{color:#AEB4BE;font-size:11px}.up-payment-top strong{display:block;margin-top:5px;color:#fff;font-size:30px;line-height:1}.up-payment-top p{margin:6px 0 12px;color:#7E8795;font-size:11px}.up-balance-card>div{display:flex;gap:8px}.up-balance-card>div>*{flex:1}.up-big-number{font-size:24px!important}.up-payment-methods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px}.up-payment-methods>div{min-height:105px;display:flex;flex-direction:column;justify-content:center;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#111722;text-align:center}.up-payment-methods strong{color:#fff;font-size:13px}.up-payment-methods span{margin-top:4px;color:#F0B540;font-size:10px}.up-payment-methods small{margin-top:8px;color:#7E8795;font-size:9px}.up-check-list{display:grid;gap:10px;margin:0;padding:14px 18px 14px 32px;color:#AEB4BE;font-size:11px}.up-check-list li::marker{color:#35E87A}
.up-history-list{padding:6px 12px}.up-history-list>div{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05)}.up-history-list>div:last-child{border-bottom:0}.up-history-list strong{display:block;font-size:11px}.up-history-list small{display:block;color:#7E8795;font-size:10px;margin-top:2px}.up-history-list time{color:#7E8795;font-size:9px;white-space:nowrap}
.up-settings-grid>.up-column>.up-card{overflow:visible}.up-form{display:grid;gap:10px;padding:13px}.up-form label{display:grid;gap:5px;color:#AEB4BE;font-size:11px}.up-form input,.up-form textarea,.up-form select{width:100%;min-height:36px;padding:8px 10px;border:1px solid rgba(255,255,255,.12);border-radius:6px;outline:0;background:#0B1119;color:#fff;font-size:13px;resize:vertical}.up-form input:focus,.up-form textarea:focus{border-color:rgba(214,40,40,.7);box-shadow:0 0 0 2px rgba(214,40,40,.08)}.up-form input:disabled{color:#7E8795}.up-form-submit{height:38px;border:0;border-radius:6px;background:#F0202B;color:#fff;font-weight:600;cursor:pointer}.up-form-submit:hover{background:#EA3038}
.up-settings-list{padding:7px 13px 13px}.up-toggle-row{min-height:49px;position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(255,255,255,.05);cursor:pointer}.up-toggle-row>span{display:grid;gap:2px}.up-toggle-row strong{font-size:12px}.up-toggle-row small{color:#7E8795;font-size:10px}.up-toggle-row input{position:absolute;opacity:0;pointer-events:none}.up-toggle-row>i{width:36px;height:20px;position:relative;border-radius:20px;background:#27303C;transition:.2s;flex-shrink:0}.up-toggle-row>i:after{content:"";position:absolute;width:16px;height:16px;left:2px;top:2px;border-radius:50%;background:#fff;transition:.2s}.up-toggle-row input:checked+i{background:#F0202B}.up-toggle-row input:checked+i:after{transform:translateX(16px)}.up-settings-list .up-form-submit{width:100%;margin-top:11px}
.up-google-state{display:flex;align-items:center;gap:10px;padding:15px}.up-google-state img{width:28px;height:28px}.up-google-state strong,.up-google-state small{display:block}.up-google-state small{margin-top:2px;color:#7E8795;font-size:11px}.up-danger-zone{padding:14px;border:1px solid rgba(214,40,40,.45);border-radius:10px;background:rgba(214,40,40,.07)}.up-danger-zone strong{color:#F0202B;font-size:13px}.up-danger-zone p{margin:4px 0 10px;color:#AEB4BE;font-size:11px}.up-danger-zone a{display:flex;height:34px;align-items:center;justify-content:center;border:1px solid rgba(214,40,40,.5);border-radius:6px;color:#fff;font-size:11px}
.up-reward-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:12px}.up-reward-grid>article{padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#111722}.up-reward-grid>article>span{font-size:24px}.up-reward-grid>article>strong{display:block;margin-top:6px;font-size:12px}.up-reward-grid>article>p{min-height:34px;margin:4px 0;color:#7E8795;font-size:10px}.up-reward-grid>article>b{color:#F0B540;font-size:11px}.up-reward-grid button{width:100%;height:30px;margin-top:9px;border:1px solid #D62828;border-radius:5px;background:#D62828;color:#fff;font-size:10px}.up-reward-grid button:disabled{opacity:.45}.up-reward-grid form{margin:0}
.up-empty{width:100%;padding:20px 12px;color:#7E8795;font-size:12px;text-align:center}.up-game-grid>.up-empty,.up-profile-games>.up-empty{grid-column:1/-1}

/* User panel typography coherence v2.0.178: all functional/body text inside cards uses the 13px project minimum. */
.up-badge{font-size:13px}
.up-card-head>a,.up-red-button,.up-outline-button,.up-wide-link,.up-row-action{font-size:13px}
.up-card .up-table th,.up-card .up-table td,.up-card .up-table td strong,.up-card .up-table td small{font-size:13px}
.up-card .up-notification-list strong,.up-card .up-notification-list small,.up-card .up-notification-list time{font-size:13px}
.up-card .up-info-row>span,.up-card .up-info-row>strong,.up-info-row>.up-badge{font-size:13px}
.up-card .up-security-banner strong,.up-card .up-security-banner p,.up-card .up-security-banner>a{font-size:13px}
.up-card .up-profile-games strong,.up-card .up-profile-games small{font-size:13px}
.up-card .up-side-list strong,.up-card .up-side-list small,.up-card .up-note{font-size:13px}
.up-card .up-filter>span,.up-card .up-filter>a{font-size:13px}
.up-card .up-timeline strong,.up-card .up-timeline small,.up-card .up-timeline em{font-size:13px}
.up-card .up-payment-top small,.up-card .up-payment-top p{font-size:13px}
.up-card .up-payment-methods strong,.up-card .up-payment-methods span,.up-card .up-payment-methods small,.up-card .up-check-list{font-size:13px}
.up-card .up-history-list strong,.up-card .up-history-list small,.up-card .up-history-list time{font-size:13px}
.up-card .up-form label,.up-card .up-form input,.up-card .up-form textarea,.up-card .up-form select{font-size:13px}
.up-card .up-toggle-row strong,.up-card .up-toggle-row small,.up-card .up-google-state small{font-size:13px}
.up-card .up-danger-zone strong,.up-card .up-danger-zone p,.up-card .up-danger-zone a{font-size:13px}
.up-card .up-reward-grid>article>strong,.up-card .up-reward-grid>article>p,.up-card .up-reward-grid>article>b,.up-card .up-reward-grid button,.up-card .up-empty{font-size:13px}

@media(max-width:1180px){
  .up-sidebar{width:190px;min-width:190px}.up-main{margin-left:0}.up-nav-item{gap:10px;padding:0 9px;font-size:13px}.up-player-hero-actions{width:320px}.up-player-progress>div>i{width:130px}.up-game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.up-payment-methods{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  body:has(.up-shell){overflow:auto}.up-shell{height:auto;min-height:100vh;display:block;overflow:visible}.up-sidebar{position:sticky;left:auto;top:0;z-index:60;width:100%;height:auto;max-height:none;min-width:0;padding:8px;display:block;border-right:0;border-bottom:1px solid rgba(255,255,255,.08);overflow-x:auto;overflow-y:hidden;background:rgba(8,11,18,.97);backdrop-filter:blur(12px)}.up-sidebar nav{display:flex;flex-direction:row;gap:4px;width:max-content}.up-nav-item{width:auto;min-height:42px;padding:0 11px;white-space:nowrap}.up-nav-item:before{left:8px;right:8px;top:auto;bottom:0;width:auto;height:2px}.up-nav-item b{display:none}.up-sidebar-promo,.up-logout{display:none}.up-main{height:auto;min-height:calc(100vh - 58px);overflow:visible;margin-left:0;padding:10px}.up-player-hero{display:grid;grid-template-columns:104px 1fr}.up-player-avatar-box{width:104px;min-width:104px}.up-player-hero-actions{grid-column:1/-1;width:100%;min-width:0;align-items:stretch}.up-player-hero-actions blockquote,.up-player-hero-brand{display:none}.up-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.up-dashboard-layout,.up-two-cols,.up-settings-grid{grid-template-columns:1fr}.up-page-hero-brand{display:none}.up-page-hero{height:auto;min-height:112px;padding:18px}.up-payment-top{grid-template-columns:1fr}
}
@media(max-width:620px){
  .up-main{padding:8px}.up-page{gap:8px}.up-player-hero{grid-template-columns:74px 1fr;gap:12px;padding:10px;min-height:0}.up-player-avatar-box{width:74px;min-width:74px;height:88px}.up-player-avatar{width:62px;height:62px}.up-player-hero-copy h1{font-size:21px}.up-player-hero-copy>p{font-size:12px}.up-player-progress{align-items:flex-start;flex-wrap:wrap;gap:6px}.up-player-progress>div{width:100%}.up-player-progress>div>i{flex:1;width:auto}.up-hero-buttons{overflow-x:auto}.up-hero-buttons>a,.up-hero-upload{min-width:125px}.up-stats{grid-template-columns:1fr 1fr;gap:8px}.up-stat{min-height:76px;padding:10px;gap:10px}.up-stat-icon{width:40px;height:40px}.up-stat strong{font-size:17px}.up-game-grid,.up-profile-games,.up-reward-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px}.up-mini-stats{grid-template-columns:1fr}.up-card-head{padding:0 10px}.up-info-row{grid-template-columns:90px minmax(0,1fr);padding:6px 10px}.up-info-row>.up-badge{grid-column:2}.up-page-hero h1{font-size:23px}.up-payment-methods{grid-template-columns:1fr 1fr;padding:8px}.up-payment-top .up-card{padding:14px}.up-payment-top strong{font-size:25px}
}

/* ==========================================================================
   v2.0.180 — Gaming Hub intégré au web-app (design gamiing hub.zip)
   ========================================================================== */
.page.gaming-hub-page{--hub-card:#101620;--hub-line:rgba(255,255,255,.09);--hub-red:#d62828;--hub-muted:#aeb4be;--hub-dim:#7e8795;min-height:100svh;background:#080b12;color:#fff;font-family:Inter,Arial,sans-serif;overflow:visible}.page.gaming-hub-page:after{display:none}.gaming-hub-page .page-bg{display:none}.hub-container{width:calc(100% - (var(--public-content-gutter,clamp(18px,2.1vw,40px))*2));margin:0 auto}.hub-hero{position:relative;padding:28px 0 18px;background:radial-gradient(circle at 24% 30%,rgba(214,40,40,.13),transparent 31%),linear-gradient(180deg,#070b12 0,#07101a 100%);border-bottom:1px solid rgba(255,255,255,.06)}.hub-hero:before{content:"";position:absolute;left:0;top:0;width:43%;height:100%;pointer-events:none;background:linear-gradient(115deg,rgba(214,40,40,.05),transparent 68%)}.hub-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(300px,34%) minmax(0,1fr);gap:30px;align-items:stretch}.hub-hero-copy{position:relative;min-height:360px;display:flex;align-items:center;overflow:hidden}.hub-hero-watermark{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;color:rgba(214,40,40,.045);font:900 clamp(58px,6vw,86px)/.86 Rajdhani,Inter,sans-serif;letter-spacing:-.04em;user-select:none}.hub-hero-copy-inner{position:relative;z-index:1;display:grid;gap:14px}.hub-kicker{display:flex;align-items:center;gap:9px;color:#f0202b;font-size:13px;font-weight:800;letter-spacing:.12em}.hub-kicker i{width:8px;height:8px;border-radius:50%;background:#d62828;box-shadow:0 0 12px rgba(214,40,40,.5)}.hub-hero-copy h1{margin:0;color:#fff;font:900 clamp(42px,4.2vw,58px)/.96 Rajdhani,Inter,sans-serif;letter-spacing:-.04em}.hub-hero-copy p{max-width:410px;margin:0;color:#c1c6ce;font-size:16px;line-height:1.5}.hub-red-line{display:block;width:36px;height:2px;border-radius:3px;background:#f0202b}.hub-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:4px}.hub-benefits>span{min-height:55px;padding:0 14px;border-right:1px solid rgba(255,255,255,.1);display:grid;grid-template-columns:20px 1fr;grid-template-rows:auto auto;column-gap:7px;align-content:center}.hub-benefits>span:first-child{padding-left:0}.hub-benefits>span:last-child{border-right:0}.hub-benefits svg{grid-row:1/3;color:#e92a34}.hub-benefits strong{font-size:13px;letter-spacing:.06em}.hub-benefits small{color:#7e8795;font-size:13px}.hub-featured{position:relative;min-height:360px;border:1px solid rgba(255,255,255,.14);border-radius:10px;overflow:hidden;background:#0c121c;box-shadow:0 18px 45px rgba(0,0,0,.28);color:#fff;text-decoration:none}.hub-featured>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hub-featured-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,7,12,.82),rgba(4,7,12,.27) 65%),linear-gradient(0deg,rgba(4,7,12,.98),rgba(4,7,12,.12) 75%)}.hub-featured-corner{position:absolute;top:20px;right:20px;color:rgba(255,255,255,.48);font-size:11px;font-weight:800;line-height:1.35;letter-spacing:.16em;text-align:right}.hub-featured-copy{position:absolute;left:0;right:0;bottom:0;padding:25px 26px;display:grid;gap:8px}.hub-badge{justify-self:start;display:inline-flex;align-items:center;min-height:26px;padding:3px 11px;border-radius:999px;background:#d62828;color:#fff;font-size:13px;font-weight:750;line-height:1}.hub-featured-copy h2{max-width:650px;margin:0;color:#fff;font:900 clamp(26px,2.4vw,34px)/1.04 Rajdhani,Inter,sans-serif}.hub-featured-copy>strong{max-width:650px;font-size:16px;line-height:1.35}.hub-featured-copy>p{max-width:620px;margin:0;color:#c4c8cf;font-size:14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hub-featured-meta{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin-top:3px}.hub-featured-meta>span{display:inline-flex;align-items:center;gap:6px;color:#aeb4be;font-size:13px}.hub-featured-meta>.hub-badge{min-height:24px;padding:2px 9px;background:rgba(214,40,40,.18);border:1px solid rgba(214,40,40,.55);color:#f2b1b5}.hub-featured-meta>b{margin-left:auto;min-height:38px;padding:0 17px;border-radius:6px;display:inline-flex;align-items:center;gap:9px;background:#d62828;color:#fff;font-size:13px}.hub-featured.is-empty{background:linear-gradient(135deg,#111722,#080b12)}
.hub-category-wrap{border-bottom:1px solid rgba(255,255,255,.07);background:#080d15}.hub-category-row{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:22px}.hub-category-list{display:flex;gap:12px;flex-wrap:wrap}.hub-category-list button{min-width:92px;height:36px;padding:0 18px;border:1px solid rgba(174,180,190,.18);border-radius:999px;background:#0d1520;color:#cbd0d7;font-size:13px;font-weight:650}.hub-category-list button:hover,.hub-category-list button.is-active{border-color:rgba(240,32,43,.8);background:linear-gradient(180deg,#f2363f,#c91f28);color:#fff;box-shadow:0 0 18px rgba(214,40,40,.27)}.hub-category-signature{display:flex;align-items:center;gap:8px;color:#5f6977;font-size:11px;font-weight:700;line-height:1.25;letter-spacing:.08em;text-align:right;white-space:nowrap}.hub-category-signature svg{color:#d62828}
.hub-main-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;padding-top:25px;padding-bottom:42px}.hub-feed{min-width:0;display:grid;gap:27px}.hub-section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}.hub-section-heading>div{display:flex;align-items:center;gap:11px}.hub-section-heading i{display:block;width:4px;height:23px;border-radius:4px;background:#f0202b}.hub-section-heading h2{margin:0;color:#fff;font-size:22px;font-weight:800;letter-spacing:-.02em}.hub-section-heading>a{color:#f0202b;font-size:13px;font-weight:700;text-decoration:none}.hub-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.hub-article-card{min-width:0;border:1px solid rgba(255,255,255,.09);border-radius:9px;overflow:hidden;background:#0f1620;color:#fff;text-decoration:none;box-shadow:0 8px 25px rgba(0,0,0,.16);transition:transform .16s ease,border-color .16s ease}.hub-article-card:hover{transform:translateY(-2px);border-color:rgba(214,40,40,.45)}.hub-article-media{position:relative;height:168px;overflow:hidden;background:#080b12}.hub-article-media>img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.hub-article-card:hover .hub-article-media>img{transform:scale(1.035)}.hub-article-media>div{position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,10,16,.75),transparent 55%)}.hub-article-media .hub-badge{position:absolute;left:12px;bottom:10px}.hub-article-body{min-height:205px;padding:13px 14px 12px;display:flex;flex-direction:column}.hub-article-body h3{margin:0 0 8px;font-size:16px;line-height:1.25;font-weight:800}.hub-article-body>p{margin:0;color:#aeb4be;font-size:13px;line-height:1.47;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.hub-article-body footer{margin-top:auto;padding-top:12px;border-top:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between;gap:9px;color:#7e8795}.hub-article-body footer span{display:inline-flex;align-items:center;gap:6px;font-size:13px}.hub-empty{padding:30px;border:1px dashed rgba(255,255,255,.12);border-radius:9px;color:#7e8795;text-align:center}.hub-discover-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.hub-discover-card{position:relative;min-height:278px;border:1px solid rgba(255,255,255,.09);border-radius:9px;overflow:hidden;background:#0f1620;color:#fff;text-decoration:none}.hub-discover-card>img{position:absolute;inset:0 0 auto 0;width:100%;height:145px;object-fit:cover}.hub-discover-card>div{position:absolute;inset:0;background:linear-gradient(0deg,#0f1620 35%,rgba(15,22,32,.15) 72%)}.hub-discover-card>.hub-badge{position:absolute;top:116px;left:12px}.hub-discover-card>section{position:relative;z-index:1;padding:157px 13px 12px}.hub-discover-card h3{margin:0 0 7px;font-size:16px}.hub-discover-card p{margin:0;color:#aeb4be;font-size:13px;line-height:1.4}.hub-discover-card footer{margin-top:11px;display:flex;align-items:center;gap:12px;color:#7e8795}.hub-discover-card footer span{display:flex;align-items:center;gap:5px;font-size:13px}.hub-discover-card footer b{margin-left:auto;color:#f0202b;font-size:13px}
.hub-sidebar{display:flex;flex-direction:column;gap:14px}.hub-side-card{padding:13px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:#0f1620}.hub-side-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.hub-side-heading>div{display:flex;align-items:center;gap:8px}.hub-side-heading svg{color:#ef2934}.hub-side-heading strong{font-size:15px}.hub-side-heading>a{color:#f0202b;font-size:13px;text-decoration:none}.hub-side-separator{height:1px;margin:11px 0 0;background:rgba(255,255,255,.06)}.hub-trend-row{min-height:59px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05);display:grid;grid-template-columns:27px 47px 1fr;align-items:center;gap:8px;color:#fff;text-decoration:none}.hub-trend-row:last-child{border-bottom:0}.hub-trend-row>b{width:27px;height:27px;border-radius:5px;display:grid;place-items:center;background:rgba(255,255,255,.07);color:#7e8795;font-size:13px}.hub-trend-row:nth-of-type(-n+4)>b{background:rgba(142,23,29,.55);color:#f14a53}.hub-trend-row>img{width:47px;height:34px;border-radius:4px;object-fit:cover}.hub-trend-row>span{min-width:0}.hub-trend-row span strong{display:block;overflow:hidden;color:#fff;font-size:13px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.hub-trend-row span small{display:block;margin-top:3px;color:#7e8795;font-size:13px;white-space:nowrap}.hub-event-row{min-height:72px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.05);display:grid;grid-template-columns:44px minmax(0,1fr) 42px;align-items:center;gap:9px;color:#fff;text-decoration:none}.hub-event-row:last-child{border-bottom:0}.hub-event-row>b{height:47px;border:1px solid rgba(214,40,40,.24);border-radius:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(142,23,29,.25)}.hub-event-row>b strong{font-size:17px;line-height:1}.hub-event-row>b small{margin-top:3px;color:#ef3434;font-size:11px}.hub-event-row>span{min-width:0}.hub-event-row>span strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-event-row>span small{display:block;margin:2px 0;color:#aeb4be;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-event-row>span em{display:flex;align-items:center;gap:4px;color:#63c879;font-size:13px;font-style:normal}.hub-event-row>img{width:42px;height:34px;object-fit:contain}.hub-event-row>svg{margin:auto;color:#aeb4be}.hub-side-empty{margin:12px 0 0;color:#7e8795;font-size:13px;line-height:1.4}.hub-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.hub-tags button,.hub-tags span,.hub-article-tags span{min-height:27px;padding:4px 10px;border:1px solid rgba(214,40,40,.33);border-radius:999px;background:rgba(255,255,255,.025);color:#e7e9ed;font-size:13px}.hub-newsletter-copy{margin:12px 0;color:#aeb4be;font-size:13px;line-height:1.45}.hub-newsletter{display:flex;gap:7px}.hub-newsletter input{min-width:0;flex:1;height:40px;padding:0 10px;border:1px solid rgba(255,255,255,.11);border-radius:6px;background:#080b12;color:#fff;font-size:13px}.hub-newsletter button{height:40px;padding:0 12px;border:0;border-radius:6px;background:#d62828;color:#fff;font-size:13px;font-weight:750}.hub-newsletter-note{display:block;margin-top:7px;color:#697381;font-size:13px}
.hub-article-detail{padding-top:32px;padding-bottom:32px}.hub-article-back{display:inline-flex;margin-bottom:18px;color:#d7dbe1;font-size:13px;text-decoration:none}.hub-article-detail-hero{position:relative;height:min(48vw,520px);min-height:260px;border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden}.hub-article-detail-hero img{width:100%;height:100%;object-fit:cover}.hub-article-detail-hero>div{position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,11,18,.86),transparent 58%)}.hub-article-detail>header{width:min(900px,calc(100% - 32px));margin:-88px auto 0;position:relative;z-index:2;padding:25px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(15,22,32,.96);box-shadow:0 20px 50px rgba(0,0,0,.35)}.hub-article-detail header h1{margin:12px 0 8px;font:900 clamp(30px,4vw,52px)/1 Rajdhani,Inter,sans-serif}.hub-article-detail header>p{margin:0;color:#aeb4be;font-size:16px;line-height:1.55}.hub-article-detail header>div{display:flex;gap:18px;margin-top:14px;color:#7e8795}.hub-article-detail header>div span{display:flex;align-items:center;gap:6px;font-size:13px}.hub-article-content{width:min(820px,100%);margin:28px auto;color:#d9dce1;font-size:16px;line-height:1.8}.hub-article-content p{margin:0 0 18px}.hub-article-tags{width:min(820px,100%);margin:0 auto;display:flex;flex-wrap:wrap;gap:8px}.hub-related{padding-bottom:46px}
@media(max-width:1100px){.hub-hero-grid{grid-template-columns:1fr}.hub-hero-copy{min-height:270px}.hub-main-grid{grid-template-columns:minmax(0,1fr) 270px}.hub-article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-category-signature{display:none}}
@media(max-width:820px){.hub-main-grid{grid-template-columns:1fr}.hub-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.hub-hero{padding-top:18px}.hub-featured{min-height:330px}.hub-featured-copy>p{display:none}.hub-category-row{padding:13px 0}.hub-category-list{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.hub-category-list::-webkit-scrollbar{display:none}.hub-category-list button{flex:0 0 auto}.hub-discover-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.hub-container{width:calc(100% - 24px)}.hub-hero-grid{gap:16px}.hub-hero-copy{min-height:245px}.hub-hero-copy h1{font-size:43px}.hub-hero-copy p{font-size:14px}.hub-benefits>span{padding:0 8px}.hub-benefits strong,.hub-benefits small{font-size:11px}.hub-featured{min-height:330px}.hub-featured-copy{padding:17px}.hub-featured-copy h2{font-size:27px}.hub-featured-copy>strong{font-size:14px}.hub-featured-meta{gap:9px}.hub-featured-meta>b{width:100%;margin-left:0;justify-content:center}.hub-article-grid,.hub-discover-grid,.hub-sidebar{grid-template-columns:1fr}.hub-article-media{height:190px}.hub-article-body{min-height:180px}.hub-section-heading h2{font-size:19px}.hub-section-heading>a{font-size:13px}.hub-newsletter{flex-direction:column}.hub-newsletter button{width:100%}.hub-article-detail-hero{height:280px}.hub-article-detail>header{width:calc(100% - 18px);margin-top:-52px;padding:18px}.hub-article-detail header h1{font-size:32px}.hub-article-content{font-size:15px}}




/* ========================================================================== 
   v2.0.184 — Header public unique et persistant
   - Header monté une seule fois par App pour les pages publiques
   - PublicLayout ne remonte pas une copie pendant les changements de page
   - géométrie identique sur accueil, shop, jeux, hub, planning, maps, player…
   ========================================================================== */
.page.inner-page.has-shared-public-header{
  --header-height:75px!important;
  padding-top:75px!important;
}
.public-shared-header{
  --shared-public-header-gutter:clamp(18px,2.1vw,40px);
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:1000!important;
  width:100%!important;
  height:75px!important;
  min-height:75px!important;
  padding:0 var(--shared-public-header-gutter)!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:clamp(10px,1.2vw,24px)!important;
  background:#080b12!important;
}
.public-shared-header > .brand{
  width:128px!important;
  min-width:128px!important;
  height:61px!important;
  flex:0 0 128px!important;
  margin:0!important;
}
.public-shared-header > #primary-nav{min-width:0!important;flex:1 1 auto!important}
.public-shared-header > .header-actions{flex:0 0 auto!important;margin-left:0!important}

@media (max-width:1200px) and (min-width:981px){
  .public-shared-header > .brand{width:112px!important;min-width:112px!important;height:54px!important;flex-basis:112px!important}
  .public-shared-header > #primary-nav{gap:8px!important}
  .public-shared-header > #primary-nav a{font-size:clamp(14px,1.35vw,17px)!important}
}

@media (max-width:980px) and (min-width:821px){
  .page.inner-page.has-shared-public-header{--header-height:124px!important;padding-top:124px!important}
  .public-shared-header{
    height:124px!important;
    min-height:124px!important;
    flex-wrap:wrap!important;
    align-content:center!important;
    padding-top:10px!important;
    padding-bottom:8px!important;
  }
  .public-shared-header > .brand{width:104px!important;min-width:104px!important;height:50px!important;flex-basis:104px!important}
  .public-shared-header > #primary-nav{
    order:3!important;
    width:100%!important;
    flex:1 0 100%!important;
    display:flex!important;
    justify-content:flex-start!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:7px 0 1px!important;
    white-space:nowrap!important;
    scrollbar-width:none!important;
  }
  .public-shared-header > #primary-nav::-webkit-scrollbar{display:none!important}
  .public-shared-header > #primary-nav a{font-size:15px!important}
  .public-shared-header > .header-actions{margin-left:auto!important}
}

@media (max-width:820px){
  .page.inner-page.has-shared-public-header{--header-height:68px!important;padding-top:68px!important}
  .public-shared-header{
    height:68px!important;
    min-height:68px!important;
    padding:8px var(--shared-public-header-gutter)!important;
    flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    gap:8px!important;
  }
  .public-shared-header > .mobile-menu-toggle{
    display:inline-flex!important;
    flex:0 0 36px!important;
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    margin:0!important;
    padding:0!important;
    justify-self:auto!important;
    grid-column:auto!important;
  }
  .public-shared-header > .brand{
    width:92px!important;
    min-width:92px!important;
    height:48px!important;
    flex:0 0 92px!important;
    margin:0!important;
    justify-self:auto!important;
    grid-column:auto!important;
  }
  .public-shared-header > #primary-nav{flex:none!important}
  .public-shared-header > .header-actions{
    min-width:0!important;
    margin-left:auto!important;
    display:flex!important;
    flex:0 0 auto!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:4px!important;
  }
  .public-shared-header .header-search{min-width:36px!important;flex:0 0 36px!important;display:flex!important;align-items:center!important;gap:6px!important}
  .public-shared-header .header-search-toggle{order:1!important;width:36px!important;min-width:36px!important;height:36px!important;flex:0 0 36px!important}
  .public-shared-header .header-search-inline{order:0!important}
  .public-shared-header.search-is-open > .brand{display:none!important}
  .public-shared-header.search-is-open > .header-actions{
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    margin-left:0!important;
    justify-content:flex-start!important;
  }
  .public-shared-header.search-is-open .header-cart-btn,
  .public-shared-header.search-is-open .header-account-btn{display:none!important}
  .public-shared-header.search-is-open .header-search{width:100%!important;min-width:0!important;flex:1 1 auto!important}
  .public-shared-header.search-is-open .header-search-inline{
    display:block!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    flex:1 1 auto!important;
    opacity:1!important;
    overflow:visible!important;
    pointer-events:auto!important;
  }
  .public-shared-header.search-is-open .header-search-inline input{
    width:100%!important;
    max-width:none!important;
    height:40px!important;
    padding:0 13px!important;
    font-size:16px!important;
  }
}

@media (max-width:420px){
  .page.inner-page.has-shared-public-header{--header-height:64px!important;padding-top:64px!important}
  .public-shared-header{height:64px!important;min-height:64px!important;gap:5px!important}
  .public-shared-header > .brand{width:78px!important;min-width:78px!important;height:44px!important;flex-basis:78px!important}
  .public-shared-header.search-is-open .header-search{gap:5px!important}
  .public-shared-header.search-is-open .header-search-inline input{height:38px!important;padding-left:11px!important;padding-right:11px!important}
}


/* Planning public — liste détaillée ciblée par les cartes du bracket */
.mhtm-plan-public-match-list{overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#0e141e;scroll-margin-top:96px}
.mhtm-plan-public-match-list-heading{padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.07);display:flex;align-items:center;justify-content:space-between;gap:12px;background:#111722}
.mhtm-plan-public-match-list-heading small{display:block;color:#d62828;font-size:13px;font-weight:800;letter-spacing:.8px}
.mhtm-plan-public-match-list-heading h3{margin:2px 0 0;color:#fff;font-size:16px;font-weight:800}
.mhtm-plan-public-match-list-heading>span{padding:6px 9px;border:1px solid rgba(255,255,255,.08);border-radius:5px;background:#080b12;color:#aeb4be;font-size:13px;font-weight:700}
.mhtm-plan-public-match-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.mhtm-plan-public-match-table{width:100%;min-width:860px;border-collapse:collapse;table-layout:fixed}
.mhtm-plan-public-match-table th{padding:10px 13px;border-bottom:1px solid rgba(255,255,255,.07);color:#7e8795;font-size:13px;font-weight:800;letter-spacing:.55px;text-align:left;background:#0b111a}
.mhtm-plan-public-match-table td{padding:12px 13px;border-top:1px solid rgba(255,255,255,.05);color:#aeb4be;font-size:13px;vertical-align:middle;transition:background .16s ease,box-shadow .16s ease}
.mhtm-plan-public-match-table tr:first-child td{border-top:0}
.mhtm-plan-public-match-table tr.is-focused td{background:rgba(214,40,40,.11);box-shadow:inset 0 1px 0 rgba(214,40,40,.28),inset 0 -1px 0 rgba(214,40,40,.28)}
.mhtm-plan-public-match-table tr:focus{outline:none}
.mhtm-plan-public-match-table tr:focus td{background:rgba(214,40,40,.11)}
.mhtm-plan-public-match-table td>strong,.mhtm-plan-public-match-table td>small{display:block}
.mhtm-plan-public-match-table td>strong{color:#fff;font-size:13px;font-weight:700}
.mhtm-plan-public-match-table td>small{margin-top:4px;color:#7e8795;font-size:13px}
.mhtm-plan-public-matchup{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px}
.mhtm-plan-public-matchup b{min-width:0;overflow:hidden;color:#fff;font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.mhtm-plan-public-matchup b:last-child{text-align:right}
.mhtm-plan-public-matchup em{padding:4px 7px;border-radius:4px;background:#080b12;color:#d62828;font-size:13px;font-style:normal;font-weight:800;white-space:nowrap}
.mhtm-plan-public-match-table .mhtm-plan-status{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
@media (max-width:700px){
  .mhtm-plan-public-match-list-heading{padding:12px 13px}
  .mhtm-plan-public-match-table{min-width:760px}
  .mhtm-plan-public-match-table th,.mhtm-plan-public-match-table td{padding-left:10px;padding-right:10px}
}


/* ==========================================================================
   v2.0.185 — Identité institutionnelle MHTM / ONLY TECH
   ========================================================================== */
.site-footer-institutional{display: none !important}
.site-footer-institutional strong{color:#fff}
.about-institutional-title{margin-bottom:22px}
.about-institutional-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:34px}
.about-institutional-card{display:flex;flex-direction:column;gap:14px}
.about-institutional-card>.outline-btn{align-self:flex-start}
.about-institutional-facts,.contact-professional-facts{display:grid;gap:12px;margin:0}
.about-institutional-facts>div,.contact-professional-facts>div{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(0,1.3fr);gap:16px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08)}
.about-institutional-facts dt,.contact-professional-facts dt{color:#aeb4be}
.about-institutional-facts dd,.contact-professional-facts dd{margin:0;color:#fff;overflow-wrap:anywhere}
.about-context-title{margin-top:10px}
.contact-professional-card{border-color:rgba(214,40,40,.28)}
@media(max-width:700px){.about-institutional-grid{grid-template-columns:1fr}.about-institutional-facts>div,.contact-professional-facts>div{grid-template-columns:1fr;gap:4px}}

/* ========================================================================== 
   v2.0.185 — Admin emplacements fixes /maps
   ========================================================================== */
.admin-location-page .admin-panel-content{min-width:0}
.admin-location-content{display:grid;gap:18px}
.admin-location-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.admin-location-summary article{display:grid;gap:5px;padding:17px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#111722}
.admin-location-summary small{color:#7e8795;font-size:13px;font-weight:800;letter-spacing:.45px}
.admin-location-summary strong{color:#fff;font-size:18px;overflow-wrap:anywhere}
.admin-location-list-card{overflow:hidden}
.admin-location-list-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid rgba(255,255,255,.07)}
.admin-location-list-head h2{margin:0;color:#fff;font-size:18px}.admin-location-list-head p{margin:5px 0 0;color:#7e8795;font-size:13px}
.admin-location-list{display:grid}.admin-location-row{display:grid;grid-template-columns:auto minmax(220px,1.25fr) minmax(250px,.8fr) auto;align-items:center;gap:16px;padding:16px 20px;border-top:1px solid rgba(255,255,255,.06)}
.admin-location-row:first-child{border-top:0}.admin-location-row.is-hidden{opacity:.62}.admin-location-state-dot{width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 5px rgba(255,255,255,.05)}
.admin-location-state-dot.is-open{background:#19c37d;box-shadow:0 0 0 5px rgba(25,195,125,.12)}.admin-location-state-dot.is-closed{background:#d62828;box-shadow:0 0 0 5px rgba(214,40,40,.12)}
.admin-location-main{display:grid;gap:4px;min-width:0}.admin-location-main strong{color:#fff;font-size:16px}.admin-location-main small,.admin-location-main span{color:#7e8795;font-size:13px}.admin-location-main span{color:#aeb4be}
.admin-location-badges{display:flex;flex-wrap:wrap;gap:6px}.admin-location-badges b,.admin-location-badges em,.admin-location-badges i{padding:6px 8px;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:#080b12;color:#aeb4be;font-size:13px;font-style:normal;font-weight:800}.admin-location-badges b.is-open{border-color:rgba(25,195,125,.35);color:#64e3ad}.admin-location-badges b.is-closed{border-color:rgba(214,40,40,.35);color:#ff7777}
.admin-location-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.admin-location-actions form{margin:0}.admin-location-delete{min-height:36px;padding:0 11px;border:1px solid rgba(214,40,40,.4);border-radius:6px;background:rgba(214,40,40,.08);color:#ff7777;font-size:13px;font-weight:800;cursor:pointer}
.admin-location-empty{display:grid;place-items:center;gap:8px;padding:56px 24px;text-align:center}.admin-location-empty strong{color:#fff;font-size:18px}.admin-location-empty p{margin:0 0 8px;color:#7e8795}
.admin-location-modal{position:fixed;z-index:1200;inset:0;display:grid;place-items:center;padding:24px}.admin-location-modal-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(2,5,10,.82);backdrop-filter:blur(5px)}
.admin-location-modal-card{position:relative;z-index:1;width:min(1060px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#0e141e;box-shadow:0 30px 90px rgba(0,0,0,.55)}
.admin-location-modal-card>header{position:sticky;z-index:3;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(14,20,30,.96);backdrop-filter:blur(12px)}.admin-location-modal-card>header small{color:#d62828;font-size:13px;font-weight:900}.admin-location-modal-card>header h2{margin:3px 0;color:#fff;font-size:21px}.admin-location-modal-card>header p{margin:0;color:#7e8795;font-size:13px}.admin-location-modal-card>header>button{width:38px;height:38px;border:1px solid rgba(255,255,255,.1);border-radius:7px;background:#111722;color:#fff;font-size:24px;cursor:pointer}
.admin-location-form{display:grid;gap:20px;padding:20px}.admin-location-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-location-form-grid label{display:grid;gap:7px;color:#aeb4be;font-size:13px;font-weight:800}.admin-location-map-url{grid-column:1/-1}.admin-location-form-grid input,.admin-location-form-grid select,.admin-location-interval input{width:100%;min-height:40px;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:#080b12;color:#fff;padding:8px 10px;font:inherit;font-size:16px;outline:none}.admin-location-form-grid input:focus,.admin-location-form-grid select:focus,.admin-location-interval input:focus{border-color:rgba(214,40,40,.72);box-shadow:0 0 0 3px rgba(214,40,40,.1)}
.admin-location-resolver{display:flex;align-items:center;gap:10px;grid-column:1/-1}.admin-location-resolver small{color:#aeb4be;font-size:13px}.admin-location-active{display:flex!important;align-items:center;gap:10px!important;align-self:end;min-height:40px}.admin-location-active>b{color:#fff;font-size:13px}
.admin-location-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:13px;border:1px solid rgba(214,40,40,.25);border-radius:8px;background:rgba(214,40,40,.05)}.admin-location-preview span{display:grid;gap:4px}.admin-location-preview small{color:#7e8795;font-size:13px;font-weight:800}.admin-location-preview strong{color:#fff;font-size:14px;overflow-wrap:anywhere}.admin-location-preview strong.is-open{color:#64e3ad}.admin-location-preview strong.is-closed{color:#ff7777}.admin-location-preview p{grid-column:1/-1;margin:0;color:#f0b4b4;font-size:13px}
.admin-location-schedule-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.admin-location-schedule-head h3{margin:0;color:#fff;font-size:17px}.admin-location-schedule-head p{margin:4px 0 0;color:#7e8795;font-size:13px}.admin-location-schedule{display:grid;gap:8px}.admin-location-day{display:grid;grid-template-columns:170px 1fr;gap:12px;padding:12px;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:#111722}.admin-location-day>header{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.admin-location-day>header strong{color:#fff}.admin-location-day>header button,.admin-location-add-range{padding:0;border:0;background:transparent;color:#d62828;font-size:13px;font-weight:800;cursor:pointer}.admin-location-intervals{display:grid;gap:8px}.admin-location-interval{display:grid;grid-template-columns:minmax(110px,1fr) auto minmax(110px,1fr) 36px;align-items:center;gap:8px}.admin-location-interval>span{color:#7e8795}.admin-location-interval>button{width:36px;height:36px;border:1px solid rgba(214,40,40,.3);border-radius:6px;background:rgba(214,40,40,.08);color:#ff7777;font-size:20px;cursor:pointer}.admin-location-add-range{justify-self:start;margin-top:2px}.admin-location-closed{margin:0;align-self:center;color:#7e8795;font-size:13px;font-weight:700}.admin-location-form>footer{position:sticky;bottom:-20px;display:flex;justify-content:flex-end;gap:10px;margin:0 -20px -20px;padding:14px 20px;border-top:1px solid rgba(255,255,255,.08);background:rgba(14,20,30,.97);backdrop-filter:blur(12px)}
@media (max-width:980px){.admin-location-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-location-row{grid-template-columns:auto minmax(0,1fr);gap:10px}.admin-location-badges,.admin-location-actions{grid-column:2}.admin-location-actions{justify-content:flex-start}}
@media (max-width:720px){.admin-location-page .admin-panel-header-actions{width:100%}.admin-location-summary{grid-template-columns:1fr 1fr}.admin-location-list-head{flex-direction:column}.admin-location-modal{padding:8px}.admin-location-modal-card{max-height:calc(100vh - 16px)}.admin-location-form{padding:14px}.admin-location-form-grid,.admin-location-preview{grid-template-columns:1fr}.admin-location-preview p,.admin-location-map-url,.admin-location-resolver{grid-column:1}.admin-location-schedule-head{align-items:stretch;flex-direction:column}.admin-location-day{grid-template-columns:1fr}.admin-location-day>header{flex-direction:row;justify-content:space-between}.admin-location-interval{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) 34px}.admin-location-form>footer{bottom:-14px;margin:0 -14px -14px;padding:12px 14px;flex-wrap:wrap}.admin-location-row{padding:14px}.admin-location-badges,.admin-location-actions{grid-column:1/-1}.admin-location-state-dot{grid-row:1}.admin-location-main{grid-column:2}.admin-location-summary strong{font-size:15px}}

/* Masquer les informations professionnelles sur /contact */
.contact-page .contact-professional-card {
  display: none !important;
}

/* Keep Shopify checkout in the DOM but hide its cart payment choice. */
.cart-payment-grid > .cart-payment-option[hidden] { display: none !important; }

/* Conserver une marge autour de la fenêtre, même sur les écrans étroits. */
@media(max-width:600px){.direct-payment-backdrop{padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}}
@media(max-width:420px){.direct-payment-mvola{padding:20px 18px 12px}}

/* V049 — numéro distinct du profil dans le popup d'inscription tournoi. */
.tournament-mvola-payer-phone{color:#e9edf2;font-size:13px}
.tournament-mvola-payer-phone strong{font-size:13px;letter-spacing:.015em}
.tournament-mvola-payer-phone input{width:100%;min-height:44px!important;font-size:16px!important;border-color:rgba(215,224,234,.36)!important}
.tournament-mvola-payer-phone small{line-height:1.45;color:#c6ced7!important}
