/* ===== ANV Interação Clientes — tema claro (PANORAMA) + sidebar escura (T3P) ===== */
:root{
  --ink:#1a2332; --muted:#64748b; --line:#e2e8f0; --bg:#f8fafc; --card:#fff;
  --accent:#0d5c63; --accent-2:#0a7d86; --red:#b91c1c; --amber:#b45309; --green:#15803d; --blue:#1d4ed8;
  --side:#0f172a; --side-2:#0b1220; --side-tx:#cbd5e1; --side-mut:#7c8aa0; --side-active:#13343b;
}
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body{font-family:-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.45}
.boot{padding:40px;color:var(--muted)}
b{font-weight:700}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-variant-numeric:tabular-nums}
.num{font-variant-numeric:tabular-nums}

/* ---------- layout ---------- */
.app{display:grid;grid-template-columns:248px 1fr;min-height:100vh}
.app-login{min-height:100vh}
.sidebar{background:linear-gradient(180deg,var(--side),var(--side-2));color:var(--side-tx);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}
.main{min-width:0;display:flex;flex-direction:column}
.topbar{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
#crumb{font-weight:600;font-size:15px}
.top-right{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--muted)}
.org{font-size:12px;color:var(--muted)}
.btn-novo{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer}
.btn-novo:hover{background:var(--accent-2)}
.novo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px}
.novo-opt{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:14px;font-size:14px;cursor:pointer;text-align:left;color:var(--ink)}
.novo-opt:hover{border-color:var(--accent);background:#f6fafa}
.novo-ic{font-size:20px}
.reg-form .ed-grid{margin-bottom:4px}
/* listas por entidade (telas da seção Dados) */
.lista{max-width:900px}
.lista-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px}
.lista-tit{font-size:20px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:9px}
.lista-ic{font-size:20px}
.lista-count{font-size:12.5px;font-weight:600;color:var(--muted);background:var(--card);border:1px solid var(--line);border-radius:20px;padding:1px 10px}
.btn-add{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer;flex-shrink:0}
.btn-add:hover{background:var(--accent-2)}
.lista-busca{width:100%;padding:10px 13px;border:1px solid var(--line);border-radius:10px;font-size:14px;margin-bottom:14px;background:var(--card);color:var(--ink);font-family:inherit}
.lista-busca:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(13,92,99,.1)}
.lista-rows{display:flex;flex-direction:column;gap:6px}
.lista-grupo{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:16px 0 4px;display:flex;align-items:center;gap:8px}
.lista-grupo span{font-weight:600;letter-spacing:0;text-transform:none;font-size:12px}
.lrow{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:11px;padding:11px 14px;cursor:pointer;font-family:inherit}
.lrow:hover{border-color:var(--accent);background:#f6fafa}
.lrow-main{min-width:0;flex:1}
.lrow-tit{font-size:14.5px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lrow-sub{font-size:12.5px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lrow-right{display:flex;align-items:center;gap:10px;flex-shrink:0}
.lrow-extra{font-size:13px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
.lrow-nat{width:9px;height:9px;border-radius:50%;display:inline-block;flex-shrink:0}
.lrow-seal{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:12px;border:1px solid var(--line);color:#cbd5e1;background:#fff;flex-shrink:0}
.lrow-seal.on{background:var(--green);border-color:var(--green);color:#fff}
.lista-vazia{padding:28px;text-align:center;color:var(--muted);font-size:14px;border:1px dashed var(--line);border-radius:12px}
.op-line{margin:8px 0 2px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;color:var(--ink)}
.op-lbl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.op-item{background:#f1f5f9;border:1px solid var(--line);border-radius:7px;padding:2px 9px}
.op-sub{color:var(--muted);font-weight:400}
.lab-conc{background:#fff7ed}
.lab-conc td.b{color:var(--amber)}
/* módulo Fiscal (Deep Dive) */
.ftab{width:100%;border-collapse:collapse;font-size:13px}
.ftab th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);padding:6px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
.ftab td{padding:6px 10px;border-bottom:1px solid var(--line)}
.ftab td.r,.ftab th.r{text-align:right;font-variant-numeric:tabular-nums}
.ftab .reg-sel{padding:4px 8px;border:1px solid var(--line);border-radius:7px;font-size:13px;background:#fff;font-family:inherit}
.rc{text-align:center;cursor:pointer;font-weight:600;font-variant-numeric:tabular-nums}
.rc-0{color:var(--red);background:#fef2f2}
.rc-part{color:var(--amber);background:#fff7ed}
.rc-full{color:var(--green);background:#f0fdf4}
.rc:hover{outline:2px solid var(--accent);outline-offset:-2px}
#content{padding:26px 28px 80px;max-width:1280px;width:100%}

/* ---------- sidebar ---------- */
.brand{display:flex;align-items:center;gap:11px;padding:18px 18px 14px}
.brand-mark{width:38px;height:38px;border-radius:9px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;letter-spacing:.5px;font-size:13px}
.brand-mark.big{width:54px;height:54px;font-size:18px;border-radius:12px;margin:0 auto 12px}
.brand-txt{font-size:14px;line-height:1.15;color:#e7edf5}.brand-txt b{color:#fff}
.nav{padding:8px 10px;flex:1;overflow-y:auto}
.nav-sec{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--side-mut);padding:14px 10px 6px}
.nav-item{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:8px;color:var(--side-tx);text-decoration:none;font-size:13.5px;border-left:3px solid transparent;cursor:pointer}
.nav-item:hover{background:rgba(255,255,255,.05)}
.nav-item.active{background:var(--side-active);border-left-color:var(--accent-2);color:#fff}
.nav-item .nav-ic{width:18px;text-align:center;opacity:.9}
.side-foot{padding:12px 14px;border-top:1px solid rgba(255,255,255,.07);display:flex;align-items:center;justify-content:space-between;gap:8px}
.who{font-size:12px;color:#e7edf5;display:flex;flex-direction:column;line-height:1.25;overflow:hidden}
.who .papel{font-size:10px;color:var(--side-mut);text-transform:uppercase;letter-spacing:.05em}
.side-actions{display:flex;flex-direction:column;gap:6px;align-items:flex-end;flex-shrink:0}
.mfa-btn{white-space:nowrap}
.mfa-btn .ti{margin-right:4px}
.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.18);color:var(--side-tx);border-radius:7px;padding:6px 10px;font-size:12px;cursor:pointer}
.btn-ghost:hover{background:rgba(255,255,255,.08)}

/* ---------- login ---------- */
.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(1200px 500px at 50% -10%,#e7eef0,transparent),var(--bg);padding:20px}
.login-card{position:relative;overflow:hidden;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:36px 32px 30px;width:372px;max-width:100%;box-shadow:0 1px 2px rgba(15,23,42,.04),0 20px 48px rgba(15,23,42,.10);text-align:center}
.login-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent-2))}
.login-card h1{font-size:19px;margin:14px 0 2px;letter-spacing:-.01em}
.login-card .sub{color:var(--muted);font-size:12.5px;margin-bottom:22px}
.login-card label{display:block;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:14px 2px 6px}
.login-field{position:relative}
.login-field .ti{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#9aa7b8;font-size:15px}
.login-card input{width:100%;padding:11px 13px 11px 38px;border:1px solid var(--line);border-radius:9px;font-size:14px;background:#fff;transition:border-color .15s,box-shadow .15s}
.login-card input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(13,92,99,.12)}
.login-field:focus-within .ti{color:var(--accent)}
.btn-primary{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;margin-top:20px;background:var(--accent);color:#fff;border:none;border-radius:9px;padding:11px;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 1px 2px rgba(13,92,99,.18);transition:background .15s,box-shadow .15s,transform .1s}
.btn-primary:hover{background:var(--accent-2);box-shadow:0 4px 12px rgba(13,92,99,.22)}
.btn-primary:active{transform:translateY(1px)}
.btn-primary .ti{font-size:16px}
.err{color:var(--red);font-size:12.5px;margin-top:12px;min-height:16px}
.err.ok{color:var(--accent)}   /* progresso/sucesso ("Link enviado…") em teal — vermelho lia como falha */
/* login: Google + magic-link (aditivo — a senha continua como fallback) */
.login-sep{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px;margin:20px 0 14px}
.login-sep::before,.login-sep::after{content:"";flex:1;height:1px;background:var(--line)}
.btn-oauth{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px;border:1px solid var(--line);background:#fff;color:#0f172a;border-radius:9px;cursor:pointer;font-size:14px;font-weight:500;transition:background .15s,border-color .15s,box-shadow .15s}
.btn-oauth:hover{background:#f8fafc;border-color:#cbd5e1;box-shadow:0 2px 8px rgba(15,23,42,.06)}
.btn-oauth .ti{font-size:17px}
.login-magic{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:9px;margin-top:10px;border:none;background:none;color:var(--accent);cursor:pointer;font-size:13px}
.login-magic:hover{text-decoration:underline}

/* ---------- dashboard ---------- */
.page-h1{font-size:21px;margin:0 0 3px}
.page-sub{color:var(--muted);font-size:12.5px;margin:0 0 18px}
.dash-load{padding:30px;color:var(--muted);display:flex;align-items:center;gap:10px}
.dash-load::before{content:"";width:16px;height:16px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:anv-spin .7s linear infinite;flex-shrink:0}
@keyframes anv-spin{to{transform:rotate(360deg)}}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:22px}
.kpi{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:15px}
.kpi .v{font-size:22px;font-weight:700;color:var(--accent)}.kpi .v.red{color:var(--red)}
.kpi .l{font-size:11px;color:var(--muted);margin-top:3px;text-transform:uppercase;letter-spacing:.04em}
.legend{font-size:12px;color:var(--muted);margin-bottom:14px;display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px}
.bom{background:var(--green)}.medio{background:var(--amber)}.ruim{background:var(--red)}.na{background:#94a3b8}
.lg-sep{margin-left:6px}
.toolbar{margin-bottom:12px;display:flex;gap:8px}
.toolbar button{font-size:12px;border:1px solid var(--line);background:#fff;border-radius:7px;padding:6px 11px;cursor:pointer}
.toolbar button:hover{background:#f1f5f9}
.badge{display:inline-block;font-size:9.5px;font-weight:700;background:#eff6ff;color:var(--blue);border:1px solid #bfdbfe;border-radius:10px;padding:1px 7px;margin-left:6px}
.badge.tax{background:#fef2f2;color:var(--red);border-color:#fecaca}

.unit{background:var(--card);border:1px solid var(--line);border-radius:12px;margin-bottom:12px;overflow:hidden}
.uhead{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;user-select:none}
.uhead:hover{background:#f1f5f9}
.caret{font-size:12px;color:var(--muted);transition:transform .15s;width:14px}.unit.open .caret{transform:rotate(90deg)}
.uname{font-weight:600;font-size:14px}
.uname-wrap{flex:1;min-width:0}
.uapelido{font-size:11px;color:var(--muted);font-weight:400;margin-bottom:1px}
.ucnpj{font-size:11.5px;color:var(--muted);font-weight:400;margin-top:2px}
.ufiliais{background:none;border:none;color:var(--accent);cursor:pointer;font-size:11.5px;padding:0;font-family:inherit;text-decoration:underline;text-underline-offset:2px}
.ufiliais:hover{color:var(--accent-2)}
.fil-list{margin:12px 0;display:flex;flex-direction:column}
.fil-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--line);font-size:13px}
.fil-nome{flex:1;color:var(--muted)}
.fil-del{background:none;border:none;color:var(--red);cursor:pointer;font-size:11px}
.fil-empty{font-size:12.5px;padding:8px 0}
.fil-add{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.fil-add input{flex:1;min-width:130px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;font-family:inherit}
.fil-add select{padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;font-family:inherit;background:#fff}
.fil-add .btn-primary.sm{width:auto;margin:0}
.fil-sec{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:14px 0 4px;font-weight:700}
.fil-sec.off{color:var(--red)}
.fil-st{display:inline-block;font-size:9.5px;font-weight:700;border-radius:8px;padding:1px 7px;white-space:nowrap}
.fil-st.ok{background:#dcfce7;color:var(--green)}
.fil-st.off{background:#fee2e2;color:var(--red)}
.anv-badge{display:inline-block;font-size:9px;font-weight:800;letter-spacing:.04em;border-radius:6px;padding:1px 6px;margin-left:6px;vertical-align:middle}
.anv-badge.vendida{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}
.anv-badge.encerrada{background:#ede9fe;color:#5b21b6;border:1px solid #ddd6fe}
.fil-row{cursor:pointer;border-radius:6px}
.fil-row:hover{background:#f6fafa}
.fil-del{background:none;border:none;color:#cbd5e1;cursor:pointer;font-size:13px;padding:2px 7px;border-radius:5px}
.fil-del:hover{background:#fee2e2;color:var(--red)}
.fil-addbar{margin-top:14px}
.fil-form-actions{display:flex;justify-content:space-between;gap:10px;margin-top:10px}
.anv-panel{border-color:#fde68a;background:linear-gradient(180deg,#fffbeb,#fffdf7)}
.proc-stamp.anv{color:#b45309;border-color:#b45309}
.estado-pick{display:grid;grid-template-columns:1fr;gap:8px}
.usum{font-size:12px;color:var(--muted);display:flex;gap:18px;white-space:nowrap}
.usum b{color:var(--ink);font-variant-numeric:tabular-nums}.usum .neg,b.neg,.red{color:var(--red)}
.ubody{display:none;padding:0 16px 16px;border-top:1px solid var(--line)}
.unit.open .ubody{display:block}
table{width:100%;border-collapse:collapse;font-size:12.5px;margin-top:12px}
th,td{padding:7px 9px;border-bottom:1px solid var(--line);text-align:right;font-variant-numeric:tabular-nums}
th:first-child,td:first-child{text-align:left}
th{font-size:10px;text-transform:uppercase;color:var(--muted)}
td.neg{color:var(--red)}
.pgfn-note{font-size:12px;color:var(--muted);margin-top:8px}
.socios-line{margin-top:12px;font-size:12px;color:var(--muted);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.socios-lbl{text-transform:uppercase;font-size:10px;letter-spacing:.04em;color:var(--muted)}
.socio-chip{display:inline-flex;align-items:center;gap:6px;background:#eef6f6;border:1px solid #cfe5e6;color:var(--ink);border-radius:20px;padding:2px 10px;font-size:11.5px}
.socio-papel{font-size:9px;color:var(--accent);text-transform:uppercase;letter-spacing:.03em;background:#fff;border:1px solid #cfe5e6;border-radius:8px;padding:0 5px}
.ind{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:14px}
.ic{border:1px solid var(--line);border-radius:9px;padding:11px 13px;cursor:pointer;transition:.12s;background:#fcfcfd}
.ic:hover{border-color:var(--accent);box-shadow:0 2px 8px rgba(0,0,0,.06)}
.ic .in{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}
.ic .iv{font-size:19px;font-weight:700;margin-top:3px;font-variant-numeric:tabular-nums}
.s{display:inline-block;padding:1px 7px;border-radius:5px;font-size:10px;font-weight:700;margin-top:5px}
.s.BOM{background:#dcfce7;color:var(--green)}.s.MEDIO{background:#fef9c3;color:var(--amber)}
.s.RUIM{background:#fee2e2;color:var(--red)}.s.NA{background:#f1f5f9;color:#94a3b8}
.click{font-size:10px;color:var(--accent);margin-top:6px}

/* ---------- modal ---------- */
.modal{position:fixed;inset:0;background:rgba(15,23,42,.55);display:none;align-items:center;justify-content:center;z-index:50;padding:20px}
.modal.show{display:flex}
.box{background:#fff;border-radius:14px;max-width:640px;width:100%;max-height:86vh;overflow:auto;padding:22px 24px;position:relative}
.box h3{margin:0 0 2px;font-size:18px}
.who{color:var(--muted);font-size:12.5px;margin-bottom:14px}
.vd-wrap{margin-bottom:4px}
.vd{display:inline-block;padding:5px 14px;border-radius:20px;font-weight:700;font-size:13px}
.vd.ok{background:#dcfce7;color:var(--green)}.vd.no{background:#fee2e2;color:var(--red)}
.band{font-size:12px;margin-left:10px;color:var(--muted)}
.row{display:flex;justify-content:space-between;gap:14px;padding:6px 0;border-bottom:1px solid var(--line);font-size:13px}
.row .lab{color:var(--muted)}.row .val{font-weight:600;font-variant-numeric:tabular-nums;text-align:right}
.row .val.small{font-weight:400;font-size:11.5px}
.hs{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 12px;margin:12px 0;font-size:12.5px;color:#991b1b}
.hs b{display:block;margin-bottom:4px}
.expl{font-size:12px;color:var(--muted);margin-top:12px;background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:10px 12px}
.expl div{margin:2px 0}
.drv-h{margin-top:14px;font-size:12px;color:var(--muted)}
.x{position:absolute;top:12px;right:16px;font-size:22px;color:var(--muted);cursor:pointer;background:none;border:none}

/* ---------- diagnóstico ---------- */
.diag{margin-top:30px}
.diag-h{font-size:18px;margin:6px 0 14px;padding-bottom:8px;border-bottom:2px solid var(--line)}
.dcard{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin-bottom:14px}
.dcard h3{margin:0 0 10px;font-size:15px}
.dcard .hint{font-size:11.5px;color:var(--muted);margin-top:8px}
td.c,th.c{text-align:center}
td.r,th.r{text-align:right}
.b{font-weight:600}
.muted{color:var(--muted)}
.muted-sm{font-size:11px;color:var(--muted)}
.arr{color:var(--accent)}
.bar-td{width:34%}
.ebar{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.ebar>i{display:block;height:100%;background:var(--accent)}
.chart{display:flex;flex-direction:column;gap:9px}
.crow{display:flex;align-items:center;gap:10px}
.crow .clab{width:150px;font-size:12px;font-weight:600;flex-shrink:0;overflow:hidden}
.crow .clab span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.crow .ctrack{flex:1;background:#eef2f6;border-radius:6px;height:24px;overflow:hidden}
.crow .cfill{height:24px;border-radius:6px;display:flex;align-items:center;justify-content:flex-end;padding-right:8px;min-width:64px}
.crow .cfill span{color:#fff;font-size:11px;font-weight:700;white-space:nowrap}
.crow .cqt{width:54px;font-size:11px;color:var(--muted);flex-shrink:0}
.cfilter{width:320px;max-width:100%;padding:7px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;margin-bottom:10px}
.chip{display:inline-block;font-size:10.5px;background:#f1f5f9;border:1px solid var(--line);border-radius:20px;padding:1px 7px;margin:1px}
.chip.warn{background:#fef3c7;border-color:#fcd34d}
.tbl-scroll{overflow-x:auto}
#ctab th,#ctab td{font-size:11.5px;padding:6px 8px;text-align:left}

/* ---------- editor (dossiê) ---------- */
.ent-tabs{display:flex;gap:4px;margin-bottom:18px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.ent-tab{background:none;border:none;border-bottom:2px solid transparent;padding:9px 14px;font-size:13.5px;color:var(--muted);cursor:pointer;display:flex;align-items:center;gap:7px;margin-bottom:-1px}
.ent-tab:hover{color:var(--ink)}
.ent-tab.on{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}
.tab-n{font-size:11px;background:#eef2f6;color:var(--muted);border-radius:20px;padding:0 7px;min-width:18px;text-align:center;font-variant-numeric:tabular-nums}
.ent-tab.on .tab-n{background:var(--accent);color:#fff}
.ed-bar{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:14px;flex-wrap:wrap}
.ed-title{display:flex;align-items:baseline;gap:14px}
.ed-title h2{font-size:20px;margin:0}
.ed-prog{display:flex;align-items:center;gap:8px}
.prog-track{width:120px;height:6px;background:#e7edf0;border-radius:4px;overflow:hidden}
.prog-track>i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--green));border-radius:4px;transition:width .4s}
.prog-tx{font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.ed-tools{display:flex;align-items:center;gap:10px}
.search{position:relative;display:flex;align-items:center}
.search-ic{position:absolute;left:10px;color:var(--muted);font-size:14px;pointer-events:none}
.search input{padding:8px 12px 8px 30px;border:1px solid var(--line);border-radius:9px;font-size:13px;width:220px;font-family:inherit;background:#fff}
.search input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(13,92,99,.1)}
.btn-primary.sm{width:auto;margin:0;padding:9px 15px;font-size:13px}
.skeleton{padding:30px;color:var(--muted)}
.ed-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.ed-table th{background:#f6f8f9;color:var(--muted);text-transform:uppercase;font-size:10px;letter-spacing:.05em;text-align:left;padding:9px 12px;font-weight:600}
.ed-table th.r{text-align:right}
.ed-table td{padding:10px 12px;border-top:1px solid var(--line);text-align:left;vertical-align:middle}
.ed-table td.r{text-align:right}
.ed-table tbody tr{cursor:pointer;transition:background .1s}
.ed-table tbody tr:hover{background:#f8fbfb}
.th-st,.td-st{width:42px;text-align:center}
.th-act,.td-act{width:80px;text-align:right;white-space:nowrap}
.cls{display:inline-block;font-size:10px;font-weight:700;border-radius:6px;padding:2px 8px}
.cls-FORTE{background:#fee2e2;color:var(--red)}.cls-MODERADO{background:#fef9c3;color:var(--amber)}
.st-seal{width:26px;height:26px;border-radius:50%;border:1.5px solid var(--line);background:#fff;color:#cbd5e1;cursor:pointer;font-size:13px;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:.12s}
.st-seal:hover{border-color:var(--green);color:var(--green)}
.st-seal.on{background:var(--green);border-color:var(--green);color:#fff}
.td-proc{min-width:170px}
.ed-when{font-size:10.5px;color:#94a3b8;margin-top:3px}
.act{background:none;border:none;cursor:pointer;font-size:14px;color:var(--muted);padding:4px 6px;border-radius:6px}
.act:hover{background:#eef2f6;color:var(--ink)}
.act-del:hover{background:#fee2e2;color:var(--red)}
.del-confirm{font-size:12px;color:var(--muted);white-space:nowrap}
.del-confirm button{border:none;background:none;cursor:pointer;font-size:12px;font-weight:600;padding:2px 6px;border-radius:5px}
.del-confirm .del-yes{color:var(--red)}.del-confirm .del-yes:hover{background:#fee2e2}
.del-confirm .del-no{color:var(--muted)}
.empty{text-align:center;padding:50px 20px;color:var(--muted);background:var(--card);border:1px dashed var(--line);border-radius:12px}
.empty-ic{font-size:30px;opacity:.5;margin-bottom:8px}
.empty-tx{font-size:14px;margin-bottom:14px}
.nat-chip{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--nc,#64748b);background:color-mix(in srgb,var(--nc,#64748b) 10%,#fff);border:1px solid color-mix(in srgb,var(--nc,#64748b) 28%,#fff);border-radius:20px;padding:2px 9px}
.nat-chip.none,.nat-chip.plain{color:#94a3b8;background:#f1f5f9;border-color:var(--line);font-weight:500}
.nat-dots{display:inline-flex;gap:2px}
.nat-dots .dot{width:5px;height:5px;border-radius:50%;background:color-mix(in srgb,var(--nc,#94a3b8) 25%,#fff)}
.nat-dots .dot.on{background:var(--nc,#64748b)}
.back{background:none;border:none;color:var(--accent);cursor:pointer;font-size:13px;padding:0;margin-bottom:12px}
.back:hover{text-decoration:underline}
.ed-form{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 24px;max-width:760px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.form-h{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.form-h h2{font-size:19px;margin:0}
.form-h-ent{color:var(--muted);font-weight:400}
.form-id{font-size:11.5px;color:#94a3b8}
.ed-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fg{margin:0}
.fg.full{grid-column:1/-1}
.ed-form label,.reg-form label{display:block;font-size:12px;color:var(--muted);margin-bottom:5px;font-weight:500}
.ed-form input,.ed-form textarea,.ed-form select,.reg-form input,.reg-form textarea,.reg-form select{width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:9px;font-size:13.5px;font-family:inherit;background:#fff;color:var(--ink)}
.ed-form input.mono,.reg-form input.mono{font-family:ui-monospace,Menlo,monospace}
.ed-form input:focus,.ed-form textarea:focus,.ed-form select:focus,.reg-form input:focus,.reg-form textarea:focus,.reg-form select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(13,92,99,.1)}
.reg-form .switch input{width:0}
.reg-form .fg{margin-bottom:2px}
.fmt-hint{display:block;font-size:11px;color:var(--accent);margin-top:4px;font-variant-numeric:tabular-nums;min-height:14px}
.req{color:var(--red)}
.switch{position:relative;display:inline-block;width:42px;height:24px}
.switch input{opacity:0;width:0;height:0}
.slider{position:absolute;inset:0;background:#cbd5e1;border-radius:24px;cursor:pointer;transition:.2s}
.slider:before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}
.switch input:checked+.slider{background:var(--accent)}
.switch input:checked+.slider:before{transform:translateX(18px)}
.proc-panel{margin:18px 0 6px;padding:16px;border:1px solid #dbeae9;border-radius:12px;background:linear-gradient(180deg,#f3f8f8,#fbfdfd)}
.proc-h{font-size:12px;color:var(--muted);margin-bottom:12px;display:flex;align-items:center;gap:9px}
.proc-stamp{font-family:ui-monospace,Menlo,monospace;font-size:10px;font-weight:600;letter-spacing:.12em;color:var(--accent);border:1.5px solid var(--accent);border-radius:5px;padding:2px 7px;transform:rotate(-2deg)}
.proc-orig{font-weight:700;color:var(--accent);letter-spacing:.01em}
.fg-lbl{display:block;font-size:12px;color:var(--muted);margin:14px 0 8px;font-weight:500}
.nat-pick{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}
.nat-opt{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 10px;font-size:12px;cursor:pointer;text-align:left;color:var(--ink);transition:.12s}
.nat-opt:hover{border-color:color-mix(in srgb,var(--nc) 50%,#fff)}
.nat-opt.sel{border-color:var(--nc);background:color-mix(in srgb,var(--nc) 10%,#fff);box-shadow:0 0 0 2px color-mix(in srgb,var(--nc) 22%,#fff)}
.nat-opt-lbl{font-weight:600;color:var(--nc)}
.seal{display:inline-flex;align-items:center;gap:9px;margin-top:14px;border:1.5px dashed #cbd5e1;background:#fff;border-radius:10px;padding:9px 14px;cursor:pointer;font-size:13px;color:var(--muted);transition:.15s}
.seal:hover{border-color:var(--green);color:var(--green)}
.seal .seal-ic{width:20px;height:20px;border-radius:50%;border:1.5px solid currentColor;display:inline-flex;align-items:center;justify-content:center;font-size:11px}
.seal.on{border-style:solid;border-color:var(--green);background:#dcfce7;color:var(--green);font-weight:600}
.seal.on .seal-ic{background:var(--green);color:#fff;border-color:var(--green)}
.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
/* PF — endereço (CEP-first), idade, e botão de salvar SEMPRE visível */
.end-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px 12px;margin-top:2px}
.end-grid>.efg{display:flex;flex-direction:column;grid-column:span 2}
.end-grid>.efg:nth-child(2){grid-column:span 4}
.end-grid>.efg:nth-child(4){grid-column:span 4}
.efg label{font-size:11px;color:var(--muted);margin-bottom:4px;font-weight:500}
.efg input{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;font-family:inherit;background:#fff;color:var(--ink)}
.efg input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(13,92,99,.1)}
.efg-cep{position:relative}
.cep-st{font-size:11px;margin-top:3px;min-height:13px}
.cep-st.go{color:var(--muted)} .cep-st.ok{color:var(--green)} .cep-st.err{color:var(--red)}
.idade-hint{display:inline-block;margin-top:5px;font-size:12px;color:var(--accent);font-weight:600}
/* Campo bloqueado (auto-preenchido pela CNPJá — "solidificado") + seção opcional da unidade */
.lock-hint{display:inline-block;margin-top:5px;font-size:11px;color:#0d5c63;font-weight:600;opacity:.85;cursor:pointer;border-bottom:1px dotted transparent}
.lock-hint:hover{opacity:1;border-bottom-color:currentColor}
.lock-hint.unlocked{color:#b45309;cursor:default;border-bottom:none}
.reg-form input.locked{background:#eef6f7;border-color:#cfe3e4;color:#334155;cursor:default;font-weight:600}
.reg-form input.locked:focus{box-shadow:none;border-color:#cfe3e4}
.unidade-det{margin:8px 0 2px;border:1px dashed #cbd5e1;border-radius:10px;padding:0 14px}
.unidade-det>summary{cursor:pointer;padding:11px 2px;font-size:13px;font-weight:600;color:#334155;list-style:none;user-select:none}
.unidade-det>summary::-webkit-details-marker{display:none}
.unidade-det>summary::before{content:"▸ ";color:#94a3b8}
.unidade-det[open]>summary::before{content:"▾ "}
.unidade-det>summary .opt{color:#94a3b8;font-weight:400}
.unidade-det .ed-grid{padding:4px 0 14px}
.cls-inline{font-size:.68rem;margin-left:9px;vertical-align:middle}
.reg-form .form-actions{position:sticky;bottom:0;background:#fff;margin:16px -24px -22px;padding:14px 24px 22px;border-top:1px solid var(--line);z-index:3}
.btn-ghost.dark{border-color:var(--line);color:var(--muted);background:#fff}
.btn-ghost.dark:hover{background:#f1f5f9}
kbd{font-family:ui-monospace,Menlo,monospace;font-size:10px;background:rgba(255,255,255,.25);border-radius:4px;padding:1px 5px;margin-left:4px}
#toasts{position:fixed;bottom:22px;right:22px;display:flex;flex-direction:column;gap:9px;z-index:200}
.toast{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--green);border-radius:10px;padding:11px 15px;font-size:13px;color:var(--ink);box-shadow:0 10px 30px rgba(15,23,42,.14);transform:translateX(120%);opacity:0;transition:.26s;min-width:200px}
.toast.in{transform:translateX(0);opacity:1}
.toast.err{border-left-color:var(--red)}
.toast-ic{width:20px;height:20px;border-radius:50%;background:var(--green);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}
.toast.err .toast-ic{background:var(--red)}

/* ---------- responsivo ---------- */
/* Drawer: em janela estreita a sidebar recolhe e o HAMBURGER da topbar abre (antes ela sumia SEM caminho de volta) */
.nav-burger{display:none;background:none;border:1px solid var(--line);border-radius:8px;padding:5px 9px;cursor:pointer;color:var(--ink);margin-right:10px}
.nav-burger .ti{font-size:18px;vertical-align:middle}
.nav-bdrop{position:fixed;inset:0;background:rgba(15,23,42,.35);z-index:19}
@media(max-width:880px){
  .app{grid-template-columns:1fr}
  .sidebar{position:fixed;left:-260px;transition:left .2s;z-index:20;width:248px}
  .sidebar.open{left:0}
  .nav-burger{display:inline-flex;align-items:center}
  .kpis{grid-template-columns:repeat(2,1fr)}
  .usum{display:none}
}
@media(min-width:881px){ .nav-bdrop{display:none!important} }

/* ===== Motor IRONCLAD completo — chaves, selos e reclassificação (passo 4) ===== */
.motor-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; }
.motor-switches { display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.sw-grp { display:inline-flex; align-items:center; gap:6px; }
.sw-lbl { font-size:.82rem; color:#64748b; font-weight:600; }
.sw { padding:5px 12px; border:1px solid #cbd5e1; background:#fff; color:#475569; border-radius:7px; font-size:.84rem; cursor:pointer; font-weight:600; }
.sw:hover { border-color:#0d5c63; }
.sw.on { background:#0d5c63; color:#fff; border-color:#0d5c63; }
.sw-check { display:inline-flex; align-items:center; gap:7px; font-size:.84rem; color:#334155; cursor:pointer; user-select:none; }
.sw-check input { width:15px; height:15px; accent-color:#0d5c63; }
.exp-btns { display:flex; gap:8px; }
.motor-msg { font-size:.82rem; color:#475569; margin:6px 0 10px; padding:6px 12px; background:#f0fdfa; border:1px solid #99f6e4; border-radius:7px; }
.motor-msg b { color:#0d5c63; }
.selo-warn { font-size:.8rem; color:#92400e; background:#fffbeb; border:1px solid #fcd34d; border-radius:6px; padding:5px 10px; margin:8px 0; }
.selo-warn.err { color:#991b1b; background:#fef2f2; border-color:#fca5a5; }
.selo-warn.ok { color:#166534; background:#f0fdf4; border-color:#86efac; }
.selo-modal { margin:8px 0; }
.fonte-tag { display:inline-block; font-size:.66rem; font-weight:700; color:#94a3b8; border:1px solid #cbd5e1; border-radius:4px; padding:0 5px; margin-left:7px; vertical-align:middle; letter-spacing:.03em; }
.papel-sel { font-size:.74rem; padding:1px 4px; border:1px solid #cbd5e1; border-radius:5px; background:#f8fafc; color:#0d5c63; margin-left:6px; cursor:pointer; font-weight:600; }
.papel-chk { font-size:.74rem; color:#0d5c63; margin-left:8px; cursor:pointer; user-select:none; font-weight:600; white-space:nowrap; }
.papel-chk input { vertical-align:middle; accent-color:#0d5c63; }
.lista-ro { font-size:.74rem; font-weight:700; color:#64748b; background:#f1f5f9; border:1px solid #cbd5e1; border-radius:6px; padding:3px 10px; }
.lista-nota { font-size:.82rem; color:#475569; background:#f0fdfa; border:1px solid #99f6e4; border-radius:7px; padding:7px 12px; margin:4px 0 10px; }
.lista-nota b { color:#0d5c63; }

/* ===== Título do Painel editável (nome do cliente/grupo) ===== */
.edit-grupo { background:none; border:none; cursor:pointer; font-size:1.05rem; opacity:.4; margin-right:10px; padding:2px 5px; border-radius:6px; vertical-align:middle; line-height:1; }
.edit-grupo:hover { opacity:1; background:#f1f5f9; }
.page-h1-sub { font-weight:inherit; }
.grupo-input { font-size:1.4rem; font-weight:800; padding:4px 12px; border:2px solid #0d5c63; border-radius:8px; min-width:55%; vertical-align:middle; font-family:inherit; color:#0f172a; }
.page-h1 .btn-primary.sm, .page-h1 .btn-ghost.sm { font-size:.8rem; vertical-align:middle; margin-left:8px; padding:6px 12px; }

/* ===== Controles do motor por empresa (dentro do card expandido) ===== */
.motor-ctrls { display:flex; flex-wrap:wrap; gap:10px 28px; align-items:center; margin:14px 0 4px; padding:11px 14px; background:#f8fafc; border:1px solid #e2e8f0; border-radius:10px; }
.mc-row { display:inline-flex; align-items:center; gap:10px; }
.mc-lbl { font-size:.82rem; color:#475569; font-weight:600; }
.mc-help { display:inline-flex; align-items:center; justify-content:center; width:15px; height:15px; border-radius:50%; background:#cbd5e1; color:#fff; font-size:.62rem; font-weight:800; cursor:help; }
.mc-help:hover { background:#0d5c63; }
.seg { display:inline-flex; background:#e2e8f0; border-radius:9px; padding:3px; gap:2px; }
.seg-opt { border:none; background:none; padding:5px 14px; border-radius:6px; font-size:.8rem; font-weight:700; color:#64748b; cursor:pointer; transition:color .15s, background .15s, box-shadow .15s; }
.seg-opt.on { background:#fff; color:#0d5c63; box-shadow:0 1px 2px rgba(15,23,42,.12); }
.seg-opt:not(.on):hover { color:#0d5c63; }
.toggle { position:relative; width:44px; height:25px; border-radius:999px; border:none; background:#cbd5e1; cursor:pointer; padding:0; transition:background .22s ease; flex:none; }
.toggle.on { background:#0d5c63; }
.toggle:focus-visible { outline:2px solid #0d5c63; outline-offset:2px; }
.toggle-knob { position:absolute; top:3px; left:3px; width:19px; height:19px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(15,23,42,.3); transition:transform .22s cubic-bezier(.4,1.3,.6,1); }
.toggle.on .toggle-knob { transform:translateX(19px); }
.page-h1 .edit-grupo { margin-left:10px; margin-right:0; }

/* ===== Links: sócio clicável, contrato clicável, fonte contábil desabilitada ===== */
.socio-chip.linkable { cursor:pointer; }
.socio-chip.linkable:hover { background:#d9f2f0; border-color:#0d5c63; color:#0d5c63; }
.seg-opt:disabled { opacity:.4; cursor:not-allowed; }
.seg-opt:disabled:hover { color:#64748b; }
#ctab tr.clickable-row { cursor:pointer; }
#ctab tr.clickable-row:hover { background:#f0fdfa; }

/* ===== Explorador de Dívidas / Passivos ===== */
.pv-head { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:14px; }
.pv-head .lista-tit { font-size:1.3rem; font-weight:800; color:#0f172a; display:flex; align-items:center; gap:8px; }
.pv-head-right { display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.pv-group-toggle { display:inline-flex; align-items:center; gap:6px; font-size:.8rem; color:#64748b; font-weight:600; }
.pv-gt { border:1px solid #cbd5e1; background:#fff; color:#475569; padding:4px 12px; border-radius:7px; font-size:.82rem; font-weight:600; cursor:pointer; }
.pv-gt.on { background:#0d5c63; color:#fff; border-color:#0d5c63; }
.pv-hero { display:flex; gap:16px; flex-wrap:wrap; align-items:stretch; margin-bottom:16px; }
.pv-hero-total { background:linear-gradient(135deg,#0d5c63,#0a474d); color:#fff; border-radius:14px; padding:18px 26px; min-width:230px; display:flex; flex-direction:column; justify-content:center; box-shadow:0 4px 16px rgba(13,92,99,.18); }
.pv-hero-l { font-size:.74rem; opacity:.82; text-transform:uppercase; letter-spacing:.05em; font-weight:600; }
.pv-hero-v { font-size:2rem; font-weight:800; line-height:1.1; margin:4px 0; }
.pv-hero-n { font-size:.78rem; opacity:.85; }
.pv-stats { display:flex; gap:12px; flex:1; flex-wrap:wrap; }
.pv-stat { flex:1; min-width:165px; background:#fff; border:1px solid #e2e8f0; border-radius:12px; padding:14px 16px; display:flex; align-items:center; gap:12px; }
.pv-stat-ic { font-size:1.5rem; }
.pv-stat-v { font-size:1.15rem; font-weight:700; color:#0f172a; }
.pv-stat-l { font-size:.8rem; color:#64748b; font-weight:600; }
.pv-stat-l span { color:#94a3b8; font-weight:400; }
.pv-filters { background:#f8fafc; border:1px solid #e2e8f0; border-radius:12px; padding:12px 14px; margin-bottom:16px; }
.pv-frow { display:flex; gap:8px; flex-wrap:wrap; align-items:flex-end; }
.pv-frow + .pv-frow { margin-top:11px; }
.pv-fsep { width:1px; height:24px; background:#cbd5e1; margin:0 4px; align-self:center; }
.pv-chip { border:1px solid #cbd5e1; background:#fff; color:#475569; padding:6px 15px; border-radius:999px; font-size:.82rem; font-weight:600; cursor:pointer; transition:all .12s; }
.pv-chip:hover { border-color:#0d5c63; color:#0d5c63; }
.pv-chip.on { background:#0d5c63; color:#fff; border-color:#0d5c63; }
.pv-fsel { display:inline-flex; flex-direction:column; gap:3px; font-size:.7rem; color:#64748b; font-weight:600; }
.pv-fsel select, .pv-fsel input { border:1px solid #cbd5e1; border-radius:7px; padding:6px 10px; font-size:.85rem; color:#0f172a; background:#fff; font-family:inherit; min-width:135px; }
.pv-fsearch input { min-width:210px; }
.pv-clear { border:none; background:#fee2e2; color:#991b1b; padding:7px 13px; border-radius:7px; font-size:.78rem; font-weight:600; cursor:pointer; }
.pv-clear:hover { background:#fecaca; }
.pv-results { display:flex; flex-direction:column; gap:8px; }
.pv-group { border:1px solid #e2e8f0; border-radius:10px; overflow:hidden; background:#fff; }
.pv-group-head { display:flex; align-items:center; gap:11px; padding:13px 16px; cursor:pointer; user-select:none; }
.pv-group-head:hover { background:#f8fafc; }
.pv-caret { font-size:.7rem; color:#94a3b8; transition:transform .15s; }
.pv-group-head.open .pv-caret { transform:rotate(90deg); }
.pv-group-n { font-weight:700; color:#0f172a; flex:1; }
.pv-group-meta { font-size:.85rem; color:#64748b; }
.pv-group-meta b { color:#0d5c63; }
.pv-group-body { display:none; border-top:1px solid #f1f5f9; }
.pv-row { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; text-align:left; border:none; background:none; border-bottom:1px solid #f1f5f9; padding:10px 16px; cursor:pointer; font-family:inherit; }
.pv-row:last-child { border-bottom:none; }
.pv-row:hover { background:#f0fdfa; }
.pv-row-main { display:flex; align-items:center; gap:11px; min-width:0; }
.pv-row-tic { font-size:1rem; flex:none; }
.pv-row-tic.bk { width:24px; height:24px; display:inline-flex; align-items:center; justify-content:center; }
.pv-row-tic.bk img, .pv-row-tic.bk svg { width:22px; height:22px; object-fit:contain; border-radius:4px; }
.pv-row-tic.bk .bank-logo.gen { width:22px; height:22px; font-size:.5rem; }
/* Tributárias consolidadas por CNPJ × esfera */
.pv-cons-wrap { padding:4px 8px 10px; }
.pv-cons { width:100%; border-collapse:collapse; font-size:.82rem; }
.pv-cons th { text-align:left; font-weight:600; color:#64748b; font-size:.7rem; text-transform:uppercase; letter-spacing:.03em; padding:6px 10px; border-bottom:1px solid #e2e8f0; }
.pv-cons th.c, .pv-cons td.c { text-align:center; }
.pv-cons th.r, .pv-cons td.r { text-align:right; }
.pv-cons td { padding:8px 10px; border-bottom:1px solid #f1f5f9; }
.pv-cons td.b { font-weight:700; }
.pv-cons-row { cursor:pointer; }
.pv-cons-row:hover { background:#f0f9fa; }
.pv-cons-emp { font-weight:600; color:#0f172a; }
.pv-cons-cnpj { font-size:.72rem; color:#94a3b8; margin-top:1px; }
.pv-cn { display:inline-block; min-width:1.6em; font-variant-numeric:tabular-nums; font-weight:600; color:#334155; }
.pv-cn.z { color:#cbd5e1; font-weight:400; }
.pv-cons-tot td { border-top:2px solid #e2e8f0; border-bottom:none; font-weight:700; color:#0f172a; background:#f8fafc; }
.pv-cons-tot td.c { color:#475569; }
.pv-cons-hint { font-size:.74rem; color:#94a3b8; padding:8px 10px 2px; }
.pv-row-txt { min-width:0; }
.pv-row-t { font-weight:600; color:#0f172a; font-size:.9rem; }
.pv-row-m { font-size:.78rem; color:#64748b; }
.pv-row-v { font-weight:700; color:#0f172a; white-space:nowrap; display:flex; flex-direction:column; align-items:flex-end; gap:2px; }
.pv-row-st { font-size:.64rem; font-weight:600; color:#64748b; background:#f1f5f9; padding:1px 6px; border-radius:4px; text-transform:none; }
.pv-more { padding:9px 16px; font-size:.78rem; color:#94a3b8; font-style:italic; }
.pv-empty { text-align:center; padding:44px; color:#64748b; font-size:.95rem; }
.pv-clear-inline { color:#0d5c63; background:none; border:none; cursor:pointer; text-decoration:underline; font-weight:600; font-size:inherit; }

/* ===== Polish dos filtros de Dívidas/Passivos — larguras uniformes + alinhamento ===== */
.pv-filters .pv-frow { gap:10px 12px; }
.pv-fsel { flex:1 1 155px; min-width:0; gap:5px; }
.pv-fsel > span { text-transform:uppercase; letter-spacing:.04em; font-size:.65rem; color:#94a3b8; font-weight:700; }
.pv-fsel select, .pv-fsel input { width:100%; min-width:0; max-width:100%; height:38px; box-sizing:border-box; text-overflow:ellipsis; }
.pv-fsel select:focus, .pv-fsel input:focus { outline:none; border-color:#0d5c63; box-shadow:0 0 0 3px rgba(13,92,99,.10); }
.pv-fsearch { flex:2.2 1 230px; }
.pv-clear { align-self:flex-end; height:38px; }

/* ===== Cabeçalho do grupo: nome fantasia + CNPJ pequeno embaixo (padrão da home) ===== */
.pv-group-id { flex:1; min-width:0; display:flex; flex-direction:column; gap:1px; }
.pv-group-id .pv-group-n { flex:none; line-height:1.2; }
.pv-group-cnpj { font-size:.74rem; color:#94a3b8; font-weight:400; line-height:1.15; }

/* ===== Dossiê da Pessoa ===== */
.dossie-head { display:flex; align-items:center; gap:16px; margin-bottom:20px; flex-wrap:wrap; }
.dossie-back { border:none; background:none; color:#0d5c63; font-weight:600; cursor:pointer; font-size:.85rem; padding:4px 0; }
.dossie-back:hover { text-decoration:underline; }
.dossie-id { flex:1; min-width:200px; }
.dossie-nome { font-size:1.5rem; font-weight:800; color:#0f172a; line-height:1.1; }
.dossie-sub { font-size:.85rem; color:#64748b; display:flex; align-items:center; gap:8px; margin-top:3px; flex-wrap:wrap; }
.dossie-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(380px, 1fr)); gap:16px; align-items:start; }
.dossie-sec { background:#fff; border:1px solid #e2e8f0; border-radius:12px; padding:16px 18px; }
.dossie-sec-h { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:10px; }
.dossie-sec-h h3 { margin:0; font-size:1rem; color:#0f172a; }
.dossie-sec-sub { font-size:.72rem; color:#0d5c63; font-weight:700; background:#eef6f7; border:1px solid #d6e7e9; border-radius:20px; padding:2px 10px; white-space:nowrap; flex:0 0 auto; }
.dossie-list { display:flex; flex-direction:column; }
.dossie-row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 0; border-bottom:1px solid #f1f5f9; }
.dossie-row:last-child { border-bottom:none; }
.dossie-row-l { min-width:0; }
.dossie-row-t { font-weight:600; color:#0f172a; font-size:.9rem; }
.dossie-row-m { font-size:.76rem; color:#94a3b8; }
/* Cartão de Qualificação (topo do dossiê da pessoa) */
.ql-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;margin-bottom:18px;box-shadow:0 1px 3px rgba(15,23,42,.05)}
.ql-acc{height:3px;background:linear-gradient(90deg,#0d5c63,#2f9aa3)}
.ql-hd{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 18px 4px}
.ql-hd h3{margin:0;font-size:1rem;color:#0f172a;letter-spacing:.01em}
.ql-src{display:inline-flex;align-items:center;gap:6px;font-size:.7rem;font-weight:700;color:#0d5c63;background:#eef6f7;border:1px solid #d6e7e9;border-radius:20px;padding:3px 11px;white-space:nowrap}
.ql-ok{color:#15803d}
.ql-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;padding:6px 18px 16px}
.ql-row{display:flex;flex-direction:column;gap:3px;padding:9px 0;border-bottom:1px solid #f1f5f9;min-width:0}
.ql-row.full{grid-column:1 / -1}
.ql-l{font-size:.65rem;color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.ql-v{font-size:.87rem;color:#0f172a;font-weight:500;word-break:break-word}
.ql-v em{color:#64748b;font-style:normal}
.ql-v b{color:#0d5c63;font-weight:700}
.ql-mono{font-family:ui-monospace,Menlo,monospace;font-size:.82rem}
.ql-empty-b{padding:14px 18px;font-size:.82rem;color:#94a3b8;line-height:1.5}
@media (max-width:640px){.ql-grid{grid-template-columns:1fr}}
/* Hero card do dossiê (pessoa + empresa) */
.dossie-back{margin-bottom:10px}
.hero{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;box-shadow:0 2px 10px rgba(15,23,42,.06);margin-bottom:16px}
.hero-top{display:flex;align-items:flex-start;gap:15px;padding:18px 20px;background:linear-gradient(135deg,#f1f8f8,#e7f2f2);border-bottom:1px solid #e2eeee}
.hero-av{flex:none;width:54px;height:54px;border-radius:14px;background:linear-gradient(135deg,#0d5c63,#2f9aa3);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;letter-spacing:.5px;box-shadow:0 3px 8px rgba(13,92,99,.28);overflow:hidden}
.hero-av img{width:100%;height:100%;object-fit:contain;background:#fff}
.hero-who{flex:1;min-width:0}
.hero-nm{font-size:21px;font-weight:800;letter-spacing:-.01em;line-height:1.18;color:#0f172a;word-break:break-word}
.hero-rl{font-size:12.5px;color:#0d5c63;font-weight:600;margin-top:3px}
.hero-chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;padding:8px 20px 16px}
.ql-src.ok{background:#ecfdf3;border-color:#bbf7d0;color:#15803d}
@media (max-width:640px){.hero-grid{grid-template-columns:1fr}.hero-top{flex-wrap:wrap}}
.dossie-row-r { display:flex; align-items:center; gap:8px; white-space:nowrap; }
.dossie-papel { font-size:.7rem; font-weight:700; color:#0d5c63; background:#e6fffa; padding:2px 8px; border-radius:5px; }
.dossie-part { font-size:.82rem; font-weight:700; color:#0f172a; }
.dossie-ate { font-size:.72rem; color:#94a3b8; }
.dossie-resumo { font-size:.85rem; color:#475569; margin-bottom:8px; padding:8px 12px; background:#fef2f2; border:1px solid #fecaca; border-radius:8px; }
.dossie-total{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:11px 14px;background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:10px}
.dossie-total-l{font-size:.74rem;color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.dossie-total-v{font-size:1.15rem;font-weight:800;color:#b91c1c;font-variant-numeric:tabular-nums}
.dossie-row .bank-logo{width:18px;height:18px;object-fit:contain;border-radius:4px;flex:0 0 auto}
.dossie-empty { font-size:.85rem; color:#94a3b8; padding:6px 0; }
.dossie-fase2 { display:inline-block; font-size:.66rem; font-weight:700; color:#92400e; background:#fffbeb; border:1px solid #fcd34d; border-radius:5px; padding:1px 7px; margin-left:4px; white-space:nowrap; }
.lrow-edit { cursor:pointer; opacity:.45; padding:2px 7px; border-radius:6px; font-size:.95rem; }
.lrow-edit:hover { opacity:1; background:#f1f5f9; }

/* ===== Dossiê: faixa de exposição consolidada + link de co-sócio ===== */
.dossie-expo { display:flex; gap:12px; flex-wrap:wrap; margin-bottom:18px; }
.dossie-expo-item { flex:1; min-width:190px; background:#fff; border:1px solid #e2e8f0; border-radius:12px; padding:14px 18px; border-left:4px solid #0d5c63; }
.dossie-expo-v { display:block; font-size:1.4rem; font-weight:800; color:#0f172a; line-height:1.1; }
.dossie-expo-v.red { color:#dc2626; }
.dossie-expo-l { display:block; font-size:.76rem; color:#64748b; margin-top:4px; }
.dossie-link { cursor:pointer; margin:0 -8px; padding-left:8px; padding-right:8px; border-radius:6px; }
.dossie-link:hover { background:#f0fdfa; }
.dossie-go { color:#0d5c63; font-weight:700; opacity:.35; transition:opacity .12s; }  /* visível sem hover (affordance em touch) */
.dossie-link:hover .dossie-go { opacity:1; }
/* destaque da FISGA patrimonial (o diferencial do módulo jurídico) */
.dossie-sec.fisga { border-left:4px solid #0d5c63; background:#f7fdfc; }
/* ===== Tarefas + Cockpit (Área de Trabalho) ===== */
.tarefa-row { align-items:center; gap:10px; }
.tarefa-row .tar-body { cursor:pointer; }
.tar-check { flex:0 0 auto; width:22px; height:22px; border:1.5px solid #cbd5e1; border-radius:50%; background:#fff; color:transparent; cursor:pointer; font-size:12px; line-height:1; display:inline-flex; align-items:center; justify-content:center; }
.tar-check:hover { border-color:var(--accent); color:#cbd5e1; }
.tar-venc { border-left:3px solid #dc2626; padding-left:8px; }
.tarefa-feita { opacity:.5; }
.tarefa-feita .dossie-row-t { text-decoration:line-through; }
.tar-undo, .tar-reabrir { background:none; border:none; color:var(--accent); cursor:pointer; font-size:12px; text-decoration:underline; }
.prazo-vencido { color:#dc2626; font-weight:700; } .prazo-hoje { color:#b45309; font-weight:700; } .prazo-amanha { color:#0d5c63; } .prazo-futuro { color:#64748b; } .prazo-sem { color:#94a3b8; }
.prazo-row { align-items:center; gap:10px; }
.prazo-row .prz-body { cursor:pointer; flex:1 1 auto; }
.prz-venc { border-left:3px solid #dc2626; padding-left:8px; }
.prazo-feito { opacity:.5; }
.prazo-feito .dossie-row-t { text-decoration:line-through; }
.prz-cumprir, .pub-prazo, .pub-ia { background:none; border:1px solid var(--accent); color:var(--accent); border-radius:6px; cursor:pointer; font-size:12px; padding:2px 8px; margin-left:6px; }
.prz-cumprir:hover, .pub-prazo:hover, .pub-ia:hover { background:var(--accent); color:#fff; }
.pub-ia { border-style:dashed; }   /* IA = sugestão (tracejado) */
/* Cockpit cross-cliente (Fatia 2a-plus) */
.ck-cli { font-weight:700; color:var(--accent); }
.ck-lente { font-size:.62em; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:#fff; background:var(--accent); border-radius:999px; padding:2px 8px; vertical-align:middle; }
/* Lente Escritório (Fatia 2a) */
.office-guard { max-width:560px; margin:48px auto; text-align:center; color:#475569; }
.office-guard .og-ic { font-size:2.4rem; color:var(--accent); opacity:.8; }
.office-guard .og-ic .ti { font-size:2.4rem; }
.office-guard h2 { margin:8px 0; color:#0f172a; }
.office-guard p { margin:6px 0; }
.off-grp { background:#fff; border:1px solid #e2e8f0; border-radius:12px; padding:6px 16px; margin-bottom:14px; }
.off-grp-h { font-size:.8rem; font-weight:800; color:#334155; display:flex; align-items:center; gap:6px; padding:8px 0 4px; border-bottom:1px solid #f1f5f9; margin-bottom:2px; }
.off-grp-h .ti { color:var(--accent); }
.off-grp-n { margin-left:auto; background:#f1f5f9; color:#64748b; border-radius:999px; padding:1px 9px; font-size:.72rem; }
.off-row { cursor:pointer; }
.off-row:hover { background:#f8fafc; }
.ck-head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:14px; }
.ck-head h2 { margin:0; font-size:1.25rem; color:#0f172a; }
.ck-stat { font-size:.85rem; color:#64748b; }
.ck-quick { display:flex; gap:8px; margin-bottom:16px; }
.ck-quick #ck-q { flex:1; padding:9px 12px; border:1px solid var(--line); border-radius:8px; }
.ck-quick #ck-qd { border:1px solid var(--line); border-radius:8px; padding:0 8px; }
.ck-list { display:flex; flex-direction:column; background:#fff; border:1px solid #e2e8f0; border-radius:12px; padding:6px 16px; }
.ck-grp { font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:#94a3b8; margin:12px 0 2px; display:flex; align-items:center; gap:6px; }
.ck-grp-venc { color:#dc2626; }
.ck-sem, .ck-feitas { margin-top:12px; }
.ck-sem summary, .ck-feitas summary { cursor:pointer; font-size:.8rem; color:#64748b; font-weight:700; padding:6px 0; }
.ck-vazio { padding:28px; text-align:center; color:#64748b; }
.dossie-row-click{cursor:pointer;border-radius:6px;transition:background .12s}
.dossie-row-click:hover{background:#f8fafc}
.dossie-row-click:hover .dossie-go{opacity:1}
.hero-actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}
.hero-conf{font-size:.7rem;font-weight:700;color:#15803d;background:#ecfdf3;border:1px solid #bbf7d0;border-radius:20px;padding:3px 10px;white-space:nowrap}

/* ===== Filiais: seções recolhíveis (setinha) ===== */
.fil-block { margin-bottom:6px; }
.fil-sec { display:flex; align-items:center; gap:8px; width:100%; text-align:left; border:none; background:none; cursor:pointer; font-family:inherit; padding:7px 2px; }
.fil-caret { font-size:.62rem; color:#94a3b8; transition:transform .15s; flex:none; }
.fil-block.open .fil-caret { transform:rotate(90deg); }
.fil-sec-body { display:none; }
.fil-block.open .fil-sec-body { display:block; }

/* ===== Overview: totais do ano vigente + box de cobertura (BP por ano) ===== */
.kpis-3{grid-template-columns:repeat(3,1fr)}
/* (.kpi-grp-h e .cov-box* removidos 03/07 — CSS morto: legenda/toolbar do dashboard saíram; usa-se .cov-det) */
.cov-h{font-size:12.5px;color:#0f172a;margin-bottom:8px}
.cov-h b{font-weight:800}
.cov-sub{color:var(--muted);font-weight:400}
.cov-list{display:flex;flex-wrap:wrap;gap:6px}
.cov-chip{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:7px;padding:3px 9px;font-size:12px;font-weight:600;color:#0f172a}
.cov-cnpj{font-size:10.5px;color:var(--muted);font-weight:500}
@media(max-width:720px){.kpis-3{grid-template-columns:repeat(2,1fr)}}

/* ===== Topo do dashboard: badge "Cliente" + consolidado em cards limpos ===== */
.page-h1{ font-size:14px; font-weight:400; margin:2px 0 20px; line-height:1.2 }
.page-h1 .cli-lbl{ display:block; font-size:10px; letter-spacing:.13em; text-transform:uppercase; color:var(--muted); font-weight:600; margin-bottom:6px }
.page-h1 .cli-pill{ display:inline-flex; align-items:center; gap:8px; vertical-align:middle; background:#fff; border:1px solid var(--line); border-radius:999px; padding:6px 14px 6px 13px; font-size:15px; font-weight:600; color:#0f172a; box-shadow:0 1px 2px rgba(15,23,42,.05) }
.page-h1 .cli-pill::before{ content:""; flex:0 0 auto; width:7px; height:7px; border-radius:50%; background:var(--accent) }
.cons-head{ display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:6px; margin:0 0 11px }
.cons-title{ font-size:13.5px; font-weight:700; color:#334155 }
.cons-cov{ font-size:12px; color:var(--muted) }
.cov-det{ display:inline; margin-left:6px }
.cov-det>summary{ display:inline; cursor:pointer; color:var(--accent); border-bottom:1px dotted var(--accent); list-style:none }
.cov-det>summary::-webkit-details-marker{ display:none }
.cov-det .cov-list{ display:flex; flex-wrap:wrap; gap:7px; margin-top:9px }
.cov-chip{ display:inline-flex; gap:5px; align-items:baseline; font-size:11.5px; background:#fff; border:1px solid var(--line); border-radius:7px; padding:4px 9px; color:#334155 }
.cov-cnpj{ font-size:10.5px; color:var(--muted) }
.kpi.ac{ border-top:3px solid var(--accent) }
.kpi.pc{ border-top:3px solid #b45309 }
.kpi.pl{ border-top:3px solid #15803d }

/* ===== Creditamento (Deep Dive / Frente B) ===== */
.cr-regua{font-size:12.5px;color:var(--muted);background:var(--card);border:1px solid var(--line);border-radius:10px;padding:9px 13px;margin:0 0 16px}
.cr-empty{font-size:13px;color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:10px;padding:12px 14px;margin:0 0 16px}
.cr-empty code{background:#fff7ed;border:1px solid #fed7aa;border-radius:5px;padding:1px 6px;font-size:12px}
.cr-teses{display:flex;flex-direction:column;gap:10px}
.cr-tese{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.cr-t-head{display:flex;align-items:center;gap:12px;padding:13px 16px}
.cr-tese.has .cr-t-head{cursor:pointer}
.cr-tese.has .cr-t-head:hover{background:#f6fafa}
.cr-caret{font-size:11px;color:#94a3b8;width:12px;flex:none;transition:transform .15s}
.cr-tese.open .cr-caret{transform:rotate(90deg)}
.cr-t-id{flex:1;min-width:0}
.cr-t-nome{font-size:14.5px;font-weight:600;color:#0f172a}
.cr-t-sub{font-size:11.5px;color:var(--muted)}
.cr-t-r{text-align:right;min-width:110px}
.cr-t-v{font-size:16px;font-weight:700;color:#0f172a}
.cr-t-c{font-size:11px;color:var(--muted)}
.cr-badge{font-size:11px;font-weight:700;padding:2px 9px;border-radius:6px;white-space:nowrap}
.cr-ok{background:#e1f5ee;color:#0f6e56}
.cr-warn{background:#fef3c7;color:#b45309}
.cr-risk{background:#fef2f2;color:#b91c1c}
.cr-na{background:#f1f5f9;color:#64748b}
.cr-t-body{display:none;border-top:1px solid var(--line)}
.cr-tese.open .cr-t-body{display:block}
.cr-rows{display:flex;flex-direction:column}
.cr-rowwrap{border-bottom:1px solid #f1f5f9}
.cr-rowwrap:last-child{border-bottom:none}
.cr-row{display:flex;align-items:center;gap:12px;padding:9px 16px;font-size:13px}
.cr-r-loja{flex:1;min-width:0}
.cr-r-val{font-weight:700;color:#0f172a;min-width:90px;text-align:right}
.cr-ncmbtn,.cr-conf{border:1px solid var(--line);background:#fff;border-radius:6px;padding:3px 10px;font-size:11.5px;cursor:pointer;color:#475569}
.cr-ncmbtn:hover,.cr-conf:hover{background:#f1f5f9}
.cr-conf.on{background:#e1f5ee;border-color:#9fe1cb;color:#0f6e56}
.cr-ncms{display:none;flex-wrap:wrap;gap:6px;padding:0 16px 11px 16px}
.cr-rowwrap.open .cr-ncms{display:flex}
.cr-ncm{font-size:11px;background:#f8fafc;border:1px solid var(--line);border-radius:6px;padding:2px 8px;color:#334155}

/* ===== Deep Dive: cobertura por empresa × ano (3 anos rolantes) ===== */
.cob-grid{margin-top:6px}
.cob-h{display:grid;grid-template-columns:1fr 92px 92px 92px;gap:8px;padding:0 14px 6px;font-size:12px;color:var(--muted)}
.cob-yh{text-align:center}
.cob-yh.cur{color:var(--accent);font-weight:700}
.cob-list{display:flex;flex-direction:column;gap:7px}
.cob-r{display:grid;grid-template-columns:1fr 92px 92px 92px;gap:8px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:11px;padding:10px 14px}
.cob-emp{min-width:0}
.cob-nm{font-size:14px;font-weight:600;color:#0f172a;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.cob-sub{display:flex;align-items:center;gap:8px;margin-top:3px;flex-wrap:wrap}
.cob-cell{border:none;border-radius:8px;padding:8px 4px;font-size:13px;font-weight:700;text-align:center;cursor:pointer;font-family:inherit}
.cob-cell.sm{padding:2px 8px;font-size:11.5px;font-weight:600;cursor:default}
.cob-full{background:#e1f5ee;color:#0f6e56}
.cob-part{background:#fef3c7;color:#b45309}
.cob-none{background:#f1f5f9;color:#94a3b8}
.cob-cell:not(.sm):hover{outline:2px solid var(--accent);outline-offset:-2px}
.est-badge{font-size:10px;font-weight:700;padding:1px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.03em}
.est-enc{background:#fef2f2;color:#b91c1c}
.est-vend{background:#fffbeb;color:#b45309}
.reg-tag{font-size:11px;font-weight:600;padding:1px 9px;border-radius:6px;background:#eef2ff;color:#4338ca;white-space:nowrap}
.reg-tag.none{background:#f1f5f9;color:#94a3b8;font-weight:500}
.cob-leg{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 2px 0;font-size:12px;color:var(--muted)}
.cob-leg-note{margin-left:auto;font-size:11px;max-width:60%;text-align:right}
.det-estab{padding:8px 0;border-top:1px solid #f1f5f9}
.det-estab:first-child{border-top:none}
.det-estab-h{font-weight:600;font-size:13px;color:#0f172a;margin-bottom:3px}
.det-tp{font-size:12px;color:#475569;margin:2px 0}

/* ===== Empresas: selos na lista (formato card) + jump do dossiê ===== */
.lbadge{display:inline-block;font-size:10px;font-weight:700;padding:1px 7px;border-radius:5px;margin-left:6px;background:#e0e7ff;color:#3730a3;vertical-align:middle}
.lbadge.tax{background:#fef2f2;color:#b91c1c}
.lbadge.reg{background:#eef2ff;color:#4338ca}
.lbadge.enc{background:#fef2f2;color:#b91c1c;text-transform:uppercase;letter-spacing:.02em}
.lbadge.cls{background:#e6f3f4;color:#0d5c63}
.lbadge.falta{background:#fff7ed;color:#b45309;border:1px dashed #fdba74}
/* status de PROCESSO (escala de grau; ativo NÃO tem badge): suspenso=âmbar, arquivado/baixado=cinza neutro */
.lbadge.proc-suspenso{background:#fff7ed;color:#b45309}
.lbadge.proc-arquivado,.lbadge.proc-baixado{background:#f1f5f9;color:#64748b}
.dossie-jump{color:var(--accent);cursor:pointer;font-weight:600}
.dossie-jump:hover{text-decoration:underline}

/* ===== Deep Dive: seletor Todos × Só ativos na RFB ===== */
.cob-bar{display:flex;align-items:center;gap:8px;margin:2px 2px 12px}
.cob-bar-lbl{font-size:12px;color:var(--muted)}
.cob-tg{border:1px solid var(--line);background:#fff;border-radius:7px;padding:4px 12px;font-size:12px;cursor:pointer;color:#475569;font-family:inherit}
.cob-tg.on{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}

/* ===== Auto-preenchimento CNPJá (status no cadastro de Empresa) ===== */
.cnpja-status{font-size:11.5px;margin-top:5px;min-height:14px}
.cnpja-status.go{color:#0d5c63}
.cnpja-status.ok{color:#15803d}
.cnpja-status.err{color:#b91c1c}
.cnpja-status.warn{color:#b45309}
.cnpja-upg{margin-top:6px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--accent);background:#fff;color:var(--accent);border-radius:8px;padding:5px 10px;font-size:12px;cursor:pointer}
.cnpja-upg:hover{background:#e6f3f4}
.cnpja-upg:disabled{opacity:.5;cursor:default}
.sug-hint{display:block;font-size:11px;color:var(--accent);margin-top:4px;font-weight:600}

/* ===== Logo ANV (vetor oficial, inline → currentColor temeia claro/escuro) ===== */
.brand{flex-direction:column;align-items:flex-start;gap:7px}
.anv-logo{display:block;height:auto}
.brand .anv-logo{width:104px;color:#fff}
.anv-logo.big{width:164px;color:#2b3744;margin:2px auto 16px}

/* ===== Badge do cliente na sidebar (rótulo "Cliente" + pill com ponto teal) ===== */
.brand-txt{
  position:relative;
  display:inline-flex; align-items:center; gap:7px; max-width:190px;
  background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.10);
  border-radius:999px; padding:5px 12px 5px 11px;
  font-size:12.5px; line-height:1; color:#fff; white-space:nowrap;
}
.brand-txt::before{ content:""; flex:0 0 auto; width:6px; height:6px; border-radius:50%; background:#2f9aa3; }
.brand-txt::after{ content:"Cliente"; position:absolute; left:3px; top:-15px;
  font-size:9.5px; letter-spacing:.14em; text-transform:uppercase; font-weight:600; color:var(--side-mut); }
/* botão que torna o badge um SELETOR de Cliente Master (mantém o pill .brand-txt intacto p/ o rename ao vivo) */
.brand-switch{ margin-top:30px; margin-bottom:6px; display:inline-flex; align-items:center; gap:6px;
  background:none; border:none; padding:0; cursor:pointer; color:inherit; font:inherit; text-align:left; }
.brand-switch:hover .brand-txt{ background:rgba(255,255,255,.10); border-color:rgba(255,255,255,.20); }
.brand-chev{ display:inline-flex; color:var(--side-mut); }
.brand-chev .ti{ font-size:15px; }
.brand-switch:hover .brand-chev{ color:#fff; }

/* ===== Modal: seletor de Cliente Master ===== */
.cm-h{ display:flex; align-items:center; gap:8px; }
.cm-h .ti{ font-size:18px; color:var(--accent); }
.mfa-qr{ text-align:center; margin:14px 0; }
.mfa-qr img{ border:1px solid var(--line); border-radius:10px; padding:10px; background:#fff; }
.mfa-secret{ font-size:12.5px; color:var(--muted); text-align:center; margin-bottom:14px; word-break:break-all; }
.mfa-secret code{ background:var(--bg); padding:2px 6px; border-radius:6px; }
.mfa-recovery-hint{ font-size:12px; color:var(--muted); margin-top:14px; }
.eq-mfa-remove{ background:transparent; border:none; color:#94a3b8; font-size:12px; cursor:pointer; text-decoration:underline; padding:0; margin-left:8px; }
.eq-mfa-remove:hover{ color:#475569; }
.cm-q{ width:100%; box-sizing:border-box; margin:12px 0 10px; padding:9px 12px; border:1px solid var(--line);
  border-radius:9px; font-size:14px; background:#fff; }
.cm-q:focus{ outline:none; border-color:var(--accent); }
.cm-list{ max-height:46vh; overflow:auto; display:flex; flex-direction:column; gap:6px; margin-bottom:12px; }
.cm-item{ display:flex; align-items:center; gap:10px; padding:11px 13px; border:1px solid var(--line);
  border-radius:10px; cursor:pointer; background:#fff; transition:border-color .12s, background .12s; }
.cm-item:hover{ border-color:var(--accent); background:#f0fdfa; }
.cm-item.ativo{ border-color:var(--accent); background:#ecfeff; cursor:default; }
.cm-dot{ flex:0 0 auto; width:8px; height:8px; border-radius:50%; background:#cbd5e1; }
.cm-item.ativo .cm-dot{ background:var(--accent); }
.cm-nm{ flex:1; min-width:0; display:flex; flex-direction:column; gap:1px; }
.cm-nm b{ font-size:14px; color:#0f172a; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cm-resp{ font-size:11.5px; color:#94a3b8; }
.cm-tag{ flex:0 0 auto; font-size:10.5px; font-weight:600; color:var(--accent); background:#cffafe;
  padding:3px 9px; border-radius:999px; text-transform:uppercase; letter-spacing:.06em; }
.cm-go{ flex:0 0 auto; color:#cbd5e1; display:inline-flex; }
.cm-item:hover .cm-go{ color:var(--accent); }
.cm-novo{ width:100%; display:inline-flex; align-items:center; justify-content:center; gap:6px;
  border:1px dashed #94a3b8; background:#fff; border-radius:10px; padding:11px; cursor:pointer;
  font-size:13px; font-weight:600; color:#475569; }
.cm-novo:hover{ border-color:var(--accent); color:var(--accent); background:#f0fdfa; }
.cm-novo .ti{ font-size:15px; }
.cm-form{ display:flex; flex-direction:column; gap:5px; margin:12px 0 16px; }
.cm-form label{ font-size:12px; font-weight:600; color:#475569; margin-top:7px; }
.cm-form input{ padding:9px 12px; border:1px solid var(--line); border-radius:9px; font-size:14px; }
.cm-form input:focus{ outline:none; border-color:var(--accent); }
.cm-actions{ display:flex; justify-content:space-between; gap:10px; }

/* ===== Diagnóstico: barra de peso menor, garantidores PJ + modal, logos de banco ===== */
.ebar.sm{height:5px;border-radius:3px}
.ebar.sm i{height:5px}
.gar-row{cursor:pointer}
.gx-tag{font-size:9.5px;font-weight:700;background:#fef2f2;color:#b91c1c;border-radius:4px;padding:0 5px;vertical-align:middle}
.gar-kpis{display:flex;gap:10px;margin:14px 0 16px;flex-wrap:wrap}
.gar-kpis>div{flex:1;min-width:96px;background:#f8fafc;border:1px solid var(--line);border-radius:9px;padding:9px 12px}
.gar-kpis b{display:block;font-size:17px;color:#0f172a;line-height:1.1}
.gar-kpis span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.gar-tab td,.gar-tab th{font-size:13px}
.gar-tab tr.gx td{background:#fff7ed}
.clab{display:flex;align-items:center;gap:8px}
.bank-logo{width:20px;height:20px;border-radius:5px;object-fit:contain;background:#fff;flex:none;border:1px solid #eef2f6}
.bank-logo.gen{display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#475569;background:#e2e8f0;border:none}
/* ===== Diagnóstico bloco 4: células clicáveis + modal de resumo de contrato ===== */
.dx{cursor:pointer}
.dx:hover{background:#eef6f7;box-shadow:inset 2px 0 0 var(--accent)}
.dx-aval{cursor:pointer}
.dx-aval:hover{background:#dbeafe;color:#1e3a8a}
.ct-rows{margin-top:14px}
.ct-row{display:flex;justify-content:space-between;gap:14px;padding:7px 0;border-bottom:1px solid var(--line);font-size:13px}
.ct-row>span{color:var(--muted);flex:none}
.ct-chips{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}
.dx-banco{text-align:left}
.bk-cell{display:inline-flex;align-items:center;gap:7px;vertical-align:middle}
.gcls{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}
.gcls.g-rec{background:#fee2e2;color:#b91c1c;border-color:#fecaca}
.gcls.g-real{background:#dbeafe;color:#1d4ed8;border-color:#bfdbfe}
.gcls.g-pess{background:#fef3c7;color:#b45309;border-color:#fde68a}
.gcls.g-alien{background:#e0e7ff;color:#4338ca;border-color:#c7d2fe}
.gcls.g-penhor{background:#ccfbf1;color:#0f766e;border-color:#99f6e4}
/* Bloco 2 — Garantias cruzadas (classificação societária + destaque patrimonial→operacional) */
.cls-badge{display:inline-block;font-size:.62rem;font-weight:800;letter-spacing:.02em;padding:1px 6px;border-radius:6px;vertical-align:middle;border:1px solid transparent}
.cls-badge.opco{background:#e0f2fe;color:#075985;border-color:#bae6fd}
.cls-badge.reoc{background:#fef3c7;color:#92400e;border-color:#fde68a}
.cls-badge.holding{background:#ede9fe;color:#5b21b6;border-color:#ddd6fe}
.cls-badge.none{background:#f1f5f9;color:#94a3b8;border-color:#e2e8f0}
.cls-badge.neutra{background:#f1f5f9;color:#64748b;border-color:#e2e8f0}
/* papel do usuário (tela Equipe) — mesma família visual do .cls-badge; pendente = cinza neutro, NUNCA vermelho */
.papel-badge{display:inline-block;font-size:.62rem;font-weight:800;letter-spacing:.02em;padding:1px 6px;border-radius:6px;vertical-align:middle;border:1px solid transparent}
.papel-badge.owner{background:#e6f3f4;color:#0d5c63;border-color:#bfe3e5}
.papel-badge.staff{background:#fff7ed;color:#b45309;border-color:#fde68a}
.papel-badge.pendente{background:#f1f5f9;color:#94a3b8;border-color:#e2e8f0}
.equipe-row .eq-voce{font-weight:400;color:var(--muted);font-size:12.5px}
.equipe-row select.eq-papel{width:auto;padding:5px 9px;font-size:12.5px}
.cls-legend{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:14px;padding-top:11px;border-top:1px solid #eef2f6;font-size:.78rem;color:#475569}
.cls-leg{display:inline-flex;align-items:center;gap:7px}
/* sublinhado tracejado = só LINK INLINE de texto (diag/cônjuge), NÃO linha de dossiê
   (.dossie-row.dossie-link já tem realce de fundo na regra ~579; as duas colidiam e somavam) */
.dossie-link:not(.dossie-row){cursor:pointer;border-bottom:1px dashed transparent}
.dossie-link:not(.dossie-row):hover{color:#0d5c63;border-bottom-color:currentColor}
.hold-alert{margin:6px 0 14px;border:1px solid #f3c98b;background:linear-gradient(180deg,#fffdf6,#fff8ec);border-radius:11px;padding:12px 14px;box-shadow:0 1px 3px rgba(180,83,9,.06)}
.hold-alert-h{font-weight:800;color:#b45309;font-size:.86rem;display:flex;align-items:center;gap:7px;flex-wrap:wrap;cursor:pointer;user-select:none}
.hold-alert-h:hover{color:#92400e}
.hold-alert-h .xg-caret{color:#d68a2e}
.hold-alert-h.open .xg-caret{transform:rotate(90deg)}
.ha-ic{font-size:1rem;line-height:1}
.ha-title{display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap}
.ha-meta{margin-left:auto;font-weight:700;color:#9a3412;white-space:nowrap}
.ha-meta b{color:#b91c1c}
.hold-body{margin-top:10px;padding-top:10px;border-top:1px solid #f3deb0}
.hold-row{display:flex;align-items:center;gap:9px;padding:5px 0;flex-wrap:wrap}
.hold-row+.hold-row{border-top:1px dashed #f0dcb0}
.hr-g,.hr-d{display:inline-flex;align-items:center;gap:5px;font-weight:600;font-size:.85rem}
.hr-ar{color:#b45309;font-weight:800}
.hr-v{margin-left:auto;font-weight:800;color:#9a3412;white-space:nowrap}
.xguar{display:flex;flex-direction:column;gap:10px;margin-top:4px}
.xg-dev{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}
.xg-dev-h{background:#f8fafc;padding:10px 12px;font-size:.88rem;display:flex;align-items:center;gap:8px;flex-wrap:wrap;cursor:pointer;user-select:none}
.xg-dev-h:hover{background:#f1f5f9}
.xg-caret{font-size:.7rem;color:#94a3b8;transition:transform .15s;flex:none}
.xg-dev-h.open .xg-caret{transform:rotate(90deg)}
.xg-dev-n{font-weight:700;color:#0f172a}
.xg-meta{margin-left:auto;display:inline-flex;align-items:baseline;gap:6px;white-space:nowrap}
.xg-total{font-weight:800;color:#b91c1c;font-size:.98rem}
.xg-body{border-top:1px solid #eef2f6}
.xg-row{display:flex;align-items:center;gap:8px;padding:7px 12px;font-size:.84rem}
.xg-row+.xg-row{border-top:1px solid #f4f7fa}
.xg-guars{flex:1;min-width:0;display:flex;flex-wrap:wrap;gap:2px 6px;align-items:center}
.xg-guars .xg-g{white-space:nowrap}
.xg-row.patr{background:#fffaf0}
.xg-g{font-weight:600}
.xg-bk{margin-left:6px;font-size:.78rem;color:#334155}
.xg-v{margin-left:auto;font-weight:700;white-space:nowrap}

/* ===== Patrimônio (Bens · IRPF · Cronologia) ===== */
/* sub-form repetível (registro.js t:"lista") */
.lista-sub{display:flex;flex-direction:column;gap:6px;margin-top:4px}
.lista-row{display:flex;gap:6px;flex-wrap:wrap;align-items:flex-end;background:#f1f5f9;border-radius:8px;padding:6px}
.lista-cell{display:flex;flex-direction:column;gap:2px;flex:1 1 120px}
.lista-cl{font-size:10px;color:#64748b;text-transform:uppercase;letter-spacing:.03em}
.lista-cell input,.lista-cell select{padding:4px 6px;font-size:13px}
.lista-del{align-self:center;border:none;background:#e2e8f0;border-radius:6px;cursor:pointer;width:24px;height:24px}
.lista-add{align-self:flex-start;border:1px dashed #94a3b8;background:#fff;border-radius:8px;padding:4px 10px;cursor:pointer;font-size:13px}
/* sinais + cronologia (dossiê) */
.pat-vinc{font-size:11px;background:#e2e8f0;border-radius:5px;padding:1px 5px}
.pat-onus{font-size:11px;background:#fee2e2;color:#b91c1c;border-radius:5px;padding:1px 5px}
.pat-sinal{padding:6px 8px;border-radius:6px;border-left:3px solid #94a3b8;background:#f8fafc;font-size:13px;margin-bottom:4px}
.pat-sin-t{font-weight:700;text-transform:uppercase;font-size:10px;letter-spacing:.04em;margin-right:6px}
.pat-sinal.g-forte,.pat-sinal.g-alerta{border-left-color:#dc2626;background:#fef2f2}
.pat-sinal.g-ambar{border-left-color:#d97706;background:#fffbeb}
.pat-sinal.g-info{border-left-color:#0d5c63}
.crono{display:flex;flex-direction:column;gap:0;border-left:2px solid #cbd5e1;margin-left:8px}
.crono-ev{display:flex;gap:10px;padding:5px 0 5px 12px;position:relative;font-size:13px}
.crono-ev::before{content:"";position:absolute;left:-5px;top:10px;width:8px;height:8px;border-radius:50%;background:#94a3b8}
.crono-dt{color:#64748b;font-variant-numeric:tabular-nums;min-width:84px}
.crono-amb::before{background:#d97706}
.crono-red::before{background:#dc2626}
.crono-red{color:#b91c1c;font-weight:600}
/* régua patrimonial */
.rg-wrap{max-width:640px;display:flex;flex-direction:column;gap:10px}
.rg-row{display:flex;gap:10px;align-items:flex-start;cursor:pointer}
.rg-dsc{display:block;font-size:12px;color:#64748b}
.rg-mult{font-size:13px;color:#334155;margin-left:28px}
.rg-mult input{width:64px}
.rg-sep{height:1px;background:#e2e8f0;margin:6px 0}
.rg-intro{font-size:13px;color:#475569}

/* busca de empresa (autocomplete) — demonstrações etc. */
.emp-pick-box{position:relative;display:inline-block;vertical-align:middle}
.emp-pick-inp{padding:6px 10px;border:1px solid #cbd5e1;border-radius:8px;font-size:.92rem;background:#fff}
.emp-pick-inp:focus{outline:none;border-color:#0d5c63;box-shadow:0 0 0 2px rgba(13,92,99,.15)}
.emp-pick-list{position:absolute;left:0;top:100%;z-index:40;background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 8px 24px rgba(15,23,42,.14);max-height:340px;overflow:auto;min-width:100%;margin-top:3px}
.emp-pick-item{padding:7px 12px;cursor:pointer;border-bottom:1px solid #f1f5f9}
.emp-pick-item:last-child{border-bottom:none}
.emp-pick-item:hover{background:#ecfeff}
.emp-pick-n{font-weight:600;color:#0f172a;font-size:.9rem}
.emp-pick-s{font-size:.76rem}
.emp-pick-empty{padding:10px 12px}

/* ===== Dívida bancária — seletor de partes (devedores/garantidores) ===== */
.partes-box{position:relative;border:1px solid var(--line);border-radius:9px;padding:6px;background:#fff;display:flex;flex-direction:column;gap:6px}
.partes-chips{display:flex;flex-wrap:wrap;gap:5px}
.parte-chip{display:inline-flex;align-items:center;gap:5px;background:#ecfeff;border:1px solid #bae6e9;color:#0e4f55;border-radius:999px;padding:3px 6px 3px 8px;font-size:12.5px;font-weight:600}
.parte-chip .pc-ic{font-style:normal;font-size:12px}
.parte-chip .parte-x,.gar-clr{cursor:pointer;color:#64748b;font-weight:700;border:none;background:none;font-size:14px;line-height:1;padding:0 2px}
.parte-chip .parte-x:hover,.gar-clr:hover{color:#dc2626}
.partes-q{border:none!important;padding:5px 4px!important;font-size:13px}
.partes-q:focus{box-shadow:none!important}
.partes-list,.parte-list,.wz-pick-list,.gar-list{position:absolute;left:0;right:0;top:100%;z-index:40;background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 8px 24px rgba(15,23,42,.14);max-height:300px;overflow:auto;margin-top:3px}
.parte-opt{display:flex;justify-content:space-between;gap:10px;padding:7px 11px;cursor:pointer;border-bottom:1px solid #f1f5f9;font-size:13px}
.parte-opt:hover{background:#ecfeff}
.parte-opt small{color:#94a3b8}
.parte-sub{color:#94a3b8;font-size:11.5px;white-space:nowrap}
.parte-novo{padding:8px 11px;cursor:pointer;font-size:13px;color:var(--accent);font-weight:600;border-top:1px solid #e2e8f0}
.parte-novo:hover{background:#f0fdfa}
.parte-novo i{font-style:normal;margin-right:4px}
.parte-empty{padding:8px 11px;color:#94a3b8;font-size:13px}
/* seletor de cônjuge (1 PF) — reusa .parte-chip/.parte-opt/.parte-form */
.conjuge-box{position:relative;border:1px solid var(--line);border-radius:9px;padding:6px;background:#fff;display:flex;flex-direction:column;gap:6px}
.conjuge-q{border:none!important;padding:5px 4px!important;font-size:13px}
.conjuge-q:focus{box-shadow:none!important}
.conjuge-list{position:absolute;left:0;right:0;top:100%;z-index:40;background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 8px 24px rgba(15,23,42,.14);max-height:300px;overflow:auto;margin-top:3px}
.conjuge-novo{padding:8px 11px;cursor:pointer;font-size:13px;color:var(--accent);font-weight:600;border-top:1px solid #e2e8f0}
.conjuge-novo:hover{background:#f0fdfa}
.conjuge-novo small{font-weight:400;color:#94a3b8}
/* card de OpCo sem balanço no dashboard */
.sem-bal-tag{font-size:11px;color:#94a3b8;font-style:italic}
.sem-bal-note{font-size:13px;color:#64748b;padding:8px 0}
.parte-form{padding:10px;display:flex;flex-direction:column;gap:7px}
.parte-form .pf-row{display:flex;gap:14px;font-size:13px}
.parte-form .pf-row label{display:inline-flex;align-items:center;gap:4px;margin:0}
/* seletor de referência única (t:"ref") — reusa .parte-chip/.parte-opt/.parte-novo/.parte-form */
.ref-box{position:relative;border:1px solid var(--line);border-radius:9px;padding:6px;background:#fff;display:flex;flex-direction:column;gap:6px}
.ref-box .ref-chip:empty{display:none}
.ref-q{border:none!important;padding:5px 4px!important;font-size:13px;width:100%}
.ref-q:focus{box-shadow:none!important}
.ref-list{position:absolute;left:0;right:0;top:100%;z-index:46;background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 8px 24px rgba(15,23,42,.14);max-height:300px;overflow:auto;margin-top:3px}
.ref-x{cursor:pointer;color:#64748b;font-weight:700;border:none;background:none;font-size:14px;line-height:1;padding:0 2px}
.ref-x:hover{color:#dc2626}
.pf-act{display:flex;gap:8px;justify-content:flex-end}
.btn-ghost.sm,.btn-primary.sm{padding:5px 11px;font-size:12.5px;border-radius:7px;cursor:pointer}
.btn-ghost.dark{background:#e2e8f0;border:none;color:#334155}
/* botões "+ add" contextuais nos dossiês (fundo CLARO) — o .btn-ghost base é da sidebar escura (texto claro), ficava INVISÍVEL aqui */
.btn-ghost.dossie-add{display:inline-flex;align-items:center;gap:5px;margin-top:10px;background:#fff;border:1px solid var(--line);color:var(--accent)}
.btn-ghost.dossie-add:hover{background:var(--accent);color:#fff;border-color:var(--accent)}
.btn-primary.sm{background:var(--accent);color:#fff;border:none}
.pn-err,.ix-err{color:#dc2626;font-size:12px}

/* seletor de banco + indexador (catálogo + criar) */
.idx-pick{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.idx-pick select{flex:1 1 200px}
.idx-add{border:1px dashed #94a3b8;background:#fff;border-radius:8px;padding:6px 10px;cursor:pointer;font-size:12.5px;color:#475569;white-space:nowrap}
.idx-add:hover{border-color:var(--accent);color:var(--accent)}
/* banco: dropdown visual com logo */
.banco-pick{position:relative}
.banco-trigger{width:100%;display:flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer;font-size:13.5px;color:var(--ink);text-align:left}
.banco-trigger:hover{border-color:var(--accent)}
.banco-ph{color:#94a3b8}
.banco-caret{margin-left:auto;color:#94a3b8;font-size:11px}
.banco-o-in{display:inline-flex;align-items:center;gap:8px;min-width:0}
.banco-o-n{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.banco-pick .bank-logo{width:22px;height:22px;object-fit:contain;border-radius:5px;flex:0 0 auto}
.banco-menu:not([hidden]){position:absolute;left:0;right:0;top:100%;z-index:45;background:#fff;border:1px solid #cbd5e1;border-radius:9px;box-shadow:0 10px 28px rgba(15,23,42,.16);margin-top:4px;padding:7px;display:flex;flex-direction:column;gap:6px}
.banco-q{font-size:13px}
.banco-opts{max-height:260px;overflow:auto;display:flex;flex-direction:column}
.banco-o{display:flex;align-items:center;padding:7px 8px;border-radius:7px;cursor:pointer}
.banco-o:hover{background:#ecfeff}
.banco-add{border:1px dashed #94a3b8;background:#fff;border-radius:8px;padding:7px 10px;cursor:pointer;font-size:12.5px;color:#475569}
.banco-add:hover{border-color:var(--accent);color:var(--accent)}
.banco-form{margin-top:4px}
.banco-mini{display:flex;flex-wrap:wrap;gap:7px;align-items:center;background:#f8fafc;border:1px solid var(--line);border-radius:9px;padding:9px}
.banco-mini input{flex:1 1 140px}
.banco-mini input[type=color]{flex:0 0 42px;padding:2px;height:34px}
.banco-mini input[type=file]{flex:1 1 100%;font-size:12px}

/* bloco financeiro — selo "calc" */
.calc-badge{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#0e7490;background:#cffafe;border-radius:4px;padding:1px 5px;margin-left:6px}

/* ===== Garantias (classe + alvo) ===== */
.garantias-box,.tarifas-box{display:flex;flex-direction:column;gap:7px;margin-top:4px}
.gar-row{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start;background:#f1f5f9;border-radius:8px;padding:7px}
.gar-classe{flex:0 0 200px}
.gar-alvo-wrap{flex:1 1 240px;position:relative}
.gar-alvo{display:flex;flex-wrap:wrap;gap:6px;align-items:center;position:relative}
.gar-alvo .gar-bem{flex:1 1 160px}
.gar-alvo .gar-desc{flex:1 1 180px}
.gar-pick-parte{border:1px dashed #94a3b8;background:#fff;border-radius:8px;padding:6px 10px;cursor:pointer;font-size:12.5px;color:#475569}
.gar-pick-parte:hover{border-color:var(--accent);color:var(--accent)}
.gar-parte-search{position:relative;flex:1 1 200px}
.gar-q{font-size:13px}
.gar-valor{flex:0 0 130px}
.gar-del,.tar-del{align-self:center;border:none;background:#e2e8f0;border-radius:6px;cursor:pointer;width:26px;height:26px;font-size:15px;color:#475569}
.gar-del:hover,.tar-del:hover{background:#fecaca;color:#b91c1c}
.gar-add,.tar-add{align-self:flex-start;border:1px dashed #94a3b8;background:#fff;border-radius:8px;padding:5px 11px;cursor:pointer;font-size:13px;color:#475569}
.gar-add:hover,.tar-add:hover{border-color:var(--accent);color:var(--accent)}

/* ===== Tarifas / taxas / seguros ===== */
.tar-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center;background:#f1f5f9;border-radius:8px;padding:7px}
.tar-nome{flex:1 1 200px}
.tar-tipo{flex:0 0 130px}
.tar-valor{flex:0 0 120px}
.tar-np{flex:0 0 90px}
/* painel legado (referência p/ recadastro) */
.legado-det{margin:8px 0;border:1px solid #fde68a;background:#fffbeb;border-radius:9px;padding:4px 10px}
.legado-det>summary{cursor:pointer;font-size:12.5px;color:#92400e;font-weight:600;padding:5px 0}
.legado-det .opt{font-weight:400;color:#a16207}
.legado-box{display:flex;flex-direction:column;gap:4px;padding:4px 0 8px}
.legado-row{display:flex;gap:8px;font-size:12.5px}
.legado-k{flex:0 0 150px;color:#a16207}
.legado-v{color:#334155;font-weight:500}
/* selo de divergência CCB declarada × cálculo de referência (cadastro de dívida) */
.diverg-box:not([hidden]){margin-top:6px;display:flex;flex-direction:column;gap:6px}
.diverg-chips{display:flex;flex-direction:column;gap:5px}
.diverg-chip{font-size:12.5px;padding:6px 9px;border-radius:7px;border-left:3px solid #94a3b8;background:#f8fafc}
.diverg-chip.g-alerta{border-left-color:#dc2626;background:#fef2f2;color:#7f1d1d}
.diverg-chip.g-info{border-left-color:#0d5c63;background:#ecfeff;color:#0e4f55}
.diverg-ok{font-size:12.5px;color:#15803d}
.diverg-recalc{align-self:flex-start;border:1px solid var(--line);background:#fff;border-radius:8px;padding:5px 11px;cursor:pointer;font-size:12.5px;color:#475569}
.diverg-recalc:hover{border-color:var(--accent);color:var(--accent)}

/* ── Ícones Tabler (auto-hospedados em assets/tabler) — base + ajuste por contexto ── */
.ti{display:inline-block;vertical-align:-0.135em;line-height:1;font-size:1.05em}
/* nav lateral / cabeçalhos de lista / chooser do "+ Novo" */
.nav-item .nav-ic .ti{font-size:17px;vertical-align:-0.18em}
.lista-ic .ti{font-size:19px;vertical-align:-0.16em}
.novo-ic .ti{font-size:20px;vertical-align:-0.16em}
/* selos/ícones de tipo em Dívidas/Passivos */
.pv-stat-ic .ti{font-size:22px}
.pv-row-tic .ti{font-size:15px;vertical-align:-0.14em}
/* chips de parte (PF/PJ) e botões inline */
.parte-chip .ti,.pc-ic .ti{font-size:13px;vertical-align:-0.12em}
.hero-actions .ti,.lrow-edit .ti,.edit-grupo .ti{font-size:1em;vertical-align:-0.12em}
/* dicas/hints (cadeado, sugestão, legado, alerta) seguem o tamanho do texto */
.lock-hint .ti,.sug-hint .ti,.idade-hint .ti,.legado-det>summary .ti,.ha-ic .ti,.pv-cons-hint .ti,.ql-empty-b .ti{font-size:1em;vertical-align:-0.12em}
/* dossiês: ícones de seção/identidade */
.det-estab-h .ti{font-size:14px;vertical-align:-0.12em}
.page-sub .ti{font-size:1em;vertical-align:-0.12em;color:var(--accent)}

/* ===== Wizard de IRPF (modal) ===== */
.wz-head{margin-bottom:12px}
.wz-h{display:flex;align-items:center;gap:8px;margin:0 0 10px}
.wz-steps{display:flex;flex-wrap:wrap;gap:6px}
.wz-step{font-size:11.5px;color:#94a3b8;padding:3px 9px;border-radius:999px;background:#f1f5f9;white-space:nowrap}
.wz-step.on{background:var(--accent);color:#fff;font-weight:600}
.wz-step.done{color:var(--accent);background:#e6f3f4;cursor:pointer}
.wz-body{min-height:190px;max-height:58vh;overflow:auto;padding:4px 2px}
.wz-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);position:sticky;bottom:0;background:#fff}
.wz-foot-r{display:flex;gap:8px;margin-left:auto}
.wz-intro{font-size:12.5px;color:#64748b;margin:0 0 12px}
.wz-field{margin-bottom:13px;display:flex;flex-direction:column;gap:5px}
.wz-field>label{font-size:12px;font-weight:600;color:#475569}
.wz-field input,.wz-field select,.wz-proc select,.wz-bem-grid input,.wz-div-grid input,.wz-div-elo select{border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:13.5px;color:var(--ink);background:#fff;width:100%}
.wz-field input:focus,.wz-bem-grid input:focus,.wz-div-grid input:focus,.wz-div-elo select:focus{border-color:var(--accent);outline:none}
.wz-radios{display:flex;gap:8px;flex-wrap:wrap}
.wz-radio{flex:1 1 180px;display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:9px;padding:9px 11px;font-size:13px;cursor:pointer}
.wz-radio.on{border-color:var(--accent);background:#e6f3f4;font-weight:600}
.wz-note{font-size:11.5px;color:#64748b;background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:7px 9px;display:flex;align-items:center;gap:6px;margin-top:6px}
.wz-link{align-self:flex-start;background:none;border:1px dashed #94a3b8;border-radius:8px;padding:6px 11px;font-size:12.5px;color:#475569;cursor:pointer;margin-top:6px}
.wz-link:hover{border-color:var(--accent);color:var(--accent)}
.wz-pick{position:relative}
.wz-ano input{max-width:160px}
.wz-ano-ex{font-size:12px;color:var(--accent);font-weight:600;margin-top:2px}
.wz-det{margin-top:6px}
.wz-det>summary{font-size:12px;color:#64748b;cursor:pointer;margin-bottom:6px}
.wz-bens,.wz-divs{display:flex;flex-direction:column;gap:8px;margin:8px 0}
.wz-bem,.wz-div{border:1px solid var(--line);border-radius:9px;padding:9px 11px;background:#fcfdfd}
.wz-bem-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:7px}
.wz-bem-grid{display:grid;grid-template-columns:64px 1fr 1fr;gap:8px}
.wz-bem-grid label,.wz-div-grid label,.wz-div-elo{display:flex;flex-direction:column;gap:3px;font-size:10.5px;color:#94a3b8;font-weight:600}
.wz-div-grid{display:grid;grid-template-columns:58px 1.4fr 1fr 1fr auto;gap:7px;align-items:end}
.wz-div-del{align-self:end;border:none;background:#fee2e2;color:#b91c1c;border-radius:7px;width:30px;height:34px;cursor:pointer;font-size:16px}
.wz-div-elo{margin-top:7px}
.wz-empty{font-size:12.5px;padding:8px 2px}
.wz-fechamento{font-size:12.5px;color:#475569;background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:9px 11px;margin-top:8px}
.wz-neg{color:#b91c1c}
.wz-rev{border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-bottom:14px}
.wz-rev-row{display:flex;justify-content:space-between;gap:12px;padding:9px 12px;font-size:13px;border-bottom:1px solid #f1f5f9}
.wz-rev-row:last-child{border-bottom:none}
.wz-rev-row>span{color:#64748b}
.wz-proc{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end;margin-bottom:10px}
.wz-proc label{font-size:12px;font-weight:600;color:#475569;display:flex;flex-direction:column;gap:4px}
.wz-conf{flex-direction:row!important;align-items:center;gap:6px!important}
/* ---- Imóvel wizard (classes novas) ---- */
.wz-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.wz-grid2 .wz-field{margin:0}
.wz-sub{margin-top:6px;width:100%}
.wz-choices{display:flex;flex-direction:column;gap:10px;margin:6px 0}
.wz-choice{display:flex;align-items:center;gap:12px;text-align:left;width:100%;background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px 14px;cursor:pointer}
.wz-choice.sel{border:2px solid var(--accent);padding:12px 13px}
.wz-choice-ic{width:34px;height:34px;border-radius:8px;background:#e6f3f4;color:var(--accent);display:flex;align-items:center;justify-content:center;flex:none;font-size:18px}
.wz-choice-tx{display:flex;flex-direction:column;gap:2px}
.wz-choice-tx b{font-size:14px;color:#1e293b}
.wz-choice-tx span{font-size:12.5px;color:#64748b}
.wz-badge{display:inline-block;background:#e6f3f4;color:#0f5c63;font-size:11px;font-weight:600;padding:1px 7px;border-radius:6px;margin-left:6px}
.wz-doc{margin-top:8px;border-top:1px dashed var(--line);padding-top:10px}
.wz-file{display:inline-flex;align-items:center;gap:8px;cursor:pointer;border:1px solid var(--line);border-radius:8px;padding:8px 12px;font-size:13px;color:#475569;background:#f8fafc}
.wz-seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.wz-seg button{border:none;background:#fff;color:#475569;font-size:13px;padding:6px 14px;cursor:pointer}
.wz-seg button.sel{background:var(--accent);color:#fff;font-weight:600}
.wz-warn:not([hidden]){display:flex;align-items:center;gap:8px;background:#fffbeb;color:#92400e;border:1px solid #fde68a;border-radius:8px;padding:9px 11px;font-size:12.5px;margin:8px 0}
.wz-props,.wz-onus{display:flex;flex-direction:column;gap:10px;margin:6px 0}
.wz-prop,.wz-onusrow{border:1px solid var(--line);border-radius:10px;padding:10px 11px;background:#fafbfc}
.wz-prop-grid,.wz-onus-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;align-items:end;margin-top:8px}
.wz-prop-grid label,.wz-onus-grid label,.wz-onus-status label{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:#64748b}
.wz-prop-del,.io-del{align-self:end;border:none;background:#fef2f2;color:#b91c1c;border-radius:7px;width:28px;height:28px;cursor:pointer;font-size:15px}
.wz-onus-status{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin-top:8px;padding-top:8px;border-top:1px dashed var(--line)}
.io-status-l{flex-direction:row!important;align-items:center;gap:6px!important;color:#475569!important;font-size:12.5px!important}
.io-cancel-wrap{display:flex;gap:8px;flex-wrap:wrap}
.wz-pick-add{display:flex;gap:12px;margin-top:4px;flex-wrap:wrap}
.wz-body{position:relative}
.wz-overlay{position:absolute;inset:0;background:rgba(255,255,255,.88);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;z-index:5;border-radius:10px;font-size:13px;color:#475569}
.wz-spin{width:30px;height:30px;border:3px solid #e2e8f0;border-top-color:var(--accent);border-radius:50%;animation:wzspin .8s linear infinite}
@keyframes wzspin{to{transform:rotate(360deg)}}
.wz-cg{margin:6px 0 12px;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.wz-cg-h{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:#475569;background:#f8fafc;padding:8px 11px;border-bottom:1px solid var(--line)}
.wz-cg-row{display:flex;gap:9px;padding:8px 11px;border-bottom:1px solid #f1f5f9}
.wz-cg-row:last-of-type{border-bottom:none}
.wz-cg-dot{width:9px;height:9px;border-radius:50%;margin-top:5px;flex:none;background:#94a3b8}
.wz-cg-row.n-verde .wz-cg-dot{background:#16a34a}
.wz-cg-row.n-ambar .wz-cg-dot{background:#d97706}
.wz-cg-row.n-vermelho .wz-cg-dot{background:#dc2626}
.wz-cg-main{flex:1;min-width:0}
.wz-cg-top{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.wz-cg-lbl{font-size:12px;color:#64748b;flex:none}
.wz-cg-val{font-size:13px;color:#1e293b;font-weight:600;text-align:right;word-break:break-word}
.wz-cg-src{font-size:11.5px;color:#94a3b8;margin-top:2px;font-style:italic}
.wz-cg-leg{display:flex;gap:14px;padding:7px 11px;background:#f8fafc;font-size:11px}
.wz-cg-leg span{display:flex;align-items:center;gap:5px;color:#64748b}
.wz-cg-leg span::before{content:"●";font-style:normal}
.wz-cg-leg .n-verde::before{color:#16a34a}
.wz-cg-leg .n-ambar::before{color:#d97706}
.wz-cg-leg .n-vermelho::before{color:#dc2626}
/* ---- Polimento de UI (noite 23/06) — aditivo, sem tocar conteúdo/número/layout consolidado ---- */
.wz-pick{position:relative}
button:focus-visible,[role="button"]:focus-visible,a:focus-visible,.nav-item:focus-visible,.lrow:focus-visible,.cm-item:focus-visible,.wz-step:focus-visible,.parte-opt:focus-visible,.banco-o:focus-visible,.wz-choice:focus-visible,.seg-opt:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}
body:has(.modal.show){overflow:hidden}
#modal:has(#mbody .x) #mclose{display:none}

/* ===== Simulador de Viabilidade (gerencial) — aditivo, escopado em .sim-* ===== */
.sim-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}
.sim-kpis .kpi{padding:13px}
.sim-kpis .kpi .v{font-size:18px}
.sim-kpis .v.pos{color:var(--green)} .sim-kpis .v.neg{color:var(--red)}
.sim-hl{border:1px solid var(--accent);background:#f0f9fa}
.sim-alav{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:18px}
.sim-alav-tit{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:11px}
.sim-alav-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.sim-alav-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#475569}
.sim-alav-grid input[type=range]{width:100%;accent-color:var(--accent)}
.sim-alav-grid b{color:var(--accent);font-variant-numeric:tabular-nums}
.sim-fa{border:1px solid var(--line);border-radius:8px;padding:7px 9px;font-size:13px;color:var(--ink);background:#fff}
.sim-fa:focus{border-color:var(--accent);outline:none}
.sim-acts{display:flex;gap:10px;margin-top:13px;flex-wrap:wrap}
.sim-lojas-head{display:flex;align-items:center;gap:12px;padding:2px 12px 7px;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.sim-lojas-head span:nth-child(1){flex:1}
.sim-lojas-head span:nth-child(2),.sim-lojas-head span:nth-child(3),.sim-lojas-head span:nth-child(5){width:110px;text-align:right}
.sim-lojas-head span:nth-child(4){width:24px}
.sim-lojas-head span:nth-child(6){width:120px}
.sim-lojas{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.sim-loja{display:flex;align-items:center;gap:12px;padding:9px 12px;border-bottom:1px solid var(--line)}
.sim-loja:last-child{border-bottom:none}
.sim-loja.is-fechar{background:#fef2f2}
.sim-loja.is-recup{background:#f0f9fa}
.sim-l-id{flex:1;min-width:0}
.sim-l-nome{font-size:13.5px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sim-l-rec,.sim-l-base,.sim-l-out{width:110px;text-align:right;font-size:13px;font-variant-numeric:tabular-nums}
.sim-l-rec{color:var(--muted);font-weight:500}
.sim-l-base,.sim-l-out{font-weight:600;color:var(--ink)}
.sim-l-base.pos,.sim-l-out.pos{color:var(--green)} .sim-l-base.neg,.sim-l-out.neg{color:var(--red)}
.sim-l-out.closed{color:#94a3b8;font-style:italic;font-weight:500;text-decoration:line-through}
.sim-l-arrow{width:24px;text-align:center;color:#cbd5e1}
.sim-dec{width:115px;border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:12.5px;color:var(--ink);background:#fff}
.sim-meta,.sim-custo{width:130px;border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:12.5px;color:var(--ink);background:#fff}
.sim-meta:focus,.sim-custo:focus,.sim-dec:focus{border-color:var(--accent);outline:none}
@media(max-width:1100px){ .sim-kpis{grid-template-columns:repeat(3,1fr)} }
/* Reflexo no IRONCLAD (painel baseline × simulado por empresa) */
.sim-reflexo{margin-top:24px}
.sim-rfx-tit{font-size:14px;font-weight:700;color:var(--ink);display:flex;align-items:baseline;gap:7px;margin-bottom:12px;flex-wrap:wrap}
.sim-rfx-tit .muted-sm{font-weight:400}
.rfx-emp{background:var(--card);border:1px solid var(--line);border-radius:11px;padding:12px 14px;margin-bottom:10px}
.rfx-emp-h{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:9px}
.rfx-emp-nome{font-size:13.5px;font-weight:600;color:var(--ink)}
.rfx-vers{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rfx-ver{font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap;text-transform:uppercase;letter-spacing:.02em}
.rfx-ver.rfx-ok{background:#dcfce7;color:#15803d}
.rfx-ver.rfx-warn{background:#fef3c7;color:#b45309}
.rfx-ver.rfx-bad{background:#fee2e2;color:#b91c1c}
.rfx-ver.rfx-na{background:#f1f5f9;color:#64748b}
.rfx-arrow{color:#cbd5e1;font-weight:400}
.rfx-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.rfx-kpi{background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:8px 10px}
.rfx-k-l{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:3px}
.rfx-k-v{font-size:13px;color:var(--ink);font-variant-numeric:tabular-nums}
.rfx-k-v b{color:var(--accent)}
.rfx-nobal{margin-top:8px;font-size:11.5px;color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:7px;padding:6px 9px;display:flex;align-items:center;gap:6px}
@media(max-width:760px){ .rfx-kpis{grid-template-columns:1fr} }
/* Memória de cenários (F5) */
.sim-cenarios{display:flex;flex-wrap:wrap;align-items:center;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:11px;padding:11px 14px;margin-bottom:18px}
.sc-save{display:flex;gap:8px;align-items:center}
.sc-save input{border:1px solid var(--line);border-radius:8px;padding:7px 10px;font-size:13px;color:var(--ink);background:#fff;min-width:170px}
.sc-save input:focus{border-color:var(--accent);outline:none}
.sc-lista{display:flex;flex-wrap:wrap;gap:7px;align-items:center;flex:1;min-width:200px}
.sc-chip{display:inline-flex;align-items:center;gap:7px;background:#f1f5f9;border:1px solid var(--line);border-radius:999px;padding:4px 6px 4px 11px;font-size:12.5px;color:var(--ink);cursor:pointer}
.sc-chip:hover{border-color:var(--accent)}
.sc-chip.on{background:#e6f3f4;border-color:var(--accent);font-weight:600}
.sc-chip .sc-sub{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px}
.sc-del{border:none;background:#e2e8f0;color:#64748b;width:18px;height:18px;border-radius:50%;cursor:pointer;font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0}
.sc-del:hover{background:var(--red);color:#fff}
