:root{--bg:#0d1117;--card:#161b22;--bd:#30363d;--tx:#e6edf3;--mut:#8b949e;--ok:#2ea043;--warn:#d29922;--bad:#f85149;--az:#58a6ff}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--tx);font:14px/1.45 system-ui,Segoe UI,Roboto,sans-serif}
h1{font-size:17px;margin:0}
.mut{color:var(--mut);font-size:12px}
.err{color:var(--bad);font-size:13px;min-height:18px;margin-top:8px}
button{background:#21262d;color:var(--tx);border:1px solid var(--bd);border-radius:8px;padding:8px 14px;cursor:pointer;font-size:13px}
button:hover{border-color:var(--az)}
button.ghost{background:none;border:none;color:var(--mut)}
input,select,textarea{background:#0d1117;color:var(--tx);border:1px solid var(--bd);border-radius:8px;padding:8px 10px;font-size:14px}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--az)}

.login-wrap{display:flex;min-height:100vh;align-items:center;justify-content:center}
.login-box{background:var(--card);border:1px solid var(--bd);border-radius:14px;padding:30px;width:320px;display:flex;flex-direction:column;gap:10px}

header{display:flex;align-items:center;gap:16px;padding:14px 20px;border-bottom:1px solid var(--bd);flex-wrap:wrap}
header nav{display:flex;gap:6px}
.tab.on{border-color:var(--az);color:var(--az)}
header .mut{margin-left:auto}
.badge{background:var(--bad);color:#fff;border-radius:10px;padding:0 7px;font-size:11px}

.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;padding:16px 20px}
.card{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:12px 16px;transition:border-color .15s,transform .1s}
.card .v{font-size:20px;font-weight:600}
.card .l{color:var(--mut);font-size:12px}
.card.click{cursor:pointer}
.card.click:hover{border-color:var(--az);transform:translateY(-1px)}

section{padding:0 20px 30px}

/* barra de ferramentas */
.toolbar{display:flex;gap:10px;align-items:center;margin:4px 0 10px;flex-wrap:wrap}
.search{width:280px;max-width:100%;padding:9px 12px;border-radius:10px}
.sel{padding:9px 12px;border-radius:10px}
.valrange{display:flex;align-items:center;gap:6px;color:var(--mut)}
.valrange input{width:96px;padding:9px 10px;border-radius:10px}
.btn-ghost{background:none;border:1px solid var(--bd);color:var(--mut);border-radius:10px;padding:9px 12px}
.btn-ghost:hover{border-color:var(--az);color:var(--tx)}

/* botões liga/desliga */
.toggles{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.tg{border:1px solid var(--bd);background:#161b22;color:var(--mut);border-radius:20px;padding:7px 14px;font-size:13px;cursor:pointer;transition:all .15s;user-select:none}
.tg:hover{border-color:var(--az);color:var(--tx)}
.tg.on{background:var(--az);border-color:var(--az);color:#04101f;font-weight:600}
.tg.tg-danger.on{background:var(--bad);border-color:var(--bad);color:#1a0000}
.tg-sep{width:1px;height:22px;background:var(--bd);margin:0 4px}
.tg-label{color:var(--mut);font-size:12px}

.chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.chip{cursor:pointer;background:none}
.chip-on{outline:2px solid var(--az);outline-offset:1px}
.resumo{color:var(--mut);font-size:13px;margin-bottom:10px}
.resumo b{color:var(--tx)}
.card.super .v{color:var(--warn)}
.card.bad .v{color:var(--bad)}
.fase{display:inline-block;border-radius:6px;padding:1px 7px;font-size:11px;border:1px solid var(--bd);white-space:nowrap}
.fase.exp{color:var(--mut)}
.fase.pre{color:var(--warn);border-color:var(--warn)}
td.idoso{color:var(--warn);font-weight:600}
.aviso-fase{background:rgba(210,153,34,.1);border:1px solid var(--warn);border-radius:8px;padding:8px 12px;font-size:13px;margin:4px 0}
.super-box{background:#0d1117;border:1px solid var(--bd);border-radius:8px;padding:10px 14px;margin:10px 0;font-size:13px;display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.super-box.on{border-color:var(--warn);background:rgba(210,153,34,.08)}

.tbl-wrap{overflow-x:auto;border:1px solid var(--bd);border-radius:12px}
table{width:100%;border-collapse:collapse;font-size:13px}
th{padding:9px 12px;text-align:left;color:var(--mut);font-weight:500;border-bottom:1px solid var(--bd);white-space:nowrap}
td{padding:8px 12px;border-bottom:1px solid #1f2630}
tr:last-child td{border-bottom:0}
tbody tr{cursor:pointer}
tbody tr:hover{background:#1c2330}
.num{text-align:right;white-space:nowrap}
td.prop{color:var(--ok);font-weight:600}
.pill{display:inline-block;border-radius:20px;padding:1px 10px;font-size:11px;border:1px solid var(--bd);white-space:nowrap}
.pill.NOVO{color:var(--mut)}
.pill.EM_CONTATO,.pill.INTERESSADO{color:var(--az);border-color:var(--az)}
.pill.ACEITOU,.pill.DOCS_PENDENTES,.pill.CARTORIO{color:var(--warn);border-color:var(--warn)}
.pill.PAGO{color:var(--ok);border-color:var(--ok)}
.pill.RECUSOU,.pill.JA_CEDIDO,.pill.INAPTO{color:var(--bad);border-color:var(--bad)}
.flag{font-size:11px;margin-left:6px}

.modal{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:flex-start;justify-content:center;padding:4vh 12px;z-index:10}
.modal-box{background:var(--card);border:1px solid var(--bd);border-radius:14px;max-width:860px;width:100%;max-height:92vh;overflow-y:auto;padding:22px;position:relative}
.fechar{position:absolute;top:10px;right:12px;font-size:18px;background:none;border:none;color:var(--mut)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px;margin:10px 0}
.grid2 div{padding:3px 0;border-bottom:1px solid #1f2630;font-size:13px}
.grid2 b{color:var(--mut);font-weight:500;display:inline-block;min-width:150px}
.destaque{display:flex;gap:22px;flex-wrap:wrap;background:#0d1117;border:1px solid var(--bd);border-radius:10px;padding:12px 16px;margin:12px 0}
.destaque .v{font-size:19px;font-weight:700}
.destaque .prop .v{color:var(--ok)}
.btn-prop{background:#16c098;color:#04241c;border:none;border-radius:9px;padding:10px 16px;font-weight:700;font-size:13px;cursor:pointer}
.btn-prop:hover{background:#13a884}
table.cascata{width:100%;border-collapse:collapse;margin:10px 0;font-size:13px}
table.cascata td{padding:6px 10px;border-bottom:1px solid #1f2630}
table.cascata td.num{text-align:right;font-variant-numeric:tabular-nums}
table.cascata tr.neg td{color:var(--mut)}
table.cascata tr.fim td{border-top:2px solid var(--bd);border-bottom:none;color:var(--tx)}
table.cascata tr.prop-row td{color:var(--ok)}
.estados{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}
.estados button.cur{border-color:var(--az);color:var(--az)}
.anot{border-left:2px solid var(--bd);padding:6px 12px;margin:8px 0}
.anot .m{color:var(--mut);font-size:11px}
.nova-anot{display:flex;gap:8px;margin-top:10px}
.nova-anot textarea{flex:1;min-height:56px}
.nov-item{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:12px 16px;margin-bottom:10px}
.nov-item.rel-CESSAO{border-color:var(--bad)}
.nov-item.rel-PENHORA{border-color:var(--warn)}
h3{margin:18px 0 6px;font-size:14px;color:var(--az)}
@media(max-width:700px){.grid2{grid-template-columns:1fr}.filtros input{width:100%}}
