  html,body,#root{margin:0;padding:0;min-height:100%;background:#F6F5FB;}
  #cf-boot{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;font-family:'Google Sans Flex','Google Sans',system-ui,sans-serif;color:#9A7F12;background:#F6F5FB;z-index:9999;}
  #cf-boot .ring{width:42px;height:42px;border:4px solid #EFE8C9;border-top-color:#D9C466;border-radius:50%;animation:cfspin .8s linear infinite;}
  @keyframes cfspin{to{transform:rotate(360deg)}}
  /* Edição inline estilo Notion/Excel na tabela de Atividades */
  .atv-edit{border:1px solid transparent;border-radius:7px;padding:4px 6px;background:transparent;font:inherit;color:inherit;cursor:pointer;max-width:180px;outline:none;transition:border-color .12s,background .12s;}
  .atv-edit:hover{border-color:var(--line,#E5E7EB);background:var(--surf2,#F6F6FA);}
  .atv-edit:focus{border-color:#CA9E35;background:var(--surf,#fff);box-shadow:0 0 0 3px rgba(202,158,53,0.14);}
  .pf-admin.dark .atv-edit:hover{border-color:#2C2C33;background:#202026;}
  /* Módulo contábil: usa a fonte padrão do site (Inter), igual ao resto do dashboard */
  .contab-skin{font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;}
  .contab-skin h1,.contab-skin h2,.contab-skin h3{font-family:inherit;letter-spacing:-0.01em;}
  .contab-skin table{font-variant-numeric:tabular-nums;}
  /* Rolagem minimalista (fina, discreta, aparece no hover) */
  *{scrollbar-width:thin;scrollbar-color:rgba(148,163,184,0.4) transparent;}
  *::-webkit-scrollbar{width:9px;height:9px;}
  *::-webkit-scrollbar-track{background:transparent;}
  *::-webkit-scrollbar-thumb{background:rgba(148,163,184,0.32);border-radius:99px;border:2px solid transparent;background-clip:content-box;}
  *::-webkit-scrollbar-thumb:hover{background:rgba(148,163,184,0.6);background-clip:content-box;}
  .pf-admin.dark *{scrollbar-color:rgba(148,163,184,0.35) transparent;}
  .pf-admin.dark *::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.14);background-clip:content-box;}
  .pf-admin.dark *::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.28);background-clip:content-box;}
  /* Cards do admin: mais espaçamento e transição suave (visual profissional) */
  .pf-panel{border-radius:16px;transition:box-shadow .16s,transform .16s,border-color .16s;}
  button.pf-panel:hover{border-color:rgba(202,158,53,0.45);box-shadow:0 8px 24px rgba(16,24,40,0.08);transform:translateY(-2px);}
  .pf-spin{animation:cfspin .9s linear infinite;}
  /* Kanban de Negócios — cores próprias (fora do override global do dark) */
  .neg-head{background:#FFFFFF;}
  .neg-body{background:#F6F6FA;}
  .neg-card{background:#FFFFFF;transition:border-color .14s,box-shadow .14s,transform .14s;}
  .neg-card:hover{border-color:rgba(202,158,53,0.5) !important;box-shadow:0 6px 18px rgba(16,24,40,0.10) !important;transform:translateY(-1px);}
  .pf-admin.dark .neg-head{background:#1A1A1F;}
  .pf-admin.dark .neg-body{background:#141418;}
  .pf-admin.dark .neg-card{background:#1E1E24;}
  /* Login split branco (marca VCA + rede de partículas) */
  .vca-login{display:flex;min-height:100vh;width:100%;background:#fff;}
  .vca-login-left{flex:1.05;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(120% 100% at 30% 22%, rgba(202,158,53,0.07), #ffffff 55%);border-right:1px solid #F1EFEA;cursor:crosshair;}
  .vca-login-right{flex:1;display:flex;align-items:center;justify-content:center;padding:34px 28px;background:#fff;}
  .vca-login-card{width:100%;max-width:392px;}
  .vca-in{width:100%;padding:13px 14px;border:1px solid #E3E6EC;border-radius:11px;font-size:14px;background:#F7F8FA;color:#0F172A;outline:none;transition:border-color .15s,box-shadow .15s,background .15s;box-sizing:border-box;}
  .vca-in::placeholder{color:#9AA1AC;}
  .vca-in:focus{border-color:#CA9E35;box-shadow:0 0 0 3px rgba(202,158,53,0.16);background:#fff;}
  .vca-logo-top{display:none !important;}
  @media (max-width:820px){.vca-login-left{display:none;}.vca-logo-top{display:flex !important;}}

/* ===== Finanças do admin (port do MaestriaOS) — tudo escopado em .mos-fin ===== */
.mos-fin{
  /* CLARO por padrão (segue o tema do painel) */
  --bg:#F6F7F9; --surface:#FFFFFF; --surface2:#F1F3F6; --surface3:#E9EDF1;
  --solid:#FFFFFF; --drawer:#FFFFFF;
  --border:#E5E8EC; --border2:#D6DAE0;
  --text:#0F172A; --dim:#5A6472; --faint:#94A3B8;
  --good:#16A34A; --bad:#DC2626;
  --seg-on:#FFFFFF; --seg-shadow:0 1px 2px rgba(15,23,42,.12);
  --hl:rgba(15,23,42,.04);
  color:var(--text);
  color-scheme:light;
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; text-rendering:optimizeLegibility;
}
/* ESCURO só quando o painel está no modo escuro (admin .pf-admin.dark) */
.pf-admin.dark .mos-fin{
  --bg:#0F1013; --surface:#26272B; --surface2:#1D1E21; --surface3:#2A2B30;
  --solid:#17181B; --drawer:#17181B;
  --border:#2A2B30; --border2:#35363B;
  --text:#F4F5F7; --dim:#B9BCC4; --faint:#8A8F98;
  --good:#34D399; --bad:#F87171;
  --seg-on:#37383E; --seg-shadow:0 1px 2px rgba(0,0,0,.4);
  --hl:rgba(255,255,255,.06);
  color-scheme:dark;
}
.mos-fin .surface{ background:var(--surface); }
.mos-fin .surface2{ background:var(--surface2); }
.mos-fin .surface3{ background:var(--surface3); }
.mos-fin .bd{ border:1px solid var(--border); }
/* cards com o degradê que o admin usa (#232427 -> #1D1E21) */
.mos-fin .surface2.bd{
  background:linear-gradient(180deg,#FFFFFF,#F4F6F9);
  box-shadow:0 1px 2px rgba(15,23,42,.06), 0 10px 26px -18px rgba(15,23,42,.20), inset 0 1px 0 rgba(255,255,255,.7);
}
.pf-admin.dark .mos-fin .surface2.bd{
  background:linear-gradient(180deg,#232427,#1D1E21);
  box-shadow:0 1px 2px rgba(0,0,0,.3), 0 12px 30px -18px rgba(0,0,0,.62), inset 0 1px 0 var(--hl);
}
.mos-fin .t-dim{ color:var(--dim); }
.mos-fin .t-faint{ color:var(--faint); }
.mos-fin [data-seg]{ background:transparent; box-shadow:none; transition:none !important; border:none; cursor:pointer; font-family:inherit; }
.mos-fin [data-seg='off']{ color:var(--dim); }
.mos-fin [data-seg='on']{ background:var(--seg-on); color:var(--text); box-shadow:var(--seg-shadow); }
.mos-fin .inp{ width:100%; border-radius:.7rem; background:color-mix(in srgb,var(--surface2) 78%,transparent);
  border:1px solid var(--border); padding:.64rem .8rem; font-size:.875rem; color:var(--text); outline:none;
  transition:border-color .2s, box-shadow .2s; font-family:inherit; }
.mos-fin .inp:focus{ border-color:color-mix(in srgb,var(--text) 60%,transparent); box-shadow:0 0 0 3px color-mix(in srgb,var(--text) 12%,transparent); }
.mos-fin .inp::placeholder{ color:var(--faint); }
.mos-fin select.inp{ appearance:none; }
.mos-fin select option{ background-color:var(--solid); color:var(--text); }
.mos-fin .btn{ border-radius:.7rem; padding:.56rem 1.05rem; font-size:.875rem; letter-spacing:.01em; cursor:pointer;
  transition:transform .2s cubic-bezier(.2,.7,.2,1), filter .2s, background .2s, border-color .2s, box-shadow .2s;
  border:1px solid transparent; display:inline-flex; align-items:center; justify-content:center; gap:.45rem; font-weight:500; font-family:inherit; }
.mos-fin .btn:active{ transform:scale(.97); }
.mos-fin .btn-primary{ background:var(--text); color:var(--bg); font-weight:600; border-radius:999px;
  border-color:transparent; box-shadow:0 6px 18px -8px rgba(0,0,0,.35); position:relative; overflow:hidden; }
.mos-fin .btn-primary:hover{ filter:brightness(1.06); transform:translateY(-1px); }
.mos-fin .btn-ghost{ border-color:var(--border); color:var(--dim); background:color-mix(in srgb,var(--surface2) 72%,transparent); }
.mos-fin .btn-ghost:hover{ color:var(--text); border-color:var(--border2); }
.mos-fin ::-webkit-scrollbar{ width:10px; height:10px; }
.mos-fin ::-webkit-scrollbar-thumb{ background:var(--border2); border-radius:99px; border:3px solid transparent; background-clip:padding-box; }
.mos-fin table{ border-collapse:collapse; }
.mos-fin input[type='date']::-webkit-calendar-picker-indicator{ filter:invert(.7); cursor:pointer; }
/* mini-reset local (o preflight do Tailwind está desligado para não afetar o app);
   :where() zera a especificidade para as classes utilitárias continuarem ganhando */
.mos-fin, .mos-fin *, .mos-fin *::before, .mos-fin *::after{ box-sizing:border-box; }
.mos-fin :where(button){ background:none; border:none; padding:0; margin:0; font:inherit; color:inherit; cursor:pointer; text-align:inherit; }
.mos-fin :where(h1,h2,h3,h4,p,figure){ margin:0; }
.mos-fin :where(th){ font-weight:500; text-align:inherit; }
.mos-fin :where(td,th){ padding:0; }
.mos-fin :where(input,select,textarea){ font:inherit; color:inherit; }
.mos-fin :where(svg){ vertical-align:middle; }
.mos-fin :where(table){ width:100%; }
.mos-fin .btn-page{ font-weight:700; color:#fff; position:relative; overflow:hidden; }
.mos-fin .btn-page:hover{ filter:brightness(1.1); transform:translateY(-1px); }

/* ===== Painel tributário (portal do cliente / detalhe) — grande e responsivo ===== */
.rt-kpis{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:16px; }
.rt-charts{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
@media (max-width:1000px){ .rt-charts{ grid-template-columns:1fr; } }
@media (max-width:780px){ .rt-kpis{ grid-template-columns:1fr 1fr; } }
@media (max-width:430px){ .rt-kpis{ grid-template-columns:1fr; } }
