@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
  :root{
    /* Paleta premium — vermelho reservado só p/ estados críticos (inadimplência, metas em risco, alertas, erros) */
    --bg:#0A0A0F; --surface:#171B23; --surface-2:#1D222C; --sidebar-bg:#0C1016;
    --green:#22C55E; --green-light:#34D399;
    --blue:#3B82F6; --blue-dark:#2563EB; --blue-light:#38BDF8;
    --amber:#F59E0B;
    --red:#EF4444; --red-dark:#F87171;
    --muted:#8A8F98; --muted-2:#6B7280; --text:#F5F6F7;
    --border-soft:rgba(255,255,255,.05); --border-soft-2:rgba(255,255,255,.08);
    /* nomes antigos mantidos como alias p/ compatibilidade com o restante do código */
    --page-bg:var(--bg); --surface-alt:var(--surface-2); --silver:var(--border-soft-2); --black:var(--sidebar-bg);
    --ice:var(--surface-2); --red-old:#DB3937;
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;height:100%;background:var(--bg);color:var(--text);}
  body{font-family:'Inter',system-ui,-apple-system,sans-serif;}
  button{transition:filter .15s ease,opacity .15s ease,transform .12s ease;font-family:inherit;}
  button:hover{filter:brightness(1.1);}
  button:active{transform:scale(0.98);}
  .btn-primary:hover,.btn-ghost:hover{transform:scale(1.02);}
  input,select,textarea{transition:border-color .15s ease;font-family:inherit;}
  input:focus,select:focus,textarea:focus{border-color:var(--blue)!important;outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.15);}
  a{color:inherit;}
  ::-webkit-scrollbar{width:10px;height:10px;}
  ::-webkit-scrollbar-thumb{background:var(--border-soft-2);border-radius:6px;}
  .ancore-card{animation:fadeIn .35s cubic-bezier(.16,1,.3,1) both;}
  @keyframes fadeIn{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}
  @keyframes growBar{from{width:0;}}
  .grid-2col{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
  .grid-3col{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
  .grid-metas-row{display:grid;grid-template-columns:2fr 2fr 1fr;gap:20px;}
  .grid-charts-2-1{display:grid;grid-template-columns:2fr 1fr;gap:20px;}
  .grid-daily-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;}
  @media (max-width:900px){ .grid-2col,.grid-3col,.grid-metas-row,.grid-charts-2-1,.grid-daily-3{grid-template-columns:1fr!important;} }
  table{border-collapse:collapse;width:100%;font-size:13px;min-width:720px;}
  th{background:var(--sidebar-bg);color:#fff;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;text-align:left;padding:12px 16px;white-space:nowrap;cursor:pointer;user-select:none;}
  td{padding:12px 16px;color:var(--text);border-bottom:1px solid var(--border-soft);}
  tr.rowclick{cursor:pointer;}
  tr:hover td{background:rgba(255,255,255,.02);}
  .icon-btn{background:none;border:none;cursor:pointer;color:var(--muted);padding:5px;margin-right:2px;transition:color .15s ease;}
  .icon-btn:hover{color:var(--text);}
  .icon-btn.del:hover{color:var(--red);}
  .btn-primary{background:var(--blue);color:#fff;border:none;border-radius:10px;padding:10px 18px;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;}
  .btn-ghost{background:var(--surface-2);color:var(--text);border:1px solid var(--border-soft-2);border-radius:10px;padding:10px 18px;font-size:13px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;text-decoration:none;}
  .btn-ghost.active{background:var(--blue);border-color:var(--blue);}
  .field-label{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:6px;}
  .input,select,textarea.input{border:1px solid var(--border-soft-2);border-radius:10px;padding:9px 12px;font-size:14px;color:var(--text);background:var(--surface-2);outline:none;width:100%;}
  textarea.input{resize:vertical;}
  .badge{font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;white-space:nowrap;display:inline-block;}
  .tone-green{background:rgba(34,197,94,.15);color:var(--green);}
  .tone-red{background:rgba(239,68,68,.15);color:var(--red-dark);}
  .tone-amber{background:rgba(245,158,11,.15);color:var(--amber);}
  .tone-blue{background:rgba(59,130,246,.15);color:var(--blue-light);}
  .tone-gray{background:rgba(255,255,255,.06);color:var(--muted);}
  .card{background:var(--surface);border-radius:16px;border:1px solid var(--border-soft);padding:24px;box-shadow:0 4px 16px rgba(0,0,0,.2);transition:transform .18s ease,box-shadow .18s ease;}
  .card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.28);}
  .kpi{background:var(--surface);border-radius:16px;padding:24px;flex:1;min-width:220px;min-height:132px;border:1px solid var(--border-soft);display:flex;flex-direction:column;gap:10px;box-shadow:0 4px 16px rgba(0,0,0,.2);position:relative;transition:transform .18s ease,box-shadow .18s ease;}
  .kpi:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.28);}
  .kpi .lbl{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:13px;font-weight:500;}
  .kpi .lbl .ic-corner{color:var(--muted-2);}
  .kpi .val{font-size:36px;font-weight:700;color:#fff;letter-spacing:-.02em;line-height:1.1;}
  .kpi .sub{font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;color:var(--muted);}
  .page-title{font-size:32px;font-weight:700;color:#fff;letter-spacing:-.02em;margin:0;}
  .bar-track{height:10px;background:var(--surface-2);border-radius:999px;overflow:hidden;}
  .bar-fill{height:100%;border-radius:999px;transition:width .8s cubic-bezier(.16,1,.3,1);}
  .bar-fill.green{background:linear-gradient(90deg,var(--green),var(--green-light));}
  .bar-fill.blue{background:linear-gradient(90deg,var(--blue-dark),var(--blue-light));}
  .alert-card{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:var(--surface-2);border-radius:12px;border:1px solid var(--border-soft);}
  .alert-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;margin-top:4px;}
  .modal-overlay{position:fixed;inset:0;background:rgba(5,6,10,.6);display:flex;align-items:flex-start;justify-content:center;padding:5vh 16px;z-index:60;overflow-y:auto;}
  .modal-box{background:var(--surface);border-radius:16px;width:100%;max-width:560px;box-shadow:0 20px 60px rgba(0,0,0,.5);overflow:hidden;border:1px solid var(--border-soft-2);}
  .modal-box.wide{max-width:860px;}
  .modal-head{background:var(--sidebar-bg);padding:18px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-soft);}
  .modal-body{padding:24px;max-height:80vh;overflow-y:auto;}
  .section-title{font-size:13.5px;font-weight:600;color:var(--muted);margin:0 0 18px;display:flex;justify-content:space-between;align-items:center;}
  .table-wrap{background:var(--surface);border-radius:16px;border:1px solid var(--border-soft);overflow:hidden;}
  .table-scroll{overflow-x:auto;}
  .pager{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;border-top:1px solid var(--border-soft);font-size:12.5px;color:var(--muted);}
  svg.ic{flex-shrink:0;}
  .nav-item{display:flex;align-items:center;gap:10px;background:transparent;color:#D7DCE5;border:none;border-left:3px solid transparent;border-radius:8px;cursor:pointer;white-space:nowrap;overflow:hidden;width:100%;transition:background .2s ease,color .2s ease,border-color .2s ease;}
  .nav-item .ic{color:#BFC8D6;transition:color .2s ease;}
  .nav-item:hover{background:rgba(255,255,255,.06);color:#F4F7FB;}
  .nav-item:hover .ic{color:#F4F7FB;}
  .nav-item.active{background:rgba(16,185,129,.14);color:#fff;border-left-color:#10B981;box-shadow:inset 0 0 24px rgba(16,185,129,.10);}
  .nav-item.active .ic{color:#10B981;}
  .sidebar-divider{height:1px;background:rgba(255,255,255,.08);margin:14px 16px 10px;}
  .nav-section-label{padding:12px 12px 5px;color:#6F7886;font-size:9.5px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap;overflow:hidden;}
  .nav-section-gap{height:4px;}

  /* ================================================================
     AURUM — PASSO 3: FUNDAÇÃO VISUAL
     Escopo: somente padronização de apresentação/comportamento visual.
     Nenhuma regra de negócio, banco, autenticação ou hierarquia alterada.
  ================================================================= */
  :root{
    --radius-sm:8px;
    --radius-md:10px;
    --radius-lg:14px;
    --space-1:6px;
    --space-2:10px;
    --space-3:14px;
    --space-4:18px;
    --space-5:22px;
    --control-h:38px;
  }

  /* Tipografia e densidade */
  .page-title{
    font-size:28px;
    line-height:1.15;
    font-weight:700;
    letter-spacing:-.025em;
  }
  .section-title{
    font-size:13px;
    line-height:1.35;
    font-weight:650;
    letter-spacing:.01em;
  }

  /* Cards informativos ficam estáticos; interação visual só quando existe ação */
  .card{
    border-radius:var(--radius-lg);
    padding:20px;
    box-shadow:none;
    transition:border-color .15s ease,background .15s ease;
  }
  .card:hover{
    transform:none;
    box-shadow:none;
  }

  .kpi{
    border-radius:var(--radius-lg);
    padding:18px 20px;
    min-height:112px;
    gap:7px;
    box-shadow:none;
    transition:border-color .15s ease,background .15s ease,transform .15s ease;
  }
  .kpi:hover{
    transform:none;
    box-shadow:none;
  }
  .kpi.is-clickable:hover{
    transform:translateY(-1px);
    border-color:rgba(59,130,246,.32);
    background:#1A1F28;
  }
  .kpi.is-clickable:active{
    transform:translateY(0);
  }
  .kpi .lbl{
    font-size:12px;
    font-weight:550;
  }
  .kpi .val{
    font-size:30px;
    line-height:1.05;
  }
  .kpi .sub{
    font-size:11.5px;
  }

  /* Controles */
  .btn-primary,.btn-ghost{
    min-height:var(--control-h);
    border-radius:var(--radius-md);
    padding:8px 14px;
    font-size:12.5px;
  }
  .btn-primary:hover,.btn-ghost:hover{
    transform:none;
  }
  .btn-primary:active,.btn-ghost:active{
    transform:scale(.99);
  }
  .input,select,textarea.input{
    min-height:var(--control-h);
    border-radius:var(--radius-md);
    padding:8px 11px;
    font-size:13px;
  }
  textarea.input{min-height:auto;}
  .field-label{
    font-size:10px;
    letter-spacing:.065em;
  }

  /* Tabelas: maior densidade e leitura mais profissional */
  table{font-size:12.5px;}
  th{
    padding:10px 14px;
    font-size:10px;
    letter-spacing:.06em;
  }
  td{
    padding:10px 14px;
    line-height:1.35;
  }
  tr:hover td{
    background:rgba(255,255,255,.018);
  }
  .table-wrap{
    border-radius:var(--radius-lg);
    box-shadow:none;
  }
  .pager{
    padding:10px 14px;
    font-size:12px;
  }

  /* Alertas e badges */
  .alert-card{
    padding:12px 14px;
    border-radius:var(--radius-md);
  }
  .badge{
    padding:3px 8px;
    font-size:10.5px;
  }

  /* Modais */
  .modal-box{
    border-radius:var(--radius-lg);
    box-shadow:0 18px 48px rgba(0,0,0,.42);
  }
  .modal-head{
    padding:16px 20px;
  }
  .modal-body{
    padding:20px;
  }

  /* Sidebar: somente refinamento de densidade, preservando a estrutura do Passo 2 */
  .nav-item{
    border-radius:var(--radius-sm);
  }
  .nav-item.active{
    box-shadow:none;
  }
  .nav-section-label{
    padding-top:11px;
    padding-bottom:4px;
    font-size:9px;
    letter-spacing:.12em;
  }

  @media (max-width:900px){
    .page-title{font-size:24px;}
    .card{padding:16px;}
    .kpi{padding:16px;min-height:104px;}
    .kpi .val{font-size:26px;}
  }


  @media (max-width:1100px){
    .vendas-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  }
  @media (max-width:700px){
    .vendas-kpi-grid,.vendas-filtros-grid{grid-template-columns:1fr!important;}
  }


  @media (max-width:1100px){
    .carteira-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  }
  @media (max-width:700px){
    .carteira-kpi-grid{grid-template-columns:1fr!important;}
  }


  @media (max-width:1100px){
    .equipe-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  }
  @media (max-width:700px){
    .equipe-kpi-grid{grid-template-columns:1fr!important;}
  }


  @media (max-width:1100px){
    .financeiro-kpi-grid,.financeiro-cal-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  }
  @media (max-width:700px){
    .financeiro-kpi-grid,.financeiro-cal-grid{grid-template-columns:1fr!important;}
  }


  @media (max-width:1250px){
    .central-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  }
  @media (max-width:950px){
    .central-main-grid{grid-template-columns:1fr!important;}
    .central-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  }
  @media (max-width:650px){
    .central-kpi-grid{grid-template-columns:1fr!important;}
  }


  @media (max-width:1100px){
    .relatorios-kpi-grid,.relatorios-filtros-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  }
  @media (max-width:700px){
    .relatorios-kpi-grid,.relatorios-filtros-grid{grid-template-columns:1fr!important;}
  }

  /* ================================================================
     AURUM — PASSO 12: DRILL-DOWN DA CENTRAL
     Escopo isolado: detalhamento dos alertas da Central em drawer lateral.
     Nenhuma regra de negócio, persistência, autenticação, hierarquia,
     cálculo, tabela ou fluxo das demais telas foi alterado.
  ================================================================= */
  .central-drill-overlay{position:fixed;inset:0;background:rgba(5,6,10,.58);z-index:74;display:flex;justify-content:flex-end;}
  .central-drill-drawer{width:min(440px,92vw);height:100%;background:var(--surface);border-left:1px solid var(--border-soft-2);box-shadow:-18px 0 48px rgba(0,0,0,.38);display:flex;flex-direction:column;animation:centralDrillIn .18s ease-out both;}
  @keyframes centralDrillIn{from{transform:translateX(24px);opacity:.6}to{transform:translateX(0);opacity:1}}
  .central-drill-item{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--surface-2);border:1px solid var(--border-soft-2);border-radius:10px;padding:11px 12px;color:#fff;text-align:left;cursor:pointer;}
  .central-drill-item:hover{border-color:rgba(59,130,246,.32);background:#202631;}


  /* ================================================================
     AURUM — PASSO 14: MELHORIA FINAL DAS TABELAS
     Escopo: exclusivamente apresentação e legibilidade das tabelas.
     Não altera filtros, ordenação, paginação, ações, dados ou regras.
  ================================================================= */
  .table-wrap{
    background:var(--surface);
    border-color:rgba(255,255,255,.07);
  }
  .table-scroll{
    position:relative;
    scrollbar-gutter:stable;
  }
  .table-scroll table{
    width:100%;
    min-width:760px;
  }
  .table-scroll thead th{
    position:sticky;
    top:0;
    z-index:2;
    background:#0F141C;
    border-bottom:1px solid rgba(255,255,255,.08);
    color:#AEB6C3;
    font-weight:700;
  }
  .table-scroll thead th.sortableTh{
    transition:background .15s ease,color .15s ease;
  }
  .table-scroll thead th.sortableTh:hover{
    background:#151B25;
    color:#fff;
  }
  .sort-indicator{
    display:inline-flex;
    margin-left:5px;
    color:var(--blue-light);
    font-size:9px;
    vertical-align:1px;
  }
  .table-scroll tbody tr{
    transition:background .12s ease;
  }
  .table-scroll tbody tr:nth-child(even){
    background:rgba(255,255,255,.012)!important;
  }
  .table-scroll tbody tr:hover{
    background:rgba(59,130,246,.045)!important;
  }
  .table-scroll tbody tr:hover td{
    background:transparent;
  }
  .table-scroll tbody td{
    border-bottom:1px solid rgba(255,255,255,.045);
    vertical-align:middle;
  }
  .table-scroll tbody tr:last-child td{
    border-bottom:none;
  }
  .table-scroll tr.rowclick td:first-child{
    position:relative;
  }
  .table-scroll tr.rowclick:hover td:first-child:before{
    content:"";
    position:absolute;
    left:0;
    top:8px;
    bottom:8px;
    width:2px;
    border-radius:999px;
    background:var(--blue);
  }
  .table-actions{
    text-align:right;
    white-space:nowrap;
    width:72px;
  }
  .table-actions .icon-btn{
    margin-right:0;
    border-radius:7px;
  }
  .table-actions .icon-btn:hover{
    background:rgba(255,255,255,.055);
  }
  .table-empty{
    padding:34px 18px!important;
    text-align:center;
    color:var(--muted)!important;
    background:var(--surface)!important;
  }
  .pager{
    min-height:44px;
    background:#121720;
  }
  .pager .icon-btn{
    width:30px;
    height:30px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:8px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin:0;
  }
  .pager .icon-btn:hover{
    background:rgba(255,255,255,.05);
  }
  @media (max-width:700px){
    .table-scroll table{min-width:680px;}
    .table-scroll thead th,.table-scroll tbody td{padding-left:11px;padding-right:11px;}
  }
