/* ========================================================================== 
   BS LOCATION — DESIGN SYSTEM v6.1
   Correctif global de lisibilité, contrastes et cohérence visuelle.
   Chargé APRES design-system-v6.css.
   Objectif : aucun texte hérité illisible sur une surface claire/sombre.
   ========================================================================== */

/* 1. CONTRASTE RENFORCE DES TOKENS --------------------------------------- */
html[data-ui-theme="light"],
html[data-bs-theme="light"] {
    --ui-bg: #f3f6fa;
    --ui-bg-elevated: #edf2f7;
    --ui-surface: #ffffff;
    --ui-surface-2: #f7f9fc;
    --ui-surface-3: #edf2f7;
    --ui-border: #dde5ed;
    --ui-border-strong: #cbd6e1;
    --ui-text: #172235;
    --ui-text-2: #45566d;
    --ui-text-3: #66778d;
    --ui-title: #0f1b2d;
    --ui-link: #145f9c;
    --ui-link-hover: #b74c0b;
    --ui-action: #cc560c;
    --ui-action-hover: #b94b08;
    --ui-on-action: #ffffff;
}

html[data-ui-theme="dark"],
html[data-bs-theme="dark"] {
    --ui-bg: #080f17;
    --ui-bg-elevated: #0c151f;
    --ui-surface: #101a25;
    --ui-surface-2: #162230;
    --ui-surface-3: #1b2a3a;
    --ui-border: rgba(224,234,244,.12);
    --ui-border-strong: rgba(224,234,244,.20);
    --ui-text: #f0f4f8;
    --ui-text-2: #c0cad6;
    --ui-text-3: #94a3b5;
    --ui-title: #ffffff;
    --ui-link: #82c4f2;
    --ui-link-hover: #ffb27d;
    --ui-action: #ff8736;
    --ui-action-hover: #ff9a59;
    --ui-on-action: #111922;
}

body.bs-app {
    color: var(--ui-text) !important;
    font-weight: 500;
}
.bs-app h1,.bs-app h2,.bs-app h3,.bs-app h4,.bs-app h5,.bs-app h6 {
    color: var(--ui-title) !important;
    text-wrap: balance;
}
.bs-app p,.bs-app .small,.bs-app small { color: inherit; }
.bs-app .text-muted,.bs-app .text-secondary { color: var(--ui-text-2) !important; }
.bs-app .form-text { color: var(--ui-text-3) !important; opacity: 1 !important; }
.bs-app .eyebrow,.bs-app .section-kicker {
    color: var(--brand-orange-deep) !important;
    font-weight: 850 !important;
    letter-spacing: .105em;
}
html[data-ui-theme="dark"] .bs-app .eyebrow,
html[data-ui-theme="dark"] .bs-app .section-kicker { color: #ffad78 !important; }

/* 2. CONTRAT DE SURFACE : COMPOSANTS SOMBRES FIXES ---------------------- */
/* Ces blocs restent sombres quel que soit le thème : leurs textes ne doivent
   JAMAIS hériter de --ui-title du thème clair. */
.bs-app .auth-brand-panel,
.bs-app .partner-register-intro,
.bs-app .partner-subscription-hero,
.bs-app .partner-exec-kpi.revenue,
.bs-app .partner-admin-kpi.dark,
.bs-app .client-highlight {
    color: #f5f8fb !important;
}
.bs-app .auth-brand-panel h1,.bs-app .auth-brand-panel h2,.bs-app .auth-brand-panel h3,
.bs-app .partner-register-intro h1,.bs-app .partner-register-intro h2,.bs-app .partner-register-intro h3,
.bs-app .partner-subscription-hero h1,.bs-app .partner-subscription-hero h2,.bs-app .partner-subscription-hero h3,
.bs-app .partner-exec-kpi.revenue h1,.bs-app .partner-exec-kpi.revenue h2,.bs-app .partner-exec-kpi.revenue h3,
.bs-app .partner-admin-kpi.dark h1,.bs-app .partner-admin-kpi.dark h2,.bs-app .partner-admin-kpi.dark h3,
.bs-app .client-highlight h1,.bs-app .client-highlight h2,.bs-app .client-highlight h3,.bs-app .client-highlight h4,
.bs-app .auth-brand-panel strong,.bs-app .partner-register-intro strong,
.bs-app .partner-subscription-hero strong,.bs-app .partner-exec-kpi.revenue strong,
.bs-app .partner-admin-kpi.dark strong,.bs-app .client-highlight strong {
    color: #ffffff !important;
}
.bs-app .auth-brand-panel p,.bs-app .auth-brand-panel span,
.bs-app .partner-register-intro p,.bs-app .partner-register-intro small,
.bs-app .partner-subscription-hero p,.bs-app .partner-subscription-hero span,
.bs-app .partner-exec-kpi.revenue span,.bs-app .partner-exec-kpi.revenue small,
.bs-app .partner-admin-kpi.dark span,.bs-app .partner-admin-kpi.dark small,
.bs-app .client-highlight p,.bs-app .client-highlight span {
    color: #c6d0dc !important;
}
.bs-app .auth-brand-panel .auth-brand-copy { color:#c4ceda !important; }
.bs-app .auth-brand-panel .auth-feature { color:#e3e9ef !important; }
.bs-app .auth-brand-panel .auth-feature span { color:#e3e9ef !important; }
.bs-app .partner-register-intro .lead { color:#d0d8e3 !important; }
.bs-app .partner-register-benefits strong { color:#ffffff !important; }
.bs-app .partner-register-benefits small { color:#b8c5d4 !important; }
.bs-app .partner-register-note,.bs-app .partner-register-note span { color:#d2dbe5 !important; }
.bs-app .partner-subscription-hero .partner-kicker { color:#ffbe91 !important; opacity:1 !important; }
.bs-app .partner-subscription-hero .subscription-days span { color:#d7e0e9 !important; opacity:1 !important; }

/* 3. AUTHENTIFICATION / CREATION DE COMPTE ------------------------------ */
.public-page .auth-page {
    min-height: calc(100vh - 76px);
    display: flex;
    align-items: center;
}
.public-page .auth-shell {
    border-radius: 30px !important;
    overflow: hidden;
}
.public-page .auth-brand-panel {
    background:
      radial-gradient(circle at 18% 12%,rgba(255,128,47,.27),transparent 28%),
      radial-gradient(circle at 90% 88%,rgba(34,126,190,.20),transparent 31%),
      linear-gradient(145deg,#0e1824,#071019 68%,#0b1721) !important;
}
.public-page .auth-brand-logo { filter:none !important; height:55px; }
.public-page .auth-brand-title {
    color:#fff !important;
    font-size:clamp(2rem,3.2vw,2.65rem) !important;
    line-height:1.08;
    letter-spacing:-.04em;
}
.public-page .auth-form-panel {
    color:var(--ui-text) !important;
    background:var(--ui-surface) !important;
}
.public-page .auth-form-panel .auth-title { color:var(--ui-title) !important; }
.public-page .auth-form-panel .auth-subtitle { color:var(--ui-text-2) !important; }
.public-page .auth-form-panel label,
.public-page .auth-form-panel .form-label {
    color:var(--ui-text-2) !important;
    font-weight:780 !important;
}
.public-page .auth-form-panel .form-control,
.public-page .auth-form-panel .form-select {
    color:var(--ui-text) !important;
    background:var(--ui-input) !important;
    border-color:var(--ui-border-strong) !important;
}
.public-page .auth-form-panel .form-control::placeholder { color:var(--ui-text-3) !important; opacity:1; }
.public-page .auth-form-panel a:not(.btn) { color:var(--ui-link) !important; }
.public-page .auth-form-panel a:not(.btn):hover { color:var(--ui-link-hover) !important; }

/* 4. INSCRIPTION PARTENAIRE PUBLIQUE ------------------------------------ */
.public-page .partner-register-wrap {
    color:var(--ui-text) !important;
    background:
      radial-gradient(circle at 0 0,color-mix(in srgb,var(--brand-orange) 9%,transparent),transparent 32%),
      var(--ui-bg) !important;
}
.public-page .partner-register-intro {
    background:
      radial-gradient(circle at 9% 6%,rgba(255,126,45,.16),transparent 30%),
      linear-gradient(150deg,#101b28,#08111b 68%,#0c1823) !important;
    border:1px solid rgba(255,255,255,.08) !important;
}
.public-page .partner-register-intro > .partner-kicker { color:#ffae78 !important; }
.public-page .partner-register-form {
    color:var(--ui-text) !important;
    background:var(--ui-surface) !important;
    border:1px solid var(--ui-border) !important;
    box-shadow:var(--ui-shadow-2) !important;
}
.public-page .partner-register-form h2 { color:var(--ui-title) !important; }
.public-page .partner-register-form p { color:var(--ui-text-2) !important; }
.public-page .partner-register-form .form-label { color:var(--ui-text-2) !important; }
.public-page .partner-register-form .partner-check {
    color:var(--ui-text-2) !important;
    background:var(--ui-surface-2) !important;
    border:1px solid var(--ui-border) !important;
    border-radius:13px;
    padding:.85rem 1rem;
}

/* 5. ESPACE PARTENAIRE --------------------------------------------------- */
.partner-page .partner-page-head h1,
.partner-page .partner-panel-head h2,
.partner-page .partner-panel-head h3,
.partner-page .partner-kpi strong,
.partner-page .partner-activity strong,
.partner-page .subscription-plan-card h2,
.partner-page .subscription-plan-card h3 {
    color:var(--ui-title) !important;
}
.partner-page .partner-page-head p,
.partner-page .partner-panel-head p,
.partner-page .partner-kpi span,
.partner-page .partner-kpi small,
.partner-page .partner-activity span,
.partner-page .subscription-plan-card p,
.partner-page .subscription-features {
    color:var(--ui-text-2) !important;
}
.partner-page .partner-subscription-hero {
    background:
      radial-gradient(circle at 88% 12%,rgba(255,135,54,.20),transparent 28%),
      linear-gradient(135deg,#0b1723,#173149) !important;
    border:1px solid rgba(255,162,101,.14) !important;
    box-shadow:0 22px 54px rgba(8,20,32,.18) !important;
}
.partner-page .partner-subscription-hero h2 {
    color:#fff !important;
    font-size:clamp(1.65rem,2.3vw,2.15rem) !important;
    font-weight:850 !important;
}
.partner-page .partner-subscription-hero p { color:#d5dee8 !important; }
.partner-page .subscription-days {
    color:#fff !important;
    background:rgba(255,255,255,.10) !important;
    border-color:rgba(255,255,255,.18) !important;
}
.partner-page .subscription-days strong { color:#fff !important; }
.partner-page .subscription-plan-card {
    color:var(--ui-text) !important;
    background:var(--ui-surface) !important;
    border-color:var(--ui-border) !important;
}
.partner-page .subscription-price { color:var(--brand-orange) !important; }
.partner-page .subscription-price span { color:var(--ui-text-2) !important; }
.partner-page .partner-activity {
    color:var(--ui-text) !important;
    background:transparent !important;
}
.partner-page .partner-activity:hover { background:var(--ui-hover) !important; }
.partner-page .partner-activity .activity-icon {
    color:var(--brand-orange-deep) !important;
    background:var(--brand-orange-soft) !important;
}
html[data-ui-theme="dark"] .partner-page .partner-activity .activity-icon { color:#ffad78 !important; }

/* 6. TABLEAU CROISE — SURFACES 100 % THEMEES ---------------------------- */
body.bs-app.dashboard-page .pivot-page .pivot-hero {
    color:var(--ui-text) !important;
    background:linear-gradient(135deg,var(--ui-surface),color-mix(in srgb,var(--brand-orange-soft) 30%,var(--ui-surface))) !important;
    border-color:var(--ui-border) !important;
    box-shadow:var(--ui-shadow-2) !important;
}
body.bs-app.dashboard-page .pivot-page .pivot-hero h1 { color:var(--ui-title) !important; }
body.bs-app.dashboard-page .pivot-page .pivot-hero p { color:var(--ui-text-2) !important; }
body.bs-app.dashboard-page .pivot-page .pivot-chip {
    color:var(--brand-orange-deep) !important;
    background:var(--brand-orange-soft) !important;
    border-color:color-mix(in srgb,var(--brand-orange) 28%,var(--ui-border)) !important;
}
html[data-ui-theme="dark"] body.bs-app.dashboard-page .pivot-page .pivot-chip { color:#ffb27e !important; }
body.bs-app.dashboard-page .pivot-page .pivot-toolbar,
body.bs-app.dashboard-page .pivot-page .pivot-card,
body.bs-app.dashboard-page .pivot-page .pivot-card-head {
    color:var(--ui-text) !important;
    background:var(--ui-surface) !important;
    border-color:var(--ui-border) !important;
    box-shadow:var(--ui-shadow-1) !important;
}
body.bs-app.dashboard-page .pivot-page .pivot-toolbar {
    background:linear-gradient(180deg,var(--ui-surface),var(--ui-surface-2)) !important;
}
body.bs-app.dashboard-page .pivot-page .pivot-help,
body.bs-app.dashboard-page .pivot-page .pivot-card-meta { color:var(--ui-text-2) !important; }
body.bs-app.dashboard-page .pivot-page .pivot-section-title h2 { color:var(--ui-title) !important; }
body.bs-app.dashboard-page .pivot-page .pivot-section-title .badge {
    color:var(--brand-orange-deep) !important;
    background:var(--brand-orange-soft) !important;
    border-color:color-mix(in srgb,var(--brand-orange) 28%,var(--ui-border)) !important;
}
html[data-ui-theme="dark"] body.bs-app.dashboard-page .pivot-page .pivot-section-title .badge { color:#ffb27e !important; }
body.bs-app.dashboard-page .pivot-page .pivot-wrap {
    color:var(--ui-text) !important;
    background:var(--ui-surface-2) !important;
    border-color:var(--ui-border) !important;
}
body.bs-app.dashboard-page .pivot-page .pivot-table { color:var(--ui-text) !important; }
body.bs-app.dashboard-page .pivot-page .pivot-table th,
body.bs-app.dashboard-page .pivot-page .pivot-table td {
    border-right-color:var(--ui-border) !important;
    border-bottom-color:var(--ui-border) !important;
}
body.bs-app.dashboard-page .pivot-page .pivot-table td,
body.bs-app.dashboard-page .pivot-page .pivot-table .pivot-bien {
    color:var(--ui-text) !important;
    background:var(--ui-surface) !important;
}
body.bs-app.dashboard-page .pivot-page .pivot-table tbody tr:nth-child(even) td,
body.bs-app.dashboard-page .pivot-page .pivot-table tbody tr:nth-child(even) .pivot-bien {
    background:var(--ui-surface-2) !important;
}
body.bs-app.dashboard-page .pivot-page .pivot-table tbody tr:hover td,
body.bs-app.dashboard-page .pivot-page .pivot-table tbody tr:hover .pivot-bien {
    color:var(--ui-title) !important;
    background:var(--ui-hover) !important;
}
body.bs-app.dashboard-page .pivot-page .pivot-table thead .pivot-bien,
body.bs-app.dashboard-page .pivot-page .pivot-year-head,
body.bs-app.dashboard-page .pivot-page .pivot-root-head {
    color:#fff !important;
    background:linear-gradient(180deg,#183550,#10263a) !important;
    border-color:#29445e !important;
}
body.bs-app.dashboard-page .pivot-page .pivot-quarter-head {
    color:#fff !important;
    background:linear-gradient(180deg,#f48736,#d96518) !important;
}
body.bs-app.dashboard-page .pivot-page .pivot-root-total,
body.bs-app.dashboard-page .pivot-page .pivot-year-total,
body.bs-app.dashboard-page .pivot-page .pivot-month-head,
body.bs-app.dashboard-page .pivot-page .pivot-metric-head {
    color:var(--ui-text-2) !important;
    background:var(--ui-surface-3) !important;
}
body.bs-app.dashboard-page .pivot-page .pivot-quarter-total {
    color:var(--brand-orange-deep) !important;
    background:var(--brand-orange-soft) !important;
}
html[data-ui-theme="dark"] body.bs-app.dashboard-page .pivot-page .pivot-quarter-total { color:#ffb27e !important; }
body.bs-app.dashboard-page .pivot-page .pivot-money { color:var(--brand-orange-deep) !important; }
html[data-ui-theme="dark"] body.bs-app.dashboard-page .pivot-page .pivot-money { color:#ffad78 !important; }
body.bs-app.dashboard-page .pivot-page .pivot-zero { color:var(--ui-text-3) !important; }
body.bs-app.dashboard-page .pivot-page .pivot-empty { color:var(--ui-text-2) !important; background:var(--ui-surface) !important; }
body.bs-app.dashboard-page .pivot-page .pivot-total-row td,
body.bs-app.dashboard-page .pivot-page .pivot-total-row .pivot-bien {
    color:#6f2a06 !important;
    background:linear-gradient(180deg,#ffe7d6,#ffd8bc) !important;
    border-top-color:#ed9a5b !important;
}
html[data-ui-theme="dark"] body.bs-app.dashboard-page .pivot-page .pivot-total-row td,
html[data-ui-theme="dark"] body.bs-app.dashboard-page .pivot-page .pivot-total-row .pivot-bien {
    color:#ffd0ae !important;
    background:linear-gradient(180deg,#3a2519,#312015) !important;
    border-top-color:#a95c2c !important;
}
html[data-ui-theme="dark"] body.bs-app.dashboard-page .pivot-page .pivot-total-row .pivot-money,
html[data-ui-theme="dark"] body.bs-app.dashboard-page .pivot-page .pivot-total-row .pivot-number,
html[data-ui-theme="dark"] body.bs-app.dashboard-page .pivot-page .pivot-total-row .pivot-zero { color:#ffd0ae !important; }
body.bs-app.dashboard-page .pivot-page .pivot-card:fullscreen,
body.bs-app.dashboard-page .pivot-page .pivot-card.pivot-fullscreen-fallback,
body.bs-app.dashboard-page .pivot-page .pivot-card:fullscreen .pivot-wrap,
body.bs-app.dashboard-page .pivot-page .pivot-card.pivot-fullscreen-fallback .pivot-wrap {
    background:var(--ui-bg) !important;
}
body.bs-app.dashboard-page .pivot-page .pivot-card:fullscreen .pivot-card-head,
body.bs-app.dashboard-page .pivot-page .pivot-card.pivot-fullscreen-fallback .pivot-card-head { background:var(--ui-surface) !important; }

/* 7. BACK-OFFICE GENERIQUE / PARTENAIRES / FINANCES --------------------- */
.dashboard-page .page-heading h1,
.dashboard-page .partner-admin-page h1,
.dashboard-page .partner-admin-page h2,
.dashboard-page .partner-admin-page h3,
.dashboard-page .premium-panel-title,
.dashboard-page .chart-card-title { color:var(--ui-title) !important; }
.dashboard-page .page-heading p,
.dashboard-page .partner-admin-page p,
.dashboard-page .premium-panel-subtitle,
.dashboard-page .chart-card-note { color:var(--ui-text-2) !important; }
.dashboard-page .partner-admin-kpi.dark { color:#fff !important; }
.dashboard-page .partner-admin-kpi.dark .partner-admin-kpi-label,
.dashboard-page .partner-admin-kpi.dark small { color:#c4d0dc !important; }
.dashboard-page .partner-admin-kpi.dark .partner-admin-kpi-value,
.dashboard-page .partner-admin-kpi.dark strong { color:#fff !important; }
.dashboard-page .partner-exec-kpi.revenue strong { color:#fff !important; }
.dashboard-page .partner-exec-kpi.revenue span,
.dashboard-page .partner-exec-kpi.revenue small { color:#c4d0dc !important; }
.dashboard-page .partner-pivot-table tfoot th { color:var(--brand-orange-deep) !important; background:var(--brand-orange-soft) !important; }
html[data-ui-theme="dark"] .dashboard-page .partner-pivot-table tfoot th { color:#ffc39a !important; background:#322319 !important; }

/* 8. GPS : PANNEAUX SOMBRES ET MODE CLAIR ------------------------------- */
html[data-ui-theme="dark"] .dashboard-page .gps-kpi,
html[data-ui-theme="dark"] .dashboard-page .gps-map-card,
html[data-ui-theme="dark"] .dashboard-page .gps-list-card,
html[data-ui-theme="dark"] .dashboard-page .gps-alert-card,
html[data-ui-theme="dark"] .dashboard-page .gps-alert-kpi,
html[data-ui-theme="dark"] .dashboard-page .gps-info {
    color:#edf3f8 !important;
    background:#0f1924 !important;
    border-color:rgba(255,255,255,.09) !important;
}
html[data-ui-theme="dark"] .dashboard-page .gps-card-head h2,
html[data-ui-theme="dark"] .dashboard-page .gps-kpi-value,
html[data-ui-theme="dark"] .dashboard-page .gps-alert-kpi strong,
html[data-ui-theme="dark"] .dashboard-page .gps-info strong { color:#fff !important; }
html[data-ui-theme="dark"] .dashboard-page .gps-kpi-label,
html[data-ui-theme="dark"] .dashboard-page .gps-alert-kpi span,
html[data-ui-theme="dark"] .dashboard-page .gps-info span,
html[data-ui-theme="dark"] .dashboard-page .gps-note,
html[data-ui-theme="dark"] .dashboard-page .gps-sync-note { color:#9eacbc !important; }
html[data-ui-theme="light"] .dashboard-page .gps-kpi,
html[data-ui-theme="light"] .dashboard-page .gps-map-card,
html[data-ui-theme="light"] .dashboard-page .gps-list-card,
html[data-ui-theme="light"] .dashboard-page .gps-alert-card,
html[data-ui-theme="light"] .dashboard-page .gps-alert-kpi,
html[data-ui-theme="light"] .dashboard-page .gps-info {
    color:var(--ui-text) !important;
    background:var(--ui-surface) !important;
    border-color:var(--ui-border) !important;
}
html[data-ui-theme="light"] .dashboard-page .gps-card-head { border-bottom-color:var(--ui-border) !important; }
html[data-ui-theme="light"] .dashboard-page .gps-card-head h2,
html[data-ui-theme="light"] .dashboard-page .gps-kpi-value,
html[data-ui-theme="light"] .dashboard-page .gps-alert-kpi strong,
html[data-ui-theme="light"] .dashboard-page .gps-info strong { color:var(--ui-title) !important; }
html[data-ui-theme="light"] .dashboard-page .gps-kpi-label,
html[data-ui-theme="light"] .dashboard-page .gps-alert-kpi span,
html[data-ui-theme="light"] .dashboard-page .gps-info span,
html[data-ui-theme="light"] .dashboard-page .gps-note,
html[data-ui-theme="light"] .dashboard-page .gps-sync-note { color:var(--ui-text-2) !important; }
html[data-ui-theme="light"] .dashboard-page .gps-item,
html[data-ui-theme="light"] .dashboard-page .gps-filter button {
    color:var(--ui-text-2) !important;
    background:var(--ui-surface-2) !important;
    border-color:var(--ui-border) !important;
}
html[data-ui-theme="light"] .dashboard-page .gps-item-title { color:var(--ui-title) !important; }
html[data-ui-theme="light"] .dashboard-page .gps-item-meta { color:var(--ui-text-2) !important; }

/* 9. ESPACE CLIENT ------------------------------------------------------- */
.client-space-page .client-main-header h1,
.client-space-page .client-panel h2,
.client-space-page .client-panel h3,
.client-space-page .client-kpi-value,
.client-space-page .client-info-grid strong { color:var(--ui-title) !important; }
.client-space-page .client-page-subtitle,
.client-space-page .client-kpi-label,
.client-space-page .client-info-grid span,
.client-space-page .client-doc-label { color:var(--ui-text-2) !important; }
.client-space-page .client-highlight h1,
.client-space-page .client-highlight h2,
.client-space-page .client-highlight h3,
.client-space-page .client-highlight strong { color:#fff !important; }
.client-space-page .client-highlight p,
.client-space-page .client-highlight span { color:#c5d0dc !important; }

/* 10. BOOTSTRAP / ETATS / TABLEAUX -------------------------------------- */
.bs-app .table > :not(caption) > * > * { color:var(--ui-text); }
.bs-app .table thead th { color:var(--ui-text-2) !important; }
.bs-app .table tbody td { color:var(--ui-text) !important; }
.bs-app .card-body,.bs-app .modal-body,.bs-app .offcanvas-body { color:var(--ui-text); }
.bs-app .card-title,.bs-app .modal-title,.bs-app .offcanvas-title { color:var(--ui-title) !important; }
.bs-app .input-group-text { color:var(--ui-text-2) !important; }
.bs-app .form-check-label { color:var(--ui-text-2) !important; }
.bs-app .badge.bg-warning.text-dark { color:#3d2b00 !important; }
html[data-ui-theme="dark"] .bs-app .badge.text-bg-light {
    color:#d9e2ec !important;
    background:#1b2938 !important;
    border-color:rgba(255,255,255,.12) !important;
}
html[data-ui-theme="light"] .bs-app .badge.text-bg-light {
    color:#42536a !important;
    background:#f4f7fa !important;
    border-color:#dce4ec !important;
}

/* 11. FOOTER ET PETITS TEXTES ------------------------------------------- */
.public-page .site-footer,.public-page .site-footer p,.public-page .site-footer span,.public-page .site-footer div { color:#aeb9c6; }
.public-page .site-footer .footer-copy { color:#b7c1cc !important; }

/* 12. RESPONSIVE / POLISH ------------------------------------------------ */
@media (max-width: 991.98px) {
    .public-page .auth-page { align-items:flex-start; }
    .public-page .auth-form-panel { padding:2rem !important; }
    .public-page .partner-register-intro { border-radius:22px !important; }
}
@media (max-width: 767.98px) {
    .public-page .auth-form-panel { padding:1.45rem !important; }
    .partner-page .partner-subscription-hero { padding:1.2rem 1.25rem !important; }
    body.bs-app.dashboard-page .pivot-page .pivot-hero { padding:1.2rem !important; }
}
