:root { --bg-app:#f5f5f0;--bg-sidebar:#1e3029;--bg-card:#fff;--primary:#20372e;--primary-hover:#245b46;--text-main:#20362e;--text-muted:#5c6e63;--border-color:#dce4dc;--success:#287447;--danger:#b82d3b;--warning:#976419;--info:#315d83;--ouro:#ba985b;--azul-vips:#20372e;--verde-vips:#20372e;--verde-dark:#245b46;--fundo:#f5f5f0;--borda:#dce4dc;--texto:#20362e;--azul-claro:#e8eee7;color-scheme:light }
:root[data-theme="dark"] { --bg-app:#111c17;--bg-sidebar:#14251d;--bg-card:#1d3026;--primary:#367452;--primary-hover:#438765;--text-main:#edf3eb;--text-muted:#b5c6b9;--border-color:#3c5144;--success:#81d49f;--danger:#ff8d98;--warning:#dfbc79;--info:#9ec5e9;--azul-vips:#a9c8b4;--verde-vips:#367452;--verde-dark:#438765;--fundo:#111c17;--borda:#3c5144;--texto:#edf3eb;--azul-claro:#294235;color-scheme:dark }
body {background:var(--bg-app);color:var(--text-main);font-family:Arial, sans-serif} #main-layout,#main-content{background:var(--bg-app)}
#sidebar {background:var(--bg-sidebar);border-right:1px solid var(--border-color);color:#fff}
.sidebar-header{padding:20px 22px!important;min-height:132px!important;border-bottom:2px solid var(--ouro);align-items:flex-start!important;gap:8px}
.vips-identity{display:flex;align-items:center;gap:13px}.vips-emblem{width:64px;height:64px;object-fit:cover;border-radius:50%;border:1px solid #ba985b66;flex-shrink:0}.vips-wordmark{font-family:Georgia,serif;font-size:29px;line-height:1.1;color:#fff;letter-spacing:-1px}.vips-wordmark small{display:block;font-family:Arial,sans-serif;font-size:8px;color:#e4d2af;letter-spacing:1.5px;margin-top:7px;line-height:1.5}.sidebar-header .admin-tag,.sidebar-header .partner-tag{color:#d0dbd2!important;font-size:10px;letter-spacing:1px}
#sidebar .menu-btn,#sidebar .nav-link{color:#e3ece4!important;opacity:1}#sidebar .submenu button{color:#c1d0c5}#sidebar .menu-btn.active,#sidebar .nav-link.active{background:#314d3d;box-shadow:inset 3px 0 0 var(--ouro);color:#fff!important}#sidebar .menu-btn:hover,#sidebar .nav-link:hover,#sidebar .submenu button:hover{background:#ffffff12;color:#fff}#sidebar .submenu button.active{color:#e4d2af}
header{background:var(--bg-sidebar);border-bottom:3px solid var(--ouro);gap:16px}.header-title{color:#fff;font-weight:600;font-size:17px;text-transform:none;letter-spacing:0}header .user-info,header .user-info span,header #userName{color:#e3ece4!important}header .header-icons{color:#d0dbd2}
.card,.admin-card,.kpi-card,.login-card,.login-box,.lgpd-box{background:var(--bg-card)!important;color:var(--text-main);border:1px solid var(--border-color);box-shadow:0 3px 14px #16392e06;border-radius:12px}.kpi-card{border-top:3px solid var(--ouro)}.kpi-card h2,.kpi-card h3,.page-title,.section-title{color:var(--text-main)}
input,select,textarea,.form-input{background:var(--bg-card);color:var(--text-main);border-color:var(--border-color)}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:focus,select:focus,textarea:focus{border-color:var(--ouro);box-shadow:0 0 0 3px #ba985b20}label,.form-group label{color:var(--text-muted)}input[type="date"],input[type="month"],input[type="time"]{color-scheme:light}html[data-theme="dark"] input[type="date"],html[data-theme="dark"] input[type="month"],html[data-theme="dark"] input[type="time"]{color-scheme:dark}::-webkit-calendar-picker-indicator{filter:none}
button.btn-vips,.btn-login,#btnLogin{background:var(--primary);color:#fff}button.btn-vips:hover,.btn-login:hover,#btnLogin:hover{background:var(--primary-hover)}table{border-color:var(--border-color)}th{background:var(--bg-sidebar);color:#fff;border-color:var(--border-color)}td{color:var(--text-main);border-color:var(--border-color)}tbody tr:nth-child(even){background:#20372e06}html[data-theme="dark"] tbody tr:nth-child(even){background:#ffffff04}.roles-grid{background:var(--bg-app)}
footer,.footer-info{color:var(--text-muted)}.peace-credit{font-size:11px;color:var(--text-muted);line-height:1.6}.peace-credit strong{font-weight:600}.vips-theme-toggle{display:inline-flex;align-items:center;gap:7px;width:auto;min-height:36px;padding:8px 12px;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-card);color:var(--text-main);font:600 12px Arial,sans-serif;cursor:pointer;white-space:nowrap}.vips-theme-toggle:hover{border-color:var(--ouro);background:var(--bg-card);color:var(--text-main)}.vips-theme-toggle:focus-visible{outline:3px solid var(--ouro);outline-offset:3px}.login-theme{position:fixed;right:20px;top:20px;z-index:1200}header .vips-theme-toggle{border-color:#ffffff40;background:#ffffff12;color:#fff}
.brand h1{font-size:23px;color:var(--text-main);letter-spacing:-.5px}.brand p{color:var(--text-muted);font-weight:400}.brand .vips-emblem{width:86px;height:86px;margin-bottom:16px}.brand span{color:var(--text-main)}#btnRecuperarSenha{color:var(--text-main)!important}.footer-info{line-height:1.7}.brand-login-heading{font-size:23px;color:var(--text-main);margin:12px 0 6px}.brand-login-subtitle{font-size:12px;color:var(--text-muted);letter-spacing:1px;margin:0 0 24px}.login-box>.vips-emblem{width:86px;height:86px}#msgErro{background:var(--bg-app);border:1px solid var(--border-color);color:var(--danger);line-height:1.5}.login-box #msgErro{padding:10px}.login-box input{background:var(--bg-app);color:var(--text-main)}
@media(max-width:760px){header{padding:12px 16px;flex-wrap:wrap}.content-area{padding:20px 16px 70px}#sidebar{width:210px}.sidebar-header{padding:16px!important}.vips-wordmark{font-size:24px}.vips-emblem{width:48px;height:48px}.kpi-grid{grid-template-columns:1fr 1fr!important}.header-title{font-size:14px}footer{flex-wrap:wrap;gap:8px}.login-card{margin:70px 16px 20px;padding:28px;max-width:400px}.vips-theme-toggle{font-size:11px;padding:8px}}
@media print{html[data-theme],body{--bg-app:white;--bg-card:white;--text-main:#20362e;--text-muted:#53665a;--border-color:#dce4dc;background:white!important;color:#20362e!important}.vips-theme-toggle{display:none!important}}

html[data-theme="dark"] #appContent form,html[data-theme="dark"] #appContent .summary-block,html[data-theme="dark"] #appContent .fechamento-resumo-grupos>div,html[data-theme="dark"] #appContent .custom-modal-box{background:var(--bg-card)!important;color:var(--text-main)!important}html[data-theme="dark"] #appContent input,html[data-theme="dark"] #appContent select{background:var(--bg-card)!important;color:var(--text-main)!important;border-color:var(--border-color)!important}html[data-theme="dark"] #appContent tbody tr{background:var(--bg-card)!important}html[data-theme="dark"] #appContent td,html[data-theme="dark"] #appContent h2,html[data-theme="dark"] #appContent h3,html[data-theme="dark"] #appContent .summary-card-header,html[data-theme="dark"] #appContent .summary-card-value{color:var(--text-main)!important}html[data-theme="dark"] #appContent tbody tr:nth-child(even){background:var(--bg-app)!important}

.hub-welcome{margin:8px 0 28px}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--text-muted)}.hub-welcome h2{font-size:clamp(26px,4vw,38px);letter-spacing:-1px;margin:12px 0}.hub-welcome p{color:var(--text-muted)}.hub-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.hub-controls label{font-size:13px}.hub-controls input{max-width:430px;flex:1;min-width:220px;padding:12px;border:1px solid var(--border-color);border-radius:8px}.hub-controls button{padding:12px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-main);border-radius:8px;cursor:pointer}.hub-controls button[aria-pressed=true]{border-color:var(--ouro);box-shadow:inset 0 0 0 1px var(--ouro)}.module-card{position:relative;transition:border-color .15s,transform .15s}.module-card:hover{border-color:var(--ouro);transform:translateY(-2px)}.module-favorite{position:absolute;right:16px;top:16px;border:0;background:transparent;color:var(--ouro);font-size:25px;cursor:pointer;width:auto}.resume-link{display:inline-block;padding:12px 16px;margin:0 0 18px;border:1px solid var(--ouro);border-radius:8px;color:var(--text-main);text-decoration:none}.pmx-module-nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font:12px Arial,sans-serif}.pmx-module-nav a{color:#e6d5af;text-decoration:none;padding:9px;border:1px solid #ba985b66;border-radius:6px}.pmx-module-nav span{color:#fff}body>.pmx-module-nav{background:var(--bg-sidebar);padding:12px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--ouro);outline-offset:3px}@media(prefers-reduced-motion:reduce){.module-card{transition:none}.module-card:hover{transform:none}}@media print{.pmx-module-nav,.hub-controls,.module-favorite{display:none!important}}
