/* =====================================================================
   ROSÁRIO CAPITAL — DESIGN SYSTEM (camada exclusivamente visual)
   Dark Premium · Fintech · Corporate
   Este arquivo NÃO altera lógica, regras, campos, fluxos ou dados.
   Ele apenas sobrepõe a apresentação dos componentes existentes.
   ===================================================================== */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300..700;1,9..40,400&family=Playfair+Display:wght@600;700&display=swap');

/* ---------- 1. Tokens ---------- */
:root{
  color-scheme: dark;
  /* Paleta oficial */
  --rc-bg:#0a1225;
  --rc-bg-deep:#06080f;
  --rc-gold-l:#f0c040;
  --rc-gold:#d4a017;
  --rc-gold-p:#ffeb96;
  --rc-white:#ffffff;
  --rc-steel:#a0bee5;
  /* Superfícies derivadas (azul-aço sobre o fundo) */
  --rc-surface:rgba(160,190,229,.045);
  --rc-surface-2:rgba(160,190,229,.08);
  --rc-surface-solid:#0f1a31;
  --rc-surface-raised:#122039;
  --rc-border:rgba(160,190,229,.13);
  --rc-border-strong:rgba(160,190,229,.24);
  --rc-input:rgba(6,8,15,.45);
  --rc-muted:rgba(160,190,229,.72);
  /* Estados semânticos (apenas representação dos status existentes) */
  --rc-ok:#3ecf8e;   --rc-ok-bg:rgba(62,207,142,.12);   --rc-ok-bd:rgba(62,207,142,.32);
  --rc-err:#f47c7c;  --rc-err-bg:rgba(244,124,124,.12); --rc-err-bd:rgba(244,124,124,.34);
  --rc-warn:#f5b04a; --rc-warn-bg:rgba(245,176,74,.12); --rc-warn-bd:rgba(245,176,74,.34);
  --rc-info:#7db4ff; --rc-info-bg:rgba(125,180,255,.12);--rc-info-bd:rgba(125,180,255,.32);
  --rc-cyan:#5fd4ea; --rc-cyan-bg:rgba(95,212,234,.12);
  --rc-vio:#b39cff;  --rc-vio-bg:rgba(179,156,255,.13);
  --rc-gold-bg:rgba(240,192,64,.11); --rc-gold-bd:rgba(240,192,64,.36);
  /* Forma, sombra, movimento */
  --rc-r-sm:8px; --rc-r:12px; --rc-r-lg:16px; --rc-r-xl:20px;
  --rc-shadow:0 1px 0 rgba(255,255,255,.03) inset,0 10px 30px -12px rgba(0,0,0,.55);
  --rc-shadow-lg:0 30px 80px -20px rgba(0,0,0,.75);
  --rc-ease:cubic-bezier(.2,.7,.2,1);
  --rc-dur:.2s;
  --rc-font:Arial,Helvetica,sans-serif;
  --rc-serif:Arial,Helvetica,sans-serif;

  /* Remapeamento das variáveis já existentes no sistema */
  --navy:#ffffff;             /* usada como cor de texto de destaque */
  --txt:#ffffff;
  --gold:#d4a017;
  --gold2:#f0c040;
  --goldp:rgba(240,192,64,.12);
  --g50:rgba(160,190,229,.05);
  --g100:rgba(160,190,229,.12);
  --g200:rgba(160,190,229,.24);
  --g400:#a0bee5;
  --g600:#a0bee5;
  --grn:#3ecf8e;
  --red:#f47c7c;
}

/* ---------- 2. Base ---------- */
html{background:var(--rc-bg-deep)}
body{
  font-family:var(--rc-font)!important;
  background:linear-gradient(180deg,var(--rc-bg) 0%,var(--rc-bg) 55%,var(--rc-bg-deep) 100%) fixed!important;
  color:#fff;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  font-feature-settings:"tnum" 1,"cv11" 1;
}
body::before{ /* linha superior de identidade */
  content:"";position:fixed;top:0;left:0;right:0;height:2px;z-index:10001;pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,var(--rc-gold) 18%,var(--rc-gold-l) 50%,var(--rc-gold) 82%,transparent 100%);
}
button,input,select,textarea{font-family:var(--rc-font)}
::selection{background:rgba(240,192,64,.3);color:#fff}
a{color:var(--rc-gold-l)}
:focus-visible{outline:2px solid var(--rc-gold-p)!important;outline-offset:2px}
*{scrollbar-width:thin;scrollbar-color:rgba(160,190,229,.25) transparent}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track{background:transparent}
*::-webkit-scrollbar-thumb{background:rgba(160,190,229,.2);border-radius:10px;border:3px solid transparent;background-clip:content-box}
*::-webkit-scrollbar-thumb:hover{background:rgba(240,192,64,.4);background-clip:content-box}
option,optgroup{background:var(--rc-surface-solid);color:#fff}
hr{border:none!important;border-top:1px solid var(--rc-border)!important}
.rc-ico{display:inline-flex;width:16px;height:16px;flex-shrink:0;align-items:center;justify-content:center}
.rc-ico svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* ---------- 3. Tipografia de página ---------- */
.ptitle{
  font-family:var(--rc-serif)!important;font-size:26px!important;font-weight:700!important;
  color:#fff!important;letter-spacing:.2px;line-height:1.2;margin-bottom:6px!important;
}
.ptitle::before{
  content:"";display:block;width:28px;height:2px;border-radius:2px;margin-bottom:14px;
  background:linear-gradient(90deg,var(--rc-gold-l),var(--rc-gold));
}
.psub{font-size:14px!important;color:var(--rc-steel)!important;margin-bottom:24px}
h1,h2,h3,h4{color:#fff}

/* ---------- 4. Cabeçalho ---------- */
.app-head,.head{
  height:64px!important;padding:0 24px!important;
  background:rgba(10,18,37,.82)!important;
  backdrop-filter:saturate(140%) blur(12px);-webkit-backdrop-filter:saturate(140%) blur(12px);
  border-bottom:1px solid var(--rc-border)!important;
  position:sticky;top:0;z-index:50;
}
.hlogo{gap:12px!important}
.hlogo-ico{
  width:34px!important;height:34px!important;border-radius:10px!important;
  background:linear-gradient(135deg,var(--rc-gold-l),var(--rc-gold))!important;
  box-shadow:0 0 0 1px rgba(255,235,150,.45) inset,0 6px 18px -6px rgba(212,160,23,.55);
  color:var(--rc-bg)!important;font-weight:700;letter-spacing:.5px;
}
.hlogo-ico svg circle,.hlogo-ico svg path{stroke:var(--rc-bg)!important}
.hlogo-txt{font-size:13.5px!important;font-weight:700!important;letter-spacing:1.4px;color:#fff!important}
.hlogo-sub{font-size:12px!important;font-weight:600;color:var(--rc-gold-l)!important;letter-spacing:2.4px!important;margin-top:2px!important}
.hright{gap:10px!important}
.hwelc{font-size:13px!important;color:var(--rc-steel)!important}
.hwelc b{color:#fff!important;font-weight:600!important}
.hsep{background:var(--rc-border-strong)!important;height:18px!important}
.hadmin-badge{
  display:inline-flex;align-items:center;gap:6px;
  background:var(--rc-gold-bg)!important;border:1px solid var(--rc-gold-bd)!important;
  color:var(--rc-gold-l)!important;padding:5px 12px!important;font-size:12px!important;letter-spacing:.3px;
}

/* ---------- 5. Botões (hierarquia) ---------- */
/* Primário — gold */
.btn-p,.btn-acc,.bgold,.btn-gold,#termo-btn,
[style*="background:#c9a84c"],[style*="background:#C9A84C"]{
  background:linear-gradient(135deg,var(--rc-gold-l) 0%,var(--rc-gold) 100%)!important;
  color:var(--rc-bg)!important;
  border:1px solid rgba(255,235,150,.55)!important;
  font-weight:700!important;letter-spacing:.2px;
  box-shadow:0 1px 0 rgba(255,235,150,.55) inset,0 8px 20px -10px rgba(212,160,23,.7);
  transition:transform var(--rc-dur) var(--rc-ease),box-shadow var(--rc-dur) var(--rc-ease),filter var(--rc-dur) var(--rc-ease),opacity var(--rc-dur)!important;
}
.btn-p:hover:not(:disabled),.btn-acc:hover:not(:disabled),.bgold:hover,.btn-gold:hover:not(:disabled),#termo-btn:hover:not(:disabled){
  filter:brightness(1.06);transform:translateY(-1px);
  box-shadow:0 1px 0 rgba(255,235,150,.6) inset,0 14px 28px -12px rgba(240,192,64,.75);
}
.btn-p:active:not(:disabled),.btn-acc:active,.bgold:active,.btn-gold:active,#termo-btn:active{transform:translateY(0);filter:brightness(.96)}
.btn-p:disabled,.btn-gold:disabled,.btn:disabled{opacity:.55!important;cursor:not-allowed!important;transform:none!important;filter:saturate(.7)}
.btn-p,.btn-acc{border-radius:var(--rc-r)!important;padding:14px!important;font-size:14.5px!important}
.btn-p .spin,.btn-acc .spin,.bgold .spin,.btn-gold .spin{border-color:rgba(10,18,37,.25)!important;border-top-color:var(--rc-bg)!important}

/* Secundário — dark outline */
.boutline,.bnavy,.btn-navy,.hbtn-senha,.blogout{
  background:var(--rc-surface-2)!important;color:#fff!important;
  border:1px solid var(--rc-border-strong)!important;
  transition:all var(--rc-dur) var(--rc-ease)!important;
}
.boutline:hover,.bnavy:hover,.btn-navy:hover,.hbtn-senha:hover,.blogout:hover{
  background:rgba(160,190,229,.13)!important;border-color:rgba(240,192,64,.5)!important;color:#fff!important;
}
.hbtn-senha,.blogout{
  display:inline-flex;align-items:center;gap:7px;padding:8px 14px!important;border-radius:10px!important;font-size:12.5px!important;font-weight:500;
}
.bact{
  padding:10px 18px!important;border-radius:10px!important;font-size:13px!important;font-weight:600!important;
  min-height:40px;
}

/* Terciário — texto */
.bk,.blnk,.lnks a,.lnks .hl{color:var(--rc-gold-l)!important;transition:opacity var(--rc-dur)}
.bk:hover,.blnk:hover,.lnks a:hover{opacity:.8;text-decoration:underline;text-underline-offset:3px}
.lnks{color:var(--rc-steel)!important}
.sep{color:var(--rc-border-strong)!important}

/* Botões compactos do admin */
.btn{
  border-radius:8px!important;padding:6px 11px!important;font-size:12px!important;font-weight:600!important;
  border:1px solid transparent;line-height:1.3;
  transition:all var(--rc-dur) var(--rc-ease)!important;
}
.btn:hover:not(:disabled){transform:translateY(-1px)}
.btn-grn{background:var(--rc-ok-bg)!important;color:var(--rc-ok)!important;border-color:var(--rc-ok-bd)!important}
.btn-red{background:var(--rc-err-bg)!important;color:var(--rc-err)!important;border-color:var(--rc-err-bd)!important}
.btn-del{background:transparent!important;color:var(--rc-err)!important;border:1px solid var(--rc-err-bd)!important}
.btn-del:hover{background:var(--rc-err-bg)!important}
.btn-gray{background:var(--rc-surface-2)!important;color:var(--rc-steel)!important;border-color:var(--rc-border)!important}
.btn-grn:hover,.btn-red:hover{filter:brightness(1.15)}

/* ---------- 6. Navegação lateral ---------- */
.side{
  width:236px!important;padding:20px 12px!important;gap:4px!important;
  background:linear-gradient(180deg,rgba(6,8,15,.55),rgba(6,8,15,.2))!important;
  border-right:1px solid var(--rc-border)!important;
}
.snav{
  position:relative;padding:11px 14px!important;border-radius:10px!important;border:none!important;
  font-size:13.5px!important;font-weight:500;color:var(--rc-steel)!important;gap:10px!important;
  transition:background var(--rc-dur) var(--rc-ease),color var(--rc-dur) var(--rc-ease)!important;
}
.snav:hover{background:var(--rc-surface-2)!important;color:#fff!important}
.snav.on{
  background:linear-gradient(90deg,rgba(240,192,64,.14),rgba(240,192,64,.03))!important;
  color:var(--rc-gold-l)!important;padding-left:14px!important;font-weight:600;
}
.snav.on::before{
  content:"";position:absolute;left:-12px;top:9px;bottom:9px;width:3px;border-radius:0 3px 3px 0;
  background:linear-gradient(180deg,var(--rc-gold-l),var(--rc-gold));
}
.snav .rc-ico{opacity:.9}
.snav-badge{background:var(--rc-err)!important;color:var(--rc-bg)!important;font-weight:700!important}

/* ---------- 7. Área principal ---------- */
.main{background:transparent!important;padding:32px 36px!important}
.app-body,.layout{background:transparent}
.layout{min-height:calc(100vh - 64px)!important}

/* ---------- 8. Cards / superfícies ---------- */
.dc,.hero,.bull,.mcard,.stat,.escopo-item,.resumo,
#s-crm .card,.main .card,#app-wrap .card{
  background:var(--rc-surface)!important;
  border:1px solid var(--rc-border)!important;
  border-radius:var(--rc-r-lg)!important;
  box-shadow:var(--rc-shadow);
}
.card-head{padding:16px 20px!important;border-bottom:1px solid var(--rc-border)!important}
.card-head h3{font-size:14.5px!important;font-weight:600!important;color:#fff!important;letter-spacing:.2px}
.dc{padding:24px!important}
.dc h3,.bull-title{
  font-family:var(--rc-serif)!important;font-size:16px!important;color:#fff!important;
  border-bottom:1px solid var(--rc-border)!important;padding-bottom:12px!important;margin-bottom:14px!important;
}
.bull-title{border:none!important;padding:0!important;margin:0!important}
.ir{border-bottom:1px solid rgba(160,190,229,.08)!important;padding:9px 0!important;font-size:13px!important}
.ir .lbl{color:var(--rc-steel)!important}
.ir .val{color:#fff!important;font-weight:600!important}
.obs-b{background:var(--rc-surface-2)!important;border:1px solid var(--rc-border)!important;color:var(--rc-steel)!important;border-radius:10px!important;padding:12px!important}
.obs-b strong{color:#fff}

/* KPIs (dashboard admin) */
.stat{padding:20px!important;transition:transform var(--rc-dur) var(--rc-ease),border-color var(--rc-dur)}
.stat::before{height:2px!important;opacity:.9}
.stat[onclick]:hover{transform:translateY(-2px);border-color:var(--rc-border-strong)!important}
.stat-lbl{font-size:12px!important;letter-spacing:1.4px!important;color:var(--rc-steel)!important;font-weight:600!important}
.stat-val{font-size:32px!important;font-weight:700!important;color:#fff!important;letter-spacing:-.5px;line-height:1.1}
.stats{gap:16px!important}
.mval{color:#fff!important}
#dash-kpis circle[fill="#fff"]{fill:var(--rc-bg)}
#dash-kpis svg text{font-family:var(--rc-font)}

/* Hero da proposta */
.hero{padding:20px 22px!important}
.hero-num{color:var(--rc-gold-l)!important;font-size:12px!important;letter-spacing:.6px;text-transform:uppercase;font-weight:600}
.hero-title{font-size:20px!important;font-weight:600!important;color:#fff!important;margin-top:2px}
.hero-sub{color:var(--rc-steel)!important;font-size:12.5px!important}
.hero-badge{background:var(--rc-gold-bg)!important;color:var(--rc-gold-l)!important;border:1px solid var(--rc-gold-bd);font-weight:600!important;padding:6px 14px!important}

/* Banners de situação */
.due-banner{
  background:linear-gradient(135deg,rgba(240,192,64,.12),rgba(160,190,229,.04))!important;
  border:1px solid var(--rc-gold-bd);border-radius:var(--rc-r-lg)!important;
}
.due-banner[style*="#c0392b"]{background:linear-gradient(135deg,rgba(244,124,124,.18),rgba(244,124,124,.04))!important;border-color:var(--rc-err-bd)}
.due-banner[style*="#1a7a4a"]{background:linear-gradient(135deg,rgba(62,207,142,.18),rgba(62,207,142,.04))!important;border-color:var(--rc-ok-bd)}
.due-banner h3{font-family:var(--rc-serif)!important;color:#fff!important}
.due-banner p{color:var(--rc-steel)!important}
.due-ico{background:rgba(240,192,64,.12)!important;border:1px solid var(--rc-gold-bd)!important}
.due-badge{background:var(--rc-gold-bg)!important;border:1px solid var(--rc-gold-bd)!important;color:var(--rc-gold-l)!important}

/* Linha do tempo */
.ts:not(:last-child)::after{background:var(--rc-border)!important}
.tsi.done{background:var(--rc-ok-bg)!important;border:1.5px solid var(--rc-ok-bd)!important}
.tsi.cur{background:var(--rc-gold-bg)!important;border:1.5px solid var(--rc-gold-l)!important;box-shadow:0 0 0 4px rgba(240,192,64,.08)}
.tsi.pend{background:var(--rc-surface-2)!important;border:1.5px solid var(--rc-border-strong)!important}
.ts-t{color:#fff!important;font-size:13px!important}
.ts-d{color:var(--rc-steel)!important}
.ts-badge,.bull-badge{background:var(--rc-gold-bg)!important;color:var(--rc-gold-l)!important;border:1px solid var(--rc-gold-bd)}

/* Mural / escopo de atuação */
.bull{padding:24px!important}
.bull-body{background:rgba(6,8,15,.4)!important;border:1px solid var(--rc-border);border-radius:var(--rc-r)!important;color:#fff!important;line-height:1.75}
.escopo-preview{background:var(--rc-surface-2)!important}
.escopo-nome{color:#fff!important}
.escopo-del{background:var(--rc-err-bg)!important;color:var(--rc-err)!important;border:1px solid var(--rc-err-bd)!important}
.escopo-item{transition:transform var(--rc-dur) var(--rc-ease),border-color var(--rc-dur)}
.escopo-item:hover{transform:translateY(-2px);border-color:var(--rc-border-strong)!important}
.editor-toolbar{background:var(--rc-surface-solid)!important;border-color:var(--rc-border-strong)!important}
.editor-toolbar button,.editor-toolbar select{background:var(--rc-surface-2)!important;color:#fff!important;border-color:var(--rc-border)!important}
.editor-toolbar button:hover{background:var(--rc-gold-bg)!important;border-color:var(--rc-gold-bd)!important;color:var(--rc-gold-l)!important}
.editor-content{background:rgba(6,8,15,.45)!important;border-color:var(--rc-border-strong)!important;color:#fff}

/* ---------- 9. Barra de busca / filtros ---------- */
.crm-bar{gap:12px!important;margin-bottom:24px!important}
.sbox{
  background:var(--rc-input)!important;border:1px solid var(--rc-border-strong)!important;
  border-radius:10px!important;padding:0 14px!important;min-height:42px;color:var(--rc-steel);
  transition:border-color var(--rc-dur),box-shadow var(--rc-dur);
}
.sbox:focus-within{border-color:var(--rc-gold-l)!important;box-shadow:0 0 0 3px rgba(240,192,64,.14)}
.sbox input{font-size:13.5px!important;color:#fff!important;background:transparent!important;border:none!important;box-shadow:none!important;padding:10px 0!important}
.fbar{gap:12px!important}
.finput,.sel{
  background:var(--rc-input)!important;border:1px solid var(--rc-border-strong)!important;color:#fff!important;
  border-radius:10px!important;min-height:38px;
}
.sel{color:#fff!important}
#f-pstatus-dropdown{background:var(--rc-surface-raised)!important;border-color:var(--rc-border-strong)!important;box-shadow:var(--rc-shadow-lg)!important}
#f-pstatus-dropdown label:hover{background:var(--rc-surface-2)}
#f-pstatus-dropdown button[onclick^="fecharStatus"]{background:linear-gradient(135deg,var(--rc-gold-l),var(--rc-gold))!important;color:var(--rc-bg)!important}
#f-resultado{color:var(--rc-gold-l)!important}

/* ---------- 10. Kanban ---------- */
.kanban{gap:14px!important;padding-bottom:12px;grid-template-columns:repeat(8,minmax(200px,1fr))!important}
.kanban>div{
  background:rgba(160,190,229,.03);border:1px solid rgba(160,190,229,.09);
  border-radius:var(--rc-r-lg);padding:12px;min-height:140px;
}
.col-head{padding:2px 4px 12px!important;margin-bottom:12px!important;border-bottom-width:2px!important}
.col-lbl{font-size:12px!important;font-weight:600!important;color:#fff!important;letter-spacing:.2px}
.col-cnt{font-size:12px!important;font-weight:700!important;padding:2px 9px!important;min-width:24px;text-align:center}
.c0 .col-cnt{background:rgba(59,130,246,.18)!important;color:#93c5fd!important}
.c1 .col-cnt{background:rgba(34,197,94,.16)!important;color:#86efac!important}
.c2 .col-cnt{background:rgba(245,158,11,.17)!important;color:#fcd34d!important}
.c3 .col-cnt{background:rgba(239,68,68,.17)!important;color:#fca5a5!important}
.c4 .col-cnt{background:rgba(16,185,129,.17)!important;color:#6ee7b7!important}
.c5 .col-cnt{background:rgba(6,182,212,.17)!important;color:#67e8f9!important}
.c6 .col-cnt{background:rgba(234,179,8,.17)!important;color:#fde047!important}
.c7 .col-cnt{background:rgba(139,92,246,.2)!important;color:#c4b5fd!important}
.col-body{gap:10px!important}
.pcard{
  background:var(--rc-surface-solid)!important;border:1px solid var(--rc-border)!important;border-radius:12px!important;
  transition:transform var(--rc-dur) var(--rc-ease),border-color var(--rc-dur),box-shadow var(--rc-dur)!important;
}
.pcard:hover{transform:translateY(-2px);border-color:rgba(240,192,64,.4)!important;box-shadow:0 14px 30px -14px rgba(0,0,0,.8)!important}
.pcard-content{padding:14px 14px 12px!important}
.pcard-name{font-size:13px!important;font-weight:600!important;color:#fff!important;margin-bottom:8px!important}
.pcard-tipo{font-size:12px!important;font-weight:600!important;padding:3px 9px!important;letter-spacing:.2px}
.tipo-p{background:var(--rc-info-bg)!important;color:var(--rc-info)!important}
.tipo-r{background:var(--rc-ok-bg)!important;color:var(--rc-ok)!important}
.tipo-d{background:var(--rc-vio-bg)!important;color:var(--rc-vio)!important}
.pcard-btns{background:transparent!important;border-top:1px solid var(--rc-border)!important}
.pbtn{padding:9px 0!important;font-size:12px!important;font-weight:600!important;transition:background var(--rc-dur),color var(--rc-dur)!important}
.pbtn:first-child{border-right:1px solid var(--rc-border)!important}
.pbtn-c{color:var(--rc-err)!important}.pbtn-c:hover{background:var(--rc-err-bg)!important}
.pbtn-o{color:var(--rc-gold-l)!important}.pbtn-o:hover{background:var(--rc-gold-bg)!important}
.ecol{border:1px dashed var(--rc-border-strong)!important;color:var(--rc-muted)!important;border-radius:10px!important;font-size:12px!important;padding:18px 8px!important;background:transparent}
#crm-status{background:var(--rc-surface-2)!important;color:var(--rc-steel)!important;border:1px solid var(--rc-border);border-radius:10px!important}
#crm-status[style*="254, 242, 242"]{background:var(--rc-err-bg)!important;color:var(--rc-err)!important;border-color:var(--rc-err-bd)}

/* ---------- 11. Formulários ---------- */
:where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]),select,textarea){
  background-color:var(--rc-input)!important;color:#fff!important;
  border-color:var(--rc-border-strong)!important;border-radius:10px;
  transition:border-color var(--rc-dur),box-shadow var(--rc-dur),background-color var(--rc-dur);
}
:where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea):focus{
  border-color:var(--rc-gold-l)!important;box-shadow:0 0 0 3px rgba(240,192,64,.14)!important;outline:none!important;
  background-color:rgba(6,8,15,.6)!important;
}
:where(input,textarea)::placeholder{color:rgba(160,190,229,.5)!important}
:where(input[readonly],textarea[readonly]){background-color:rgba(160,190,229,.06)!important;color:var(--rc-steel)!important}
:where(select:disabled,input:disabled){opacity:.6}
input[type=checkbox],input[type=radio]{accent-color:var(--rc-gold)!important}
.fg{margin-bottom:16px!important}
.fg label{font-size:12px!important;font-weight:600!important;color:var(--rc-steel)!important;margin-bottom:6px!important;letter-spacing:.2px}
.fg input,.fg select,.fg textarea{padding:12px 14px!important;font-size:13.5px!important;border-width:1px!important;border-style:solid!important}
.fg input.err,input.err{border-color:var(--rc-err)!important;background-color:var(--rc-err-bg)!important;box-shadow:0 0 0 3px rgba(244,124,124,.12)!important}
#dv-neg{color:var(--rc-gold-l)!important;font-weight:700!important}
#dv-com{color:var(--rc-ok)!important;font-weight:700!important}
.rl{color:#fff!important;font-size:13px!important;padding:8px 12px;border:1px solid var(--rc-border);border-radius:10px;background:var(--rc-surface);transition:border-color var(--rc-dur),background var(--rc-dur)}
.rl:hover{border-color:var(--rc-border-strong)}
.rl:has(input:checked){border-color:var(--rc-gold-bd);background:var(--rc-gold-bg);color:var(--rc-gold-l)!important}
.fupl{background:var(--rc-surface)!important;border:1.5px dashed var(--rc-border-strong)!important;color:#fff!important;border-radius:12px!important;padding:14px!important}
.fupl:hover{border-color:var(--rc-gold-l)!important;background:var(--rc-gold-bg)!important}
.fupl.done{border-color:var(--rc-ok-bd)!important;background:var(--rc-ok-bg)!important;color:var(--rc-ok)!important}
.civil-btn{background:var(--rc-surface)!important;border:1px solid var(--rc-border-strong)!important;color:var(--rc-steel)!important;border-radius:10px!important;padding:10px!important}
.civil-btn:hover{border-color:var(--rc-gold-bd)!important;color:#fff!important}
.civil-btn.on{background:var(--rc-gold-bg)!important;border-color:var(--rc-gold-l)!important;color:var(--rc-gold-l)!important;font-weight:600}
.du .dlbl{color:var(--rc-steel)!important}
.upl{background:var(--rc-surface-2)!important;color:#fff!important;border:1px solid var(--rc-border-strong)!important;border-radius:9px!important;padding:10px 12px!important;transition:all var(--rc-dur)}
.upl:hover{border-color:var(--rc-gold-bd)!important;background:var(--rc-gold-bg)!important}
.upl.done,.upl[style*="var(--grn)"]{background:var(--rc-ok-bg)!important;border-color:var(--rc-ok-bd)!important;color:var(--rc-ok)!important}
.upl.dis{background:transparent!important;opacity:.45!important;border-style:dashed!important}
.av-div,.av-viu{background:var(--rc-warn-bg)!important;border:1px solid var(--rc-warn-bd)!important;color:var(--rc-warn)!important}
.err-box{background:var(--rc-err-bg)!important;border:1px solid var(--rc-err-bd)!important;color:#ffd0d0!important;border-radius:10px!important}
.date-tag{background:var(--rc-surface-2)!important;border:1px solid var(--rc-border)!important;color:var(--rc-steel)!important}
.date-tag b{color:#fff}
.pw-eye{color:var(--rc-steel)!important}
.pw-eye:hover,.pw-eye:focus{color:var(--rc-gold-l)!important;outline-color:var(--rc-gold-p)!important}

/* Slider de negociação */
.sl-v{
  background:var(--rc-gold-bg)!important;color:var(--rc-gold-l)!important;border:1px solid var(--rc-gold-bd);
  font-family:var(--rc-font)!important;font-weight:700!important;letter-spacing:-.2px;border-radius:10px!important;
}
.sl-v.grn,#sv-c{background:var(--rc-ok-bg)!important;color:var(--rc-ok)!important;border:1px solid var(--rc-ok-bd)!important}
#sv-c[style*="--g400"]{background:var(--rc-surface-2)!important;color:var(--rc-steel)!important;border-color:var(--rc-border)!important}
.trk-bg{background:rgba(160,190,229,.14)!important;height:6px!important}
#fill-n{background:linear-gradient(90deg,var(--rc-gold),var(--rc-gold-l))!important}
.trk input[type=range]::-webkit-slider-thumb{
  background:var(--rc-gold-l)!important;border:3px solid var(--rc-bg)!important;
  box-shadow:0 0 0 2px var(--rc-gold-l),0 4px 12px rgba(240,192,64,.4)!important;width:20px!important;height:20px!important;
  transition:transform .15s var(--rc-ease);
}
.trk input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.12)}
.trk input[type=range]::-moz-range-thumb{background:var(--rc-gold-l);border:3px solid var(--rc-bg);width:16px;height:16px;border-radius:50%}
.sl-h label{color:var(--rc-steel)!important}
.lbl-hl{background:transparent!important;color:#fff!important;padding:0!important}
.sl-lbl{color:var(--rc-steel)!important}
.sl-lbl b{background:var(--rc-gold-bg)!important;color:var(--rc-gold-l)!important}
.modo-tgl{background:var(--rc-surface-2)!important;border:1px solid var(--rc-border-strong)!important;border-radius:8px!important}
.res-row{border-bottom:1px solid rgba(160,190,229,.08)!important;font-size:13px!important;padding:8px 0!important}
.res-lbl{color:var(--rc-steel)!important}.res-val{color:#fff!important;font-weight:600!important}
.resumo{padding:14px 16px!important}

/* ---------- 12. Tabelas ---------- */
table{font-size:13px!important;border-collapse:separate!important;border-spacing:0}
th{
  background:rgba(160,190,229,.05)!important;color:var(--rc-steel)!important;
  font-size:12px!important;font-weight:600!important;text-transform:uppercase;letter-spacing:.9px;
  padding:12px 16px!important;border-bottom:1px solid var(--rc-border)!important;white-space:nowrap;
}
td{padding:13px 16px!important;border-bottom:1px solid rgba(160,190,229,.07)!important;color:#fff!important}
td b{font-weight:600}
tr{transition:background var(--rc-dur)}
tr:hover td{background:rgba(240,192,64,.035)!important}
#parceiros-table,#propostas-table,#dash-pend-list{overflow-x:auto}
.btns{gap:6px!important}
.empty{color:var(--rc-muted)!important;padding:40px!important}

/* ---------- 13. Badges de status (sem alterar nomes) ---------- */
.badge{padding:4px 10px!important;border-radius:999px!important;font-size:12px!important;font-weight:600!important;border:1px solid transparent;white-space:nowrap;letter-spacing:.1px}
.b-pendente,.b-credor{background:var(--rc-warn-bg)!important;color:var(--rc-warn)!important;border-color:var(--rc-warn-bd)!important}
.b-ativo,.b-proposta,.b-finalizado{background:var(--rc-ok-bg)!important;color:var(--rc-ok)!important;border-color:var(--rc-ok-bd)!important}
.b-bloqueado,.b-recusado{background:var(--rc-err-bg)!important;color:var(--rc-err)!important;border-color:var(--rc-err-bd)!important}
.b-oficio{background:var(--rc-info-bg)!important;color:var(--rc-info)!important;border-color:var(--rc-info-bd)!important}
.b-analise{background:var(--rc-gold-bg)!important;color:var(--rc-gold-l)!important;border-color:var(--rc-gold-bd)!important}
.b-precif,.b-cartorio{background:var(--rc-cyan-bg)!important;color:var(--rc-cyan)!important}
.b-comissao{background:var(--rc-vio-bg)!important;color:var(--rc-vio)!important}

/* ---------- 14. Modais ---------- */
.ov,.modal-overlay{background:rgba(6,8,15,.72)!important;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.ov.on>.mod,.ov.on>.modal,.modal-overlay>div{animation:rcModal .22s var(--rc-ease)}
@keyframes rcModal{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
.mod,.modal,.modal-overlay>div{
  background:linear-gradient(180deg,var(--rc-surface-raised),var(--rc-surface-solid))!important;
  border:1px solid var(--rc-border-strong)!important;border-radius:var(--rc-r-xl)!important;
  box-shadow:var(--rc-shadow-lg)!important;color:#fff;
}
.mod{padding:30px!important}
.modal{position:relative;padding:30px;max-height:90vh;overflow-y:auto}
.mod h2{font-family:var(--rc-serif)!important;font-size:21px!important;color:#fff!important;margin-bottom:22px!important;padding-right:36px}
.mod h3{color:#fff}
.mod-x,.mclose{
  position:absolute;top:16px;right:16px;width:32px!important;height:32px!important;border-radius:10px!important;
  background:var(--rc-surface-2)!important;border:1px solid var(--rc-border)!important;color:var(--rc-steel)!important;
  display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;
  transition:all var(--rc-dur) var(--rc-ease);
}
.mod-x:hover,.mclose:hover{color:#fff!important;border-color:var(--rc-gold-bd)!important;background:var(--rc-gold-bg)!important}

/* ---------- 15. Estilos inline legados (apenas cores) ---------- */
[style*="background:#fff"],[style*="background: #fff"],[style*="background:#ffffff"],
[style*="background:#f8f9ff"],[style*="background:#fafafa"],[style*="background:#f3f4f6"]{
  background:var(--rc-surface-solid)!important;
}
.main [style*="background:#fff;border-radius:10px"]{background:var(--rc-surface)!important;border-color:var(--rc-border)!important;border-radius:var(--rc-r-lg)!important;padding:18px 20px!important}
[style*="background:#f3f4f6"]{background:var(--rc-surface-2)!important;color:#fff!important;border:1px solid var(--rc-border-strong)!important}
[style*="background:var(--g100)"]{background:var(--rc-surface-2)!important;color:var(--rc-steel)!important;border:1px solid var(--rc-border)!important}
[style*="background:var(--navy)"]{background:var(--rc-gold-bg)!important;color:#fff!important;border:1px solid var(--rc-gold-bd)}
[style*="background:var(--grn)"]{background:var(--rc-ok-bg)!important;color:var(--rc-ok)!important;border:1px solid var(--rc-ok-bd)!important}
[style*="color:#1a2340"],[style*="color:#2d3a5a"],[style*="color:#374151"],[style*="color:#061C4E"]{color:#fff!important}
[style*="color:#666"],[style*="color:#888"]{color:var(--rc-steel)!important}
[style*="border:1px solid #e0e4f0"],[style*="border:1px solid #e5e7eb"],[style*="border-bottom:1px solid #e5e7eb"],[style*="border:1.5px solid #d4d8e8"]{border-color:var(--rc-border)!important}
/* tons suaves → versões translúcidas */
[style*="background:#fee2e2"],[style*="background:#fef2f2"],[style*="background:#fde8e8"],[style*="background:#fff0f0"]{background:var(--rc-err-bg)!important;color:var(--rc-err)!important;border-color:var(--rc-err-bd)!important}
[style*="background:#fff7ed"],[style*="background:#fef3c7"]{background:var(--rc-warn-bg)!important;color:var(--rc-warn)!important;border-color:var(--rc-warn-bd)!important}
[style*="background:#f0fdf4"],[style*="background:#e6f7ec"],[style*="background:#f0faf4"],[style*="background:#dcfce7"]{background:var(--rc-ok-bg)!important;color:var(--rc-ok)!important;border-color:var(--rc-ok-bd)!important}
[style*="background:#e0f2fe"],[style*="background:#e8f0fe"],[style*="background:#f0f7ff"],[style*="background:#eef2ff"]{background:var(--rc-info-bg)!important;color:var(--rc-info)!important;border-color:var(--rc-info-bd)!important}
[style*="background:#0369a1"]{background:rgba(125,180,255,.26)!important;color:#fff!important;border-color:var(--rc-info-bd)!important}
[style*="background:#dc2626"]{background:linear-gradient(135deg,#e25555,#c43d3d)!important;color:#fff!important;border:1px solid rgba(255,180,180,.35)!important}
[style*="color:#0369a1"],[style*="color:#1a56db"]{color:var(--rc-info)!important}
[style*="color:#1a7a4a"],[style*="color:#0f5132"]{color:var(--rc-ok)!important}
[style*="color:#991b1b"],[style*="color:#7f1d1d"],[style*="color:#dc2626"],[style*="color:#c0392b"],[style*="color:red"]{color:var(--rc-err)!important}
[style*="color:#92400e"],[style*="color:#9a3412"]{color:var(--rc-warn)!important}
#np-sim-wrap{background:var(--rc-gold-bg)!important;border-color:var(--rc-gold-bd)!important;border-radius:12px!important}
#np-sim-minimo{color:var(--rc-gold-l)!important}
#msgs-lista{background:rgba(6,8,15,.35)!important}

/* ---------- 16. Toast / spinner ---------- */
.toast{
  background:var(--rc-surface-raised)!important;color:#fff!important;border:1px solid var(--rc-border-strong)!important;
  border-left:3px solid var(--rc-gold-l)!important;border-radius:12px!important;box-shadow:var(--rc-shadow-lg)!important;
  padding:13px 18px!important;
}
.toast.err{border-left-color:var(--rc-err)!important}
.spin{border-color:rgba(255,255,255,.2)!important;border-top-color:#fff!important}

/* ---------- 17. Login (portal) ---------- */
#s-login{background:radial-gradient(ellipse at 15% 40%,rgba(240,192,64,.07),transparent 55%),radial-gradient(ellipse at 90% 90%,rgba(160,190,229,.06),transparent 50%)!important}
.login-bg{background:none!important}
.ld{border-color:rgba(240,192,64,.08)!important}
.portal-lbl{color:var(--rc-gold-l)!important;font-weight:600!important}
#fmain,#frg{
  background:linear-gradient(180deg,rgba(18,32,57,.92),rgba(15,26,49,.92))!important;
  border:1px solid var(--rc-border-strong);border-radius:var(--rc-r-xl)!important;
  box-shadow:var(--rc-shadow-lg)!important;backdrop-filter:blur(10px);
}
#fmain h2,#frg h2{font-family:var(--rc-serif)!important;color:#fff!important;font-size:26px!important}
.sub{color:var(--rc-steel)!important}
.tabs{background:rgba(6,8,15,.5)!important;border:1px solid var(--rc-border);border-radius:12px!important;padding:4px!important}
.tab{color:var(--rc-steel)!important;border-radius:9px!important;padding:9px!important;font-weight:600!important}
.tab:hover{color:#fff!important}
.tab.on{background:var(--rc-surface-raised)!important;color:var(--rc-gold-l)!important;box-shadow:0 0 0 1px var(--rc-gold-bd) inset,0 4px 12px -4px rgba(0,0,0,.6)!important}
.login-video{background:var(--rc-bg-deep)!important;border:1px solid var(--rc-border);border-radius:var(--rc-r-xl)!important}

/* ---------- 18. Login (admin) ---------- */
#login-wrap{background:radial-gradient(ellipse at 20% 30%,rgba(240,192,64,.07),transparent 55%),transparent!important}
.login-box{
  background:linear-gradient(180deg,rgba(18,32,57,.95),rgba(15,26,49,.95))!important;
  border:1px solid var(--rc-border-strong);border-radius:var(--rc-r-xl)!important;box-shadow:var(--rc-shadow-lg)!important;
  padding:36px!important;max-width:380px!important;
}
#login-box>div:first-child>div:first-child{
  background:linear-gradient(135deg,var(--rc-gold-l),var(--rc-gold))!important;color:var(--rc-bg)!important;
  border:1px solid rgba(255,235,150,.55)!important;box-shadow:0 10px 26px -10px rgba(212,160,23,.7);
}
#login-box>div:first-child>div:nth-child(2){font-family:var(--rc-serif);font-size:22px!important}
#login-box a,#frg-box button:first-child{color:var(--rc-gold-l)!important}

/* ---------- 19. Página Redefinir Senha ---------- */
body>.card{
  background:linear-gradient(180deg,rgba(18,32,57,.95),rgba(15,26,49,.95))!important;
  border:1px solid var(--rc-border-strong);border-radius:var(--rc-r-xl)!important;box-shadow:var(--rc-shadow-lg)!important;
}
body>.card .logo-box{background:rgba(6,8,15,.5)!important;border:1px solid var(--rc-border)}
body>.card .logo-ico{border-color:var(--rc-gold-l)!important}
body>.card .logo-ico svg{stroke:var(--rc-gold-l)!important}
body>.card .logo-sub{color:var(--rc-gold-l)!important}
body>.card h2{color:#fff;font-family:var(--rc-serif)}
body>.card .fg label{color:var(--rc-steel)!important}
body>.card .lnks a{color:var(--rc-gold-l)!important}
body>.card #tela-ok p{color:var(--rc-steel)!important}
body>.card #tela-ok h2{color:var(--rc-ok)!important}
body>.card .msg.ok{background:var(--rc-ok-bg)!important;color:var(--rc-ok)!important;border-color:var(--rc-ok-bd)!important}
body>.card .msg.err{background:var(--rc-err-bg)!important;color:var(--rc-err)!important;border-color:var(--rc-err-bd)!important}

/* ---------- 20. Política (viewer) ---------- */
#politica-viewer{background:var(--rc-surface)!important;border-color:var(--rc-border)!important;border-radius:var(--rc-r-lg)!important}
#politica-viewer>div:first-child{border-color:var(--rc-border)!important}
#politica-iframe{background:#fff}

/* ---------- 21. Responsividade ---------- */
@media (max-width:1200px){
  .main{padding:26px 24px!important}
}
@media (max-width:980px){
  .stats,#dash-kpis [style*="grid-template-columns:repeat(4,1fr)"],.mgrid{grid-template-columns:repeat(2,1fr)!important}
  #dash-kpis [style*="grid-template-columns:1.1fr 1fr"]{grid-template-columns:1fr!important}
  .escopo-grid{grid-template-columns:repeat(2,1fr)!important}
}
@media (max-width:768px){
  .app-body,.layout{flex-direction:column!important}
  .side{
    display:flex!important;flex-direction:row!important;width:100%!important;overflow-x:auto;
    padding:8px 12px!important;border-right:none!important;border-bottom:1px solid var(--rc-border)!important;
    background:rgba(6,8,15,.45)!important;flex-shrink:0;
  }
  .snav{width:auto!important;white-space:nowrap;flex-shrink:0;padding:9px 12px!important;font-size:12.5px!important}
  .snav.on::before{left:10px;right:10px;top:auto;bottom:0;width:auto;height:2px;border-radius:2px}
  .main{padding:20px 16px!important}
  .app-head,.head{padding:0 14px!important;height:58px!important}
  .hwelc{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .hsep{display:none}
  .ptitle{font-size:22px!important}
  .kanban{grid-template-columns:repeat(8,minmax(240px,82vw))!important;scroll-snap-type:x mandatory}
  .kanban>div{scroll-snap-align:start}
  .crm-bar .bact{flex:1 1 auto;justify-content:center}
  .rgrid{grid-template-columns:1fr!important}.rgrid .fg.full{grid-column:auto!important}
  .dgrid{grid-template-columns:1fr 1fr!important}
  .mod,.modal{padding:22px!important;border-radius:16px!important}
  .layout{min-height:calc(100vh - 58px)!important}
}
@media (max-width:560px){
  .stats,#dash-kpis [style*="grid-template-columns:repeat(4,1fr)"]{grid-template-columns:1fr 1fr!important;gap:10px!important}
  .stat-val{font-size:26px!important}
  .hlogo-sub{display:none!important}
  .hbtn-senha{padding:8px 10px!important}
  .escopo-grid{grid-template-columns:1fr!important}
  .dgrid{grid-template-columns:1fr!important}.dgrid .du[style*="span 2"]{grid-column:auto!important}
  .sl-h{flex-wrap:wrap;gap:8px}
  #fmain,#frg,.login-box{padding:24px!important}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important}
}
@media print{
  body{background:#fff!important;color:#000}
  body::before{display:none}
}
/* ---------- 22. Ajustes finos pós-validação ---------- */
.fg input[type=radio],.fg input[type=checkbox]{width:auto!important;padding:0!important;flex:0 0 auto;margin:0}
.fg .rl{display:inline-flex!important;align-items:center;gap:8px;margin:0!important;cursor:pointer}
.sl-h .lbl-hl{color:#fff!important}
a.btn,a.bact{text-decoration:none!important}
input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{
  -webkit-box-shadow:0 0 0 1000px #0f1a31 inset!important;-webkit-text-fill-color:#fff!important;caret-color:#fff;
  transition:background-color 9999s ease-out 0s;
}
#dash-pend-list td,#parceiros-table td,#propostas-table td{white-space:nowrap}
#dash-pend-list .btns,#parceiros-table .btns,#propostas-table .btns{flex-wrap:nowrap}
@media (max-width:980px){.login-split{max-width:880px!important}}
@media (max-width:860px){
  .login-split{flex-direction:column!important;max-width:520px!important;padding:24px 16px!important}
  .login-video{min-height:200px!important;max-height:260px}
}
@media (max-width:560px){
  .hwelc,.hsep{display:none!important}
  .hright{gap:6px!important}
  .hbtn-senha,.blogout{white-space:nowrap;padding:7px 10px!important}
  .hlogo-txt{font-size:12px!important;letter-spacing:1px}
}
/* Botões de largura total (ações principais em formulários do admin) */
.btn[style*="width:100%"],.btn[style*="padding:10px"],.btn[style*="padding:11px"],.btn[style*="padding:12px"]{padding:11px 16px!important;font-size:13.5px!important;border-radius:10px!important}
.btn[style*="padding:8px"]{padding:9px 14px!important;font-size:12.5px!important}
.stat[style*="border-top:3px solid var(--red)"]::before{background:var(--rc-err)}
.stat-val[style*="font-size:20px"]{font-size:24px!important}
#dash-kpis polygon{fill:rgba(240,192,64,.16);opacity:1}
/* Vídeo do login: sem faixas pretas — o vídeo ocupa só sua proporção e o entorno usa o mesmo fundo da página */
.login-video{
  background:transparent!important;height:auto!important;min-height:0!important;max-height:none!important;
  aspect-ratio:auto;object-fit:contain!important;align-self:center;
  border:1px solid var(--rc-border)!important;border-radius:var(--rc-r-xl)!important;
  box-shadow:0 30px 70px -25px rgba(0,0,0,.8)!important;
}
.login-video-col{background:transparent!important}
.login-video{aspect-ratio:1088/576!important;width:100%!important}

/* ---------- Padronizacao tipografica: Arial em todas as interfaces (tamanho minimo 12px aplicado nas declaracoes) ---------- */
html,body,*,*::before,*::after{font-family:Arial,Helvetica,sans-serif!important}
