/*
 * Tema Du Nordeste
 * ----------------
 * Identidade visual do app do vendedor (MM_MOVEL) aplicada ao sistema web:
 * fundo creme, verde de marca, dourado dos destaques e marrom terroso.
 *
 * As cores do Tailwind já chegam trocadas pelo tailwind.config.js (variáveis
 * --tw-c-*). Este arquivo cuida do que não passa pela paleta: variáveis dos
 * componentes antigos (design_system.css), branco/preto translúcidos pensados
 * para fundo escuro, cores fixas em hexadecimal e os componentes da marca
 * (menu lateral, cabeçalho, cartões, wizard).
 */

[data-theme="nordeste"] {
    color-scheme: light;

    /* Paleta da marca (MM_MOVEL/lib/src/theme/app_colors.dart) */
    --nd-green: #1F7A30;
    --nd-green-dark: #17602A;
    --nd-green-deep: #1A5A22;
    --nd-green-deeper: #123F18;
    --nd-green-bright: #2E8B3A;
    --nd-green-soft: #E2EED7;
    --nd-gold: #F6C21C;
    --nd-gold-light: #FBD352;
    --nd-gold-dark: #D39B0A;
    --nd-gold-soft: #FCEBB0;
    --nd-brown: #6B3A1C;
    --nd-brown-dark: #4F2A13;
    --nd-brown-button: #7B3A16;
    --nd-rust: #8A3414;
    --nd-cream: #FBF5E6;
    --nd-surface: #FFFCF4;
    --nd-beige: #F3E8CE;
    --nd-beige-dark: #EADCBB;
    --nd-border: #E8DCC0;
    --nd-text: #3A2A16;
    --nd-text-soft: #6E5B40;
    --nd-text-muted: #9A8A6C;
    --nd-danger: #B3261E;

    --nd-radius: 14px;
    --nd-shadow-card: 0 3px 10px rgba(90, 58, 16, 0.06);
    --nd-shadow-kpi: 0 3px 8px rgba(58, 42, 22, 0.10);
    --nd-shadow-float: 0 14px 34px rgba(58, 42, 22, 0.14);

    /* Variáveis do design_system.css e do input.css */
    --bg-main: var(--nd-cream);
    --bg-surface: var(--nd-surface);
    --bg-surface-soft: rgba(255, 252, 244, 0.94);
    --bg-surface-strong: var(--nd-beige);
    --bg-card: var(--nd-surface);
    --bg-input: var(--nd-surface);
    --bg-hover: rgba(107, 58, 28, 0.05);
    --border-premium: var(--nd-border);
    --border-input: var(--nd-border);
    --border-subtle: var(--nd-border);
    --shadow-soft: var(--nd-shadow-card);
    --shadow-strong: var(--nd-shadow-float);

    --emerald-primary: var(--nd-green);
    --emerald-glow: rgba(31, 122, 48, 0.14);
    --indigo-primary: var(--nd-brown);
    --indigo-glow: rgba(107, 58, 28, 0.14);
    --amber-primary: var(--nd-gold);
    --danger: var(--nd-danger);
    --danger-primary: var(--nd-danger);
    --danger-glow: rgba(179, 38, 30, 0.25);

    --text-primary: var(--nd-text);
    --text-muted: var(--nd-text-soft);
    --text-dim: var(--nd-text-muted);
    --text-inverse: #fff;

    --color-bg: var(--nd-surface);
    --color-surface: var(--nd-surface);
    --color-surface-hover: var(--nd-beige);
    --color-text: var(--nd-text);
    --color-text-muted: var(--nd-text-soft);
    --color-border: var(--nd-border);
    --color-border-subtle: var(--nd-beige);

    --sidebar-bg: linear-gradient(180deg, #1F6628 0%, #154A1B 100%);
    --sidebar-text: #fff;
    --sidebar-muted: rgba(255, 255, 255, 0.72);
    --sidebar-accent: var(--nd-gold);
}

/* ------------------------------------------------------------------ base */

[data-theme="nordeste"] body,
[data-theme="nordeste"] .theme-body {
    background-color: var(--nd-cream);
    color: var(--nd-text);
    font-family: "Nunito", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

/* O tema escuro gritava em itálico caixa-alta; no app os títulos são retos. */
[data-theme="nordeste"] .italic:is(.font-black, .font-extrabold, .uppercase, h1, h2, h3, h4, h5) {
    font-style: normal;
}

[data-theme="nordeste"] ::selection {
    background: var(--nd-gold-soft);
    color: var(--nd-text);
}

[data-theme="nordeste"] ::-webkit-scrollbar-thumb {
    background: var(--nd-beige-dark);
}

[data-theme="nordeste"] ::-webkit-scrollbar-thumb:hover {
    background: #D6C49E;
}

/* ------------------------------------------ branco/preto pensados p/ escuro */

[data-theme="nordeste"] .text-white {
    color: var(--nd-text);
}

[data-theme="nordeste"] .hover\:text-white:hover,
[data-theme="nordeste"] .group:hover .group-hover\:text-white {
    color: var(--nd-text);
}

[data-theme="nordeste"] .text-black {
    color: var(--nd-text);
}

[data-theme="nordeste"] [class*="border-white/"],
[data-theme="nordeste"] [class*="divide-white/"] > * + * {
    border-color: var(--nd-border) !important;
}

[data-theme="nordeste"] [class~="hover:border-white/20"]:hover,
[data-theme="nordeste"] [class~="hover:border-white/10"]:hover {
    border-color: var(--nd-beige-dark) !important;
}

[data-theme="nordeste"] :is(.bg-white\/5, .bg-white\/10, .bg-white\/\[0\.03\], .bg-white\/\[0\.02\]) {
    background-color: rgba(107, 58, 28, 0.045) !important;
}

[data-theme="nordeste"] :is(.hover\:bg-white\/5, .hover\:bg-white\/10):hover,
[data-theme="nordeste"] .focus\:bg-white\/10:focus {
    background-color: rgba(107, 58, 28, 0.08) !important;
}

[data-theme="nordeste"] :is(.bg-black\/20, .bg-black\/25, .bg-black\/40) {
    background-color: rgba(107, 58, 28, 0.05) !important;
}

/* Overlays de modal continuam escuros, mas num marrom quente. */
[data-theme="nordeste"] :is(.bg-black\/60, .bg-black\/70, .bg-slate-950\/80, .bg-slate-950\/85):is(.fixed, .absolute.inset-0) {
    background-color: rgba(42, 29, 14, 0.55) !important;
}

/* Hexadecimais fixos do tema escuro */
[data-theme="nordeste"] :is(.bg-\[\#0b0f1a\], .bg-\[\#0f172a\]) {
    background-color: var(--nd-cream) !important;
}

[data-theme="nordeste"] :is(.bg-\[\#0b0f1a\]\/50, .bg-\[\#0b0f1a\]\/80, .bg-\[\#0b0f1a\]\/95) {
    background-color: rgba(251, 245, 230, 0.94) !important;
}

[data-theme="nordeste"] .from-\[\#1e293b\] {
    --tw-gradient-from: var(--nd-surface) var(--tw-gradient-from-position) !important;
    --tw-gradient-to: var(--nd-surface) var(--tw-gradient-to-position) !important;
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}

[data-theme="nordeste"] .to-\[\#0f172a\] {
    --tw-gradient-to: var(--nd-surface) var(--tw-gradient-to-position) !important;
}

/* Dourado claro não se lê sobre creme: como texto ele escurece. */
[data-theme="nordeste"] .text-amber-500,
[data-theme="nordeste"] .text-yellow-500 {
    color: #7F5804;
}

[data-theme="nordeste"] :is(.bg-amber-500, .bg-amber-400, .bg-yellow-500, .bg-yellow-400) {
    color: var(--nd-text);
}

/* Sombras frias e pesadas viram sombra quente e leve. */
[data-theme="nordeste"] :is(.shadow-2xl, .shadow-xl) {
    --tw-shadow: var(--nd-shadow-float) !important;
    --tw-shadow-colored: var(--nd-shadow-float) !important;
    box-shadow: var(--nd-shadow-float) !important;
}

[data-theme="nordeste"] :is(.shadow-lg, .shadow-md, .shadow-inner) {
    box-shadow: var(--nd-shadow-card) !important;
}

[data-theme="nordeste"] [class*="shadow-[0_"] {
    box-shadow: var(--nd-shadow-float) !important;
}

[data-theme="nordeste"] :is(.backdrop-blur-xl, .backdrop-blur-sm, .backdrop-blur-md) {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}

/* ------------------------------------------------------------ formulários */

[data-theme="nordeste"] :is(input[type="text"], input[type="email"], input[type="password"], input[type="number"],
    input[type="date"], input[type="search"], input[type="tel"], input[type="datetime-local"], input[type="month"],
    input[type="time"], select, textarea) {
    background-color: var(--nd-surface);
    border-color: var(--nd-border);
    color: var(--nd-text);
}

[data-theme="nordeste"] :is(input, select, textarea):focus {
    border-color: var(--nd-green) !important;
    box-shadow: 0 0 0 3px rgba(31, 122, 48, 0.14) !important;
    background-color: #fff;
}

[data-theme="nordeste"] :is(input, textarea)::placeholder {
    color: var(--nd-text-muted) !important;
}

[data-theme="nordeste"] select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236E5B40' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.85rem center;
    padding-right: 2.25rem !important;
}

[data-theme="nordeste"] input:-webkit-autofill,
[data-theme="nordeste"] input:-webkit-autofill:hover,
[data-theme="nordeste"] input:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 30px var(--nd-surface) inset !important;
    -webkit-text-fill-color: var(--nd-text) !important;
}

[data-theme="nordeste"] input[type="checkbox"],
[data-theme="nordeste"] input[type="radio"] {
    accent-color: var(--nd-green);
}

[data-theme="nordeste"] .input-premium {
    box-shadow: none;
}

[data-theme="nordeste"] .input-premium:focus {
    border-color: var(--nd-green);
    box-shadow: 0 0 0 3px rgba(31, 122, 48, 0.14);
}

/* ---------------------------------------------------- componentes antigos */

[data-theme="nordeste"] .card-premium,
[data-theme="nordeste"] .card-glass,
[data-theme="nordeste"] .page-shell,
[data-theme="nordeste"] .stack-card {
    background: var(--nd-surface);
    border: 1px solid var(--nd-border);
    box-shadow: var(--nd-shadow-card);
    backdrop-filter: none;
}

[data-theme="nordeste"] .header-op {
    background: linear-gradient(90deg, rgba(246, 194, 28, 0.14) 0%, transparent 100%);
    border-bottom-color: var(--nd-border);
}

[data-theme="nordeste"] .btn-primary-glow {
    background: var(--nd-green);
    color: #fff;
    border-radius: 12px;
    box-shadow: 0 6px 16px rgba(31, 122, 48, 0.22);
    font-weight: 800;
}

[data-theme="nordeste"] .btn-primary-glow:hover {
    background: var(--nd-green-bright);
    box-shadow: 0 8px 20px rgba(31, 122, 48, 0.28);
    transform: translateY(-1px);
}

[data-theme="nordeste"] .status-tag {
    border-radius: 6px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

[data-theme="nordeste"] .status-tag-ok {
    background: var(--nd-green);
    border-color: var(--nd-green);
    color: #fff;
}

[data-theme="nordeste"] .status-tag-info {
    background: var(--nd-beige);
    border-color: var(--nd-beige-dark);
    color: var(--nd-brown-dark);
}

[data-theme="nordeste"] .status-tag-warning {
    background: var(--nd-gold);
    border-color: var(--nd-gold);
    color: var(--nd-text);
}

[data-theme="nordeste"] .status-tag-danger {
    background: var(--nd-rust);
    border-color: var(--nd-rust);
    color: #fff;
}

[data-theme="nordeste"] .status-tag-neutral {
    background: var(--nd-beige-dark);
    border-color: var(--nd-beige-dark);
    color: var(--nd-text-soft);
}

[data-theme="nordeste"] .switch-slider-layout {
    background-color: var(--nd-beige-dark);
    border-color: transparent;
}

[data-theme="nordeste"] .switch-slider-layout:before {
    background-color: #fff;
    box-shadow: 0 1px 3px rgba(58, 42, 22, 0.25);
}

[data-theme="nordeste"] input:checked + .switch-slider-layout {
    background-color: var(--nd-green);
}

[data-theme="nordeste"] .fab-button {
    background: var(--nd-green);
    color: #fff;
    border-radius: 18px;
    box-shadow: 0 10px 24px rgba(31, 122, 48, 0.35);
}

[data-theme="nordeste"] .command-palette-backdrop {
    background: rgba(42, 29, 14, 0.5);
    backdrop-filter: blur(3px);
}

[data-theme="nordeste"] .command-palette-content {
    background: var(--nd-cream);
    border-color: var(--nd-border);
}

[data-theme="nordeste"] kbd {
    background: var(--nd-beige) !important;
    color: var(--nd-text-soft) !important;
}

/* Tabelas: cabeçalho bege e linhas creme, como a "Últimas vendas" do app. */
[data-theme="nordeste"] table thead {
    background-color: var(--nd-beige);
    color: var(--nd-text-soft);
}

[data-theme="nordeste"] table thead th {
    color: var(--nd-text-soft);
}

[data-theme="nordeste"] table tbody tr:hover {
    background-color: rgba(246, 194, 28, 0.08);
}

/* SweetAlert2 */
[data-theme="nordeste"] .swal2-popup {
    background: var(--nd-cream) !important;
    color: var(--nd-text) !important;
    border-radius: 18px !important;
    font-family: inherit;
}

[data-theme="nordeste"] .swal2-title {
    color: var(--nd-text) !important;
}

[data-theme="nordeste"] .swal2-html-container {
    color: var(--nd-text-soft) !important;
}

[data-theme="nordeste"] .swal2-styled.swal2-confirm {
    background-color: var(--nd-green) !important;
    border-radius: 12px !important;
    font-weight: 700;
}

[data-theme="nordeste"] .swal2-styled.swal2-cancel {
    background-color: var(--nd-beige-dark) !important;
    color: var(--nd-text) !important;
    border-radius: 12px !important;
    font-weight: 700;
}

[data-theme="nordeste"] .swal2-styled.swal2-deny {
    background-color: var(--nd-brown-button) !important;
    border-radius: 12px !important;
}

/* Autocomplete */
[data-theme="nordeste"] :is(.autocomplete-dropdown, .autocomplete-results, .autocomplete-list) {
    background: var(--nd-surface) !important;
    border-color: var(--nd-border) !important;
    color: var(--nd-text) !important;
    box-shadow: var(--nd-shadow-float) !important;
}

[data-theme="nordeste"] :is(.autocomplete-selection-wrapper, .autocomplete-input) {
    background-color: var(--nd-surface) !important;
    border-color: var(--nd-border) !important;
    color: var(--nd-text) !important;
}

/* ============================================================== LAYOUT */

/* Menu lateral verde (MmDrawer do app) */
[data-theme="nordeste"] .theme-sidebar {
    background: linear-gradient(180deg, #1F6628 0%, #154A1B 100%) !important;
    color: #fff !important;
    border-right: 0 !important;
    box-shadow: 4px 0 24px rgba(18, 63, 24, 0.18) !important;
    border-radius: 0 22px 22px 0;
}

@media (min-width: 768px) {
    [data-theme="nordeste"] .theme-sidebar {
        border-radius: 0;
    }
}

[data-theme="nordeste"] .nd-sidebar-brand {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

[data-theme="nordeste"] .nd-nav-item {
    color: rgba(255, 255, 255, 0.92);
    border-radius: 10px;
    transition: background-color 0.15s ease, color 0.15s ease;
}

[data-theme="nordeste"] .nd-nav-item:hover {
    background: rgba(255, 255, 255, 0.09);
    color: #fff;
}

[data-theme="nordeste"] .nd-nav-item.is-active {
    background: var(--nd-green-bright);
    color: #fff;
    font-weight: 800;
    box-shadow: inset 3px 0 0 var(--nd-gold);
}

[data-theme="nordeste"] .nd-nav-group.is-open > .nd-nav-item {
    color: #fff;
}

[data-theme="nordeste"] .nd-nav-sub {
    border-left: 1px solid rgba(255, 255, 255, 0.14);
    margin-left: 1.55rem;
}

[data-theme="nordeste"] .nd-nav-subitem {
    color: rgba(255, 255, 255, 0.78);
    border-radius: 9px;
}

[data-theme="nordeste"] .nd-nav-subitem:hover {
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

[data-theme="nordeste"] .nd-nav-subitem.is-active {
    background: rgba(255, 255, 255, 0.14);
    color: #fff;
    font-weight: 800;
}

[data-theme="nordeste"] .nd-nav-subitem.is-active i {
    color: var(--nd-gold);
}

[data-theme="nordeste"] .nd-on-dark { color: #fff; }
[data-theme="nordeste"] .nd-on-dark-soft { color: rgba(255, 255, 255, 0.72); }

[data-theme="nordeste"] .nd-sidebar-divider {
    border-top: 1px solid rgba(255, 255, 255, 0.15);
}

[data-theme="nordeste"] .nd-avatar {
    background: var(--nd-surface);
    color: var(--nd-green);
    border: 2px solid var(--nd-gold);
}

[data-theme="nordeste"] .nd-avatar--light {
    background: var(--nd-green-soft);
}

[data-theme="nordeste"] .nd-dot {
    width: 0.6rem;
    height: 0.6rem;
    border-radius: 999px;
    background: #E53935;
    border: 2px solid var(--nd-cream);
}

[data-theme="nordeste"] .nd-badge-gold {
    background: var(--nd-gold);
    color: var(--nd-text);
}

/* Menu recolhido: os mesmos seletores do design_system.css */
[data-theme="nordeste"] .sidebar-collapsed .nd-nav-sub {
    margin-left: 0;
    border-left: 0;
}

/* Cabeçalho creme com a linha fina embaixo (PageHeader do app) */
[data-theme="nordeste"] .theme-header {
    background: rgba(251, 245, 230, 0.96) !important;
    border-bottom: 1px solid var(--nd-border) !important;
    box-shadow: none !important;
    color: var(--nd-text) !important;
}

[data-theme="nordeste"] .theme-footer {
    background: transparent !important;
    color: var(--nd-text-muted) !important;
    border-top: 1px solid var(--nd-border);
}

[data-theme="nordeste"] .theme-modal,
[data-theme="nordeste"] .theme-command,
[data-theme="nordeste"] .theme-drawer {
    background: var(--nd-cream) !important;
    border-color: var(--nd-border) !important;
    color: var(--nd-text) !important;
}

[data-theme="nordeste"] .nd-icon-btn {
    color: var(--nd-green-dark);
    border-radius: 12px;
    transition: background-color 0.15s ease;
}

[data-theme="nordeste"] .nd-icon-btn:hover {
    background: rgba(31, 122, 48, 0.08);
}

[data-theme="nordeste"] .nd-icon-btn--soft { color: var(--nd-text-soft); }
[data-theme="nordeste"] .nd-icon-btn--text { color: var(--nd-text); }

[data-theme="nordeste"] .nd-page-title {
    color: var(--nd-text);
    font-weight: 800;
    letter-spacing: -0.01em;
}

/* Mensagens do Django */
[data-theme="nordeste"] .nd-alert {
    border-radius: 12px;
    border: 1px solid transparent;
}

[data-theme="nordeste"] .nd-alert-success { background: var(--nd-green-soft); color: var(--nd-green-deep); border-color: #C3DCAE; }
[data-theme="nordeste"] .nd-alert-error { background: #F8D8D5; color: #8E1F18; border-color: #EFB0AA; }
[data-theme="nordeste"] .nd-alert-warning { background: var(--nd-gold-soft); color: var(--nd-brown-dark); border-color: var(--nd-gold-light); }
[data-theme="nordeste"] .nd-alert-info { background: var(--nd-beige); color: var(--nd-brown-dark); border-color: var(--nd-beige-dark); }

/* ======================================================== COMPONENTES ND */

.nd-card {
    background: var(--nd-surface);
    border: 1px solid var(--nd-border);
    border-radius: var(--nd-radius);
    box-shadow: var(--nd-shadow-card);
}

.nd-section-title {
    color: var(--nd-text);
    font-size: 1.05rem;
    font-weight: 800;
}

.nd-muted {
    color: var(--nd-text-soft);
}

.nd-welcome {
    color: var(--nd-rust);
    letter-spacing: -0.01em;
}

.nd-link-gold {
    color: #8A5E05;
    font-weight: 700;
}

.nd-link-gold:hover {
    color: #6E4A04;
}

/* KpiCard do app: quatro tons com ícone em anel */
.nd-kpi {
    position: relative;
    display: flex;
    gap: 0.85rem;
    align-items: flex-start;
    padding: 1.1rem 1rem 1rem;
    border-radius: 14px;
    border: 1px solid transparent;
    box-shadow: var(--nd-shadow-kpi);
    overflow: hidden;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.nd-kpi:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(58, 42, 22, 0.16);
}

.nd-kpi-icon {
    width: 2.6rem;
    height: 2.6rem;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    border: 1.5px solid currentColor;
    font-size: 1.05rem;
    opacity: 0.92;
}

.nd-kpi-title { font-size: 0.8rem; font-weight: 600; opacity: 0.9; }
.nd-kpi-value { font-size: clamp(1.2rem, 0.9rem + 0.9vw, 1.55rem); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-weight: 900; line-height: 1.15; margin-top: 0.15rem; letter-spacing: -0.01em; }
.nd-kpi-foot { font-size: 0.72rem; margin-top: 0.3rem; opacity: 0.85; }

.nd-kpi--green { background: linear-gradient(135deg, #2A8636, #1B6628); color: #fff; }
.nd-kpi--gold { background: linear-gradient(135deg, #FCD650, #F4B918); color: var(--nd-text); }
.nd-kpi--gold .nd-kpi-title, .nd-kpi--gold .nd-kpi-foot { color: #5C4518; }
.nd-kpi--brown { background: linear-gradient(135deg, #7C4722, #5A2F16); color: #fff; }
.nd-kpi--beige { background: linear-gradient(135deg, #F4EAD2, #EEE1C2); color: var(--nd-text); border-color: var(--nd-beige-dark); }
.nd-kpi--beige .nd-kpi-title, .nd-kpi--beige .nd-kpi-foot { color: var(--nd-text-soft); }

/* Marca d'água discreta do cacto nos KPIs */
.nd-kpi::after {
    content: "";
    position: absolute;
    right: -18px;
    bottom: -22px;
    width: 96px;
    height: 96px;
    border-radius: 999px;
    background: currentColor;
    opacity: 0.06;
    pointer-events: none;
}

/* Atalho (ações rápidas) */
.nd-action {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding: 0.9rem 1rem;
    border-radius: 12px;
    background: var(--nd-surface);
    border: 1px solid var(--nd-border);
    color: var(--nd-text);
    transition: border-color 0.15s ease, background-color 0.15s ease, transform 0.15s ease;
}

.nd-action:hover {
    border-color: var(--nd-green);
    background: #fff;
    transform: translateY(-1px);
}

.nd-action-icon {
    width: 2.75rem;
    height: 2.75rem;
    flex-shrink: 0;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
}

.nd-tone-green { background: var(--nd-green-soft); color: var(--nd-green); }
.nd-tone-gold { background: var(--nd-gold-soft); color: #8A5E05; }
.nd-tone-brown { background: #F0E0CF; color: var(--nd-brown); }
.nd-tone-beige { background: var(--nd-beige); color: var(--nd-text-soft); }

.nd-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.2rem 0.6rem;
    border-radius: 6px;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.3;
}

.nd-chip--green { background: var(--nd-green); color: #fff; }
.nd-chip--gold { background: var(--nd-gold); color: var(--nd-text); }
.nd-chip--beige { background: var(--nd-beige-dark); color: var(--nd-text-soft); }

.nd-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    min-height: 2.9rem;
    padding: 0 1.25rem;
    border-radius: 12px;
    font-weight: 800;
    font-size: 0.92rem;
    transition: background-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.nd-btn:active { transform: scale(0.98); }
.nd-btn--primary { background: var(--nd-green); color: #fff; }
.nd-btn--primary:hover { background: var(--nd-green-bright); }
.nd-btn--outline { background: transparent; color: var(--nd-green); border: 1.3px solid var(--nd-green); }
.nd-btn--outline:hover { background: rgba(31, 122, 48, 0.06); }
.nd-btn--ghost { background: transparent; color: var(--nd-text-soft); }
.nd-btn--ghost:hover { background: rgba(107, 58, 28, 0.06); color: var(--nd-text); }
.nd-btn--danger { background: var(--nd-brown-button); color: #fff; }
.nd-btn--danger:hover { background: var(--nd-brown); }

/* Paisagem (colinas com cerca) do rodapé do app */
.nd-hills {
    height: 120px;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 160' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='s' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23FBF5E6' stop-opacity='0'/%3E%3Cstop offset='1' stop-color='%23F6DE9A'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='1200' height='160' fill='url(%23s)'/%3E%3Ccircle cx='860' cy='84' r='36' fill='%23FFE08A' fill-opacity='.45'/%3E%3Cpath d='M0 80 C150 40 300 95 460 70 S760 30 920 66 1100 90 1200 58 V160 H0Z' fill='%23D9C27A'/%3E%3Cpath d='M0 104 C180 80 330 122 520 98 S820 70 980 100 1120 110 1200 92 V160 H0Z' fill='%239DB35C'/%3E%3Cpath d='M0 126 C200 112 380 140 560 124 S880 108 1040 128 1150 132 1200 120 V160 H0Z' fill='%234F7F2F'/%3E%3C/svg%3E");
}

/* ============================================================ WIZARD */

[data-theme="nordeste"] .nd-wizard {
    background: var(--nd-cream) !important;
    color: var(--nd-text);
}

[data-theme="nordeste"] .nd-wizard-header {
    background: var(--nd-cream) !important;
    border-bottom: 1px solid var(--nd-border) !important;
    box-shadow: none !important;
}

[data-theme="nordeste"] .nd-wizard-back {
    display: inline-flex;
    align-items: center;
    gap: 0.65rem;
    color: var(--nd-text);
    font-weight: 800;
    font-size: 1.15rem;
    border-radius: 12px;
    padding: 0.35rem 0.6rem 0.35rem 0.35rem;
    transition: background-color 0.15s ease;
}

[data-theme="nordeste"] .nd-wizard-back:hover {
    background: rgba(107, 58, 28, 0.06);
}

[data-theme="nordeste"] .nd-wizard-back i {
    width: 2.25rem;
    height: 2.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    font-size: 1rem;
}

[data-theme="nordeste"] .nd-wizard-card {
    background: var(--nd-surface) !important;
    border: 1px solid var(--nd-border) !important;
    box-shadow: var(--nd-shadow-card) !important;
}

[data-theme="nordeste"] .nd-wizard-kicker {
    color: var(--nd-green);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

[data-theme="nordeste"] .nd-wizard-footer {
    background: var(--nd-surface) !important;
    border-top: 1px solid var(--nd-border) !important;
    box-shadow: 0 -6px 18px rgba(58, 42, 22, 0.06) !important;
}

[data-theme="nordeste"] .nd-wizard-footer::before {
    content: none;
}

[data-theme="nordeste"] .nd-wizard .wizard-step-title,
[data-theme="nordeste"] .nd-wizard #wizard-step-title {
    color: var(--nd-text) !important;
    font-style: normal !important;
    text-transform: none !important;
    letter-spacing: -0.01em !important;
    font-weight: 900 !important;
}

[data-theme="nordeste"] .nd-step-counter {
    background: var(--nd-beige) !important;
    color: var(--nd-text-soft) !important;
    border: 0 !important;
    border-radius: 999px;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
    text-transform: none !important;
    font-size: 0.72rem !important;
}

/* Botões do rodapé: verde "Próximo →", contorno "← Voltar", finalizar verde */
[data-theme="nordeste"] :is(.wizard-btn-prev, #wizard-btn-prev) {
    background: transparent !important;
    color: var(--nd-green) !important;
    border: 1.3px solid var(--nd-green) !important;
    border-radius: 12px !important;
    font-size: 0.9rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    box-shadow: none !important;
    min-height: 3rem;
}

[data-theme="nordeste"] :is(.wizard-btn-prev, #wizard-btn-prev):hover {
    background: rgba(31, 122, 48, 0.06) !important;
}

[data-theme="nordeste"] :is(.wizard-btn-next, #wizard-btn-next, .wizard-btn-finish, #wizard-btn-finish) {
    background: var(--nd-green) !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 12px !important;
    font-size: 0.95rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    box-shadow: 0 6px 16px rgba(31, 122, 48, 0.22) !important;
    min-height: 3rem;
    transform: none !important;
}

[data-theme="nordeste"] :is(.wizard-btn-next, #wizard-btn-next, .wizard-btn-finish, #wizard-btn-finish):hover {
    background: var(--nd-green-bright) !important;
}

[data-theme="nordeste"] :is(.wizard-btn-finish, #wizard-btn-finish) {
    background: linear-gradient(135deg, #2A8636, #1B6628) !important;
}

[data-theme="nordeste"] :is(.wizard-btn-next, .wizard-btn-finish, .wizard-btn-prev, #wizard-btn-next, #wizard-btn-finish, #wizard-btn-prev):disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

/* ============================================ TEXTO SOBRE FUNDO COLORIDO */

/* Tons de texto claros do tema escuro viram a versão escura da mesma cor. */
[data-theme="nordeste"] [class*="text-emerald-50"]:not([class*="text-emerald-500"]),
[data-theme="nordeste"] [class*="text-emerald-100"]:not([class*="text-emerald-1000"]),
[data-theme="nordeste"] [class*="text-emerald-200"]:not([class*="text-emerald-2000"]) {
    color: #17602A;
}

[data-theme="nordeste"] [class*="text-green-50"]:not([class*="text-green-500"]),
[data-theme="nordeste"] [class*="text-green-100"]:not([class*="text-green-1000"]),
[data-theme="nordeste"] [class*="text-green-200"]:not([class*="text-green-2000"]) {
    color: #17602A;
}

[data-theme="nordeste"] [class*="text-teal-50"]:not([class*="text-teal-500"]),
[data-theme="nordeste"] [class*="text-teal-100"]:not([class*="text-teal-1000"]),
[data-theme="nordeste"] [class*="text-teal-200"]:not([class*="text-teal-2000"]) {
    color: #17602A;
}

[data-theme="nordeste"] [class*="text-lime-50"]:not([class*="text-lime-500"]),
[data-theme="nordeste"] [class*="text-lime-100"]:not([class*="text-lime-1000"]),
[data-theme="nordeste"] [class*="text-lime-200"]:not([class*="text-lime-2000"]) {
    color: #17602A;
}

[data-theme="nordeste"] [class*="text-amber-50"]:not([class*="text-amber-500"]),
[data-theme="nordeste"] [class*="text-amber-100"]:not([class*="text-amber-1000"]),
[data-theme="nordeste"] [class*="text-amber-200"]:not([class*="text-amber-2000"]) {
    color: #8A5E05;
}

[data-theme="nordeste"] [class*="text-yellow-50"]:not([class*="text-yellow-500"]),
[data-theme="nordeste"] [class*="text-yellow-100"]:not([class*="text-yellow-1000"]),
[data-theme="nordeste"] [class*="text-yellow-200"]:not([class*="text-yellow-2000"]) {
    color: #8A5E05;
}

[data-theme="nordeste"] [class*="text-indigo-50"]:not([class*="text-indigo-500"]),
[data-theme="nordeste"] [class*="text-indigo-100"]:not([class*="text-indigo-1000"]),
[data-theme="nordeste"] [class*="text-indigo-200"]:not([class*="text-indigo-2000"]) {
    color: #5A2F16;
}

[data-theme="nordeste"] [class*="text-blue-50"]:not([class*="text-blue-500"]),
[data-theme="nordeste"] [class*="text-blue-100"]:not([class*="text-blue-1000"]),
[data-theme="nordeste"] [class*="text-blue-200"]:not([class*="text-blue-2000"]) {
    color: #74481A;
}

[data-theme="nordeste"] [class*="text-sky-50"]:not([class*="text-sky-500"]),
[data-theme="nordeste"] [class*="text-sky-100"]:not([class*="text-sky-1000"]),
[data-theme="nordeste"] [class*="text-sky-200"]:not([class*="text-sky-2000"]) {
    color: #74481A;
}

[data-theme="nordeste"] [class*="text-cyan-50"]:not([class*="text-cyan-500"]),
[data-theme="nordeste"] [class*="text-cyan-100"]:not([class*="text-cyan-1000"]),
[data-theme="nordeste"] [class*="text-cyan-200"]:not([class*="text-cyan-2000"]) {
    color: #74481A;
}

[data-theme="nordeste"] [class*="text-purple-50"]:not([class*="text-purple-500"]),
[data-theme="nordeste"] [class*="text-purple-100"]:not([class*="text-purple-1000"]),
[data-theme="nordeste"] [class*="text-purple-200"]:not([class*="text-purple-2000"]) {
    color: #6E2A10;
}

[data-theme="nordeste"] [class*="text-violet-50"]:not([class*="text-violet-500"]),
[data-theme="nordeste"] [class*="text-violet-100"]:not([class*="text-violet-1000"]),
[data-theme="nordeste"] [class*="text-violet-200"]:not([class*="text-violet-2000"]) {
    color: #6E2A10;
}

[data-theme="nordeste"] [class*="text-fuchsia-50"]:not([class*="text-fuchsia-500"]),
[data-theme="nordeste"] [class*="text-fuchsia-100"]:not([class*="text-fuchsia-1000"]),
[data-theme="nordeste"] [class*="text-fuchsia-200"]:not([class*="text-fuchsia-2000"]) {
    color: #6E2A10;
}

[data-theme="nordeste"] [class*="text-pink-50"]:not([class*="text-pink-500"]),
[data-theme="nordeste"] [class*="text-pink-100"]:not([class*="text-pink-1000"]),
[data-theme="nordeste"] [class*="text-pink-200"]:not([class*="text-pink-2000"]) {
    color: #6E2A10;
}

[data-theme="nordeste"] [class*="text-orange-50"]:not([class*="text-orange-500"]),
[data-theme="nordeste"] [class*="text-orange-100"]:not([class*="text-orange-1000"]),
[data-theme="nordeste"] [class*="text-orange-200"]:not([class*="text-orange-2000"]) {
    color: #86410F;
}

[data-theme="nordeste"] [class*="text-red-50"]:not([class*="text-red-500"]),
[data-theme="nordeste"] [class*="text-red-100"]:not([class*="text-red-1000"]),
[data-theme="nordeste"] [class*="text-red-200"]:not([class*="text-red-2000"]) {
    color: #8E1F18;
}

[data-theme="nordeste"] [class*="text-rose-50"]:not([class*="text-rose-500"]),
[data-theme="nordeste"] [class*="text-rose-100"]:not([class*="text-rose-1000"]),
[data-theme="nordeste"] [class*="text-rose-200"]:not([class*="text-rose-2000"]) {
    color: #8E1F18;
}

/* Neutros escuros do tema escuro (texto sobre dourado/branco) e tons apagados demais. */
[data-theme="nordeste"] :is(.text-slate-800, .text-slate-900, .text-slate-950, .text-gray-800, .text-gray-900,
    .hover\:text-slate-900:hover, .hover\:text-slate-950:hover, .group:hover .group-hover\:text-slate-950) {
    color: var(--nd-text);
}

[data-theme="nordeste"] :is(.text-slate-500, .text-gray-500) {
    color: #6E5E44;
}

[data-theme="nordeste"] :is(.text-slate-600, .text-slate-700, .text-gray-600) {
    color: #75654A;
}

[data-theme="nordeste"] :is(.text-amber-600, .text-yellow-600) {
    color: #7A5404;
}

[data-theme="nordeste"] :is(.text-sky-500, .text-blue-500, .text-cyan-500, .text-sky-600, .text-blue-600, .text-cyan-600) {
    color: #74481A;
}

[data-theme="nordeste"] :is(.text-orange-400, .text-orange-500) {
    color: #86410F;
}

/* Texto colorido com transparência (pensado para fundo escuro) some no creme:
   aqui ele volta a ser opaco. */
[data-theme="nordeste"] .text-amber-300\/70 { color: rgb(var(--tw-c-amber-300)); }
[data-theme="nordeste"] .text-amber-400\/80 { color: rgb(var(--tw-c-amber-400)); }
[data-theme="nordeste"] .text-indigo-400\/50 { color: rgb(var(--tw-c-indigo-400)); }
[data-theme="nordeste"] .text-indigo-400\/60 { color: rgb(var(--tw-c-indigo-400)); }
[data-theme="nordeste"] .text-indigo-400\/70 { color: rgb(var(--tw-c-indigo-400)); }
[data-theme="nordeste"] .text-red-300\/70 { color: rgb(var(--tw-c-red-300)); }
[data-theme="nordeste"] .text-red-300\/80 { color: rgb(var(--tw-c-red-300)); }
[data-theme="nordeste"] .text-red-400\/60 { color: rgb(var(--tw-c-red-400)); }
[data-theme="nordeste"] .text-red-400\/80 { color: rgb(var(--tw-c-red-400)); }
[data-theme="nordeste"] .text-red-500\/50 { color: rgb(var(--tw-c-red-500)); }
[data-theme="nordeste"] .text-amber-500\/70 { color: #7F5804; }

/* Tons escuros translúcidos (fundo de alerta no tema escuro) viram tinta clara da cor. */
[data-theme="nordeste"] .bg-amber-900\/20 { background-color: rgba(211, 155, 10, 0.09) !important; }
[data-theme="nordeste"] .bg-amber-950\/30 { background-color: rgba(211, 155, 10, 0.09) !important; }
[data-theme="nordeste"] .bg-emerald-900\/20 { background-color: rgba(31, 122, 48, 0.09) !important; }
[data-theme="nordeste"] .bg-emerald-900\/30 { background-color: rgba(31, 122, 48, 0.09) !important; }
[data-theme="nordeste"] .bg-indigo-900\/20 { background-color: rgba(107, 58, 28, 0.09) !important; }
[data-theme="nordeste"] .bg-indigo-900\/30 { background-color: rgba(107, 58, 28, 0.09) !important; }
[data-theme="nordeste"] .bg-indigo-900\/50 { background-color: rgba(107, 58, 28, 0.09) !important; }
[data-theme="nordeste"] .bg-indigo-950\/40 { background-color: rgba(107, 58, 28, 0.09) !important; }
[data-theme="nordeste"] .bg-red-900\/30 { background-color: rgba(179, 38, 30, 0.09) !important; }
[data-theme="nordeste"] .bg-red-950\/30 { background-color: rgba(179, 38, 30, 0.09) !important; }
[data-theme="nordeste"] .bg-red-950\/40 { background-color: rgba(179, 38, 30, 0.09) !important; }
[data-theme="nordeste"] .bg-red-950\/50 { background-color: rgba(179, 38, 30, 0.09) !important; }
[data-theme="nordeste"] .hover\:bg-amber-950\/20:hover { background-color: rgba(211, 155, 10, 0.14) !important; }
[data-theme="nordeste"] .hover\:bg-emerald-950\/20:hover { background-color: rgba(31, 122, 48, 0.14) !important; }
[data-theme="nordeste"] .hover\:bg-red-900\/20:hover { background-color: rgba(179, 38, 30, 0.14) !important; }
[data-theme="nordeste"] .hover\:bg-red-950\/20:hover { background-color: rgba(179, 38, 30, 0.14) !important; }

/* Fundos claros do tema antigo (bg-gray-200 com texto escuro) seguem claros. */
[data-theme="nordeste"] :is(.bg-gray-100, .bg-gray-200, .bg-slate-100, .bg-slate-200) {
    background-color: var(--nd-beige) !important;
}

[data-theme="nordeste"] :is(.bg-gray-300, .bg-slate-300) {
    background-color: var(--nd-beige-dark) !important;
}

[data-theme="nordeste"] :is(.hover\:bg-gray-300, .hover\:bg-slate-200, .hover\:bg-slate-300):hover {
    background-color: var(--nd-beige-dark) !important;
}

/* Fundos sólidos coloridos: o texto claro continua claro. */
[data-theme="nordeste"] :is(
    [class~="bg-emerald-500"],
    [class~="bg-emerald-600"],
    [class~="bg-emerald-700"],
    [class~="bg-emerald-800"],
    [class~="bg-emerald-900"],
    [class~="bg-green-500"],
    [class~="bg-green-600"],
    [class~="bg-green-700"],
    [class~="bg-green-800"],
    [class~="bg-green-900"],
    [class~="bg-teal-500"],
    [class~="bg-teal-600"],
    [class~="bg-teal-700"],
    [class~="bg-teal-800"],
    [class~="bg-teal-900"],
    [class~="bg-lime-500"],
    [class~="bg-lime-600"],
    [class~="bg-lime-700"],
    [class~="bg-lime-800"],
    [class~="bg-lime-900"],
    [class~="bg-indigo-500"],
    [class~="bg-indigo-600"],
    [class~="bg-indigo-700"],
    [class~="bg-indigo-800"],
    [class~="bg-indigo-900"],
    [class~="bg-blue-500"],
    [class~="bg-blue-600"],
    [class~="bg-blue-700"],
    [class~="bg-blue-800"],
    [class~="bg-blue-900"],
    [class~="bg-sky-500"],
    [class~="bg-sky-600"],
    [class~="bg-sky-700"],
    [class~="bg-sky-800"],
    [class~="bg-sky-900"],
    [class~="bg-cyan-500"],
    [class~="bg-cyan-600"],
    [class~="bg-cyan-700"],
    [class~="bg-cyan-800"],
    [class~="bg-cyan-900"],
    [class~="bg-red-500"],
    [class~="bg-red-600"],
    [class~="bg-red-700"],
    [class~="bg-red-800"],
    [class~="bg-red-900"],
    [class~="bg-rose-500"],
    [class~="bg-rose-600"],
    [class~="bg-rose-700"],
    [class~="bg-rose-800"],
    [class~="bg-rose-900"],
    [class~="bg-purple-500"],
    [class~="bg-purple-600"],
    [class~="bg-purple-700"],
    [class~="bg-purple-800"],
    [class~="bg-purple-900"],
    [class~="bg-violet-500"],
    [class~="bg-violet-600"],
    [class~="bg-violet-700"],
    [class~="bg-violet-800"],
    [class~="bg-violet-900"],
    [class~="bg-fuchsia-500"],
    [class~="bg-fuchsia-600"],
    [class~="bg-fuchsia-700"],
    [class~="bg-fuchsia-800"],
    [class~="bg-fuchsia-900"],
    [class~="bg-orange-500"],
    [class~="bg-orange-600"],
    [class~="bg-orange-700"],
    [class~="bg-orange-800"],
    [class~="bg-orange-900"],
    [class~="bg-pink-500"],
    [class~="bg-pink-600"],
    [class~="bg-pink-700"],
    [class~="bg-pink-800"],
    [class~="bg-pink-900"],
    [class~="from-emerald-500"],
    [class~="from-emerald-600"],
    [class~="from-emerald-700"],
    [class~="from-emerald-800"],
    [class~="from-emerald-900"],
    [class~="from-green-500"],
    [class~="from-green-600"],
    [class~="from-green-700"],
    [class~="from-green-800"],
    [class~="from-green-900"],
    [class~="from-teal-500"],
    [class~="from-teal-600"],
    [class~="from-teal-700"],
    [class~="from-teal-800"],
    [class~="from-teal-900"],
    [class~="from-lime-500"],
    [class~="from-lime-600"],
    [class~="from-lime-700"],
    [class~="from-lime-800"],
    [class~="from-lime-900"],
    [class~="from-indigo-500"],
    [class~="from-indigo-600"],
    [class~="from-indigo-700"],
    [class~="from-indigo-800"],
    [class~="from-indigo-900"],
    [class~="from-blue-500"],
    [class~="from-blue-600"],
    [class~="from-blue-700"],
    [class~="from-blue-800"],
    [class~="from-blue-900"],
    [class~="from-sky-500"],
    [class~="from-sky-600"],
    [class~="from-sky-700"],
    [class~="from-sky-800"],
    [class~="from-sky-900"],
    [class~="from-cyan-500"],
    [class~="from-cyan-600"],
    [class~="from-cyan-700"],
    [class~="from-cyan-800"],
    [class~="from-cyan-900"],
    [class~="from-red-500"],
    [class~="from-red-600"],
    [class~="from-red-700"],
    [class~="from-red-800"],
    [class~="from-red-900"],
    [class~="from-rose-500"],
    [class~="from-rose-600"],
    [class~="from-rose-700"],
    [class~="from-rose-800"],
    [class~="from-rose-900"],
    [class~="from-purple-500"],
    [class~="from-purple-600"],
    [class~="from-purple-700"],
    [class~="from-purple-800"],
    [class~="from-purple-900"],
    [class~="from-violet-500"],
    [class~="from-violet-600"],
    [class~="from-violet-700"],
    [class~="from-violet-800"],
    [class~="from-violet-900"],
    [class~="from-fuchsia-500"],
    [class~="from-fuchsia-600"],
    [class~="from-fuchsia-700"],
    [class~="from-fuchsia-800"],
    [class~="from-fuchsia-900"],
    [class~="from-orange-500"],
    [class~="from-orange-600"],
    [class~="from-orange-700"],
    [class~="from-orange-800"],
    [class~="from-orange-900"],
    [class~="from-pink-500"],
    [class~="from-pink-600"],
    [class~="from-pink-700"],
    [class~="from-pink-800"],
    [class~="from-pink-900"],
    [class~="bg-nd-green"],
    [class~="bg-nd-brown"],
    [class~="bg-[#1F7A30]"]
):is(.text-white, .text-black, .text-slate-800, .text-slate-900, .text-slate-950, .text-gray-800, .text-gray-900, [class*="text-emerald-50"]:not([class*="text-emerald-500"]), [class*="text-emerald-100"]:not([class*="text-emerald-1000"]), [class*="text-emerald-200"]:not([class*="text-emerald-2000"]), [class*="text-green-50"]:not([class*="text-green-500"]), [class*="text-green-100"]:not([class*="text-green-1000"]), [class*="text-green-200"]:not([class*="text-green-2000"]), [class*="text-teal-50"]:not([class*="text-teal-500"]), [class*="text-teal-100"]:not([class*="text-teal-1000"]), [class*="text-teal-200"]:not([class*="text-teal-2000"]), [class*="text-lime-50"]:not([class*="text-lime-500"]), [class*="text-lime-100"]:not([class*="text-lime-1000"]), [class*="text-lime-200"]:not([class*="text-lime-2000"]), [class*="text-amber-50"]:not([class*="text-amber-500"]), [class*="text-amber-100"]:not([class*="text-amber-1000"]), [class*="text-amber-200"]:not([class*="text-amber-2000"]), [class*="text-yellow-50"]:not([class*="text-yellow-500"]), [class*="text-yellow-100"]:not([class*="text-yellow-1000"]), [class*="text-yellow-200"]:not([class*="text-yellow-2000"]), [class*="text-indigo-50"]:not([class*="text-indigo-500"]), [class*="text-indigo-100"]:not([class*="text-indigo-1000"]), [class*="text-indigo-200"]:not([class*="text-indigo-2000"]), [class*="text-blue-50"]:not([class*="text-blue-500"]), [class*="text-blue-100"]:not([class*="text-blue-1000"]), [class*="text-blue-200"]:not([class*="text-blue-2000"]), [class*="text-sky-50"]:not([class*="text-sky-500"]), [class*="text-sky-100"]:not([class*="text-sky-1000"]), [class*="text-sky-200"]:not([class*="text-sky-2000"]), [class*="text-cyan-50"]:not([class*="text-cyan-500"]), [class*="text-cyan-100"]:not([class*="text-cyan-1000"]), [class*="text-cyan-200"]:not([class*="text-cyan-2000"]), [class*="text-purple-50"]:not([class*="text-purple-500"]), [class*="text-purple-100"]:not([class*="text-purple-1000"]), [class*="text-purple-200"]:not([class*="text-purple-2000"]), [class*="text-violet-50"]:not([class*="text-violet-500"]), [class*="text-violet-100"]:not([class*="text-violet-1000"]), [class*="text-violet-200"]:not([class*="text-violet-2000"]), [class*="text-fuchsia-50"]:not([class*="text-fuchsia-500"]), [class*="text-fuchsia-100"]:not([class*="text-fuchsia-1000"]), [class*="text-fuchsia-200"]:not([class*="text-fuchsia-2000"]), [class*="text-pink-50"]:not([class*="text-pink-500"]), [class*="text-pink-100"]:not([class*="text-pink-1000"]), [class*="text-pink-200"]:not([class*="text-pink-2000"]), [class*="text-orange-50"]:not([class*="text-orange-500"]), [class*="text-orange-100"]:not([class*="text-orange-1000"]), [class*="text-orange-200"]:not([class*="text-orange-2000"]), [class*="text-red-50"]:not([class*="text-red-500"]), [class*="text-red-100"]:not([class*="text-red-1000"]), [class*="text-red-200"]:not([class*="text-red-2000"]), [class*="text-rose-50"]:not([class*="text-rose-500"]), [class*="text-rose-100"]:not([class*="text-rose-1000"]), [class*="text-rose-200"]:not([class*="text-rose-2000"])),
[data-theme="nordeste"] :is(
    [class~="bg-emerald-500"],
    [class~="bg-emerald-600"],
    [class~="bg-emerald-700"],
    [class~="bg-emerald-800"],
    [class~="bg-emerald-900"],
    [class~="bg-green-500"],
    [class~="bg-green-600"],
    [class~="bg-green-700"],
    [class~="bg-green-800"],
    [class~="bg-green-900"],
    [class~="bg-teal-500"],
    [class~="bg-teal-600"],
    [class~="bg-teal-700"],
    [class~="bg-teal-800"],
    [class~="bg-teal-900"],
    [class~="bg-lime-500"],
    [class~="bg-lime-600"],
    [class~="bg-lime-700"],
    [class~="bg-lime-800"],
    [class~="bg-lime-900"],
    [class~="bg-indigo-500"],
    [class~="bg-indigo-600"],
    [class~="bg-indigo-700"],
    [class~="bg-indigo-800"],
    [class~="bg-indigo-900"],
    [class~="bg-blue-500"],
    [class~="bg-blue-600"],
    [class~="bg-blue-700"],
    [class~="bg-blue-800"],
    [class~="bg-blue-900"],
    [class~="bg-sky-500"],
    [class~="bg-sky-600"],
    [class~="bg-sky-700"],
    [class~="bg-sky-800"],
    [class~="bg-sky-900"],
    [class~="bg-cyan-500"],
    [class~="bg-cyan-600"],
    [class~="bg-cyan-700"],
    [class~="bg-cyan-800"],
    [class~="bg-cyan-900"],
    [class~="bg-red-500"],
    [class~="bg-red-600"],
    [class~="bg-red-700"],
    [class~="bg-red-800"],
    [class~="bg-red-900"],
    [class~="bg-rose-500"],
    [class~="bg-rose-600"],
    [class~="bg-rose-700"],
    [class~="bg-rose-800"],
    [class~="bg-rose-900"],
    [class~="bg-purple-500"],
    [class~="bg-purple-600"],
    [class~="bg-purple-700"],
    [class~="bg-purple-800"],
    [class~="bg-purple-900"],
    [class~="bg-violet-500"],
    [class~="bg-violet-600"],
    [class~="bg-violet-700"],
    [class~="bg-violet-800"],
    [class~="bg-violet-900"],
    [class~="bg-fuchsia-500"],
    [class~="bg-fuchsia-600"],
    [class~="bg-fuchsia-700"],
    [class~="bg-fuchsia-800"],
    [class~="bg-fuchsia-900"],
    [class~="bg-orange-500"],
    [class~="bg-orange-600"],
    [class~="bg-orange-700"],
    [class~="bg-orange-800"],
    [class~="bg-orange-900"],
    [class~="bg-pink-500"],
    [class~="bg-pink-600"],
    [class~="bg-pink-700"],
    [class~="bg-pink-800"],
    [class~="bg-pink-900"],
    [class~="from-emerald-500"],
    [class~="from-emerald-600"],
    [class~="from-emerald-700"],
    [class~="from-emerald-800"],
    [class~="from-emerald-900"],
    [class~="from-green-500"],
    [class~="from-green-600"],
    [class~="from-green-700"],
    [class~="from-green-800"],
    [class~="from-green-900"],
    [class~="from-teal-500"],
    [class~="from-teal-600"],
    [class~="from-teal-700"],
    [class~="from-teal-800"],
    [class~="from-teal-900"],
    [class~="from-lime-500"],
    [class~="from-lime-600"],
    [class~="from-lime-700"],
    [class~="from-lime-800"],
    [class~="from-lime-900"],
    [class~="from-indigo-500"],
    [class~="from-indigo-600"],
    [class~="from-indigo-700"],
    [class~="from-indigo-800"],
    [class~="from-indigo-900"],
    [class~="from-blue-500"],
    [class~="from-blue-600"],
    [class~="from-blue-700"],
    [class~="from-blue-800"],
    [class~="from-blue-900"],
    [class~="from-sky-500"],
    [class~="from-sky-600"],
    [class~="from-sky-700"],
    [class~="from-sky-800"],
    [class~="from-sky-900"],
    [class~="from-cyan-500"],
    [class~="from-cyan-600"],
    [class~="from-cyan-700"],
    [class~="from-cyan-800"],
    [class~="from-cyan-900"],
    [class~="from-red-500"],
    [class~="from-red-600"],
    [class~="from-red-700"],
    [class~="from-red-800"],
    [class~="from-red-900"],
    [class~="from-rose-500"],
    [class~="from-rose-600"],
    [class~="from-rose-700"],
    [class~="from-rose-800"],
    [class~="from-rose-900"],
    [class~="from-purple-500"],
    [class~="from-purple-600"],
    [class~="from-purple-700"],
    [class~="from-purple-800"],
    [class~="from-purple-900"],
    [class~="from-violet-500"],
    [class~="from-violet-600"],
    [class~="from-violet-700"],
    [class~="from-violet-800"],
    [class~="from-violet-900"],
    [class~="from-fuchsia-500"],
    [class~="from-fuchsia-600"],
    [class~="from-fuchsia-700"],
    [class~="from-fuchsia-800"],
    [class~="from-fuchsia-900"],
    [class~="from-orange-500"],
    [class~="from-orange-600"],
    [class~="from-orange-700"],
    [class~="from-orange-800"],
    [class~="from-orange-900"],
    [class~="from-pink-500"],
    [class~="from-pink-600"],
    [class~="from-pink-700"],
    [class~="from-pink-800"],
    [class~="from-pink-900"],
    [class~="bg-nd-green"],
    [class~="bg-nd-brown"],
    [class~="bg-[#1F7A30]"]
) :is(.text-white, .text-black, .text-slate-800, .text-slate-900, .text-slate-950, .text-gray-800, .text-gray-900, [class*="text-emerald-50"]:not([class*="text-emerald-500"]), [class*="text-emerald-100"]:not([class*="text-emerald-1000"]), [class*="text-emerald-200"]:not([class*="text-emerald-2000"]), [class*="text-green-50"]:not([class*="text-green-500"]), [class*="text-green-100"]:not([class*="text-green-1000"]), [class*="text-green-200"]:not([class*="text-green-2000"]), [class*="text-teal-50"]:not([class*="text-teal-500"]), [class*="text-teal-100"]:not([class*="text-teal-1000"]), [class*="text-teal-200"]:not([class*="text-teal-2000"]), [class*="text-lime-50"]:not([class*="text-lime-500"]), [class*="text-lime-100"]:not([class*="text-lime-1000"]), [class*="text-lime-200"]:not([class*="text-lime-2000"]), [class*="text-amber-50"]:not([class*="text-amber-500"]), [class*="text-amber-100"]:not([class*="text-amber-1000"]), [class*="text-amber-200"]:not([class*="text-amber-2000"]), [class*="text-yellow-50"]:not([class*="text-yellow-500"]), [class*="text-yellow-100"]:not([class*="text-yellow-1000"]), [class*="text-yellow-200"]:not([class*="text-yellow-2000"]), [class*="text-indigo-50"]:not([class*="text-indigo-500"]), [class*="text-indigo-100"]:not([class*="text-indigo-1000"]), [class*="text-indigo-200"]:not([class*="text-indigo-2000"]), [class*="text-blue-50"]:not([class*="text-blue-500"]), [class*="text-blue-100"]:not([class*="text-blue-1000"]), [class*="text-blue-200"]:not([class*="text-blue-2000"]), [class*="text-sky-50"]:not([class*="text-sky-500"]), [class*="text-sky-100"]:not([class*="text-sky-1000"]), [class*="text-sky-200"]:not([class*="text-sky-2000"]), [class*="text-cyan-50"]:not([class*="text-cyan-500"]), [class*="text-cyan-100"]:not([class*="text-cyan-1000"]), [class*="text-cyan-200"]:not([class*="text-cyan-2000"]), [class*="text-purple-50"]:not([class*="text-purple-500"]), [class*="text-purple-100"]:not([class*="text-purple-1000"]), [class*="text-purple-200"]:not([class*="text-purple-2000"]), [class*="text-violet-50"]:not([class*="text-violet-500"]), [class*="text-violet-100"]:not([class*="text-violet-1000"]), [class*="text-violet-200"]:not([class*="text-violet-2000"]), [class*="text-fuchsia-50"]:not([class*="text-fuchsia-500"]), [class*="text-fuchsia-100"]:not([class*="text-fuchsia-1000"]), [class*="text-fuchsia-200"]:not([class*="text-fuchsia-2000"]), [class*="text-pink-50"]:not([class*="text-pink-500"]), [class*="text-pink-100"]:not([class*="text-pink-1000"]), [class*="text-pink-200"]:not([class*="text-pink-2000"]), [class*="text-orange-50"]:not([class*="text-orange-500"]), [class*="text-orange-100"]:not([class*="text-orange-1000"]), [class*="text-orange-200"]:not([class*="text-orange-2000"]), [class*="text-red-50"]:not([class*="text-red-500"]), [class*="text-red-100"]:not([class*="text-red-1000"]), [class*="text-red-200"]:not([class*="text-red-2000"]), [class*="text-rose-50"]:not([class*="text-rose-500"]), [class*="text-rose-100"]:not([class*="text-rose-1000"]), [class*="text-rose-200"]:not([class*="text-rose-2000"])) {
    color: #fff !important;
}

[data-theme="nordeste"] :is(
    [class~="hover:bg-emerald-500"]:hover,
    [class~="hover:bg-emerald-600"]:hover,
    [class~="hover:bg-emerald-700"]:hover,
    [class~="hover:bg-emerald-800"]:hover,
    [class~="hover:bg-emerald-900"]:hover,
    [class~="hover:bg-green-500"]:hover,
    [class~="hover:bg-green-600"]:hover,
    [class~="hover:bg-green-700"]:hover,
    [class~="hover:bg-green-800"]:hover,
    [class~="hover:bg-green-900"]:hover,
    [class~="hover:bg-teal-500"]:hover,
    [class~="hover:bg-teal-600"]:hover,
    [class~="hover:bg-teal-700"]:hover,
    [class~="hover:bg-teal-800"]:hover,
    [class~="hover:bg-teal-900"]:hover,
    [class~="hover:bg-lime-500"]:hover,
    [class~="hover:bg-lime-600"]:hover,
    [class~="hover:bg-lime-700"]:hover,
    [class~="hover:bg-lime-800"]:hover,
    [class~="hover:bg-lime-900"]:hover,
    [class~="hover:bg-indigo-500"]:hover,
    [class~="hover:bg-indigo-600"]:hover,
    [class~="hover:bg-indigo-700"]:hover,
    [class~="hover:bg-indigo-800"]:hover,
    [class~="hover:bg-indigo-900"]:hover,
    [class~="hover:bg-blue-500"]:hover,
    [class~="hover:bg-blue-600"]:hover,
    [class~="hover:bg-blue-700"]:hover,
    [class~="hover:bg-blue-800"]:hover,
    [class~="hover:bg-blue-900"]:hover,
    [class~="hover:bg-sky-500"]:hover,
    [class~="hover:bg-sky-600"]:hover,
    [class~="hover:bg-sky-700"]:hover,
    [class~="hover:bg-sky-800"]:hover,
    [class~="hover:bg-sky-900"]:hover,
    [class~="hover:bg-cyan-500"]:hover,
    [class~="hover:bg-cyan-600"]:hover,
    [class~="hover:bg-cyan-700"]:hover,
    [class~="hover:bg-cyan-800"]:hover,
    [class~="hover:bg-cyan-900"]:hover,
    [class~="hover:bg-red-500"]:hover,
    [class~="hover:bg-red-600"]:hover,
    [class~="hover:bg-red-700"]:hover,
    [class~="hover:bg-red-800"]:hover,
    [class~="hover:bg-red-900"]:hover,
    [class~="hover:bg-rose-500"]:hover,
    [class~="hover:bg-rose-600"]:hover,
    [class~="hover:bg-rose-700"]:hover,
    [class~="hover:bg-rose-800"]:hover,
    [class~="hover:bg-rose-900"]:hover,
    [class~="hover:bg-purple-500"]:hover,
    [class~="hover:bg-purple-600"]:hover,
    [class~="hover:bg-purple-700"]:hover,
    [class~="hover:bg-purple-800"]:hover,
    [class~="hover:bg-purple-900"]:hover,
    [class~="hover:bg-violet-500"]:hover,
    [class~="hover:bg-violet-600"]:hover,
    [class~="hover:bg-violet-700"]:hover,
    [class~="hover:bg-violet-800"]:hover,
    [class~="hover:bg-violet-900"]:hover,
    [class~="hover:bg-fuchsia-500"]:hover,
    [class~="hover:bg-fuchsia-600"]:hover,
    [class~="hover:bg-fuchsia-700"]:hover,
    [class~="hover:bg-fuchsia-800"]:hover,
    [class~="hover:bg-fuchsia-900"]:hover,
    [class~="hover:bg-orange-500"]:hover,
    [class~="hover:bg-orange-600"]:hover,
    [class~="hover:bg-orange-700"]:hover,
    [class~="hover:bg-orange-800"]:hover,
    [class~="hover:bg-orange-900"]:hover,
    [class~="hover:bg-pink-500"]:hover,
    [class~="hover:bg-pink-600"]:hover,
    [class~="hover:bg-pink-700"]:hover,
    [class~="hover:bg-pink-800"]:hover,
    [class~="hover:bg-pink-900"]:hover,
    [class~="hover:bg-[#1F7A30]"]:hover
),
[data-theme="nordeste"] :is(
    .group:hover [class~="group-hover:bg-emerald-500"],
    .group:hover [class~="group-hover:bg-emerald-600"],
    .group:hover [class~="group-hover:bg-emerald-700"],
    .group:hover [class~="group-hover:bg-emerald-800"],
    .group:hover [class~="group-hover:bg-emerald-900"],
    .group:hover [class~="group-hover:bg-green-500"],
    .group:hover [class~="group-hover:bg-green-600"],
    .group:hover [class~="group-hover:bg-green-700"],
    .group:hover [class~="group-hover:bg-green-800"],
    .group:hover [class~="group-hover:bg-green-900"],
    .group:hover [class~="group-hover:bg-teal-500"],
    .group:hover [class~="group-hover:bg-teal-600"],
    .group:hover [class~="group-hover:bg-teal-700"],
    .group:hover [class~="group-hover:bg-teal-800"],
    .group:hover [class~="group-hover:bg-teal-900"],
    .group:hover [class~="group-hover:bg-lime-500"],
    .group:hover [class~="group-hover:bg-lime-600"],
    .group:hover [class~="group-hover:bg-lime-700"],
    .group:hover [class~="group-hover:bg-lime-800"],
    .group:hover [class~="group-hover:bg-lime-900"],
    .group:hover [class~="group-hover:bg-indigo-500"],
    .group:hover [class~="group-hover:bg-indigo-600"],
    .group:hover [class~="group-hover:bg-indigo-700"],
    .group:hover [class~="group-hover:bg-indigo-800"],
    .group:hover [class~="group-hover:bg-indigo-900"],
    .group:hover [class~="group-hover:bg-blue-500"],
    .group:hover [class~="group-hover:bg-blue-600"],
    .group:hover [class~="group-hover:bg-blue-700"],
    .group:hover [class~="group-hover:bg-blue-800"],
    .group:hover [class~="group-hover:bg-blue-900"],
    .group:hover [class~="group-hover:bg-sky-500"],
    .group:hover [class~="group-hover:bg-sky-600"],
    .group:hover [class~="group-hover:bg-sky-700"],
    .group:hover [class~="group-hover:bg-sky-800"],
    .group:hover [class~="group-hover:bg-sky-900"],
    .group:hover [class~="group-hover:bg-cyan-500"],
    .group:hover [class~="group-hover:bg-cyan-600"],
    .group:hover [class~="group-hover:bg-cyan-700"],
    .group:hover [class~="group-hover:bg-cyan-800"],
    .group:hover [class~="group-hover:bg-cyan-900"],
    .group:hover [class~="group-hover:bg-red-500"],
    .group:hover [class~="group-hover:bg-red-600"],
    .group:hover [class~="group-hover:bg-red-700"],
    .group:hover [class~="group-hover:bg-red-800"],
    .group:hover [class~="group-hover:bg-red-900"],
    .group:hover [class~="group-hover:bg-rose-500"],
    .group:hover [class~="group-hover:bg-rose-600"],
    .group:hover [class~="group-hover:bg-rose-700"],
    .group:hover [class~="group-hover:bg-rose-800"],
    .group:hover [class~="group-hover:bg-rose-900"],
    .group:hover [class~="group-hover:bg-purple-500"],
    .group:hover [class~="group-hover:bg-purple-600"],
    .group:hover [class~="group-hover:bg-purple-700"],
    .group:hover [class~="group-hover:bg-purple-800"],
    .group:hover [class~="group-hover:bg-purple-900"],
    .group:hover [class~="group-hover:bg-violet-500"],
    .group:hover [class~="group-hover:bg-violet-600"],
    .group:hover [class~="group-hover:bg-violet-700"],
    .group:hover [class~="group-hover:bg-violet-800"],
    .group:hover [class~="group-hover:bg-violet-900"],
    .group:hover [class~="group-hover:bg-fuchsia-500"],
    .group:hover [class~="group-hover:bg-fuchsia-600"],
    .group:hover [class~="group-hover:bg-fuchsia-700"],
    .group:hover [class~="group-hover:bg-fuchsia-800"],
    .group:hover [class~="group-hover:bg-fuchsia-900"],
    .group:hover [class~="group-hover:bg-orange-500"],
    .group:hover [class~="group-hover:bg-orange-600"],
    .group:hover [class~="group-hover:bg-orange-700"],
    .group:hover [class~="group-hover:bg-orange-800"],
    .group:hover [class~="group-hover:bg-orange-900"],
    .group:hover [class~="group-hover:bg-pink-500"],
    .group:hover [class~="group-hover:bg-pink-600"],
    .group:hover [class~="group-hover:bg-pink-700"],
    .group:hover [class~="group-hover:bg-pink-800"],
    .group:hover [class~="group-hover:bg-pink-900"]
) {
    color: #fff !important;
}


/* Campos do wizard: o motor ainda manda classes do tema escuro inline. */
[data-theme="nordeste"] .wizard-input {
    background-color: var(--nd-surface) !important;
    box-shadow: none !important;
}

/* O texto digitado não pode herdar o branco do tema escuro (text-slate-100,
   text-white): no creme ele some. Vale para campo livre, lista e autocomplete. */
[data-theme="nordeste"] :is(.wizard-input, .autocomplete-input, .wizard-instance textarea, #wizard-container textarea,
    .wizard-instance input:not([type="checkbox"]):not([type="radio"]),
    #wizard-container input:not([type="checkbox"]):not([type="radio"])) {
    color: var(--nd-text) !important;
    -webkit-text-fill-color: var(--nd-text) !important;
    caret-color: var(--nd-text);
}

[data-theme="nordeste"] :is(.wizard-input, .autocomplete-input):is(:disabled, [readonly]) {
    color: var(--nd-text-soft) !important;
    -webkit-text-fill-color: var(--nd-text-soft) !important;
}

[data-theme="nordeste"] .wizard-input:focus {
    background-color: #fff !important;
    box-shadow: 0 0 0 3px rgba(31, 122, 48, 0.14) !important;
}
