:root {
    --trv-primary: #59bdf7;
    --trv-primary-strong: #0b9ff4;
    --trv-primary-deep: #0b76b7;
    --trv-primary-soft: #cdecfe;
    --trv-primary-wash: #eff9ff;
    --trv-ink: #1f2937;
    --trv-text: #374151;
    --trv-muted: #64748b;
    --trv-subtle: #94a3b8;
    --trv-line: #e6edf6;
    --trv-line-strong: #dbe7f2;
    --trv-bg: #f8fafc;
    --trv-panel: #ffffff;
    --trv-panel-soft: #f5fafe;
    --trv-success: #15803d;
    --trv-warning: #a16207;
    --trv-danger: #dc2626;
    --trv-info: #075985;
    --trv-radius-sm: 10px;
    --trv-radius: 14px;
    --trv-radius-lg: 22px;
    --trv-shadow-sm: 0 6px 20px rgba(15, 23, 42, .045);
    --trv-shadow: 0 18px 50px rgba(15, 23, 42, .075);
    --trv-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    --vz-primary: var(--trv-primary-strong);
    --vz-primary-rgb: 11, 159, 244;
    --vz-body-font-family: var(--trv-font);
    --vz-body-bg: var(--trv-bg);
    --vz-body-color: var(--trv-text);
    --vz-border-color: var(--trv-line);
    --vz-card-border-color: var(--trv-line);
}

[data-bs-theme="dark"], [data-layout-mode="dark"] {
    --trv-ink: #f8fafc;
    --trv-text: #e2e8f0;
    --trv-muted: #a8b3c2;
    --trv-subtle: #7f8da0;
    --trv-line: #253247;
    --trv-line-strong: #314158;
    --trv-bg: #0d1522;
    --trv-panel: #121c2b;
    --trv-panel-soft: #172235;
    --trv-primary-wash: rgba(11, 159, 244, .12);
    --trv-shadow-sm: 0 8px 24px rgba(0, 0, 0, .22);
    --trv-shadow: 0 20px 56px rgba(0, 0, 0, .30);
    --vz-body-bg: var(--trv-bg);
    --vz-body-color: var(--trv-text);
    --vz-border-color: var(--trv-line);
    --vz-card-bg: var(--trv-panel);
    --vz-card-border-color: var(--trv-line);
}

html { scroll-behavior: smooth; }
body.admin-shell,
body.admin-auth-shell {
    font-family: var(--trv-font);
    color: var(--trv-text);
    background: var(--trv-bg);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}
body.admin-shell { min-height: 100vh; }
a { text-underline-offset: 3px; }
:focus-visible { outline: 3px solid rgba(11, 159, 244, .28); outline-offset: 2px; }

.admin-skip-link {
    position: fixed;
    inset-inline-start: 16px;
    top: -64px;
    z-index: 10050;
    padding: 10px 15px;
    color: #fff;
    background: var(--trv-ink);
    border-radius: 0 0 12px 12px;
    transition: top .18s ease;
}
.admin-skip-link:focus { top: 0; color: #fff; }

/* Unified application shell */
#layout-wrapper { min-height: 100vh; }
.main-content { background: var(--trv-bg); }
.page-content { padding-top: 96px; padding-bottom: 38px; }
.page-content > .container-fluid { max-width: 1920px; margin-inline: auto; padding-inline: clamp(16px, 2.2vw, 34px); }

#page-topbar {
    min-height: 72px;
    background: color-mix(in srgb, var(--trv-panel) 94%, transparent);
    border-bottom: 1px solid var(--trv-line);
    box-shadow: 0 4px 18px rgba(15, 23, 42, .035);
    backdrop-filter: blur(16px);
}
#page-topbar .navbar-header { min-height: 72px; padding-inline: 18px; }
.admin-topbar-start,
.admin-topbar-end { display: flex; align-items: center; gap: 10px; min-width: 0; }
.admin-topbar-start { flex: 1 1 auto; }
.admin-topbar-end { flex: 0 0 auto; }
.admin-topbar-search { width: min(560px, 43vw); margin: 0; }
.admin-topbar-search .form-control {
    height: 44px;
    border: 1px solid var(--trv-line);
    border-radius: 14px;
    background: var(--trv-panel-soft);
    padding-inline-start: 42px;
    color: var(--trv-ink);
    box-shadow: none;
}
.admin-topbar-search .search-widget-icon { inset-inline-start: 15px; inset-inline-end: auto; color: var(--trv-muted); }
.admin-icon-button,
.btn.btn-topbar {
    width: 42px;
    height: 42px;
    display: inline-grid;
    place-items: center;
    border: 1px solid transparent;
    border-radius: 13px !important;
    color: var(--trv-text);
    background: transparent;
    transition: .18s ease;
}
.admin-icon-button:hover,
.btn.btn-topbar:hover { background: var(--trv-primary-wash); color: var(--trv-primary-deep); border-color: rgba(89, 189, 247, .28); }
.admin-language-button { width: auto; padding-inline: 11px; display: inline-flex; gap: 7px; }
.admin-language-button span { font-weight: 700; font-size: 13px; }
.admin-user-trigger { min-height: 46px; border: 0; border-radius: 14px; padding: 5px 9px; background: transparent; }
.admin-user-trigger:hover { background: var(--trv-primary-wash); }
.admin-user-trigger .header-profile-user { width: 34px; height: 34px; object-fit: cover; border: 2px solid rgba(89, 189, 247, .35); }
.admin-user-meta { display: grid; text-align: start; line-height: 1.25; margin-inline-start: 8px; }
.admin-user-meta strong { color: var(--trv-ink); font-size: 13px; }
.admin-user-meta small { color: var(--trv-muted); font-size: 11px; }
.admin-alert-count { position: absolute; top: 2px; inset-inline-end: 2px; min-width: 18px; height: 18px; padding-inline: 5px; border-radius: 99px; display: grid; place-items: center; background: var(--trv-danger); color: #fff; font-size: 10px; font-weight: 800; }

/* Clean, product-oriented sidebar */
.app-menu.navbar-menu {
    width: 272px;
    background: var(--trv-panel);
    border-inline-end: 1px solid var(--trv-line);
    box-shadow: 8px 0 30px rgba(15, 23, 42, .035);
}
.navbar-brand-box { width: 272px; height: 72px; padding: 0 18px; border-bottom: 1px solid var(--trv-line); background: var(--trv-panel); }
.admin-brand { height: 72px; display: flex; align-items: center; gap: 11px; color: var(--trv-ink); }
.admin-brand:hover { color: var(--trv-ink); }
.admin-brand-mark { width: 35px; height: 35px; object-fit: contain; filter: drop-shadow(0 6px 12px rgba(11, 159, 244, .22)); }
.admin-brand-copy { display: grid; line-height: 1.15; min-width: 0; }
.admin-brand-copy strong { font-size: 16px; letter-spacing: -.02em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.admin-brand-copy small { color: var(--trv-muted); font-size: 10px; text-transform: uppercase; letter-spacing: .11em; font-weight: 700; margin-top: 4px; }
#scrollbar { height: calc(100vh - 72px); }
.navbar-menu .navbar-nav { padding: 14px 12px 30px; }
.navbar-menu .navbar-nav .menu-title { color: var(--trv-subtle); padding: 18px 12px 7px; font-size: 10px; letter-spacing: .13em; font-weight: 800; }
.navbar-menu .navbar-nav .nav-link {
    min-height: 44px;
    margin: 2px 0;
    padding: 10px 12px;
    gap: 11px;
    color: var(--trv-muted);
    border-radius: 12px;
    font-weight: 650;
    font-size: 13px;
    transition: .16s ease;
}
.navbar-menu .navbar-nav .nav-link svg { width: 18px; height: 18px; color: currentColor; }
.navbar-menu .navbar-nav .nav-link:hover { color: var(--trv-primary-deep); background: var(--trv-primary-wash); }
.navbar-menu .navbar-nav .nav-link.active {
    color: var(--trv-primary-deep);
    background: linear-gradient(135deg, var(--trv-primary-wash), color-mix(in srgb, var(--trv-primary-soft) 58%, transparent));
    box-shadow: inset 3px 0 0 var(--trv-primary-strong);
}
[dir="rtl"] .navbar-menu .navbar-nav .nav-link.active { box-shadow: inset -3px 0 0 var(--trv-primary-strong); }
.navbar-menu .menu-dropdown { margin: 2px 0 7px; padding-inline-start: 12px; }
.navbar-menu .menu-dropdown .nav-link { min-height: 36px; padding: 8px 12px; font-size: 12px; }
.navbar-menu .nav-link[data-bs-toggle="collapse"]:after { opacity: .55; }
.main-content { margin-left: 272px; }
[dir="rtl"] .main-content { margin-left: 0; margin-right: 272px; }

/* Brand-consistent component system, including legacy pages */
.card,
.v78-card,
.ap-card {
    border: 1px solid var(--trv-line) !important;
    border-radius: var(--trv-radius) !important;
    background: var(--trv-panel) !important;
    box-shadow: var(--trv-shadow-sm) !important;
}
.card-header,
.v78-card .card-header,
.ap-card-header {
    background: var(--trv-panel) !important;
    border-bottom-color: var(--trv-line) !important;
}
.card-title, h1, h2, h3, h4, h5, h6 { color: var(--trv-ink); }
.text-muted, .ap-muted { color: var(--trv-muted) !important; }

.btn { border-radius: 11px; font-weight: 700; transition: .17s ease; }
.btn:hover { transform: translateY(-1px); }
.btn-primary,
.btn-success.auth-submit {
    color: #fff;
    border-color: var(--trv-primary-strong);
    background: linear-gradient(135deg, var(--trv-primary), var(--trv-primary-strong));
    box-shadow: 0 10px 24px rgba(11, 159, 244, .22);
}
.btn-primary:hover,
.btn-success.auth-submit:hover { color: #fff; border-color: var(--trv-primary-deep); background: linear-gradient(135deg, var(--trv-primary-strong), var(--trv-primary-deep)); }
.btn-outline-primary { color: var(--trv-primary-deep); border-color: rgba(11, 159, 244, .45); }
.btn-outline-primary:hover { color: #fff; background: var(--trv-primary-strong); border-color: var(--trv-primary-strong); }
.btn-soft-primary { color: var(--trv-primary-deep); background: var(--trv-primary-wash); border-color: transparent; }

.form-control,
.form-select,
.choices__inner,
.input-group-text {
    min-height: 44px;
    border-color: var(--trv-line-strong) !important;
    border-radius: 11px;
    background-color: var(--trv-panel) !important;
    color: var(--trv-ink) !important;
    box-shadow: none !important;
}
.form-control:focus,
.form-select:focus,
.choices.is-focused .choices__inner,
.choices.is-open .choices__inner {
    border-color: var(--trv-primary) !important;
    box-shadow: 0 0 0 4px rgba(89, 189, 247, .14) !important;
}
.form-label, label { color: var(--trv-text); font-weight: 650; }
.form-check-input:checked { background-color: var(--trv-primary-strong); border-color: var(--trv-primary-strong); }

.table { color: var(--trv-text); border-color: var(--trv-line); }
.table thead th,
.v78-table thead th,
.ap-table th { background: var(--trv-panel-soft) !important; color: var(--trv-muted) !important; border-color: var(--trv-line) !important; }
.table tbody td,
.v78-table tbody td,
.ap-table td { border-color: var(--trv-line) !important; }
.table-hover > tbody > tr:hover > * { background: var(--trv-primary-wash); color: var(--trv-text); }
.table-responsive, .ap-table-wrap { border-radius: 0 0 var(--trv-radius) var(--trv-radius); }

.alert { border-radius: 13px; border-width: 1px; }
.dropdown-menu { border: 1px solid var(--trv-line); border-radius: 14px; background: var(--trv-panel); box-shadow: var(--trv-shadow); padding: 7px; }
.dropdown-item { border-radius: 9px; color: var(--trv-text); padding: 9px 11px; }
.dropdown-item:hover, .dropdown-item:focus { background: var(--trv-primary-wash); color: var(--trv-primary-deep); }
.pagination .page-link { color: var(--trv-text); border-color: var(--trv-line); background: var(--trv-panel); }
.pagination .active > .page-link { color: #fff; border-color: var(--trv-primary-strong); background: var(--trv-primary-strong); }
.modal-content { border: 1px solid var(--trv-line); border-radius: var(--trv-radius-lg); background: var(--trv-panel); box-shadow: var(--trv-shadow); }

.v78-page-header,
.ap-page-header {
    border-radius: var(--trv-radius-lg);
}
.v78-page-header {
    border-color: var(--trv-line);
    background: radial-gradient(circle at top right, rgba(89,189,247,.16), transparent 34%), linear-gradient(135deg, var(--trv-panel), var(--trv-panel-soft));
}
.v78-kpi-card,
.v78-kpi-card:visited,
.ap-kpi { background: var(--trv-panel) !important; border-color: var(--trv-line) !important; border-radius: var(--trv-radius) !important; box-shadow: var(--trv-shadow-sm); }
.v78-kpi-icon { background: var(--trv-primary-wash) !important; color: var(--trv-primary-deep) !important; }
.v78-filter-bar,
.ap-filter { background: var(--trv-panel) !important; border-color: var(--trv-line) !important; }

/* Premium admin authentication */
body.admin-auth-shell { min-height: 100vh; overflow-x: hidden; }
.admin-auth-page {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 28px;
    position: relative;
    isolation: isolate;
    background:
        radial-gradient(circle at 12% 14%, rgba(89, 189, 247, .24), transparent 34%),
        radial-gradient(circle at 88% 90%, rgba(11, 159, 244, .13), transparent 36%),
        linear-gradient(145deg, #f5fbff 0%, #f8fafc 46%, #eef8ff 100%);
}
.admin-auth-page:before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    opacity: .38;
    background-image: radial-gradient(rgba(11, 159, 244, .24) .7px, transparent .7px);
    background-size: 24px 24px;
    mask-image: linear-gradient(to bottom, #000, transparent 72%);
}
.admin-auth-language { position: fixed; top: 20px; inset-inline-end: 22px; z-index: 5; }
.admin-auth-language .btn { background: rgba(255,255,255,.76); border: 1px solid rgba(219,231,242,.95); backdrop-filter: blur(12px); color: #334155; }
.admin-auth-card {
    width: min(960px, 100%);
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(390px, 1.05fr);
    overflow: hidden;
    background: rgba(255,255,255,.94);
    border: 1px solid rgba(219,231,242,.95);
    border-radius: 28px;
    box-shadow: 0 30px 90px rgba(15, 38, 58, .14);
    backdrop-filter: blur(18px);
}
.admin-auth-brand-panel {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 590px;
    padding: 44px;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(145deg, #0b76b7, #0b9ff4 58%, #59bdf7);
}
.admin-auth-brand-panel:before,
.admin-auth-brand-panel:after { content: ""; position: absolute; border-radius: 50%; background: rgba(255,255,255,.10); }
.admin-auth-brand-panel:before { width: 310px; height: 310px; inset-inline-end: -120px; top: -110px; }
.admin-auth-brand-panel:after { width: 220px; height: 220px; inset-inline-start: -110px; bottom: -100px; }
.admin-auth-brand { position: relative; z-index: 1; display: flex; align-items: center; gap: 12px; }
.admin-auth-brand img { width: 44px; height: 44px; object-fit: contain; filter: brightness(0) invert(1); }
.admin-auth-brand strong { font-size: 20px; letter-spacing: -.02em; }
.admin-auth-brand span { display: block; margin-top: 3px; color: rgba(255,255,255,.72); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; font-weight: 700; }
.admin-auth-message { position: relative; z-index: 1; }
.admin-auth-message .eyebrow { display: inline-flex; padding: 7px 10px; margin-bottom: 18px; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; background: rgba(255,255,255,.09); font-size: 11px; text-transform: uppercase; letter-spacing: .12em; font-weight: 800; }
.admin-auth-message h1 { color: #fff; font-size: clamp(30px, 3.2vw, 44px); line-height: 1.08; letter-spacing: -.04em; margin: 0 0 16px; max-width: 11ch; }
.admin-auth-message p { max-width: 36ch; color: rgba(255,255,255,.78); line-height: 1.7; margin: 0; }
.admin-auth-trust { position: relative; z-index: 1; display: flex; align-items: center; gap: 9px; color: rgba(255,255,255,.78); font-size: 12px; }
.admin-auth-trust i { font-size: 18px; color: #fff; }
.admin-auth-form-panel { display: flex; align-items: center; padding: clamp(32px, 5vw, 64px); background: var(--trv-panel); }
.admin-auth-form { width: 100%; max-width: 430px; margin: auto; }
.admin-auth-form-header { margin-bottom: 30px; }
.admin-auth-form-header h2 { margin: 0 0 9px; font-size: 28px; letter-spacing: -.035em; }
.admin-auth-form-header p { margin: 0; color: var(--trv-muted); line-height: 1.65; }
.admin-auth-field { margin-bottom: 18px; }
.admin-auth-field .form-control { height: 50px; border-radius: 13px; padding-inline: 15px; }
.admin-auth-password { position: relative; }
.admin-auth-password .form-control { padding-inline-end: 48px; }
.admin-auth-password-toggle { position: absolute; top: 4px; inset-inline-end: 4px; width: 42px; height: 42px; border: 0; border-radius: 10px; background: transparent; color: var(--trv-muted); }
.admin-auth-password-toggle:hover { color: var(--trv-primary-deep); background: var(--trv-primary-wash); }
.admin-auth-submit { width: 100%; min-height: 50px; border-radius: 13px; font-size: 15px; }
.admin-auth-footnote { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--trv-line); color: var(--trv-muted); font-size: 12px; line-height: 1.65; text-align: center; }
.admin-auth-copyright { position: fixed; bottom: 13px; inset-inline: 0; text-align: center; color: #789; font-size: 11px; }

/* Consistent direction handling */
[dir="rtl"] .admin-topbar-search .form-control { padding-right: 42px; padding-left: 14px; }
[dir="rtl"] .admin-user-meta { text-align: right; }
[dir="rtl"] .dropdown-menu { text-align: right; }
[dir="rtl"] .form-select { background-position: left .75rem center; padding-right: .75rem; padding-left: 2.25rem; }

@media (max-width: 1199.98px) {
    .app-menu.navbar-menu, .navbar-brand-box { width: 250px; }
    .main-content { margin-left: 250px; }
    [dir="rtl"] .main-content { margin-left: 0; margin-right: 250px; }
    .admin-topbar-search { width: min(430px, 38vw); }
}
@media (max-width: 991.98px) {
    .app-menu.navbar-menu { transform: translateX(-100%); }
    [dir="rtl"] .app-menu.navbar-menu { transform: translateX(100%); }
    .vertical-sidebar-enable .app-menu.navbar-menu { transform: translateX(0); }
    .main-content, [dir="rtl"] .main-content { margin: 0; }
    .admin-topbar-search { width: min(520px, 58vw); }
    .admin-auth-card { grid-template-columns: 1fr; max-width: 560px; }
    .admin-auth-brand-panel { min-height: 230px; padding: 30px; }
    .admin-auth-message h1 { max-width: none; font-size: 30px; }
    .admin-auth-message p { display: none; }
    .admin-auth-trust { display: none; }
    .admin-auth-form-panel { padding: 38px 32px; }
}
@media (max-width: 767.98px) {
    .page-content { padding-top: 88px; }
    #page-topbar .navbar-header { padding-inline: 9px; }
    .admin-topbar-search { width: auto; flex: 1; }
    .admin-topbar-search .form-control { width: 100%; }
    .admin-language-button span, .admin-user-meta { display: none; }
    .admin-auth-page { padding: 76px 15px 42px; place-items: start center; }
    .admin-auth-language { top: 13px; inset-inline-end: 13px; }
    .admin-auth-card { border-radius: 22px; }
    .admin-auth-brand-panel { min-height: 170px; padding: 25px; }
    .admin-auth-message .eyebrow { margin-bottom: 10px; }
    .admin-auth-message h1 { font-size: 25px; margin-bottom: 0; }
    .admin-auth-form-panel { padding: 30px 23px; }
    .admin-auth-form-header h2 { font-size: 24px; }
    .admin-auth-copyright { position: static; margin-top: 18px; }
}
@media (max-width: 575.98px) {
    .admin-topbar-search { display: none; }
    .page-content > .container-fluid { padding-inline: 12px; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* Unified treatment for retained specialist tools and inline governance editors. */
.page-title-box,
.breadcrumb-card {
    margin-bottom: 20px;
    padding: 16px 18px;
    border: 1px solid var(--trv-line);
    border-radius: var(--trv-radius);
    background: linear-gradient(135deg, var(--trv-panel), var(--trv-panel-soft));
    box-shadow: var(--trv-shadow-sm);
}
.breadcrumb { margin-bottom: 0; }
.breadcrumb-item, .breadcrumb-item a { color: var(--trv-muted); }
.breadcrumb-item.active { color: var(--trv-ink); font-weight: 700; }
.ap-inline-editor summary { list-style: none; cursor: pointer; }
.ap-inline-editor summary::-webkit-details-marker { display: none; }
.ap-inline-editor-panel {
    min-width: min(360px, 78vw);
    margin-top: 10px;
    padding: 14px;
    border: 1px solid var(--trv-line);
    border-radius: 13px;
    background: var(--trv-panel-soft);
    box-shadow: var(--trv-shadow-sm);
}
.ap-inline-editor-panel label { display: block; margin-top: 8px; margin-bottom: 4px; font-size: 12px; }
.border-warning-subtle { border-color: color-mix(in srgb, var(--trv-warning) 34%, var(--trv-line)) !important; }
.rtl-flip { display: inline-block; }
[dir="rtl"] .rtl-flip { transform: scaleX(-1); }
@media (max-width: 767.98px) {
    .ap-inline-editor-panel { min-width: 260px; }
}

/* Accessibility and theme hardening for both modern and legacy admin views */
::selection { background: color-mix(in srgb, var(--trv-primary-strong) 38%, transparent); color: var(--trv-ink); }
[data-bs-theme="dark"] ::selection,
[data-layout-mode="dark"] ::selection { background: color-mix(in srgb, var(--trv-primary) 48%, transparent); color:#fff; }
.table > :not(caption) > * > *, .list-group-item, .accordion-item, .offcanvas, .modal-content { color:var(--trv-text); background-color:var(--trv-panel); border-color:var(--trv-line); }
.table-striped > tbody > tr:nth-of-type(odd) > * { background-color:color-mix(in srgb,var(--trv-panel-soft) 65%,transparent); color:var(--trv-text); }
.table-active > *,.table > tbody > tr.table-active > * { background-color:var(--trv-primary-wash)!important; color:var(--trv-ink)!important; }
.bg-light,.bg-light-subtle,.table-light,.list-group-item-light { background-color:var(--trv-panel-soft)!important; color:var(--trv-text)!important; }
.text-dark,.text-body { color:var(--trv-text)!important; }
.border,.border-top,.border-bottom,.border-start,.border-end { border-color:var(--trv-line)!important; }
.form-control::placeholder { color:var(--trv-subtle); opacity:1; }
.form-control:disabled,.form-select:disabled { background:color-mix(in srgb,var(--trv-panel-soft) 88%,var(--trv-bg))!important; color:var(--trv-muted)!important; opacity:1; }
.form-control:-webkit-autofill { -webkit-text-fill-color:var(--trv-ink); box-shadow:0 0 0 1000px var(--trv-panel) inset!important; }
.choices__list--dropdown,.choices__list[aria-expanded] { background:var(--trv-panel)!important; border-color:var(--trv-line)!important; color:var(--trv-text)!important; }
.choices__list--dropdown .choices__item--selectable.is-highlighted { background:var(--trv-primary-wash)!important; color:var(--trv-ink)!important; }
.choices__item--choice { color:var(--trv-text); }
code { color:color-mix(in srgb,var(--trv-primary-strong) 75%,var(--trv-ink)); background:var(--trv-primary-wash); border-radius:6px; padding:.08rem .28rem; }
[data-bs-theme="dark"] code,[data-layout-mode="dark"] code { color:#9ddcff; }
.dropdown-item.active,.dropdown-item:active { background:var(--trv-primary-strong); color:#fff; }
.nav-tabs .nav-link { color:var(--trv-muted); }
.nav-tabs .nav-link.active { background:var(--trv-panel); color:var(--trv-primary-deep); border-color:var(--trv-line) var(--trv-line) var(--trv-panel); }
[data-bs-theme="dark"] .btn-light,[data-layout-mode="dark"] .btn-light { background:var(--trv-panel-soft); border-color:var(--trv-line); color:var(--trv-text); }
[data-bs-theme="dark"] .btn-light:hover,[data-layout-mode="dark"] .btn-light:hover { background:var(--trv-primary-wash); color:var(--trv-ink); }
[data-bs-theme="dark"] .badge.bg-light,[data-layout-mode="dark"] .badge.bg-light { background:var(--trv-panel-soft)!important; color:var(--trv-text)!important; }
[data-bs-theme="dark"] .table-hover > tbody > tr:hover > *,[data-layout-mode="dark"] .table-hover > tbody > tr:hover > * { background:rgba(89,189,247,.11)!important; color:var(--trv-ink)!important; }
[data-bs-theme="dark"] .table thead th,[data-layout-mode="dark"] .table thead th { color:#bac6d6!important; }
[data-bs-theme="dark"] .apexcharts-tooltip,[data-layout-mode="dark"] .apexcharts-tooltip { background:var(--trv-panel)!important; color:var(--trv-text)!important; border-color:var(--trv-line)!important; }
[data-bs-theme="dark"] .apexcharts-text,[data-layout-mode="dark"] .apexcharts-text { fill:var(--trv-muted)!important; }
.navbar-menu .menu-dropdown .nav-link.active { color:var(--trv-primary-deep); background:var(--trv-primary-wash); box-shadow:none; }
.navbar-menu .nav-link[data-bs-toggle="collapse"][aria-expanded="true"] { color:var(--trv-primary-deep); background:var(--trv-primary-wash); }
@media (max-width:575.98px){.page-content>.container-fluid{padding-inline:12px}.card-body{padding:1rem}.table-responsive{margin-inline:0}.admin-topbar-search{display:none}}

/* Final cross-theme compatibility for legacy Bootstrap utility surfaces. */
.bg-white,
.card-header.bg-white,
.input-group-text.bg-white,
.tab-content.bg-white,
.border.bg-white {
    background-color: var(--trv-panel) !important;
    color: var(--trv-text) !important;
    border-color: var(--trv-line) !important;
}
[data-bs-theme="dark"] img.admin-brand-mark,
[data-layout-mode="dark"] img.admin-brand-mark {
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, .22));
}

/* Dark-mode contrast corrections for V78 headings and active navigation. */
.v78-page-title { color:var(--trv-ink)!important; }
.v78-page-subtitle { color:var(--trv-muted)!important; }
[data-bs-theme="dark"] .v78-eyebrow,
[data-layout-mode="dark"] .v78-eyebrow { color:#7dd3fc; }
[data-bs-theme="dark"] .navbar-menu .navbar-nav .nav-link.active,
[data-layout-mode="dark"] .navbar-menu .navbar-nav .nav-link.active {
    color:#f0f9ff!important;
    background:linear-gradient(135deg,rgba(11,159,244,.30),rgba(89,189,247,.17));
    border:1px solid rgba(125,211,252,.18);
    box-shadow:inset 3px 0 0 #38bdf8;
}
[dir="rtl"][data-bs-theme="dark"] .navbar-menu .navbar-nav .nav-link.active,
[dir="rtl"][data-layout-mode="dark"] .navbar-menu .navbar-nav .nav-link.active {
    box-shadow:inset -3px 0 0 #38bdf8;
}
[data-bs-theme="dark"] .navbar-menu .navbar-nav .nav-link.active svg,
[data-layout-mode="dark"] .navbar-menu .navbar-nav .nav-link.active svg { color:#7dd3fc; }
[data-bs-theme="dark"] .navbar-menu .menu-dropdown .nav-link.active,
[data-layout-mode="dark"] .navbar-menu .menu-dropdown .nav-link.active {
    color:#e0f2fe!important;
    background:rgba(14,165,233,.18)!important;
    border-color:rgba(125,211,252,.12);
    box-shadow:none;
}
