/* Temas acessiveis; esta camada altera somente apresentacao. */
:root, :root[data-theme="light"] {
  color-scheme:light;
  --input-dark-bg:#0b111a; --input-dark-text:#f8fafc; --input-dark-muted:#94a3b8; --input-dark-border:#293548;
  --input-light-bg:#fff; --input-light-text:#172033; --input-light-muted:#64748b; --input-light-border:#d8dee8;
  --ui-control-focus-bg:#fff; --ui-control-focus-text:#172033;
  --ui-control-disabled-bg:#f1f5f9; --ui-control-disabled-text:#64748b;
  --cd-bg:#f4f5f8; --cd-surface:#fcfcfd; --cd-surface-soft:#f0f2f7; --cd-surface-elevated:#fff;
  --cd-navy:#0f172a; --cd-slate:#475569; --cd-muted:#64748b; --cd-disabled:#94a3b8;
  --cd-border:#e3e6ed; --cd-border-strong:#ccd1dc;
  --chart-label:#64748b; --chart-title:#334155; --chart-grid:#e2e8f0;
  --bg:var(--cd-bg); --bg-deep:#f1f5f9; --surface:var(--cd-surface); --surface2:var(--cd-surface-soft);
  --surface3:#e2e8f0; --surface4:#cbd5e1; --surface-raised:var(--cd-surface-elevated); --bg-card:var(--cd-surface);
  --border:var(--cd-border); --border-mid:var(--cd-border-strong); --border-bright:#94a3b8;
  --text:#0f172a; --text-soft:#475569; --text-muted:#64748b; --text-dim:#94a3b8;
  --ui-bg:var(--cd-bg); --ui-surface:var(--cd-surface); --ui-surface-2:var(--cd-surface-soft);
  --ui-surface-raised:var(--cd-surface-elevated); --ui-border:var(--cd-border); --ui-border-strong:var(--cd-border-strong);
  --ui-text:#0f172a; --ui-text-secondary:#475569; --ui-text-muted:#64748b;
}
:root[data-theme="dark"] {
  color-scheme:dark;
  --input-dark-bg:#0b111a; --input-dark-text:#f8fafc; --input-dark-muted:#94a3b8; --input-dark-border:#293548;
  --input-light-bg:#fff; --input-light-text:#172033; --input-light-muted:#64748b; --input-light-border:#d8dee8;
  --ui-control-focus-bg:#0d131b; --ui-control-focus-text:#f8fafc;
  --ui-control-disabled-bg:#18202d; --ui-control-disabled-text:#cbd5e1;
  --cd-bg:#0b1120; --cd-surface:#111827; --cd-surface-soft:#172033; --cd-surface-elevated:#1d2940;
  --cd-navy:#f8fafc; --cd-slate:#cbd5e1; --cd-muted:#94a3b8; --cd-disabled:#64748b;
  --cd-border:#243047; --cd-border-strong:#35435c; --cd-primary-soft:rgba(99,102,241,.16); --cd-accent-soft:rgba(59,130,246,.14);
  --cd-shadow-sm:0 4px 16px rgba(0,0,0,.22); --cd-shadow-md:0 14px 36px rgba(0,0,0,.3);
  --chart-label:#94a3b8; --chart-title:#e2e8f0; --chart-grid:#273449;
  --bg:var(--cd-bg); --bg-deep:#070d18; --surface:var(--cd-surface); --surface2:var(--cd-surface-soft);
  --surface3:var(--cd-surface-elevated); --surface4:#26354b; --surface-raised:var(--cd-surface-elevated); --bg-card:var(--cd-surface);
  --border:var(--cd-border); --border-mid:var(--cd-border-strong); --border-bright:#53637a;
  --text:#f8fafc; --text-soft:#cbd5e1; --text-muted:#94a3b8; --text-dim:#64748b;
  --ui-bg:var(--cd-bg); --ui-surface:var(--cd-surface); --ui-surface-2:var(--cd-surface-soft);
  --ui-surface-raised:var(--cd-surface-elevated); --ui-border:var(--cd-border); --ui-border-strong:var(--cd-border-strong);
  --ui-text:#f8fafc; --ui-text-secondary:#cbd5e1; --ui-text-muted:#94a3b8;
}
body,.shell,.main,main,.content{color:var(--text)!important;background:var(--bg)!important}
.topbar{color:var(--text)!important;background:color-mix(in srgb,var(--surface) 92%,transparent)!important;border-color:var(--border)!important}
.topbar h1,.page-title,.card-title,h1,h2,h3,h4,strong,th{color:var(--text)!important}
.sub,.page-sub,small,.help,.hint,label,.topbar-info-label,.topbar-user-label{color:var(--text-muted)!important}
.card,.item,.painel,.panel,.widget,.modal,.modal-content,.dropdown-menu,.notification-panel,[class*="-card"]:not(.login-card){color:var(--text)!important;background:var(--surface)!important;border-color:var(--border)!important}
input,select,textarea{color:var(--text)!important;background:var(--surface)!important;border-color:var(--border-mid)!important;-webkit-text-fill-color:currentColor}
input::placeholder,textarea::placeholder{color:var(--text-dim)!important;opacity:1}
input:focus,select:focus,textarea:focus{color:var(--ui-control-focus-text)!important;background:var(--ui-control-focus-bg)!important;-webkit-text-fill-color:currentColor}
input:disabled,select:disabled,textarea:disabled,input[readonly],select[readonly],textarea[readonly]{color:var(--ui-control-disabled-text)!important;background:var(--ui-control-disabled-bg)!important;opacity:1!important;-webkit-text-fill-color:currentColor}
button:disabled{color:var(--cd-disabled)!important;opacity:.72}
select option{color:var(--input-light-text)!important;background:var(--input-light-bg)!important;color-scheme:light}
select option:checked{color:#fff!important;background:#334155!important}
select option:disabled{color:var(--input-light-muted)!important;background:#f1f5f9!important}
.dropdown-menu,.select-menu,.combobox,.listbox,.options,.autocomplete,.search-results,[role="listbox"]{color:var(--text)!important;background:var(--surface)!important;border-color:var(--border)!important}
.dropdown-menu :is(button,a,[role="option"]),.select-menu :is(button,a,[role="option"]),.listbox [role="option"],.options [role="option"],.autocomplete>*,.search-results>*{color:var(--text-soft)!important}
.dropdown-menu :is(button,a,[role="option"]):hover,.select-menu :is(button,a,[role="option"]):hover,.listbox [role="option"]:hover,.options [role="option"]:hover,.autocomplete>*:hover,.search-results>*:hover{color:#fff!important;background:#1e293b!important}
[role="option"][aria-selected="true"],.dropdown-menu .selected,.select-menu .selected,.listbox .selected,.options .selected{color:#fff!important;background:#334155!important}
table,thead,tbody,tr,td,th{border-color:var(--border)!important} td{color:var(--text-soft)!important} tbody tr:hover td{background:var(--surface2)!important}
.table-wrap,.table-responsive,.dash-gf-detail-wrap,table,.dropdown,.dropdown-menu,[class*="dropdown"]{color:var(--text-soft)!important;background:var(--surface)!important;border-color:var(--border)!important}
.badge,.tag,.chip{color:var(--text)!important}
.dash-gf-ranking-item,.dash-gf-ranking-row,[class*="ranking-"]{color:var(--text)!important;background:var(--surface2)!important;border-color:var(--border)!important}
.dash-gf-ranking-item:hover,.dash-gf-ranking-row:hover,[class*="ranking-"]:hover{background:color-mix(in srgb,var(--surface2) 78%,var(--cd-accent) 22%)!important}
.dash-gf-ranking-item strong,.dash-gf-ranking-row strong{color:var(--text)!important}.dash-gf-ranking-item small,.dash-gf-ranking-row small{color:var(--text-muted)!important}
.dash-gf-bar,.dash-gf-progress,[class*="ranking-"] [class*="bar"]{background-color:var(--chart-grid)!important}
.dash-gf-axis,.dash-gf-month,.chart-label,.chart-legend,[class*="grafico"] text{color:var(--chart-label)!important;fill:var(--chart-label)!important}
.dash-gf-title,.chart-title{color:var(--chart-title)!important;fill:var(--chart-title)!important}.dash-gf-grid-line,.chart-grid{border-color:var(--chart-grid)!important;stroke:var(--chart-grid)!important}
.sidebar{color:#cbd5e1!important}.sidebar .nav-btn{color:#cbd5e1!important;background:transparent!important;transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease!important}
.sidebar .nav-btn:hover{color:#f8fafc!important;background:rgba(148,163,184,.1)!important}.sidebar .nav-btn.active,.sidebar .nav-btn.ativo,.sidebar .nav-btn[aria-current="page"]{color:#eef2ff!important;font-weight:700!important;background:rgba(99,102,241,.15)!important;box-shadow:inset 3px 0 #818cf8!important}
.theme-switcher{position:relative;flex:0 0 auto}.theme-switcher::before{content:"◐";position:absolute;left:9px;top:50%;translate:0 -50%;z-index:1;color:var(--text-muted);pointer-events:none}.theme-switcher select{min-height:36px!important;width:102px;padding:6px 24px 6px 28px!important;border-radius:9px!important;font-size:11px!important;font-weight:700!important;cursor:pointer}
:root[data-theme="dark"] .topbar-clock:hover,:root[data-theme="dark"] .topbar-business-day:hover,:root[data-theme="dark"] .topbar-store:hover,:root[data-theme="dark"] .topbar-user:hover,:root[data-theme="dark"] .notification-btn:hover,:root[data-theme="dark"] .item:hover{background:var(--cd-surface-elevated)!important}
:root[data-theme="dark"] .sidebar-collapse-toggle{color:var(--text-soft)!important;background:var(--cd-surface-elevated)!important;border-color:var(--border)!important}
:root[data-theme="light"] .login-screen{background:radial-gradient(circle at 18% 16%,rgba(34,197,94,.12),transparent 31%),radial-gradient(circle at 84% 72%,rgba(6,182,212,.11),transparent 34%),linear-gradient(145deg,#f8fafc 0%,#eef5f3 52%,#e8f3f7 100%)!important}
:root[data-theme="light"] .login-card{color:#0f172a!important;background:rgba(255,255,255,.9)!important;border-color:#d7e0ea!important;box-shadow:0 28px 80px rgba(15,23,42,.14)!important}
:root[data-theme="light"] .login-brand::before{background-image:url("../brand/logo-checkdiario-horizontal.svg")!important}
:root[data-theme="light"] .login-field-label,:root[data-theme="light"] .login-check-label{color:#475569!important}
:root[data-theme="light"] .login-field-help,:root[data-theme="light"] .login-hint,:root[data-theme="light"] .login-footer,:root[data-theme="light"] .login-divider{color:#64748b!important}
:root[data-theme="light"] .login-input,:root[data-theme="light"] .login-store-search{color:#0f172a!important;background:#fff!important;border-color:#cbd5e1!important}
:root[data-theme="light"] .login-btn-secondary{color:#334155!important;background:#f8fafc!important;border-color:#cbd5e1!important}
:root[data-theme="light"] #financeiro_contasapagar .contas-pagar-filtros-unificados input,
:root[data-theme="light"] #financeiro_contasapagar .contas-pagar-filtros-unificados select,
:root[data-theme="light"] .filter-field-standard input,:root[data-theme="light"] .filter-field-standard select{color:#0f172a!important;background:#fff!important;border-color:#cbd5e1!important}
:root[data-theme="dark"] .login-input,:root[data-theme="dark"] .login-store-search{color:#f8fafc!important;background:rgba(2,8,23,.46)!important;border-color:rgba(148,163,184,.32)!important}
:root[data-theme="dark"] .login-footer{color:#94a3b8!important}
:root[data-theme="dark"] #cardDashboardGraficosFinanceiros,:root[data-theme="dark"] #bater_ponto .ponto-topo-grid>.card:first-child,:root[data-theme="dark"] .prod-pie-center,:root[data-theme="dark"] .ponto-periodo-chip,:root[data-theme="dark"] .dashboard-period-btn:hover{background:var(--surface)!important}
:root[data-theme="dark"] .dashboard-period-tabs{background:var(--surface2)!important}
:root[data-theme="dark"] .btn-ghost,:root[data-theme="dark"] button:disabled{color:var(--text-soft)!important;background:var(--surface2)!important;border-color:var(--border-mid)!important}
@media(max-width:768px){.theme-switcher select{width:42px;color:transparent!important;padding-inline:0!important}.theme-switcher::before{left:14px;color:var(--text)!important}}

/* Ranking real gerado por 10-dashboard.js. Sem cores de dark inline. */
.dash-gf-category-rank{display:grid;grid-template-columns:24px minmax(120px,1.5fr) minmax(60px,.8fr) auto;align-items:center;gap:8px;width:100%;padding:7px 8px;margin:0 0 5px;border:1px solid var(--border)!important;border-radius:8px!important;background:transparent!important;color:var(--text)!important;cursor:pointer;text-align:left;transition:background-color .18s ease,border-color .18s ease,transform .18s ease}
.dash-gf-category-rank:hover{background:var(--surface2)!important;border-color:var(--border-mid)!important;transform:translateX(2px)}
.dash-gf-category-rank.is-selected{background:var(--cd-primary-soft)!important;border-color:color-mix(in srgb,var(--cd-primary) 42%,var(--border))!important}
.dash-gf-category-position{color:var(--text-muted)!important}.dash-gf-category-position.is-top{color:#b45309!important}
.dash-gf-category-name{display:flex;align-items:center;gap:7px;min-width:0;color:var(--chart-title)!important;font-weight:600}
.dash-gf-category-name>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit!important}
.dash-gf-category-value{color:var(--text)!important;white-space:nowrap}
.dash-gf-category-track{height:9px;background:var(--chart-grid)!important;border-radius:99px;overflow:hidden}.dash-gf-category-track>span{display:block;height:100%;border-radius:99px}
#dashGfTopCategoriasTitulo,#dashGfCurvaTitulo{color:var(--chart-title)!important}
:root[data-theme="light"] #dashGfTopCategorias,:root[data-theme="light"] #dashGfTopCategorias *{opacity:1}

/* Minha conta: separada de Perfis/permissoes. */
.account-menu-wrap{position:relative!important;padding:0!important;background:transparent!important;border:0!important;overflow:visible!important}
.account-menu-trigger{display:flex;align-items:center;gap:8px;min-height:42px;padding:4px 8px;border:1px solid transparent;border-radius:10px;color:var(--text);background:transparent;cursor:pointer}
.account-avatar{display:inline-grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;color:#eef2ff;background-color:#4f46e5;background-position:center;background-size:cover;font-size:11px;font-weight:800}
.account-menu{position:absolute;z-index:9300;top:calc(100% + 8px);right:0;width:190px;padding:6px;border:1px solid var(--border);border-radius:11px;background:var(--surface);box-shadow:var(--cd-shadow-md)}
.account-menu[hidden]{display:none!important}.account-menu button{display:block;width:100%;padding:9px 10px;border:0;border-radius:7px;color:var(--text);background:transparent;text-align:left;cursor:pointer}.account-menu button:hover{background:var(--surface2)}.account-menu hr{margin:5px;border:0;border-top:1px solid var(--border)}.account-menu .account-menu-logout{color:var(--cd-danger)}
.account-overlay{display:none!important}.account-overlay.open{display:flex!important}.account-modal{width:min(620px,calc(100vw - 28px))!important}.account-modal-sub,.account-section>p,.account-avatar-actions>span{color:var(--text-muted);font-size:12px}.account-modal-body{display:grid;gap:14px}.account-section{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}.account-section h4{margin:0 0 12px;color:var(--text)}
.account-identity{display:flex;align-items:center;gap:14px}.account-avatar-large{width:72px;height:72px;flex-basis:72px;font-size:22px}.account-avatar-actions{display:grid;gap:7px}.account-avatar-actions>div{display:flex;gap:7px;flex-wrap:wrap}.account-details{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:15px 0 0}.account-details>div{padding:10px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.account-details dt{color:var(--text-muted);font-size:10px;font-weight:700;text-transform:uppercase}.account-details dd{margin:4px 0 0;color:var(--text);font-weight:700}
.account-theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.account-theme-options button{display:grid;gap:5px;place-items:center;padding:13px 8px;border:1px solid var(--border);border-radius:10px;color:var(--text);background:var(--surface);cursor:pointer}.account-theme-options button:hover{border-color:var(--border-mid);background:var(--surface2)}.account-theme-options button.is-active{border-color:var(--cd-primary);background:var(--cd-primary-soft);box-shadow:inset 0 0 0 1px var(--cd-primary)}
@media(max-width:600px){.account-menu-trigger .topbar-user-name{display:none}.account-details{grid-template-columns:1fr}.account-theme-options{grid-template-columns:1fr}.account-modal{max-height:92vh}.account-modal-body{overflow:auto}.dash-gf-category-rank{grid-template-columns:24px minmax(0,1fr) auto}.dash-gf-category-track{grid-column:2/-1}}

/* Mantém os três nomes do seletor de tema legíveis, inclusive em 390 px. */
.theme-switcher select{width:116px!important}
@media(max-width:768px){.theme-switcher select{width:104px!important;color:var(--text)!important;padding:6px 20px 6px 27px!important}.theme-switcher::before{left:9px!important}}

/* Novo recebível: contraste nativo do seletor de forma de pagamento. */
#recebivelFormaPagamentoId{color:#f8fafc!important;background-color:#0b111a!important;color-scheme:dark}
#recebivelFormaPagamentoId option{color:#111827!important;background-color:#fff!important;color-scheme:light}
#recebivelFormaPagamentoId option:checked{color:#fff!important;background-color:#334155!important}
#recebivelFormaPagamentoId option:hover{color:#fff!important;background-color:#475569!important}
#recebivelFormaPagamentoId option:disabled{color:#64748b!important;background-color:#f1f5f9!important}

/* Controles que permanecem propositalmente escuros em qualquer tema. */
#recebivelFormaPagamentoId,.ajuste-saldo-field,
#ncSheet .nc-sheet-body input:not([type="checkbox"]):not([type="radio"]),
#ncSheet .nc-sheet-body select{
  color:var(--input-dark-text)!important;
  background:var(--input-dark-bg)!important;
  border-color:var(--input-dark-border)!important;
  color-scheme:dark;
  -webkit-text-fill-color:var(--input-dark-text)!important
}
#recebivelFormaPagamentoId::placeholder,.ajuste-saldo-field::placeholder,
#ncSheet .nc-sheet-body input::placeholder{
  color:var(--input-dark-muted)!important;
  opacity:1!important;
  -webkit-text-fill-color:var(--input-dark-muted)!important
}
