/* ============================================================
   BPM 204 — SYSTÈME VISUEL UNIFORME
   Couche additive et réversible. Aucun composant fonctionnel
   radio, AutoDJ, social, billetterie, wallet ou média remplacé.
   ============================================================ */
body.bpm-design-v204{
  --bpm204-bg:#050914;
  --bpm204-bg-soft:#08101f;
  --bpm204-surface:rgba(12,20,37,.86);
  --bpm204-surface-strong:rgba(15,25,45,.96);
  --bpm204-surface-hover:rgba(20,33,57,.96);
  --bpm204-line:rgba(148,163,184,.15);
  --bpm204-line-blue:rgba(14,165,255,.32);
  --bpm204-text:#f5f7fb;
  --bpm204-muted:#94a3b8;
  --bpm204-muted-2:#64748b;
  --bpm204-blue:#0ea5ff;
  --bpm204-blue-2:#397dff;
  --bpm204-cyan:#22d3ee;
  --bpm204-green:#22c55e;
  --bpm204-red:#ef4444;
  --bpm204-amber:#f59e0b;
  --bpm204-purple:#a855f7;
  --bpm204-radius-sm:11px;
  --bpm204-radius:17px;
  --bpm204-radius-lg:24px;
  --bpm204-shadow:0 18px 55px rgba(0,0,0,.28);
  --bpm204-shadow-soft:0 10px 30px rgba(0,0,0,.18);
  background:
    radial-gradient(circle at 15% -10%,rgba(14,165,255,.13),transparent 28rem),
    radial-gradient(circle at 92% 16%,rgba(57,125,255,.08),transparent 30rem),
    var(--bpm204-bg);
  color:var(--bpm204-text);
}
body.bpm-design-v204::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.24;
  background-image:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);
  background-size:34px 34px;
  mask-image:linear-gradient(to bottom,black,transparent 72%);
}
.bpm-skip-link{position:fixed;left:16px;top:12px;z-index:99999;transform:translateY(-160%);padding:10px 14px;border-radius:12px;background:#fff;color:#07101f;font-weight:900;box-shadow:0 14px 38px rgba(0,0,0,.35);transition:transform .18s ease}
.bpm-skip-link:focus{transform:translateY(0)}
body.bpm-design-v204 .bpm-pjax-content{min-height:calc(100vh - 220px)}
body.bpm-design-v204 ::selection{background:rgba(14,165,255,.35);color:#fff}
body.bpm-design-v204 :focus-visible{outline:3px solid rgba(34,211,238,.9);outline-offset:3px}
body.bpm-design-v204 a,body.bpm-design-v204 button,body.bpm-design-v204 input,body.bpm-design-v204 select,body.bpm-design-v204 textarea{transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease,opacity .18s ease}

/* Navigation commune */
body.bpm-design-v204 .site-nav{
  min-height:64px;height:auto;padding:7px clamp(12px,2vw,28px);
  background:rgba(5,9,20,.88)!important;border-color:var(--bpm204-line)!important;
  box-shadow:0 12px 36px rgba(0,0,0,.22);backdrop-filter:blur(22px) saturate(135%);
}
body.bpm-design-v204 .nlink{min-height:38px;padding:8px 11px;border-radius:12px;color:#93a0b6;font-weight:700;font-size:12px}
body.bpm-design-v204 .nlink:hover{color:#fff;background:rgba(255,255,255,.055)}
body.bpm-design-v204 .nlink.active{color:#dff5ff;background:linear-gradient(135deg,rgba(14,165,255,.2),rgba(57,125,255,.12));box-shadow:inset 0 0 0 1px rgba(14,165,255,.16)}
body.bpm-design-v204 .nlink-admin{color:#fda4af!important}
body.bpm-design-v204 .bpm184-nav-action,body.bpm-design-v204 .notif-bell,body.bpm-design-v204 .bpm-quickmsg-toggle{border:1px solid var(--bpm204-line);background:rgba(255,255,255,.035);border-radius:12px;min-width:38px;min-height:38px;display:inline-flex;align-items:center;justify-content:center}
body.bpm-design-v204 .bpm184-nav-action:hover,body.bpm-design-v204 .notif-bell:hover,body.bpm-design-v204 .bpm-quickmsg-toggle:hover{color:#fff;background:rgba(14,165,255,.12);border-color:var(--bpm204-line-blue)}
body.bpm-design-v204 .bpm-navpanel,body.bpm-design-v204 .bpm-quickmsg-panel{border-color:var(--bpm204-line);background:rgba(5,10,22,.97);box-shadow:0 26px 80px rgba(0,0,0,.56)}

/* Conteneurs, cartes et sections anciennes/nouvelles */
body.bpm-design-v204 :where(.card,.section-card,.dash-card,.auto-card,.st-card,.pro-card,.pp-card,.post-card,.playlist-card,.event-card,.member-card,.artist-card,.artist-premium-card,.alb-card,.news-card,.article-une,.ic-card,.auth-card,.ticket-type-card,.msg-sidebar,.conv-main,.bpm183-card,.bpm195-card,.bpm197-panel,.bpm198-card,.bpm203-card){
  border-color:var(--bpm204-line)!important;
  background:linear-gradient(145deg,rgba(15,25,45,.91),rgba(8,15,29,.88))!important;
  box-shadow:var(--bpm204-shadow-soft);
}
body.bpm-design-v204 :where(.card,.section-card,.dash-card,.auto-card,.st-card,.pro-card,.pp-card,.post-card,.playlist-card,.event-card,.member-card,.artist-card,.artist-premium-card,.news-card,.article-une,.ic-card,.auth-card,.ticket-type-card,.msg-sidebar,.conv-main,.bpm183-card,.bpm195-card,.bpm197-panel,.bpm198-card,.bpm203-card){border-radius:var(--bpm204-radius)!important}
body.bpm-design-v204 :where(.card,.section-card,.dash-card,.post-card,.playlist-card,.event-card,.member-card,.artist-card,.alb-card,.news-card,.bpm183-card,.bpm195-card,.bpm198-card):hover{border-color:rgba(14,165,255,.29)!important;box-shadow:0 18px 48px rgba(0,0,0,.28)}
body.bpm-design-v204 :where(.card-h,.card-head,.section-card-title,.auto-head,.st-head,.bpm195-card-head,.bpm197-panel-head,.bpm203-card-head){border-bottom-color:var(--bpm204-line)!important;color:#fff}

/* Titres et en-têtes de pages */
body.bpm-design-v204 :where(.pg-ttl,.page-title,.sec-title,.section-title){color:#fff;letter-spacing:.02em}
body.bpm-design-v204 .pg-ttl{display:flex;align-items:center;gap:10px;padding:14px 0;margin-bottom:18px;font-size:clamp(1.45rem,2.4vw,2.15rem);font-weight:900}
body.bpm-design-v204 .pg-ttl i{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:rgba(14,165,255,.12);color:#7dd3fc;border:1px solid rgba(14,165,255,.18)}
body.bpm-design-v204 :where(.mini,.muted,.cs,.hint,.small,.bpm186-muted,.bpm195-muted){color:var(--bpm204-muted)!important}

/* Boutons */
body.bpm-design-v204 :where(.btn,.ab,.auto-btn,.st-btn,.tb-btn,.adm-btn){min-height:39px;border-radius:12px;font-weight:800;letter-spacing:.01em;justify-content:center}
body.bpm-design-v204 .btn-b{background:linear-gradient(135deg,var(--bpm204-blue),var(--bpm204-blue-2))!important;color:#fff!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:0 11px 28px rgba(14,165,255,.2)}
body.bpm-design-v204 .btn-b:hover{transform:translateY(-1px);filter:brightness(1.08);box-shadow:0 15px 34px rgba(14,165,255,.27)}
body.bpm-design-v204 .btn-o{background:rgba(255,255,255,.04)!important;color:#d5ddeb!important;border:1px solid var(--bpm204-line)!important}
body.bpm-design-v204 .btn-o:hover{background:rgba(14,165,255,.1)!important;color:#fff!important;border-color:var(--bpm204-line-blue)!important}
body.bpm-design-v204 .btn-g{background:rgba(34,197,94,.12)!important;color:#9af3b7!important;border:1px solid rgba(34,197,94,.27)!important}
body.bpm-design-v204 .btn-r{background:rgba(239,68,68,.12)!important;color:#fda4af!important;border:1px solid rgba(239,68,68,.27)!important}
body.bpm-design-v204 :where(.btn,.ab,.auto-btn,.st-btn,.tb-btn,.adm-btn):disabled{cursor:not-allowed;opacity:.48;transform:none!important;box-shadow:none!important}

/* Formulaires */
body.bpm-design-v204 :where(.inp,.auto-inp,.auto-sel,.st-inp,input[type="text"],input[type="email"],input[type="password"],input[type="search"],input[type="number"],input[type="url"],input[type="date"],input[type="datetime-local"],input[type="time"],select,textarea){
  border-color:var(--bpm204-line);background:rgba(2,8,20,.7);color:#eef4ff;border-radius:12px;min-height:42px;
}
body.bpm-design-v204 textarea{min-height:110px}
body.bpm-design-v204 :where(.inp,.auto-inp,.auto-sel,.st-inp,input[type="text"],input[type="email"],input[type="password"],input[type="search"],input[type="number"],input[type="url"],input[type="date"],input[type="datetime-local"],input[type="time"],select,textarea):focus{border-color:rgba(14,165,255,.75)!important;box-shadow:0 0 0 4px rgba(14,165,255,.11)!important;outline:none}
body.bpm-design-v204 :where(.lbl,.s-lbl,.field>label,.fg>label){color:#aab6c9;font-weight:800;letter-spacing:.045em}
body.bpm-design-v204 input[type="checkbox"],body.bpm-design-v204 input[type="radio"]{accent-color:var(--bpm204-blue)}
body.bpm-design-v204 input::placeholder,body.bpm-design-v204 textarea::placeholder{color:#536179}

/* Alertes, badges, états */
body.bpm-design-v204 .alert{border-radius:14px;padding:12px 14px;border-width:1px;box-shadow:0 8px 24px rgba(0,0,0,.12)}
body.bpm-design-v204 .alert-success{background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.26);color:#a7f3d0}
body.bpm-design-v204 .alert-danger,body.bpm-design-v204 .alert-err{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.27);color:#fecdd3}
body.bpm-design-v204 .alert-info{background:rgba(14,165,255,.1);border-color:rgba(14,165,255,.25);color:#bae6fd}
body.bpm-design-v204 :where(.st-badge,.role-tag,.badge-item,.nb-b,.bpm203-pill,.bpm203-type){border-radius:999px;font-weight:850;letter-spacing:.035em}

/* Tableaux */
body.bpm-design-v204 :where(.tbl-wrap,.table-wrap,.bpm-table-wrap){border:1px solid var(--bpm204-line);border-radius:16px;overflow:auto;background:rgba(4,10,22,.42)}
body.bpm-design-v204 :where(.tbl,.bpm-sec-table,.bpm203-table){width:100%;border-collapse:separate;border-spacing:0}
body.bpm-design-v204 :where(.tbl,.bpm-sec-table,.bpm203-table) th{position:sticky;top:0;z-index:2;background:#0c1628;color:#91d7ff;border-bottom:1px solid var(--bpm204-line);font-size:.72rem;text-transform:uppercase;letter-spacing:.075em}
body.bpm-design-v204 :where(.tbl,.bpm-sec-table,.bpm203-table) td{border-bottom-color:rgba(148,163,184,.09);color:#d6deec}
body.bpm-design-v204 :where(.tbl,.bpm-sec-table,.bpm203-table) tbody tr:hover td{background:rgba(14,165,255,.035)}

/* Modales, menus et états vides */
body.bpm-design-v204 :where(.modal,.modal-box,.dialog,.popup-card){border-color:var(--bpm204-line);background:var(--bpm204-surface-strong);border-radius:var(--bpm204-radius-lg);box-shadow:0 30px 90px rgba(0,0,0,.55)}
body.bpm-design-v204 :where(.wall-empty,.empty-state,.bpm197-empty,.bpm-navpanel-empty){border-radius:16px;color:var(--bpm204-muted)}
body.bpm-design-v204 :where(.wall-empty,.empty-state,.bpm197-empty) i{color:#63caff}

/* Footer et lecteur */
body.bpm-design-v204 .site-footer{border-color:var(--bpm204-line);background:linear-gradient(180deg,rgba(6,11,23,.8),rgba(3,7,15,.98))}
body.bpm-design-v204 .footer-col strong{color:#fff}.bpm-design-v204 .footer-col a{color:#8f9db2}.bpm-design-v204 .footer-col a:hover{color:#7dd3fc}
body.bpm-design-v204 .bpm-global-player{border-top-color:rgba(14,165,255,.22);background:rgba(5,10,22,.96);backdrop-filter:blur(22px) saturate(130%);box-shadow:0 -18px 48px rgba(0,0,0,.34)}
body.bpm-design-v204 .bpm194-mobile-nav{background:rgba(4,9,20,.95);border-color:var(--bpm204-line);backdrop-filter:blur(18px)}

/* Page de référence BPM 204 */
.bpm204-design-page{padding-bottom:130px}
.bpm204-design-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:24px 0;padding:30px;border:1px solid rgba(14,165,255,.24);border-radius:28px;background:radial-gradient(circle at 8% 0,rgba(14,165,255,.25),transparent 38%),linear-gradient(145deg,rgba(15,25,45,.98),rgba(5,10,22,.96));box-shadow:var(--bpm204-shadow)}
.bpm204-design-hero .eyebrow{display:flex;align-items:center;gap:8px;color:#7dd3fc;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:900}
.bpm204-design-hero h1{margin:.15rem 0 .45rem;font-size:clamp(2rem,5vw,4rem);line-height:.96}.bpm204-design-hero p{max-width:780px;color:#a5b3c8;line-height:1.6}.bpm204-hero-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.bpm204-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.bpm204-stats article{padding:18px;border:1px solid var(--bpm204-line);border-radius:18px;background:var(--bpm204-surface)}.bpm204-stats strong{display:block;color:#fff;font-size:1.65rem}.bpm204-stats span{color:var(--bpm204-muted);font-size:.82rem}
.bpm204-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:18px;align-items:start}.bpm204-main,.bpm204-side{display:flex;flex-direction:column;gap:18px}.bpm204-demo-card{padding:20px;border:1px solid var(--bpm204-line);border-radius:22px;background:var(--bpm204-surface);box-shadow:var(--bpm204-shadow-soft)}.bpm204-demo-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.bpm204-demo-head h2{display:flex;align-items:center;gap:9px;margin:0;color:#fff;font-size:1.08rem}.bpm204-demo-head span{padding:5px 9px;border-radius:999px;background:rgba(14,165,255,.12);color:#93dcff;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.bpm204-swatches{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.bpm204-swatch{min-height:86px;padding:10px;border-radius:15px;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;justify-content:flex-end}.bpm204-swatch strong{font-size:.76rem}.bpm204-swatch small{font-size:.66rem;color:rgba(255,255,255,.68)}
.bpm204-button-row,.bpm204-badge-row{display:flex;gap:9px;flex-wrap:wrap}.bpm204-form-demo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bpm204-form-demo .full{grid-column:1/-1}.bpm204-checks{display:flex;gap:14px;flex-wrap:wrap}.bpm204-audit-list{display:grid;gap:9px}.bpm204-audit-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--bpm204-line);border-radius:14px;background:rgba(2,8,20,.38)}.bpm204-audit-row strong{display:block;color:#fff}.bpm204-audit-row small{display:block;color:var(--bpm204-muted);font-size:.74rem}.bpm204-audit-state{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;font-size:.7rem;font-weight:900;background:rgba(34,197,94,.12);color:#9af3b7}.bpm204-audit-state.warn{background:rgba(245,158,11,.12);color:#fcd34d}
.bpm204-route-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.bpm204-route-list a{padding:10px 11px;border:1px solid var(--bpm204-line);border-radius:13px;color:#cbd5e1;background:rgba(2,8,20,.35);display:flex;align-items:center;gap:8px}.bpm204-route-list a:hover{color:#fff;border-color:var(--bpm204-line-blue);background:rgba(14,165,255,.08)}

@media(max-width:1120px){.bpm204-grid{grid-template-columns:1fr}.bpm204-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.bpm204-swatches{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){body.bpm-design-v204 .site-nav{min-height:58px;padding:5px 10px}.bpm204-design-hero{flex-direction:column;padding:22px;border-radius:22px}.bpm204-hero-actions,.bpm204-hero-actions .btn{width:100%}.bpm204-stats,.bpm204-side,.bpm204-form-demo{grid-template-columns:1fr}.bpm204-swatches{grid-template-columns:repeat(2,minmax(0,1fr))}.bpm204-route-list{grid-template-columns:1fr}.bpm204-demo-card{padding:16px;border-radius:18px}}
@media(prefers-reduced-motion:reduce){body.bpm-design-v204 *,body.bpm-design-v204 *::before,body.bpm-design-v204 *::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* ============================================================
   BPM 370 R14 — HARMONISATION GLOBALE DE L’INTERFACE
   Source centrale pour les dimensions, la hiérarchie, les
   formulaires et le responsive. Cette section n’est chargée que
   sur les pages normales; les contrôles radio protégés l’excluent.
   ============================================================ */
body.bpm-consistency-v370-r14{
  --bpm-r14-content-max:1280px;
  --bpm-r14-reading-max:820px;
  --bpm-r14-page-gutter:clamp(1rem,2.6vw,2rem);
  --bpm-r14-section-gap:clamp(1rem,2vw,1.4rem);
  --bpm-r14-title-size:clamp(1.8rem,3vw,2.35rem);
  --bpm-r14-section-title-size:clamp(1.15rem,1.8vw,1.45rem);
  --bpm-r14-copy-size:14px;
  --bpm-r14-small-size:12px;
  --bpm-r14-control-height:42px;
  --bpm-r14-card-padding:clamp(.9rem,1.7vw,1.2rem);
  --bpm-r14-mobile-nav-space:96px;
}
body.bpm-consistency-v370-r14 .bpm-pjax-content{
  width:100%;
  min-width:0;
  overflow-x:hidden;
  overflow-x:clip;
}
body.bpm-consistency-v370-r14 .bpm-pjax-content > main:not(.auth-page):not(.msg-main):not(.admin-main):not(.espace-main):not(.redac-main):not(.artistes-page):not(.members-page):not(.bpm218-discover):not(.bpm250-music-page):not(.bpm-wall-live-page){
  width:100%!important;
  max-width:var(--bpm-r14-content-max)!important;
  margin-inline:auto!important;
  padding-inline:var(--bpm-r14-page-gutter)!important;
}
body.bpm-consistency-v370-r14 .bpm-pjax-content > :where(.analytics-shell,.wallet-pro,.status214,.bpm212,.wix220,.bpm195-admin,.adm-wrap,.bpm204-design-page){
  width:min(100%,var(--bpm-r14-content-max));
  max-width:var(--bpm-r14-content-max)!important;
  margin-inline:auto!important;
  padding-inline:var(--bpm-r14-page-gutter)!important;
}
body.bpm-consistency-v370-r14 :where(.bpm-r14-standard-page,.bpm-r14-state-page){
  box-sizing:border-box;
}

/* Hiérarchie typographique commune */
body.bpm-consistency-v370-r14 .bpm-pjax-content > main > h1:first-child,
body.bpm-consistency-v370-r14 :where(.pg-ttl,.page-title,.members-title,.wallet-title,.analytics-title,.bpm-r14-page-title,.bpm-r14-state-title){
  margin:0 0 .65rem!important;
  color:#fff!important;
  font-family:var(--head)!important;
  font-size:var(--bpm-r14-title-size)!important;
  font-weight:800!important;
  line-height:1.08!important;
  letter-spacing:.025em!important;
  overflow-wrap:anywhere;
}

body.bpm-consistency-v370-r14 .bpm-pjax-content :where(
  .bpm215-hero,.bpm270-hero,.bpm280-hero,.platform-hero,.bpm198-hero,
  .bpm260-page-hero,.bpm290-hero,.bpm300-page-hero,.bpm-security-hero,
  .status214-hero,.bpm212-hero,.wix220-hero,.bpm195-hero,.bpm200-hero,
  .bpm201-email-hero,.bpm203-media-hero,.bpm208-admin-hero,.bpm209-hero,
  .bpm210-hero,.bpm211-hero,.bpm213-hero,.bpm214-hero,.support-hero,
  .seo-hero,.pay-hero,.integral-hero,.bpm-test-hero
) h1{
  margin:.2rem 0 .65rem!important;
  color:#fff!important;
  font-family:var(--head)!important;
  font-size:var(--bpm-r14-title-size)!important;
  font-weight:800!important;
  line-height:1.08!important;
  letter-spacing:.025em!important;
}

/* Les anciens gabarits utilisent plusieurs noms de héros. Cette règle
   harmonise leurs titres sans altérer les héros musicaux spécialisés. */
body.bpm-consistency-v370-r14 .bpm-pjax-content :where(header,section,div)[class*="-hero"]:not(.bpm183-radio-hero):not(.bpm250-release-hero):not(.bpm192-premium-hero) h1{
  margin:.2rem 0 .65rem!important;
  color:#fff!important;
  font-family:var(--head)!important;
  font-size:var(--bpm-r14-title-size)!important;
  font-weight:800!important;
  line-height:1.08!important;
  letter-spacing:.025em!important;
  overflow-wrap:anywhere;
}

body.bpm-consistency-v370-r14 :where(.pg-ttl,.bpm-r14-page-title){
  display:flex;
  align-items:center;
  gap:.7rem;
  flex-wrap:wrap;
}
body.bpm-consistency-v370-r14 :where(.pg-ttl,.bpm-r14-page-title) > i{
  flex:0 0 auto;
  color:var(--bb);
  font-size:.9em!important;
}
body.bpm-consistency-v370-r14 :where(.card-head,.card-h,.section-card-title,.profile-section-title,.ana-head h2,.wallet-card-pro h2,.status214-section h2,.bpm-r14-section-title){
  color:#fff;
  font-size:var(--bpm-r14-section-title-size)!important;
  line-height:1.25;
  letter-spacing:.01em;
  overflow-wrap:anywhere;
}
body.bpm-consistency-v370-r14 .bpm-pjax-content :where(p,li,dd,.art-content,.bpm-r14-page-lead){
  line-height:1.65;
}
body.bpm-consistency-v370-r14 .bpm-pjax-content :where(p,li,dd,td,th,label,small,span,strong,a,button){
  overflow-wrap:anywhere;
}
body.bpm-consistency-v370-r14 :where(.bpm-r14-page-lead,.analytics-sub,.status214-sub){
  max-width:var(--bpm-r14-reading-max);
  margin:.15rem 0 1rem;
  color:var(--muted);
  font-size:var(--bpm-r14-copy-size)!important;
}
body.bpm-consistency-v370-r14 :where(.mini,.muted,.hint,.small,.cs,.ana-note,.wallet-card-pro p,.status214-card p){
  line-height:1.5;
}

/* En-têtes de pages et états */
body.bpm-consistency-v370-r14 .bpm-r14-page-hero{
  margin:1rem 0 var(--bpm-r14-section-gap);
  padding:clamp(1.1rem,2.4vw,1.65rem);
  border:1px solid var(--bpm204-line);
  border-radius:var(--bpm204-radius-lg);
  background:
    radial-gradient(circle at 12% 0,rgba(14,165,255,.19),transparent 38%),
    linear-gradient(145deg,rgba(15,25,45,.94),rgba(5,10,22,.93));
  box-shadow:var(--bpm204-shadow-soft);
}
body.bpm-consistency-v370-r14 .bpm-r14-page-hero-news{
  border-color:rgba(20,184,166,.23);
}
body.bpm-consistency-v370-r14 .bpm-r14-filter-row{
  display:flex;
  align-items:center;
  gap:.5rem;
  flex-wrap:wrap;
}
body.bpm-consistency-v370-r14 .bpm-r14-state-page{
  min-height:60vh;
  display:grid;
  place-items:center;
  padding:clamp(1.25rem,4vw,3rem)!important;
  text-align:center;
}
body.bpm-consistency-v370-r14 .bpm-r14-state-card{
  width:min(100%,620px);
  margin:0 auto;
  padding:clamp(1.35rem,3vw,2rem)!important;
}
body.bpm-consistency-v370-r14 .bpm-r14-state-card > p{
  max-width:520px;
  margin:.55rem auto 1.2rem;
  color:var(--muted);
}
body.bpm-consistency-v370-r14 .bpm-r14-narrow-card{
  width:min(100%,820px);
  margin-inline:auto;
  padding:var(--bpm-r14-card-padding)!important;
}

/* Cartes, sections et espaces réguliers */
body.bpm-consistency-v370-r14 :where(.card,.section-card,.dash-card,.pp-card,.post-card,.playlist-card,.event-card,.member-card,.news-card,.ic-card,.ana-card,.wallet-card-pro,.status214-card,.status214-section){
  min-width:0;
}
body.bpm-consistency-v370-r14 :where(.card,.section-card,.dash-card,.pp-card,.ana-card,.wallet-card-pro,.status214-card,.status214-section) > :first-child{
  margin-top:0;
}
body.bpm-consistency-v370-r14 :where(.card-head,.card-h,.section-card-title){
  min-height:46px;
  display:flex;
  align-items:center;
  gap:.55rem;
}
body.bpm-consistency-v370-r14 :where(.card-head,.card-h,.section-card-title) > :last-child:not(:first-child){
  margin-left:auto;
}
body.bpm-consistency-v370-r14 :where(.wall-empty,.empty-state,.ana-empty,.status214-empty,.bpm-r14-empty){
  min-height:92px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:.4rem;
  padding:1rem;
  text-align:center;
  line-height:1.55;
}

/* Formulaires cohérents */
body.bpm-consistency-v370-r14 form :where(.fg,.field,label){
  min-width:0;
}
body.bpm-consistency-v370-r14 form label:has(> input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),> select,> textarea){
  display:flex;
  flex-direction:column;
  gap:.35rem;
}
body.bpm-consistency-v370-r14 form :where(.lbl,.s-lbl,.field>label,.fg>label,label>span:first-child){
  font-size:var(--bpm-r14-small-size)!important;
  line-height:1.35;
}
body.bpm-consistency-v370-r14 form :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea,.inp){
  width:100%;
  max-width:100%;
  min-height:var(--bpm-r14-control-height);
  font-size:13px;
  line-height:1.4;
}
body.bpm-consistency-v370-r14 form textarea{
  min-height:112px;
  resize:vertical;
}
body.bpm-consistency-v370-r14 form :where(small,.hint,.help,.form-help,.field-help){
  display:block;
  margin-top:.35rem;
  color:var(--muted);
  font-size:var(--bpm-r14-small-size)!important;
  line-height:1.45;
}
body.bpm-consistency-v370-r14 :where(.fg2,.fg3,.form-grid,.radio-form-grid){
  align-items:start;
}
body.bpm-consistency-v370-r14 :where(.btn,.ab,.adm-btn,.bpm215-btn,.bpm270-btn,.bpm280-btn){
  min-height:40px;
  font-size:13px;
  line-height:1.2;
}
body.bpm-consistency-v370-r14 :where(.btn-row,.form-actions,.bpm215-actions,.bpm204-button-row,.analytics-actions,.ph-actions){
  display:flex;
  align-items:center;
  gap:.55rem;
  flex-wrap:wrap;
}

/* Tableaux et données */
body.bpm-consistency-v370-r14 :where(.tbl-wrap,.table-wrap,.bpm-table-wrap){
  max-width:100%;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}
body.bpm-consistency-v370-r14 .bpm-pjax-content table{
  max-width:100%;
}
body.bpm-consistency-v370-r14 .bpm-pjax-content table :where(th,td){
  line-height:1.45;
  vertical-align:middle;
}
body.bpm-consistency-v370-r14 .bpm-pjax-content table th{
  font-size:11px;
}
body.bpm-consistency-v370-r14 .bpm-pjax-content table td{
  font-size:13px;
}

/* Médias, textes longs et contenu généré */
body.bpm-consistency-v370-r14 .bpm-pjax-content :where(img,video,iframe,canvas,svg){
  max-width:100%;
}
body.bpm-consistency-v370-r14 .bpm-pjax-content :where(.art-content,.post-desc,.c-text,.msg-text,.support-message,.bpm215-legal-copy){
  overflow-wrap:anywhere;
  word-break:normal;
}
body.bpm-consistency-v370-r14 .bpm-pjax-content code{
  max-width:100%;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

/* Administration : même rythme que le site, sans toucher aux contrôles radio. */
body.bpm-consistency-v370-r14 .admin-main{
  min-width:0;
  padding:clamp(.85rem,2vw,1.5rem)!important;
}
body.bpm-consistency-v370-r14 .admin-main .pg-ttl{
  min-height:64px;
  padding:1rem 1.1rem!important;
}
body.bpm-consistency-v370-r14 .admin-main :where(.card,.admin-module-card,.sc){
  min-width:0;
}
body.bpm-consistency-v370-r14 .admin-main :where(.stats-row,.admin-kpi-row,.admin-module-grid){
  gap:.8rem;
}

/* Petits écrans */
@media(max-width:900px){
  body.bpm-consistency-v370-r14{
    --bpm-r14-page-gutter:.9rem;
    --bpm-r14-title-size:clamp(1.65rem,6vw,2rem);
  }
  body.bpm-consistency-v370-r14 .bpm-pjax-content > main:not(.auth-page):not(.msg-main):not(.admin-main):not(.espace-main):not(.redac-main):not(.artistes-page):not(.members-page):not(.bpm218-discover):not(.bpm250-music-page):not(.bpm-wall-live-page){
    padding-inline:var(--bpm-r14-page-gutter)!important;
  }
  body.bpm-consistency-v370-r14 :where(.fg2,.fg3,.form-grid,.radio-form-grid){
    grid-template-columns:1fr!important;
  }
  body.bpm-consistency-v370-r14 .bpm-pjax-content table:not(.bpm-calendar-grid){
    display:block;
    width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
  body.bpm-consistency-v370-r14 :where(.analytics-hero,.wallet-top,.status214-card-head,.bpm-r14-page-hero){
    align-items:flex-start;
  }
}
@media(max-width:760px){
  body.bpm-consistency-v370-r14 .bpm-pjax-content{
    padding-bottom:var(--bpm-r14-mobile-nav-space);
  }
  body.bpm-consistency-v370-r14 :where(.bpm-r14-page-hero,.bpm-r14-state-card,.bpm-r14-narrow-card){
    border-radius:18px!important;
  }
  body.bpm-consistency-v370-r14 :where(.btn-row,.form-actions,.bpm215-actions,.analytics-actions,.ph-actions){
    align-items:stretch;
  }
  body.bpm-consistency-v370-r14 :where(.btn-row,.form-actions,.bpm215-actions,.analytics-actions) > :where(.btn,button,a){
    flex:1 1 160px;
    justify-content:center;
  }
  body.bpm-consistency-v370-r14 form :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea,.inp){
    font-size:16px!important;
  }
  body.bpm-consistency-v370-r14 .bpm-r14-filter-row{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.bpm-consistency-v370-r14 .bpm-r14-filter-row .btn{
    width:100%;
  }
  body.bpm-consistency-v370-r14 .admin-main{
    padding:.75rem .75rem 6rem!important;
  }
}
@media(max-width:430px){
  body.bpm-consistency-v370-r14{
    --bpm-r14-page-gutter:.7rem;
    --bpm-r14-card-padding:.85rem;
  }
  body.bpm-consistency-v370-r14 .bpm-r14-filter-row{
    grid-template-columns:1fr;
  }
  body.bpm-consistency-v370-r14 .bpm-pjax-content table :where(th,td){
    padding:.6rem .7rem;
  }
}
