/* FIX132 — sistema visual unificado. Aplicado por último para encerrar a cascata histórica. */
:root {
  --brand-950:#081b34; --brand-900:#0b2443; --brand-800:#12345a; --brand-700:#194b79;
  --brand-600:#23669f; --brand-500:#347fb9; --brand-100:#dceafa; --brand-50:#f1f6fc;
  --surface-0:#eaf0f7; --surface-1:#ffffff; --surface-2:#f5f8fc; --surface-3:#e5edf6;
  --text-1:#14263b; --text-2:#40566e; --text-3:#5f7185;
  --stroke:#cbd7e4; --stroke-strong:#aebfd1;
  --accent:#1c5f9e; --accent-hover:#164c80; --accent-soft:#dceafa;
  --signal:#1c5f9e; --signal-soft:#dceafa;
  --success:#176a48; --warning:#835700; --danger:#a52c35;
  --shadow-soft:0 4px 16px rgba(8,27,52,.08); --shadow-card:0 12px 32px rgba(8,27,52,.14);
  --radius-sm:8px; --radius-md:12px; --radius-lg:16px;
  --bg:var(--surface-0); --panel:var(--surface-1); --ink:var(--text-1); --muted:var(--text-2);
  --line:var(--stroke); --nav:var(--brand-950); --nav2:var(--brand-800); --soft:var(--accent-soft);
  --shadow:var(--shadow-soft);
}
html[data-theme="azul"] { color-scheme:light; }
html[data-theme="escuro"] {
  color-scheme:dark;
  --brand-950:#0a111a; --brand-900:#101a26; --brand-800:#192839; --brand-700:#243a50;
  --brand-600:#31516e; --brand-500:#47759a; --brand-100:#1d3042; --brand-50:#152231;
  --surface-0:#0d141d; --surface-1:#17212c; --surface-2:#1d2a37; --surface-3:#253545;
  --text-1:#f0f5fa; --text-2:#cfdae5; --text-3:#aab9c8;
  --stroke:#35485b; --stroke-strong:#50677d;
  --accent:#69b6f2; --accent-hover:#8cc9f8; --accent-soft:#203d56;
  --signal:#69b6f2; --signal-soft:#203d56;
  --success:#6ed6a5; --warning:#f0c46b; --danger:#ff9298;
  --shadow-soft:0 4px 18px rgba(0,0,0,.24); --shadow-card:0 14px 38px rgba(0,0,0,.32);
  --bg:var(--surface-0); --panel:var(--surface-1); --ink:var(--text-1); --muted:var(--text-2);
  --line:var(--stroke); --nav:var(--brand-950); --nav2:var(--brand-800); --soft:var(--accent-soft);
  --shadow:var(--shadow-soft);
}
html, body { background:var(--surface-0)!important; color:var(--text-1)!important; color-scheme:inherit; }
body { min-width:320px; }
.app-shell, .main, .content, .refined-shell-9366, .refined-main-9366, .refined-content-9366 {
  background:var(--surface-0)!important; color:var(--text-1)!important;
}
.sidebar, .refined-sidebar-9366 {
  background:linear-gradient(180deg,var(--brand-950),var(--brand-900))!important;
  color:#f5f8fc!important; border-color:var(--stroke)!important;
}
.sidebar :is(a,.nav-section,.brand-copy,.sidebar-foot,.sidebar-foot small,.municipal-motto,.historical-seal-row) { color:#e4edf6!important; }
.sidebar nav a.active,.sidebar nav a:hover { background:var(--brand-700)!important;color:#fff!important; }
.sidebar nav a em { background:var(--brand-800)!important;color:#f5f8fc!important; }
.topbar, .refined-topbar-9366 {
  position:relative!important; display:flex!important; flex-wrap:wrap!important; align-items:center!important;
  gap:12px!important; height:auto!important; min-height:74px!important; max-height:none!important;
  padding:12px 20px!important; overflow:visible!important; box-sizing:border-box!important;
  background:var(--surface-1)!important; color:var(--text-1)!important; border-bottom:1px solid var(--stroke)!important;
  box-shadow:var(--shadow-soft)!important; backdrop-filter:none!important;
}
.topbar-heading { flex:1 1 230px!important; min-width:180px!important; max-width:100%!important; }
.topbar-heading :is(h1,p) { color:var(--text-1)!important; overflow-wrap:anywhere; }
.topbar-heading p { color:var(--text-2)!important; }
.top-actions, .refined-top-actions-9366 {
  flex:1 1 500px!important; min-width:0!important; width:auto!important; max-width:100%!important;
  display:flex!important; flex-wrap:wrap!important; align-items:center!important; justify-content:flex-end!important;
  gap:8px!important; overflow:visible!important; padding:0!important;
}
.top-actions>* { min-width:0; max-width:100%; }
.content :is(.panel,.card,[class*="card"],[class*="panel"],.work-hero,.work-card,.work-panel,.cv-card,.party,.clause,.modal-card,.dialog-box,.form-section,.section-card,.metric-card-9366,.process-panel-9366,.process-side-9366,.review-card,.empty-state,.work-dialog) {
  background:var(--surface-1)!important; color:var(--text-1)!important; border-color:var(--stroke)!important;
  box-shadow:var(--shadow-soft);
}
.content :is(.panel,.card,[class*="card"],[class*="panel"],.work-hero,.work-card,.work-panel,.cv-card,.party,.clause,.modal-card,.dialog-box,.form-section,.section-card,.metric-card-9366,.process-panel-9366,.process-side-9366,.review-card,.empty-state,.work-dialog) :is(h1,h2,h3,h4,h5,legend,strong,b,label,dt,summary) {
  color:var(--text-1)!important;
}
.content :is(.panel,.card,[class*="card"],[class*="panel"],.work-hero,.work-card,.work-panel,.cv-card,.party,.clause,.modal-card,.dialog-box,.form-section,.section-card,.metric-card-9366,.process-panel-9366,.process-side-9366,.review-card,.empty-state,.work-dialog) :is(p,small,.hint,.muted,.muted-text,.help,.description,.subtitle,dd) {
  color:var(--text-2)!important;
}
.content :is(input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),select,textarea),
.work-dialog :is(input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),select,textarea),
#themeDropdown9366 button {
  background:var(--surface-2)!important; color:var(--text-1)!important; border:1px solid var(--stroke-strong)!important;
}
.content :is(input,select,textarea)::placeholder { color:var(--text-3)!important; opacity:1; }
.content select option { background:var(--surface-1)!important;color:var(--text-1)!important; }
.content :is(input[type="checkbox"],input[type="radio"],input[type="range"]) { accent-color:var(--accent)!important; }
.content button:not(.primary):not(.danger):not(.whatsapp),
.content a.btn:not(.primary):not(.danger):not(.whatsapp),
.work-dialog button:not(.primary):not(.danger):not(.whatsapp) {
  background:var(--surface-2)!important; color:var(--text-1)!important; border-color:var(--stroke-strong)!important;
}
.content button:hover, .content a.btn:hover, .work-dialog button:hover { filter:brightness(1.04); }
.content .btn.primary, .content button.primary, .work-dialog .btn.primary {
  background:var(--accent)!important; color:#fff!important; border-color:var(--accent)!important;
}
.content .btn.ghost, .content .btn.secondary, .work-dialog .btn.ghost, .work-dialog .btn.secondary {
  background:var(--surface-2)!important;color:var(--text-1)!important;border-color:var(--stroke-strong)!important;
}
.content :is(.btn.danger,.danger,.issue-error,.error,.status-error) { color:var(--danger)!important; }
.content :is(.success,.ok,.good,.status-ok,.backup-status-ok) { color:var(--success)!important; }
.content :is(.warning,.warn,.status-warning) { color:var(--warning)!important; }
.content :is(.hint,.muted,.muted-text,.help,.description,small) { color:var(--text-2)!important; }
.content :is(a:not(.btn),.link) { color:var(--accent)!important; }
.content :is(table,thead,tbody,tfoot,tr,th,td) { color:var(--text-1)!important;border-color:var(--stroke)!important; }
.content table { background:var(--surface-1)!important; }
.content :is(th,thead th) { background:var(--surface-3)!important;color:var(--text-1)!important; }
.content tbody tr:nth-child(even) { background:color-mix(in srgb,var(--surface-2) 72%,var(--surface-1))!important; }
.content :is(.tabs,.contract-tabs,.editor-kind-tabs,.editor-kind-tabs-primary,.memorial-view-tabs,.work-tabs) {
  display:flex!important;flex-wrap:wrap!important;gap:6px!important;align-items:center!important;
  background:var(--surface-1)!important;color:var(--text-1)!important;border-color:var(--stroke)!important;
}
.content :is(.contract-tabs,.memorial-view-tabs) button,
.content .editor-kind-tabs-primary a {
  min-height:40px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  padding:9px 14px!important;border:1px solid var(--stroke)!important;border-radius:8px!important;
  background:var(--surface-2)!important;color:var(--text-1)!important;text-decoration:none!important;
  font-size:13px!important;font-weight:700!important;line-height:1.25!important;white-space:normal!important;
}
.content :is(.contract-tabs,.memorial-view-tabs) button.active,
.content .editor-kind-tabs-primary a.active {
  background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important;
}
#themeDropdown9366 { position:relative!important;z-index:2147483000!important;isolation:isolate; }
#themeCurrent9366 { position:relative!important;z-index:2!important;background:var(--surface-2)!important;color:var(--text-1)!important;border-color:var(--stroke-strong)!important; }
.theme-menu-9366 { position:absolute!important;right:0!important;top:calc(100% + 7px)!important;z-index:2147483001!important;width:min(240px,90vw)!important;background:var(--surface-1)!important;color:var(--text-1)!important;border-color:var(--stroke)!important;box-shadow:var(--shadow-card)!important; }
.theme-menu-9366 button { display:grid!important;grid-template-columns:16px minmax(0,1fr) 16px!important;gap:9px!important;min-height:44px!important;text-align:left!important; }
.theme-menu-9366 button :is(b,small,span) { color:var(--text-1)!important; }
.theme-menu-9366 button small { color:var(--text-2)!important; }
.theme-dot.azul { background:#1c5f9e!important; }.theme-dot.escuro { background:#17212c!important;border:1px solid #71869a!important; }
[role="dialog"],dialog,.work-dialog,.modal-card { background:var(--surface-1)!important;color:var(--text-1)!important;border-color:var(--stroke)!important; }
dialog::backdrop { background:rgba(4,12,22,.62)!important; }
.content :is(.pill,.badge,.status,.tag,.chip) { background:var(--surface-3)!important;color:var(--text-1)!important;border:1px solid var(--stroke)!important; }
.content :is(.btn,.button,button,a.btn) { max-width:100%; overflow-wrap:anywhere; }
.content :is(.contract-tabs,.editor-kind-tabs-primary) { max-width:100%; overflow:visible!important; }
.content .cv-grid { grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr)!important;align-items:start!important; }
.content .cv-row { grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:end!important; }
.content .cv-row.three { grid-template-columns:repeat(3,minmax(0,1fr))!important; }
.content .cv-field,.content .cv-field>* { min-width:0!important;max-width:100%!important;box-sizing:border-box!important; }
.content .cv-field input,.content .cv-field select,.content .cv-field textarea { width:100%!important;box-sizing:border-box!important; }
.content .contract-tabs { margin-bottom:14px!important; }
.content .contract-tabs button { min-width:94px!important; }
.content .preview-frame { background:#fff!important;color:#14263b!important; }
.content :is(canvas,.cad-canvas,#ccCanvas,.drawing-canvas,.map-canvas) { color:initial!important; }
/* Editor CAD independente: apenas sua interface acompanha o tema; a folha CAD fica branca. */
html[data-theme="azul"] #ccEditor9298 {
  --cc-top:#081b34;--cc-top2:#12345a;--cc-panel:#fff;--cc-bg:#eaf0f7;--cc-line:#cbd7e4;
  --cc-text:#14263b;--cc-muted:#40566e;--cc-accent:#1c5f9e;--cc-accent-ink:#fff;
}
html[data-theme="escuro"] #ccEditor9298 {
  --cc-top:#0a111a;--cc-top2:#192839;--cc-panel:#17212c;--cc-bg:#0d141d;--cc-line:#35485b;
  --cc-text:#f0f5fa;--cc-muted:#cfdae5;--cc-accent:#69b6f2;--cc-accent-ink:#081b2a;
}
html[data-theme] body:has(#ccEditor9298) { background:var(--cc-bg)!important;color:var(--cc-text)!important; }
#ccEditor9298 .top { background:linear-gradient(90deg,var(--cc-top),var(--cc-top2))!important;color:#f5f8fc!important;border-color:var(--cc-line)!important; }
#ccEditor9298 .top :is(.brand,.crumb,strong,span,#saveState) { color:#f5f8fc!important; }
#ccEditor9298 :is(.toolbar,.side,.commandbar,.modal-card,.shortcut-menu,.shortcut-grid section,.panel-section) {
  background:var(--cc-panel)!important;color:var(--cc-text)!important;border-color:var(--cc-line)!important;
}
#ccEditor9298 :is(.side-head,.panel-section h3,.modal-head,.schedules-tabs,.schedules-content th) {
  background:var(--surface-3)!important;color:var(--cc-text)!important;border-color:var(--cc-line)!important;
}
#ccEditor9298 :is(.side-head strong,.panel-section h3,.panel-body,.panel-body b,.form label,.unit-row,.hint,.shortcuts) { color:var(--cc-text)!important; }
#ccEditor9298 :is(.hint,.shortcuts,.form small) { color:var(--cc-muted)!important; }
#ccEditor9298 :is(.tool,.btn,.cc-theme-switcher-9365 button,.commandbar input,.form input,.form select,.form textarea,.unit-row select,.schedules-tabs button) {
  background:var(--surface-2)!important;color:var(--cc-text)!important;border:1px solid var(--cc-line)!important;
}
#ccEditor9298 :is(.tool.active,.btn.primary,.schedules-tabs button.active,.cc-theme-switcher-9365 button.active) {
  background:var(--accent)!important;color:var(--cc-accent-ink)!important;border-color:var(--accent)!important;
}
#ccEditor9298 .tool.toggle.on { background:var(--accent-soft)!important;color:var(--accent)!important;border-color:var(--accent)!important; }
#ccEditor9298 .status { background:var(--brand-950)!important;color:#f0f5fa!important; }
#ccEditor9298 :is(.modal-card,.component-card,.selected-card,.opening-end-body,.schedules-content,.component-search) {
  color:var(--cc-text)!important;border-color:var(--cc-line)!important;
}
#ccEditor9298 :is(.canvas-shell,.sheet,#ccCanvas,.paper,.paper-stage) { color:#14263b!important;background:#f7f9fb!important; }
#ccEditor9298 input::placeholder,#ccEditor9298 textarea::placeholder { color:var(--cc-muted)!important;opacity:1; }
#ccEditor9298 .cc-theme-switcher-9365 { background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.28)!important; }
@media(max-width:1100px) {
  .topbar,.refined-topbar-9366 { display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important; }
  .topbar-heading { grid-column:1/-1!important; }
  .top-actions,.refined-top-actions-9366 { grid-column:1/-1!important;justify-content:flex-start!important; }
  .content .cv-grid { grid-template-columns:minmax(0,1fr)!important; }
}
@media(max-width:760px) {
  .topbar,.refined-topbar-9366 { grid-template-columns:minmax(0,1fr) auto!important;padding:12px 12px 12px 58px!important; }
  .topbar-heading { grid-column:1!important;min-width:0!important; }
  .top-actions,.refined-top-actions-9366 { grid-column:1/-1!important;justify-content:flex-start!important; }
  .content .cv-row,.content .cv-row.three { grid-template-columns:minmax(0,1fr)!important; }
  .content :is(.contract-tabs,.editor-kind-tabs-primary) { align-items:stretch!important; }
  .content .editor-kind-tabs-primary a { flex:1 1 145px!important; }
  #ccEditor9298 .cc-theme-switcher-9365 button span { display:inline!important; }
  #ccEditor9298 .cc-theme-switcher-9365 button { min-height:34px!important; }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important; }
}


/* FIX132 — correções visuais verificadas na tela de trabalho (tema Escuro). */
.content .upload-zone {
  background:var(--surface-2)!important;color:var(--text-1)!important;
  border-color:var(--stroke-strong)!important;
}
.content .upload-zone :is(strong,.upload-icon) { color:var(--text-1)!important; }
.content .upload-zone small { color:var(--text-2)!important;opacity:1!important; }
.content .upload-zone input[type="file"] {
  min-width:0!important;max-width:100%!important;background:var(--surface-1)!important;
  color:var(--text-1)!important;border:1px solid var(--stroke-strong)!important;
  border-radius:8px!important;padding:6px!important;
}
.content .upload-zone input[type="file"]::file-selector-button {
  background:var(--accent)!important;color:#fff!important;border:0!important;
  border-radius:6px!important;padding:7px 10px!important;margin-right:8px!important;
}
.content .check-list>div { color:var(--text-1)!important; }
.content .check-list strong { color:var(--text-1)!important;font-size:12px!important;line-height:1.3!important; }
.content .check-list small { color:var(--text-2)!important;font-size:11px!important;line-height:1.35!important;opacity:1!important; }
.content .check-list .ok>b { background:color-mix(in srgb,var(--success) 18%,var(--surface-1))!important;color:var(--success)!important; }
.content .check-list .missing>b { background:color-mix(in srgb,var(--warning) 18%,var(--surface-1))!important;color:var(--warning)!important; }
/* O botão fixo de navegação não pode cobrir o título do trabalho. */
.topbar-heading { padding-left:48px!important; }
@media(max-width:760px) { .topbar-heading { padding-left:0!important; } }

/* FIX134 R3 — mantém a busca global legível e separada dos controles vizinhos. */
.refined-top-actions-9366 > .refined-global-search-9366,
.top-actions > .refined-global-search-9366 {
  flex:0 0 250px!important;
  width:250px!important;
  min-width:250px!important;
  max-width:250px!important;
  margin-right:4px!important;
}


/* FIX134 R5 — OSNAP/ORTO no Editor Pro acompanham Azul-marinho e Escuro. */
html[data-theme] .trairi-editor-pro-9283 .cad-toggle-group,
body[data-theme] .trairi-editor-pro-9283 .cad-toggle-group {
  background:var(--surface-1)!important;
  color:var(--text-1)!important;
  border-color:var(--stroke)!important;
  box-shadow:none!important;
}
html[data-theme] .trairi-editor-pro-9283 .cad-toggle,
body[data-theme] .trairi-editor-pro-9283 .cad-toggle {
  background:var(--surface-2)!important;
  color:var(--text-1)!important;
  border-color:var(--stroke-strong)!important;
}
html[data-theme] .trairi-editor-pro-9283 .cad-toggle:has(input:checked),
body[data-theme] .trairi-editor-pro-9283 .cad-toggle:has(input:checked) {
  background:var(--accent-soft)!important;
  color:var(--text-1)!important;
  border-color:var(--accent)!important;
}
html[data-theme] .trairi-editor-pro-9283 .cad-toggle span,
body[data-theme] .trairi-editor-pro-9283 .cad-toggle span {
  color:var(--text-1)!important;
  opacity:1!important;
}
html[data-theme] .trairi-editor-pro-9283 .cad-toggle input[type="checkbox"],
body[data-theme] .trairi-editor-pro-9283 .cad-toggle input[type="checkbox"] {
  accent-color:var(--accent)!important;
}
