/* Victoria V29 — thème global réellement transversal.
   Ce fichier est chargé en dernier afin de corriger les composants hérités V5→V22. */
:root{
  --vx-bg:var(--v5-bg,#f6fbfa);--vx-surface:var(--v5-surface,#fff);--vx-surface-2:var(--v5-surface-2,#eef6f5);
  --vx-text:var(--v5-ink,#102527);--vx-text-2:var(--v5-ink-2,#46615e);--vx-muted:var(--v5-muted,#708783);
  --vx-line:var(--v5-line,#dce9e7);--vx-accent:var(--v5-teal,#61d9cd);--vx-accent-dark:var(--v5-teal-dark,#199c97);
  --bs-body-bg:var(--vx-bg);--bs-body-color:var(--vx-text);--bs-secondary-color:var(--vx-muted);--bs-tertiary-bg:var(--vx-surface-2);
  --bs-secondary-bg:var(--vx-surface-2);--bs-emphasis-color:var(--vx-text);--bs-border-color:var(--vx-line);
  --bs-card-bg:var(--vx-surface);--bs-card-color:var(--vx-text);--bs-dropdown-bg:var(--vx-surface);--bs-dropdown-color:var(--vx-text);
  --bs-list-group-bg:var(--vx-surface);--bs-list-group-color:var(--vx-text);--bs-list-group-border-color:var(--vx-line);
}
html[data-vx-theme="dark"]{
  --v5-bg:#050708;--v5-surface:#0c1012;--v5-surface-2:#13191b;--v5-ink:#f3f7f6;--v5-ink-2:#d2dddb;--v5-muted:#98aaa7;
  --v5-line:#263235;--v5-teal:#61d9cd;--v5-teal-dark:#46c8bc;--v5-teal-pale:rgba(97,217,205,.13);
  --vx-bg:#050708;--vx-surface:#0c1012;--vx-surface-2:#13191b;--vx-text:#f3f7f6;--vx-text-2:#d2dddb;--vx-muted:#98aaa7;--vx-line:#263235;
  --vx-accent:#61d9cd;--vx-accent-dark:#46c8bc;
  --bs-body-bg:#050708;--bs-body-color:#f3f7f6;--bs-secondary-color:#98aaa7;--bs-tertiary-bg:#13191b;--bs-secondary-bg:#13191b;
  --bs-emphasis-color:#fff;--bs-border-color:#263235;--bs-card-bg:#0c1012;--bs-card-color:#f3f7f6;--bs-dropdown-bg:#0c1012;--bs-dropdown-color:#f3f7f6;
  --bs-list-group-bg:#0c1012;--bs-list-group-color:#f3f7f6;--bs-list-group-border-color:#263235;
}
html,body{background:var(--vx-bg)!important;color:var(--vx-text)!important}
body{--bs-body-bg:var(--vx-bg);--bs-body-color:var(--vx-text)}
body main,body section,body article,body aside,body header,body footer{color:inherit}
a{color:var(--vx-accent-dark)}
.text-muted,.small.text-muted{color:var(--vx-muted)!important}
.text-dark{color:var(--vx-text)!important}.bg-white,.bg-light{background:var(--vx-surface)!important;color:var(--vx-text)!important}
.border,.border-bottom,.border-top,.border-start,.border-end{border-color:var(--vx-line)!important}
.card,.card-body,.card-header,.card-footer,.list-group-item,.dropdown-menu,.offcanvas,.popover,.toast,.accordion-item,.accordion-button{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.form-control,.form-select,.input-group-text,textarea{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.form-control::placeholder,textarea::placeholder{color:var(--vx-muted)!important;opacity:.85}
.form-control:focus,.form-select:focus,textarea:focus{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-accent)!important;box-shadow:0 0 0 .2rem rgba(97,217,205,.14)!important}
.btn-light,.btn-outline-secondary{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.btn-light:hover,.btn-outline-secondary:hover{background:var(--vx-surface-2)!important;color:var(--vx-text)!important}
.table{--bs-table-bg:var(--vx-surface);--bs-table-color:var(--vx-text);--bs-table-border-color:var(--vx-line);color:var(--vx-text)!important}
.table>thead,.table-light{--bs-table-bg:var(--vx-surface-2)!important;--bs-table-color:var(--vx-text)!important}
.table-hover>tbody>tr:hover>*{--bs-table-accent-bg:var(--vx-surface-2)!important;color:var(--vx-text)!important}
.dropdown-item{color:var(--vx-text-2)!important}.dropdown-item:hover,.dropdown-item:focus{background:var(--vx-surface-2)!important;color:var(--vx-text)!important}
.nav-tabs,.nav-pills{--bs-nav-tabs-border-color:var(--vx-line)}
.nav-tabs .nav-link{color:var(--vx-text-2)}.nav-tabs .nav-link:hover{border-color:var(--vx-line)}
.accordion-button{box-shadow:none!important}.accordion-button:not(.collapsed){background:var(--vx-surface-2)!important;color:var(--vx-text)!important}
.alert{background:var(--vx-surface-2)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.modal-content,.modal-header,.modal-footer{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.pagination{--bs-pagination-bg:var(--vx-surface);--bs-pagination-color:var(--vx-text-2);--bs-pagination-border-color:var(--vx-line);--bs-pagination-hover-bg:var(--vx-surface-2);--bs-pagination-hover-color:var(--vx-text);--bs-pagination-focus-bg:var(--vx-surface-2)}
/* V5/V7/V11 cards */
.v5-card,.v5-profile-section,.v5-auth-grid,.v5-toolbar,.v5-event-card,.v5-candidate-card,.v5-story-rank,.v5-list-card,.v5-carousel,.v5-app-card,.v5-fin-card,.v5-candidate-admin-card,.v5-empty,.v5-user-chip,.v5-icon-btn,.v5-float,.v5-story-media{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.v5-list-card,.v5-carousel,.v5-event-card,.v5-candidate-card{box-shadow:var(--v5-shadow-soft,0 14px 40px rgba(0,0,0,.08))!important}
.v5-carousel-btn,.v5-install-btn{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.v5-role-card,.v5-activity{border-color:var(--vx-line)!important}
/* V20 explorer / ranking / search */
.vx-header-search-desktop,.vx-header-search-mobile,.vx-events-v20-search{background:var(--vx-surface)!important;border-color:var(--vx-line)!important;color:var(--vx-text)!important}
.vx-header-search-desktop input,.vx-header-search-mobile input,.vx-events-v20-search-main input{color:var(--vx-text)!important}
.vx-events-v20-search select{background:var(--vx-surface-2)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.vx-events-v20-shortcuts a,.vx-events-v20-category-rail a{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.vx-events-v20-metrics>div,.vx-scene-card,.vx-event-v20-card,.vx-rank-group,.vx-gender-card,.vx-ranking-all{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.vx-scene-body>div,.vx-event-v20-meta,.vx-event-v20-top,.vx-report-detail-kicker,.vx-report-detail-meta>div span{color:var(--vx-muted)!important}
.vx-report-detail-meta>div{background:var(--vx-surface-2)!important;border-color:var(--vx-line)!important}
.vx-gender-card{background:var(--vx-surface-2)!important}.vx-gender-copy span,.vx-gender-copy a{color:var(--vx-muted)!important}.vx-gender-pill{background:var(--vx-surface-2)!important;color:var(--vx-text)!important}
.vx-rank-empty,.vx-events-v20-empty{border-color:var(--vx-line)!important;color:var(--vx-muted)!important}
/* V21 builder/feed/survey */
.vx21-card,.vx21-feed-card,.vx21-feature-card,.vx21-question,.vx21-survey-shell{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.vx21-survey-builder .vx21-question{background:var(--vx-surface-2)!important;border-color:var(--vx-line)!important}
.vx21-toolbar>a,.vx21-campaign-link{background:var(--vx-surface-2)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.vx21-builder-side .vx21-linkbox{background:var(--vx-surface-2)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
/* V22 Feed, Stories, Calendar and Preferences */
.vx22-card,.vx22-pref-card,.vx22-event-row,.vx22-carousel-card .body{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.vx22-story{background:#071113!important}.vx22-feed-body p,.vx22-feed-meta,.vx22-calendar-stat span,.vx22-event-row p,.vx22-pref-user small,.vx22-switch-label small,.vx22-privacy-list small{color:var(--vx-muted)!important}
.vx22-feed-body,.vx22-event-side{color:var(--vx-text)!important}
.vx22-pref-user{background:var(--vx-surface-2)!important;border-color:var(--vx-line)!important}
.vx22-theme-choice,.vx22-performance-options button{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.vx22-theme-choice:hover,.vx22-performance-options button:hover,.vx22-theme-choice.is-active,.vx22-performance-options button.is-active{background:var(--vx-surface-2)!important;color:var(--vx-text)!important}
.vx22-switch{background:#445354}.vx22-switch::after{background:#f7faf9}.vx22-privacy-list b{background:rgba(97,217,205,.12)!important;color:var(--vx-accent)!important}
.vx22-event-progress{background:var(--vx-surface-2)!important}
/* Hard-coded legacy white panels. These selectors deliberately target UI containers, not images. */
.v5-desktop-header,.v5-mobile-header,.v5-mobile-bottom,.v7-mobile-menu{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
.v5-desktop-header .v5-nav a,.v5-desktop-header .v5-actions a,.v5-mobile-header a,.v5-mobile-action,.v7-mobile-menu a{color:var(--vx-text-2)!important}
html[data-vx-theme="dark"] .v5-topline{background:#101718!important;color:#d8eeee!important}
/* Inline white surfaces used by old pages */
html[data-vx-theme="dark"] [style*="background:#fff"],html[data-vx-theme="dark"] [style*="background: #fff"],html[data-vx-theme="dark"] [style*="background:#ffffff"],html[data-vx-theme="dark"] [style*="background: #ffffff"],html[data-vx-theme="dark"] [style*="background-color:#fff"],html[data-vx-theme="dark"] [style*="background-color: #fff"],html[data-vx-theme="dark"] [style*="background-color:#ffffff"],html[data-vx-theme="dark"] [style*="background-color: #ffffff"]{background:var(--vx-surface)!important;color:var(--vx-text)!important;border-color:var(--vx-line)!important}
/* V22 CSS uses its own light variables; synchronize them with the active theme. */
html[data-vx-theme="dark"]{--vx22-ink:#f3f7f6;--vx22-muted:#98aaa7;--vx22-border:#263235;--vx22-surface:#0c1012;--vx22-night:#050708;--vx22-teal:#61d9cd;--vx22-teal-dark:#46c8bc}
html[data-vx-theme="light"]{--vx22-ink:#071113;--vx22-muted:#6f8582;--vx22-border:rgba(12,31,32,.09);--vx22-surface:rgba(255,255,255,.96);--vx22-night:#050909}
/* Avoid white Bootstrap canvas behind custom dark cards. */
html[data-vx-theme="dark"] .offcanvas,.offcanvas-body{background:var(--vx-surface)!important;color:var(--vx-text)!important}
