:root{
  --vinho:#511011;--vinho-deep:#3a0b0c;--vinho-light:#7a1a1b;
  --dourado:#C9A84C;--dourado-light:#e0c070;--dourado-pale:#f5ecd0;
  --cream:#faf8f3;--ink:#1a1410;--ink-soft:#7a6a5a;
  --border:rgba(201,168,76,0.18);--border-strong:rgba(201,168,76,0.35);
  --glass:rgba(250,248,243,0.92);
  --shadow:0 4px 32px rgba(81,16,17,0.12);--shadow-deep:0 12px 48px rgba(81,16,17,0.22);
  --red:#c0392b;--orange:#e67e22;--green:#27ae60;--blue:#2980b9;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'DM Sans',sans-serif;background:var(--cream);color:var(--ink);min-height:100vh;overflow-x:hidden;}

/* ── LOGIN ── */
#login-screen{position:fixed;inset:0;z-index:1000;background:var(--vinho-deep);display:flex;align-items:center;justify-content:center;
  background-image:radial-gradient(ellipse at 20% 80%,rgba(201,168,76,.08) 0%,transparent 60%),radial-gradient(ellipse at 80% 20%,rgba(201,168,76,.05) 0%,transparent 50%);}
.login-box{background:rgba(250,248,243,.04);border:1px solid rgba(201,168,76,.2);border-radius:4px;padding:48px;width:400px;backdrop-filter:blur(20px);animation:fadeUp .6s ease both;}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.login-logo{text-align:center;margin-bottom:32px;}
.login-logo .brand{font-family:'Playfair Display',serif;font-size:26px;font-weight:900;color:var(--dourado);letter-spacing:.04em;display:block;}
.login-logo .sub{font-size:11px;color:rgba(201,168,76,.5);letter-spacing:.2em;text-transform:uppercase;margin-top:4px;}
.login-divider{width:40px;height:1px;background:var(--dourado);opacity:.3;margin:14px auto;}
.lf{margin-bottom:14px;}
.lf label{display:block;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:rgba(201,168,76,.6);margin-bottom:7px;}
.lf input{width:100%;background:rgba(255,255,255,.05);border:1px solid rgba(201,168,76,.2);border-radius:2px;padding:11px 13px;color:var(--cream);font-family:'DM Sans',sans-serif;font-size:14px;outline:none;transition:border-color .2s;}
.lf input:focus{border-color:rgba(201,168,76,.5);}
.lf input::placeholder{color:rgba(201,168,76,.25);}
.login-error{font-size:12px;color:#e07070;text-align:center;margin-bottom:10px;min-height:16px;}
.btn-login{width:100%;background:var(--dourado);border:none;border-radius:2px;padding:13px;color:var(--vinho-deep);font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s;}
.btn-login:hover{background:var(--dourado-light);}

/* ── APP ── */
#app{display:none;min-height:100vh;}
.sidebar{position:fixed;left:0;top:0;bottom:0;width:224px;background:var(--vinho-deep);border-right:1px solid rgba(201,168,76,.12);display:flex;flex-direction:column;z-index:100;
  background-image:radial-gradient(ellipse at 0% 100%,rgba(201,168,76,.06) 0%,transparent 60%);}
.sidebar-logo{padding:26px 22px 18px;border-bottom:1px solid rgba(201,168,76,.1);}
.sidebar-logo .brand{font-family:'Playfair Display',serif;font-size:19px;font-weight:900;color:var(--dourado);letter-spacing:.04em;display:block;}
.sidebar-logo .sub{font-size:9px;color:rgba(201,168,76,.4);letter-spacing:.18em;text-transform:uppercase;margin-top:2px;}
.sidebar-nav{flex:1;padding:18px 10px;overflow-y:auto;}
.ns{margin-bottom:26px;}
.ns-label{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:rgba(201,168,76,.35);padding:0 11px;margin-bottom:7px;}
.ni{display:flex;align-items:center;gap:9px;padding:8px 11px;border-radius:3px;cursor:pointer;transition:all .15s;color:rgba(250,248,243,.55);font-size:13px;border:1px solid transparent;margin-bottom:2px;}
.ni .ic{font-size:14px;width:17px;text-align:center;}
.ni:hover{background:rgba(201,168,76,.07);color:rgba(250,248,243,.85);}
.ni.active{background:rgba(201,168,76,.12);color:var(--dourado);border-color:rgba(201,168,76,.2);}
.sidebar-footer{padding:10px 14px;border-top:1px solid rgba(201,168,76,.1);}
.user-chip{display:flex;align-items:center;gap:9px;margin-bottom:8px;}
.uavatar{width:30px;height:30px;background:var(--dourado);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:12px;font-weight:700;color:var(--vinho-deep);flex-shrink:0;}
.uinfo .uname{font-size:12px;font-weight:600;color:var(--cream);display:block;}
.uinfo .urole{font-size:10px;color:rgba(201,168,76,.5);}
.btn-logout{background:none;border:none;color:rgba(201,168,76,.4);cursor:pointer;font-size:15px;margin-left:auto;transition:color .2s;padding:3px;}
.btn-logout:hover{color:var(--dourado);}
.btn-cfg-user{width:100%;background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.15);border-radius:3px;padding:6px 10px;color:rgba(201,168,76,.55);font-family:'DM Sans',sans-serif;font-size:11px;cursor:pointer;transition:all .15s;text-align:left;}
.btn-cfg-user:hover{background:rgba(201,168,76,.14);color:var(--dourado);}

/* ── MAIN ── */
.main{margin-left:224px;min-height:100vh;display:flex;flex-direction:column;}
.topbar{background:var(--glass);border-bottom:1px solid var(--border);padding:0 30px;height:58px;display:flex;align-items:center;justify-content:space-between;backdrop-filter:blur(12px);position:sticky;top:0;z-index:50;}
.topbar-title{font-family:'Playfair Display',serif;font-size:17px;font-weight:700;color:var(--vinho);}
.topbar-right{display:flex;align-items:center;gap:14px;}
.badge-alert{background:var(--red);color:white;font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;}
.topbar-date{font-size:12px;color:var(--ink-soft);font-family:'DM Mono',monospace;}
.content{flex:1;padding:28px 30px;}

/* ── PAGES ── */
.page{display:none;animation:fadeIn .3s ease;}
.page.active{display:block;}
@keyframes fadeIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}

/* ── STAT GRID ── */
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:28px;}
.stat-card{background:white;border:1px solid var(--border);border-radius:4px;padding:20px;position:relative;overflow:hidden;transition:box-shadow .2s;}
.stat-card:hover{box-shadow:var(--shadow);}
.stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--dourado);}
.stat-card.red::before{background:var(--red);}
.stat-card.orange::before{background:var(--orange);}
.stat-card.green::before{background:var(--green);}
.slabel{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px;}
.svalue{font-family:'Playfair Display',serif;font-size:34px;font-weight:700;color:var(--vinho);line-height:1;margin-bottom:5px;}
.ssub{font-size:12px;color:var(--ink-soft);}

/* ── DASHBOARD ── */
.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;}
.dash-card{background:white;border:1px solid var(--border);border-radius:4px;overflow:hidden;}
.dash-card-header{padding:14px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;}
.dash-card-title{font-family:'Playfair Display',serif;font-size:14px;font-weight:700;color:var(--vinho);}
.dash-row{display:flex;align-items:center;padding:9px 18px;border-bottom:1px solid rgba(201,168,76,.08);gap:10px;font-size:13px;transition:background .12s;cursor:pointer;}
.dash-row:hover{background:var(--dourado-pale);}
.dash-row:last-child{border-bottom:none;}
.dash-row .dname{flex:1;font-weight:500;}
.dash-row .dmeta{color:var(--ink-soft);font-size:12px;}

/* ── TAGS ── */
.tag{display:inline-flex;align-items:center;padding:2px 7px;border-radius:20px;font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;}
.tag-red{background:#fde8e8;color:var(--red);}
.tag-orange{background:#fdf0e0;color:var(--orange);}
.tag-green{background:#e4f5eb;color:var(--green);}
.tag-blue{background:#e0edf8;color:var(--blue);}
.tag-gold{background:var(--dourado-pale);color:#8a6510;}
.tag-purple{background:#f0e6f8;color:#7d3c98;}
.tag-gray{background:#f3f4f6;color:#6b7280;}

/* ── SECTION ── */
.sec-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;}
.sec-title{font-family:'Playfair Display',serif;font-size:21px;font-weight:700;color:var(--vinho);}
.sec-sub{font-size:13px;color:var(--ink-soft);margin-top:2px;}

/* ── BUTTONS ── */
.btn-p{background:var(--vinho);color:var(--dourado);border:none;border-radius:3px;padding:9px 18px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;}
.btn-p:hover{background:var(--vinho-light);}
.btn-s{background:white;color:var(--vinho);border:1px solid var(--border-strong);border-radius:3px;padding:8px 16px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;}
.btn-s:hover{background:var(--dourado-pale);}
.btn-sm{padding:5px 12px !important;font-size:12px !important;}
.btn-danger{background:#fde8e8;color:var(--red);border:1px solid #f5c6c6;border-radius:3px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;}
.btn-danger:hover{background:#fcc;}

/* ── SEARCH ── */
.search-bar{display:flex;gap:10px;margin-bottom:18px;}
.search-input{flex:1;border:1px solid var(--border-strong);border-radius:3px;padding:9px 13px;font-family:'DM Sans',sans-serif;font-size:13px;background:white;outline:none;transition:border-color .2s;color:var(--ink);}
.search-input:focus{border-color:var(--dourado);}
.search-input::placeholder{color:var(--ink-soft);}

/* ── TABLE ── */
.table-wrap{background:white;border:1px solid var(--border);border-radius:4px;overflow:hidden;}
table{width:100%;border-collapse:collapse;font-size:13px;}
thead th{background:var(--vinho-deep);color:var(--dourado);padding:11px 14px;text-align:left;font-size:10px;letter-spacing:.11em;text-transform:uppercase;font-weight:600;white-space:nowrap;}
tbody tr{border-bottom:1px solid rgba(201,168,76,.1);transition:background .1s;}
tbody tr:hover{background:var(--dourado-pale);}
tbody tr.row-off{background:#f9fafb !important;opacity:.8;}
tbody tr.row-off:hover{background:#f3f4f6 !important;}
tbody tr:last-child{border-bottom:none;}
tbody td{padding:11px 14px;color:var(--ink);vertical-align:middle;}
.tdn{font-weight:500;}
.tdm{color:var(--ink-soft);font-size:12px;}
.tdmono{font-family:'DM Mono',monospace;font-size:12px;}
.abt{background:none;border:none;cursor:pointer;font-size:14px;padding:3px 5px;border-radius:3px;transition:background .12s;color:var(--ink-soft);}
.abt:hover{background:var(--dourado-pale);color:var(--vinho);}
.abt.d:hover{background:#fde8e8;color:var(--red);}
.empty-state{text-align:center;padding:50px 20px;color:var(--ink-soft);}
.empty-state .eicon{font-size:36px;margin-bottom:10px;}
.empty-state p{font-size:14px;}

/* ── TOGGLE ON/OFF ── */
.toggle-wrap{display:inline-flex;align-items:center;gap:5px;cursor:pointer;}
.toggle-track{position:relative;width:32px;height:17px;border-radius:20px;transition:background .2s;}
.toggle-track.on{background:var(--green);}
.toggle-track.off{background:#d1d5db;}
.toggle-thumb{position:absolute;top:2px;width:13px;height:13px;background:white;border-radius:50%;transition:left .2s;}
.toggle-track.on .toggle-thumb{left:17px;}
.toggle-track.off .toggle-thumb{left:2px;}
.toggle-label{font-size:11px;font-weight:600;}
.toggle-label.on{color:var(--green);}
.toggle-label.off{color:#9ca3af;}

/* ── TAREFA BADGE ── */
.tarefa-badge{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;}
.tarefa-badge .tb-icon{font-size:15px;color:var(--ink-soft);transition:color .15s;}
.tarefa-badge:hover .tb-icon{color:var(--vinho);}
.tarefa-badge .tb-count{position:absolute;top:-5px;right:-6px;background:var(--red);color:white;font-size:9px;font-weight:700;min-width:14px;height:14px;border-radius:7px;display:flex;align-items:center;justify-content:center;padding:0 2px;line-height:1;}

/* ── MODAL ── */
.modal-overlay{position:fixed;inset:0;background:rgba(26,20,16,.72);backdrop-filter:blur(4px);z-index:500;display:none;align-items:center;justify-content:center;padding:18px;}
.modal-overlay.open{display:flex;}
.modal{background:var(--cream);border:1px solid var(--border-strong);border-radius:4px;width:100%;max-width:660px;max-height:91vh;overflow-y:auto;animation:mIn .22s ease;box-shadow:var(--shadow-deep);}
.modal.wide{max-width:820px;}
.modal.xl{max-width:980px;}
@keyframes mIn{from{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}
.modal-header{background:var(--vinho-deep);padding:18px 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid var(--dourado);}
.modal-title{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:var(--dourado);}
.mclose{background:none;border:none;color:rgba(201,168,76,.5);font-size:19px;cursor:pointer;transition:color .14s;padding:1px 5px;}
.mclose:hover{color:var(--dourado);}
.modal-body{padding:22px;}

/* ── FORM ── */
.fg{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.fgroup{display:flex;flex-direction:column;gap:5px;}
.fgroup.s2{grid-column:span 2;}
.flabel{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;}
.fi,.fsel,.fta{border:1px solid var(--border-strong);border-radius:3px;padding:9px 11px;font-family:'DM Sans',sans-serif;font-size:13px;color:var(--ink);background:white;outline:none;transition:border-color .2s;}
.fi:focus,.fsel:focus,.fta:focus{border-color:var(--dourado);}
.fta{resize:vertical;min-height:75px;}
.frow{display:flex;gap:10px;margin-top:18px;justify-content:flex-end;}

/* ── DETAIL ── */
.dg{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;}
.di label{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-soft);display:block;margin-bottom:3px;}
.di .dv{font-size:14px;color:var(--ink);font-weight:500;}

/* ── TIMELINE ANDAMENTOS ── */
.and-section{margin-top:22px;}
.and-title{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;margin-bottom:14px;}
.timeline{position:relative;padding-left:26px;}
.timeline::before{content:'';position:absolute;left:8px;top:0;bottom:0;width:2px;background:var(--border-strong);}
.tl-item{position:relative;margin-bottom:14px;}
.tl-dot{position:absolute;left:-26px;top:4px;width:9px;height:9px;border-radius:50%;background:var(--dourado);border:2px solid white;box-shadow:0 0 0 2px var(--dourado);}
.tl-dot.alice{background:#7d3c98;box-shadow:0 0 0 2px #7d3c98;}
.tl-dot.bruna{background:#2980b9;box-shadow:0 0 0 2px #2980b9;}
.tl-card{background:white;border:1px solid var(--border);border-radius:4px;padding:11px 13px;}
.tl-meta{display:flex;align-items:center;gap:7px;margin-bottom:5px;flex-wrap:wrap;}
.tl-date{font-family:'DM Mono',monospace;font-size:11px;color:var(--ink-soft);}
.tl-adv{font-size:11px;font-weight:600;padding:1px 7px;border-radius:20px;}
.adv-alice{background:#f0e6f8;color:#7d3c98;}
.adv-bruna{background:#e0edf8;color:#2980b9;}
.adv-ortiz{background:var(--dourado-pale);color:#8a6510;}
.tl-txt{font-size:13px;color:var(--ink);line-height:1.5;}
.tl-del{background:none;border:none;cursor:pointer;color:rgba(201,168,76,.3);font-size:11px;margin-left:auto;padding:1px 3px;transition:color .14s;flex-shrink:0;}
.tl-del:hover{color:var(--red);}
.add-and{background:var(--dourado-pale);border:1px dashed var(--border-strong);border-radius:4px;padding:13px;margin-top:8px;}
.add-and-lbl{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:7px;font-weight:600;}
.add-and textarea{width:100%;border:1px solid var(--border-strong);border-radius:3px;padding:9px 11px;font-family:'DM Sans',sans-serif;font-size:13px;resize:vertical;min-height:65px;outline:none;margin-bottom:8px;background:white;}
.add-and textarea:focus{border-color:var(--dourado);}
.add-and-row{display:flex;gap:8px;align-items:center;}

/* ── PAINEL TAREFAS ── */
.tarefas-header{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:14px;}
.tsum{background:white;border:1px solid var(--border);border-radius:4px;padding:12px 14px;border-left:3px solid var(--dourado);}
.tsum.red{border-left-color:var(--red);}
.tsum.orange{border-left-color:var(--orange);}
.tsum.green{border-left-color:var(--green);}
.tsum-label{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:5px;}
.tsum-val{font-family:'Playfair Display',serif;font-size:24px;font-weight:700;color:var(--vinho);}
.tarefa-item{padding:10px 12px;border-top:1px solid rgba(201,168,76,.1);border-left:3px solid transparent;transition:background .12s;}
.tarefa-item:hover{background:var(--dourado-pale);}
.tarefa-item.tatrasado{border-left-color:var(--red);}
.tarefa-item.turgente{border-left-color:var(--orange);}
.tarefa-item.tnormal{border-left-color:var(--blue);}
.tarefa-item.tfeita{border-left-color:#d1d5db;opacity:.6;}
.tarefa-txt{font-size:13px;font-weight:500;color:var(--ink);margin-bottom:4px;}
.tarefa-meta{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:3px;}
.tarefa-by{font-size:11px;color:var(--ink-soft);}
.add-tarefa{background:var(--dourado-pale);border:1px dashed var(--border-strong);border-radius:4px;padding:14px;margin-top:10px;}
.add-tarefa-lbl{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;margin-bottom:10px;}
.tarefas-fg{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;}
.tarefas-fg.t3{grid-template-columns:1fr 1fr 1fr;}
.tarefas-wrap{background:white;border:1px solid var(--border);border-radius:4px;overflow:hidden;margin-bottom:12px;}
.tarefas-wrap-header{padding:8px 12px;background:var(--vinho-deep);color:var(--dourado);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;}

/* ── FINANCEIRO ── */
.fin-sum{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px;}
.fin-card{background:white;border:1px solid var(--border);border-radius:4px;padding:18px;text-align:center;position:relative;overflow:hidden;}
.fin-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--dourado);}
.fin-card.entrada::before{background:var(--green);}
.fin-card.saida::before{background:var(--red);}
.fc-lbl{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:7px;}
.fc-val{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;line-height:1;}
.pos{color:var(--green);}
.neg{color:var(--red);}
.neu{color:var(--vinho);}
.tipo-e{color:var(--green);font-weight:600;}
.tipo-s{color:var(--red);font-weight:600;}

/* ── CONFIGURAÇÕES ── */
.cfg-tabs{display:flex;gap:0;margin-bottom:22px;border:1px solid var(--border-strong);border-radius:4px;overflow:hidden;}
.cfg-tab{padding:9px 18px;cursor:pointer;font-size:13px;font-weight:500;color:var(--ink-soft);transition:all .14s;border-right:1px solid var(--border-strong);}
.cfg-tab:last-child{border-right:none;}
.cfg-tab.active{background:var(--vinho);color:var(--dourado);font-weight:600;}
.cfg-tab:hover:not(.active){background:var(--dourado-pale);}
.cfg-section{display:none;}
.cfg-section.active{display:block;}
.user-list-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid var(--border);}
.user-list-item:last-child{border-bottom:none;}
.uli-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;}
.uli-info .uln{font-size:13px;font-weight:600;color:var(--ink);}
.uli-info .ulr{font-size:11px;color:var(--ink-soft);}


/* ── PAINEL UNIFICADO ANDAMENTO + REGISTROS ── */
.proc-tabs{display:flex;gap:0;border-bottom:2px solid var(--border-strong);margin-bottom:18px;}
.proc-tab{padding:8px 16px;cursor:pointer;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .15s;}
.proc-tab.active{color:var(--vinho);border-bottom-color:var(--dourado);}
.proc-tab:hover:not(.active){color:var(--ink);}
.proc-panel{display:none;}
.proc-panel.active{display:block;}

/* subtipos de registro */
.subtipo-btns{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap;}
.stbtn{background:white;border:1px solid var(--border-strong);border-radius:20px;padding:5px 13px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;color:var(--ink-soft);}
.stbtn:hover{background:var(--dourado-pale);border-color:var(--dourado);}
.stbtn.active{background:var(--vinho);color:var(--dourado);border-color:var(--vinho);}

/* cards de registros (audiências/prazos/tarefas) */
.reg-card{background:white;border:1px solid var(--border);border-radius:4px;margin-bottom:8px;overflow:hidden;border-left:4px solid var(--dourado);}
.reg-card.audiencia{border-left-color:#7d3c98;}
.reg-card.prazo{border-left-color:#2980b9;}
.reg-card.tarefa{border-left-color:var(--orange);}
.reg-card.feito{border-left-color:#d1d5db;opacity:.7;}
.reg-card-body{padding:11px 13px;}
.reg-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;}
.reg-card-desc{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:5px;}
.reg-card-meta{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:4px;}
.reg-card-footer{font-size:11px;color:var(--ink-soft);margin-top:4px;}
.reg-card-done-banner{background:#e4f5eb;padding:5px 13px;font-size:11px;color:var(--green);font-weight:600;border-top:1px solid rgba(39,174,96,.2);}
.reg-tipo-badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:20px;text-transform:uppercase;letter-spacing:.06em;}
.rtb-audiencia{background:#f0e6f8;color:#7d3c98;}
.rtb-prazo{background:#e0edf8;color:#2980b9;}
.rtb-tarefa{background:#fdf0e0;color:var(--orange);}
.btn-realizado{background:var(--green);color:white;border:none;border-radius:4px;padding:7px 14px;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s;white-space:nowrap;}
.btn-realizado:hover{background:#219a52;box-shadow:0 2px 8px rgba(39,174,96,.3);}

/* form de novo registro */
.novo-reg-form{background:var(--dourado-pale);border:1px dashed var(--border-strong);border-radius:4px;padding:14px;margin-top:12px;}
.nrf-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;margin-bottom:10px;}
.nrf-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;}
.nrf-grid.g3{grid-template-columns:1fr 1fr 1fr;}
.nrf-full{grid-column:span 2;}


/* ── ALERTAS DE PRAZO ── */
.alerta-wrap{display:flex;flex-direction:column;gap:3px;align-items:flex-start;}
.alerta-item{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:600;white-space:nowrap;}
.alerta-verde{color:#16a34a;}
.alerta-amarelo{color:#d97706;}
.alerta-vermelho{color:#dc2626;animation:pisca .8s ease-in-out infinite alternate;}
@keyframes pisca{from{opacity:1}to{opacity:.45}}
.alerta-tri-verde{width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:12px solid #16a34a;flex-shrink:0;}
.alerta-tri-amarelo{width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:12px solid #d97706;flex-shrink:0;}
.alerta-sirene{font-size:14px;flex-shrink:0;}

/* ── EDIT INLINE ── */
.tl-edit-btn{background:none;border:none;cursor:pointer;color:rgba(201,168,76,.4);font-size:11px;padding:1px 4px;transition:color .14s;}
.tl-edit-btn:hover{color:var(--dourado);}
.tl-edit-area{width:100%;border:1px solid var(--border-strong);border-radius:3px;padding:7px 9px;font-family:'DM Sans',sans-serif;font-size:13px;resize:vertical;outline:none;margin-top:5px;background:white;}
.tl-edit-area:focus{border-color:var(--dourado);}
.reg-edit-btn{background:none;border:1px solid var(--border-strong);border-radius:3px;padding:3px 8px;font-size:11px;cursor:pointer;color:var(--ink-soft);transition:all .14s;}
.reg-edit-btn:hover{background:var(--dourado-pale);color:var(--vinho);}


/* ── ORIGEM ── */
.origem-badge{display:inline-flex;align-items:center;gap:4px;background:var(--dourado-pale);border:1px solid var(--border-strong);border-radius:3px;padding:2px 8px;font-size:11px;font-weight:600;color:#8a6510;white-space:nowrap;}
.origem-parceiro{font-size:10px;color:var(--ink-soft);margin-top:2px;}
/* ── ANIVERSÁRIO ── */
.aniv-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;padding:2px 7px;border-radius:20px;}
.aniv-hoje{background:#fde8e8;color:var(--red);}
.aniv-semana{background:#fdf0e0;color:var(--orange);}
.aniv-mes{background:#e4f5eb;color:var(--green);}
/* ── TELEFONE ── */
.tel-row{display:flex;align-items:center;gap:5px;flex-wrap:wrap;}
.wpp-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:#25D366;border-radius:50%;color:white;font-size:10px;font-weight:700;flex-shrink:0;cursor:pointer;text-decoration:none;}
/* ── ALERTA DE PRAZOS maior ── */
.alerta-tri-verde{width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:16px solid #16a34a;flex-shrink:0;}
.alerta-tri-amarelo{width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:16px solid #d97706;flex-shrink:0;}
.alerta-sirene{font-size:18px;flex-shrink:0;}
.alerta-item{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;white-space:nowrap;}


/* ── TABLE COLUMN ALIGNMENT ── */
#tb-proc td, #tb-proc th { vertical-align: middle; }
.col-cliente{width:18%;}
.col-origem{width:12%;}
.col-num{width:13%;}
.col-tipo{width:9%;}
.col-reg{width:18%;}
.col-alerta{width:14%;min-width:160px;}
.col-onoff{width:9%;text-align:center;}
.col-acoes{width:7%;text-align:right;}


/* ── DRIVE SYNC ── */
#modal-drive.open{display:flex;}

/* ── RELATÓRIOS ── */
.rel-tabs{display:flex;gap:0;margin-bottom:24px;border:1px solid var(--border-strong);border-radius:4px;overflow:hidden;flex-wrap:wrap;}
.rel-tab{padding:9px 16px;cursor:pointer;font-size:12px;font-weight:600;color:var(--ink-soft);transition:all .14s;border-right:1px solid var(--border-strong);}
.rel-tab:last-child{border-right:none;}
.rel-tab.active{background:var(--vinho);color:var(--dourado);}
.rel-tab:hover:not(.active){background:var(--dourado-pale);}
.rel-section{display:none;animation:fadeIn .25s ease;}
.rel-section.active{display:block;}
.rel-card{background:white;border:1px solid var(--border);border-radius:4px;overflow:hidden;margin-bottom:20px;}
.rel-card-header{background:var(--vinho-deep);padding:12px 18px;display:flex;align-items:center;justify-content:space-between;}
.rel-card-title{font-family:'Playfair Display',serif;font-size:14px;font-weight:700;color:var(--dourado);}
.rel-filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:18px;padding:14px 16px;background:var(--dourado-pale);border-radius:4px;border:1px solid var(--border-strong);}
.rel-filters label{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);}
.rel-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;}
.rel-sum-card{background:var(--dourado-pale);border:1px solid var(--border-strong);border-radius:4px;padding:14px;text-align:center;}
.rel-sum-label{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:6px;}
.rel-sum-val{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:var(--vinho);}
.rel-sum-val.pos{color:var(--green);}
.rel-sum-val.neg{color:var(--red);}
.btn-pdf{background:var(--red);color:white;border:none;border-radius:3px;padding:8px 16px;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:opacity .15s;}
.btn-pdf:hover{opacity:.85;}
.socio-row{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);}
.socio-row:last-child{border-bottom:none;}
.socio-name{font-weight:600;font-size:14px;}
.socio-bar-wrap{flex:1;margin:0 16px;height:8px;background:#f0ede6;border-radius:4px;overflow:hidden;}
.socio-bar{height:100%;border-radius:4px;transition:width .4s;}
@media print{
  /* Impressão só é usada na janela separada de relatório */
  .sidebar,.topbar,.btn-pdf,.rel-tabs,.rel-filters,.modal-overlay,#toast{display:none!important;}
  .main{margin-left:0!important;}
  .content{padding:4px!important;}
}

/* ── TOAST ── */
#toast{position:fixed;bottom:22px;right:22px;background:var(--vinho-deep);color:var(--dourado);border:1px solid rgba(201,168,76,.3);border-radius:4px;padding:12px 18px;font-size:13px;font-weight:500;z-index:9999;transform:translateY(70px);opacity:0;transition:all .28s ease;pointer-events:none;}
#toast.show{transform:translateY(0);opacity:1;}

::-webkit-scrollbar{width:5px;height:5px;}
::-webkit-scrollbar-track{background:transparent;}
::-webkit-scrollbar-thumb{background:rgba(201,168,76,.22);border-radius:3px;}
