/* Thrivon Bike v3.9 — Dark mode de verdade, não apenas inversão do fundo.
   Última folha do app: substitui cores claras hardcoded dos módulos antigos.
   Alterações limitadas a [data-theme=dark] para preservar o tema claro. */
:root[data-theme="dark"]{
  --t-canvas:#0a141f;--t-sidebar:#0e1b28;--t-paper:#122231;--t-paper-alt:#192c3d;
  --t-header:rgba(13,26,38,.97);--t-input:#172c3b;
  --t-line:#2b4153;--t-line-strong:#40586b;
  --t-ink:#dbe8f1;--t-ink-strong:#f5f9fd;--t-muted:#a9bbc9;--t-faint:#859baa;
  --t-success-ink:#65e4b0;--t-warn-ink:#ffd398;
  --t-shadow:0 4px 20px rgba(0,0,0,.13);
  --t-shadow-lg:0 18px 55px rgba(0,0,0,.34);
  --t-menu-active:#164437;--t-menu-hover:#1a3542;
}
:root[data-theme="dark"] body,
:root[data-theme="dark"] .content,
:root[data-theme="dark"] .main{background:var(--t-canvas);color:var(--t-ink)}
/* Whole legacy cloud operations family */
:root[data-theme="dark"] #content .ops-page,
:root[data-theme="dark"] #content .ops-page .ops-fin,
:root[data-theme="dark"] #content :is(.fin-page,.inv-page,.booking-shell,.os-page){color:var(--t-ink);background:transparent}
:root[data-theme="dark"] #content .ops-page :is(.ops-header,.ops-section-title,.ops-fin-toolbar,.ops-fin-actions,.ops-calendar-legend){color:var(--t-ink)}
:root[data-theme="dark"] #content .ops-page :is(.ops-header h1,.ops-section-title h2,.ops-section-title h3,.ops-fin-actions h3,.ops-fin-panel h3,.ops-fin-empty b,.ops-form-head h2,.ops-page-head h1){color:var(--t-ink-strong)!important}
:root[data-theme="dark"] #content .ops-page :is(.ops-header p,.ops-section-title p,.ops-fin-actions p,.ops-fin-toolbar label,.ops-fin-search,.ops-fin-kicker,.ops-caption,.ops-filter,.ops-calendar-legend,.ops-page-head p){color:var(--t-muted)!important}
/* Financial cards and sections seen in user screenshots */
:root[data-theme="dark"] #content .ops-page :is(.ops-fin-metric,.ops-fin-panel,.ops-fin-pills>span,.ops-fin-team,.ops-fin-summary,.ops-fin-card,.ops-fin-payment-rem){background:var(--t-paper)!important;border-color:var(--t-line)!important;color:var(--t-ink)!important;box-shadow:var(--t-shadow)}
:root[data-theme="dark"] #content .ops-page .ops-fin-panel>header{background:var(--t-paper)!important;color:var(--t-ink);border-bottom-color:var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page .ops-fin-panel-content{background:var(--t-paper)!important;color:var(--t-ink)!important}
:root[data-theme="dark"] #content .ops-page :is(.ops-fin-metric strong,.ops-fin-metric b,.ops-fin-pills b,.ops-fin-recent-row b,.ops-fin-recent-row>strong,.ops-fin-team-row strong,.ops-fin-team-amount b,.ops-fin-roadmap b,.ops-fin-table td b,.ops-fin-empty b){color:var(--t-ink-strong)!important}
:root[data-theme="dark"] #content .ops-page :is(.ops-fin-metric span,.ops-fin-metric small,.ops-fin-panel p,.ops-fin-recent-row small,.ops-fin-team-row small,.ops-fin-roadmap small,.ops-fin-chart-month>span,.ops-fin-legend,.ops-fin-empty p){color:var(--t-muted)!important}
:root[data-theme="dark"] #content .ops-page .ops-fin-recent-row{border-bottom-color:var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page .ops-fin-chart{border-bottom-color:var(--t-line)!important;background:transparent}
:root[data-theme="dark"] #content .ops-page .ops-fin-chart-month>span{font-size:11px}
:root[data-theme="dark"] #content .ops-page .ops-fin-credit,
:root[data-theme="dark"] #content .ops-page .ops-fin-recent-row>strong.credit{color:var(--t-success-ink)!important}
:root[data-theme="dark"] #content .ops-page .ops-fin-debit,
:root[data-theme="dark"] #content .ops-page .ops-fin-recent-row>strong.debit{color:#ffb589!important}
:root[data-theme="dark"] #content .ops-page .ops-fin-team-row,
:root[data-theme="dark"] #content .ops-page .ops-fin-roadmap>div{border-bottom-color:var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page .ops-fin-roadmap span{background:var(--t-paper-alt)!important;color:var(--t-muted)!important}
:root[data-theme="dark"] #content .ops-page .ops-fin-note,
:root[data-theme="dark"] #content .ops-page .ops-fin-payment-rem{background:#183042!important;color:#b3d1e5!important;border:1px solid var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page :is(.ops-fin-note.warning,.ops-fin-migration){background:var(--t-warn-bg)!important;color:var(--t-warn-ink)!important;border-color:#675332!important}
:root[data-theme="dark"] #content .ops-page .ops-fin-actions .ops-button:not(:disabled){background:var(--t-action);border-color:var(--t-action);color:#06251c}
:root[data-theme="dark"] #content .ops-page .ops-fin-toolbar-right select,
:root[data-theme="dark"] #content .ops-page .ops-fin-search input{background:var(--t-input)!important;color:var(--t-ink-strong)!important;border-color:var(--t-line-strong)!important}
:root[data-theme="dark"] #content .ops-page .ops-fin .ops-tabs button{background:var(--t-paper)!important;color:var(--t-ink)!important;border-color:var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page .ops-fin .ops-tabs button.active{background:var(--t-menu-active)!important;color:var(--t-success-ink)!important}
/* Shared tables — consistent header, body, dividers, hovering */
:root[data-theme="dark"] #content .ops-page :is(.ops-table-wrap,.ops-table,.ops-fin-table,.ops-inventory-summary,.ops-inventory-summary .ops-table-wrap),
:root[data-theme="dark"] #content :is(.inv-table-wrap,.fin-table-wrap,.table-wrap){background:var(--t-paper)!important;color:var(--t-ink)!important;border-color:var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page .ops-table th{background:var(--t-paper-alt)!important;color:#afc7db!important;border-bottom:1px solid var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page .ops-table td{background:var(--t-paper)!important;color:var(--t-ink)!important;border-bottom:1px solid var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page .ops-table :is(td b,td strong){color:var(--t-ink-strong)!important}
:root[data-theme="dark"] #content .ops-page .ops-table td small{color:var(--t-muted)!important}
:root[data-theme="dark"] #content .ops-page .ops-table tbody tr:hover td{background:var(--t-paper-alt)!important}
/* Stock stats, operational overview, calendar, order pages */
:root[data-theme="dark"] #content .ops-page :is(.ops-stat,.ops-inventory-summary,.ops-calendar-box,.ops-week,.ops-month,.ops-day-outer,.ops-day-scroller,.ops-order-card,.ops-os-list-row,.ops-os-empty,.ops-kanban-lane,.ops-lane,.ops-settings-form,.ops-service-card,.ops-public-service,.ops-customer-intro,.ops-banner,.ops-page-card){background:var(--t-paper)!important;color:var(--t-ink)!important;border-color:var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page :is(.ops-stat strong,.ops-order-card strong,.ops-order-card h3,.ops-os-list-row h3,.ops-page-card h3,.ops-inventory-summary h3){color:var(--t-ink-strong)!important}
:root[data-theme="dark"] #content .ops-page :is(.ops-stat span,.ops-stat small,.ops-order-card small,.ops-os-list-row small,.ops-banner,.ops-customer-intro p){color:var(--t-muted)!important}
:root[data-theme="dark"] #content .ops-page :is(.ops-time-head,.ops-mech-head,.ops-time-axis){background:var(--t-paper-alt)!important;color:var(--t-ink)!important;border-color:var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page .ops-hourly-grid{background:var(--t-paper)!important}
:root[data-theme="dark"] #content .ops-page .ops-timed-lane{background:repeating-linear-gradient(to bottom,var(--t-paper) 0,var(--t-paper) 62px,var(--t-line) 62px,var(--t-line) 63px)!important;border-color:var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page :is(.ops-os-stage,.ops-fin-status){border-color:transparent}
:root[data-theme="dark"] #content .ops-page .ops-os-view{background:var(--t-paper-alt)!important;border-color:var(--t-line)}
:root[data-theme="dark"] #content .ops-page .ops-os-list-row :is(.ops-os-card-meta,.ops-os-card-end){border-color:var(--t-line)!important}
/* Buttons and form controls within operation containers */
:root[data-theme="dark"] #content .ops-page :is(button:not(.primary):not(.selected):not(.ops-apcard),.ops-button:not(.primary):not(.selected)){color:var(--t-ink);border-color:var(--t-line-strong)}
:root[data-theme="dark"] #content .ops-page :is(.ops-button:not(.primary),.ops-button:not(.selected)):hover{background:var(--t-paper-alt);color:var(--t-ink-strong)}
:root[data-theme="dark"] #content .ops-page :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:var(--t-input);color:var(--t-ink-strong);border-color:var(--t-line-strong)}
:root[data-theme="dark"] #content .ops-page :is(.ops-checklist label,.ops-service-choice,.ops-all-services,.ops-view-toggles,.ops-os-check-row){background:var(--t-paper-alt)!important;color:var(--t-ink);border-color:var(--t-line)!important}
:root[data-theme="dark"] #opsOverlay .ops-modal{background:var(--t-paper)!important;color:var(--t-ink)!important;border:1px solid var(--t-line)}
:root[data-theme="dark"] #opsOverlay .ops-modal>header,
:root[data-theme="dark"] #opsOverlay .ops-modal .ops-form-actions{background:var(--t-paper)!important;border-color:var(--t-line)!important}
:root[data-theme="dark"] #opsOverlay :is(.ops-field,.ops-os-editor,.ops-os-field,.ops-caption,.ops-details,.ops-os-section-head p,.ops-os-section h3){color:var(--t-ink)!important}
:root[data-theme="dark"] #opsOverlay :is(.ops-os-schedule,.ops-os-check-row,.ops-os-note,.ops-os-total,.ops-os-photo-box){background:var(--t-paper-alt)!important;color:var(--t-ink);border-color:var(--t-line)!important}
:root[data-theme="dark"] #opsOverlay :is(.ops-os-section-head h3,.ops-os-total strong,.ops-os-section h3){color:var(--t-ink-strong)!important}
:root[data-theme="dark"] #opsOverlay :is(input:not([type=checkbox]),select,textarea){background:var(--t-input)!important;color:var(--t-ink-strong)!important;border-color:var(--t-line-strong)!important}
/* Legacy offline finance/inventory views use separate class families */
:root[data-theme="dark"] #content :is(.fin-page,.inv-page) :is(.fin-panel,.inv-panel,.fin-card,.inv-card,.fin-stat,.inv-stat,.fin-table,.inv-table){background:var(--t-paper)!important;color:var(--t-ink)!important;border-color:var(--t-line)!important}
:root[data-theme="dark"] #content :is(.fin-page,.inv-page) :is(h2,h3,strong,b){color:var(--t-ink-strong)}
:root[data-theme="dark"] #content :is(.fin-page,.inv-page) :is(p,small,label){color:var(--t-muted)}
:root[data-theme="dark"] #content :is(.fin-page,.inv-page) :is(th){background:var(--t-paper-alt)!important;color:var(--t-muted)!important}
:root[data-theme="dark"] #content :is(.fin-page,.inv-page) :is(td){background:var(--t-paper)!important;color:var(--t-ink)!important;border-color:var(--t-line)!important}
:root[data-theme="dark"] #content :is(.fin-page,.inv-page) :is(input:not([type=checkbox]),select,textarea){background:var(--t-input)!important;color:var(--t-ink)!important;border-color:var(--t-line-strong)!important}
:root[data-theme="dark"] #content :is(.fin-page,.inv-page) :is(.fin-note,.inv-note){background:var(--t-paper-alt);border-color:var(--t-line);color:var(--t-muted)}
/* Panels, forms and empty states elsewhere */
:root[data-theme="dark"] #content :is(.panel,.profile-tile,.cloud-team-card,.cloud-banner,.future,.stat){background:var(--t-paper);color:var(--t-ink);border-color:var(--t-line)}
:root[data-theme="dark"] #content :is(.panel,.profile-tile,.cloud-team-card,.future,.stat) :is(h2,h3,strong){color:var(--t-ink-strong)}
:root[data-theme="dark"] #content :is(.panel,.profile-tile,.cloud-team-card,.future,.stat) :is(p,small){color:var(--t-muted)}
@media(prefers-reduced-motion:reduce){:root[data-theme="dark"] .ops-page *{transition:none!important}}
/* Ordem de Serviço: Kanban e barra de filtros (classes históricas próprias). */
:root[data-theme="dark"] #content .ops-page .ops-os-tools,
:root[data-theme="dark"] #content .ops-page .ops-os-lane,
:root[data-theme="dark"] #content .ops-page .ops-os-kanban-card{background:var(--t-paper)!important;border-color:var(--t-line)!important;color:var(--t-ink)!important}
:root[data-theme="dark"] #content .ops-page .ops-os-lane{background:var(--t-paper-alt)!important}
:root[data-theme="dark"] #content .ops-page .ops-os-lane>header{color:var(--t-ink-strong)!important}
:root[data-theme="dark"] #content .ops-page .ops-os-lane>header b{background:var(--t-paper)!important;color:var(--t-ink-strong)!important}
:root[data-theme="dark"] #content .ops-page .ops-os-lane-empty{color:var(--t-muted)!important}
:root[data-theme="dark"] #content .ops-page .ops-os-tools :is(label,label span){color:var(--t-muted)!important}
:root[data-theme="dark"] #content .ops-page .ops-os-kanban-card :is(h3,strong,.ops-os-number){color:var(--t-ink-strong)!important}
:root[data-theme="dark"] #content .ops-page .ops-os-kanban-card :is(p,small,.ops-os-card-meta){color:var(--t-muted)!important}
:root[data-theme="dark"] #content .ops-page .ops-os-kanban-card :is(.ops-os-card-meta,.ops-os-card-end){border-color:var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page .ops-os-open{color:var(--t-success-ink)!important;background:var(--t-menu-active)!important;border-color:var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page .ops-os-view .ops-button.active{background:var(--t-menu-active)!important;color:var(--t-success-ink)!important;border-color:var(--t-line)!important}
:root[data-theme="dark"] #content .ops-page .ops-os-stage{background:color-mix(in srgb,var(--stage-color) 25%,var(--t-paper))!important;color:var(--t-ink-strong)!important;border-color:color-mix(in srgb,var(--stage-color) 35%,var(--t-line))!important}
