.home-hero{-webkit-text-size-adjust:100%;tab-size:4; margin:120px; font-variation-settings:normal;--bg-base:#FFFFFF;--bg-base-secondary:#F7FAFC;--bg-base-tertiary:#EDF2F7;--bg-surface:#F7FAFC;--bg-elevated:#FFFFFF;--text-base:#2D3748;--text-base-secondary:#4A5568;--text-base-tertiary:#718096;--text-muted:#718096;--border-base:#E2E8F0;--border-base-light:#F7FAFC;--border-base-dark:#CBD5E0;--primary:#FACB1F;--primary-hover:#E5B200;--secondary:#1F4287;--secondary-hover:#1A3670;font-family:Poppins,sans-serif;-webkit-font-smoothing:antialiased;font-size:1rem;line-height:1.5rem;color:var(--text-base);--tw-gradient-from:rgb(250 203 31 / .2) var(--tw-gradient-from-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to:transparent var(--tw-gradient-to-position);box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb;--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x:;--tw-pan-y:;--tw-pinch-zoom:;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position:;--tw-gradient-via-position:;--tw-gradient-to-position:;--tw-ordinal:;--tw-slashed-zero:;--tw-numeric-figure:;--tw-numeric-spacing:;--tw-numeric-fraction:;--tw-ring-inset:;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur:;--tw-brightness:;--tw-contrast:;--tw-grayscale:;--tw-hue-rotate:;--tw-invert:;--tw-saturate:;--tw-sepia:;--tw-drop-shadow:;--tw-backdrop-blur:;--tw-backdrop-brightness:;--tw-backdrop-contrast:;--tw-backdrop-grayscale:;--tw-backdrop-hue-rotate:;--tw-backdrop-invert:;--tw-backdrop-opacity:;--tw-backdrop-saturate:;--tw-backdrop-sepia:;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;margin-bottom:2rem;display:flex;align-items:center;flex-direction:row}
.home-hero-section{width:100%}
.home-hero-section,.processes-section,.cpf-section,.como-funciona-section{border-left:1px solid var(--border-base);border-right:1px solid var(--border-base)}
.aj-custom-header{position:fixed;top:0;left:0;width:100%;z-index:1000}
body{padding-top:64px}
.stats-grid .home-stats-card,.cpf-section .card,.como-funciona-section .card,.processes-section .home-latest-card{background:#ffffff70;color:var(--text-base);border:1px solid var(--border-base);border-radius:.5rem;box-shadow:0 1px 2px rgba(0,0,0,.05)}
@media (min-width:1024px){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* Tamanhos utilitários para os ícones da seção Como funciona */
.como-funciona-section .w-16{width:4rem}
.como-funciona-section .h-16{height:4rem}
.como-funciona-section .w-8{width:2rem}
.como-funciona-section .h-8{height:2rem}
.como-funciona-section .card svg{width:2rem;height:2rem;display:inline-block}
/* Grid da seção Como funciona */
.como-funciona-section .grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr))}
@media (min-width:768px){.como-funciona-section .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Tipografia default mantém herança utilitária; centralização removida */

.text-lg {
    font-size: 1.125rem;
    line-height: 1.75rem;
    width: 80%;
}



.aj-custom-header .home-header-menu .menu-button {
    height: 30px !important;
}

.notification-badge,
.header-notification-badge {
    color: #ffffff !important;
}



.flex {
    display: flex;
    gap: 16px;
    font-size: 14px;
}

@media (min-width: 1024px) {
    .lg\:grid-cols-4 {
        display: grid;
        grid-template-columns: repeat(4, minmax(250px, 1fr));
        gap: 20px;
        width: 90%;
        margin: 0 auto;
        padding: 40px 0;
    }
}



.text-muted {
    color: var(--text-muted);
    font-size: .875rem;
    text-align: left;
}



.bg-base {
    background-color: #ffffff00;
}

.font-semibold {
    font-weight: 600;
    font-size: 18px;
    text-align: left;
    color: black;
    text-transform: lowercase;
}

.font-semibold::first-letter {
    text-transform: uppercase;
}

@media (min-width: 768px) {
    .como-funciona-section .md\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin: 81px;
        gap: 29px;
        margin-top: 10px;
        /* height: 50px; */
    }
}

.stats-grid .card, .cpf-section .card, .como-funciona-section .card, .processes-section .card {
    background: #ffffff70;
    color: var(--text-base);
    border: 1px solid var(--border-base);
    border-radius: .5rem;

    box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
}

/* Lista de Processos em Destaque: empilhar e espaçar */
#featured-processos .card { display:block; width:100% }
#featured-processos .card + .card { margin-top: 1rem }

.como-funciona-section .card h3 { text-align: center }
.como-funciona-section .card p { text-align: center }
.home-hero h1 { color: #000 }
.home-hero .home-hero-illustration { max-width: 40rem; width: 100%; background-color: transparent }


.home-hero .home-hero-illustration {
    max-width: 40rem;
    width: 100%;
    scale: 185%;
    background-color: transparent;
}

.processo-rj-form-list .container, .aj-custom-header .container, .main-wrapper .container {
    max-width: 100% !important;
    width: 100% !important;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    
}

header.aj-custom-header nav {
    margin-right: 15px;

}

.aj-custom-header{
    margin-right: 10px;
    margin-left: 50px;
}

@media (min-width: 768px) {
    .como-funciona-section .md\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin: 81px;
        gap: 29px;
        margin-top: 10px;
        margin-bottom: 15%;
        height: 150% !important;
        /* height: 50px; */
    }
}

.como-funciona-section .card {
    background: #ffffff70;
    color: var(--text-base);
    border: 1px solid var(--border-base);
    border-radius: .5rem;
    height: 140%;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
}

.font-bold {
    font-weight: 700;
    font-size: 28px;
}

.bg-surface {
    background-color: #f7fafc00;
    min-width: 41%;
}

.mb-4.home-latest-info {
    margin-bottom: 1rem;
    margin-top: 10px;
    grid-auto-flow: column;
    gap: 48px;
}

.justify-center {
    justify-content: center;
    background: #ffffff00;
}

.processes-section .card {
    background: #ffffff70;
    color: var(--text-base);
    max-width: 90%;
    gap: 0px;
    justify-self: anchor-center;
    border: 1px solid var(--border-base);
    border-radius: .5rem;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
}
.aj-custom-header .home-header-menu { position: relative }
.aj-custom-header .home-header-menu .menu-button { place-content: center; padding: 6px 10px; border: 1px solid var(--primary); border-radius: 6px; background: var(--primary); color: #000; cursor: pointer; font-size: .875rem }
.aj-custom-header .home-header-menu .menu-list {
    position: absolute;
    right: 0;
    top: calc(100% + 0px);
    min-width: 220px;
    background: var(--bg-elevated);
    border: 1px solid var(--border-base);
    border-radius: 8px;
    box-shadow: 0 6px 16px rgba(0,0,0,.08);
    padding: 8px 0;
    display: block;
    visibility: hidden;
    opacity: 0;
    transform: translateY(-5px);
    transition: visibility 0s linear 0.5s, opacity 0.3s ease-out, transform 0.3s ease-out;
    z-index: 1001;
    list-style: none;
    margin: 0;
}
.aj-custom-header .home-header-menu:hover .menu-list, .aj-custom-header .home-header-menu:focus-within .menu-list {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0s;
}
.aj-custom-header .home-header-menu .menu-link { display: block; padding: 8px 12px; color: var(--text-base); white-space: nowrap }
.aj-custom-header .home-header-menu .menu-button:hover { background: var(--primary-hover); border-color: var(--primary-hover) }
.aj-custom-header .home-header-menu .menu-link:hover { background: var(--bg-base-secondary) }

/* Nested menu support */
.aj-custom-header .home-header-menu .menu-list .has-submenu { position: relative; }
.aj-custom-header .home-header-menu .menu-list .submenu {
    display: none;
    position: absolute;
    right: 100%;
    top: 0;
    min-width: 220px;
    background: var(--bg-elevated);
    border: 1px solid var(--border-base);
    border-radius: 8px;
    box-shadow: 0 6px 16px rgba(0,0,0,.08);
    padding: 8px 0;
    list-style: none;
    margin: 0;
}
.aj-custom-header .home-header-menu .menu-list .has-submenu:hover > .submenu,
.aj-custom-header .home-header-menu .menu-list .has-submenu:focus-within > .submenu {
    display: block;
}

.home-search-filter-wrapper {
    margin-right: 2.5rem;
}
-processes .home-latest-card .info-item .text-sm {
    min-height: 20px;
    line-height: 20px;
}
.home-latest-processes .home-latest-card .info-item .font-medium {
    min-height: 28px;
    line-height: 28px;
}

button, [type="button"], [type="reset"], [type="submit"] {
    position: relative;
    cursor: pointer;
    border: 0;
    border-radius: 4px;
    padding: 8px 10px;
    background: var(--theme-color);
    color: #363638;
    -webkit-appearance: button;
    appearance: button;
    -webkit-transition: all 0.3s 
ease-in-out;
    transition: all 0.3s 
ease-in-out;
    min-width: 169px !important;
    border-radius: 25px;
    height: 48px;
}

.processo-rj-form-list .container, .aj-custom-header .container, .main-wrapper .container {

    bg-base-secondary: transparent !important;

}

.home-hero-section, .processes-section, .cpf-section, .como-funciona-section {
    border-left: 1px solid var(--border-base);
    border-right: 1px solid var(--border-base);
    background: transparent !important;
    margin-bottom: 90px;
}

.text-2xl {
    font-size: 1.5rem;
    line-height: 2rem;
    color: black;
    
   
}

.highlighted {
    position: relative;
    background: #686666 !important;
    width: 100%;
    margin-top: 74px !important;
    margin: 0;
    padding: 0;
}

.home-search-filter-wrapper {
    margin-right: 3.9rem;
}

@media (min-width: 1024px) {
    .lg\:grid-cols-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        padding: 60px 0px !important;
        width: 100%;
        gap: 10PX;
        max-width: 90%;
    }
}

.message-error {
    background: #c94d1c;
    border-radius: 10px;
    margin-top: 100px !important;
}

.message-status {
    background: #89ad32;
    border-radius: 10px;
    /*margin-top: 100px !important;*/
}
.btn-outline-primary {
    background-color: transparent;
    border: 1px solid var(--primary);
    color: var(--text-base);
    transition: all 0.2s;
}

.btn-outline-primary:hover {
    background-color: var(--primary);
    color: #000;
    border-color: var(--primary);
}

.home-welcome-card {
     -webkit-text-size-adjust: 100%; 
     tab-size: 4; 
     font-feature-settings: normal; 
     font-variation-settings: normal; 
     --bg-base: #FFFFFF; 
     margin-top: -3%;
     --bg-base-secondary: #F7FAFC; 
     --bg-base-tertiary: #EDF2F7; 
     --bg-surface: #F7FAFC; 
     --bg-elevated: #FFFFFF; 
     --text-base: #2D3748; 
     --text-base-secondary: #4A5568; 
     --text-base-tertiary: #718096; 
     --text-muted: #718096; 
     --border-base: #E2E8F0; 
     --border-base-light: #F7FAFC; 
     --border-base-dark: #CBD5E0; 
     --primary: #FACB1F; 
     --primary-hover: #E5B200; 
     --secondary: #1F4287; 
     --secondary-hover: #1A3670; 
     font-family: Poppins,sans-serif; 
     -webkit-font-smoothing: antialiased; 
     font-size: 1rem; 
     line-height: 1.5rem; 
     color: var(--text-base); 
     box-sizing: border-box; 
     border-style: solid; 
     --tw-border-spacing-x: 0; 
     --tw-border-spacing-y: 0; 
     --tw-translate-x: 0; 
     --tw-translate-y: 0; 
     --tw-rotate: 0; 
     --tw-skew-x: 0; 
     --tw-skew-y: 0; 
     --tw-scale-x: 1; 
     --tw-scale-y: 1; 
     --tw-pan-x: ; 
     --tw-pan-y: ; 
     --tw-pinch-zoom: ; 
     --tw-scroll-snap-strictness: proximity; 
     --tw-gradient-from-position: ; 
     --tw-gradient-via-position: ; 
     --tw-gradient-to-position: ; 
     --tw-ordinal: ; 
     --tw-slashed-zero: ; 
     --tw-numeric-figure: ; 
     --tw-numeric-spacing: ; 
     --tw-numeric-fraction: ; 
     --tw-ring-inset: ; 
     --tw-ring-offset-width: 0px; 
    --tw-ring-offset-color: #fff; 
     --tw-ring-color: rgb(59 130 246 / .5); 
     --tw-ring-offset-shadow: 0 0 #0000; 
     --tw-ring-shadow: 0 0 #0000; 
     --tw-blur: ; 
     --tw-brightness: ; 
     --tw-contrast: ; 
     --tw-grayscale: ; 
     --tw-hue-rotate: ; 
     --tw-invert: ; 
     --tw-saturate: ; 
     --tw-sepia: ; 
     --tw-drop-shadow: ; 
     --tw-backdrop-blur: ; 
     --tw-backdrop-brightness: ; 
     --tw-backdrop-contrast: ; 
     --tw-backdrop-grayscale: ; 
     --tw-backdrop-hue-rotate: ; 
     --tw-backdrop-invert: ; 
     --tw-backdrop-opacity: ; 
     --tw-backdrop-saturate: ; 
     --tw-backdrop-sepia: ; 
     transition-property: color,background-color,border-color,text-decoration-color,fill,stroke; 
     transition-timing-function: cubic-bezier(.4,0,.2,1); 
     transition-duration: .2s; 
     border-radius: .5rem; 
     border-width: 1px; 
     --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05); 
     --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color); 
     box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow); 
     background-color: var(--bg-surface); 
     border-color: var(--border-base); 
     padding: 2rem; 
}

.home-welcome-btn-primary, .home-welcome-btn-outline {
    width: 200px !important;
}

.btn-primary {
    background-color: var(--primary) !important;
    font-weight: 600 !important;
}

/* Welcome Card Buttons - Strict Dimensions */
.home-welcome-btn-primary,
.home-welcome-btn-outline {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 200px !important;
    min-width: 200px !important;
    max-width: 200px !important;
    height: 48px !important;
    padding: 0 1rem !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
    text-align: center !important;
    border-radius: 0.375rem !important;
    font-weight: 500 !important;
    font-family: Poppins, sans-serif !important;
    font-size: 1rem !important;
    transition: all 0.2s !important;
    text-decoration: none !important;
    flex: 0 0 290px !important;
    margin: 5px !important; /* Ensure some spacing if they wrap */
}

.home-welcome-btn-primary {
    background-color: #FACB1F !important;
    color: #1A202C !important;
    border: 1px solid transparent !important;
    box-shadow: 0 1px 2px 0 rgb(0 0 0 / .05) !important;
}

.home-welcome-btn-primary:hover {
    background-color: #E5B200 !important;
    color: #1A202C !important;
}

.home-welcome-btn-outline {
    background-color: transparent !important;
    color: #FACB1F !important;
    border: 1px solid #FACB1F !important;
    box-shadow: 0 1px 2px 0 rgb(0 0 0 / .05) !important;
}

.home-welcome-btn-outline:hover {
    background-color: #FACB1F !important;
    color: #1A202C !important;
}

/* Unique style for the 'Ir' search button */
.home-process-go-btn {
    background-color: #FACB1F !important;
    color: #1A202C !important;
    border: none !important;
    min-width: auto !important;
    width: auto !important;
    height: 40px !important; /* h-10 */
    padding: 0 1.5rem !important; /* px-4 is usually 1rem, user had px-4 */
    border-radius: 0.375rem !important; /* rounded-md */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    font-weight: 500 !important;
    font-family: inherit !important;
    text-decoration: none !important;
    transition: background-color 0.2s !important;
    box-shadow: 0 1px 2px 0 rgb(0 0 0 / .05) !important;
    margin-left: 0.5rem !important; /* gap-2 in parent was likely handling this, but let's be safe if we removed parent classes */
}

.home-process-go-btn:hover {
    background-color: #E5B200 !important;
    color: #1A202C !important;
}

/* Dark Mode Support */
[data-theme="dark"] {
    --bg-base: #1A202C;
    --bg-base-secondary: #2D3748;
    --bg-base-tertiary: #4A5568;
    --bg-surface: #2D3748;
    --bg-elevated: #2D3748;
    --text-base: #F7FAFC;
    --text-base-secondary: #E2E8F0;
    --text-base-tertiary: #CBD5E0;
    --text-muted: #A0AEC0;
    --border-base: #4A5568;
    --border-base-light: #2D3748;
    --border-base-dark: #718096;
    --primary: #FACB1F;
    --primary-hover: #E5B200;
    --secondary: #63B3ED;
    --secondary-hover: #4299E1;
}

[data-theme="dark"] body {
    background-color: var(--bg-base);
    color: var(--text-base);
}

[data-theme="dark"] .bg-base {
    background-color: var(--bg-base) !important;
}

[data-theme="dark"] .font-semibold,
[data-theme="dark"] .text-2xl,
[data-theme="dark"] .home-hero h1 {
    color: var(--text-base) !important;
}

[data-theme="dark"] .stats-grid .card, 
[data-theme="dark"] .cpf-section .card, 
[data-theme="dark"] .como-funciona-section .card, 
[data-theme="dark"] .processes-section .card,
[data-theme="dark"] .home-stats-card,
[data-theme="dark"] .home-latest-card {
    background: var(--bg-surface) !important;
    border-color: var(--border-base) !important;
    color: var(--text-base) !important;
}

#block-vani-content > div > div > header > div > nav > div.home-header-menu > ul > li > a {
    font-family: 'Poppins', sans-serif !important;
}

#block-vani-content > div > div > header > div > nav > div.home-header-menu > ul > li:nth-child(1) > ul > li > a {
    font-family: 'Poppins', sans-serif !important;
}

body > div.highlighted.block-section > aside > div {
    display: -webkit-box;
    display: -ms-flexbox;
    background: #fff9eb !important;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    /* flex-direction: column; */
}


body > div.highlighted.block-section {
    position: relative;
    background: #fefcf4 !important;
    width: 100%;
    margin: 0;
    padding: 0;
}


body > div.highlighted.block-section > aside > div {
    display: -webkit-box;
    display: -ms-flexbox;
    background: #fefcf4 !important;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    /* flex-direction: column; */
}


#block-vani-content > div > div > header > div > nav > div.home-header-menu > ul {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 100 !important;
}

[data-theme="dark"] .aj-custom-header {
    background-color: var(--bg-base) !important;
    border-bottom-color: var(--border-base) !important;
}

[data-theme="dark"] .home-header-menu .menu-list,
[data-theme="dark"] .home-header-menu .submenu {
    background: var(--bg-elevated);
    border-color: var(--border-base);
}

[data-theme="dark"] .home-header-menu .menu-link {
    color: var(--text-base);
}

[data-theme="dark"] .home-header-menu .menu-link:hover {
    background: var(--bg-base-secondary);
}

[data-theme="dark"] .home-process-search-input {
    background-color: var(--bg-elevated) !important;
    color: var(--text-base) !important;
    border-color: var(--border-base) !important;
}

[data-theme="dark"] .home-process-search-input::placeholder {
    color: var(--text-muted) !important;
    opacity: 1;
}

[data-theme="dark"] .aj-custom-header a {
    color: var(--text-base);
}

.dark-mode-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    margin-right: 10px;
    color: var(--text-base);
    transition: background-color 0.2s, color 0.2s;
    cursor: pointer;
}
.dark-mode-toggle:hover {
    background-color: rgba(0,0,0,0.05);
    color: var(--primary);
}
[data-theme="dark"] .dark-mode-toggle:hover {
    background-color: rgba(255,255,255,0.1);
}

.aj-custom-header .container {
    max-width: 100% !important;
    width: 90% !important;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: 35px !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    justify-self: center !important;
}

#block-vani-content > div > div > header > div > nav > div.header-notification-bell-wrapper {
    margin-right: -10px !important;
}

@media (max-width: 768px) {
    .aj-custom-header {
        margin-left: 0;
        margin-right: 0;
    }

    .aj-custom-header nav {
        gap: 12px !important;
    }


    .aj-custom-header img.h-12 {
        max-width: 40px !important;
        height: auto;
    }

    .home-hero-section .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .home-hero {
        margin: 72px 16px 24px 16px;
        flex-direction: column;
        gap: 24px;
    }

    .home-hero h1 {
        font-size: 1.75rem;
        line-height: 1.3;
    }

    .home-hero .text-lg {
        width: 100%;
        font-size: 1rem;
    }

    .home-hero .home-hero-illustration {
        max-width: 260px;
        margin: 0 auto;
        transform: none;
        scale: 1;
    }

    .bg-surface {
        min-width: 100%;
    }

    .home-search-filter-wrapper {
        margin-right: 0;
        margin-top: 16px;
        justify-content: center;
        flex-wrap: wrap;
    }

    .home-search-filter-wrapper .home-process-search-input {
        width: 100% !important;
        max-width: 100% !important;
    }

    .home-search-filter-wrapper #home-process-go,
    .home-search-filter-wrapper .home-process-go-btn {
        width: 100%;
        margin-top: 8px;
    }

    .mb-4.home-latest-info {
        grid-auto-flow: row;
        gap: 16px;
    }

    .processes-section .card {
        max-width: 100%;
    }

    .processes-section .flex.justify-between.items-center {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .processos-destaque-title {
        margin-left: 0 !important;
        text-align: left;
    }

    .home-welcome-btn-primary,
    .home-welcome-btn-outline {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        flex: 1 1 100% !important;
    }
}

/* Dark Mode Overrides */
.dark body {
    background-color: #1a202c;
    color: #f7fafc;
}

.dark .home-hero {
    --bg-base: #1a202c;
    --bg-base-secondary: #2d3748;
    --bg-base-tertiary: #4a5568;
    --bg-surface: #2d3748;
    --bg-elevated: #2d3748;
    --text-base: #f7fafc;
    --text-base-secondary: #e2e8f0;
    --text-base-tertiary: #cbd5e0;
    --text-muted: #a0aec0;
    --border-base: #4a5568;
    --border-base-light: #2d3748;
    --border-base-dark: #718096;
}

.dark .aj-custom-header {
    background-color: #1a202c;
    border-bottom-color: #4a5568;
}

.dark .aj-custom-header .home-header-menu .menu-list,
.dark .aj-custom-header .home-header-menu .submenu {
    background: #2d3748;
    border-color: #4a5568;
}

.dark .aj-custom-header .home-header-menu .menu-link {
    color: #f7fafc;
}

.dark .aj-custom-header .home-header-menu .menu-link:hover {
    background: #4a5568;
}

/* Visibility Helpers */
.dark .dark\:hidden { display: none !important; }
.dark .dark\:inline-block { display: inline-block !important; }

/* Component Overrides */
.dark .stats-grid .home-stats-card,
.dark .cpf-section .card,
.dark .como-funciona-section .card,
.dark .processes-section .home-latest-card,
.dark .home-welcome-card {
    background-color: #2d3748;
    border-color: #4a5568;
    color: #f7fafc;
}

.dark .home-hero h1,
.dark .font-semibold,
.dark .text-2xl,
.dark h1,
.dark h2,
.dark h3,
.dark h4,
.dark h5,
.dark h6 {
    color: #f7fafc !important;
}

.dark .text-gray-600 { color: #cbd5e0 !important; }
.dark .text-gray-900 { color: #f7fafc !important; }
.dark .bg-white { background-color: #2d3748 !important; }
.dark .text-neutral-dark { color: #f7fafc !important; }

/* Navbar user name */
.dark .aj-custom-header nav span {
    color: #f7fafc;
}

/* Notification Bell */
.dark .fa-bell {
    color: #f0ad4e !important; /* Keep original or adjust */
}

/* Icons in cards */
.dark .como-funciona-section .card svg {
    stroke: #f7fafc;
}

/* Input fields if any */
.dark input, 
.dark select, 
.dark textarea {
    background-color: #4a5568;
    color: #f7fafc;
    border-color: #718096;
}

/* Scrollbar for dark mode */
.dark ::-webkit-scrollbar {
  width: 10px;
}
.dark ::-webkit-scrollbar-track {
  background: #1a202c;
}
.dark ::-webkit-scrollbar-thumb {
  background: #4a5568;
  border-radius: 5px;
}
.dark ::-webkit-scrollbar-thumb:hover {
  background: #718096;
}

/* Fix Hero Illustration Background if needed */
.dark .home-hero .home-hero-illustration {
    /* If it's an SVG, it might need specific styling, but transparent bg is usually fine */
}
