:root {
    color-scheme: light;
    --tblr-body-bg: var(--sys-page-bg);
    --tblr-body-color: var(--sys-text-primary);
    --tblr-card-bg: var(--sys-surface-bg);
    --tblr-card-color: var(--sys-text-primary);
    --tblr-border-color: var(--sys-border);
    --tblr-link-color: var(--sys-primary);
    --tblr-link-hover-color: var(--sys-primary-tint);
    --tblr-primary-rgb: var(--sys-primary-rgb);
    --tblr-secondary-rgb: var(--sys-secondary-rgb);

    --hp-primary: var(--sys-primary);
    --hp-bg: var(--sys-page-bg);
    --hp-text: var(--sys-text-primary);
    --hp-muted: var(--sys-text-muted);
    --hp-border: var(--sys-border);
    --hp-gold: var(--sys-accent);
    --hp-teal: var(--sys-secondary);
    --hp-shadow: 0 4px 24px var(--sys-shadow-soft);
    --hp-shadow-lg: 0 8px 40px var(--sys-shadow-medium);

    --bp-primary: var(--sys-primary);
    --bp-primary-mid: var(--sys-primary-tint);
    --bp-text: var(--sys-text-primary);
    --bp-muted: var(--sys-text-muted);
    --bp-border: var(--sys-border);

    --ip-border: var(--sys-border);
    --ip-border-hover: var(--sys-secondary);
    --ip-focus: var(--sys-focus-ring);
    --ip-bg: var(--sys-surface-bg);
    --ip-text: var(--sys-text-primary);
    --ip-muted: var(--sys-text-muted);
    --ip-disabled-bg: var(--sys-surface-subtle);
    --ip-disabled-text: var(--sys-text-soft);

    --tp-primary: var(--sys-primary);
    --tp-surface: var(--sys-surface-bg);
    --tp-text: var(--sys-text-primary);
    --tp-muted: var(--sys-text-muted);
    --tp-border: var(--sys-border);
    --tp-teal: var(--sys-secondary);

    --pp-surface: var(--sys-surface-bg);
    --pp-text: var(--sys-text-primary);
    --pp-border: var(--sys-border);
    --pp-primary: var(--sys-primary);
    --pp-focus: var(--sys-focus-ring);

    --mc-primary: var(--sys-primary);
    --mc-surface: var(--sys-surface-bg);
    --mc-text: var(--sys-text-primary);
    --mc-muted: var(--sys-text-muted);
    --mc-border: var(--sys-border);
    --mc-teal: var(--sys-secondary);
}

[data-bs-theme="dark"] {
    color-scheme: dark;
    --hp-gold: var(--sys-primary);
}

html,
body {
    background: var(--sys-page-bg);
}

body {
    color: var(--sys-text-primary);
}

a {
    color: var(--sys-primary);
}

a:hover {
    color: var(--sys-primary-tint);
}

.footer .link-secondary,
.footer-transparent .link-secondary {
    color: var(--sys-text-primary);
}

.footer .link-secondary:hover,
.footer .link-secondary:focus,
.footer-transparent .link-secondary:hover,
.footer-transparent .link-secondary:focus {
    color: var(--sys-primary);
}

.footer .footer-link,
.footer-transparent .footer-link {
    color: var(--sys-text-primary) !important;
    text-decoration-color: currentColor !important;
}

.footer .footer-link:hover,
.footer .footer-link:focus,
.footer-transparent .footer-link:hover,
.footer-transparent .footer-link:focus {
    color: var(--sys-primary) !important;
    text-decoration-color: currentColor !important;
}

.footer .footer-copy,
.footer .footer-copy span,
.footer-transparent .footer-copy,
.footer-transparent .footer-copy span {
    color: var(--sys-text-primary) !important;
}

.page-wrapper,
.page-body {
    background: transparent;
}

.page-pretitle {
    color: var(--sys-secondary);
}

.page-title,
.card-title,
.modal-title {
    color: var(--sys-text-primary);
}

.text-muted,
.subheader {
    color: var(--sys-text-muted) !important;
}

.card,
.modal-content,
.dropdown-menu {
    background: var(--sys-surface-bg);
    border-color: var(--sys-border-soft);
    color: var(--sys-text-primary);
}

.card-header,
.card-footer,
.modal-header,
.modal-footer {
    border-color: var(--sys-border-soft);
}

.btn:focus-visible,
.form-control:focus,
.form-select:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 3px var(--sys-focus-ring);
}

.btn.btn-primary {
    background: linear-gradient(180deg, var(--sys-primary-tint) 0%, var(--sys-primary) 100%);
    border-color: var(--sys-primary-shade);
    color: var(--sys-primary-contrast);
    box-shadow: 0 8px 20px var(--sys-shadow-medium);
}

.btn.btn-primary:hover {
    background: linear-gradient(180deg, var(--sys-primary-tint) 0%, var(--sys-primary-shade) 100%);
    border-color: var(--sys-primary-shade);
    color: var(--sys-primary-contrast);
}

.btn.btn-primary:focus-visible {
    box-shadow: 0 0 0 3px var(--sys-focus-ring), 0 8px 20px var(--sys-shadow-medium);
}

.btn.btn-outline-secondary,
.btn.dropdown-toggle,
.btn.btn-ghost-secondary {
    background: var(--sys-surface-overlay);
    border-color: var(--sys-border);
    color: var(--sys-text-primary);
}

.btn.btn-outline-secondary:hover,
.btn.dropdown-toggle:hover,
.btn.btn-ghost-secondary:hover {
    background: var(--sys-secondary-soft);
    border-color: var(--sys-border-medium);
    color: var(--sys-primary);
}

.btn.btn-link,
.btn.link-secondary {
    color: var(--sys-text-muted);
}

.btn.btn-link:hover,
.btn.link-secondary:hover {
    color: var(--sys-primary);
    background: var(--sys-primary-soft);
}

/* Outline variants com variáveis de tema */
.btn.btn-outline-danger {
    background: var(--sys-surface-overlay);
    border-color: var(--sys-danger, #DC3545);
    color: var(--sys-danger, #DC3545);
}

.btn.btn-outline-danger:hover {
    background: var(--sys-danger-soft, rgba(220, 53, 69, 0.1));
    border-color: var(--sys-danger-shade, #bb2d3b);
    color: var(--sys-danger-shade, #bb2d3b);
}

.btn.btn-outline-success {
    background: var(--sys-surface-overlay);
    border-color: var(--sys-success, #198754);
    color: var(--sys-success, #198754);
}

.btn.btn-outline-success:hover {
    background: var(--sys-success-soft, rgba(25, 135, 84, 0.1));
    border-color: var(--sys-success-shade, #146c43);
    color: var(--sys-success-shade, #146c43);
}

.btn.btn-outline-warning {
    background: var(--sys-surface-overlay);
    border-color: var(--sys-warning, #ffc107);
    color: var(--sys-warning-text, #997404);
}

.btn.btn-outline-warning:hover {
    background: var(--sys-warning-soft, rgba(255, 193, 7, 0.1));
    border-color: var(--sys-warning-shade, #e0a800);
    color: var(--sys-warning-text-shade, #7a5d03);
}

/* Solid variants com variáveis de tema */
.btn.btn-danger {
    background: linear-gradient(180deg, var(--sys-danger-tint, #e45a69) 0%, var(--sys-danger, #DC3545) 100%);
    border-color: var(--sys-danger-shade, #bb2d3b);
    color: #fff;
}

.btn.btn-danger:hover {
    background: linear-gradient(180deg, var(--sys-danger-tint, #ea6a78) 0%, var(--sys-danger-shade, #c93040) 100%);
    border-color: var(--sys-danger-shade, #a52834);
}

.btn.btn-success {
    background: linear-gradient(180deg, var(--sys-success-tint, #23a26a) 0%, var(--sys-success, #198754) 100%);
    border-color: var(--sys-success-shade, #146c43);
    color: #fff;
}

.btn.btn-success:hover {
    background: linear-gradient(180deg, var(--sys-success-tint, #2bb477) 0%, var(--sys-success-shade, #157347) 100%);
    border-color: var(--sys-success-shade, #146c43);
}

/* btn-actions com variáveis de tema */
.btn-actions .btn {
    border-color: var(--sys-border);
}

[data-bs-theme="dark"] .btn.btn-outline-danger {
    background: var(--sys-primary-soft);
    border-color: rgba(220, 53, 69, 0.6);
    color: #f0847e;
}

[data-bs-theme="dark"] .btn.btn-outline-danger:hover {
    background: rgba(220, 53, 69, 0.15);
    border-color: rgba(220, 53, 69, 0.8);
    color: #f5a6ab;
}

[data-bs-theme="dark"] .btn.btn-outline-success {
    background: var(--sys-primary-soft);
    border-color: rgba(25, 135, 84, 0.6);
    color: #93e0b6;
}

[data-bs-theme="dark"] .btn.btn-outline-success:hover {
    background: rgba(25, 135, 84, 0.15);
    border-color: rgba(25, 135, 84, 0.8);
    color: #a8e8c5;
}

[data-bs-theme="dark"] .btn.btn-outline-warning {
    background: var(--sys-primary-soft);
    border-color: rgba(255, 193, 7, 0.5);
    color: #ffe082;
}

[data-bs-theme="dark"] .btn.btn-outline-warning:hover {
    background: rgba(255, 193, 7, 0.12);
    border-color: rgba(255, 193, 7, 0.7);
    color: #ffe9a1;
}

[data-bs-theme="dark"] .btn-actions .btn {
    border-color: var(--sys-border-medium);
}

[data-bs-theme="dark"] .btn.btn-outline-secondary,
[data-bs-theme="dark"] .btn.dropdown-toggle,
[data-bs-theme="dark"] .btn.btn-ghost-secondary {
    color: var(--sys-text-primary);
    border-color: var(--sys-border-medium);
    background: var(--sys-primary-soft);
}

[data-bs-theme="dark"] .btn.btn-outline-secondary:hover,
[data-bs-theme="dark"] .btn.dropdown-toggle:hover,
[data-bs-theme="dark"] .btn.btn-ghost-secondary:hover {
    color: var(--sys-text-primary);
    border-color: var(--sys-border-medium);
    background: var(--sys-primary-soft-strong);
}

[data-bs-theme="dark"] .btn.btn-link,
[data-bs-theme="dark"] .btn.link-secondary {
    color: var(--sys-text-muted);
    background: transparent;
    border-color: transparent;
}

[data-bs-theme="dark"] .btn.btn-link:hover,
[data-bs-theme="dark"] .btn.link-secondary:hover {
    color: var(--sys-primary);
    background: var(--sys-primary-soft);
}

[data-bs-theme="dark"] .btn.btn-primary {
    background: linear-gradient(180deg, var(--sys-primary-tint) 0%, var(--sys-primary) 100%);
    border-color: var(--sys-primary-shade);
    color: var(--sys-primary-contrast);
}

.form-label {
    color: var(--sys-text-primary);
}

.form-control,
.form-select,
.input-group-text {
    border-color: var(--sys-border);
    background-color: var(--sys-surface-bg);
    color: var(--sys-text-primary);
}

.form-control::placeholder,
.form-select::placeholder {
    color: var(--sys-text-muted);
}

.form-control:hover,
.form-select:hover,
.input-group:focus-within .input-group-text {
    border-color: var(--sys-border-medium);
}

.form-control:focus,
.form-select:focus {
    border-color: var(--sys-secondary);
    background-color: var(--sys-surface-raised);
}

.form-control:disabled,
.form-control[readonly],
.form-select:disabled {
    background-color: var(--sys-surface-subtle);
    color: var(--sys-text-soft);
    border-color: var(--sys-border-soft);
}

.form-check-input {
    border-color: var(--sys-border);
    background-color: var(--sys-surface-bg);
}

.form-check-input:checked {
    background-color: var(--sys-primary);
    border-color: var(--sys-primary);
}

.table-responsive > .table.table-vcenter.card-table thead th,
.tp-table thead th,
.ma-table thead th {
    color: var(--sys-text-muted);
    background: var(--sys-primary-soft);
    border-bottom-color: var(--sys-border);
}

.table-responsive > .table.table-vcenter.card-table tbody td,
.tp-table tbody td,
.ma-table tbody td {
    color: var(--sys-text-primary);
    border-bottom-color: var(--sys-border);
}

.table-responsive > .table.table-vcenter.card-table tbody tr:hover > *,
.tp-table tbody tr:hover,
.ma-table tbody tr:hover {
    background: var(--sys-row-hover);
}

.tp-search-wrap,
.ma-search-wrap {
    border-color: var(--sys-border);
    background: var(--sys-surface-bg);
    color: var(--sys-text-muted);
}

.tp-search-wrap:focus-within,
.ma-search-wrap:focus-within {
    border-color: var(--sys-border-medium);
    box-shadow: 0 0 0 3px var(--sys-focus-ring);
}

.tp-search-input,
.ma-search-input {
    color: var(--sys-text-primary);
}

.tp-search-input::placeholder,
.ma-search-input::placeholder {
    color: var(--sys-text-muted);
}

.tp-avatar,
.ma-avatar,
.mav-avatar {
    border-color: var(--sys-secondary-soft-strong);
}

.tp-avatar--initials,
.ma-avatar--initials,
.mav-avatar--initials,
.avatar:not([style*="background-image"]),
.hp-avatar-initials {
    background: linear-gradient(135deg, var(--sys-primary) 0%, var(--sys-primary-tint) 100%) !important;
    color: var(--sys-primary-contrast) !important;
}

.avatar {
    border-color: var(--sys-border-medium);
    box-shadow: 0 8px 20px var(--sys-shadow-soft);
    color: var(--sys-accent);
}

.flash-premium {
    --fp-text: var(--sys-text-primary);
    --fp-muted: var(--sys-text-muted);
    --fp-border: var(--sys-border);
    --fp-bg: var(--sys-surface-overlay-strong);
    box-shadow: 0 8px 24px var(--sys-shadow-soft);
}

.flash-premium--success {
    --fp-border: var(--sys-secondary-soft-strong);
    --fp-bg: linear-gradient(180deg, var(--sys-secondary-soft) 0%, var(--sys-surface-overlay-strong) 100%);
}

.flash-premium--success .flash-premium__icon {
    background: var(--sys-secondary-soft-strong);
    color: var(--sys-secondary);
}

.flash-premium--warning {
    --fp-border: var(--sys-accent-soft-strong);
    --fp-bg: linear-gradient(180deg, var(--sys-accent-soft) 0%, var(--sys-surface-overlay-strong) 100%);
}

.flash-premium--warning .flash-premium__icon {
    background: var(--sys-accent-soft-strong);
    color: var(--sys-accent);
}

.tp-pagination .page-link {
    border-color: var(--sys-border);
    background: var(--sys-surface-bg);
    color: var(--sys-text-primary);
}

.tp-pagination .page-link:hover {
    border-color: var(--sys-border-medium);
    background: var(--sys-secondary-soft);
    color: var(--sys-primary);
}

.tp-pagination .page-item.active .page-link {
    border-color: var(--sys-primary-shade);
    background: var(--sys-primary);
    color: var(--sys-primary-contrast);
}

.tp-pagination .page-item.disabled .page-link {
    border-color: var(--sys-border-soft);
    background: var(--sys-surface-subtle);
    color: var(--sys-text-soft);
}

.lp-loading-overlay {
    background: rgba(var(--sys-primary-rgb), 0.34);
}

.lp-loading-card {
    border-color: var(--sys-secondary-soft-strong);
    background: linear-gradient(180deg, var(--sys-surface-overlay-strong) 0%, var(--sys-surface-overlay) 100%);
    box-shadow: 0 14px 34px var(--sys-shadow-medium);
}

.lp-loading-spinner::before {
    border-color: var(--sys-secondary-soft-strong);
}

.lp-loading-spinner::after {
    background: linear-gradient(135deg, var(--sys-secondary) 0%, var(--sys-accent) 100%);
    box-shadow: 0 0 0 3px var(--sys-secondary-soft);
}

.lp-loading-title {
    color: var(--sys-text-primary);
}

.lp-loading-text {
    color: var(--sys-text-muted);
}

.lp-loading-progress {
    background: var(--sys-primary-soft);
}

.lp-loading-progress::before {
    background: linear-gradient(90deg, var(--sys-secondary-soft) 0%, var(--sys-secondary) 35%, var(--sys-accent) 65%, var(--sys-accent-soft) 100%);
}

.hp-navbar {
    background: rgba(var(--sys-surface-bg-rgb), 0.78);
    border-bottom-color: var(--sys-border-soft);
}

.hp-navbar.is-scrolled {
    background: rgba(var(--sys-surface-bg-rgb), 0.9);
    box-shadow: 0 8px 24px var(--sys-shadow-soft);
}

.hp-nav-links > li > a:hover,
.hp-dropdown-toggle:hover {
    color: var(--sys-primary) !important;
    background: var(--sys-secondary-soft);
}

.hp-nav-links > li > a.active,
.hp-dropdown-toggle.active {
    color: var(--sys-text-primary) !important;
    background: var(--sys-primary-soft);
}

.hp-dropdown-menu,
.hp-user-dropdown {
    background: rgba(var(--sys-surface-bg-rgb), 0.94);
    border-color: var(--sys-border-soft);
    box-shadow: 0 8px 40px var(--sys-shadow-medium);
}

.hp-dropdown-menu a:hover {
    background: var(--sys-secondary-soft);
    color: var(--sys-primary);
}

.hp-dropdown-menu a.active {
    background: var(--sys-primary-soft);
    color: var(--sys-primary);
}

.hp-icon-btn:hover {
    color: var(--sys-accent);
}

.hp-avatar:hover {
    border-color: var(--sys-secondary);
    box-shadow: 0 0 0 3px var(--sys-focus-ring);
}

.hp-user-name {
    color: var(--sys-text-primary);
}

.hp-user-role,
.hp-dropdown-toggle svg,
.hp-icon-btn {
    color: var(--sys-text-muted);
}

.hp-divider {
    background: var(--sys-border-soft);
}

.hp-navicon,
.hp-navicon::before,
.hp-navicon::after {
    background: var(--sys-primary);
}

[data-bs-theme="dark"] .hp-navbar {
    background: rgba(var(--sys-page-bg-rgb), 0.82);
    border-bottom-color: var(--sys-border-soft);
}

[data-bs-theme="dark"] .hp-navbar.is-scrolled {
    background: rgba(var(--sys-page-bg-rgb), 0.96);
    box-shadow: 0 4px 28px var(--sys-shadow-medium);
}

[data-bs-theme="dark"] .hp-nav-links > li > a,
[data-bs-theme="dark"] .hp-dropdown-toggle,
[data-bs-theme="dark"] .hp-icon-btn,
[data-bs-theme="dark"] .hp-dropdown-menu a,
[data-bs-theme="dark"] .hp-user-role {
    color: var(--sys-text-muted) !important;
}

[data-bs-theme="dark"] .hp-nav-links > li > a:hover,
[data-bs-theme="dark"] .hp-dropdown-toggle:hover,
[data-bs-theme="dark"] .hp-dropdown-menu a:hover {
    color: var(--sys-primary) !important;
    background: var(--sys-primary-soft);
}

[data-bs-theme="dark"] .hp-nav-links > li > a.active,
[data-bs-theme="dark"] .hp-dropdown-toggle.active,
[data-bs-theme="dark"] .hp-dropdown-menu a.active,
[data-bs-theme="dark"] .hp-user-name {
    color: var(--sys-text-primary) !important;
}

[data-bs-theme="dark"] .hp-dropdown-menu,
[data-bs-theme="dark"] .hp-user-dropdown {
    background: rgba(var(--sys-surface-bg-rgb), 0.97);
    border-color: var(--sys-border-soft);
    box-shadow: 0 8px 40px var(--sys-shadow-medium), inset 0 1px 0 var(--sys-border-soft);
}

[data-bs-theme="dark"] .hp-avatar {
    border-color: var(--sys-border-medium);
}

[data-bs-theme="dark"] .hp-avatar:hover {
    border-color: var(--sys-primary);
}

[data-bs-theme="dark"] .hp-divider {
    background: var(--sys-border-soft);
}

[data-bs-theme="dark"] .hp-navicon,
[data-bs-theme="dark"] .hp-navicon::before,
[data-bs-theme="dark"] .hp-navicon::after {
    background: var(--sys-primary);
}

@media (max-width: 768px) {
    [data-bs-theme="dark"] .hp-nav-group {
        background: rgba(var(--sys-page-bg-rgb), 0.98);
        border-bottom-color: var(--sys-border-soft);
    }

    [data-bs-theme="dark"] .hp-nav-links > li {
        border-bottom-color: var(--sys-border-soft);
    }

    [data-bs-theme="dark"] .hp-avatar-wrap .hp-user-dropdown {
        background: var(--sys-primary-soft);
    }

    [data-bs-theme="dark"] .hp-user-actions {
        border-top-color: var(--sys-border-soft);
    }
}

.login-premium {
    --primary: var(--sys-primary);
    --primary-mid: var(--sys-primary-tint);
    --surface: var(--sys-surface-bg);
    --text: var(--sys-text-primary);
    --muted: var(--sys-text-muted);
    --border: var(--sys-border);
    --gold: var(--sys-accent);
    --teal: var(--sys-secondary);
    --shadow-lg: 0 8px 40px var(--sys-shadow-medium);
    background:
        radial-gradient(circle at 100% 100%, var(--sys-secondary-soft-strong) 0%, transparent 32%),
        radial-gradient(circle at 0% 0%, var(--sys-accent-soft) 0%, transparent 26%),
        linear-gradient(170deg, var(--sys-primary) 0%, var(--sys-primary-tint) 100%);
}

.login-premium::before {
    background: radial-gradient(circle, var(--sys-secondary-soft-strong) 0%, transparent 70%);
}

.login-premium::after {
    background: radial-gradient(circle, var(--sys-accent-soft) 0%, transparent 70%);
}

.login-premium .card.card-md {
    background: var(--sys-surface-bg);
    border-color: var(--sys-border);
    box-shadow: 0 12px 40px var(--sys-shadow-medium);
}

.login-premium__brand-title {
    color: var(--sys-primary-contrast);
}

.login-premium__brand-title span {
    color: var(--sys-accent);
}

.login-premium__brand-subtitle,
.login-premium__support,
.login-premium__support span {
    color: rgba(var(--sys-primary-contrast-rgb), 0.68);
}

.login-premium__support a {
    color: rgba(var(--sys-primary-contrast-rgb), 0.86);
}

.login-premium__brand-badge {
    background: var(--sys-secondary-soft);
    color: var(--sys-secondary);
}

.login-premium__card-header h2,
.login-premium .form-label,
.login-premium .form-control,
.login-premium .input-group.input-group-flat .input-group-text a {
    color: var(--sys-text-primary);
}

.login-premium__card-header p,
.login-premium__forgot a {
    color: var(--sys-text-muted);
}

.login-premium .form-control,
.login-premium .input-group.input-group-flat {
    border-color: var(--sys-border);
    background: var(--sys-surface-bg);
}

.login-premium .form-control::placeholder {
    color: var(--sys-text-muted);
}

.login-premium .form-control:-webkit-autofill,
.login-premium .form-control:-webkit-autofill:hover,
.login-premium .form-control:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 1000px var(--sys-surface-bg) inset !important;
    box-shadow: 0 0 0 1000px var(--sys-surface-bg) inset !important;
    -webkit-text-fill-color: var(--sys-text-primary) !important;
    caret-color: var(--sys-text-primary);
    border-color: var(--sys-border) !important;
}

.login-premium .form-control:focus,
.login-premium .input-group.input-group-flat:focus-within {
    border-color: var(--sys-secondary);
    box-shadow: 0 0 0 3px var(--sys-focus-ring);
}

.login-premium .input-group.input-group-flat .input-group-text a:hover,
.login-premium__forgot a:hover {
    color: var(--sys-secondary);
}

.login-premium__support a:hover {
    color: var(--sys-primary-contrast);
}

.login-premium .btn-primary {
    background: linear-gradient(180deg, var(--sys-secondary-tint) 0%, var(--sys-secondary) 100%);
    color: var(--sys-secondary-contrast);
    box-shadow: 0 8px 28px var(--sys-shadow-soft);
}

.login-premium .btn-primary:hover {
    background: linear-gradient(180deg, var(--sys-secondary-tint) 0%, var(--sys-secondary-shade) 100%);
    color: var(--sys-secondary-contrast);
}

.login-premium .btn-primary:focus-visible,
.login-premium__forgot a:focus-visible,
.login-premium__support a:focus-visible {
    outline-color: var(--sys-accent);
}

.login-premium__gold-line {
    background: linear-gradient(90deg, var(--sys-accent) 0%, var(--sys-secondary) 100%);
}

.erro401 {
    --e-primary: var(--sys-primary);
    --e-primary-mid: var(--sys-primary-tint);
    --e-text: var(--sys-text-primary);
    --e-muted: var(--sys-text-muted);
    --e-border: var(--sys-border);
    --e-shadow-lg: 0 14px 48px var(--sys-shadow-medium);
    background:
        radial-gradient(circle at 92% 88%, var(--sys-secondary-soft-strong) 0%, transparent 46%),
        radial-gradient(circle at 8% 12%, var(--sys-accent-soft) 0%, transparent 40%),
        linear-gradient(180deg, var(--sys-page-bg) 0%, var(--sys-page-bg-gradient-end) 100%);
}

.erro401::before {
    background: radial-gradient(circle, var(--sys-secondary-soft-strong) 0%, transparent 72%);
}

.erro401::after {
    background: radial-gradient(circle, var(--sys-accent-soft) 0%, transparent 72%);
}

.erro401__card {
    background: rgba(var(--sys-surface-bg-rgb), 0.92);
    border-color: var(--sys-border-soft);
    box-shadow: 0 16px 48px var(--sys-shadow-medium);
}

.erro401__badge {
    color: var(--sys-primary);
    background: var(--sys-secondary-soft);
    border-color: var(--sys-secondary-soft-strong);
}

.erro401__code,
.erro401__title {
    color: var(--sys-text-primary);
}

.erro401__subtitle {
    color: var(--sys-text-muted);
}

.erro401__btn--primary {
    background: linear-gradient(180deg, var(--sys-primary-tint) 0%, var(--sys-primary) 100%);
    color: var(--sys-primary-contrast);
    box-shadow: 0 8px 22px var(--sys-shadow-medium);
}

.erro401__btn--primary:hover {
    background: linear-gradient(180deg, var(--sys-primary-tint) 0%, var(--sys-primary-shade) 100%);
    color: var(--sys-primary-contrast);
}

.erro401__btn--ghost {
    background: rgba(var(--sys-surface-bg-rgb), 0.7);
    border-color: var(--sys-border);
    color: var(--sys-text-primary);
}

.erro401__btn--ghost:hover {
    color: var(--sys-primary);
    border-color: var(--sys-border-medium);
    background: var(--sys-secondary-soft);
}

.ma-page,
.mcnt-page,
.mc-page {
    background:
        radial-gradient(circle at 92% 8%, var(--sys-secondary-soft) 0%, transparent 34%),
        radial-gradient(circle at 4% 96%, var(--sys-accent-soft) 0%, transparent 30%),
        linear-gradient(180deg, var(--sys-page-bg) 0%, var(--sys-page-bg-gradient-end) 100%);
}

.ma-page {
    --ma-primary: var(--sys-primary);
    --ma-surface: var(--sys-surface-bg);
    --ma-text: var(--sys-text-primary);
    --ma-muted: var(--sys-text-muted);
    --ma-border: var(--sys-border);
    --ma-teal: var(--sys-secondary);
    --ma-shadow: 0 10px 36px var(--sys-shadow-soft);
}

.ma-card,
.ma-metric,
.mav-docs-grid article,
.mav-doc-item {
    border-color: var(--sys-border-soft);
}

.ma-card {
    background: rgba(var(--sys-surface-bg-rgb), 0.92);
    box-shadow: 0 14px 36px var(--sys-shadow-soft);
}

.ma-metric {
    background: rgba(var(--sys-surface-bg-rgb), 0.72);
}

.ma-subtitle,
.mav-meta,
.mav-doc-item small,
.mav-empty {
    color: var(--sys-text-muted);
}

.ma-title,
.ma-metric strong,
.mav-name,
.mav-card h3,
.mav-card dd,
.mav-docs-header h3,
.mav-doc-item strong,
.mav-docs-grid h4 {
    color: var(--sys-text-primary);
}

[data-bs-theme="dark"] .ma-card,
[data-bs-theme="dark"] .ma-metric,
[data-bs-theme="dark"] .mav-docs-grid article,
[data-bs-theme="dark"] .mav-doc-item {
    background: rgba(var(--sys-surface-bg-rgb), 0.9);
    border-color: var(--sys-border-soft);
}

.mcnt-page {
    --mcnt-primary: var(--sys-primary);
    --mcnt-text: var(--sys-text-primary);
    --mcnt-muted: var(--sys-text-muted);
    --mcnt-border: var(--sys-border);
    --mcnt-teal: var(--sys-secondary);
    --mcnt-surface-soft: rgba(var(--sys-surface-bg-rgb), 0.88);
    --mcnt-shadow: 0 14px 36px var(--sys-shadow-soft);
}

.mcnt-card {
    border-color: var(--sys-border-soft);
    background: rgba(var(--sys-surface-bg-rgb), 0.9);
    box-shadow: 0 14px 36px var(--sys-shadow-soft);
}

.mcnt-card .border-end {
    border-right-color: var(--sys-border-soft) !important;
    background: var(--sys-primary-soft);
}

.mcnt-card .list-group-item,
.mcnt-card #mostrarInput {
    border-color: var(--sys-border);
    background: var(--sys-surface-bg);
    color: var(--sys-text-primary);
}

.mcnt-card .list-group-item:hover {
    border-color: var(--sys-border-medium);
    box-shadow: 0 8px 16px var(--sys-shadow-soft);
    color: var(--sys-primary);
}

.mcnt-card .list-group-item.active {
    border-color: var(--sys-border-medium);
    background: var(--sys-primary-soft);
    box-shadow: inset 0 0 0 1px var(--sys-border-medium);
    color: var(--sys-text-primary);
}

.mcnt-card .list-group-item:focus-visible,
.mcnt-card #mostrarInput:hover {
    border-color: var(--sys-border-medium);
    box-shadow: 0 0 0 3px var(--sys-focus-ring);
    outline: none;
}

.mcnt-card .card-title,
.mcnt-card h2.mb-4,
.mcnt-card .form-label {
    color: var(--sys-text-primary);
}

.mcnt-card .card-subtitle,
.mcnt-card .subheader {
    color: var(--sys-text-muted);
}

.mcnt-card .form-control:disabled,
.mcnt-card .form-control[readonly] {
    background: var(--sys-surface-subtle);
    border-color: var(--sys-border-soft);
    color: var(--sys-text-soft);
}

.mcnt-card .card-footer {
    border-top-color: var(--sys-border-soft);
    background: var(--sys-primary-soft);
}

[data-bs-theme="dark"] .mcnt-card {
    background: rgba(var(--sys-surface-bg-rgb), 0.9);
    border-color: var(--sys-border-soft);
    box-shadow: 0 16px 42px var(--sys-shadow-medium), inset 0 1px 0 var(--sys-border-soft);
}

[data-bs-theme="dark"] .mcnt-card .border-end {
    background: var(--sys-primary-soft);
}

[data-bs-theme="dark"] .mcnt-card .list-group-item,
[data-bs-theme="dark"] .mcnt-card #mostrarInput {
    background: rgba(var(--sys-surface-bg-rgb), 0.78);
    border-color: var(--sys-border-soft);
    color: var(--sys-text-primary);
}

[data-bs-theme="dark"] .mcnt-card .list-group-item:hover {
    border-color: var(--sys-border-medium);
    box-shadow: 0 10px 20px var(--sys-shadow-medium);
    color: var(--sys-text-primary);
}

[data-bs-theme="dark"] .mcnt-card .list-group-item.active {
    border-color: var(--sys-border-medium);
    background: var(--sys-primary-soft);
    box-shadow: inset 0 0 0 1px var(--sys-border-medium);
    color: var(--sys-text-primary);
}

[data-bs-theme="dark"] .mcnt-card .list-group-item:focus-visible,
[data-bs-theme="dark"] .mcnt-card #mostrarInput:hover {
    border-color: var(--sys-border-medium);
    box-shadow: 0 0 0 3px var(--sys-focus-ring);
    color: var(--sys-text-primary);
    outline: none;
}

[data-bs-theme="dark"] .mcnt-card .form-control,
[data-bs-theme="dark"] .mcnt-card .form-select {
    color: var(--sys-text-primary);
    caret-color: var(--sys-text-primary);
}

[data-bs-theme="dark"] .mcnt-card .form-control::placeholder,
[data-bs-theme="dark"] .mcnt-card .form-select::placeholder {
    color: var(--sys-text-soft);
}

[data-bs-theme="dark"] .mcnt-card .form-control:-webkit-autofill,
[data-bs-theme="dark"] .mcnt-card .form-control:-webkit-autofill:hover,
[data-bs-theme="dark"] .mcnt-card .form-control:-webkit-autofill:focus,
[data-bs-theme="dark"] .mcnt-card .form-select:-webkit-autofill,
[data-bs-theme="dark"] .mcnt-card .form-select:-webkit-autofill:hover,
[data-bs-theme="dark"] .mcnt-card .form-select:-webkit-autofill:focus {
    -webkit-text-fill-color: var(--sys-text-primary);
    caret-color: var(--sys-text-primary);
    box-shadow: 0 0 0 1000px rgba(var(--sys-surface-bg-rgb), 0.82) inset;
}
