:root {
    color-scheme: light;
}

:root[data-theme="dark"] {
    color-scheme: dark;
    --bg-1: #0b1120;
    --bg-2: #111827;
    --panel: rgba(17, 24, 39, 0.94);
    --panel-soft: rgba(30, 41, 59, 0.9);
    --ink-1: #f1f5f9;
    --ink-2: #a7b2c4;
    --brand: #9f8ad0;
    --brand-2: #b9a7e5;
    --accent: #c4a7d8;
    --line: rgba(203, 213, 225, 0.14);
    --shadow-lg: 0 30px 80px rgba(0, 0, 0, 0.34);
    --shadow-md: 0 16px 36px rgba(0, 0, 0, 0.28);
    --bs-body-color: #e5e7eb;
    --bs-body-bg: #0b1120;
    --bs-secondary-color: #a7b2c4;
    --bs-border-color: rgba(203, 213, 225, 0.16);
}

.workspace-theme-switch,
.standalone-theme-switch {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 14px;
    border: 1px solid rgba(96, 67, 141, 0.17);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    color: #4f3876;
    font-size: 0.76rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.workspace-theme-switch:hover,
.standalone-theme-switch:hover {
    background: #ffffff;
    border-color: rgba(96, 67, 141, 0.3);
}

.standalone-theme-switch {
    position: fixed;
    top: 18px;
    right: 18px;
    z-index: 1100;
    box-shadow: 0 10px 24px rgba(18, 33, 52, 0.14);
}

:root[data-theme="dark"] body,
:root[data-theme="dark"] body.app-bg,
:root[data-theme="dark"] body[data-app-version="v2"] {
    background: #0b1120;
    color: #e5e7eb;
}

:root[data-theme="dark"] .app-bg::before {
    background: radial-gradient(circle, rgba(99, 102, 241, 0.14), rgba(99, 102, 241, 0));
}

:root[data-theme="dark"] .app-bg::after {
    background: radial-gradient(circle, rgba(14, 165, 233, 0.1), rgba(14, 165, 233, 0));
}

:root[data-theme="dark"] .app-sidebar,
:root[data-theme="dark"] .workspace-topbar {
    background: #111827;
    border-color: rgba(203, 213, 225, 0.14);
}

:root[data-theme="dark"] .brand-text,
:root[data-theme="dark"] .app-nav-link,
:root[data-theme="dark"] .app-nav-label,
:root[data-theme="dark"] .page-heading h1,
:root[data-theme="dark"] .panel-title,
:root[data-theme="dark"] .panel-title-sm,
:root[data-theme="dark"] .metric-card strong,
:root[data-theme="dark"] .detail-item strong,
:root[data-theme="dark"] .form-label,
:root[data-theme="dark"] label {
    color: #f1f5f9;
}

:root[data-theme="dark"] .brand-copy small,
:root[data-theme="dark"] .app-role,
:root[data-theme="dark"] .page-heading p,
:root[data-theme="dark"] .label-muted,
:root[data-theme="dark"] .text-secondary,
:root[data-theme="dark"] .text-muted {
    color: #a7b2c4 !important;
}

:root[data-theme="dark"] .app-nav-icon,
:root[data-theme="dark"] .app-sidebar-tool,
:root[data-theme="dark"] .workspace-chip,
:root[data-theme="dark"] .workspace-compact-switch,
:root[data-theme="dark"] .workspace-theme-switch,
:root[data-theme="dark"] .workspace-version-switch,
:root[data-theme="dark"] .workspace-role-badge {
    background: #1e293b;
    border-color: rgba(203, 213, 225, 0.14);
    color: #dbeafe;
}

:root[data-theme="dark"] .standalone-theme-switch {
    background: #1e293b;
    border-color: rgba(203, 213, 225, 0.18);
    color: #dbeafe;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.3);
}

:root[data-theme="dark"] .app-nav-link:hover .app-nav-icon,
:root[data-theme="dark"] .app-sidebar-tool:hover,
:root[data-theme="dark"] .workspace-compact-switch:hover,
:root[data-theme="dark"] .workspace-theme-switch:hover,
:root[data-theme="dark"] .workspace-version-switch:hover {
    background: #273652;
    color: #bfdbfe;
}

:root[data-theme="dark"] .surface,
:root[data-theme="dark"] .surface-soft,
:root[data-theme="dark"] .metric-card,
:root[data-theme="dark"] .detail-item,
:root[data-theme="dark"] .queue-item,
:root[data-theme="dark"] .deal-card,
:root[data-theme="dark"] .todo-card,
:root[data-theme="dark"] .digital-asset-card,
:root[data-theme="dark"] .map-list-item,
:root[data-theme="dark"] .client-opportunity-card,
:root[data-theme="dark"] .modal-content,
:root[data-theme="dark"] .dropdown-menu,
:root[data-theme="dark"] .card {
    background: #111827;
    border-color: rgba(203, 213, 225, 0.14);
    color: #e5e7eb;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.24);
}

:root[data-theme="dark"] .astra-app .form-control,
:root[data-theme="dark"] .astra-app .form-select,
:root[data-theme="dark"] .form-control,
:root[data-theme="dark"] .form-select {
    background-color: #182235;
    border-color: rgba(203, 213, 225, 0.18);
    color: #f1f5f9;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

:root[data-theme="dark"] .form-control::placeholder {
    color: #7f8ca3;
}

:root[data-theme="dark"] .form-select option {
    background: #182235;
    color: #f1f5f9;
}

:root[data-theme="dark"] .form-control:disabled,
:root[data-theme="dark"] .form-select:disabled,
:root[data-theme="dark"] .form-control[readonly] {
    background-color: #111827;
    color: #94a3b8;
}

:root[data-theme="dark"] .astra-app .btn-outline-secondary,
:root[data-theme="dark"] .astra-app .btn-outline-light,
:root[data-theme="dark"] .btn-light {
    background: #1e293b;
    border-color: rgba(203, 213, 225, 0.18);
    color: #dbeafe;
}

:root[data-theme="dark"] .astra-app .btn-outline-secondary:hover,
:root[data-theme="dark"] .astra-app .btn-outline-light:hover,
:root[data-theme="dark"] .btn-light:hover {
    background: #273652;
    border-color: rgba(147, 197, 253, 0.34);
    color: #ffffff;
}

:root[data-theme="dark"] .astra-app .table-wrap,
:root[data-theme="dark"] .astra-app .table-wrap-modern,
:root[data-theme="dark"] .table-responsive {
    border-color: rgba(203, 213, 225, 0.14);
    background: #111827;
}

:root[data-theme="dark"] .astra-app .table,
:root[data-theme="dark"] .table {
    --bs-table-color: #e5e7eb;
    --bs-table-bg: transparent;
    --bs-table-border-color: rgba(203, 213, 225, 0.12);
    --bs-table-hover-color: #ffffff;
    --bs-table-hover-bg: rgba(59, 130, 246, 0.1);
    color: #e5e7eb;
}

:root[data-theme="dark"] .astra-app .table thead th {
    background: #1e293b;
    color: #dbeafe;
    border-color: rgba(203, 213, 225, 0.14);
}

:root[data-theme="dark"] .astra-app .table tbody td {
    background: rgba(17, 24, 39, 0.86);
    color: #dbe2ee;
    border-color: rgba(203, 213, 225, 0.1);
}

:root[data-theme="dark"] .astra-app .table tbody tr:hover td {
    background: #1b2940;
}

:root[data-theme="dark"] hr {
    border-color: rgba(203, 213, 225, 0.16);
}

:root[data-theme="dark"] .alert-primary {
    --bs-alert-color: #bfdbfe;
    --bs-alert-bg: rgba(30, 64, 175, 0.24);
    --bs-alert-border-color: rgba(96, 165, 250, 0.24);
}

:root[data-theme="dark"] .alert-success {
    --bs-alert-color: #bbf7d0;
    --bs-alert-bg: rgba(21, 128, 61, 0.22);
    --bs-alert-border-color: rgba(74, 222, 128, 0.22);
}

:root[data-theme="dark"] .alert-danger {
    --bs-alert-color: #fecaca;
    --bs-alert-bg: rgba(185, 28, 28, 0.22);
    --bs-alert-border-color: rgba(248, 113, 113, 0.22);
}

:root[data-theme="dark"] .login-pro-bg {
    background:
        radial-gradient(circle at 12% 12%, rgba(37, 99, 235, 0.2) 0, rgba(37, 99, 235, 0) 36%),
        radial-gradient(circle at 88% 10%, rgba(13, 148, 136, 0.16) 0, rgba(13, 148, 136, 0) 34%),
        linear-gradient(180deg, #080d18 0%, #111827 100%);
}

:root[data-theme="dark"] .login-pro-card,
:root[data-theme="dark"] .login-pro-main {
    background: #111827;
    border-color: rgba(203, 213, 225, 0.14);
}

:root[data-theme="dark"] .login-pro-main-head h2 {
    color: #f1f5f9;
}

:root[data-theme="dark"] .login-pro-main-head span,
:root[data-theme="dark"] .login-pro-input-wrap i {
    color: #93a4bc;
}

:root[data-theme="dark"] body[data-app-version="v2"] .surface,
:root[data-theme="dark"] body[data-app-version="v2"] .surface-soft {
    background: #111827;
    border-color: rgba(203, 213, 225, 0.14);
}

:root[data-theme="dark"] body[data-app-version="v2"] .quality-pill,
:root[data-theme="dark"] .quality-pill {
    background: #1e2d4b;
    border-color: rgba(147, 197, 253, 0.2);
    color: #bfdbfe;
}

:root[data-theme="dark"] .assignment-live-indicator,
:root[data-theme="dark"] .assignment-state-claimed,
:root[data-theme="dark"] .assignment-state-protected {
    color: #86efac;
}

:root[data-theme="dark"] .assignment-state-offered {
    color: #fcd34d;
}

:root[data-theme="dark"] .assignment-state-queued,
:root[data-theme="dark"] .assignment-state-locked,
:root[data-theme="dark"] .assignment-live-indicator.is-error {
    color: #cbd5e1;
}

:root[data-theme="dark"] .catalog-inline-cell:hover,
:root[data-theme="dark"] .catalog-inline-cell:focus,
:root[data-theme="dark"] .catalog-inline-cell.is-editing,
:root[data-theme="dark"] .catalog-inline-cell.is-saving {
    background: rgba(167, 139, 250, 0.12);
    box-shadow: inset 0 0 0 1px rgba(196, 181, 253, 0.28);
}

:root[data-theme="dark"] .catalog-inline-feedback {
    border-color: rgba(134, 239, 172, 0.24);
    background: #132b24;
    color: #bbf7d0;
}

:root[data-theme="dark"] .catalog-inline-feedback.is-error {
    border-color: rgba(252, 165, 165, 0.24);
    background: #351a20;
    color: #fecaca;
}

:root[data-theme="dark"] body[data-app-version="v2"] [class*="hero"]:not(.btn):not(i),
:root[data-theme="dark"] body[data-app-version="v2"] [class*="panel"]:not(.btn):not(i) {
    border-color: rgba(203, 213, 225, 0.14);
}

:root[data-theme="dark"] body[data-app-version="v2"] .v2-dashboard-hero,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-dashboard-hero-metric,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-lead-card,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-offer-card,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-lead-card-compact,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-request-card,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-resource-card,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-quote-card,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-profile-card,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-form-block {
    background: #151f31;
    border-color: rgba(203, 213, 225, 0.14);
    color: #e5e7eb;
}

:root[data-theme="dark"] body[data-app-version="v2"] .v2-radar-card,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-lead-face,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-flip-face,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-comment-item,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-preset-btn,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-quote-box,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-box-select-btn,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-mission-panel,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-smart-panel,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-map-result-card,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-base-plan-card,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-audit-kpi,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-audit-section,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-stage1-edit-collapse,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-onboarding-master-summary,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-client-segment-collapse,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-client-segment-body,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-profile-card {
    background: #151f31;
    border-color: rgba(203, 213, 225, 0.14);
    color: #e5e7eb;
}

:root[data-theme="dark"] body[data-app-version="v2"] .v2-lead-front,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-lead-back,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-flip-front,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-flip-back {
    background:
        radial-gradient(circle at 84% 14%, rgba(96, 165, 250, 0.12) 0, rgba(96, 165, 250, 0) 36%),
        #151f31;
}

:root[data-theme="dark"] body[data-app-version="v2"] .v2-build-panel,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-preset-btn.is-active,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-base-plan-card.is-selected,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-map-result-card.is-selected {
    background:
        radial-gradient(circle at 85% 5%, rgba(59, 130, 246, 0.14) 0, rgba(59, 130, 246, 0) 44%),
        #1b2940;
    border-color: rgba(96, 165, 250, 0.4);
}

:root[data-theme="dark"] body[data-app-version="v2"] h1,
:root[data-theme="dark"] body[data-app-version="v2"] h2,
:root[data-theme="dark"] body[data-app-version="v2"] h3,
:root[data-theme="dark"] body[data-app-version="v2"] h4,
:root[data-theme="dark"] body[data-app-version="v2"] h5,
:root[data-theme="dark"] body[data-app-version="v2"] h6,
:root[data-theme="dark"] body[data-app-version="v2"] strong {
    color: #f1f5f9;
}

:root[data-theme="dark"] body[data-app-version="v2"] p,
:root[data-theme="dark"] body[data-app-version="v2"] small,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-dashboard-hero-text,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-dashboard-hero-metric span {
    color: #a7b2c4;
}

:root[data-theme="dark"] body[data-app-version="v2"] .v2-lead-compact-kpi,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-offer-meta-item,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-offer-captador-comment {
    background: #1e293b;
    border-color: rgba(203, 213, 225, 0.12);
}

:root[data-theme="dark"] body[data-app-version="v2"] .v2-dashboard-list-item,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-dashboard-mini-item,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-dashboard-activity-item,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-dashboard-quick-card,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-snapshot-card,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-box-hours,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-client-info-item,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-requirement-pack-item,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-drive-item,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-drive-item-sm {
    background-color: #1e293b;
    border-color: rgba(203, 213, 225, 0.12);
    color: #dbe2ee;
}

:root[data-theme="dark"] body[data-app-version="v2"] .v2-map-status[data-tone="muted"],
:root[data-theme="dark"] body[data-app-version="v2"] .v2-audit-status[data-tone="muted"],
:root[data-theme="dark"] body[data-app-version="v2"] .v2-close-sale-status[data-tone="muted"] {
    background: #1e293b;
    color: #b8c3d4;
}

:root[data-theme="dark"] body[data-app-version="v2"] .v2-map-status[data-tone="loading"],
:root[data-theme="dark"] body[data-app-version="v2"] .v2-audit-status[data-tone="loading"],
:root[data-theme="dark"] body[data-app-version="v2"] .v2-alert-info,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-profile-alert-item.v2-alert-info {
    background: rgba(30, 64, 175, 0.24);
    color: #bfdbfe;
}

:root[data-theme="dark"] body[data-app-version="v2"] .v2-map-status[data-tone="ok"],
:root[data-theme="dark"] body[data-app-version="v2"] .v2-audit-status[data-tone="ok"],
:root[data-theme="dark"] body[data-app-version="v2"] .v2-close-sale-status[data-tone="ok"],
:root[data-theme="dark"] body[data-app-version="v2"] .v2-stage1-item.is-done {
    background: rgba(21, 128, 61, 0.22);
    color: #bbf7d0;
}

:root[data-theme="dark"] body[data-app-version="v2"] .v2-map-status[data-tone="warn"],
:root[data-theme="dark"] body[data-app-version="v2"] .v2-audit-status[data-tone="warn"],
:root[data-theme="dark"] body[data-app-version="v2"] .v2-alert-warning,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-profile-alert-item.v2-alert-warning {
    background: rgba(180, 83, 9, 0.22);
    color: #fde68a;
}

:root[data-theme="dark"] body[data-app-version="v2"] .v2-map-status[data-tone="error"],
:root[data-theme="dark"] body[data-app-version="v2"] .v2-audit-status[data-tone="error"],
:root[data-theme="dark"] body[data-app-version="v2"] .v2-profile-alert-item.v2-alert-danger,
:root[data-theme="dark"] body[data-app-version="v2"] .v2-stage1-item.is-pending {
    background: rgba(185, 28, 28, 0.22);
    color: #fecaca;
}

:root[data-theme="dark"] .list-group-item {
    background: #111827;
    border-color: rgba(203, 213, 225, 0.12);
    color: #e5e7eb;
}

:root[data-theme="dark"] .pagination {
    --bs-pagination-bg: #111827;
    --bs-pagination-color: #bfdbfe;
    --bs-pagination-border-color: rgba(203, 213, 225, 0.14);
    --bs-pagination-hover-bg: #1e293b;
    --bs-pagination-hover-color: #ffffff;
}

@media (max-width: 767px) {
    .workspace-theme-switch span {
        display: none;
    }

    .workspace-theme-switch {
        width: 40px;
        padding: 0;
    }
}
