/* ────────── BLOCO 01  (linha original 20) ────────── */
:root{--navy:#0f1e35;--navy2:#162844;--navy3:#1e3a5f;--gold:#c9a84c;--gold2:#e8c96a;--gold3:#b89040;--cream:#f5f0e8;--cream2:#ede7d9;--cream3:#faf8f4;--text:#1a1a1a;--muted:#6b6b6b;--border:rgba(201,168,76,0.25);--r:10px}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:DM Sans,sans-serif;background:var(--cream);color:var(--text);margin:0;padding:0}

/* ── HEADER ── */
header{background:var(--navy);padding:0 32px;height:60px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(201,168,76,0.2);position:sticky;top:0;z-index:300;flex-shrink:0}
#app-main{display:flex;flex-direction:column;height:100vh;overflow:hidden}
.logo-area{display:flex;align-items:center;gap:12px}
.logo-badge{width:40px;height:40px;background:linear-gradient(135deg,var(--gold),var(--gold2));border-radius:8px;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:18px;color:var(--navy);font-weight:700}
.logo-text strong{font-family:Georgia,serif;font-size:16px;color:#fff;font-weight:700;display:block;line-height:1.2}
.logo-text span{font-size:10px;color:var(--gold);letter-spacing:.06em;text-transform:uppercase}
.header-badge{font-size:11px;font-weight:500;padding:4px 12px;border:1px solid rgba(201,168,76,0.4);border-radius:999px;color:var(--gold);letter-spacing:.04em}
.header-nav{display:flex;align-items:center;gap:2px;margin:0 auto}
.header-nav-btn{display:flex;align-items:center;gap:6px;padding:6px 13px;border-radius:99px;font-size:12px;font-weight:600;color:rgba(255,255,255,.5);cursor:pointer;border:1.5px solid transparent;transition:all .18s;text-decoration:none;font-family:'DM Sans',sans-serif;background:none;white-space:nowrap}
.header-nav-btn:hover{color:#fff;border-color:rgba(201,168,76,.25);background:rgba(201,168,76,.07)}
.header-nav-badge{font-size:8px;font-weight:700;background:rgba(201,168,76,.18);color:var(--gold);padding:2px 5px;border-radius:99px;letter-spacing:.05em;text-transform:uppercase;flex-shrink:0}
@media(max-width:900px){.header-nav{display:none}}

/* ── NAV FERRAMENTAS ── */
.tools-nav{background:var(--navy2);border-bottom:1px solid rgba(201,168,76,0.2);display:flex;align-items:center;gap:0;overflow-x:auto}
.tool-tab{padding:11px 24px;font-size:12px;font-weight:500;color:rgba(255,255,255,.5);cursor:pointer;border-bottom:2px solid transparent;transition:all .18s;white-space:nowrap;user-select:none}
.tool-tab:hover{color:rgba(255,255,255,.85)}
.tool-tab.active{color:var(--gold);border-bottom-color:var(--gold)}

/* ── APP LAYOUT COM SIDEBAR ── */
.app-layout{display:flex;flex:1;height:calc(100vh - 60px);overflow:hidden}
.app-sidebar{
  width:220px;flex-shrink:0;
  background:var(--navy2);
  border-right:1px solid rgba(255,255,255,.06);
  display:flex;flex-direction:column;
  padding:12px 8px 20px;
  overflow-y:auto;
  overflow-x:hidden;
  height:100%;
}
.app-sidebar::-webkit-scrollbar{width:3px}
.app-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:99px}
.app-content{flex:1;overflow-y:auto;overflow-x:hidden;min-width:0;height:100%;scroll-behavior:smooth}

/* Seção label */
.snav-section{
  font-size:9px;font-weight:700;color:rgba(255,255,255,.4);
  letter-spacing:.12em;text-transform:uppercase;
  padding:14px 10px 5px;margin-top:2px;
}
.snav-section:first-child{margin-top:0;padding-top:6px}

/* Item da sidebar */
.snav-item{
  display:flex;align-items:center;gap:9px;
  padding:9px 10px;border-radius:8px;
  font-size:12px;font-weight:500;
  color:rgba(255,255,255,.72);
  cursor:pointer;transition:all .15s;
  user-select:none;
  position:relative;
}
.snav-item:hover{background:rgba(255,255,255,.09);color:#fff}
.snav-item.active{background:rgba(255,255,255,.12);color:#fff;font-weight:700}
.snav-item.active::before{
  content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:3px;height:20px;border-radius:0 3px 3px 0;
  background:var(--gold);
}
.snav-item .sni{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:18px;height:18px}
svg.sni{width:18px!important;height:18px!important;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.snav-item .snlabel{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Exclusivo dourado */
.snav-item.excl{
  background:rgba(201,168,76,.08);
  border:1px solid rgba(201,168,76,.15);
  color:var(--gold);font-weight:600;
  margin-bottom:2px;
}
.snav-item.excl:hover{background:rgba(201,168,76,.14)}
.snav-item.excl.active{background:rgba(201,168,76,.18);color:var(--gold)}
.snav-item.excl.active::before{background:var(--gold)}

/* Badge NOVO */
.snav-badge{
  font-size:8px;font-weight:800;color:var(--green);
  background:rgba(29,158,117,.15);
  border:1px solid rgba(29,158,117,.3);
  padding:2px 6px;border-radius:99px;letter-spacing:.06em;
  margin-left:auto;flex-shrink:0;
}
.snav-badge.gold{color:var(--gold);background:rgba(201,168,76,.15);border-color:rgba(201,168,76,.3)}

/* Separador */
.snav-sep{height:1px;background:rgba(255,255,255,.05);margin:8px 6px}

/* Items em breve — clicáveis mas visualmente distintos */
.snav-breve{opacity:.65;transition:opacity .2s!important}
.snav-breve:hover{opacity:1!important;background:rgba(255,255,255,.06)!important}

/* Badges coloridas */
.snav-badge-green{color:rgba(29,158,117,.9)!important;background:rgba(29,158,117,.12)!important;border-color:rgba(29,158,117,.3)!important}
.snav-badge-blue{color:rgba(52,152,219,.9)!important;background:rgba(52,152,219,.12)!important;border-color:rgba(52,152,219,.3)!important}

/* Recolher sidebar */
.snav-toggle{
  display:flex;align-items:center;justify-content:center;
  padding:10px;margin:4px 0 0;
  color:rgba(255,255,255,.45);font-size:12px;
  cursor:pointer;border-radius:8px;transition:all .15s;
  gap:8px;border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.04);
}
.snav-toggle:hover{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.2)}

/* Sidebar recolhida */
.app-sidebar.collapsed{width:52px;padding:12px 4px 20px}
.app-sidebar.collapsed .snav-section{display:none}
.app-sidebar.collapsed .snav-item{padding:10px;justify-content:center;border-radius:8px}
.app-sidebar.collapsed .snav-item .snlabel{display:none}
.app-sidebar.collapsed .snav-badge{display:none}
.app-sidebar.collapsed .snav-toggle .toggle-label{display:none}
.app-sidebar.collapsed .snav-sep{margin:6px 2px}
/* Tooltip ao hover quando recolhida */
.app-sidebar.collapsed .snav-item{position:relative}
.app-sidebar.collapsed .snav-item:hover::after{
  content:attr(data-label);
  position:absolute;left:54px;top:50%;transform:translateY(-50%);
  background:var(--navy);border:1px solid rgba(201,168,76,.3);
  color:#fff;font-size:12px;font-weight:600;
  padding:6px 12px;border-radius:8px;white-space:nowrap;
  z-index:999;pointer-events:none;
  box-shadow:0 4px 16px rgba(0,0,0,.3);
}

/* Mobile: ocultar sidebar, manter nav bottom */
@media(max-width:768px){
  .app-sidebar{display:none}
  .app-layout{display:block}
  .tools-nav{display:flex!important}
}

/* ── SIDEBAR GERADOR ── */
.sidebar{background:#fff;border-right:1px solid var(--cream2);padding:24px 22px;overflow-y:auto;height:100%}
.sidebar-title{font-family:Georgia,serif;font-size:18px;font-weight:700;color:var(--navy);margin-bottom:3px}
.sidebar-sub{font-size:12px;color:var(--muted);margin-bottom:20px}
.field{margin-bottom:13px}
.field label{display:block;font-size:10px;font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}
.field select,.field input,.field textarea{width:100%;border:1px solid var(--cream2);border-radius:var(--r);padding:8px 11px;font-size:13px;font-family:DM Sans,sans-serif;color:var(--text);background:#fff;transition:border-color .2s;appearance:none}
.field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='6'%3E%3Cpath d='M1 1l4.5 4.5L10 1' stroke='%236b6b6b' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;padding-right:30px;cursor:pointer}
.field select:focus,.field input:focus,.field textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,0.12)}
.field textarea{resize:vertical;min-height:64px;line-height:1.5}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px}
.cont-parte-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--navy);opacity:.65;margin-bottom:7px}
.sdiv{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--gold);border-bottom:1px solid var(--border);padding-bottom:5px;margin:16px 0 11px}

/* ── CLÁUSULAS ACCORDION ── */
.cl-grid{display:block}
.cat-section{margin-bottom:6px}
.cat-header{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;background:var(--cream);border:1px solid var(--cream2);border-radius:8px;cursor:pointer;user-select:none;transition:background .15s}
.cat-header.open{border-radius:8px 8px 0 0;border-bottom-color:transparent;background:var(--navy)}
.cat-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text)}
.cat-header.open .cat-title{color:var(--gold)}
.cat-count{font-size:10px;background:rgba(201,168,76,0.15);color:var(--gold);padding:2px 7px;border-radius:999px;font-weight:600}
.cat-arrow{font-size:10px;transition:transform .2s;color:var(--muted)}
.cat-header.open .cat-arrow{transform:rotate(180deg);color:var(--gold)}
.cat-body{display:none;border:1px solid var(--cream2);border-top:none;border-radius:0 0 8px 8px;padding:7px;background:#fff}
.cat-body.open{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.cl-item{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);padding:6px 8px;border:1px solid var(--cream2);border-radius:6px;cursor:pointer;background:var(--cream);user-select:none;transition:all .15s}
.cl-item input{display:none}
.cl-check{width:13px;height:13px;border-radius:3px;border:1.5px solid #ccc;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}
.cl-check svg{display:none}
.cl-item.checked{border-color:var(--gold);background:rgba(201,168,76,0.06);color:var(--text)}
.cl-item.checked .cl-check{background:var(--gold);border-color:var(--gold)}
.cl-item.checked .cl-check svg{display:block}

/* ── BOTÃO GERAR ── */
.btn-gerar{width:100%;padding:12px;background:var(--navy);color:#fff;border:none;border-radius:var(--r);font-family:DM Sans,sans-serif;font-size:14px;font-weight:500;cursor:pointer;margin-top:16px;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .2s}
.btn-gerar:hover{background:var(--navy2)}
.btn-gerar:disabled{opacity:.5;cursor:not-allowed}
.spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:none}
.btn-gerar.loading .spinner{display:block}
@keyframes spin{to{transform:rotate(360deg)}}

/* ── PREVIEW GERADOR ── */
.preview{background:var(--cream);padding:26px 30px;overflow-y:auto;max-height:100%}
.preview-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.preview-title{font-family:Georgia,serif;font-size:18px;color:var(--navy);font-weight:700}
.btns-row{display:flex;gap:7px}
.btn-act{padding:7px 13px;border-radius:8px;font-size:12px;font-family:DM Sans,sans-serif;font-weight:500;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:5px}
.btn-copy{background:#fff;border:1px solid var(--cream2);color:var(--muted)}
.btn-copy:hover{border-color:var(--gold);color:var(--navy)}
.btn-docx{background:var(--navy);border:none;color:#fff}
.btn-docx:hover{background:var(--navy2)}
.btn-docx:disabled{opacity:.4;cursor:not-allowed}
.btn-print{background:transparent;border:1px solid var(--cream2);color:var(--muted)}
.btn-print:hover{border-color:var(--navy);color:var(--navy)}
.papel{background:#fff;border:1px solid var(--cream2);border-radius:12px;padding:36px 40px;min-height:500px;box-shadow:0 2px 16px rgba(15,30,53,0.06);position:relative}
.papel::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--navy),var(--gold));border-radius:12px 12px 0 0}
.papel-wm{position:absolute;bottom:24px;right:28px;font-family:Georgia,serif;font-size:10px;color:rgba(201,168,76,0.2);letter-spacing:.08em;text-transform:uppercase;pointer-events:none}
.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:440px;gap:10px;text-align:center}
.empty-icon{width:48px;height:48px;background:var(--cream2);border-radius:50%;display:flex;align-items:center;justify-content:center}
.empty-icon svg{width:22px;height:22px;opacity:.4}
.empty-state h3{font-size:14px;color:var(--navy);font-weight:500}
.empty-state p{font-size:12px;color:var(--muted);max-width:260px;line-height:1.6}
.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:440px;gap:14px}
.loading-ring{width:38px;height:38px;border:3px solid var(--cream2);border-top-color:var(--gold);border-radius:50%;animation:spin .8s linear infinite}
.loading-state p{font-size:12px;color:var(--muted)}
#contrato-texto{font-family:DM Sans,sans-serif;font-size:13px;line-height:1.9;color:#1a1a1a;white-space:pre-wrap;word-break:break-word}
.stream-cursor{display:inline-block;width:2px;height:13px;background:var(--gold);margin-left:2px;animation:blink .7s step-end infinite;vertical-align:middle}
@keyframes blink{50%{opacity:0}}
.badge-novo{display:inline-block;background:rgba(201,168,76,0.15);color:var(--gold);font-size:10px;font-weight:600;padding:2px 8px;border-radius:4px;border:1px solid var(--border);vertical-align:middle;margin-left:8px}

/* ── CALCULADORA ── */
.calc-sidebar{background:#fff;border-right:1px solid var(--cream2);padding:24px 22px;overflow-y:auto;max-height:100%}
.calc-preview,.cprev{background:var(--cream);padding:26px 30px;overflow-y:auto;max-height:100%}
.result-card{background:#fff;border:1px solid var(--cream2);border-radius:12px;padding:30px 34px;min-height:400px;box-shadow:0 2px 16px rgba(15,30,53,.06);position:relative}
.result-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--navy),var(--gold));border-radius:12px 12px 0 0}
.result-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:360px;gap:10px;text-align:center}
.result-empty .ei{width:48px;height:48px;background:var(--cream2);border-radius:50%;display:flex;align-items:center;justify-content:center}
.result-empty .ei svg{width:22px;height:22px;opacity:.4}
.result-empty h3{font-size:14px;color:var(--navy);font-weight:500}
.result-empty p{font-size:12px;color:var(--muted);max-width:240px;line-height:1.6}
.honor-titulo{font-family:Georgia,serif;font-size:16px;font-weight:700;color:var(--navy);margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--cream2)}
.honor-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}
.honor-box{background:var(--cream);border-radius:9px;padding:13px 15px;border:1px solid var(--cream2)}
.honor-box.destaque{background:var(--navy);border-color:var(--navy)}
.honor-box.destaque .hb-label{color:var(--gold)}
.honor-box.destaque .hb-val{color:#fff}
.hb-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:4px}
.hb-val{font-family:Georgia,serif;font-size:20px;font-weight:700;color:var(--navy);line-height:1}
.hb-sub{font-size:11px;color:var(--muted);margin-top:3px}
.honor-obs{background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.2);border-radius:7px;padding:11px 13px;font-size:12px;color:var(--text);line-height:1.6;margin-bottom:14px}
.honor-tabela{width:100%;border-collapse:collapse;font-size:12px;margin-bottom:14px}
.honor-tabela th{background:var(--navy);color:var(--gold);padding:7px 10px;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.honor-tabela td{padding:6px 10px;border-bottom:1px solid var(--cream2);color:var(--text)}
.honor-tabela tr:last-child td{border-bottom:none}
.honor-tabela tr:nth-child(even) td{background:var(--cream)}
.honor-base-legal{font-size:11px;color:var(--muted);font-style:italic;line-height:1.6;border-top:1px solid var(--cream2);padding-top:11px;margin-top:4px}
.btn-copiar-honor{width:100%;padding:10px;background:var(--navy);color:#fff;border:none;border-radius:var(--r);font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;cursor:pointer;margin-top:12px;transition:background .2s}
.btn-copiar-honor:hover{background:var(--navy2)}

@media print{header,.sidebar,.calc-sidebar,.preview-header,.btns-row{display:none!important}.tool-screen.active{display:block}.preview,.calc-preview,.cprev{padding:0;max-height:none}.papel,.result-card{box-shadow:none;border:none;border-radius:0;padding:20px}.papel::before,.result-card::before{display:none}}
@media(max-width:780px){.tool-screen.active{grid-template-columns:1fr}.sidebar,.calc-sidebar,.preview,.calc-preview,.cprev{max-height:none}}




/* ── VARIAVEIS E RESET ── */
:root{--navy:#0f1e35;--navy2:#162844;--navy3:#1e3a5f;--gold:#c9a84c;--gold2:#e8c96a;--gold3:#b89040;--cream:#f5f0e8;--cream2:#ede7d9;--cream3:#faf8f4;--text:#1a1a1a;--muted:#6b6b6b;--r:10px;--green:#1a7a3c;--red:#9a1b1b}
*{box-sizing:border-box}
/* ── LOGIN ── */
.login-screen{position:fixed;inset:0;background:var(--navy);display:flex;align-items:center;justify-content:center;z-index:9999}
.login-card{background:#fff;border-radius:16px;padding:36px 32px;width:100%;max-width:400px}
.login-logo{text-align:center;margin-bottom:24px}
.login-logo-badge{width:50px;height:50px;background:linear-gradient(135deg,var(--gold),var(--gold2));border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:"Playfair Display",serif;font-size:22px;color:var(--navy);font-weight:700;margin:0 auto 10px}
.login-logo strong{font-family:"Playfair Display",serif;font-size:19px;color:var(--navy);display:block}
.login-logo span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.login-tabs{display:flex;border-bottom:1px solid var(--cream2);margin-bottom:18px}
.login-tab{flex:1;padding:8px;text-align:center;font-size:13px;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}
.login-tab.active{color:var(--navy);border-bottom-color:var(--gold);font-weight:500}
.login-form{display:none}.login-form.active{display:block}
.lf{margin-bottom:12px}
.lf label{display:block;font-size:10px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
.lf input{width:100%;border:1px solid var(--cream2);border-radius:8px;padding:9px 12px;font-size:13px;font-family:"DM Sans",sans-serif;color:var(--text)}
.lf input:focus{outline:none;border-color:var(--gold)}
.login-btn{width:100%;padding:11px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-family:"DM Sans",sans-serif;font-size:14px;font-weight:500;cursor:pointer;margin-top:4px;transition:background .2s}
.login-btn:hover{background:var(--navy2)}
.login-btn:disabled{opacity:.5;cursor:not-allowed}
.le{background:#fde8e8;border-radius:6px;padding:8px 12px;font-size:12px;color:var(--red);margin-top:8px;display:none}
.ls{background:#e8f5e9;border-radius:6px;padding:8px 12px;font-size:12px;color:var(--green);margin-top:8px;display:none}
/* ── HEADER USER ── */
.user-info{display:flex;align-items:center;gap:8px;cursor:pointer;position:relative}
.uav{width:32px;height:32px;border-radius:50%;background:rgba(201,168,76,.2);border:1px solid rgba(201,168,76,.4);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--gold)}
.unm{font-size:12px;color:rgba(255,255,255,.85);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.uoab{font-size:10px;color:rgba(255,255,255,.4)}
.udrop{position:absolute;top:44px;right:0;background:#fff;border:1px solid var(--cream2);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12);min-width:190px;z-index:999;display:none}
.udrop.open{display:block}
.udrop-item{padding:10px 14px;font-size:13px;color:var(--text);cursor:pointer;transition:background .15s;display:flex;align-items:center;gap:8px}
.udrop-item:hover{background:var(--cream)}
.udrop-item.sair{color:var(--red);border-top:1px solid var(--cream2)}
/* ── MODAL PERFIL ── */
.modal-ov{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:9998;display:none;align-items:center;justify-content:center}
.modal-ov.open{display:flex}
.modal-card{background:#fff;border-radius:14px;padding:26px;width:100%;max-width:460px}
.modal-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.modal-ttl{font-family:"Playfair Display",serif;font-size:17px;font-weight:700;color:var(--navy)}
.modal-x{background:none;border:none;font-size:18px;cursor:pointer;color:var(--muted)}
/* ── TELAS ── */
.tool-screen{display:none}
.tool-screen.active{display:grid;grid-template-columns:380px 1fr;grid-template-rows:minmax(0,1fr);height:100%;overflow:hidden}
.sidebar,.calc-sidebar,.asidebar{background:#fff;border-right:1px solid var(--cream2);padding:20px 18px;overflow-y:auto;height:100%;width:100%;min-height:0}
.sidebar-title,.stitle{font-family:"Playfair Display",serif;font-size:17px;font-weight:700;color:var(--navy);margin-bottom:2px}
.sidebar-sub,.ssub{font-size:12px;color:var(--muted);margin-bottom:16px;line-height:1.5}
.preview,.calc-preview,.cprev,.aprev{background:var(--cream);padding:22px 26px;overflow-y:auto;height:100%;display:flex;flex-direction:column;min-width:0;min-height:0}
.preview > *,.calc-preview > *,.cprev > *,.aprev > *{flex-shrink:0}
.preview-header,.prev-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.preview-title,.prev-ttl{font-family:"Playfair Display",serif;font-size:17px;color:var(--navy);font-weight:700}
.field{margin-bottom:11px}
.field label{display:block;font-size:10px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
.field select,.field input,.field textarea{width:100%;border:1px solid var(--cream2);border-radius:8px;padding:7px 10px;font-size:13px;font-family:"DM Sans",sans-serif;background:#fff;color:var(--text);appearance:none;transition:border-color .2s}
.field select:focus,.field input:focus,.field textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.1)}
.field textarea{resize:vertical;min-height:60px;line-height:1.5}
.r2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.r3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}
.sdiv{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--gold);border-bottom:1px solid rgba(201,168,76,.2);padding-bottom:4px;margin:13px 0 9px}
.btn-main,.btn-gerar{width:100%;padding:11px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-family:"DM Sans",sans-serif;font-size:14px;font-weight:500;cursor:pointer;margin-top:12px;display:flex;align-items:center;justify-content:center;gap:7px;transition:background .2s}
.btn-main:hover,.btn-gerar:hover{background:var(--navy2)}
.btn-main:disabled,.btn-gerar:disabled{opacity:.5;cursor:not-allowed}
.btn-sec{width:100%;padding:9px;background:transparent;color:var(--navy);border:1px solid var(--cream2);border-radius:8px;font-family:"DM Sans",sans-serif;font-size:13px;font-weight:500;cursor:pointer;margin-top:6px;transition:all .2s}
.btn-sec:hover{border-color:var(--gold);color:var(--gold)}
.sp{width:13px;height:13px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:none}
.btn-main.loading .sp,.btn-gerar.loading .sp{display:block}
@keyframes spin{to{transform:rotate(360deg)}}
.brow,.btns-row{display:flex;gap:6px;flex-wrap:wrap}
.ba,.btn-act{padding:6px 12px;border-radius:7px;font-size:12px;font-family:"DM Sans",sans-serif;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:4px;border:none;transition:all .15s}
.bc,.btn-copy{background:#fff;border:1px solid var(--cream2);color:var(--muted)}
.bc:hover,.btn-copy:hover{border-color:var(--gold);color:var(--navy)}
.bd,.btn-docx{background:var(--navy);color:#fff}
.bd:hover,.btn-docx:hover{background:var(--navy2)}
.bd:disabled,.btn-docx:disabled{opacity:.4;cursor:not-allowed}
.bp,.btn-print{background:transparent;border:1px solid var(--cream2);color:var(--muted)}
.bp:hover,.btn-print:hover{border-color:var(--navy);color:var(--navy)}
.papel{background:#fff;border:1px solid var(--cream2);border-radius:11px;padding:32px 36px;min-height:460px;position:relative;box-shadow:0 2px 14px rgba(15,30,53,.06)}
.papel::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--navy),var(--gold));border-radius:11px 11px 0 0}
.pwm,.papel-wm{position:absolute;bottom:18px;right:22px;font-family:"Playfair Display",serif;font-size:10px;color:rgba(201,168,76,.18);letter-spacing:.08em;text-transform:uppercase;pointer-events:none}
.est,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:9px;text-align:center}
.est-ic,.empty-icon{width:44px;height:44px;background:var(--cream2);border-radius:50%;display:flex;align-items:center;justify-content:center}
.est-ic svg,.empty-icon svg{width:20px;height:20px;opacity:.4}
.est h3,.empty-state h3{font-size:14px;color:var(--navy);font-weight:500}
.est p,.empty-state p{font-size:12px;color:var(--muted);max-width:240px;line-height:1.6}
.lst,.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:12px}
.lr,.loading-ring{width:36px;height:36px;border:3px solid var(--cream2);border-top-color:var(--gold);border-radius:50%;animation:spin .8s linear infinite}
.lst p,.loading-state p{font-size:12px;color:var(--muted)}
#ct,#contrato-texto{font-size:13px;line-height:1.9;white-space:pre-wrap;word-break:break-word}
.sc,.stream-cursor{display:inline-block;width:2px;height:12px;background:var(--gold);margin-left:2px;animation:blink .7s step-end infinite;vertical-align:middle}
@keyframes blink{50%{opacity:0}}
.bnv,.badge-novo{display:inline-block;background:rgba(201,168,76,.15);color:var(--gold);font-size:10px;font-weight:600;padding:2px 7px;border-radius:4px;border:1px solid rgba(201,168,76,.25);vertical-align:middle;margin-left:7px}
.cat-sec,.cat-section{margin-bottom:5px}
.cat-hdr,.cat-header{display:flex;align-items:center;justify-content:space-between;padding:6px 9px;background:var(--cream);border:1px solid var(--cream2);border-radius:7px;cursor:pointer;user-select:none}
.cat-hdr.open,.cat-header.open{border-radius:7px 7px 0 0;background:var(--navy);border-bottom-color:transparent}
.cat-ttl,.cat-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text)}
.cat-hdr.open .cat-ttl,.cat-header.open .cat-title{color:var(--gold)}
.cat-cnt,.cat-count{font-size:10px;background:rgba(201,168,76,.15);color:var(--gold);padding:1px 6px;border-radius:999px;font-weight:600}
.cat-arr,.cat-arrow{font-size:9px;color:var(--muted);transition:transform .2s}
.cat-hdr.open .cat-arr,.cat-header.open .cat-arrow{transform:rotate(180deg);color:var(--gold)}
.cat-bdy,.cat-body{display:none;border:1px solid var(--cream2);border-top:none;border-radius:0 0 7px 7px;padding:5px;background:#fff}
.cat-bdy.open,.cat-body.open{display:grid;grid-template-columns:1fr 1fr;gap:3px}
.cl-item{display:flex;align-items:flex-start;gap:5px;font-size:11px;color:var(--muted);padding:5px 7px;border:1px solid var(--cream2);border-radius:5px;cursor:pointer;background:var(--cream);user-select:none;transition:all .15s}
.cl-item input{display:none}
.cl-chk,.cl-check{width:12px;height:12px;border-radius:2px;border:1.5px solid #ccc;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.cl-chk svg,.cl-check svg{display:none}
.cl-item.checked{border-color:var(--gold);background:rgba(201,168,76,.06);color:var(--text)}
.cl-item.checked .cl-chk,.cl-item.checked .cl-check{background:var(--gold);border-color:var(--gold)}
.cl-item.checked .cl-chk svg,.cl-item.checked .cl-check svg{display:block}
.cl-body{display:flex;flex-direction:column;gap:1px;min-width:0}
.cl-lbl{font-size:11px;font-weight:500;line-height:1.3;color:inherit}
.cl-hint{font-size:9px;color:var(--muted);line-height:1.3;opacity:.8;white-space:normal}
.cl-item.checked .cl-hint{opacity:.7;color:var(--navy)}
.rcard,.result-card{background:#fff;border:1px solid var(--cream2);border-radius:12px;min-height:360px;overflow:hidden;box-shadow:0 2px 14px rgba(15,30,53,.06)}
.rtop,.result-card-top{background:var(--navy);padding:20px 24px}
.remp,.result-empty,.honor-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:320px;gap:9px;text-align:center;padding:20px}
.remp .ei,.result-empty .ei{width:44px;height:44px;background:var(--cream2);border-radius:50%;display:flex;align-items:center;justify-content:center}
.remp .ei svg,.result-empty .ei svg{width:20px;height:20px;opacity:.4}
.remp h3,.result-empty h3{font-size:14px;color:var(--navy);font-weight:500}
.remp p,.result-empty p{font-size:12px;color:var(--muted);max-width:220px;line-height:1.6}
.rl2{font-size:10px;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
.rv,.honor-tipo-val{font-family:"Playfair Display",serif;font-size:15px;color:var(--gold2);font-weight:700;margin-bottom:12px}
.hvg,.honor-valores{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.hb,.hv-box{background:rgba(255,255,255,.07);border-radius:7px;padding:10px;border:1px solid rgba(255,255,255,.1)}
.hb.main,.hv-box.main{background:rgba(201,168,76,.15);border-color:rgba(201,168,76,.4)}
.hbl,.hv-label{font-size:9px;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
.hbv,.hv-val{font-family:"Playfair Display",serif;font-size:17px;font-weight:700;color:#fff;line-height:1}
.hbv.m,.hv-val.main-val{color:var(--gold2);font-size:21px}
.hbs,.hv-sub{font-size:10px;color:rgba(255,255,255,.4);margin-top:2px}
.rbody,.result-card-body{padding:20px 24px}
.hs,.honor-section{margin-bottom:15px}
.hst,.honor-section-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--gold);border-bottom:1px solid rgba(201,168,76,.2);padding-bottom:5px;margin-bottom:8px}
.ht,.honor-tabela{width:100%;border-collapse:collapse;font-size:12px}
.ht th,.honor-tabela th{background:var(--navy);color:var(--gold);padding:6px 9px;text-align:left;font-size:10px;text-transform:uppercase;font-weight:600}
.ht th:last-child,.ht td:last-child,.honor-tabela th:last-child,.honor-tabela td:last-child{text-align:right}
.ht td,.honor-tabela td{padding:6px 9px;border-bottom:1px solid var(--cream2);color:var(--text)}
.ht td:last-child,.honor-tabela td:last-child{font-weight:500;color:var(--navy)}
.ht tr:last-child td,.honor-tabela tr:last-child td{border-bottom:none}
.ht tr:nth-child(even) td,.honor-tabela tr:nth-child(even) td{background:var(--cream)}
.hobs{background:rgba(201,168,76,.07);border:1px solid rgba(201,168,76,.2);border-radius:7px;padding:10px 12px;font-size:12px;line-height:1.6;margin-bottom:11px}
.hbl2,.honor-base-legal{font-size:11px;color:var(--muted);font-style:italic;line-height:1.5;background:var(--cream);border-radius:7px;padding:9px 11px;margin-bottom:11px}
.bhrow,.btns-honor{display:flex;gap:7px}
.bch,.btn-copiar-honor{flex:1;padding:9px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-family:"DM Sans",sans-serif;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px}
.bch:hover,.btn-copiar-honor:hover{background:var(--navy2)}
.bdh,.btn-docx-honor{padding:9px 13px;background:transparent;color:var(--navy);border:1px solid var(--cream2);border-radius:8px;font-family:"DM Sans",sans-serif;font-size:13px;cursor:pointer;display:flex;align-items:center;gap:5px}
.bdh:hover,.btn-docx-honor:hover{border-color:var(--gold);color:var(--gold)}
.rdot,.rating-dot{width:7px;height:7px;border-radius:50%;background:var(--cream2);display:inline-block;margin-right:2px}
.rdot.on,.rating-dot.ativo{background:var(--gold)}
.analise-card{background:#fff;border:1px solid var(--cream2);border-radius:12px;overflow:hidden;box-shadow:0 2px 14px rgba(15,30,53,.06)}
.analise-header{background:var(--navy);padding:18px 22px}
.analise-titulo{font-family:"Playfair Display",serif;font-size:16px;color:var(--gold2);font-weight:700;margin-bottom:4px}
.analise-sub{font-size:11px;color:rgba(255,255,255,.5)}
.analise-body{padding:20px 22px}
.analise-secao{margin-bottom:18px}
.analise-secao-titulo{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding-bottom:6px;margin-bottom:10px;border-bottom:1px solid var(--cream2)}
.item-analise{padding:9px 12px;border-radius:8px;margin-bottom:6px;font-size:12px;line-height:1.6;border-left:3px solid transparent}
.item-alto{background:#fde8e8;border-color:#9a1b1b;color:#5a0a0a}
.item-medio{background:#fff3e0;border-color:#c9a84c;color:#4a3200}
.item-baixo{background:#e8f5e9;border-color:#1a7a3c;color:#0a3a1a}
.item-ok{background:#e8f4fd;border-color:#1a5fa8;color:#0a2a4a}
.item-analise strong{display:block;margin-bottom:2px;font-weight:500}
.score-circle{width:72px;height:72px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto 12px;border:3px solid transparent}
.score-alto{background:#fde8e8;border-color:#9a1b1b;color:#9a1b1b}
.score-medio{background:#fff3e0;border-color:#c9a84c;color:#7a5900}
.score-bom{background:#e8f5e9;border-color:#1a7a3c;color:#1a7a3c}
.score-n{font-family:"Playfair Display",serif;font-size:22px;font-weight:700;line-height:1}
.score-l{font-size:9px;text-transform:uppercase;letter-spacing:.05em;margin-top:2px}
.resumo-bar{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:16px}
.resumo-item{background:var(--cream);border-radius:8px;padding:10px;text-align:center;border:1px solid var(--cream2)}
.resumo-n{font-family:"Playfair Display",serif;font-size:22px;font-weight:700;line-height:1}
.resumo-l{font-size:10px;color:var(--muted);margin-top:3px}
.analise-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:380px;gap:10px;text-align:center;padding:20px}
.analise-empty svg{width:44px;height:44px;opacity:.3}
.analise-empty h3{font-size:14px;color:var(--navy);font-weight:500}
.analise-empty p{font-size:12px;color:var(--muted);max-width:240px;line-height:1.6}
.upload-area{border:2px dashed var(--cream2);border-radius:10px;padding:24px;text-align:center;cursor:pointer;transition:all .2s;background:#fff;margin-bottom:10px}
.upload-area:hover,.upload-area.drag{border-color:var(--gold);background:rgba(201,168,76,.04)}
.upload-area input{display:none}
.file-preview{background:var(--cream);border:1px solid var(--cream2);border-radius:8px;padding:10px 13px;display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:12px}
.file-icon{width:32px;height:32px;background:var(--navy);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:11px;font-weight:700;flex-shrink:0}
.file-info strong{font-size:13px;color:var(--navy);display:block}
.file-info span{color:var(--muted)}
.file-remove{margin-left:auto;background:none;border:none;cursor:pointer;color:var(--muted);font-size:16px;padding:4px}
.pet-sidebar{background:#fff;border-right:1px solid var(--cream2);overflow-y:auto;height:100%;display:flex;flex-direction:column}
.pet-steps{display:flex;border-bottom:1px solid var(--cream2);background:var(--cream);padding:0}
.pet-step{flex:1;padding:10px 4px;text-align:center;font-size:11px;color:var(--muted);border-bottom:2px solid transparent;cursor:pointer;user-select:none;transition:all .2s;line-height:1.4}
.pet-step.active{color:var(--navy);border-bottom-color:var(--gold);font-weight:500}
.pet-step.done{color:var(--green)}
.pet-step-num{display:block;width:20px;height:20px;border-radius:50%;background:var(--cream2);font-size:10px;font-weight:600;line-height:20px;margin:0 auto 4px;transition:all .2s}
.pet-step.active .pet-step-num{background:var(--navy);color:var(--gold)}
.pet-step.done .pet-step-num{background:var(--green);color:#fff}
.pet-panel{display:none;padding:18px;flex:1;overflow-y:auto}
.pet-panel.active{display:block}
.pet-preview{background:var(--cream);padding:22px 26px;overflow-y:auto;height:100%}
.pet-aviso{background:#fff3e0;border:1px solid rgba(201,168,76,.3);border-radius:8px;padding:10px 13px;font-size:12px;color:#7a5900;line-height:1.6;margin-bottom:12px;display:flex;gap:8px;align-items:flex-start}
.pet-aviso-icon{font-size:14px;flex-shrink:0;margin-top:1px}
.pet-secao{background:#fff;border:1px solid var(--cream2);border-radius:10px;margin-bottom:8px;overflow:hidden;transition:border-color .2s}
.pet-secao.aprovada{border-color:var(--green)}
.pet-secao.editando{border-color:var(--gold)}
.pet-secao-header{padding:11px 14px;display:flex;align-items:center;gap:10px;cursor:pointer;background:var(--cream)}
.pet-secao.aprovada .pet-secao-header{background:#e8f5e9}
.pet-secao.editando .pet-secao-header{background:rgba(201,168,76,.08)}
.pet-secao-titulo{font-size:13px;font-weight:500;color:var(--navy);flex:1}
.pet-badge{font-size:10px;font-weight:600;padding:2px 8px;border-radius:999px;flex-shrink:0}
.pet-badge-ok{background:#e8f5e9;color:var(--green)}
.pet-badge-pend{background:rgba(201,168,76,.15);color:var(--gold)}
.pet-badge-edit{background:rgba(201,168,76,.2);color:var(--muted)}
.pet-secao-body{padding:12px 14px;display:none}
.pet-secao.open .pet-secao-body{display:block}
.pet-secao-texto{font-size:12px;line-height:1.75;color:var(--text);white-space:pre-wrap;background:var(--cream);border-radius:6px;padding:10px 12px;margin-bottom:8px;border:1px solid var(--cream2)}
.pet-secao-edit{width:100%;border:1px solid var(--cream2);border-radius:6px;padding:10px 12px;font-size:12px;font-family:"DM Sans",sans-serif;line-height:1.75;resize:vertical;min-height:100px;display:none}
.pet-secao-edit.visible{display:block}
.pet-secao-acoes{display:flex;gap:6px;flex-wrap:wrap}
.pet-btn-sm{padding:5px 11px;border-radius:6px;font-size:11px;font-weight:500;font-family:"DM Sans",sans-serif;cursor:pointer;border:none;transition:all .15s}
.pet-btn-aprovar{background:var(--green);color:#fff}
.pet-btn-editar{background:transparent;color:var(--navy);border:1px solid var(--cream2)}
.pet-btn-editar:hover{border-color:var(--gold)}
.pet-btn-regen{background:transparent;color:var(--muted);border:1px solid var(--cream2);font-size:10px}
.pet-btn-regen:hover{border-color:var(--navy);color:var(--navy)}
.pet-final{background:#fff;border:1px solid var(--cream2);border-radius:12px;padding:26px 30px;min-height:400px;position:relative;box-shadow:0 2px 14px rgba(15,30,53,.06)}
.pet-final::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--navy),var(--gold));border-radius:12px 12px 0 0}
.pet-final-txt{font-size:13px;line-height:1.9;white-space:pre-wrap;word-break:break-word}
.pet-final-wm{position:absolute;bottom:18px;right:22px;font-family:"Playfair Display",serif;font-size:10px;color:rgba(201,168,76,.18);letter-spacing:.08em;text-transform:uppercase;pointer-events:none}
/* ── Petition Preview Header (redesign) ──────────────────────── */
.pet-prev-hdr{flex-direction:column!important;align-items:stretch!important;gap:12px;background:#fff;border:1px solid #eee;border-radius:14px;padding:16px 18px;margin-bottom:14px;box-shadow:0 2px 12px rgba(15,30,53,.06)}
.pet-prev-title-row{display:flex;align-items:center;gap:8px}
.pet-prev-icon{width:15px;height:15px;stroke:var(--gold);stroke-width:1.75;fill:none;flex-shrink:0}
.pet-prev-hdr .prev-ttl{margin:0;font-size:15px}
.pet-brow{gap:7px!important;align-items:center}
.pet-brow-sep{width:1px;height:22px;background:#e0e0e0;margin:0 3px;flex-shrink:0}
.ba-doc{background:rgba(15,30,53,.07);color:var(--navy);border:1px solid rgba(15,30,53,.18)!important}
.ba-doc:hover:not(:disabled){background:rgba(15,30,53,.13);border-color:rgba(15,30,53,.3)!important}
.ba-link{background:rgba(201,168,76,.1);color:#7a5500;border:1px solid rgba(201,168,76,.3)!important}
.ba-link:hover:not(:disabled){background:rgba(201,168,76,.18)}
.ba:disabled{opacity:.38;cursor:not-allowed}
.ba i,.ba svg.lucide{width:12px;height:12px;stroke:currentColor;stroke-width:2;fill:none;flex-shrink:0}
/* ── Petition Empty State (redesign) ─────────────────────────── */
.pet-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:360px;gap:12px;text-align:center;padding:28px 24px}
.pet-empty-icon-wrap{width:72px;height:72px;border-radius:18px;background:linear-gradient(135deg,rgba(15,30,53,.07),rgba(201,168,76,.1));display:flex;align-items:center;justify-content:center;margin-bottom:4px}
.pet-empty-icon-wrap svg{width:32px;height:32px;stroke:var(--navy);opacity:.55}
.pet-empty h3{font-size:15px;font-weight:700;color:var(--navy);margin:0}
.pet-empty p{font-size:12.5px;color:var(--muted);max-width:280px;line-height:1.65;margin:0}
.pet-empty-steps{display:flex;align-items:center;gap:6px;margin-top:6px;flex-wrap:wrap;justify-content:center}
.pet-empty-step{display:flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;color:#666}
.pet-empty-step-n{width:20px;height:20px;border-radius:50%;background:var(--navy);color:#fff;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.pet-empty-step-arr{font-size:13px;color:#bbb}
/* ── Contract Preview Header (redesign, mirror das Petições) ─── */
.ctr-prev-hdr{flex-direction:column!important;align-items:stretch!important;gap:12px;background:#fff;border:1px solid #eee;border-radius:14px;padding:16px 18px;margin-bottom:14px;box-shadow:0 2px 12px rgba(15,30,53,.06)}
.ctr-prev-title-row{display:flex;align-items:center;gap:8px}
.ctr-prev-icon{width:15px;height:15px;stroke:var(--gold);stroke-width:1.75;fill:none;flex-shrink:0}
.ctr-prev-hdr .preview-title{margin:0;font-size:15px}
.ctr-brow{gap:7px!important;align-items:center;flex-wrap:wrap}
.ctr-brow-sep{width:1px;height:22px;background:#e0e0e0;margin:0 3px;flex-shrink:0}
.ctr-btn-assinar{background:var(--gold)!important;color:var(--navy)!important;border:1px solid var(--gold)!important;font-weight:600}
.ctr-btn-assinar:hover{background:#b8932f!important}
.ctr-brow .ba:disabled{opacity:.38;cursor:not-allowed}
.ctr-brow .ba i{vertical-align:middle}
/* Empty state de contrato — alinhado ao visual das Petições */
#screen-contratos .empty-icon{width:72px;height:72px;border-radius:18px;background:linear-gradient(135deg,rgba(15,30,53,.07),rgba(201,168,76,.1));margin-bottom:4px}
#screen-contratos .empty-icon svg{width:32px;height:32px;stroke:var(--navy);opacity:.55}
#screen-contratos .empty-state{gap:12px}
#screen-contratos .empty-state h3{font-size:15px;font-weight:700}
#screen-contratos .empty-state p{font-size:12.5px;max-width:280px;line-height:1.65}
/* ── PARECERES — preview panel polish ── */
.par-prev-hdr{flex-direction:column!important;align-items:stretch!important;gap:12px;background:#fff;border:1px solid #eee;border-radius:14px;padding:16px 18px;margin-bottom:14px;box-shadow:0 2px 12px rgba(15,30,53,.06)}
.par-prev-title-row{display:flex;align-items:center;gap:8px}
.par-prev-icon{width:15px;height:15px;stroke:var(--gold);stroke-width:1.75;fill:none;flex-shrink:0}
.par-prev-hdr .prev-ttl{margin:0;font-size:15px}
.par-brow{gap:7px!important;align-items:center}
.par-brow-sep{width:1px;height:22px;background:#e0e0e0;margin:0 3px;flex-shrink:0}
.par-brow .ba:disabled{opacity:.38;cursor:not-allowed}
.par-brow .ba i{vertical-align:middle}
.par-empty-icon-wrap{width:72px;height:72px;border-radius:18px;background:linear-gradient(135deg,rgba(15,30,53,.07),rgba(201,168,76,.1));display:flex;align-items:center;justify-content:center;margin-bottom:4px}
.par-empty-icon-wrap svg{width:32px;height:32px;stroke:var(--navy);opacity:.55}
.par-empty h3{font-size:15px;font-weight:700}
.par-empty p{font-size:12.5px;max-width:280px;line-height:1.65}
.par-empty-steps{display:flex;align-items:center;gap:6px;margin-top:6px;flex-wrap:wrap;justify-content:center}
.par-empty-step{display:flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;color:#666}
.par-empty-step-n{width:20px;height:20px;border-radius:50%;background:var(--navy);color:#fff;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.par-empty-step-arr{font-size:13px;color:#bbb}
.pet-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:380px;gap:14px}
.progresso-bar{height:4px;background:var(--cream2);border-radius:2px;margin:10px 16px;overflow:hidden}
.progresso-bar-fill{height:100%;background:linear-gradient(90deg,var(--navy),var(--gold));border-radius:2px;transition:width .4s}
.tag-obrigatorio{display:inline-block;font-size:10px;background:#fde8e8;color:var(--red);padding:1px 6px;border-radius:3px;margin-left:4px;vertical-align:middle}
.tag-opcional{display:inline-block;font-size:10px;background:var(--cream);color:var(--muted);padding:1px 6px;border-radius:3px;margin-left:4px;vertical-align:middle}
.draft-bar{background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.2);border-radius:8px;padding:7px 12px;display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:11px;color:var(--muted)}
.hist-item{background:#fff;border:1px solid var(--cream2);border-radius:8px;padding:9px 12px;margin-bottom:6px;display:flex;align-items:center;gap:10px;font-size:12px}
.hist-tipo{font-size:12px;font-weight:500;color:var(--navy);flex:1}
.hist-data{font-size:11px;color:var(--muted)}
.hist-btn{font-size:11px;padding:3px 8px;border:1px solid var(--cream2);border-radius:5px;background:transparent;cursor:pointer;color:var(--muted)}
.hist-btn:hover{border-color:var(--gold);color:var(--gold)}
@media(max-width:760px){.tool-screen.active{grid-template-columns:1fr}.sidebar,.calc-sidebar,.asidebar,.preview,.calc-preview,.cprev,.aprev,.pet-preview{max-height:none}.hvg,.resumo-bar{grid-template-columns:1fr 1fr}}


/* ── GESTAO DE PROCESSOS ── */
.proc-wrap{display:grid;grid-template-columns:1fr 420px;min-height:100%;transition:grid-template-columns .3s}
.proc-wrap.drawer-closed{grid-template-columns:1fr 0px}
.proc-main{background:var(--cream);overflow-y:auto;height:100%;min-height:0}
.proc-topbar{background:#fff;border-bottom:1px solid var(--cream2);padding:14px 20px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.proc-topbar-ttl{font-family:"Playfair Display",serif;font-size:16px;font-weight:700;color:var(--navy);flex:1}
.proc-search{border:1px solid var(--cream2);border-radius:8px;padding:7px 12px;font-size:13px;font-family:"DM Sans",sans-serif;width:200px;background:#fff}
.proc-search:focus{outline:none;border-color:var(--gold)}
.proc-filter{border:1px solid var(--cream2);border-radius:8px;padding:7px 10px;font-size:12px;font-family:"DM Sans",sans-serif;background:#fff;cursor:pointer}
.proc-btn-new{padding:8px 16px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;font-family:"DM Sans",sans-serif;white-space:nowrap}
.proc-btn-new:hover{background:var(--navy2)}
.proc-tabs{display:flex;border-bottom:1px solid var(--cream2);background:#fff;padding:0 20px}
.proc-tab{padding:10px 16px;font-size:13px;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;white-space:nowrap}
.proc-tab.active{color:var(--navy);border-bottom-color:var(--gold);font-weight:500}
.proc-list{padding:16px 20px;display:flex;flex-direction:column;gap:10px}
.pcard{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:14px 16px;cursor:pointer;transition:all .2s;position:relative}
.pcard:hover{border-color:var(--gold);box-shadow:0 2px 12px rgba(15,30,53,.07)}
.pcard.selected{border-color:var(--gold);border-width:2px}
.pcard-top{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px}
.pcard-icon{width:36px;height:36px;border-radius:8px;background:var(--cream);display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}
.pcard-info{flex:1;min-width:0}
.pcard-ttl{font-size:14px;font-weight:500;color:var(--navy);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pcard-num{font-size:11px;color:var(--muted);font-family:monospace}
.pcard-meta{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.pchip{font-size:10px;padding:2px 8px;border-radius:999px;font-weight:500}
.pc-area{background:rgba(15,30,53,.07);color:var(--navy)}
.pc-ativo{background:#e8f5e9;color:#1a7a3c}
.pc-suspenso{background:#fff3e0;color:#c9a84c}
.pc-arquivado{background:var(--cream2);color:var(--muted)}
.pc-prazo-ok{background:#e8f5e9;color:#1a7a3c}
.pc-prazo-alerta{background:#fff3e0;color:#856a00}
.pc-prazo-critico{background:#fde8e8;color:#9a1b1b}
.pcard-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding-top:8px;border-top:1px solid var(--cream2)}
.pcard-cliente{font-size:12px;color:var(--muted)}
.pcard-fase{font-size:11px;color:var(--muted)}
.proc-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:10px;text-align:center;padding:24px}
.proc-empty svg{opacity:.25}
.proc-empty h3{font-size:15px;color:var(--navy);font-weight:500}
.proc-empty p{font-size:13px;color:var(--muted);max-width:260px;line-height:1.6}
/* DRAWER */
.proc-drawer{background:#fff;border-left:1px solid var(--cream2);overflow:hidden;display:flex;flex-direction:column;height:100%}
.proc-wrap.drawer-closed .proc-drawer{border-left:none}
.drawer-header{background:var(--navy);padding:16px 18px;display:flex;align-items:center;gap:10px;flex-shrink:0}
.drawer-ttl{font-family:"Playfair Display",serif;font-size:15px;color:var(--gold2);font-weight:700;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.drawer-close{background:none;border:none;color:rgba(255,255,255,.5);font-size:18px;cursor:pointer;padding:2px 6px;line-height:1}
.drawer-close:hover{color:#fff}
.drawer-tabs{display:flex;border-bottom:1px solid var(--cream2);background:var(--cream);flex-shrink:0}
.drawer-tab{flex:1;padding:9px 4px;text-align:center;font-size:11px;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}
.drawer-tab.active{color:var(--navy);border-bottom-color:var(--gold);font-weight:500}
.drawer-body{flex:1;overflow-y:auto;padding:16px}
/* PRAZOS */
.prazo-item{background:var(--cream);border-radius:8px;padding:10px 12px;margin-bottom:8px;display:flex;gap:10px;align-items:flex-start;border-left:3px solid transparent}
.prazo-critico{border-left-color:#9a1b1b;background:#fde8e8}
.prazo-alerta{border-left-color:#c9a84c;background:#fff3e0}
.prazo-ok{border-left-color:#1a7a3c;background:#e8f5e9}
.prazo-feito{border-left-color:var(--cream2);opacity:.55}
.prazo-data{font-size:12px;font-weight:500;color:var(--navy);flex-shrink:0;min-width:70px}
.prazo-info{flex:1}
.prazo-ttl{font-size:13px;font-weight:500;color:var(--navy);margin-bottom:2px}
.prazo-tipo{font-size:11px;color:var(--muted)}
.prazo-check{width:18px;height:18px;border-radius:4px;border:1.5px solid var(--cream2);background:#fff;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff;margin-top:1px}
.prazo-check.done{background:var(--green);border-color:var(--green)}
/* TIMELINE */
.tl-item{display:flex;gap:10px;margin-bottom:12px}
.tl-dot{width:10px;height:10px;border-radius:50%;background:var(--cream2);border:2px solid var(--navy);flex-shrink:0;margin-top:4px}
.tl-dot.active{background:var(--gold);border-color:var(--gold)}
.tl-line{width:1px;background:var(--cream2);margin:0 4px;flex-shrink:0}
.tl-info{flex:1}
.tl-ttl{font-size:13px;color:var(--text);margin-bottom:1px}
.tl-data{font-size:11px;color:var(--muted)}
/* CHAT IA */
.ia-msgs{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;max-height:220px;overflow-y:auto}
.ia-msg-user{background:var(--navy);color:#fff;padding:8px 12px;border-radius:10px 10px 2px 10px;font-size:12px;line-height:1.5;align-self:flex-end;max-width:85%}
.ia-msg-bot{background:var(--cream);padding:8px 12px;border-radius:10px 10px 10px 2px;font-size:12px;line-height:1.6;align-self:flex-start;max-width:90%;color:var(--text)}
.ia-input-row{display:flex;gap:6px}
.ia-input{flex:1;border:1px solid var(--cream2);border-radius:8px;padding:8px 10px;font-size:12px;font-family:"DM Sans",sans-serif;resize:none;min-height:36px}
.ia-input:focus{outline:none;border-color:var(--gold)}
.ia-send{padding:8px 12px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-size:12px;cursor:pointer}
.ia-send:hover{background:var(--navy2)}
/* MODAL PROCESSO */
.modal-overlay-proc{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:9990;display:none;align-items:center;justify-content:center}
.modal-overlay-proc.open{display:flex}
.modal-proc-card{background:#fff;border-radius:14px;padding:0;width:100%;max-width:600px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}
.modal-proc-header{background:var(--navy);padding:18px 22px;display:flex;align-items:center;justify-content:space-between}
.modal-proc-ttl{font-family:"Playfair Display",serif;font-size:17px;color:var(--gold2);font-weight:700}
.modal-proc-x{background:none;border:none;color:rgba(255,255,255,.5);font-size:18px;cursor:pointer}
.modal-proc-body{padding:20px 22px;overflow-y:auto;flex:1}
/* CALENDARIO PRAZOS */
.cal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border-bottom:1px solid var(--cream2)}
.cal-nav{background:none;border:1px solid var(--cream2);border-radius:6px;padding:4px 10px;cursor:pointer;font-size:13px;color:var(--navy)}
.cal-nav:hover{border-color:var(--gold)}
.cal-mes{font-family:"Playfair Display",serif;font-size:15px;font-weight:700;color:var(--navy)}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);padding:8px 12px;gap:2px}
.cal-dia-header{text-align:center;font-size:10px;color:var(--muted);font-weight:600;text-transform:uppercase;padding:6px 0}
.cal-dia{min-height:52px;padding:4px;border-radius:6px;cursor:pointer;transition:background .15s;position:relative}
.cal-dia:hover{background:var(--cream)}
.cal-dia.hoje{background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.3)}
.cal-dia-num{font-size:12px;color:var(--text);margin-bottom:2px}
.cal-dia.outro-mes .cal-dia-num{color:var(--cream2)}
.cal-prazo-dot{width:6px;height:6px;border-radius:50%;display:inline-block;margin:1px}
.cal-prazo-dot.critico{background:#9a1b1b}
.cal-prazo-dot.alerta{background:#c9a84c}
.cal-prazo-dot.ok{background:#1a7a3c}



/* ── PROCESSOS ── */
#screen-processos.active{display:block!important;height:100%;overflow:hidden}
.proc-layout{display:grid;grid-template-columns:1fr 0px;height:100%;overflow:hidden;transition:grid-template-columns .3s ease}
.proc-layout.pub-aberto{grid-template-columns:1fr 340px}
/* SIDEBAR */
.proc-sidebar{background:#fff;border-right:1px solid var(--cream2);display:flex;flex-direction:column;overflow:hidden;height:100%;min-height:0}
.proc-sidebar-header{padding:12px 14px 8px;flex-shrink:0}
.proc-sidebar-title{font-family:"Playfair Display",serif;font-size:14px;font-weight:700;color:var(--navy);margin-bottom:8px}
.proc-search{width:100%;border:1px solid var(--cream2);border-radius:7px;padding:7px 10px;font-size:12px;font-family:"DM Sans",sans-serif;background:var(--cream);color:var(--text)}
.proc-search:focus{outline:none;border-color:var(--gold)}
.proc-filters{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap}
.proc-filter{font-size:10px;padding:2px 8px;border:1px solid var(--cream2);border-radius:999px;background:#fff;cursor:pointer;color:var(--muted);transition:all .15s}
.proc-filter.active{background:var(--navy);color:#fff;border-color:var(--navy)}
/* Badges de urgência */
.proc-urgencia-row{display:flex;gap:6px;padding:8px 12px;flex-shrink:0;border-bottom:1px solid var(--cream2)}
.proc-urg-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:7px 6px;border-radius:8px;cursor:pointer;transition:all .15s;border:1.5px solid transparent;text-align:center}
.pub-crit{background:#fcebeb;color:#c0392b}
.pub-crit:hover,.pub-crit.active{border-color:#c0392b}
.pub-aler{background:#faeeda;color:#c9a84c}
.pub-aler:hover,.pub-aler.active{border-color:#c9a84c}
.pub-ok{background:#e8f5e9;color:#1a7a3c}
.pub-ok:hover,.pub-ok.active{border-color:#1a7a3c}
.proc-urg-badge span:first-child{font-family:"Playfair Display",serif;font-size:20px;font-weight:700;line-height:1;display:block}
.proc-urg-badge span:last-child{font-size:9px;font-weight:500;margin-top:2px;display:block;opacity:.8}
.proc-list-wrap{flex:1;overflow-y:auto;padding:8px 8px;min-height:0}
/* Cards com borda colorida por urgência */
.proc-card{background:#fff;border:1px solid var(--cream2);border-left:3px solid var(--cream2);border-radius:8px;padding:10px 12px;margin-bottom:6px;cursor:pointer;transition:all .15s}
.proc-card:hover{border-color:var(--gold);border-left-color:var(--gold)}
.proc-card.active{border-left-color:var(--gold);background:rgba(201,168,76,.04)}
.proc-card.urgente{border-left-color:#E24B4A}
.proc-card.alerta{border-left-color:#BA7517}
.proc-card.normal-proc{border-left-color:#1D9E75}
.proc-card-titulo{font-size:12px;font-weight:500;color:var(--navy);line-height:1.35;margin-bottom:3px}
.proc-card-meta{font-size:10px;color:var(--muted);display:flex;gap:6px;align-items:center}
.proc-status-pill{font-size:9px;font-weight:600;padding:1px 6px;border-radius:999px;flex-shrink:0}
.ps-ativo{background:#e8f5e9;color:#1a7a3c}
.ps-suspenso{background:#fff3e0;color:#c9a84c}
.ps-arquivado{background:var(--cream2);color:var(--muted)}
.proc-card-prazo{font-size:10px;font-weight:500;margin-top:3px;display:flex;align-items:center;gap:3px}
.prazo-ok{color:var(--green)}.prazo-alerta{color:#c9a84c}.prazo-critico{color:var(--red)}
.proc-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:180px;gap:8px;text-align:center;padding:16px;color:var(--muted)}
.proc-empty svg{width:32px;height:32px;opacity:.2}
.proc-empty h3{font-size:12px;font-weight:500;color:var(--navy)}
.proc-empty p{font-size:11px;line-height:1.5;max-width:180px}
.proc-add-btn{margin:0 8px 8px;padding:9px;background:var(--navy);color:#fff;border:none;border-radius:7px;font-family:"DM Sans",sans-serif;font-size:12px;font-weight:500;cursor:pointer;width:calc(100% - 16px);flex-shrink:0}
.proc-add-btn:hover{background:var(--navy2)}
/* Toggle publicações DataJud */
.proc-pub-toggle{display:flex;align-items:center;gap:5px;padding:4px 10px;background:var(--cream);border:1px solid var(--cream2);border-radius:20px;font-size:11px;font-weight:500;cursor:pointer;color:var(--muted);transition:all .15s;font-family:"DM Sans",sans-serif;flex-shrink:0;white-space:nowrap}
.proc-pub-toggle:hover{border-color:var(--gold);color:var(--navy)}
.proc-pub-toggle.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.proc-pub-badge{background:var(--gold);color:#fff;font-size:9px;font-weight:700;padding:1px 5px;border-radius:999px;min-width:14px;text-align:center;line-height:1.4}
.proc-pub-toggle.active .proc-pub-badge{background:rgba(255,255,255,.25);color:#fff}
/* Separador nos cards */
.proc-card-sep{color:var(--cream2);font-weight:300;margin:0 1px}
.proc-sidebar-titlebar{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
/* PAINEL DIREITO — CALENDÁRIO */
.proc-main{background:var(--cream);height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.proc-main-header{display:flex;align-items:center;justify-content:space-between;padding:13px 16px 11px;border-bottom:1px solid var(--cream2);background:#fff;flex-shrink:0}
.proc-cal-nav{display:flex;align-items:center;gap:10px}
.proc-cal-mes{font-family:"Playfair Display",serif;font-size:16px;font-weight:700;color:var(--navy);min-width:140px}
.proc-cal-btn{width:28px;height:28px;border-radius:50%;border:1px solid var(--cream2);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--muted);transition:all .15s}
.proc-cal-btn:hover{border-color:var(--gold);color:var(--navy)}
.proc-vista-btns{display:flex;gap:4px}
.proc-vbtn{padding:5px 12px;border-radius:6px;font-size:11px;font-weight:500;font-family:"DM Sans",sans-serif;cursor:pointer;border:1px solid var(--cream2);background:#fff;color:var(--muted);transition:all .15s}
.proc-vbtn.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.proc-cal-hoje{font-size:11px;padding:4px 10px;border:1px solid var(--cream2);border-radius:6px;background:#fff;cursor:pointer;color:var(--muted);font-family:"DM Sans",sans-serif;transition:all .15s}
.proc-cal-hoje:hover{border-color:var(--gold);color:var(--navy)}
.agenda-novo-btn{padding:6px 14px;background:var(--navy);color:#fff;border:none;border-radius:7px;font-size:12px;font-weight:500;font-family:"DM Sans",sans-serif;cursor:pointer;transition:background .2s;display:flex;align-items:center;gap:5px}
.agenda-novo-btn:hover{background:var(--navy2)}
.proc-cal-body{flex:1;overflow:auto;padding:12px 14px;min-height:0;background:var(--cream)}
/* CALENDÁRIO MENSAL */
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;width:100%}
.cal-dow{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;text-align:center;padding:6px 0;color:var(--muted)}
.cal-day{background:#fff;border:1px solid var(--cream2);border-radius:9px;min-height:90px;cursor:pointer;padding:5px 6px;transition:all .15s;position:relative}
.cal-day:hover{border-color:var(--gold);background:rgba(201,168,76,.03)}
.cal-day.outro-mes{background:var(--cream);opacity:.6}
.cal-day.hoje{border-color:var(--navy);background:rgba(15,30,53,.03)}
.cal-day.hoje .cal-day-num{background:var(--navy);color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center}
.cal-day.selecionado{border-color:var(--gold);background:rgba(201,168,76,.06)}
.cal-day-num{font-size:12px;font-weight:500;color:var(--navy);margin-bottom:3px;line-height:1}
.cal-day.outro-mes .cal-day-num{color:var(--muted)}
.cal-day-prazos{display:flex;flex-direction:column;gap:2px}
.cal-prazo-chip{font-size:9px;padding:2px 6px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:1.3;cursor:pointer}
.cpc-critico{background:#fcebeb;color:#c0392b}
.cpc-alerta{background:#fef3cd;color:#8a5700}
.cpc-ok{background:#e8f5e9;color:#1a7a3c}
.cal-mais{font-size:9px;color:var(--muted);cursor:pointer}
/* SEMANA */
.sem-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;width:100%}
.sem-col{background:#fff;border:1px solid var(--cream2);border-radius:8px;padding:8px;min-height:120px}
.sem-col-header{text-align:center;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--cream2)}
.sem-col-dow{font-size:9px;font-weight:700;text-transform:uppercase;color:var(--muted)}
.sem-col-dia{font-size:16px;font-weight:700;color:var(--navy)}
.sem-col.hoje-sem{border-color:var(--navy)}
.sem-col.hoje-sem .sem-col-dia{color:var(--navy)}
.sem-prazo-item{padding:4px 6px;border-radius:5px;margin-bottom:3px;cursor:pointer;transition:all .15s}
.sem-prazo-item:hover{opacity:.85}
.sem-prazo-item.critico{background:#fcebeb;border-left:2px solid #E24B4A}
.sem-prazo-item.alerta{background:#faeeda;border-left:2px solid #BA7517}
.sem-prazo-item.ok{background:#e8f5e9;border-left:2px solid #1D9E75}
.sem-prazo-titulo{font-size:9px;font-weight:500;color:var(--navy);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sem-prazo-proc{font-size:8px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* LISTA */
.lista-semana{margin-bottom:14px}
.lista-semana-header{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);padding:6px 0;margin-bottom:6px;border-bottom:1px solid var(--cream2)}
.lista-prazo-row{background:#fff;border:1px solid var(--cream2);border-radius:8px;padding:10px 12px;margin-bottom:5px;display:flex;align-items:center;gap:10px;cursor:pointer;transition:all .15s}
.lista-prazo-row:hover{border-color:var(--gold)}
.lista-prazo-row.critico{border-left:3px solid #E24B4A}
.lista-prazo-row.alerta{border-left:3px solid #BA7517}
.lista-prazo-row.ok{border-left:3px solid #1D9E75}
.lista-prazo-info{flex:1;min-width:0}
.lista-prazo-titulo{font-size:13px;font-weight:500;color:var(--navy)}
.lista-prazo-proc{font-size:11px;color:var(--muted);margin-top:1px}
.lista-prazo-data{font-size:12px;font-weight:500;color:var(--text);flex-shrink:0;text-align:right}
.lista-prazo-dias{font-size:10px;flex-shrink:0;font-weight:600}
/* POPUP do dia */
.cal-popup{position:fixed;background:#fff;border:1px solid var(--cream2);border-radius:10px;box-shadow:0 4px 20px rgba(0,0,0,.12);z-index:400;min-width:240px;max-width:300px;overflow:hidden}
.cal-popup-header{background:var(--navy);padding:10px 14px;display:flex;align-items:center;justify-content:space-between}
.cal-popup-data{font-size:12px;font-weight:500;color:#fff}
.cal-popup-close{background:none;border:none;color:rgba(255,255,255,.6);cursor:pointer;font-size:14px;padding:0}
.cal-popup-body{padding:10px;max-height:200px;overflow-y:auto}
.cal-popup-prazo{padding:7px 8px;border-radius:6px;margin-bottom:5px;cursor:pointer}
.cal-popup-prazo.critico{background:#fcebeb}
.cal-popup-prazo.alerta{background:#faeeda}
.cal-popup-prazo.ok{background:#e8f5e9}
.cal-popup-prazo-titulo{font-size:12px;font-weight:500;color:var(--navy)}
.cal-popup-prazo-proc{font-size:10px;color:var(--muted);margin-top:1px}
.cal-popup-btn{width:100%;padding:8px;background:var(--navy);color:#fff;border:none;border-radius:6px;font-size:11px;font-family:"DM Sans",sans-serif;cursor:pointer;margin-top:8px}
/* DRAWER (igual ao anterior) */
.proc-drawer{position:fixed;top:0;right:-540px;width:540px;height:100vh;background:#fff;box-shadow:-4px 0 24px rgba(0,0,0,.12);z-index:500;transition:right .3s ease;display:flex;flex-direction:column;overflow:hidden}
.proc-drawer.open{right:0}
.proc-drawer-header{background:var(--navy);padding:14px 18px;display:flex;align-items:flex-start;justify-content:space-between;flex-shrink:0}
.proc-drawer-titulo{font-family:"Playfair Display",serif;font-size:15px;color:#fff;font-weight:700;flex:1;margin-right:10px;line-height:1.3}
.proc-drawer-num{font-size:10px;color:rgba(255,255,255,.4);margin-top:2px}
.proc-drawer-close{background:rgba(255,255,255,.15);border:none;width:26px;height:26px;border-radius:50%;cursor:pointer;color:#fff;font-size:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.proc-drawer-close:hover{background:rgba(255,255,255,.25)}
.proc-drawer-tabs{display:flex;border-bottom:1px solid var(--cream2);flex-shrink:0;background:#fff}
.proc-dtab{flex:1;padding:9px;text-align:center;font-size:11px;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:4px}
.proc-dtab svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.proc-pub-toggle svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
/* ícones inline nos painéis de jurimetria (labels + botões) */
.proc-dpanel svg.juri-inline{width:11px;height:11px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;margin-right:3px}
/* Agenda */
.cal-filtro-chip svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
/* Clientes / Visual Law */
.vl-btn svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.vl-painel-titulo svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.ia-tb-btn svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
/* Audiências */
.aud-title svg{width:20px;height:20px;stroke:var(--gold);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
.aud-chip-status svg,.aud-chip-tipo svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
/* CRM */
.crm-titulo svg{width:18px;height:18px;stroke:var(--gold);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
.crm-tab svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.assin-subtab svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.assin-modo-btn svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.assin-filtro-btn svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.btn-mini svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.ia-cw-sug svg{width:11px;height:11px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
/* Marketing */
.mkt-chip svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.mkt-modo-btn svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.mkt-camp-tab svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
/* Financeiro */
.fin-subtab svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.relfin-ttl svg{width:18px;height:18px;stroke:var(--navy);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
/* Workspace */
.ws-nav-icon svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.teses-sidebar-ttl svg{width:14px;height:14px;stroke:var(--navy);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
/* Modelos */
.mod-sidebar-ttl svg{width:15px;height:15px;stroke:#fff;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.mod-cat-icon{color:rgba(255,255,255,.75)}
.mod-cat-item.active .mod-cat-icon{color:var(--gold)}
.mod-cat-icon svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.mod-modal-ttl svg{width:16px;height:16px;stroke:var(--navy);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
/* Template Editor */
.te-header-title svg{width:16px;height:16px;stroke:var(--gold);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.te-config-titulo svg{width:11px;height:11px;stroke:var(--muted);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.te-modal-titulo svg{width:14px;height:14px;stroke:var(--navy);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.te-btn svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.te-tool-btn svg{width:11px;height:11px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
/* Jurimetria */
.juri-screen-titulo svg{width:20px;height:20px;stroke:var(--gold);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
.juri-form-titulo svg{width:14px;height:14px;stroke:var(--navy);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.juri-res-section-ttl svg{width:11px;height:11px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.juri-stab svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.juri-btn svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
/* Jurisprudência */
.jusp-titulo svg{width:20px;height:20px;stroke:var(--gold);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
.jusp-trib-todos svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.jusp-sintese-icon svg{width:22px;height:22px;stroke:var(--navy);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
/* Assessor */
.assessor-screen-avatar svg{width:28px;height:28px;stroke:#fff;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.assessor-msg-avatar svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.assessor-msg.bot .assessor-msg-avatar svg{stroke:var(--green)}
.assessor-msg.user .assessor-msg-avatar svg{stroke:#fff}
.assessor-qchip svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
/* Portal */
.portal-atualiz-ttl svg{width:14px;height:14px;stroke:var(--navy);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* ── TAREFAS DO PROCESSO ── */
.ptf-lista{display:flex;flex-direction:column;gap:6px}
.ptf-item{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;background:var(--cream);border-radius:8px;border:1px solid var(--cream2);transition:all .15s;position:relative}
.ptf-item.concluida{opacity:.55}
.ptf-item:hover .ptf-del{opacity:1}
.ptf-check{width:18px;height:18px;border-radius:5px;border:2px solid var(--cream2);cursor:pointer;flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center;transition:all .15s;background:#fff}
.ptf-check.checked{background:var(--green);border-color:var(--green);color:#fff}
.ptf-check.urgente{border-color:#e24b4a}
.ptf-check.alta{border-color:#C9A84C}
.ptf-body{flex:1;min-width:0}
.ptf-titulo{font-size:12px;color:var(--text);line-height:1.4;word-break:break-word}
.ptf-item.concluida .ptf-titulo{text-decoration:line-through;color:var(--muted)}
.ptf-meta{display:flex;align-items:center;gap:6px;margin-top:3px;flex-wrap:wrap}
.ptf-prio{font-size:9px;font-weight:700;padding:1px 5px;border-radius:99px;letter-spacing:.04em}
.ptf-prio.urgente{background:#FCEBEB;color:#791F1F}
.ptf-prio.alta{background:#FBF5E6;color:#633806}
.ptf-prio.normal{display:none}
.ptf-data{font-size:10px;color:var(--muted)}
.ptf-data.vencida{color:#e24b4a;font-weight:600}
.ptf-del{opacity:0;background:none;border:none;cursor:pointer;color:var(--muted);font-size:14px;padding:0 2px;transition:opacity .15s;flex-shrink:0;line-height:1}
.ptf-del:hover{color:#e24b4a}
.ptf-add-row{display:flex;gap:6px;margin-top:8px}
.ptf-add-input{flex:1;border:1.5px solid var(--cream2);border-radius:8px;padding:8px 10px;font-size:12px;font-family:"DM Sans",sans-serif;color:var(--text);background:#fff;transition:border-color .2s}
.ptf-add-input:focus{outline:none;border-color:var(--gold)}
.ptf-add-btn{background:var(--navy);border:none;border-radius:8px;color:#fff;font-size:18px;width:34px;cursor:pointer;flex-shrink:0;transition:background .15s}
.ptf-add-btn:hover{background:var(--gold);color:var(--navy)}
.ptf-prio-sel{border:1.5px solid var(--cream2);border-radius:8px;padding:7px 6px;font-size:11px;font-family:"DM Sans",sans-serif;background:#fff;color:var(--text);cursor:pointer}
.ptf-badge{background:var(--green);color:#fff;font-size:9px;font-weight:700;padding:1px 5px;border-radius:99px;margin-left:4px;display:inline-block}
.ptf-badge.tem-urgente{background:#e24b4a}
.ptf-empty{text-align:center;padding:20px;font-size:12px;color:var(--muted)}
.ptf-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.ptf-header-ttl{font-size:12px;font-weight:700;color:var(--navy);display:flex;align-items:center;gap:5px}
.ptf-header-ttl svg{width:13px;height:13px;stroke:var(--navy);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.ptf-header-stats{font-size:11px;color:var(--muted)}
.proc-dtab.active{color:var(--navy);border-bottom-color:var(--gold);font-weight:500}
.proc-drawer-body{flex:1;overflow-y:auto;padding:14px 16px}
.proc-dpanel{display:none}.proc-dpanel.active{display:block}
.proc-fase-bar{display:flex;gap:3px;margin-bottom:12px}
.proc-fase-chip{flex:1;padding:4px 2px;text-align:center;font-size:9px;border-radius:4px;background:var(--cream2);color:var(--muted);font-weight:500}
.proc-fase-chip.atual{background:var(--navy);color:var(--gold)}
.proc-fase-chip.feita{background:rgba(26,122,60,.15);color:var(--green)}
/* Grid de informações do processo (drawer) */
.proc-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}
.proc-info-item{background:var(--cream);border:1px solid var(--cream2);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:3px;min-width:0}
.proc-info-item label{font-size:9px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;line-height:1}
.proc-info-item span{font-size:13px;color:var(--navy);font-weight:500;line-height:1.35;word-break:break-word;overflow-wrap:anywhere}
.proc-info-item.full{grid-column:1/-1}
.proc-info-item .pi-status{display:inline-block;padding:2px 8px;border-radius:99px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:rgba(26,122,60,.12);color:var(--green)}
.proc-info-item .pi-status.suspenso{background:rgba(201,168,76,.15);color:#8a6f1f}
.proc-info-item .pi-status.arquivado{background:var(--cream2);color:var(--muted)}
.dprazo-item{background:var(--cream);border-radius:8px;padding:9px 11px;margin-bottom:6px;display:flex;align-items:center;gap:10px}
.dprazo-item.critico{background:#fcebeb}.dprazo-item.alerta{background:#faeeda}
.dprazo-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.dprazo-info{flex:1}.dprazo-titulo{font-size:13px;font-weight:500;color:var(--navy)}.dprazo-meta{font-size:11px;color:var(--muted)}
.ia-chat{display:flex;flex-direction:column;min-height:320px}
.ia-msgs{overflow-y:auto;margin-bottom:10px;display:flex;flex-direction:column;gap:8px;min-height:140px;max-height:300px}
.ia-msg{padding:9px 12px;border-radius:9px;font-size:13px;line-height:1.6;max-width:92%}
.ia-msg.user{background:var(--navy);color:#fff;align-self:flex-end;border-radius:9px 9px 2px 9px}
.ia-msg.bot{background:var(--cream);color:var(--text);align-self:flex-start;border-radius:9px 9px 9px 2px}
.ia-msg.typing{opacity:.6;font-style:italic}
.ia-input-row{display:flex;gap:8px}
.ia-input{flex:1;border:1px solid var(--cream2);border-radius:8px;padding:8px 11px;font-size:13px;font-family:"DM Sans",sans-serif;resize:none}
.ia-input:focus{outline:none;border-color:var(--gold)}
.ia-send{padding:8px 12px;background:var(--navy);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500}
.ia-suggestions{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:8px}
.ia-sug{font-size:10px;padding:3px 8px;border:1px solid var(--cream2);border-radius:999px;background:#fff;cursor:pointer;color:var(--muted);transition:all .15s}
.ia-sug:hover{border-color:var(--gold);color:var(--navy)}
.modal-proc{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:600;display:none;align-items:center;justify-content:center}
.modal-proc.open{display:flex}
.modal-proc-card{background:#fff;border-radius:14px;padding:24px;width:100%;max-width:540px;max-height:85vh;overflow-y:auto}
.modal-proc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.modal-proc-ttl{font-family:"Playfair Display",serif;font-size:17px;font-weight:700;color:var(--navy)}
.modal-proc-x{background:none;border:none;font-size:18px;cursor:pointer;color:var(--muted)}
.modal-prazo{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:600;display:none;align-items:center;justify-content:center}
.modal-prazo.open{display:flex}
.modal-prazo-card{background:#fff;border-radius:14px;padding:24px;width:100%;max-width:420px}

.cal-day:hover{border-color:var(--gold);background:rgba(201,168,76,.03)}
.cal-day.hoje-dia{background:rgba(15,30,53,.04);border-color:rgba(15,30,53,.2)}
.cal-day.tem-prazo-critico{border-color:rgba(192,57,43,.3);background:#fefcfc}
.cal-day.tem-prazo-alerta{border-color:rgba(201,168,76,.3);background:#fdfcf8}
.cal-day-num.hoje-num{background:var(--navy);color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-weight:700}
.proc-sidebar-badge{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:600;padding:2px 7px;border-radius:999px;margin-left:6px}
.badge-critico{background:#fcebeb;color:#c0392b}
.badge-alerta{background:#fff3e0;color:#c9a84c}
.proc-section-divider{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:10px 14px 5px;flex-shrink:0}
.proc-urgency-bar{display:flex;gap:5px;padding:0 10px 8px;flex-shrink:0}
.urgency-chip{flex:1;padding:6px 4px;border-radius:7px;text-align:center;cursor:pointer;border:1px solid transparent;transition:all .15s}
.urgency-chip:hover{border-color:var(--cream2)}
.urgency-chip.active-chip{border-color:currentColor}
.urgency-chip-n{font-size:17px;font-weight:700;font-family:"Playfair Display",serif;line-height:1;display:block}
.urgency-chip-l{font-size:9px;margin-top:2px;display:block;font-weight:500}
.uc-critico{color:#c0392b;background:#fcebeb}
.uc-alerta{color:#c9a84c;background:#fff3e0}
.uc-ok{color:#1a7a3c;background:#e8f5e9}
/* ── CLIENTES ── */
.cli-layout{display:grid;grid-template-columns:340px 1fr;height:100%;overflow:hidden}
.cli-sidebar{background:#fff;border-right:1px solid var(--cream2);display:flex;flex-direction:column;overflow:hidden;height:100%;min-height:0}
.cli-sidebar-header{padding:16px 18px;border-bottom:1px solid var(--cream2);flex-shrink:0}
.cli-search{width:100%;border:1px solid var(--cream2);border-radius:8px;padding:8px 12px;font-size:13px;font-family:"DM Sans",sans-serif;background:var(--cream);color:var(--text)}
.cli-search:focus{outline:none;border-color:var(--gold)}
.cli-filters{display:flex;gap:6px;margin-top:8px}
.cli-filter{font-size:11px;padding:3px 10px;border:1px solid var(--cream2);border-radius:999px;background:#fff;cursor:pointer;color:var(--muted);transition:all .15s}
.cli-filter.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.cli-list{flex:1;overflow-y:auto;padding:10px;min-height:0}
.cli-card{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:13px 14px;margin-bottom:8px;cursor:pointer;transition:all .15s}
.cli-card:hover{border-color:var(--gold);transform:translateX(2px)}
.cli-card.active{border-color:var(--gold);background:rgba(201,168,76,.04)}
.cli-card-header{display:flex;align-items:center;gap:10px;margin-bottom:5px}
.cli-avatar{width:34px;height:34px;border-radius:50%;background:rgba(15,30,53,.08);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--navy);flex-shrink:0}
.cli-card-nome{font-size:13px;font-weight:500;color:var(--navy);flex:1}
.cli-tipo-pill{font-size:10px;font-weight:600;padding:2px 7px;border-radius:999px}
.ct-pf{background:#E6F1FB;color:#0C447C}
.ct-pj{background:#FAEEDA;color:#633806}
.cli-card-meta{font-size:11px;color:var(--muted);margin-left:44px}
.cli-proc-badge{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:600;background:rgba(26,122,60,.1);color:var(--green);padding:2px 7px;border-radius:999px;margin-top:4px;margin-left:44px}
.cli-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:10px;text-align:center;padding:20px;color:var(--muted)}
.cli-empty svg{width:40px;height:40px;opacity:.25}
.cli-empty h3{font-size:14px;font-weight:500;color:var(--navy)}
.cli-empty p{font-size:12px;line-height:1.6;max-width:220px}
.cli-add-btn{width:100%;padding:11px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-family:"DM Sans",sans-serif;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:background .2s}
.cli-add-btn:hover{background:var(--navy2)}
.cli-main{background:var(--cream);overflow-y:auto;height:100%;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.cli-drawer{position:fixed;top:0;right:-520px;width:520px;height:100vh;background:#fff;box-shadow:-4px 0 24px rgba(0,0,0,.12);z-index:500;transition:right .3s ease;display:flex;flex-direction:column;overflow:hidden}
.cli-drawer.open{right:0}
.cli-drawer-header{background:var(--navy);padding:18px 20px;display:flex;align-items:center;gap:14px;flex-shrink:0}
.cli-drawer-avatar{width:44px;height:44px;border-radius:50%;background:rgba(201,168,76,.2);border:2px solid rgba(201,168,76,.4);display:flex;align-items:center;justify-content:center;font-family:"Playfair Display",serif;font-size:18px;color:var(--gold);font-weight:700;flex-shrink:0}
.cli-drawer-info{flex:1}
.cli-drawer-nome{font-family:"Playfair Display",serif;font-size:16px;color:#fff;font-weight:700;margin-bottom:2px}
.cli-drawer-sub{font-size:11px;color:rgba(255,255,255,.5)}
.cli-drawer-close{background:rgba(255,255,255,.15);border:none;width:28px;height:28px;border-radius:50%;cursor:pointer;color:#fff;font-size:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cli-drawer-close:hover{background:rgba(255,255,255,.25)}
.cli-drawer-tabs{display:flex;border-bottom:1px solid var(--cream2);flex-shrink:0}
.cli-dtab{flex:1;padding:10px;text-align:center;font-size:12px;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:all .15s}
.cli-dtab.active{color:var(--navy);border-bottom-color:var(--gold);font-weight:500}
.cli-drawer-body{flex:1;overflow-y:auto;padding:16px}
.cli-dpanel{display:none}.cli-dpanel.active{display:block}
.cli-proc-item{background:var(--cream);border-radius:8px;padding:10px 12px;margin-bottom:7px;display:flex;align-items:center;gap:10px;cursor:pointer;transition:border-color .15s;border:1px solid transparent}
.cli-proc-item:hover{border-color:var(--gold)}
.cli-proc-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.cli-proc-info{flex:1}
.cli-proc-titulo{font-size:13px;font-weight:500;color:var(--navy)}
.cli-proc-meta{font-size:11px;color:var(--muted)}

/* ── Cliente: cards de documentos (contratos / petições anexados) ── */
.cli-doc-card{
  display:flex;align-items:flex-start;gap:10px;
  background:#fff;border:1px solid var(--cream2);
  border-radius:8px;padding:11px 12px;margin-bottom:8px;
  transition:border-color .15s;
}
.cli-doc-card:hover{border-color:var(--gold)}
.cli-doc-card.cli-doc-portal{
  background:linear-gradient(135deg,rgba(201,168,76,.06) 0%,#fff 60%);
  border-color:rgba(201,168,76,.35);
}
.cli-doc-icon{
  width:34px;height:34px;background:var(--cream);
  border-radius:7px;display:flex;align-items:center;justify-content:center;
  flex-shrink:0;color:var(--navy);
}
.cli-doc-icon svg{width:16px;height:16px;stroke:var(--navy);stroke-width:1.75;fill:none}
.cli-doc-card.cli-doc-portal .cli-doc-icon{background:rgba(201,168,76,.15);color:var(--gold)}
.cli-doc-card.cli-doc-portal .cli-doc-icon svg{stroke:var(--gold)}
.cli-doc-corpo{flex:1;min-width:0}
.cli-doc-titulo{
  font-size:13px;font-weight:600;color:var(--navy);
  line-height:1.35;word-break:break-word;
  display:flex;align-items:center;gap:6px;flex-wrap:wrap;
}
.cli-doc-meta{
  font-size:11px;color:var(--muted);
  margin-top:3px;line-height:1.45;
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
}
.cli-doc-meta-sep{color:var(--cream2)}
.cli-doc-pill{
  display:inline-flex;align-items:center;gap:4px;
  font-size:9.5px;font-weight:700;
  padding:2px 7px;border-radius:99px;
  text-transform:uppercase;letter-spacing:.04em;
}
.cli-doc-pill-tipo{background:rgba(15,30,53,.08);color:var(--navy)}
.cli-doc-pill-portal{background:rgba(201,168,76,.18);color:#7a5800}
.cli-doc-pill-gerado{background:rgba(41,128,185,.12);color:#1a5478}
.cli-doc-acoes-card{display:flex;flex-direction:column;gap:4px;flex-shrink:0}
.cli-doc-acao-btn{
  font-size:10px;font-weight:600;padding:5px 10px;
  border:1px solid var(--cream2);border-radius:6px;
  background:#fff;color:var(--navy);cursor:pointer;
  font-family:DM Sans,sans-serif;white-space:nowrap;
  display:inline-flex;align-items:center;gap:4px;
  text-decoration:none;transition:all .15s;
}
.cli-doc-acao-btn:hover{background:var(--cream);border-color:var(--gold)}
.cli-doc-acao-btn svg{width:11px;height:11px;stroke:currentColor;stroke-width:2;fill:none}
.cli-doc-acao-btn.del{color:#c0392b;border-color:#f5c6c6}
.cli-doc-acao-btn.del:hover{background:#fdecea;border-color:#c0392b}
.cli-doc-empty{
  text-align:center;padding:24px 16px;
  font-size:12px;color:var(--muted);font-style:italic;
}
.cli-doc-acoes{
  display:flex;gap:8px;margin-top:12px;flex-wrap:wrap;
}
.cli-doc-acoes .btn-sec{margin-top:0;flex:1}
.cli-doc-btn-anexar{
  flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;
  background:var(--navy)!important;color:#fff!important;
  border-color:var(--navy)!important;
}
.cli-doc-btn-anexar:hover{background:var(--navy2)!important}
.cli-doc-btn-anexar svg{stroke:#fff!important}

@media(max-width:767px){
  .cli-doc-card{flex-wrap:wrap}
  .cli-doc-acoes-card{flex-direction:row;width:100%;margin-top:6px}
  .cli-doc-acao-btn{flex:1;justify-content:center}
}

.modal-cli{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:800;display:none;align-items:center;justify-content:center}
.modal-cli.open{display:flex!important}
.modal-cli-card{background:#fff;border-radius:14px;padding:26px;width:100%;max-width:500px;max-height:88vh;overflow-y:auto}


/* ── CLIENTES ── */
.cli-layout{display:grid;grid-template-columns:340px 1fr;height:100%;overflow:hidden}
.cli-sidebar{background:#fff;border-right:1px solid var(--cream2);display:flex;flex-direction:column;overflow:hidden;height:100%;min-height:0}
.cli-sidebar-header{padding:16px 18px;border-bottom:1px solid var(--cream2);flex-shrink:0}
.cli-sidebar-title{font-family:"Playfair Display",serif;font-size:16px;font-weight:700;color:var(--navy);margin-bottom:10px}
.cli-search{width:100%;border:1px solid var(--cream2);border-radius:8px;padding:8px 12px;font-size:13px;font-family:"DM Sans",sans-serif;background:var(--cream);color:var(--text)}
.cli-search:focus{outline:none;border-color:var(--gold)}
.cli-filters{display:flex;gap:6px;margin-top:8px}
.cli-filter{font-size:11px;padding:3px 10px;border:1px solid var(--cream2);border-radius:999px;background:#fff;cursor:pointer;color:var(--muted);transition:all .15s}
.cli-filter.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.cli-list{flex:1;overflow-y:auto;padding:10px;min-height:0}
.cli-card{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:12px 13px;margin-bottom:8px;cursor:pointer;transition:all .15s;overflow:hidden}
.cli-card:hover{border-color:var(--gold);transform:translateX(2px)}
.cli-card.active{border-color:var(--gold);background:rgba(201,168,76,.04)}
.cli-avatar{width:38px;height:38px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:var(--gold);flex-shrink:0}
.cli-card-info{flex:1;min-width:0}
.cli-card-nome{font-size:13px;font-weight:500;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.cli-card-header{display:flex;align-items:center;gap:10px;margin-bottom:5px;min-width:0}
.cli-card-meta{font-size:11px;color:var(--muted);margin-top:2px;margin-left:48px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cli-tipo-pill{font-size:10px;font-weight:600;padding:2px 8px;border-radius:999px;flex-shrink:0}
.ct-pf{background:#E6F1FB;color:#0C447C}
.ct-pj{background:#E1F5EE;color:#085041}
.cli-proc-badge{font-size:10px;font-weight:600;padding:2px 7px;border-radius:999px;background:rgba(201,168,76,.15);color:var(--gold)}
.cli-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:10px;text-align:center;padding:20px;color:var(--muted)}
.cli-empty svg{width:40px;height:40px;opacity:.25}
.cli-empty h3{font-size:14px;font-weight:500;color:var(--navy)}
.cli-empty p{font-size:12px;line-height:1.6;max-width:220px}
.cli-add-btn{width:100%;padding:11px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-family:"DM Sans",sans-serif;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:background .2s}
.cli-add-btn:hover{background:var(--navy2)}
.cli-main{background:var(--cream);overflow-y:auto;height:100%;display:flex;flex-direction:column}
.cli-main-empty{text-align:center;padding:40px 20px;color:var(--muted)}
.cli-main-empty svg{width:56px;height:56px;opacity:.15;margin:0 auto 14px;display:block}
.cli-main-empty h3{font-size:15px;font-weight:500;color:var(--navy);margin-bottom:6px}
.cli-main-empty p{font-size:12px;line-height:1.6;max-width:260px;margin:0 auto}
.cli-drawer{position:fixed;top:0;right:-560px;width:560px;height:100vh;background:#fff;box-shadow:-4px 0 24px rgba(0,0,0,.12);z-index:500;transition:right .3s ease;display:flex;flex-direction:column;overflow:hidden}
.cli-drawer.open{right:0}
.cli-drawer-header{background:var(--navy);padding:20px 22px 18px;flex-shrink:0;position:relative}
.cli-drawer-avatar{width:50px;height:50px;border-radius:50%;background:rgba(201,168,76,.2);border:2px solid rgba(201,168,76,.4);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:var(--gold);margin-bottom:8px}
.cli-drawer-nome{font-family:"Playfair Display",serif;font-size:17px;color:#fff;font-weight:700}
.cli-drawer-sub{font-size:11px;color:rgba(255,255,255,.5);margin-top:3px}
.cli-drawer-close{position:absolute;top:14px;right:16px;background:rgba(255,255,255,.15);border:none;width:28px;height:28px;border-radius:50%;cursor:pointer;color:#fff;font-size:16px;display:flex;align-items:center;justify-content:center}
.cli-drawer-close:hover{background:rgba(255,255,255,.25)}
.cli-drawer-tabs{display:flex;border-bottom:1px solid var(--cream2);flex-shrink:0}
.cli-dtab{flex:1;padding:10px;text-align:center;font-size:12px;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:all .15s}
.cli-dtab.active{color:var(--navy);border-bottom-color:var(--gold);font-weight:500}
.cli-drawer-body{flex:1;overflow-y:auto;padding:18px}
.cli-dpanel{display:none}.cli-dpanel.active{display:block}
.cli-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}
.cli-info-item label{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:3px}
.cli-info-item span{font-size:13px;color:var(--text)}
.cli-proc-item{background:var(--cream);border:1px solid var(--cream2);border-radius:8px;padding:11px 13px;margin-bottom:7px;cursor:pointer;transition:border-color .15s;display:flex;align-items:center;gap:10px}
.cli-proc-item:hover{border-color:var(--gold)}
.cli-proc-icon{width:32px;height:32px;border-radius:8px;background:var(--navy);display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}
.cli-proc-info{flex:1;min-width:0}
.cli-proc-titulo{font-size:13px;font-weight:500;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cli-proc-meta{font-size:11px;color:var(--muted);margin-top:2px}

/* ── WORKSPACE ── */
/* Workspace — header navy padrão (igual Audiências/Consultivo/CRM) */
.ws-header{background:var(--navy);padding:16px 28px;border-bottom:2px solid rgba(201,168,76,.25);display:flex;align-items:center;gap:16px;flex-shrink:0}
.ws-title{display:flex;align-items:center;gap:8px;font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--gold);letter-spacing:-.3px}
.ws-title svg{width:20px;height:20px;stroke:var(--gold);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
.ws-subtitle{font-size:12px;color:rgba(255,255,255,.55);margin-top:3px;max-width:680px;line-height:1.5}
.ws-header-btn{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.25);color:#fff;padding:8px 18px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s;flex-shrink:0}
.ws-header-btn:hover{background:rgba(201,168,76,.22);border-color:var(--gold);color:var(--gold)}
.ws-header-btn svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}

/* Workspace — tabs horizontais (navy igual ao header) */
.ws-tabs{display:flex;align-items:center;gap:4px;background:var(--navy);border-bottom:1px solid rgba(201,168,76,.18);padding:0 18px;flex-shrink:0;overflow-x:auto;scrollbar-width:thin}
.ws-tabs::-webkit-scrollbar{height:4px}
.ws-tabs::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:2px}
.ws-tabs-spacer{flex:1;min-width:8px}
.ws-tab{display:inline-flex;align-items:center;gap:7px;padding:13px 16px;font-size:13px;font-weight:600;color:rgba(255,255,255,.65);background:none;border:none;border-bottom:2.5px solid transparent;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s;white-space:nowrap;border-radius:0}
.ws-tab:hover{color:#fff;background:rgba(255,255,255,.05)}
.ws-tab.active{color:var(--gold);border-bottom-color:var(--gold);background:rgba(201,168,76,.08)}
.ws-tab svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.85;fill:none;stroke-linecap:round;stroke-linejoin:round}
.ws-tab.ws-nav-equipe-btn{color:var(--gold);opacity:.85}
.ws-tab.ws-nav-equipe-btn:hover{opacity:1;background:rgba(201,168,76,.12)}

/* Workspace — layout (agora 1 coluna, header e tabs ficam fora) */
.ws-layout{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;width:100%}
.ws-layout > div{min-height:0;overflow:hidden;flex:1;width:100%}
.ws-panel{display:none;height:100%;overflow:hidden}.ws-panel.active{display:flex;flex-direction:column;height:100%;overflow:hidden}
/* DOCUMENTOS */
.docs-layout{display:grid;grid-template-columns:240px 1fr;flex:1;overflow:hidden;min-height:0;height:100%}
.docs-sidebar{background:var(--navy);border-right:1px solid rgba(201,168,76,.18);padding:14px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;height:100%;min-height:0;color:#fff}
.docs-pasta{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;border-radius:7px;cursor:pointer;font-size:13px;color:rgba(255,255,255,.72);transition:all .15s}
.docs-pasta:hover{background:rgba(255,255,255,.07);color:#fff}
.docs-pasta.active{background:rgba(201,168,76,.18);color:var(--gold);font-weight:500}
.docs-pasta-cnt{font-size:10px;background:rgba(255,255,255,.12);color:rgba(255,255,255,.78);padding:1px 6px;border-radius:999px;font-weight:500}
.docs-pasta.active .docs-pasta-cnt{background:rgba(201,168,76,.3);color:var(--gold)}
.docs-sdiv{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--gold);opacity:.75;padding:10px 10px 4px;margin-top:4px}
.docs-tag{display:flex;align-items:center;gap:6px;padding:5px 10px;border-radius:6px;cursor:pointer;font-size:12px;color:rgba(255,255,255,.7);transition:all .15s}
.docs-tag:hover{background:rgba(255,255,255,.08);color:#fff}
.docs-tag.active{background:rgba(201,168,76,.18);color:var(--gold);font-weight:500}
.docs-tag-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
/* Pastas — lista discreta sobre fundo navy */
.docs-cat-grid{display:flex;flex-direction:column;gap:2px;padding:0 6px}
.docs-cat-chip{display:flex;flex-direction:row;align-items:center;gap:9px;padding:8px 10px;border-radius:7px;cursor:pointer;border:1px solid transparent;background:transparent;transition:all .12s;text-align:left;min-height:0;justify-content:flex-start}
.docs-cat-chip:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.1)}
.docs-cat-chip.active{background:rgba(201,168,76,.15);border-color:var(--gold);box-shadow:0 1px 3px rgba(0,0,0,.25)}
.docs-cat-chip.drag-over{border-color:var(--gold);background:rgba(201,168,76,.28)}
.docs-cat-ico{font-size:14px;line-height:1;flex-shrink:0;width:18px;text-align:center}
.docs-cat-lbl{font-size:12.5px;font-weight:500;color:rgba(255,255,255,.85);line-height:1.2;flex:1}
.docs-cat-chip.active .docs-cat-lbl{font-weight:600;color:var(--gold)}
.docs-cat-chip .docs-pasta-cnt{font-size:10.5px;background:rgba(255,255,255,.12);color:rgba(255,255,255,.78);padding:1px 7px;border-radius:999px;font-weight:600;flex-shrink:0}
.docs-cat-chip.active .docs-pasta-cnt{background:rgba(201,168,76,.3);color:var(--gold)}
/* Botão "Nova pasta" sobre fundo navy */
.docs-sidebar .btn-sec{background:transparent;color:rgba(255,255,255,.85);border-color:rgba(255,255,255,.22)}
.docs-sidebar .btn-sec:hover{border-color:var(--gold);color:var(--gold);background:rgba(201,168,76,.08)}
/* Scrollbar discreta no navy */
.docs-sidebar::-webkit-scrollbar{width:6px}
.docs-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:3px}
.docs-sidebar::-webkit-scrollbar-thumb:hover{background:rgba(201,168,76,.4)}
/* Ícones de renomear/excluir (lápis/X) das pastas customizadas — inline style com --muted no JS */
.docs-sidebar .docs-pasta span[onclick]{color:rgba(255,255,255,.5)!important;transition:color .15s}
.docs-sidebar .docs-pasta span[onclick]:hover{color:var(--gold)!important}
/* document card grid */
.docs-card-grid{flex:1;overflow-y:auto;padding:16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;align-content:start}
.docs-card{background:#fff;border:1.5px solid var(--cream2);border-radius:12px;padding:14px 14px 12px;cursor:pointer;transition:all .18s;display:flex;flex-direction:column;gap:6px;position:relative;overflow:hidden}
.docs-card:hover{border-color:var(--gold);box-shadow:0 4px 16px rgba(15,30,53,.08);transform:translateY(-1px)}
.docs-card.active{border-color:var(--gold);background:rgba(201,168,76,.04)}
.docs-card-icon{width:32px;height:32px;border-radius:8px;background:rgba(15,30,53,.06);display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0;margin-bottom:2px}
.docs-card-title{font-size:13px;font-weight:600;color:var(--navy);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.docs-card-preview{font-size:11px;color:var(--muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.docs-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:4px}
.docs-card-date{font-size:10px;color:var(--muted)}
.docs-card-badge{font-size:10px;font-weight:600;padding:2px 7px;border-radius:999px;background:var(--cream2);color:var(--muted)}
/* editor topbar */
.docs-editor-topbar{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--cream2);background:#fff;flex-shrink:0}
.docs-back-btn{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:500;color:var(--muted);background:none;border:1px solid var(--cream2);border-radius:6px;padding:5px 10px;cursor:pointer;flex-shrink:0;transition:all .15s;font-family:DM Sans,sans-serif}
.docs-back-btn:hover{color:var(--navy);border-color:var(--navy)}
.docs-titulo-input{flex:1;font-size:15px;font-weight:600;border:none;outline:none;background:transparent;color:var(--navy);min-width:0;font-family:DM Sans,sans-serif}
/* legacy: still used by moverDocPasta and some JS refs */
.docs-main{display:grid;grid-template-columns:280px 1fr;overflow:hidden;flex:1;min-height:0;height:100%}
.docs-lista-header{padding:12px 16px 12px;border-bottom:1px solid var(--cream2);display:flex;align-items:center;justify-content:space-between;background:#fff;flex-shrink:0}
.docs-lista-ttl{font-size:13px;font-weight:500;color:var(--navy)}
.docs-item{padding:12px 16px;border-bottom:1px solid var(--cream2);cursor:pointer;transition:background .15s;border-left:3px solid transparent}
.docs-item:hover{background:var(--cream)}
.docs-item.active{background:rgba(201,168,76,.06);border-left-color:var(--gold)}
.docs-pasta.drag-over{background:#fff;border:1px dashed var(--gold);color:var(--navy)}
.docs-item-titulo{font-size:13px;font-weight:500;color:var(--navy);margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.docs-item-meta{font-size:11px;color:var(--muted)}
.docs-item-tags{display:flex;gap:4px;margin-top:5px;flex-wrap:wrap}
.docs-item-tag{font-size:10px;padding:1px 6px;border-radius:999px;font-weight:500}
.docs-editor{display:flex;flex-direction:column;overflow:hidden;height:100%;min-height:0}
.docs-editor-header{padding:14px 20px;border-bottom:1px solid var(--cream2);display:flex;align-items:center;gap:10px;flex-shrink:0}
.docs-titulo-input{flex:1;border:none;font-family:"Playfair Display",serif;font-size:18px;font-weight:700;color:var(--navy);background:transparent;outline:none}
.docs-conteudo{flex:1;padding:20px;overflow-y:auto;min-height:0}
.docs-textarea{width:100%;height:100%;border:none;font-family:"DM Sans",sans-serif;font-size:14px;line-height:1.8;color:var(--text);background:transparent;outline:none;resize:none;min-height:400px}
.docs-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:10px;text-align:center;padding:30px;color:var(--muted)}
.docs-empty svg{width:44px;height:44px;opacity:.2}
.docs-empty h3{font-size:14px;font-weight:500;color:var(--navy)}
.docs-acoes{padding:10px 20px;border-top:1px solid var(--cream2);display:flex;gap:8px;flex-shrink:0;background:#fff}
/* MODELOS */
.mod-header-bar{padding:14px 20px;border-bottom:1px solid var(--cream2);display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#fff;flex-shrink:0}
.mod-filtros{display:flex;gap:6px}
.mod-filtro{font-size:11px;padding:4px 12px;border:1px solid var(--cream2);border-radius:999px;background:#fff;cursor:pointer;color:var(--muted);transition:all .15s}
.mod-filtro.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.mod-grid{padding:20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;overflow-y:auto;flex:1;background:var(--cream);min-height:0;align-content:start}
.mod-card{background:#fff;border:1px solid var(--cream2);border-radius:12px;overflow:hidden;transition:all .2s;cursor:pointer;display:flex;flex-direction:column}
.mod-card:hover{border-color:var(--gold);box-shadow:0 4px 16px rgba(201,168,76,.15);transform:translateY(-2px)}
.mod-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(15,30,53,.08)}
/* mod-card-top via CSS extra */
.mod-card-tipo{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.mt-contrato{color:#185FA5}.mt-peticao{color:#085041}.mt-outro{color:#633806}
.mod-card-titulo{font-size:14px;font-weight:500;color:var(--navy);margin-bottom:4px;line-height:1.4}
.mod-card-data{font-size:11px;color:var(--muted)}
.mod-card-body{padding:12px 16px;display:flex;align-items:center;justify-content:space-between}
.mod-usos{font-size:11px;color:var(--muted)}
.mod-btn-usar{font-size:12px;padding:5px 12px;background:var(--navy);color:#fff;border:none;border-radius:6px;cursor:pointer;font-family:"DM Sans",sans-serif;font-weight:500}
.mod-btn-usar:hover{background:var(--navy2)}
/* mod-empty via CSS extra */
/* KANBAN */
.kanban-header{padding:14px 20px;border-bottom:1px solid var(--cream2);display:flex;align-items:center;justify-content:space-between;background:#fff;flex-shrink:0}
.kanban-toggle{display:flex;gap:4px}
.kbtn{padding:5px 12px;border-radius:6px;font-size:12px;font-weight:500;font-family:"DM Sans",sans-serif;cursor:pointer;border:1px solid var(--cream2);background:#fff;color:var(--muted);transition:all .15s}
.kbtn.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.kanban-body{flex:1;overflow-x:auto;overflow-y:hidden;background:var(--cream);min-height:0}
.kanban-cols{display:flex;gap:12px;padding:16px;height:calc(100% - 0px);min-width:fit-content;min-height:0}
.kanban-col{width:260px;background:rgba(0,0,0,.04);border-radius:10px;display:flex;flex-direction:column;flex-shrink:0;max-height:100%;overflow:hidden}
.kanban-col-header{padding:12px 14px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.kanban-col-ttl{font-size:12px;font-weight:600;color:var(--navy);text-transform:uppercase;letter-spacing:.05em}
.kanban-col-cnt{font-size:11px;background:rgba(0,0,0,.08);color:var(--muted);padding:1px 7px;border-radius:999px;font-weight:500}
.kanban-col-body{padding:0 10px 10px;overflow-y:auto;flex:1}
.kanban-task{background:#fff;border:1px solid var(--cream2);border-radius:9px;padding:0;margin-bottom:8px;cursor:grab;transition:all .15s;position:relative;display:flex;overflow:hidden}
.kanban-task .kt-body{padding:11px 13px;flex:1;min-width:0}
.kanban-task:hover{border-color:var(--gold)}
.kanban-task.dragging{opacity:.5;cursor:grabbing}
.kanban-task.drag-over{border-color:var(--gold);border-style:dashed}
.kanban-col.drop-target{background:rgba(201,168,76,.08)}
/* column color accents */
.kcol-accent{width:100%;height:4px;border-radius:10px 10px 0 0;flex-shrink:0}
.kcol-afazer .kcol-accent{background:#5b9bd5}
.kcol-andamento .kcol-accent{background:#e8a838}
.kcol-aguardando .kcol-accent{background:#9b6dc5}
.kcol-feito .kcol-accent{background:#52a97f}
.kcol-afazer{background:rgba(91,155,213,.05)}
.kcol-andamento{background:rgba(232,168,56,.05)}
.kcol-aguardando{background:rgba(155,109,197,.05)}
.kcol-feito{background:rgba(82,169,127,.05)}
.kcol-afazer .kanban-col-ttl{color:#2d5f8a}
.kcol-andamento .kanban-col-ttl{color:#7a4e00}
.kcol-aguardando .kanban-col-ttl{color:#5e3080}
.kcol-feito .kanban-col-ttl{color:#1d6645}
/* kanban card: priority strip */
.kt-priostrip{width:3px;height:100%;position:absolute;left:0;top:0;bottom:0;border-radius:8px 0 0 8px}
.kt-body{flex:1;min-width:0}
.kt-titulo{font-size:13px;font-weight:500;color:var(--navy);margin-bottom:6px;line-height:1.4}
.kt-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.kt-prio{font-size:10px;font-weight:600;padding:2px 7px;border-radius:999px}
.kp-urgente{background:#FCEBEB;color:#791F1F}
.kp-normal{background:#FAEEDA;color:#633806}
.kp-baixa{background:#E1F5EE;color:#085041}
.kp-alta{background:#EBF0FC;color:#1F3379}
.kt-prazo{font-size:10px;color:var(--muted)}
.kt-prazo.vencido{color:var(--red);font-weight:500}
.kt-proc{font-size:10px;color:var(--muted);background:var(--cream);padding:2px 6px;border-radius:4px}
.kt-acoes{position:absolute;top:8px;right:8px;display:none;gap:4px}
.kanban-task:hover .kt-acoes{display:flex}
.kt-btn{font-size:10px;padding:2px 6px;border:1px solid var(--cream2);border-radius:4px;background:#fff;cursor:pointer;color:var(--muted)}
.kt-btn:hover{border-color:var(--navy);color:var(--navy)}
.kt-btn-del{color:#c0392b;border-color:#f5c6c6;font-size:12px;padding:2px 5px}
.kt-btn-del:hover{background:#fff0f0;border-color:#c0392b;color:#c0392b}
.kanban-add{width:100%;padding:8px;background:transparent;border:1px dashed var(--cream2);border-radius:8px;font-size:12px;color:var(--muted);cursor:pointer;font-family:"DM Sans",sans-serif;margin-top:4px;transition:all .15s}
.kanban-add:hover{border-color:var(--gold);color:var(--gold)}
/* Botão inline de adicionar tarefa no rodapé da coluna */
.kanban-add-inline{
  display:flex;align-items:center;justify-content:center;gap:6px;
  margin:8px 10px 10px;padding:9px 12px;
  border:1.5px dashed rgba(201,168,76,.35);
  border-radius:9px;
  background:rgba(201,168,76,.04);
  color:var(--muted);font-size:12px;font-weight:500;
  font-family:"DM Sans",sans-serif;
  cursor:pointer;transition:all .18s;
  user-select:none;
}
.kanban-add-inline::before{
  content:"＋";
  font-size:14px;font-weight:700;
  color:rgba(201,168,76,.6);
  line-height:1;
}
.kanban-add-inline:hover{
  background:rgba(201,168,76,.10);
  border-color:var(--gold);
  color:var(--navy);
}
.kanban-add-inline:hover::before{color:var(--gold)}
/* Botão + no header da coluna */
.kanban-add-btn{
  width:22px;height:22px;border-radius:6px;
  background:rgba(255,255,255,.12);border:none;
  color:rgba(255,255,255,.6);font-size:16px;font-weight:300;
  cursor:pointer;display:flex;align-items:center;justify-content:center;
  line-height:1;transition:all .15s;flex-shrink:0;
  font-family:"DM Sans",sans-serif;
}
.kanban-add-btn:hover{background:rgba(201,168,76,.25);color:var(--gold)}
.lista-tarefas{padding:16px 20px;overflow-y:auto;flex:1}
.lista-tarefa-item{background:#fff;border:1px solid var(--cream2);border-radius:9px;padding:12px 14px;margin-bottom:8px;display:flex;align-items:center;gap:12px}
.lista-check{width:18px;height:18px;border:1.5px solid var(--cream2);border-radius:4px;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .15s}
.lista-check.feito{background:var(--green);border-color:var(--green)}
.lista-check.feito::after{content:"✓";font-size:11px;color:#fff}
.lista-tarefa-info{flex:1}
.lista-tarefa-titulo{font-size:13px;font-weight:500;color:var(--navy)}
.lista-tarefa-titulo.feito{text-decoration:line-through;color:var(--muted)}
.lista-tarefa-meta{font-size:11px;color:var(--muted);margin-top:2px}
/* MODAIS WORKSPACE */
.modal-ws{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:600;display:none;align-items:center;justify-content:center}
.modal-ws.open{display:flex}
.modal-ws-card{background:#fff;border-radius:14px;padding:26px;width:100%;max-width:460px;max-height:85vh;overflow-y:auto}


/* ── PARECERES ── */
.par-layout{display:grid;grid-template-columns:380px 1fr;height:100%;overflow:hidden}
.par-sidebar{background:#fff;border-right:1px solid var(--cream2);padding:20px 18px;overflow-y:auto;height:100%;min-height:0}
.par-main{background:var(--cream);overflow-y:auto;height:100%;min-height:0;display:flex;flex-direction:column}
.par-papel{background:#fff;border:1px solid var(--cream2);border-radius:12px;overflow:hidden;box-shadow:0 2px 14px rgba(15,30,53,.06)}
.par-papel-header{background:var(--navy);padding:18px 24px}
.par-papel-tipo{font-size:10px;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.07em;margin-bottom:4px}
.par-papel-titulo{font-family:"Playfair Display",serif;font-size:16px;color:var(--gold2);font-weight:700}
.par-papel-body{padding:20px 26px}
.par-secao{margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--cream2)}
.par-secao:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.par-secao-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--gold);margin-bottom:8px}
.par-secao-texto{font-size:13px;line-height:1.85;color:var(--text);white-space:pre-wrap}
.par-verificar{background:#fff3e0;border:1px solid rgba(201,168,76,.55);border-radius:5px;padding:3px 8px;font-size:12px;color:#7a5900;font-weight:600;cursor:help;white-space:nowrap}
.par-hist-titulo{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--cream2)}
.par-hist-item{background:var(--cream);border:1px solid var(--cream2);border-radius:8px;padding:10px 12px;margin-bottom:6px;cursor:pointer;transition:all .15s}
.par-hist-item:hover{border-color:var(--gold);background:#fdf9f0}
.par-hist-tipo{font-size:10px;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
.par-hist-questao{font-size:12px;color:var(--navy);font-weight:500;line-height:1.4;margin-bottom:3px}
.par-hist-meta{font-size:11px;color:var(--muted)}
.par-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:10px;text-align:center;padding:30px;color:var(--muted)}
.par-empty svg{width:44px;height:44px;opacity:.25}
.par-empty h3{font-size:14px;font-weight:500;color:var(--navy)}
.par-empty p{font-size:12px;max-width:260px;line-height:1.6}
.par-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:14px}


/* ── AGENDA ── */
#screen-agenda.active{display:flex!important;flex-direction:column;height:100%;overflow:hidden}
.agenda-main{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;background:var(--cream)}

/* ── PORTAL DO CLIENTE ── */
#screen-portal.active{display:block!important;height:100%;overflow:hidden}
.portal-layout{display:grid;grid-template-columns:360px 1fr;height:100%;overflow:hidden}
.portal-sidebar{background:#fff;border-right:1px solid var(--cream2);display:flex;flex-direction:column;overflow:hidden;height:100%;min-height:0}
.portal-sidebar-header{padding:14px 16px 12px;flex-shrink:0;border-bottom:1px solid var(--cream2)}
.portal-sidebar-ttl{font-family:"Playfair Display",serif;font-size:15px;font-weight:700;color:var(--navy);margin-bottom:4px}
.portal-sidebar-sub{font-size:12px;color:var(--muted);line-height:1.5}
.portal-list{flex:1;overflow-y:auto;padding:10px;min-height:0}
.portal-card{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:13px 14px;margin-bottom:8px;cursor:pointer;transition:all .15s}
.portal-card:hover{border-color:var(--gold);transform:translateX(2px)}
.portal-card.active{border-color:var(--gold);background:rgba(201,168,76,.04)}
.portal-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:5px}
.portal-card-titulo{font-size:13px;font-weight:500;color:var(--navy);flex:1;margin-right:8px;line-height:1.35}
.portal-ativo-pill{font-size:10px;font-weight:600;padding:2px 8px;border-radius:999px}
.pp-ativo{background:#e8f5e9;color:#1a7a3c}
.pp-inativo{background:var(--cream2);color:var(--muted)}
.portal-card-meta{font-size:11px;color:var(--muted)}
.portal-card-link{font-size:10px;color:var(--gold);margin-top:4px;display:flex;align-items:center;gap:4px;word-break:break-all}
.portal-add-btn{margin:0 10px 10px;padding:10px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-family:"DM Sans",sans-serif;font-size:13px;font-weight:500;cursor:pointer;width:calc(100% - 20px);flex-shrink:0}
.portal-add-btn:hover{background:var(--navy2)}
.portal-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:8px;text-align:center;padding:20px;color:var(--muted)}
.portal-empty svg{width:36px;height:36px;opacity:.2}
.portal-empty h3{font-size:13px;font-weight:500;color:var(--navy)}
/* PAINEL DIREITO PORTAL */
.portal-main{background:var(--cream);overflow-y:auto;height:100%;min-height:0;padding:18px 22px}
.portal-main-header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;flex-wrap:wrap}
.portal-main-ttl{font-family:"Playfair Display",serif;font-size:18px;font-weight:700;color:var(--navy);margin-bottom:2px}
.portal-main-num{font-size:12px;color:var(--muted)}
.portal-main-header .btn-sec{width:auto;margin-top:0;padding:7px 12px}
.portal-main-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:10px;text-align:center;padding:40px}
.portal-main-empty svg{width:52px;height:52px;opacity:.18;margin:0 auto 14px;display:block}
.portal-main-empty h3{font-size:15px;font-weight:500;color:var(--navy);margin-bottom:6px}
.portal-main-empty p{font-size:13px;color:var(--muted);max-width:280px;line-height:1.6;margin:0 auto}
/* EDITOR DO PORTAL */
.portal-editor{display:none;flex-direction:column;height:100%;overflow:hidden}
.portal-editor.active{display:flex}
.portal-editor-header{background:var(--navy);padding:16px 22px;flex-shrink:0}
.portal-editor-titulo{font-family:"Playfair Display",serif;font-size:16px;color:#fff;font-weight:700;margin-bottom:2px}
.portal-editor-sub{font-size:11px;color:rgba(255,255,255,.4)}
.portal-editor-body{flex:1;overflow-y:auto;padding:20px 22px;min-height:0}
.portal-link-box{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:16px 18px;margin-bottom:16px}
.portal-link-ttl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}
.portal-link-url{display:flex;align-items:center;gap:8px}
.portal-link-text{flex:1;background:var(--cream);border:1px solid var(--cream2);border-radius:7px;padding:8px 12px;font-size:12px;color:var(--navy);font-family:monospace;word-break:break-all;line-height:1.5}
.portal-link-copy{padding:8px 14px;background:var(--navy);color:#fff;border:none;border-radius:7px;font-size:12px;font-family:"DM Sans",sans-serif;cursor:pointer;white-space:nowrap;flex-shrink:0}
.portal-link-copy:hover{background:var(--navy2)}
.portal-atualizacoes{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:16px 18px;margin-bottom:14px}
.portal-atualiz-lista{display:flex;flex-direction:column;gap:8px;margin-bottom:14px;max-height:280px;overflow-y:auto}
.portal-atualiz-item{background:var(--cream);border-radius:8px;padding:10px 12px;position:relative}
.portal-atualiz-data{font-size:10px;color:var(--muted);margin-bottom:3px}
.portal-atualiz-texto{font-size:13px;color:var(--text);line-height:1.6}
.portal-atualiz-del{position:absolute;top:8px;right:8px;background:none;border:none;font-size:14px;color:var(--muted);cursor:pointer;opacity:.5}
.portal-atualiz-del:hover{opacity:1;color:var(--red)}
.portal-nova-atualiz{display:flex;flex-direction:column;gap:8px}
.portal-nova-atualiz textarea{border:1px solid var(--cream2);border-radius:8px;padding:10px 12px;font-size:13px;font-family:"DM Sans",sans-serif;min-height:80px;resize:vertical;line-height:1.6}
.portal-nova-atualiz textarea:focus{outline:none;border-color:var(--gold)}
.portal-visib{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:14px 18px;margin-bottom:14px}
.portal-visib-ttl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:10px}
.portal-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--cream2);font-size:13px;color:var(--text)}
.portal-toggle-row:last-child{border-bottom:none}
.toggle-sw{width:36px;height:20px;background:var(--cream2);border-radius:999px;position:relative;cursor:pointer;transition:background .2s;border:none;flex-shrink:0}
.toggle-sw.on{background:var(--green)}
.toggle-sw::after{content:"";width:16px;height:16px;background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;transition:left .2s}
.toggle-sw.on::after{left:18px}

/* ── PORTAL CLIENTE — Segurança anti-golpe ─────────────────── */
.portal-seguranca{
  background:#fff;border:1px solid rgba(201,168,76,.4);
  border-radius:12px;margin-bottom:14px;overflow:hidden;
  box-shadow:0 1px 4px rgba(15,30,53,.04);
}
.portal-seguranca > summary{
  display:flex;align-items:center;gap:8px;
  padding:12px 14px;cursor:pointer;list-style:none;
  background:linear-gradient(135deg,rgba(201,168,76,.12),rgba(201,168,76,.04));
  font-size:13px;font-weight:700;color:var(--navy);
  border-bottom:1px solid transparent;transition:border-color .2s;
}
.portal-seguranca[open] > summary{border-bottom-color:rgba(201,168,76,.25)}
.portal-seguranca > summary::-webkit-details-marker{display:none}
.portal-seguranca > summary > svg:first-child{
  width:18px;height:18px;color:var(--gold);
  stroke-width:2;flex-shrink:0;
}
.portal-seguranca > summary > span{flex:1;display:flex;flex-direction:column;line-height:1.25}
.portal-seguranca > summary > span small{
  font-size:11px;font-weight:500;color:var(--muted);
  margin-top:1px;letter-spacing:0;
}
.portal-seg-pill{
  background:var(--gold);color:#fff;
  font-size:9px;font-weight:700;
  padding:3px 9px;border-radius:999px;
  text-transform:uppercase;letter-spacing:.06em;
  flex-shrink:0;
}
.portal-seg-body{padding:14px}
.portal-seg-info{
  display:flex;gap:10px;
  background:var(--cream);border-left:3px solid var(--gold);
  padding:10px 12px;border-radius:6px;
  font-size:12px;color:var(--navy);line-height:1.55;
  margin-bottom:14px;
}
.portal-seg-info > svg{
  width:16px;height:16px;color:var(--gold);
  flex-shrink:0;margin-top:2px;stroke-width:2;
}
.portal-seg-info strong{color:var(--navy);font-weight:700}
.portal-seg-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:12px;
  margin-bottom:14px;
}
.portal-seg-card{
  background:var(--cream);border:1px solid var(--cream2);
  border-radius:10px;padding:12px;
}
.portal-seg-label{
  display:flex;align-items:center;gap:6px;
  font-size:11px;font-weight:700;text-transform:uppercase;
  letter-spacing:.06em;color:var(--muted);
  margin-bottom:8px;
}
.portal-seg-label svg{width:13px;height:13px;color:var(--gold);stroke-width:2}
.portal-seg-codigo{
  font-family:'Courier New','SF Mono',Monaco,monospace;
  font-size:22px;font-weight:700;color:var(--navy);
  letter-spacing:.15em;
  padding:10px 12px;background:#fff;
  border:1.5px dashed var(--gold);border-radius:8px;
  text-align:center;
  margin-bottom:8px;user-select:all;cursor:pointer;
}
.portal-seg-card input[type=text],
.portal-seg-card > input{
  width:100%;padding:9px 11px;
  border:1px solid var(--cream2);border-radius:7px;
  font-size:13px;font-family:inherit;
  background:#fff;margin-bottom:8px;
  box-sizing:border-box;
}
.portal-seg-card input:focus{outline:none;border-color:var(--gold)}
.portal-seg-actions{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px}
.portal-seg-btn{
  display:inline-flex;align-items:center;gap:5px;
  font-size:11px;font-weight:600;
  padding:7px 11px;background:#fff;
  border:1px solid var(--cream2);border-radius:7px;
  color:var(--navy);cursor:pointer;
  font-family:DM Sans,sans-serif;
  transition:all .15s;
}
.portal-seg-btn:hover{background:var(--cream);border-color:var(--gold)}
.portal-seg-btn svg{width:13px;height:13px;stroke-width:2}
.portal-seg-btn-warn{color:#c0392b;border-color:#f5c6c6}
.portal-seg-btn-warn:hover{background:#fdecea;border-color:#c0392b}
.portal-seg-help{
  font-size:11px;color:var(--muted);
  line-height:1.5;margin-top:2px;
}
.portal-seg-aviso{
  display:flex;gap:10px;
  background:#fff8e6;border:1px solid #f0d77a;
  border-radius:10px;padding:12px;
}
.portal-seg-aviso > svg{
  width:20px;height:20px;color:#b58400;
  flex-shrink:0;margin-top:1px;stroke-width:2;
}
.portal-seg-aviso-body{flex:1;min-width:0}
.portal-seg-aviso-ttl{
  font-size:12px;font-weight:700;color:#7a5800;
  margin-bottom:6px;
}
.portal-seg-aviso textarea{
  width:100%;font-size:12px;padding:9px 11px;
  border:1px solid #f0d77a;border-radius:7px;
  resize:vertical;min-height:70px;
  font-family:inherit;background:#fffdf5;
  margin-bottom:6px;line-height:1.5;
  box-sizing:border-box;
}
.portal-seg-aviso textarea:focus{outline:none;border-color:#b58400}

/* ── PORTAL CLIENTE — Comunicações programadas (Fase 3) ─────── */
.portal-comunicacoes{
  background:#fff;border:1px solid var(--cream2);
  border-radius:12px;margin-bottom:14px;overflow:hidden;
  box-shadow:0 1px 4px rgba(15,30,53,.04);
}
.portal-comunicacoes > summary{
  display:flex;align-items:center;gap:8px;
  padding:12px 14px;cursor:pointer;list-style:none;
  background:linear-gradient(135deg,rgba(41,128,185,.08),rgba(41,128,185,.02));
  font-size:13px;font-weight:700;color:var(--navy);
  border-bottom:1px solid transparent;transition:border-color .2s;
}
.portal-comunicacoes[open] > summary{border-bottom-color:rgba(41,128,185,.2)}
.portal-comunicacoes > summary::-webkit-details-marker{display:none}
.portal-comunicacoes > summary > svg:first-child{
  width:18px;height:18px;color:#2980b9;
  stroke-width:2;flex-shrink:0;
}
.portal-comunicacoes > summary > span{flex:1;display:flex;flex-direction:column;line-height:1.25}
.portal-comunicacoes > summary > span small{
  font-size:11px;font-weight:500;color:var(--muted);
  margin-top:1px;letter-spacing:0;
}
.portal-com-pill{
  background:#2980b9;color:#fff;
  font-size:9px;font-weight:700;
  padding:3px 9px;border-radius:999px;
  text-transform:uppercase;letter-spacing:.06em;
  flex-shrink:0;
}
.portal-com-body{padding:14px}
.portal-com-info{
  display:flex;gap:10px;
  background:#eef5fb;border-left:3px solid #2980b9;
  padding:10px 12px;border-radius:6px;
  font-size:12px;color:var(--navy);line-height:1.55;
  margin-bottom:14px;
}
.portal-com-info > svg{
  width:16px;height:16px;color:#2980b9;
  flex-shrink:0;margin-top:2px;stroke-width:2;
}
.portal-com-form{
  background:var(--cream);border:1px solid var(--cream2);
  border-radius:8px;padding:12px;margin-bottom:14px;
  display:flex;flex-direction:column;gap:8px;
}
.portal-com-form-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.portal-com-input{
  width:100%;padding:8px 11px;
  border:1px solid var(--cream2);border-radius:7px;
  font-size:13px;font-family:inherit;background:#fff;
  box-sizing:border-box;
}
.portal-com-input:focus{outline:none;border-color:#2980b9}
.portal-com-lista-ttl{
  font-size:11px;font-weight:700;
  text-transform:uppercase;letter-spacing:.06em;
  color:var(--muted);margin-bottom:8px;
}
.portal-com-card{
  display:flex;gap:10px;
  background:#fff;border:1px solid var(--cream2);
  border-radius:8px;padding:10px 12px;margin-bottom:6px;
  align-items:flex-start;
}
.portal-com-card.realizada{opacity:.55;background:var(--cream)}
.portal-com-card.cancelada{opacity:.45;text-decoration:line-through;background:var(--cream)}
.portal-com-icone{
  font-size:18px;width:32px;height:32px;
  background:rgba(41,128,185,.1);border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
}
.portal-com-corpo{flex:1;min-width:0}
.portal-com-quando{
  font-size:11px;font-weight:700;color:#2980b9;
  text-transform:uppercase;letter-spacing:.04em;
  margin-bottom:3px;
}
.portal-com-desc{
  font-size:13px;color:var(--navy);
  line-height:1.45;word-wrap:break-word;
}
.portal-com-status{
  font-size:10px;font-weight:600;color:var(--muted);
  margin-top:3px;
}
.portal-com-acoes{display:flex;flex-direction:column;gap:4px;flex-shrink:0}
.portal-com-acao-btn{
  font-size:10px;font-weight:600;padding:4px 8px;
  border:1px solid var(--cream2);border-radius:5px;
  background:#fff;color:var(--muted);cursor:pointer;
  font-family:DM Sans,sans-serif;white-space:nowrap;
}
.portal-com-acao-btn:hover{background:var(--cream);color:var(--navy);border-color:var(--gold)}
.portal-com-acao-del{color:#c0392b;border-color:#f5c6c6}
.portal-com-acao-del:hover{background:#fdecea;color:#c0392b;border-color:#c0392b}
.portal-com-empty{
  text-align:center;padding:18px;font-size:12px;
  color:var(--muted);font-style:italic;
}

@media(max-width:767px){
  .portal-seg-grid{grid-template-columns:1fr}
  .portal-seg-codigo{font-size:20px;letter-spacing:.1em}
  .portal-com-form-row{grid-template-columns:1fr}
  .portal-com-card{flex-wrap:wrap}
  .portal-com-acoes{flex-direction:row;width:100%;margin-top:6px}
  .portal-com-acao-btn{flex:1;text-align:center}
}

/* ── FINANCEIRO ── */
#screen-financeiro.active{display:block!important;height:100%;overflow:hidden}
.fin-layout{display:grid;grid-template-columns:340px 1fr;height:100%;overflow:hidden}
.fin-sidebar{background:#fff;border-right:1px solid var(--cream2);display:flex;flex-direction:column;overflow:hidden;height:100%;min-height:0}
.fin-sidebar-header{padding:14px 16px 12px;flex-shrink:0;border-bottom:1px solid var(--cream2)}
.fin-sidebar-ttl{font-family:"Playfair Display",serif;font-size:15px;font-weight:700;color:var(--navy);margin-bottom:10px}
.fin-filtros{display:flex;gap:5px;flex-wrap:wrap}
.fin-filtro{font-size:11px;padding:3px 10px;border:1px solid var(--cream2);border-radius:999px;background:#fff;cursor:pointer;color:var(--muted);transition:all .15s}
.fin-filtro.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.fin-list{flex:1;overflow-y:auto;padding:8px 10px;min-height:0}
.fin-item{background:#fff;border:1px solid var(--cream2);border-radius:9px;padding:12px 13px;margin-bottom:7px;cursor:pointer;transition:all .15s}
.fin-item:hover{border-color:var(--gold);transform:translateX(2px)}
.fin-item.active{border-color:var(--gold);background:rgba(201,168,76,.04)}
.fin-item.atrasado{border-color:#f09595;background:#fcebeb}
.fin-item-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:4px}
.fin-item-cliente{font-size:13px;font-weight:500;color:var(--navy);flex:1;margin-right:8px}
.fin-item-valor{font-size:13px;font-weight:600;flex-shrink:0}
.fin-item-meta{font-size:11px;color:var(--muted)}
.fin-status-pill{font-size:10px;font-weight:600;padding:2px 7px;border-radius:999px;margin-top:4px;display:inline-block}
.fsp-pago{background:#e8f5e9;color:#1a7a3c}
.fsp-pendente{background:#fff3e0;color:#c9a84c}
.fsp-atrasado{background:#fcebeb;color:#c0392b}
.fin-add-btn{margin:0 10px 10px;padding:10px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-family:"DM Sans",sans-serif;font-size:13px;font-weight:500;cursor:pointer;width:calc(100% - 20px);flex-shrink:0}
.fin-add-btn:hover{background:var(--navy2)}
.fin-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:8px;text-align:center;padding:20px;color:var(--muted)}
/* PAINEL DIREITO FINANCEIRO */
.fin-main{background:var(--cream);overflow-y:auto;height:100%;min-height:0;padding:20px 24px}
.fin-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px}
.fin-stat{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:14px;text-align:center}
.fin-stat-n{font-family:"Playfair Display",serif;font-size:26px;font-weight:700;line-height:1;margin-bottom:3px}
.fin-stat-l{font-size:11px;color:var(--muted)}
.fin-stat-n.verde{color:var(--green)}
.fin-stat-n.amarelo{color:#c9a84c}
.fin-stat-n.vermelho{color:var(--red)}
.fin-stat-n.navy{color:var(--navy)}
.fin-grafico-section{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:16px 18px;margin-bottom:16px}
.fin-grafico-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.fin-grafico-ttl{font-size:13px;font-weight:500;color:var(--navy)}
.fin-bars{display:flex;align-items:flex-end;gap:6px;height:100px}
.fin-bar-group{display:flex;flex-direction:column;align-items:center;flex:1;gap:3px}
.fin-bar{border-radius:4px 4px 0 0;width:100%;transition:height .3s;min-height:3px}
.fin-bar-label{font-size:9px;color:var(--muted);text-align:center}
.fin-recentes{background:#fff;border:1px solid var(--cream2);border-radius:10px;overflow:hidden}
.fin-recentes-header{padding:13px 16px;border-bottom:1px solid var(--cream2);display:flex;align-items:center;justify-content:space-between}
.fin-recentes-ttl{font-size:13px;font-weight:500;color:var(--navy)}
.fin-recentes-body{overflow:hidden}
.fin-row{display:flex;align-items:center;gap:12px;padding:11px 16px;border-bottom:1px solid var(--cream2);transition:background .15s}
.fin-row:last-child{border-bottom:none}
.fin-row:hover{background:var(--cream)}
.fin-row-avatar{width:34px;height:34px;border-radius:50%;background:rgba(15,30,53,.08);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--navy);flex-shrink:0}
.fin-row-info{flex:1;min-width:0}
.fin-row-cliente{font-size:13px;font-weight:500;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fin-row-desc{font-size:11px;color:var(--muted)}
.fin-row-direita{text-align:right;flex-shrink:0}
.fin-row-valor{font-size:13px;font-weight:600}
.fin-row-data{font-size:10px;color:var(--muted);margin-top:1px}
/* SUB-ABA DESPESAS */
.fdesp-empty{padding:24px 16px;text-align:center;font-size:12px;color:var(--muted);line-height:1.6}
/* Lançamento rápido de despesa */
.fdesp-quick{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:14px 16px;margin-bottom:18px}
.fdesp-quick-ttl{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:10px}
.fdesp-quick-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.fdesp-quick-row input,.fdesp-quick-row select{border:1px solid var(--cream2);border-radius:8px;padding:9px 11px;font-size:13px;font-family:inherit;color:var(--text);background:#fff;height:38px;box-sizing:border-box}
.fdesp-quick-row input:focus,.fdesp-quick-row select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.12)}
.fdesp-quick-desc{flex:1 1 220px;min-width:160px}
.fdesp-quick-valor{flex:0 0 110px;width:110px}
.fdesp-quick-cat{flex:0 0 auto}
.fdesp-quick-data{flex:0 0 auto}
.fdesp-quick-status{flex:0 0 auto}
.fdesp-quick-rec{display:flex;align-items:center;gap:4px;font-size:16px;cursor:pointer;color:var(--muted);padding:0 4px;user-select:none}
.fdesp-quick-rec input{width:16px;height:16px;cursor:pointer}
.fdesp-quick-btn{flex:0 0 auto;height:38px;padding:0 18px;border:none;border-radius:8px;background:var(--navy);color:var(--gold2);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}
.fdesp-quick-btn:hover{background:var(--navy3)}
.fdesp-quick-btn:disabled{opacity:.5;cursor:default}
@media(max-width:760px){
  .fdesp-quick-desc,.fdesp-quick-valor,.fdesp-quick-cat,.fdesp-quick-data,.fdesp-quick-status,.fdesp-quick-btn{flex:1 1 100%;width:100%}
}
.fdesp-leg{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--muted)}
.fdesp-leg-i{width:10px;height:10px;border-radius:3px;display:inline-block}
.fdesp-leg-i.pago{background:#e74c3c}
.fdesp-leg-i.aberto{background:#f0b9b2;margin-left:8px}
.fdesp-cat-row{margin-bottom:14px}
.fdesp-cat-row:last-child{margin-bottom:0}
.fdesp-cat-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--navy);margin-bottom:6px}
.fdesp-cat-top strong{font-weight:700}
.fdesp-cat-qtd{color:var(--muted);font-weight:400}
.fdesp-cat-bar{height:8px;border-radius:99px;background:var(--cream2);overflow:hidden}
.fdesp-cat-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,#b34747,var(--red));transition:width .5s cubic-bezier(.4,0,.2,1)}
.fdesp-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--cream2);cursor:pointer;transition:background .15s}
.fdesp-item:last-child{border-bottom:none}
.fdesp-item:hover{background:var(--cream)}
.fdesp-item-main{flex:1;min-width:0}
.fdesp-item-desc{font-size:13px;font-weight:500;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fdesp-item-meta{font-size:11px;color:var(--muted);margin-top:2px}
.fdesp-item-right{text-align:right;flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.fdesp-item-valor{font-size:13px;font-weight:600;color:var(--red)}
.fdesp-rec-ic{font-size:11px}
.fdesp-rec-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:12px 16px;margin-bottom:16px;flex-wrap:wrap}
.fdesp-rec-txt{font-size:12.5px;color:var(--navy)}
.fdesp-rec-btn{font-size:12px;font-weight:600;padding:7px 14px;border:none;border-radius:7px;background:var(--navy);color:var(--gold2);cursor:pointer;flex-shrink:0;transition:background .15s}
.fdesp-rec-btn:hover{background:var(--navy3)}
/* MODAL LANÇAMENTO */
.modal-fin{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:600;display:none;align-items:center;justify-content:center}
.modal-fin.open{display:flex}
.modal-fin-card{background:#fff;border-radius:14px;padding:26px;width:100%;max-width:480px;max-height:85vh;overflow-y:auto}
/* MODAL PORTAL */
.modal-portal{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:600;display:none;align-items:center;justify-content:center}
.modal-portal.open{display:flex}
.modal-portal-card{background:#fff;border-radius:14px;padding:26px;width:100%;max-width:420px}


/* ════════════════════════════════════════════════════════════
   RESPONSIVE — ETAPA 1
   Mobile first: < 768px = coluna única + nav bottom
   Tablet: 768–1024px = layouts comprimidos
   ════════════════════════════════════════════════════════════ */

/* ── VARIÁVEIS MOBILE ── */
:root{
  --mobile-nav-h: 60px;
  --safe-bottom: env(safe-area-inset-bottom, 0px);
}

/* ── TABLET (768–1024px) ── */
@media(max-width:1024px){
  .fin-layout{grid-template-columns:280px 1fr}
  .portal-layout{grid-template-columns:280px 1fr}
  .tool-tab{padding:10px 14px;font-size:11px}
  header{padding:12px 20px}
}

/* ══════════════════════════════════════════════════════════
   MOBILE (< 768px)
   ══════════════════════════════════════════════════════════ */
@media(max-width:767px){

  /* BODY — reservar espaço para nav bottom */
  body{padding-bottom:calc(var(--mobile-nav-h) + var(--safe-bottom))}

  /* HEADER */
  header{padding:10px 14px}
  .logo-text span{display:none}
  .logo-text strong{font-size:13px}
  .logo-badge{width:32px;height:32px;font-size:14px}
  .unm{max-width:100px;font-size:11px}
  .datajud-status{display:none}

  /* NAV DESKTOP → OCULTAR */
  .tools-nav{display:none!important}

  /* NAV BOTTOM MOBILE */
  .mobile-nav{
    display:flex!important;
    position:fixed;
    bottom:0;left:0;right:0;
    height:var(--mobile-nav-h);
    padding-bottom:var(--safe-bottom);
    background:var(--navy);
    border-top:1px solid rgba(201,168,76,.25);
    z-index:300;
    align-items:stretch;
  }
  .mobile-nav-item{
    flex:1;display:flex;flex-direction:column;align-items:center;
    justify-content:center;gap:3px;cursor:pointer;
    color:rgba(255,255,255,.45);font-size:11px;font-weight:500;
    transition:color .15s;padding:6px 4px;border:none;background:none;
    font-family:DM Sans,sans-serif;
    -webkit-tap-highlight-color:transparent;
  }
  .mobile-nav-item.active{color:var(--gold)}
  .mobile-nav-item svg{width:20px;height:20px;stroke-width:1.8}
  .mobile-nav-item.active svg{stroke:var(--gold)}

  /* MAIS (menu hamburguer) */
  .mobile-menu-overlay{
    position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:400;
    opacity:0;pointer-events:none;transition:opacity .25s ease;
  }
  .mobile-menu-overlay.open{opacity:1;pointer-events:all;}
  .mobile-menu-sheet{
    display:block!important;
    position:fixed;bottom:calc(var(--mobile-nav-h) + var(--safe-bottom));
    left:0;right:0;background:var(--navy);border-radius:16px 16px 0 0;
    padding:16px 0 calc(8px + env(safe-area-inset-bottom));z-index:401;
    transform:translateY(110%);transition:transform .3s cubic-bezier(.4,0,.2,1);
    max-height:70vh;overflow-y:auto;
  }
  .mobile-menu-sheet.open{transform:translateY(0)!important;}
  .mobile-menu-item{
    display:flex;align-items:center;gap:14px;padding:13px 22px;
    color:rgba(255,255,255,.7);font-size:14px;cursor:pointer;
    -webkit-tap-highlight-color:transparent;
  }
  .mobile-menu-item:hover{background:rgba(255,255,255,.05)}
  .mobile-menu-item.active-menu{color:var(--gold)}
  .mobile-menu-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
  svg.mobile-menu-icon{width:20px!important;height:20px!important;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
  .mobile-menu-handle{width:36px;height:4px;background:rgba(255,255,255,.2);
    border-radius:2px;margin:0 auto 14px}

  /* TOOL SCREENS — coluna única */
  .tool-screen.active{
    height:calc(100dvh - 60px - var(--mobile-nav-h) - var(--safe-bottom));
    overflow-y:auto;
  }
  /* Exceções para abas com layout próprio */
  #screen-portal.active,
  #screen-financeiro.active,
  #screen-workspace.active {
    height:calc(100dvh - 60px - var(--mobile-nav-h) - var(--safe-bottom)) !important;
    overflow:hidden !important;
  }

  /* ── PROCESSOS MOBILE ── */
  .proc-layout{
    grid-template-columns:1fr!important;
    height:auto!important;
    overflow:visible!important;
  }
  .proc-sidebar{
    border-right:none!important;
    border-bottom:1px solid var(--cream2);
    height:auto!important;
    max-height:none!important;
  }
  .proc-sidebar-top{max-height:280px}
  .proc-prazos-panel{max-height:200px}
  .proc-main{
    max-height:240px; /* publicações compactas abaixo da lista no mobile */
  }
  /* Drawer processo em mobile: tela cheia */
  .proc-drawer{
    width:100%!important;
    right:-100%!important;
  }
  .proc-drawer.open{right:0!important}

  /* ── FINANCEIRO MOBILE ── */
  .fin-layout{
    grid-template-columns:1fr!important;
    height:auto!important;
    overflow:visible!important;
  }
  .fin-sidebar{border-right:none!important;border-bottom:1px solid var(--cream2);height:auto}
  .fin-main{height:auto!important;padding:12px}
  .fin-stats-grid{grid-template-columns:1fr 1fr!important}

  /* ── PORTAL MOBILE ── */
  .portal-layout{
    grid-template-columns:1fr!important;
    height:auto!important;
    overflow:visible!important;
  }
  .portal-sidebar{border-right:none!important;border-bottom:1px solid var(--cream2);height:auto}
  .portal-main{display:none}
  .portal-editor{display:flex!important;height:auto!important}

  /* ── CONTRATOS MOBILE ── */
  .r2,.r3{grid-template-columns:1fr!important}
  .clausulas-grid{grid-template-columns:1fr!important}
  .resultado-area{max-height:300px}

  /* ── WORKSPACE MOBILE ── */
  .ws-layout{flex:1!important;min-height:0!important;overflow:hidden!important}
  .ws-header{padding:12px 16px;flex-wrap:wrap}
  .ws-title{font-size:17px}
  .ws-subtitle{font-size:11px}
  .ws-header-btn{padding:7px 14px;font-size:12px}
  .ws-tabs{padding:0 8px}
  .ws-tab{padding:11px 12px;font-size:12px}
  .ws-tab svg{width:14px;height:14px}
  .docs-layout{grid-template-columns:1fr!important}
  .docs-sidebar{border-right:none!important;border-bottom:1px solid rgba(201,168,76,.25);max-height:280px}

  /* ── KANBAN MOBILE ── */
  .kanban-board{flex-direction:column!important}
  .kanban-col{min-width:100%!important}

  /* ── CLIENTES MOBILE ── */
  .cli-layout{grid-template-columns:1fr!important;height:auto!important;overflow:visible!important}
  .cli-sidebar{border-right:none!important;border-bottom:1px solid var(--cream2);height:auto;max-height:260px}
  .cli-drawer{width:100%!important;right:-100%!important}
  .cli-drawer.open{right:0!important}

  /* ── HONORÁRIOS MOBILE ── */
  .hon-grid{grid-template-columns:1fr!important}
  .hvg{grid-template-columns:1fr 1fr!important}

  /* ── ANALISADOR/PARECERES MOBILE ── */
  .ana-layout,.par-layout{grid-template-columns:1fr!important;height:auto!important}
  .cmp-grid{grid-template-columns:1fr!important}

  /* ── CAMPOS E BOTÕES TOUCH-FRIENDLY ── */
  input,select,textarea{
    min-height:44px;font-size:16px!important; /* evita zoom no iOS */
  }
  .btn-main,.btn-sec{min-height:44px;font-size:14px}
  .proc-add-btn,.fin-add-btn,.portal-add-btn{min-height:48px;font-size:14px}
  .modal-card,.modal-proc-card,.modal-fin-card,.modal-prazo-card,.modal-portal-card{
    width:calc(100% - 24px)!important;
    max-width:100%!important;
    margin:12px;
    max-height:90dvh;
  }

  /* ── CALENDÁRIO MOBILE ── */
  .cal-day{min-height:52px!important}
  .cal-dow{font-size:11px!important}
  .cal-prazo-chip{font-size:10px!important}
  .proc-cal-mes{font-size:13px!important}

  /* ── LOGIN MOBILE ── */
  .login-card{padding:24px 18px;margin:12px}

  /* ── NOTIFICAÇÕES MOBILE ── */
  .notif-dropdown{width:calc(100% - 24px)!important;right:12px!important}

  /* ── DRAWER PROCESSO MOBILE HEADER ── */
  .proc-drawer-titulo{font-size:13px}
  .proc-drawer-tabs{overflow-x:auto}
  .proc-dtab{flex:none;min-width:80px;font-size:11px}

  /* ── DRAWER CLIENTE — 6 abas, scroll horizontal ── */
  .cli-drawer-tabs{overflow-x:auto;scrollbar-width:none}
  .cli-drawer-tabs::-webkit-scrollbar{display:none}
  .cli-dtab{flex:0 0 auto;white-space:nowrap;min-width:64px;font-size:11px;padding:8px 9px}

  /* ── CORREÇÃO SCROLL MOBILE — todas as telas ── */
  /* Altura correta descontando header mobile (60px) + nav bottom */
  #screen-ferramentas.active,
  #screen-clientes.active,
  #screen-crm.active,
  #screen-jurisprudencia.active,
  #screen-audiencias.active,
  #screen-assessor.active,
  #screen-workspace.active,
  #screen-portal.active,
  #screen-financeiro.active,
  #screen-processos.active,
  #screen-jurimetria.active {
    height: calc(100dvh - 60px - var(--mobile-nav-h) - var(--safe-bottom)) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
  }

  /* Ferramentas — layout em coluna única com scroll livre */
  #screen-ferramentas .tools-layout {
    display: block !important;
    height: auto !important;
    overflow: visible !important;
    min-height: 100%;
  }
  #screen-ferramentas .tools-sidebar {
    height: auto !important;
    overflow: visible !important;
    max-height: none !important;
  }
  #screen-ferramentas .tools-main {
    height: auto !important;
    overflow: hidden !important;
  }
  #screen-ferramentas .tools-panel {
    height: auto !important;
    overflow-y: auto !important;
  }

  /* CRM — scroll livre */
  #screen-crm .crm-layout,
  #screen-crm .crm-main {
    height: auto !important;
    overflow: visible !important;
    flex: none !important;
  }

  /* Audiências — scroll livre */
  #screen-audiencias .aud-layout {
    height: auto !important;
    overflow: visible !important;
    flex: none !important;
  }

  /* Jurisprudência — scroll livre */
  #screen-jurisprudencia .jusp-wrap {
    height: auto !important;
    overflow: visible !important;
  }

  /* Menu sheet — garantir scroll interno quando tem muitos itens */
  .mobile-menu-sheet {
    max-height: 80vh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  /* Evitar que o menu sheet trave o scroll da página */
  body.menu-open {
    overflow: hidden;
    position: fixed;
    width: 100%;
  }

  /* ── CRM KANBAN — coluna única em mobile ── */
  .crm-kanban{grid-template-columns:1fr!important;min-height:auto}

  /* ── NAVY HEADERS — compactos em mobile ── */
  .crm-header,.aud-header,.jusp-header,.juri-screen-header,.vl-screen-header{
    padding:10px 14px!important;
  }
  .crm-titulo,.aud-title,.jusp-titulo,.juri-screen-titulo,.vl-screen-titulo{
    font-size:16px!important;
  }

  /* ── MODAIS — altura máxima respeitando nav bottom ── */
  .modal-card,.modal-proc-card,.modal-fin-card,.modal-prazo-card,.modal-portal-card{
    max-height:calc(100dvh - var(--mobile-nav-h) - var(--safe-bottom) - 16px)!important;
  }

  /* ── WIZARD ASSINATURAS — footer acima da nav bottom ── */
  .assin-wizard-footer{
    bottom:calc(var(--mobile-nav-h) + var(--safe-bottom))!important;
    position:sticky!important;
  }

  /* ── TIPOGRAFIA MOBILE — mínimo legível ── */
  /* Badges e chips em listas */
  .fin-row-data,.lista-prazo-dias,.kt-prazo,.kt-prio,.kt-proc,
  .cli-tipo-pill,.proc-filter,.pub-header-sub,.proc-notif-sub,
  .atend-session-meta,.aud-hist-sub,.relat-stat-l,.resumo-l,
  .pet-badge,.pchip{font-size:11px!important}
  /* Clientes: ocultar painel principal em mobile (detalhe abre em drawer) */
  .cli-main{display:none!important}
  /* Remover cap de altura na sidebar de clientes (main está oculto) */
  .cli-sidebar{max-height:none!important}

  /* ── PADDINGS DE CONTEÚDO — compactos em mobile ── */
  .vl-content{padding:16px!important}
  .tools-panel-inner{padding:16px!important}
  .juri-screen-body,
  #screen-jurimetria .juri-screen-body{padding:16px!important}
  .crm-body{padding:12px 16px!important}

  /* ── TOUCH TARGETS — área mínima 44px em mobile ── */
  .proc-filter,.proc-vbtn,.hist-btn,.pet-btn-sm,
  .agenda-novo-btn,.proc-btn-new,.fin-add-btn,
  .kt-btn{min-height:44px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}

  /* ── PROCESSOS SIDEBAR — liberar scroll natural ── */
  .proc-sidebar-top{max-height:none!important}
  .proc-prazos-panel{max-height:none!important}
}

/* ── NAV BOTTOM — visível só no mobile, escondido no desktop ── */
@media(min-width:768px){
  .mobile-nav{display:none!important}
  .mobile-menu-overlay{display:none!important}
  .mobile-menu-sheet{display:none!important}
}

/* ══════════════════════════════════════════════════════════
   MOBILE PANEL TOGGLE — troca Sidebar ↔ Main no mobile
   ══════════════════════════════════════════════════════════ */
.mobile-panel-toggle{display:none}

@media(max-width:767px){
  .mobile-panel-toggle{
    display:flex;flex-shrink:0;
    background:#fff;border-bottom:2px solid var(--cream2);
  }
  .mpt-btn{
    flex:1;padding:11px 16px;font-size:13px;font-weight:600;
    border:none;background:none;cursor:pointer;color:var(--muted);
    border-bottom:3px solid transparent;font-family:DM Sans,sans-serif;
    display:flex;align-items:center;justify-content:center;gap:6px;
    transition:all .15s;white-space:nowrap;
    -webkit-tap-highlight-color:transparent;
  }
  .mpt-btn.mpt-active{color:var(--navy);border-bottom-color:var(--gold);background:rgba(201,168,76,.05)}
  .mpt-btn svg{width:15px;height:15px;stroke-width:2;flex-shrink:0}

  /* Financeiro: esconde painel inativo */
  #screen-financeiro[data-panel="main"] .fin-sidebar{display:none!important}
  #screen-financeiro:not([data-panel="main"]) .fin-main{display:none!important}
}

/* ══════════════════════════════════════════════════════════
   BREAKPOINT INTERMEDIÁRIO — 768px a 1280px (tablets)
   ══════════════════════════════════════════════════════════ */
@media(min-width:768px) and (max-width:1280px){
  /* CRM Kanban: 3 colunas em vez de 5 */
  .crm-kanban{grid-template-columns:repeat(3,1fr)}
  /* Sidebars mais compactas em telas intermediárias */
  .cli-layout{grid-template-columns:280px 1fr}
  .portal-layout{grid-template-columns:280px 1fr}
  .fin-layout{grid-template-columns:280px 1fr}
}


/* ══════════════════════════════════════════════════════════
   ASSESSOR FLUTUANTE UNIFICADO
   ══════════════════════════════════════════════════════════ */

/* Botão flutuante */
.ia-float-btn{
  position:fixed;bottom:calc(72px + env(safe-area-inset-bottom));right:18px;
  width:54px;height:54px;border-radius:50%;
  background:linear-gradient(135deg,#0f1e35,#162844);
  border:2px solid rgba(201,168,76,.5);
  cursor:pointer;z-index:450;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 18px rgba(15,30,53,.45);
  transition:transform .2s,box-shadow .2s;
  -webkit-tap-highlight-color:transparent;
}
.ia-float-btn svg{width:26px;height:26px;fill:var(--gold)}
.ia-float-btn:hover{transform:scale(1.08);box-shadow:0 6px 24px rgba(15,30,53,.6)}
.ia-float-btn:active{transform:scale(.95)}

/* ═══════════ FEEDBACK BETA — botão flutuante e modal ═══════════ */
.bf-float-btn{
  position:fixed;bottom:calc(138px + env(safe-area-inset-bottom));right:22px;
  width:46px;height:46px;border-radius:50%;
  background:linear-gradient(135deg,#c9a84c,#e3c876);
  border:2px solid rgba(255,255,255,.5);
  color:#3a2c00;cursor:pointer;z-index:449;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 14px rgba(201,168,76,.55);
  transition:transform .2s,box-shadow .2s;
  -webkit-tap-highlight-color:transparent;
  animation:bfPulse 2.4s ease-in-out 1s 3;
}
.bf-float-btn:hover{transform:scale(1.1);box-shadow:0 6px 20px rgba(201,168,76,.75)}
.bf-float-btn:active{transform:scale(.94)}
.bf-float-btn svg{width:22px;height:22px}
.bf-float-pill{
  position:absolute;top:-7px;right:-10px;
  background:var(--navy);color:#fff;
  font-size:9px;font-weight:700;letter-spacing:.05em;
  padding:2px 6px;border-radius:999px;
  border:1.5px solid #fff;line-height:1
}
@keyframes bfPulse{
  0%,100%{box-shadow:0 4px 14px rgba(201,168,76,.55)}
  50%{box-shadow:0 4px 14px rgba(201,168,76,.55),0 0 0 12px rgba(201,168,76,0)}
}
/* Modal */
.bf-overlay{position:fixed;inset:0;background:rgba(15,30,53,.55);z-index:1200;display:flex;align-items:center;justify-content:center;padding:16px;animation:bfFadeIn .15s ease-out}
.bf-modal{background:#fff;border-radius:14px;max-width:520px;width:100%;max-height:92vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 64px rgba(15,30,53,.4);animation:bfSlideUp .2s ease-out}
@keyframes bfFadeIn{from{opacity:0}to{opacity:1}}
@keyframes bfSlideUp{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
.bf-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 14px;border-bottom:1px solid var(--cream2)}
.bf-x{background:none;border:none;font-size:24px;color:var(--muted);cursor:pointer;line-height:1;padding:2px 8px;border-radius:6px;flex-shrink:0}
.bf-x:hover{background:var(--cream);color:var(--navy)}
.bf-body{padding:16px 20px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}
.bf-field{display:flex;flex-direction:column;gap:6px}
.bf-label{font-size:12px;font-weight:600;color:var(--navy);text-transform:uppercase;letter-spacing:.04em}
.bf-tipos{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.bf-tipo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px 4px;background:#fff;border:1.5px solid var(--cream2);border-radius:9px;cursor:pointer;font-size:11px;font-weight:600;color:var(--muted);font-family:DM Sans,sans-serif;transition:all .15s}
.bf-tipo-ico{font-size:18px;line-height:1}
.bf-tipo:hover{border-color:var(--navy);color:var(--navy)}
.bf-tipo.active{border-color:var(--gold);background:rgba(201,168,76,.08);color:var(--navy)}
.bf-field input[type=text],.bf-field textarea{width:100%;border:1px solid var(--cream2);border-radius:8px;padding:9px 11px;font-size:13px;font-family:DM Sans,sans-serif;color:var(--text);background:#fff;outline:none;resize:vertical;line-height:1.5}
.bf-field input[type=text]:focus,.bf-field textarea:focus{border-color:var(--gold)}
.bf-counter{font-size:10px;color:var(--muted);text-align:right;margin-top:-2px}
.bf-contexto{font-size:10px;color:var(--muted);background:var(--cream);padding:8px 10px;border-radius:7px;line-height:1.5}
.bf-contexto-lbl{font-weight:600;color:var(--navy)}
.bf-footer{display:flex;gap:8px;padding:14px 20px;border-top:1px solid var(--cream2);justify-content:flex-end;background:#fafafa}
.bf-footer .btn-main:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:767px){
  .bf-float-btn{bottom:calc(var(--mobile-nav-h) + var(--safe-bottom) + 78px);right:14px;width:42px;height:42px}
  .bf-float-btn svg{width:20px;height:20px}
  .bf-tipos{grid-template-columns:repeat(2,1fr)}
}
.ia-float-badge{
  position:absolute;top:-3px;right:-3px;
  background:#e74c3c;color:#fff;
  font-size:9px;font-weight:700;
  min-width:16px;height:16px;border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  padding:0 3px;border:2px solid #fff;
}

/* Janela do chat */
.ia-chat-window{
  position:fixed;
  bottom:calc(138px + env(safe-area-inset-bottom));right:18px;
  width:360px;height:560px;
  background:#f0ede8;
  border-radius:16px;
  box-shadow:0 8px 40px rgba(0,0,0,.22);
  z-index:451;display:flex;flex-direction:column;overflow:hidden;
  transform:scale(.85) translateY(20px);opacity:0;pointer-events:none;
  transition:transform .25s ease,opacity .25s ease;
}
.ia-chat-window.open{
  transform:scale(1) translateY(0);opacity:1;pointer-events:all;
}

/* Header estilo Dr. Contratus */
.ia-cw-header{
  background:var(--navy);padding:11px 14px;
  display:flex;align-items:center;gap:10px;flex-shrink:0;
  border-bottom:1px solid rgba(201,168,76,.2);
}
.ia-cw-avatar{
  width:36px;height:36px;border-radius:50%;
  background:linear-gradient(135deg,var(--gold),var(--gold2));
  display:flex;align-items:center;justify-content:center;
  font-size:18px;flex-shrink:0;
}
.ia-cw-info{flex:1}
.ia-cw-name{font-size:14px;font-weight:600;color:#fff;font-family:'Playfair Display',serif}
.ia-cw-status{font-size:10px;color:rgba(255,255,255,.5);margin-top:1px;display:flex;align-items:center;gap:4px}
.ia-cw-status::before{content:'';width:6px;height:6px;border-radius:50%;background:#4ade80;display:inline-block;animation:pulse-green 2s ease infinite}
@keyframes pulse-green{0%,100%{opacity:1}50%{opacity:.4}}
.ia-cw-close{background:none;border:none;color:rgba(255,255,255,.5);font-size:18px;cursor:pointer;padding:4px;line-height:1}
.ia-cw-close:hover{color:#fff}

/* Sugestões rápidas */
.ia-cw-sugs{
  display:flex;gap:5px;padding:8px 10px 4px;
  overflow-x:auto;flex-shrink:0;
  background:var(--navy2);
  scrollbar-width:none;border-bottom:1px solid rgba(201,168,76,.15);
}
.ia-cw-sugs::-webkit-scrollbar{display:none}
.ia-cw-sug{
  display:inline-flex;align-items:center;gap:4px;
  font-size:11px;padding:5px 10px;
  background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.25);
  border-radius:12px;cursor:pointer;white-space:nowrap;
  color:var(--gold);font-family:DM Sans,sans-serif;font-weight:500;
  flex-shrink:0;transition:all .15s;
  -webkit-tap-highlight-color:transparent;
}
.ia-cw-sug:hover{background:rgba(201,168,76,.25);border-color:var(--gold)}

/* Mensagens */
.ia-cw-msgs{
  flex:1;overflow-y:auto;padding:10px 10px 4px;
  display:flex;flex-direction:column;gap:4px;min-height:0;
  background:#f0ede8;
}
.ia-cw-msgs::-webkit-scrollbar{width:3px}
.ia-cw-msgs::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);border-radius:2px}
.ia-cw-msg{
  max-width:86%;padding:9px 12px 6px;border-radius:8px;
  font-size:13px;line-height:1.55;position:relative;word-break:break-word;
}
.ia-cw-msg.bot{
  background:#fff;align-self:flex-start;
  border-radius:2px 8px 8px 8px;
  box-shadow:0 1px 2px rgba(0,0,0,.1);color:var(--text);
}
.ia-cw-msg.user{
  background:var(--navy);color:#fff;align-self:flex-end;
  border-radius:8px 2px 8px 8px;
  box-shadow:0 1px 2px rgba(0,0,0,.12);
}
.ia-cw-msg.typing{background:#fff;align-self:flex-start;border-radius:2px 8px 8px 8px;padding:10px 14px}
.ia-cw-msg-time{font-size:9px;color:rgba(0,0,0,.3);display:block;text-align:right;margin-top:3px}
.ia-cw-msg.user .ia-cw-msg-time{color:rgba(255,255,255,.4)}

/* Bloco de documento gerado */
.ia-cw-doc{
  background:rgba(201,168,76,.06);border-radius:8px;padding:10px 12px;
  margin-top:6px;border-left:3px solid var(--gold);
}
.ia-cw-doc-ttl{font-size:12px;font-weight:600;color:var(--navy);margin-bottom:4px}
.ia-cw-doc-preview{font-size:11px;color:var(--muted);line-height:1.5;
  max-height:80px;overflow:hidden;display:-webkit-box;
  -webkit-line-clamp:4;-webkit-box-orient:vertical;}
.ia-cw-doc-btns{display:flex;gap:6px;margin-top:8px}
.ia-cw-doc-btn{
  flex:1;padding:6px;border-radius:6px;font-size:11px;font-weight:500;
  font-family:DM Sans,sans-serif;cursor:pointer;border:none;text-align:center;
}
.ia-cw-doc-btn.copy{background:rgba(15,30,53,.1);color:var(--navy)}
.ia-cw-doc-btn.save{background:rgba(201,168,76,.15);color:#7a5900}
.ia-cw-doc-btn.docx{background:var(--navy);color:#fff}

/* Gravação de voz */
.ia-cw-recording{
  display:flex;align-items:center;gap:8px;
  background:rgba(231,76,60,.08);border-top:1px solid rgba(231,76,60,.2);
  padding:8px 14px;font-size:12px;color:#c0392b;flex-shrink:0;
}
.ia-cw-rec-dot{
  width:10px;height:10px;border-radius:50%;background:#e74c3c;
  animation:rec-pulse .8s ease-in-out infinite;flex-shrink:0;
}
@keyframes rec-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}

/* Preview de intenção (tarefa/prazo detectado) */
.ia-cw-intent-preview{
  display:flex;align-items:center;gap:8px;
  background:rgba(26,122,60,.08);border-top:1px solid rgba(26,122,60,.2);
  padding:10px 14px;flex-shrink:0;
}
.ia-cw-intent-icon{font-size:20px;flex-shrink:0}
.ia-cw-intent-body{flex:1;min-width:0}
.ia-cw-intent-titulo{font-size:12px;font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ia-cw-intent-meta{font-size:10px;color:var(--muted);margin-top:2px}
.ia-cw-intent-btns{display:flex;gap:4px;flex-shrink:0}
.ia-cw-intent-ok{
  padding:5px 10px;background:var(--green);color:#fff;
  border:none;border-radius:6px;font-size:11px;font-weight:600;
  cursor:pointer;font-family:DM Sans,sans-serif;white-space:nowrap;
}
.ia-cw-intent-no{
  padding:5px 8px;background:rgba(0,0,0,.06);color:var(--muted);
  border:none;border-radius:6px;font-size:11px;cursor:pointer;
}

/* Typing indicator */
.typing-dots{display:flex;gap:4px;align-items:center;height:16px}
.typing-dots span{
  width:7px;height:7px;border-radius:50%;background:var(--muted);
  animation:td .9s infinite;
}
.typing-dots span:nth-child(2){animation-delay:.2s}
.typing-dots span:nth-child(3){animation-delay:.4s}
@keyframes td{0%,80%,100%{transform:scale(1);opacity:.5}40%{transform:scale(1.3);opacity:1}}

/* Input area */
.ia-cw-input-area{
  background:#e8e4de;padding:8px 10px;
  display:flex;align-items:flex-end;gap:7px;flex-shrink:0;
  border-top:1px solid rgba(0,0,0,.08);
}
.ia-cw-btn-mic{
  width:36px;height:36px;border-radius:50%;
  border:1.5px solid rgba(201,168,76,.4);
  background:rgba(201,168,76,.1);
  cursor:pointer;display:flex;align-items:center;justify-content:center;
  color:var(--gold);flex-shrink:0;transition:all .15s;
}
.ia-cw-btn-mic:hover{background:rgba(201,168,76,.2);border-color:var(--gold)}
.ia-cw-btn-mic.gravando{
  background:#e74c3c;border-color:#e74c3c;color:#fff;
  animation:rec-pulse .8s ease-in-out infinite;
}
.ia-cw-input{
  flex:1;background:#fff;border:none;border-radius:18px;
  padding:9px 13px;font-size:13px;font-family:DM Sans,sans-serif;
  resize:none;max-height:100px;min-height:36px;line-height:1.45;
  outline:none;box-shadow:0 1px 2px rgba(0,0,0,.08);
}
.ia-cw-send{
  width:36px;height:36px;border-radius:50%;
  background:var(--navy);border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;transition:all .15s;
}
.ia-cw-send:hover{background:var(--navy2)}
.ia-cw-send svg{fill:var(--gold)}

/* Mobile */
@media(max-width:767px){
  .ia-chat-window{width:calc(100vw - 20px);right:10px;height:500px;bottom:calc(var(--mobile-nav-h) + var(--safe-bottom) + 80px)}
  .ia-float-btn{bottom:calc(var(--mobile-nav-h) + var(--safe-bottom) + 16px);right:14px}
}

/* ── PUBLICAÇÕES DATAJUD — REDESIGN ── */
/* ── PRAZOS MANUAIS (módulo 46) ── */
.pm-disclaimer{display:flex;align-items:flex-start;gap:8px;font-size:10.5px;color:rgba(255,255,255,.55);line-height:1.5;padding:8px 13px;background:rgba(201,168,76,.08);border-bottom:1px solid rgba(201,168,76,.12);flex-shrink:0}
.pm-disclaimer i{width:13px;height:13px;stroke:var(--gold);stroke-width:2;fill:none;flex-shrink:0;margin-top:1px}
.pm-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 14px;text-align:center;gap:6px}
.pm-empty-ico{font-size:24px;opacity:.25;margin-bottom:2px}
.pm-empty-ttl{font-size:12px;font-weight:600;color:rgba(255,255,255,.5)}
.pm-empty-sub{font-size:10px;color:rgba(255,255,255,.25);line-height:1.55;max-width:230px}
.pm-empty-btn{margin-top:8px;padding:6px 14px;background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.25);border-radius:6px;color:var(--gold);font-size:10px;font-weight:600;font-family:DM Sans,sans-serif;cursor:pointer;transition:all .15s}
.pm-empty-btn:hover{background:rgba(201,168,76,.22)}
/* Cards de publicação */
.pm-card{padding:9px 13px;border-bottom:1px solid rgba(255,255,255,.05);cursor:pointer;transition:background .15s}
.pm-card:hover{background:rgba(255,255,255,.04)}
.pm-card:last-child{border-bottom:none}
.pm-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:4px}
.pm-card-head{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.pm-card-titulo{font-size:11px;font-weight:500;color:rgba(255,255,255,.8);line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px}
.pm-card-proc{font-size:9px;color:rgba(255,255,255,.3);margin-bottom:3px;font-family:'DM Mono',monospace}
.pm-card-meta{display:flex;gap:10px;font-size:9.5px;color:rgba(255,255,255,.3);flex-wrap:wrap}
.pm-badge-nova{display:inline-block;font-size:8px;font-weight:700;letter-spacing:.05em;padding:1px 5px;border-radius:3px;background:rgba(201,168,76,.25);color:var(--gold);text-transform:uppercase;margin-top:4px}
/* Tribunal badge */
.pm-tribunal{font-size:8.5px;font-weight:700;letter-spacing:.06em;padding:1px 6px;border-radius:3px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.5);text-transform:uppercase}
/* Prazo badge */
.pm-prazo{font-size:9px;font-weight:700;padding:2px 7px;border-radius:4px;flex-shrink:0;white-space:nowrap}
.pm-prazo-ok{background:rgba(25,135,84,.2);color:#5ecc8e}
.pm-prazo-alerta{background:rgba(255,140,0,.2);color:#ffb347}
.pm-prazo-critico{background:rgba(220,53,69,.25);color:#ff8080}
.pm-prazo-hoje{background:rgba(220,53,69,.35);color:#ff4444;animation:pmPulse 1.2s ease-in-out infinite}
.pm-prazo-vencido{background:rgba(100,0,0,.35);color:#ff6060;text-decoration:line-through}
@keyframes pmPulse{0%,100%{opacity:1}50%{opacity:.6}}
/* Tipo badge */
.pm-tipo-badge{font-size:8px;font-weight:700;letter-spacing:.06em;padding:1px 6px;border-radius:3px;text-transform:uppercase}
.pm-tipo-intimacao{background:rgba(13,110,253,.2);color:#7eb8ff}
.pm-tipo-despacho{background:rgba(108,117,125,.2);color:#ccc}
.pm-tipo-sentenca{background:rgba(220,53,69,.2);color:#ff8888}
.pm-tipo-decisao{background:rgba(255,140,0,.2);color:#ffb347}
.pm-tipo-acordao{background:rgba(111,66,193,.2);color:#cc99ff}
.pm-tipo-audiencia{background:rgba(25,135,84,.2);color:#5ecc8e}
.pm-tipo-publicacao{background:rgba(201,168,76,.15);color:var(--gold)}
.pm-tipo-outro{background:rgba(255,255,255,.08);color:rgba(255,255,255,.5)}
/* Urgência do card */
.pm-card-vencido{border-left:3px solid #dc3545}
.pm-card-critico{border-left:3px solid #ff8080}
.pm-card-alerta{border-left:3px solid #e67e00}
.pm-card-ok{border-left:3px solid #198754}

.pub-painel{background:var(--navy);display:flex;flex-direction:column;overflow:hidden;flex:1;min-height:0}

/* Header */
.pub-header-new{display:flex;align-items:center;justify-content:space-between;padding:10px 14px 8px;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.06)}
.pub-header-left{display:flex;align-items:center;gap:10px}
.pub-header-icon{width:28px;height:28px;border-radius:6px;background:rgba(201,168,76,.15);border:1px solid rgba(201,168,76,.25);display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--gold);flex-shrink:0}
.pub-header-ttl-new{font-size:12px;font-weight:600;color:#fff;line-height:1.2}
.pub-header-sub{font-size:9.5px;color:rgba(255,255,255,.3);margin-top:1px;font-weight:400}
.pub-sync-btn-new{display:flex;align-items:center;gap:5px;padding:5px 11px;background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.25);border-radius:6px;color:var(--gold);font-size:10px;font-weight:600;font-family:DM Sans,sans-serif;cursor:pointer;transition:all .15s;letter-spacing:.04em}
.pub-sync-btn-new:hover{background:rgba(201,168,76,.22);border-color:rgba(201,168,76,.5)}
.pub-sync-btn-new.syncing{opacity:.6;pointer-events:none}

/* Lista */
.pub-lista{overflow-y:auto;flex:1;min-height:0}

/* Estado vazio */
.pub-empty-new{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px 14px;text-align:center;gap:5px;min-height:80px}
.pub-empty-icon{font-size:20px;opacity:.2;margin-bottom:2px}
.pub-empty-ttl{font-size:12px;font-weight:600;color:rgba(255,255,255,.5);line-height:1.3}
.pub-empty-sub{font-size:10px;color:rgba(255,255,255,.2);line-height:1.55;max-width:220px}
.pub-empty-btn{margin-top:8px;padding:5px 14px;background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.25);border-radius:6px;color:var(--gold);font-size:10px;font-weight:600;font-family:DM Sans,sans-serif;cursor:pointer;transition:all .15s}
.pub-empty-btn:hover{background:rgba(201,168,76,.22)}

/* Items de publicação */
.pub-item{display:flex;align-items:flex-start;gap:8px;padding:9px 13px;border-bottom:1px solid rgba(255,255,255,.05);cursor:pointer;transition:background .15s}
.pub-item:hover{background:rgba(255,255,255,.04)}
.pub-item:last-child{border-bottom:none}
.pub-item-barra{width:3px;border-radius:2px;align-self:stretch;flex-shrink:0;margin-top:2px}
.pub-item-body{flex:1;min-width:0}
.pub-item-tipo{display:inline-block;font-size:8.5px;font-weight:700;letter-spacing:.06em;padding:1px 6px;border-radius:3px;margin-bottom:3px;text-transform:uppercase}
.pub-item-titulo{font-size:11px;font-weight:500;color:rgba(255,255,255,.8);line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pub-item-proc{font-size:9.5px;color:rgba(255,255,255,.3);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pub-item-data{font-size:9px;color:rgba(255,255,255,.25);flex-shrink:0;text-align:right;margin-top:2px}
.pub-item.nova .pub-item-titulo{color:#fff}

/* Tipo badges */
.pit-mov{background:rgba(56,189,248,.15);color:#38bdf8}
.pit-dio{background:rgba(26,122,60,.2);color:#4ade80}
.pit-dec{background:rgba(139,92,246,.2);color:#a78bfa}
.pit-sen{background:rgba(239,68,68,.2);color:#f87171}


/* ════════════════════════════════════════════════
   FERRAMENTAS — Cronômetro, Calculadora, Audiência,
   Cascata, Relatório
   ════════════════════════════════════════════════ */
#screen-ferramentas.active{display:block!important;height:100%;overflow:hidden}
#screen-ferramentas .tools-layout{display:grid;grid-template-columns:280px 1fr;height:100%;overflow:hidden;align-items:stretch}
.ferr-layout{display:grid;grid-template-columns:220px 1fr;height:100%;overflow:hidden}

/* Sidebar de ferramentas */
.ferr-sidebar{background:var(--navy);display:flex;flex-direction:column;overflow:hidden;border-right:1px solid rgba(255,255,255,.08)}
.ferr-sidebar-ttl{padding:18px 16px 10px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.25);flex-shrink:0}
.ferr-menu{flex:1;overflow-y:auto;padding:0 8px 16px}
.ferr-item{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:9px;cursor:pointer;transition:all .15s;margin-bottom:2px}
.ferr-item:hover{background:rgba(255,255,255,.06)}
.ferr-item.active{background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.2)}
.ferr-item-icon{width:32px;height:32px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.ferr-item-body{}
.ferr-item-name{font-size:12px;font-weight:500;color:rgba(255,255,255,.75)}
.ferr-item.active .ferr-item-name{color:var(--gold)}
.ferr-item-sub{font-size:9.5px;color:rgba(255,255,255,.25);margin-top:1px}

/* Painel principal */
.ferr-main{background:var(--cream);overflow-y:auto;height:100%}
.ferr-panel{display:none;padding:32px 36px}
.ferr-panel.active{display:block}
.ferr-panel-ttl{font-family:'Playfair Display',serif;font-size:24px;font-weight:700;color:var(--navy);margin-bottom:6px}
.ferr-panel-sub{font-size:13px;color:var(--muted);margin-bottom:28px;line-height:1.6}
.ferr-divider{height:1px;background:var(--cream2);margin:24px 0}

@keyframes crono-pulse{0%,100%{opacity:1}50%{opacity:.7}}
.crono-proc{font-size:13px;color:rgba(255,255,255,.4);margin-top:10px}

/* ─ CALCULADORA MONETÁRIA ─ */
.calc-mon-form{background:#fff;border:1px solid var(--cream2);border-radius:12px;padding:20px;margin-bottom:20px}
.calc-mon-result{background:var(--navy);border-radius:12px;padding:24px;margin-bottom:20px;display:none}
.calc-mon-result.visible{display:block}
.calc-mon-result-val{font-family:'Playfair Display',serif;font-size:48px;font-weight:700;color:var(--gold);text-align:center;margin-bottom:6px}
.calc-mon-result-label{font-size:12px;color:rgba(255,255,255,.4);text-align:center;margin-bottom:16px}
.calc-mon-table{width:100%;border-collapse:collapse}
.calc-mon-table th{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:rgba(255,255,255,.3);padding:6px 10px;text-align:left;border-bottom:1px solid rgba(255,255,255,.08)}
.calc-mon-table td{font-size:11px;color:rgba(255,255,255,.6);padding:6px 10px;border-bottom:1px solid rgba(255,255,255,.06)}
.calc-mon-table tr:last-child td{border-bottom:none;color:var(--gold);font-weight:600}

/* ─ PREPARO PARA AUDIÊNCIA ─ */
.prep-form{background:#fff;border:1px solid var(--cream2);border-radius:12px;padding:20px;margin-bottom:20px}
.prep-result{display:none}
.prep-result.visible{display:block}
.prep-section{background:#fff;border:1px solid var(--cream2);border-radius:10px;margin-bottom:12px;overflow:hidden}
.prep-section-header{padding:12px 16px;background:var(--navy);display:flex;align-items:center;gap:10px}
.prep-section-icon{font-size:16px}
.prep-section-ttl{font-size:13px;font-weight:600;color:#fff}
.prep-section-body{padding:14px 16px;font-size:13px;color:var(--text);line-height:1.75;white-space:pre-wrap}
.prep-loading{text-align:center;padding:32px;color:var(--muted);font-size:13px}

/* ─ PRAZOS EM CASCATA ─ */
.cascata-form{background:#fff;border:1px solid var(--cream2);border-radius:12px;padding:20px;margin-bottom:20px}
.cascata-item{display:flex;align-items:flex-start;gap:14px;padding:12px 16px;background:#fff;border:1px solid var(--cream2);border-radius:9px;margin-bottom:8px}
.cascata-item-num{width:26px;height:26px;border-radius:50%;background:var(--navy);color:var(--gold);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cascata-item-body{flex:1}
.cascata-item-titulo{font-size:13px;font-weight:500;color:var(--navy);margin-bottom:2px}
.cascata-item-data{font-size:12px;color:var(--muted)}
.cascata-item-base{font-size:11px;color:var(--muted);margin-top:2px}
.cascata-item-urgencia{font-size:10px;font-weight:600;padding:2px 8px;border-radius:999px}
.cu-critico{background:#fcebeb;color:#c0392b}
.cu-alerta{background:#fff3e0;color:#c9a84c}
.cu-ok{background:#e8f5e9;color:#1a7a3c}
.cascata-add-btn{padding:8px;width:100%;background:rgba(15,30,53,.06);border:1.5px dashed var(--cream2);border-radius:8px;font-size:12px;font-weight:500;color:var(--muted);font-family:DM Sans,sans-serif;cursor:pointer;margin-top:4px;transition:all .15s}
.cascata-add-btn:hover{border-color:var(--gold);color:var(--navy);background:rgba(201,168,76,.05)}

/* ─ RELATÓRIO MENSAL ─ */
.relat-controls{background:#fff;border:1px solid var(--cream2);border-radius:12px;padding:20px;margin-bottom:20px}
.relat-preview{display:none}
.relat-preview.visible{display:block}
.relat-doc{background:#fff;border:1px solid var(--cream2);border-radius:12px;overflow:hidden;box-shadow:0 4px 16px rgba(15,30,53,.08)}
.relat-doc-header{background:var(--navy);padding:24px 28px}
.relat-doc-logo{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;color:var(--gold);margin-bottom:4px}
.relat-doc-sub{font-size:12px;color:rgba(255,255,255,.4)}
.relat-doc-body{padding:24px 28px}
.relat-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.relat-stat{background:var(--cream);border-radius:8px;padding:14px;text-align:center}
.relat-stat-n{font-family:'Playfair Display',serif;font-size:28px;font-weight:700;line-height:1}
.relat-stat-n.g{color:var(--green)}.relat-stat-n.a{color:var(--gold)}.relat-stat-n.n{color:var(--navy)}
.relat-stat-l{font-size:10px;color:var(--muted);margin-top:3px}
.relat-section-ttl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:10px;margin-top:16px;padding-bottom:6px;border-bottom:1px solid var(--cream2)}
.relat-row{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--cream2);font-size:12px}
.relat-row:last-child{border-bottom:none}
.relat-row-label{color:var(--muted)}.relat-row-val{font-weight:500;color:var(--navy)}


/* ════════════════════════════════════════════════
   FERRAMENTAS — 5 FUNCIONALIDADES IMEDIATAS
   ════════════════════════════════════════════════ */

/* ── CRONÔMETRO (drawer do processo) ── */
.cron-box{background:var(--navy);border-radius:12px;padding:16px;text-align:center;margin-bottom:14px}
.cron-display{font-family:'Cormorant Garamond',serif;font-size:52px;font-weight:600;color:var(--gold);line-height:1;letter-spacing:.04em;margin-bottom:12px}
.cron-btns{display:flex;gap:8px;justify-content:center;margin-bottom:12px}
.cron-btn{padding:8px 18px;border-radius:8px;font-size:12px;font-weight:600;font-family:DM Sans,sans-serif;cursor:pointer;border:none;transition:all .15s}
.cron-btn.start{background:var(--green);color:#fff}
.cron-btn.pause{background:rgba(201,168,76,.2);color:var(--gold);border:1px solid rgba(201,168,76,.3)}
.cron-btn.stop{background:rgba(154,27,27,.2);color:#f87171;border:1px solid rgba(154,27,27,.3)}
.cron-total{font-size:11px;color:rgba(255,255,255,.4);margin-top:4px}
.cron-sessions{margin-top:10px}
.cron-session-ttl{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.25);margin-bottom:6px}
.cron-session-item{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:11px}
.cron-session-data{color:rgba(255,255,255,.4)}
.cron-session-dur{color:var(--gold);font-weight:600}

/* ── FERRAMENTAS (aba nova na nav) ── */
.tools-layout{display:grid;grid-template-columns:280px 1fr;height:100%;overflow:hidden}
.tools-sidebar{background:var(--navy);border-right:1px solid rgba(201,168,76,.15);overflow-y:auto;padding:20px 14px}
.tools-sidebar-ttl{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:var(--gold);margin-bottom:4px;padding:0 4px}
.tools-sidebar-sub{font-size:11px;color:rgba(255,255,255,.3);margin-bottom:16px;padding:0 4px;line-height:1.5}
.tools-menu-item{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:8px;cursor:pointer;margin-bottom:3px;transition:background .15s;-webkit-tap-highlight-color:transparent}
.tools-menu-item:hover{background:rgba(255,255,255,.06)}
.tools-menu-item.active{background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.2)}
.tools-menu-icon{width:32px;height:32px;border-radius:7px;background:rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}
.tools-menu-item.active .tools-menu-icon{background:rgba(201,168,76,.15)}
.tools-menu-label{font-size:13px;font-weight:500;color:rgba(255,255,255,.6)}
.tools-menu-item.active .tools-menu-label{color:#fff}
.tools-menu-desc{font-size:10px;color:rgba(255,255,255,.25);margin-top:1px}
.tools-main{background:var(--cream);height:100%;min-height:0;overflow:hidden}
.tools-panel{display:none;height:100%}
.tools-panel.active{display:flex;flex-direction:column;height:100%;min-height:0;overflow-y:auto;overflow-x:hidden}
.tools-panel-ttl{font-family:'Playfair Display',serif;font-size:26px;font-weight:700;color:var(--navy);margin-bottom:4px}
.tools-panel-sub{font-size:13px;color:var(--muted);margin-bottom:24px;line-height:1.6}

/* ── CALCULADORA MONETÁRIA ── */
.calc-mon-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}
.calc-mon-field{display:flex;flex-direction:column;gap:5px}
.calc-mon-label{font-size:11px;font-weight:600;color:var(--navy);text-transform:uppercase;letter-spacing:.06em}
.calc-mon-input{padding:10px 13px;border:1.5px solid var(--cream2);border-radius:8px;font-size:14px;font-family:DM Sans,sans-serif;background:#fff;color:var(--navy);outline:none;transition:border .15s}
.calc-mon-input:focus{border-color:var(--gold)}
.calc-mon-result{background:var(--navy);border-radius:12px;padding:20px 24px;margin-bottom:16px}
.calc-mon-result-label{font-size:10px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:6px}
.calc-mon-result-val{font-family:'Cormorant Garamond',serif;font-size:48px;font-weight:600;color:var(--gold);line-height:1}
.calc-mon-result-idx{font-size:12px;color:rgba(255,255,255,.3);margin-top:4px}
.calc-mon-memoria{background:#fff;border-radius:10px;border:1px solid var(--cream2);overflow:hidden;margin-top:12px}
.calc-mon-mem-header{background:var(--cream);padding:10px 14px;font-size:11px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--cream2)}
.calc-mon-mem-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;padding:8px 14px;border-bottom:1px solid var(--cream2);font-size:11px}
.calc-mon-mem-row:last-child{border-bottom:none}
.calc-mon-mem-row span:last-child{font-weight:600;color:var(--green)}
.indice-btns{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.indice-btn{padding:6px 14px;border-radius:6px;border:1.5px solid var(--cream2);background:#fff;font-size:11px;font-weight:600;font-family:DM Sans,sans-serif;cursor:pointer;color:var(--muted);transition:all .15s}
.indice-btn.active{border-color:var(--gold);background:rgba(201,168,76,.08);color:var(--navy)}

/* ── PREPARO PARA AUDIÊNCIA ── */
.aud-form{background:#fff;border-radius:12px;border:1px solid var(--cream2);padding:20px;margin-bottom:16px}
.aud-form-ttl{font-size:14px;font-weight:600;color:var(--navy);margin-bottom:12px;display:flex;align-items:center;gap:8px}
.aud-result{background:var(--navy);border-radius:12px;padding:0;overflow:hidden;margin-top:16px;display:none}
.aud-result.show{display:block}
.aud-result-header{background:rgba(201,168,76,.15);padding:14px 18px;border-bottom:1px solid rgba(201,168,76,.2);display:flex;align-items:center;justify-content:space-between}
.aud-result-ttl{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:var(--gold)}
.aud-result-body{padding:18px;color:rgba(255,255,255,.85);font-size:13px;line-height:1.7;max-height:480px;overflow-y:auto}
.aud-result-body h4{color:var(--gold);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin:14px 0 6px}
.aud-result-body h4:first-child{margin-top:0}
.aud-result-body ul{padding-left:18px;margin:6px 0}
.aud-result-body li{margin-bottom:6px}
.aud-result-body p{margin-bottom:10px}
.aud-result-body strong{color:var(--gold);font-weight:600}
.aud-result-btns{display:flex;gap:8px;padding:12px 18px;border-top:1px solid rgba(255,255,255,.08)}

/* ── TABS DO BRIEFING ── */
.aud-tabs{display:flex;gap:0;background:rgba(0,0,0,.18);border-bottom:1px solid rgba(255,255,255,.06);overflow-x:auto;scrollbar-width:none}
.aud-tabs::-webkit-scrollbar{display:none}
.aud-tab{flex:0 0 auto;padding:10px 14px;background:transparent;border:none;border-bottom:2px solid transparent;color:rgba(255,255,255,.55);font-size:12px;font-weight:600;font-family:'DM Sans',sans-serif;cursor:pointer;white-space:nowrap;transition:all .15s}
.aud-tab:hover{color:rgba(255,255,255,.85);background:rgba(255,255,255,.03)}
.aud-tab.active{color:var(--gold);border-bottom-color:var(--gold);background:rgba(201,168,76,.06)}

/* ── HISTÓRICO DE BRIEFINGS ── */
.aud-historico{margin-top:14px;background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:14px;max-height:280px;overflow-y:auto}
.aud-historico-ttl{font-family:'Playfair Display',serif;font-size:13px;font-weight:700;color:var(--navy);margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--cream2)}
.aud-historico-lista{display:flex;flex-direction:column;gap:6px}
.aud-hist-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--cream2);border-radius:8px;background:#fafaf8;transition:all .15s}
.aud-hist-item:hover{border-color:var(--gold);background:#fff}
.aud-hist-info{flex:1;cursor:pointer;min-width:0}
.aud-hist-titulo{font-size:12px;font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aud-hist-sub{font-size:10px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aud-hist-del{background:transparent;border:1px solid var(--cream2);color:var(--muted);width:24px;height:24px;border-radius:6px;font-size:11px;cursor:pointer;flex:0 0 auto;display:flex;align-items:center;justify-content:center}
.aud-hist-del:hover{border-color:#c0392b;color:#c0392b;background:#fff0f0}
.aud-hist-vazio{font-size:12px;color:var(--muted);font-style:italic;text-align:center;padding:12px}

/* ── PRAZOS EM CASCATA ── */
.cascata-form{background:#fff;border-radius:12px;border:1px solid var(--cream2);padding:20px;margin-bottom:16px}
.cascata-result{display:none;flex-direction:column;gap:8px;margin-top:12px}
.cascata-result.show{display:flex}
.cascata-prazo-item{background:var(--cream);border-radius:8px;padding:11px 14px;display:flex;align-items:center;justify-content:space-between;border-left:3px solid var(--gold)}
.cascata-prazo-item.critico{border-left-color:#ef4444}
.cascata-prazo-nome{font-size:12px;font-weight:600;color:var(--navy)}
.cascata-prazo-data{font-size:11px;color:var(--muted);margin-top:2px}
.cascata-prazo-check{width:18px;height:18px;border-radius:4px;border:1.5px solid var(--cream2);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cascata-prazo-check.checked{background:var(--green);border-color:var(--green);color:#fff;font-size:10px}
.cascata-add-all-btn{margin-top:8px}

/* ── RELATÓRIO MENSAL ── */
.relatorio-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:20px}
.rel-card{background:#fff;border-radius:10px;border:1px solid var(--cream2);padding:16px;text-align:center}
.rel-card-val{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:600;color:var(--navy);line-height:1}
.rel-card-val.green{color:var(--green)}
.rel-card-val.gold{color:var(--gold)}
.rel-card-label{font-size:10px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:4px}
.rel-section{background:#fff;border-radius:10px;border:1px solid var(--cream2);margin-bottom:12px;overflow:hidden}
.rel-section-header{background:var(--cream);padding:10px 14px;font-size:11px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--cream2)}
.rel-section-body{padding:12px 14px}
.rel-item{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--cream2);font-size:12px}
.rel-item:last-child{border-bottom:none}
.rel-item-label{color:var(--muted)}
.rel-item-val{font-weight:600;color:var(--navy)}
.rel-item-val.ok{color:var(--green)}
.rel-item-val.warn{color:var(--gold)}
.rel-item-val.err{color:#ef4444}

/* ── FINANCEIRO: SUB-TABS E RELATÓRIO MENSAL ── */
.fin-subtabs{display:flex;gap:0;border-bottom:1px solid var(--cream2);margin-bottom:18px;padding:0 4px}
.fin-subtab{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:12px 18px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--muted);font-size:13px;font-weight:600;font-family:'DM Sans',sans-serif;cursor:pointer;transition:all .15s}
.fin-subtab:hover{color:var(--navy);background:rgba(15,30,53,.03)}
.fin-subtab.active{color:var(--navy);border-bottom-color:var(--gold);background:rgba(201,168,76,.06)}

.relfin-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}
.relfin-ttl{display:flex;align-items:center;gap:8px;font-family:'Playfair Display',Georgia,serif;font-size:20px;font-weight:700;color:var(--navy);margin-bottom:2px}
.relfin-sub{font-size:12px;color:var(--muted)}
.relfin-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.relfin-sel{width:180px;padding:9px 12px}

.relfin-cabecalho{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--cream2);flex-wrap:wrap}
.relfin-cab-mes{font-family:'Playfair Display',Georgia,serif;font-size:18px;font-weight:700;color:var(--navy)}
.relfin-cab-acoes{display:flex;gap:6px}
.relfin-act{padding:6px 12px;font-size:11px}

.relfin-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.relfin-kpi-grid-sec{grid-template-columns:repeat(4,1fr);margin-bottom:18px}
.relfin-kpi{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:14px}
.relfin-kpi-sec{padding:10px 12px}
.relfin-kpi-label{font-size:10px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}
.relfin-kpi-valor{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:600;color:var(--navy);line-height:1.1}
.relfin-kpi-sec .relfin-kpi-valor{font-size:18px}
.relfin-kpi-var{font-size:10px;font-weight:600;margin-top:6px;color:var(--muted)}
.relfin-kpi-up{color:var(--green)}
.relfin-kpi-down{color:#e74c3c}

.relfin-section{background:#fff;border:1px solid var(--cream2);border-radius:10px;margin-bottom:14px;overflow:hidden}
.relfin-section-ttl{background:var(--cream);padding:10px 14px;font-size:11px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--cream2)}
.relfin-tabela{padding:6px 14px}
.relfin-row{display:grid;grid-template-columns:30px 1fr auto auto;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--cream2);font-size:12px}
.relfin-row:last-child{border-bottom:none}
.relfin-rank{font-family:'Playfair Display',Georgia,serif;font-size:14px;font-weight:700;color:var(--gold);text-align:center}
.relfin-row-nome{font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.relfin-row-meta{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.relfin-row-valor{font-weight:700;color:var(--navy)}

.relfin-atividade{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:0}
.relfin-ativ-item{padding:18px 14px;text-align:center;border-right:1px solid var(--cream2)}
.relfin-ativ-item:last-child{border-right:none}
.relfin-ativ-n{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:600;color:var(--navy);line-height:1}
.relfin-ativ-l{font-size:10px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:4px}

.relfin-ia{padding:14px 16px;font-size:13px;line-height:1.7;color:var(--navy)}
.relfin-ia h3{font-family:'Playfair Display',Georgia,serif;font-size:14px;color:var(--gold);margin:12px 0 6px;font-weight:700}
.relfin-ia h3:first-child{margin-top:0}
.relfin-ia h4{font-size:12px;color:var(--gold);margin:10px 0 4px;text-transform:uppercase;letter-spacing:.05em}
.relfin-ia ul{padding-left:20px;margin:6px 0}
.relfin-ia li{margin-bottom:4px}
.relfin-ia p{margin:0 0 8px}
.relfin-ia strong{color:var(--gold)}
.relfin-loading{color:var(--muted);font-style:italic;padding:16px;text-align:center}
.relfin-erro{color:#c0392b;background:#fff0f0;border:1px solid #f5c6c6;padding:10px 14px;border-radius:8px;font-size:12px}

@media(max-width:900px){
  .relfin-kpi-grid{grid-template-columns:1fr 1fr}
  .relfin-kpi-grid-sec{grid-template-columns:1fr 1fr}
  .relfin-row{grid-template-columns:24px 1fr auto;gap:8px}
  .relfin-row-meta{display:none}
}
@media(max-width:560px){
  .relfin-kpi-grid,.relfin-kpi-grid-sec{grid-template-columns:1fr}
  .relfin-atividade{grid-template-columns:1fr}
  .relfin-ativ-item{border-right:none;border-bottom:1px solid var(--cream2)}
  .relfin-ativ-item:last-child{border-bottom:none}
}

/* ── BOTÕES GERAIS ── */
.btn-tool{padding:10px 20px;border-radius:8px;font-size:13px;font-weight:600;font-family:DM Sans,sans-serif;cursor:pointer;border:none;transition:all .15s;display:inline-flex;align-items:center;gap:6px}
.btn-tool.primary{background:var(--navy);color:var(--gold)}
.btn-tool.primary:hover{background:var(--navy2)}
.btn-tool.gold{background:var(--gold);color:var(--navy)}
.btn-tool.gold:hover{opacity:.9}
.btn-tool.outline{background:#fff;color:var(--navy);border:1.5px solid var(--cream2)}
.btn-tool.outline:hover{border-color:var(--gold)}
.btn-tool.loading{opacity:.6;pointer-events:none}

/* Spinner inline */
.spin{display:inline-block;animation:spin .7s linear infinite}
@keyframes spin{100%{transform:rotate(360deg)}}

/* Responsivo ferramentas */
@media(max-width:767px){
  .tools-layout{grid-template-columns:1fr!important;height:auto!important}
  .tools-sidebar{border-right:none;border-bottom:1px solid rgba(201,168,76,.15);padding:14px}
  .tools-main{padding:16px}
  .calc-mon-grid,.relatorio-grid{grid-template-columns:1fr!important}
}


/* ── NOTIFICAÇÕES — PAINEL NA ABA PROCESSOS ── */
.proc-notif-panel{
  background:var(--navy);
  border-bottom:1px solid rgba(255,255,255,.08);
  flex-shrink:0;
}
.proc-notif-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 14px 8px;
}
.proc-notif-left{display:flex;align-items:center;gap:8px;}
.proc-notif-icon{
  width:28px;height:28px;border-radius:6px;
  background:rgba(201,168,76,.15);border:1px solid rgba(201,168,76,.2);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;position:relative;flex-shrink:0;
}
.proc-notif-icon svg{width:14px;height:14px;stroke:var(--gold);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.proc-notif-badge{
  position:absolute;top:-5px;right:-5px;
  background:#e74c3c;color:#fff;
  font-size:8px;font-weight:700;
  min-width:14px;height:14px;border-radius:7px;
  display:none;align-items:center;justify-content:center;
  padding:0 2px;border:1.5px solid var(--navy);
}
.proc-notif-badge.vis{display:flex;}
.proc-notif-ttl{font-size:12px;font-weight:600;color:#fff;}
.proc-notif-sub{font-size:9.5px;color:rgba(255,255,255,.3);margin-top:1px;}
.proc-notif-clear{
  font-size:10px;color:rgba(255,255,255,.3);
  background:none;border:none;cursor:pointer;
  font-family:DM Sans,sans-serif;
  transition:color .15s;
}
.proc-notif-clear:hover{color:var(--gold);}

/* Lista de notificações */
.proc-notif-lista{
  max-height:0;overflow:hidden;
  transition:max-height .3s ease;
}
.proc-notif-lista.open{max-height:280px;overflow-y:auto;}
.proc-notif-item{
  display:flex;align-items:flex-start;gap:10px;
  padding:9px 14px;border-top:1px solid rgba(255,255,255,.05);
  cursor:pointer;transition:background .15s;
}
.proc-notif-item:hover{background:rgba(255,255,255,.04);}
.proc-notif-item.nao-lida{background:rgba(201,168,76,.04);}
.proc-notif-item-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--gold);flex-shrink:0;margin-top:4px;
}
.proc-notif-item-dot.lida{background:transparent;border:1px solid rgba(255,255,255,.15);}
.proc-notif-item-body{flex:1;min-width:0;}
.proc-notif-item-ttl{font-size:11px;font-weight:500;color:rgba(255,255,255,.8);line-height:1.35;margin-bottom:2px;}
.proc-notif-item.nao-lida .proc-notif-item-ttl{color:#fff;}
.proc-notif-item-sub{font-size:9.5px;color:rgba(255,255,255,.3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.proc-notif-item-hora{font-size:9px;color:rgba(255,255,255,.2);flex-shrink:0;}
.proc-notif-vazio{padding:16px;text-align:center;font-size:11px;color:rgba(255,255,255,.25);line-height:1.6;}

/* ── NAV DESKTOP COM ÍCONES SVG (igual mobile) ── */
.tools-nav{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;}
.tools-nav::-webkit-scrollbar{display:none;}
.tool-tab{
  display:flex;flex-direction:column;align-items:center;
  gap:4px;padding:8px 18px;
  font-size:10px;font-weight:500;
  color:rgba(255,255,255,.4);
  cursor:pointer;border-bottom:2px solid transparent;
  transition:all .18s;white-space:nowrap;user-select:none;
}
.tool-tab.active{color:var(--gold);border-bottom-color:var(--gold);}
.tool-tab:hover{color:rgba(255,255,255,.7);}
.tool-tab-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;line-height:1;}
.tool-tab-icon svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}


/* ── DRAG & DROP DAS ABAS ── */
.tool-tab{
  cursor:grab;
  transition:opacity .15s, transform .15s, background .15s;
  position:relative;
}
.tool-tab:active{ cursor:grabbing; }
.tool-tab.dragging{
  opacity:.4;
  transform:scale(.95);
}
.tool-tab.drag-over{
  background:rgba(201,168,76,.12);
  border-bottom-color:var(--gold)!important;
}
.tool-tab.drag-over::before{
  content:'';
  position:absolute;
  left:0; top:0; bottom:0;
  width:2px;
  background:var(--gold);
  border-radius:2px;
}

/* Hint de reorganização (aparece 1x) */
.drag-hint{
  position:fixed;
  bottom:80px;
  left:50%;
  transform:translateX(-50%);
  background:rgba(15,30,53,.95);
  border:1px solid rgba(201,168,76,.3);
  border-radius:10px;
  padding:10px 18px;
  font-size:12px;
  color:rgba(255,255,255,.7);
  z-index:500;
  display:flex;
  align-items:center;
  gap:8px;
  box-shadow:0 4px 16px rgba(0,0,0,.3);
  animation:hint-in .4s ease, hint-out .4s ease 3s forwards;
  pointer-events:none;
}
@keyframes hint-in{from{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}
@keyframes hint-out{to{opacity:0;transform:translateX(-50%) translateY(10px)}}

/* Mobile — itens do menu arrastáveis */
.mobile-menu-item{
  cursor:grab;
  transition:background .15s, transform .15s;
  position:relative;
}
.mobile-menu-item.dragging{ opacity:.4; }
.mobile-menu-item.drag-over{ background:rgba(201,168,76,.1); }
.mobile-menu-item .drag-handle{
  position:absolute;
  right:16px; top:50%;
  transform:translateY(-50%);
  color:rgba(255,255,255,.2);
  font-size:14px;
  pointer-events:none;
}


/* ── CRONÔMETRO DE ATENDIMENTO (Time Sheet) ── */
.atend-layout{display:grid;grid-template-columns:1fr 380px;height:100%;overflow:hidden;gap:0}
.atend-left{padding:28px;overflow-y:auto;display:flex;flex-direction:column;gap:20px}
.atend-right{border-left:1px solid var(--cream2);display:flex;flex-direction:column;background:#fff;overflow:hidden}

/* Timer principal */
.atend-timer-card{background:var(--navy);border-radius:16px;padding:28px 24px;text-align:center}
.atend-timer-label{font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:6px}
.atend-timer-display{font-family:'Playfair Display',serif;font-size:72px;font-weight:700;color:var(--gold);line-height:1;letter-spacing:.04em;margin-bottom:4px}
.atend-timer-display.running{animation:timer-pulse 1s ease-in-out infinite}
@keyframes timer-pulse{0%,100%{opacity:1}50%{opacity:.75}}
.atend-timer-cliente{font-size:13px;color:rgba(255,255,255,.4);margin-bottom:20px;min-height:20px}
.atend-timer-btns{display:flex;gap:10px;justify-content:center}
.atend-btn{padding:10px 22px;border-radius:8px;font-size:13px;font-weight:600;font-family:DM Sans,sans-serif;cursor:pointer;border:none;transition:all .15s;display:flex;align-items:center;gap:6px}
.atend-btn.start{background:var(--green);color:#fff}
.atend-btn.start:hover{background:#1d8f43}
.atend-btn.pause{background:var(--gold);color:var(--navy)}
.atend-btn.pause:hover{background:var(--gold2)}
.atend-btn.stop{background:rgba(154,27,27,.2);color:#f87171;border:1px solid rgba(154,27,27,.25)}
.atend-btn.stop:hover{background:rgba(154,27,27,.35)}
.atend-btn:disabled{opacity:.4;pointer-events:none}

/* Seleção */
.atend-select-card{background:#fff;border:1px solid var(--cream2);border-radius:12px;padding:18px}
.atend-select-ttl{font-size:12px;font-weight:600;color:var(--navy);margin-bottom:12px}
.atend-selects{display:grid;grid-template-columns:1fr 1fr;gap:10px}

/* Sessões */
.atend-sessions-card{background:#fff;border:1px solid var(--cream2);border-radius:12px;overflow:hidden;flex:1}
.atend-sessions-header{padding:14px 16px;background:var(--navy);display:flex;align-items:center;justify-content:space-between}
.atend-sessions-ttl{font-size:12px;font-weight:600;color:#fff}
.atend-sessions-total{font-size:12px;font-weight:700;color:var(--gold)}
.atend-session-item{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--cream2);transition:background .15s}
.atend-session-item:last-child{border-bottom:none}
.atend-session-item:hover{background:var(--cream)}
.atend-session-dot{width:8px;height:8px;border-radius:50%;background:var(--green);flex-shrink:0}
.atend-session-info{flex:1}
.atend-session-label{font-size:12px;font-weight:500;color:var(--navy)}
.atend-session-meta{font-size:10px;color:var(--muted);margin-top:1px}
.atend-session-dur{font-size:13px;font-weight:700;color:var(--navy);flex-shrink:0}
.atend-session-del{background:none;border:none;color:rgba(154,27,27,.4);cursor:pointer;font-size:14px;padding:2px 6px;border-radius:4px;transition:all .15s}
.atend-session-del:hover{background:#fcebeb;color:var(--red)}
.atend-empty-sessions{padding:28px;text-align:center;font-size:12px;color:var(--muted);line-height:1.7}

/* Integração (futuro) */
.atend-integr-card{background:linear-gradient(135deg,rgba(15,30,53,.04),rgba(201,168,76,.04));border:1px solid rgba(201,168,76,.2);border-radius:12px;padding:16px}
.atend-integr-ttl{font-size:11px;font-weight:600;color:var(--navy);margin-bottom:10px;display:flex;align-items:center;gap:6px}
.atend-integr-tag{font-size:8px;font-weight:600;padding:1px 7px;border-radius:999px;background:rgba(201,168,76,.15);color:var(--gold);letter-spacing:.06em}
.atend-integr-btns{display:flex;gap:8px;flex-wrap:wrap}
.atend-integr-btn{display:flex;align-items:center;gap:6px;padding:7px 12px;border-radius:7px;font-size:11px;font-weight:500;font-family:DM Sans,sans-serif;cursor:pointer;border:1px solid var(--cream2);background:#fff;color:var(--muted);transition:all .15s}
.atend-integr-btn:hover{border-color:var(--gold);color:var(--navy)}
.atend-integr-btn.em-breve{opacity:.5;cursor:not-allowed}
.atend-integr-btn.em-breve:hover{border-color:var(--cream2);color:var(--muted)}

/* Drawer de anotações */
.atend-notes-header{background:var(--navy);padding:14px 18px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.atend-notes-title{font-size:13px;font-weight:600;color:#fff;display:flex;align-items:center;gap:8px}
.atend-notes-live{width:7px;height:7px;border-radius:50%;background:var(--green);animation:live-pulse 1.5s ease infinite}
@keyframes live-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}
.atend-notes-live.off{background:rgba(255,255,255,.2);animation:none}
.atend-notes-actions{display:flex;gap:6px}
.atend-notes-btn{background:rgba(255,255,255,.1);border:none;color:rgba(255,255,255,.6);border-radius:6px;padding:5px 10px;font-size:10px;font-weight:600;cursor:pointer;font-family:DM Sans,sans-serif;transition:all .15s}
.atend-notes-btn:hover{background:rgba(255,255,255,.18);color:#fff}

/* Área de notas ao vivo */
.atend-notes-preview{flex:1;overflow-y:auto;padding:14px 16px;background:#f9f7f4;min-height:0}
.atend-note-entry{margin-bottom:10px;padding:10px 12px;background:#fff;border-radius:8px;border-left:3px solid var(--gold);box-shadow:0 1px 3px rgba(0,0,0,.06)}
.atend-note-time{font-size:9px;font-weight:600;color:var(--gold);letter-spacing:.06em;margin-bottom:3px}
.atend-note-text{font-size:12px;color:var(--text);line-height:1.6;white-space:pre-wrap;word-break:break-word}
.atend-notes-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:var(--muted);font-size:12px;gap:8px;opacity:.6}

/* Input de nota */
.atend-notes-input-area{padding:14px 16px;border-top:1px solid var(--cream2);flex-shrink:0;background:#fff}
.atend-notes-input-row{display:flex;gap:8px;align-items:flex-start}
.atend-notes-input{flex:1;border:1px solid var(--cream2);border-radius:8px;padding:10px 13px;font-size:13px;font-family:DM Sans,sans-serif;resize:none;min-height:80px;max-height:240px;outline:none;transition:border .15s;line-height:1.6;color:var(--navy)}
.atend-notes-input:focus{border-color:var(--gold)}
.atend-notes-send{width:36px;height:36px;border-radius:8px;background:var(--navy);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--gold);flex-shrink:0;transition:background .15s;margin-top:2px}
.atend-notes-send:hover{background:var(--navy2)}
.atend-notes-send:disabled{opacity:.3;pointer-events:none}
.atend-notes-hint{font-size:10px;color:var(--muted);margin-top:5px}
.atend-note-item{background:#fff;border-radius:8px;padding:8px 11px;margin-bottom:8px;font-size:12px;line-height:1.5;box-shadow:0 1px 3px rgba(0,0,0,.07);display:flex;gap:8px;align-items:flex-start}
.atend-note-hora{font-size:10px;color:var(--muted);font-weight:600;flex-shrink:0;margin-top:1px}
.atend-note-texto{color:var(--navy);flex:1;word-break:break-word}

/* Relatório da sessão */
.atend-report{background:var(--cream);border-radius:12px;padding:16px;display:none}
.atend-report.visible{display:block}
.atend-report-ttl{font-size:12px;font-weight:600;color:var(--navy);margin-bottom:10px}
.atend-report-row{display:flex;justify-content:space-between;font-size:12px;padding:5px 0;border-bottom:1px solid rgba(0,0,0,.06)}
.atend-report-row:last-child{border-bottom:none;font-weight:600;color:var(--navy)}

@media(max-width:767px){
  .atend-layout{grid-template-columns:1fr}
  .atend-right{border-left:none;border-top:1px solid var(--cream2);height:360px}
  .atend-selects{grid-template-columns:1fr}
}



/* ── SIMULADOR DE ACORDOS ── */
.simul-wrap{padding:28px;overflow-y:auto;height:100%;display:flex;flex-direction:column;gap:20px}
.simul-form-card{background:#fff;border:1px solid var(--cream2);border-radius:14px;padding:22px}
.simul-form-ttl{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:var(--navy);margin-bottom:16px}
.simul-result{display:none;flex-direction:column;gap:16px}
.simul-result.visible{display:flex}

/* Cards BATNA/ZOPA */
.simul-cards-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.simul-card{border-radius:12px;padding:20px;position:relative;overflow:hidden}
.simul-card.batna-cli{background:var(--navy);border:1px solid rgba(201,168,76,.2)}
.simul-card.batna-adv{background:#0d2210;border:1px solid rgba(26,122,60,.25)}
.simul-card.zopa{background:linear-gradient(135deg,rgba(201,168,76,.08),rgba(26,122,60,.08));border:2px solid rgba(201,168,76,.3);grid-column:1/-1}
.simul-card-tag{font-size:9px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin-bottom:8px;opacity:.7}
.simul-card.batna-cli .simul-card-tag{color:var(--gold)}
.simul-card.batna-adv .simul-card-tag{color:#4ade80}
.simul-card.zopa .simul-card-tag{color:var(--gold)}
.simul-card-val{font-family:'Playfair Display',serif;font-size:28px;font-weight:700;line-height:1.1;margin-bottom:6px}
.simul-card.batna-cli .simul-card-val{color:#fff}
.simul-card.batna-adv .simul-card-val{color:#4ade80}
.simul-card.zopa .simul-card-val{color:var(--navy)}
.simul-card-desc{font-size:11px;line-height:1.6;opacity:.6}
.simul-card.batna-cli .simul-card-desc{color:#fff}
.simul-card.batna-adv .simul-card-desc{color:#fff}
.simul-card.zopa .simul-card-desc{color:var(--navy)}

/* Cenários */
.simul-cenarios{background:#fff;border:1px solid var(--cream2);border-radius:12px;overflow:hidden}
.simul-cenarios-header{background:var(--navy);padding:12px 16px;font-size:12px;font-weight:600;color:var(--gold)}
.simul-cenario{display:flex;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid var(--cream2)}
.simul-cenario:last-child{border-bottom:none}
.simul-cenario-icon{font-size:20px;flex-shrink:0}
.simul-cenario-label{font-size:12px;font-weight:600;color:var(--navy);margin-bottom:2px}
.simul-cenario-desc{font-size:11px;color:var(--muted);line-height:1.5}
.simul-cenario-val{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;flex-shrink:0;text-align:right}
.simul-cenario.mc .simul-cenario-val{color:var(--green)}
.simul-cenario.pb .simul-cenario-val{color:var(--gold)}
.simul-cenario.pp .simul-cenario-val{color:var(--red)}

/* Argumentos e riscos */
.simul-args{background:#fff;border:1px solid var(--cream2);border-radius:12px;padding:18px}
.simul-args-ttl{font-size:12px;font-weight:700;color:var(--navy);margin-bottom:10px;display:flex;align-items:center;gap:6px}
.simul-arg-item{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:#444;line-height:1.6;margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid var(--cream2)}
.simul-arg-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.simul-arg-icon{font-size:14px;flex-shrink:0;margin-top:1px}

/* Loading IA */
.simul-loading{display:none;text-align:center;padding:32px;color:var(--muted);font-size:13px;line-height:1.8}
.simul-loading.visible{display:block}
.simul-loading-dots{display:inline-flex;gap:6px;margin-top:10px}
.simul-loading-dots span{width:8px;height:8px;border-radius:50%;background:var(--gold);animation:ldot .9s infinite}
.simul-loading-dots span:nth-child(2){animation-delay:.2s}
.simul-loading-dots span:nth-child(3){animation-delay:.4s}
@keyframes ldot{0%,80%,100%{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}

/* Simulador — seções visuais e tooltips */
.simul-section-label{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);border-bottom:1px solid rgba(201,168,76,.2);padding-bottom:6px;margin:16px 0 12px}
.simul-section-label:first-of-type{margin-top:4px}
.simul-tip{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;background:var(--cream2);color:var(--muted);font-size:9px;font-weight:700;cursor:help;margin-left:3px;vertical-align:middle;position:relative}
.simul-tip[title]:hover::after{content:attr(title);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);white-space:nowrap;background:#0a1628;color:#fff;font-size:11px;font-weight:400;letter-spacing:0;text-transform:none;padding:6px 10px;border-radius:6px;z-index:999;pointer-events:none;max-width:260px;white-space:normal;line-height:1.5}

/* Simulador — painel de histórico */
.simul-hist{margin-top:14px;border:1px solid var(--cream2);border-radius:10px;overflow:hidden}
.simul-hist-header{background:var(--navy);color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.08em;padding:9px 14px;text-transform:uppercase}
.simul-hist-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--cream2)}
.simul-hist-item:last-child{border-bottom:none}
.simul-hist-info{flex:1;min-width:0}
.simul-hist-ttl{font-size:12px;font-weight:600;color:var(--navy)}
.simul-hist-sub{font-size:11px;color:var(--muted);margin-top:2px}
.simul-hist-dt{font-size:10px;color:var(--muted);margin-top:2px;opacity:.7}
.simul-hist-del{background:none;border:none;cursor:pointer;font-size:14px;opacity:.5;padding:2px 4px;border-radius:4px;flex-shrink:0}
.simul-hist-del:hover{opacity:1;background:rgba(192,57,43,.1)}


/* ── CORREÇÃO LAYOUT FERRAMENTAS ── */
/* tools-main unificada acima */
/* .tools-panel: ver definição acima */

/* ── Scroll independente Ferramentas ── */
.tools-panel.active{contain:strict}
.tools-panel-inner{padding:28px 32px;min-height:min-content}
.tools-panel-inner{padding:28px 32px}
.calc-mon-wrap,.audiencia-wrap,.cascata-wrap,.relatorio-wrap,.atend-layout,.simul-wrap{
  height:100%;overflow-y:auto;
}


/* ── CHAT INTERNO DO PROCESSO ── */
.ia-typing-dots{display:inline-flex;gap:3px;align-items:center}
.ia-typing-dots span{width:5px;height:5px;border-radius:50%;background:var(--gold);animation:tdot .9s infinite}
.ia-typing-dots span:nth-child(2){animation-delay:.2s}
.ia-typing-dots span:nth-child(3){animation-delay:.4s}
@keyframes tdot{0%,80%,100%{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}


/* ── WRAPPER INTERNO DOS PAINÉIS DE FERRAMENTAS ── */
.tp-inner{
  padding:28px 32px;
  flex:1;
  min-height:0;
  overflow-y:auto;
  box-sizing:border-box;
}
.tools-panel-ttl{
  font-family:'Playfair Display',serif;
  font-size:24px;font-weight:700;
  color:var(--navy);
  margin-bottom:6px;
}
.tools-panel-sub{
  font-size:13px;color:var(--muted);
  margin-bottom:24px;line-height:1.6;
}
/* Simulador de acordos — fix */
.simul-wrap{
  padding:28px 32px;
  overflow-y:auto;
  height:100%;
  box-sizing:border-box;
  display:flex;flex-direction:column;gap:20px;
}
/* Sidebar ferramentas — melhorar visual */
.tools-menu-item{
  display:flex;align-items:center;gap:12px;
  padding:12px 14px;border-radius:10px;
  cursor:pointer;margin-bottom:4px;
  transition:all .18s;
  border:1px solid transparent;
}
.tools-menu-item:hover{
  background:rgba(255,255,255,.06);
}
.tools-menu-item.active{
  background:rgba(201,168,76,.12);
  border-color:rgba(201,168,76,.25);
}
.tools-menu-icon{
  width:36px;height:36px;border-radius:8px;
  background:rgba(255,255,255,.06);
  display:flex;align-items:center;justify-content:center;
  font-size:18px;flex-shrink:0;
  transition:background .18s;
}
.tools-menu-item.active .tools-menu-icon{
  background:rgba(201,168,76,.18);
}
.tools-menu-label{
  font-size:13px;font-weight:500;
  color:rgba(255,255,255,.65);
  line-height:1.2;
}
.tools-menu-item.active .tools-menu-label{color:#fff}
.tools-menu-desc{
  font-size:10px;color:rgba(255,255,255,.28);
  margin-top:2px;line-height:1.3;
}


/* ── MENU MOBILE MELHORADO ── */
.mobile-menu-handle{
  width:36px;height:4px;border-radius:2px;
  background:rgba(255,255,255,.2);
  margin:0 auto 14px;
}
.mobile-menu-item{
  display:flex;align-items:center;gap:14px;
  padding:14px 20px;
  font-size:14px;font-weight:500;
  color:rgba(255,255,255,.75);
  cursor:pointer;
  transition:background .15s;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.mobile-menu-item:last-child{border-bottom:none}
.mobile-menu-item:hover,.mobile-menu-item:active{
  background:rgba(255,255,255,.06);
}
.mobile-menu-icon{
  font-size:20px;width:28px;
  text-align:center;flex-shrink:0;
}




/* ═══════════════════════════════════════════════════
   INOVAÇÕES RADICAIS — Termômetro, Precedentes,
   Linha do Tempo, Mapa Mental, IA que Aprende
   ═══════════════════════════════════════════════════ */

/* ── TERMÔMETRO DE RISCO ── */
.risco-badge{
  display:inline-flex;align-items:center;gap:5px;
  padding:3px 10px;border-radius:999px;
  font-size:10px;font-weight:700;
  cursor:pointer;transition:all .2s;flex-shrink:0;
}
.risco-badge.alto{background:#fcebeb;color:#c0392b;border:1px solid rgba(192,57,43,.2)}
.risco-badge.medio{background:#fff3e0;color:#c9a84c;border:1px solid rgba(201,168,76,.2)}
.risco-badge.baixo{background:#e8f5e9;color:#1a7a3c;border:1px solid rgba(26,122,60,.2)}
.risco-badge.analisando{background:rgba(201,168,76,.08);color:var(--gold);border:1px solid rgba(201,168,76,.2)}

.risco-painel{background:#fff;border:1px solid var(--cream2);border-radius:12px;overflow:hidden;margin-bottom:14px}
.risco-header{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--cream2)}
.risco-titulo{font-size:13px;font-weight:600;color:var(--navy)}
.risco-score-wrap{display:flex;align-items:center;gap:10px;padding:16px}
.risco-gauge{
  width:80px;height:80px;flex-shrink:0;
}
.risco-gauge-bg{fill:none;stroke:var(--cream2);stroke-width:8}
.risco-gauge-fill{fill:none;stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .8s ease,stroke .3s}
.risco-gauge-text{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;fill:var(--navy);dominant-baseline:middle;text-anchor:middle}
.risco-desc{flex:1}
.risco-nivel{font-size:16px;font-weight:700;margin-bottom:4px}
.risco-nivel.alto{color:#c0392b}.risco-nivel.medio{color:#c9a84c}.risco-nivel.baixo{color:#1a7a3c}
.risco-motivo{font-size:11px;color:var(--muted);line-height:1.6}
.risco-fatores{padding:0 16px 14px}
.risco-fator{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text);margin-bottom:5px}
.risco-fator-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
.risco-fator.positivo .risco-fator-dot{background:var(--green)}
.risco-fator.negativo .risco-fator-dot{background:#e74c3c}
.risco-fator.neutro .risco-fator-dot{background:var(--gold)}
.risco-btn-analisar{
  width:100%;padding:10px;font-size:12px;font-weight:600;
  background:linear-gradient(135deg,var(--navy),var(--navy2));
  color:var(--gold);border:none;cursor:pointer;
  font-family:DM Sans,sans-serif;transition:opacity .2s;
}
.risco-btn-analisar:hover{opacity:.85}
.risco-btn-analisar:disabled{opacity:.5;cursor:not-allowed}

/* ── LINHA DO TEMPO ── */
.timeline-wrap{padding:16px;height:100%;overflow-y:auto}
.timeline-vazio{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;text-align:center;color:var(--muted);font-size:12px;gap:8px}
.timeline-item{display:flex;gap:12px;margin-bottom:0;position:relative}
.timeline-item:last-child .tl-linha{display:none}
.tl-left{display:flex;flex-direction:column;align-items:center;width:32px;flex-shrink:0}
.tl-dot{
  width:28px;height:28px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:13px;flex-shrink:0;z-index:1;
  border:2px solid #fff;
}
.tl-linha{width:2px;flex:1;min-height:20px;margin:2px 0}
.tl-body{flex:1;padding-bottom:18px}
.tl-data{font-size:9.5px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px}
.tl-titulo{font-size:12px;font-weight:600;color:var(--navy);margin-bottom:3px}
.tl-desc{font-size:11px;color:var(--muted);line-height:1.55}
/* cores por tipo */
.tl-proc{background:rgba(15,30,53,.1)}.tl-proc .tl-dot{background:var(--navy)}
.tl-prazo{background:rgba(192,57,43,.1)}.tl-prazo .tl-dot{background:#e74c3c}
.tl-doc{background:rgba(201,168,76,.12)}.tl-doc .tl-dot{background:var(--gold)}
.tl-pub{background:rgba(56,189,248,.1)}.tl-pub .tl-dot{background:#38bdf8}
.tl-ia{background:rgba(139,92,246,.1)}.tl-ia .tl-dot{background:#8b5cf6}
.tl-fin{background:rgba(26,122,60,.1)}.tl-fin .tl-dot{background:var(--green)}
.tl-linha.proc{background:rgba(15,30,53,.15)}
.tl-linha.prazo{background:rgba(192,57,43,.15)}
.tl-linha.doc{background:rgba(201,168,76,.2)}
.tl-linha.pub{background:rgba(56,189,248,.15)}
.tl-linha.ia{background:rgba(139,92,246,.15)}
.tl-linha.fin{background:rgba(26,122,60,.15)}
.tl-add-btn{
  display:flex;align-items:center;gap:8px;padding:10px 14px;
  background:rgba(201,168,76,.06);border:1.5px dashed rgba(201,168,76,.3);
  border-radius:8px;font-size:11px;color:var(--gold);cursor:pointer;
  transition:all .15s;margin-top:4px;font-family:DM Sans,sans-serif;
}
.tl-add-btn:hover{background:rgba(201,168,76,.12)}

/* ── JURIMETRIA SCREEN — ver inline na screen ── */
.juri-screen-header{background:var(--navy);padding:16px 28px;border-bottom:2px solid rgba(201,168,76,.25);display:flex;align-items:center;gap:16px;flex-shrink:0}
.juri-screen-titulo{display:flex;align-items:center;gap:8px;font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--gold);margin-bottom:4px}
.juri-screen-sub{font-size:12px;color:rgba(255,255,255,.5);margin-bottom:0}
.juri-screen-tabs{background:#fff;border-bottom:2px solid var(--cream2);display:flex;flex-shrink:0;overflow-x:auto;scrollbar-width:none}
.juri-screen-tabs::-webkit-scrollbar{display:none}
.juri-stab{display:inline-flex;align-items:center;gap:6px;padding:12px 20px;font-size:13px;font-weight:600;color:var(--muted);border:none;background:none;cursor:pointer;border-bottom:3px solid transparent;font-family:DM Sans,sans-serif;transition:all .15s;white-space:nowrap}
.juri-stab:hover{color:var(--navy);background:var(--cream)}
.juri-stab.active{color:var(--navy);font-weight:700;border-bottom-color:var(--gold);background:rgba(201,168,76,.05)}
.juri-screen-body{flex:1;overflow-y:auto;padding:24px 28px}
.juri-carteira-grid{display:flex;flex-direction:column;gap:10px}
.juri-proc-card{background:#fff;border-radius:12px;border:1px solid var(--cream2);padding:16px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:all .15s}
.juri-proc-card:hover{border-color:var(--gold);box-shadow:0 2px 8px rgba(201,168,76,.15)}
.juri-proc-badge{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;flex-shrink:0}
.juri-proc-info{flex:1;min-width:0}
.juri-proc-titulo{font-size:13px;font-weight:700;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.juri-proc-meta{font-size:11px;color:var(--muted);margin-top:2px}
.juri-prob-pill{padding:4px 10px;border-radius:20px;font-size:12px;font-weight:700;flex-shrink:0}
.juri-risco-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.juri-empty{text-align:center;padding:48px 24px;color:var(--muted)}
.juri-empty-icon{font-size:48px;margin-bottom:12px}
.juri-form-card{background:#fff;border-radius:12px;border:1px solid var(--cream2);padding:24px;margin-bottom:16px}
.juri-form-titulo{display:flex;align-items:center;gap:6px;font-size:15px;font-weight:700;color:var(--navy);margin-bottom:4px}
.juri-form-sub{font-size:12px;color:var(--muted);margin-bottom:20px;line-height:1.6}
.juri-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.juri-field label{font-size:11px;font-weight:700;color:var(--navy);display:block;margin-bottom:5px;text-transform:uppercase;letter-spacing:.04em}
.juri-field input,.juri-field select,.juri-field textarea{width:100%;padding:9px 12px;border:1.5px solid var(--cream2);border-radius:8px;font-size:13px;font-family:DM Sans,sans-serif;color:var(--navy);background:#fff;box-sizing:border-box;transition:border-color .15s}
.juri-field input:focus,.juri-field select:focus,.juri-field textarea:focus{border-color:var(--gold);outline:none}
.juri-field textarea{resize:vertical;min-height:90px}
.juri-field-full{grid-column:1/-1}
.juri-res-prob{background:var(--cream);border-radius:10px;padding:14px;margin-bottom:10px}
.juri-res-prob-row{display:flex;align-items:center;gap:12px}
.juri-res-prob-num{font-size:40px;font-weight:800;color:var(--navy);line-height:1}
.juri-res-bar-wrap{flex:1}
.juri-res-bar-track{height:8px;background:var(--cream2);border-radius:4px;overflow:hidden;margin-bottom:4px}
.juri-res-bar-fill{height:100%;border-radius:4px;transition:width .8s ease}
.juri-res-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.juri-res-box{background:var(--cream);border-radius:10px;padding:14px;text-align:center}
.juri-res-box-lbl{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.juri-res-box-val{font-size:22px;font-weight:800;color:var(--navy)}
.juri-res-box-sub{font-size:10px;color:var(--muted);margin-top:2px}
.juri-res-section{border-radius:10px;padding:12px 14px;margin-bottom:8px}
.juri-res-section-ttl{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:700;margin-bottom:6px}
.juri-res-section-body{font-size:12px;color:var(--navy);line-height:1.6}
.juri-res-item{display:flex;gap:6px;margin-bottom:4px}
.juri-acoes{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.juri-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:10px 16px;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer;font-family:DM Sans,sans-serif;border:none;transition:all .15s}
.juri-btn.primary{background:var(--navy);color:var(--gold)}
.juri-btn.secondary{background:var(--cream);color:var(--navy);border:1px solid var(--cream2)}
.juri-btn.green{background:var(--green);color:#fff}

/* ── PDF TOOLS ── */
/* PDF Tools — hero header */
.pdf-hero{background:var(--navy);padding:20px 28px;display:flex;align-items:center;gap:24px;justify-content:space-between;flex-wrap:wrap;border-bottom:2px solid rgba(201,168,76,.2)}
.pdf-hero-content{flex:1;min-width:200px}
.pdf-hero-title{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--gold);display:flex;align-items:center;gap:8px}
.pdf-hero-title svg{width:20px;height:20px;stroke:var(--gold);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.pdf-hero-sub{font-size:12px;color:rgba(255,255,255,.55);margin-top:5px;line-height:1.5}
.pdf-hero-limits{flex-shrink:0}
.pdf-hero-limits-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.35);margin-bottom:5px;font-weight:600;text-align:right}
.pdf-hero-chips{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}
.pdf-limit-chip{padding:3px 9px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:99px;font-size:11px;color:rgba(255,255,255,.65);white-space:nowrap}
.pdf-limit-chip strong{color:#fff;font-weight:700;margin-right:3px}
/* PDF Tools — selector cards (replace pill tabs) */
.pdf-selector{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:24px}
.pdf-sel-card{background:#fff;border:2px solid rgba(15,30,53,.08);border-radius:12px;padding:16px 10px;cursor:pointer;text-align:center;transition:all .18s;font-family:inherit}
.pdf-sel-card:hover{border-color:rgba(201,168,76,.4);background:rgba(201,168,76,.04);transform:translateY(-2px);box-shadow:0 4px 14px rgba(15,30,53,.09)}
.pdf-sel-card.active{border-color:var(--navy);background:#fff;box-shadow:0 2px 14px rgba(15,30,53,.13)}
.pdf-sel-icon{width:42px;height:42px;border-radius:10px;background:rgba(15,30,53,.05);display:flex;align-items:center;justify-content:center;margin:0 auto 10px;transition:background .18s}
.pdf-sel-card.active .pdf-sel-icon{background:rgba(15,30,53,.08)}
.pdf-sel-icon svg{width:18px;height:18px;stroke:var(--sel-cor,var(--navy));stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.pdf-sel-label{font-size:12px;font-weight:700;color:var(--navy);margin-bottom:2px;line-height:1.2}
.pdf-sel-desc{font-size:10px;color:var(--muted)}
/* Override base .pdf-tab pill styles when inside .pdf-selector */
.pdf-tab{padding:8px 16px;border-radius:8px;border:1px solid rgba(15,30,53,.15);background:rgba(15,30,53,.05);color:rgba(15,30,53,.55);font-size:12px;font-weight:600;cursor:pointer;font-family:DM Sans,sans-serif;transition:all .15s}
.pdf-tab.active,.pdf-tab:hover{background:rgba(201,168,76,.18);border-color:rgba(201,168,76,.5);color:var(--navy)}
.pdf-selector .pdf-tab{padding:16px 10px;border-radius:12px;background:#fff;border-width:2px;color:inherit}
.pdf-selector .pdf-tab.active{background:#fff;border-color:var(--navy);border-width:2px;box-shadow:0 2px 14px rgba(15,30,53,.13)}
.pdf-selector .pdf-tab:hover{background:rgba(201,168,76,.04);border-color:rgba(201,168,76,.4);border-width:2px;color:inherit;transform:translateY(-2px);box-shadow:0 4px 14px rgba(15,30,53,.09)}
.pdf-aba{display:none}
.pdf-aba.active{display:block}
.pdf-card{background:#fff;border:1px solid rgba(15,30,53,.1);border-radius:12px;padding:20px}
.pdf-card-ttl{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:4px}
.pdf-card-sub{font-size:12px;color:var(--muted);line-height:1.6;margin-bottom:4px}
.pdf-drop-zone{border:2px dashed rgba(201,168,76,.4);border-radius:10px;padding:32px 20px;text-align:center;cursor:pointer;transition:all .2s;background:rgba(201,168,76,.04)}
.pdf-drop-zone:hover,.pdf-drop-zone.over{border-color:rgba(201,168,76,.8);background:rgba(201,168,76,.1)}
.pdf-drop-icon{font-size:32px;margin-bottom:8px}
.pdf-drop-txt{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:4px}
.pdf-drop-sub{font-size:11px;color:var(--muted)}
.pdf-arquivo-info{display:flex;align-items:center;gap:10px;padding:10px 14px;background:rgba(29,158,117,.07);border:1px solid rgba(29,158,117,.2);border-radius:8px}
.pdf-arquivo-nome{font-size:13px;font-weight:600;color:var(--navy);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pdf-btn-remover{background:none;border:none;color:var(--muted);cursor:pointer;font-size:16px;padding:0;line-height:1}
.pdf-btn-remover:hover{color:var(--red)}
.pdf-opcao{background:rgba(15,30,53,.03);border:2px solid rgba(15,30,53,.1);border-radius:10px;padding:16px;cursor:pointer;text-align:center;transition:all .15s}
.pdf-opcao:hover,.pdf-opcao.active{border-color:rgba(201,168,76,.6);background:rgba(201,168,76,.1)}
.pdf-opcao-icon{font-size:24px;margin-bottom:8px}
.pdf-opcao-ttl{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:4px}
.pdf-opcao-sub{font-size:11px;color:var(--muted)}
.pdf-label{font-size:12px;font-weight:600;color:var(--navy);display:block;margin-bottom:6px}
.pdf-merge-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:rgba(15,30,53,.04);border:1px solid rgba(15,30,53,.08);border-radius:8px;margin-bottom:6px}
.pdf-merge-handle{cursor:grab;color:var(--muted);font-size:14px}
.pdf-merge-nome{flex:1;font-size:12px;color:var(--navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pdf-merge-size{font-size:11px;color:var(--muted)}
.pdf-nivel{padding:12px 8px;background:rgba(15,30,53,.04);border:2px solid rgba(15,30,53,.08);border-radius:10px;text-align:center;cursor:pointer;transition:all .15s}
.pdf-nivel:hover,.pdf-nivel.active{border-color:rgba(201,168,76,.5);background:rgba(201,168,76,.1)}
.pdf-img-thumb{width:64px;height:64px;object-fit:cover;border-radius:6px;border:2px solid rgba(15,30,53,.1)}
.pdf-resultado-ok{display:flex;align-items:center;gap:12px;padding:14px 18px;background:rgba(29,158,117,.07);border:1px solid rgba(29,158,117,.2);border-radius:10px}
.pdf-resultado-erro{display:flex;align-items:center;gap:12px;padding:14px 18px;background:rgba(226,75,74,.07);border:1px solid rgba(226,75,74,.2);border-radius:10px}
.pdf-download-btn{padding:9px 18px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;font-family:DM Sans,sans-serif;text-decoration:none;display:inline-block}
.pdf-loading{display:flex;align-items:center;gap:10px;padding:14px;color:var(--muted);font-size:13px}

/* ── PRECEDENTES PERIGOSOS ── */
.prec-wrap{padding:16px;height:100%;overflow-y:auto}
.prec-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.prec-titulo{font-size:13px;font-weight:600;color:var(--navy)}
.prec-btn{padding:7px 14px;font-size:11px;font-weight:600;border:none;border-radius:7px;cursor:pointer;font-family:DM Sans,sans-serif;transition:all .15s}
.prec-btn.analisar{background:var(--navy);color:var(--gold)}
.prec-btn.analisar:hover{background:var(--navy2)}
.prec-loading{text-align:center;padding:24px;color:var(--muted);font-size:12px}
.prec-vazio{text-align:center;padding:28px;color:var(--muted);font-size:12px;line-height:1.7}
.prec-item{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:14px;margin-bottom:10px;border-left:4px solid}
.prec-item.contrario{border-left-color:#e74c3c}
.prec-item.favoravel{border-left-color:var(--green)}
.prec-item.neutro{border-left-color:var(--gold)}
.prec-item-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:6px;gap:8px}
.prec-item-tribunal{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:2px 8px;border-radius:999px;flex-shrink:0}
.prec-item-tribunal.stf{background:#1a237e;color:#fff}
.prec-item-tribunal.stj{background:#004d40;color:#fff}
.prec-item-tribunal.tst{background:#1b5e20;color:#fff}
.prec-item-tribunal.tj{background:#4a148c;color:#fff}
.prec-item-tipo{font-size:9px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.prec-item-titulo{font-size:12px;font-weight:600;color:var(--navy);margin-bottom:4px;line-height:1.4}
.prec-item-resumo{font-size:11px;color:var(--muted);line-height:1.6;margin-bottom:6px}
.prec-item-alerta{font-size:10.5px;padding:6px 10px;border-radius:6px;line-height:1.5;font-weight:500}
.prec-item-alerta.contrario{background:#fcebeb;color:#c0392b}
.prec-item-alerta.favoravel{background:#e8f5e9;color:#1a7a3c}
.prec-item-alerta.neutro{background:#fff3e0;color:#c9a84c}

/* ── MAPA MENTAL ── */
.mapa-wrap{height:100%;display:flex;flex-direction:column;overflow:hidden}
.mapa-toolbar{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--cream);border-bottom:1px solid var(--cream2);flex-shrink:0}
.mapa-tool-btn{padding:5px 12px;border-radius:6px;font-size:11px;font-weight:500;border:1px solid var(--cream2);background:#fff;cursor:pointer;font-family:DM Sans,sans-serif;transition:all .15s}
.mapa-tool-btn:hover{border-color:var(--navy);color:var(--navy)}
.mapa-canvas{flex:1;overflow:auto;background:#f8f7f4;position:relative;min-height:300px}
.mapa-svg{width:100%;min-height:400px}
/* Nós do mapa */
.mapa-no{cursor:pointer;transition:all .2s}
.mapa-no:hover rect,.mapa-no:hover circle{filter:brightness(1.05)}
.mapa-link{stroke:rgba(0,0,0,.12);stroke-width:1.5;fill:none}
.mapa-link.destaque{stroke:var(--gold);stroke-width:2}
.mapa-no-label{font-family:DM Sans,sans-serif;font-size:11px;font-weight:500;fill:var(--text);pointer-events:none}
.mapa-no-sub{font-family:DM Sans,sans-serif;font-size:9px;fill:var(--muted);pointer-events:none}
.mapa-vazio{display:flex;align-items:center;justify-content:center;height:100%;text-align:center;color:var(--muted);font-size:12px;flex-direction:column;gap:8px}

/* ── IA QUE APRENDE ── */
.ia-aprende-card{background:linear-gradient(135deg,var(--navy),var(--navy2));border-radius:12px;padding:20px;margin-bottom:14px;color:#fff}
.ia-aprende-ttl{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:var(--gold);margin-bottom:6px}
.ia-aprende-sub{font-size:11.5px;color:rgba(255,255,255,.5);line-height:1.6;margin-bottom:14px}
.ia-aprende-stat{display:flex;gap:16px}
.ia-stat{text-align:center}
.ia-stat-n{font-family:'Playfair Display',serif;font-size:24px;font-weight:700;color:var(--gold)}
.ia-stat-l{font-size:9px;color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}
.ia-aprende-barra{height:4px;border-radius:2px;background:rgba(255,255,255,.1);margin:14px 0 6px}
.ia-aprende-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--gold3),var(--gold));transition:width 1s ease}
.ia-aprende-nivel{font-size:10px;color:rgba(255,255,255,.4);display:flex;justify-content:space-between}
.ia-estilo-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fff;border:1px solid var(--cream2);border-radius:8px;margin-bottom:8px}
.ia-estilo-icon{font-size:18px;flex-shrink:0}
.ia-estilo-body{flex:1}
.ia-estilo-label{font-size:12px;font-weight:500;color:var(--navy);margin-bottom:2px}
.ia-estilo-val{font-size:11px;color:var(--muted);line-height:1.4}
.ia-estilo-pill{font-size:9px;font-weight:600;padding:2px 8px;border-radius:999px;background:rgba(201,168,76,.1);color:var(--gold);flex-shrink:0}

/* ── DRAWER COM SCROLL HORIZONTAL NOS TABS ── */
.proc-drawer-tabs{
  display:flex;overflow-x:auto;
  scrollbar-width:none;gap:0;
  flex-shrink:0;background:#fff;
  border-bottom:1px solid var(--cream2);
}
.proc-drawer-tabs::-webkit-scrollbar{display:none}
.proc-dtab{
  white-space:nowrap;padding:9px 14px;
  font-size:11px;font-weight:500;
  color:var(--muted);
  cursor:pointer;border-bottom:2px solid transparent;
  transition:all .18s;flex-shrink:0;
}
.proc-dtab.active{color:var(--navy);border-bottom-color:var(--gold);font-weight:600}
.proc-dtab:hover{color:var(--navy)}


/* ═══════════════════════════════════════════════
   CALCULADORA JURÍDICA — 4 modos
   ═══════════════════════════════════════════════ */
.calc-abas{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:18px;border-bottom:2px solid var(--cream2);padding-bottom:10px}
.calc-aba{padding:7px 14px;border-radius:7px 7px 0 0;font-size:11.5px;font-weight:600;border:1px solid var(--cream2);border-bottom:none;background:#fff;color:var(--muted);cursor:pointer;font-family:DM Sans,sans-serif;transition:all .18s}
.calc-aba:hover{color:var(--navy)}
.calc-aba.active{background:var(--navy);color:var(--gold);border-color:var(--navy)}
.calc-painel{display:none}
.calc-painel.active{display:block}
.calc-info-box{background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.25);border-left:4px solid var(--gold);border-radius:8px;padding:10px 14px;font-size:12px;color:#6b5000;line-height:1.65;margin-bottom:16px}
.calc-info-box.azul{background:rgba(56,189,248,.06);border-color:rgba(56,189,248,.3);border-left-color:#38bdf8;color:#0c4a6e}
.calc-info-box.verde{background:rgba(26,122,60,.06);border-color:rgba(26,122,60,.25);border-left-color:var(--green);color:#14532d}
.indice-badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;padding:3px 9px;border-radius:99px;margin-left:8px;vertical-align:middle;letter-spacing:.03em}
.indice-badge.gold{background:rgba(201,168,76,.15);color:#7a5900;border:1px solid rgba(201,168,76,.3)}
.indice-badge.blue{background:rgba(24,95,165,.1);color:#0c4a6e;border:1px solid rgba(24,95,165,.2)}
.indice-badge.green{background:rgba(29,158,117,.1);color:#0f6e56;border:1px solid rgba(29,158,117,.2)}
.calc-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:12px}
.calc-grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:12px}
.her-bem-row{display:grid;grid-template-columns:140px 1fr 130px 36px;gap:8px;align-items:end}
.calc-indice-grid{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.indice-btn{padding:6px 14px;border-radius:6px;font-size:12px;font-weight:600;border:1px solid var(--cream2);background:#fff;cursor:pointer;font-family:DM Sans,sans-serif;transition:all .15s}
.indice-btn:hover{border-color:var(--navy);color:var(--navy)}
.indice-btn.active{background:var(--navy);color:var(--gold);border-color:var(--navy)}
.indice-btn-trab{padding:6px 14px;border-radius:6px;font-size:11.5px;font-weight:600;border:1px solid var(--cream2);background:#fff;cursor:pointer;font-family:DM Sans,sans-serif;transition:all .15s}
.indice-btn-trab:hover{border-color:var(--green)}
.indice-btn-trab.active{background:var(--green);color:#fff;border-color:var(--green)}
.calc-btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
/* Resultado */
.calc-result-box{background:var(--navy);border-radius:12px;padding:20px 22px;margin:14px 0}
.calc-res-ttl{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:4px}
.calc-res-val{font-family:'Playfair Display',serif;font-size:38px;font-weight:700;color:var(--gold);line-height:1;margin-bottom:4px}
.calc-res-desc{font-size:11px;color:rgba(255,255,255,.4);margin-bottom:14px}
.calc-res-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.calc-res-item{background:rgba(255,255,255,.06);border-radius:8px;padding:10px 12px}
.calc-res-item-lbl{font-size:9.5px;color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px}
.calc-res-item-val{font-size:14px;font-weight:600;color:#fff}
.calc-res-item-val.gold{color:var(--gold)}
.calc-res-item-val.green{color:#4ade80}
.calc-res-item-val.red{color:#f87171}
.calc-res-aviso{margin-top:12px;font-size:10px;color:rgba(255,255,255,.3);line-height:1.6;padding-top:10px;border-top:1px solid rgba(255,255,255,.08)}
/* Memória */
.calc-memoria-box{background:#fff;border:1px solid var(--cream2);border-radius:10px;overflow:hidden;margin:8px 0}
.calc-mem-header{background:var(--navy);padding:10px 14px;font-size:11px;font-weight:600;color:var(--gold);display:flex;align-items:center;justify-content:space-between}
.calc-mem-table{width:100%;border-collapse:collapse;font-size:12px;border-radius:10px;overflow:hidden}
.calc-mem-table th{padding:9px 14px;background:var(--navy);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--gold);text-align:left}
.calc-mem-table th:last-child{text-align:center}
.calc-mem-table td{padding:8px 14px;border-bottom:1px solid var(--cream2);color:var(--text)}
.calc-mem-table td:nth-child(4),.calc-mem-table td:nth-child(5),.calc-mem-table td:nth-child(6){text-align:right;font-variant-numeric:tabular-nums}
.calc-mem-table tr:last-child td{background:rgba(201,168,76,.06);font-weight:700;border-bottom:none;color:var(--navy)}
.calc-mem-table tr:last-child td:last-child{color:var(--gold)}
@media(max-width:767px){.calc-grid3{grid-template-columns:1fr 1fr}.calc-grid2{grid-template-columns:1fr}.calc-aba{font-size:10px;padding:5px 9px}.her-bem-row{grid-template-columns:1fr 1fr}}


/* ── PAINEL DE ÍNDICES ATUAIS ── */
.calc-indices-painel{margin-bottom:16px}
.ci-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:10px}
.ci-item{background:#fff;border:1px solid var(--cream2);border-radius:8px;padding:10px 12px;text-align:center;transition:border-color .15s}
.ci-nome{display:block;font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.ci-val{display:block;font-size:15px;font-weight:700;color:var(--navy);line-height:1.2;margin:2px 0}
.ci-data{display:block;font-size:9px;color:var(--muted);margin-top:2px}
.ci-card{background:var(--cream);border-radius:8px;padding:8px 10px;text-align:center;transition:all .15s}
.ci-card-nome{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.ci-card-val{font-size:16px;font-weight:700;color:var(--navy);line-height:1.2}
.ci-card-sub{font-size:9px;color:var(--muted);margin-top:2px}
.ci-taxa406{background:#fff;border:1px solid var(--cream2);border-left:3px solid var(--gold);border-radius:8px;padding:10px 16px;display:flex;flex-direction:column;gap:2px;margin-top:6px}
.ci-406-ttl{font-size:10px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.ci-406-val{font-size:13px;font-weight:600;color:var(--navy)}
.ci-406-formula{font-size:10px;color:var(--muted)}
.ci-status{font-size:10px;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:6px}
.ci-status.loading{background:rgba(201,168,76,.08);color:#8a6000}
.ci-status.ok{background:rgba(26,122,60,.08);color:#14532d}
.ci-status.cache{background:rgba(56,189,248,.06);color:#0c4a6e}
.ci-status.fallback{background:rgba(192,57,43,.06);color:#7f1d1d}
.ci-refresh{background:none;border:none;cursor:pointer;font-size:10px;color:inherit;text-decoration:underline;padding:0;margin-left:6px;font-family:inherit}
@media(max-width:767px){.ci-grid{grid-template-columns:repeat(2,1fr)}}


/* ═══════════════════════════════════════════════════
   MEU ASSESSOR — Secretária Virtual 24h
   ═══════════════════════════════════════════════════ */
.ws-assessor-item{
  margin-top:8px;
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:8px!important;
}

/* ── BANCO DE TESES ──────────────────────────────────── */
.teses-layout{display:grid;grid-template-columns:280px 1fr;height:100%;overflow:hidden;gap:0}
.teses-sidebar{background:#fff;border-right:1px solid var(--cream2);display:flex;flex-direction:column;overflow:hidden;height:100%}
.teses-sidebar-header{padding:16px 14px 10px;border-bottom:1px solid var(--cream2);flex-shrink:0}
.teses-sidebar-ttl{display:flex;align-items:center;gap:6px;font-family:'Playfair Display',serif;font-size:15px;font-weight:700;color:var(--navy);margin-bottom:2px}
.teses-sidebar-sub{font-size:11px;color:var(--muted);line-height:1.4}
.teses-filtros{padding:10px 12px;border-bottom:1px solid var(--cream2);flex-shrink:0;display:flex;flex-direction:column;gap:6px}
.teses-search{width:100%;border:1.5px solid var(--cream2);border-radius:8px;padding:8px 12px;font-size:12px;font-family:DM Sans,sans-serif;outline:none;transition:border-color .2s}
.teses-search:focus{border-color:var(--gold)}
.teses-areas{display:flex;flex-wrap:wrap;gap:4px}
.teses-area-chip{font-size:10px;font-weight:600;padding:3px 8px;border-radius:99px;border:1px solid var(--cream2);background:var(--cream);cursor:pointer;transition:all .15s;color:var(--muted)}
.teses-area-chip.active{background:var(--navy);color:var(--gold);border-color:var(--navy)}
.teses-lista{flex:1;overflow-y:auto;padding:8px}
.teses-lista-vazia{text-align:center;padding:40px 20px;color:var(--muted);font-size:13px}
.tese-card{background:var(--cream);border:1px solid var(--cream2);border-radius:10px;padding:12px 14px;margin-bottom:8px;cursor:pointer;transition:all .15s;border-left:3px solid transparent}
.tese-card:hover{border-color:var(--gold);background:rgba(201,168,76,.04)}
.tese-card.active{border-left-color:var(--gold);background:rgba(201,168,76,.07)}
.tese-card-ttl{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:4px;line-height:1.3}
.tese-card-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.tese-card-area{font-size:10px;font-weight:700;padding:2px 7px;border-radius:99px;letter-spacing:.04em}
.tese-card-data{font-size:10px;color:var(--muted)}
.tese-card-prev{font-size:11px;color:var(--muted);margin-top:4px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Cores por área */
.area-trabalhista{background:rgba(52,152,219,.12);color:#1a6d9e}
.area-civil{background:rgba(46,213,115,.12);color:#1a7a45}
.area-criminal{background:rgba(235,59,90,.12);color:#a01030}
.area-previdenciario{background:rgba(108,92,231,.12);color:#4a3d9e}
.area-tributario{background:rgba(253,167,23,.12);color:#8a5d00}
.area-empresarial{background:rgba(0,168,255,.12);color:#005f8e}
.area-familia{background:rgba(253,114,114,.12);color:#8e2020}
.area-consumidor{background:rgba(0,206,201,.12);color:#006e6b}
.area-ambiental{background:rgba(0,184,148,.12);color:#005c49}
.area-outro{background:rgba(150,150,150,.12);color:#555}

/* Editor de tese */
.teses-editor{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--cream)}
.teses-editor-vazio{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;gap:12px}
.teses-editor-vazio h3{font-family:'Playfair Display',serif;font-size:20px;color:var(--navy)}
.teses-editor-vazio p{font-size:13px;color:var(--muted);max-width:400px;line-height:1.6}
.teses-editor-form{flex:1;display:flex;flex-direction:column;overflow:hidden}
.teses-editor-hdr{padding:14px 20px;border-bottom:1px solid var(--cream2);background:#fff;display:flex;align-items:center;gap:8px;flex-shrink:0;flex-wrap:wrap}
.teses-titulo-inp{flex:1;min-width:200px;font-size:16px;font-weight:700;font-family:'Playfair Display',serif;color:var(--navy);border:none;outline:none;background:transparent}
.teses-titulo-inp::placeholder{color:var(--cream2)}
.teses-editor-body{flex:1;overflow-y:auto;padding:20px}
.teses-field-label{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.teses-area-sel{width:100%;padding:8px 10px;border:1.5px solid var(--cream2);border-radius:8px;font-size:13px;font-family:DM Sans,sans-serif;outline:none;margin-bottom:16px}
.teses-tags-row{display:flex;flex-wrap:wrap;gap:6px;padding:8px 10px;border:1.5px solid var(--cream2);border-radius:8px;min-height:38px;align-items:center;cursor:text;margin-bottom:16px}
.tese-tag{background:var(--navy);color:#fff;font-size:10px;font-weight:700;padding:2px 8px;border-radius:99px;display:flex;align-items:center;gap:4px}
.tese-tag-del{cursor:pointer;opacity:.6}
.tese-tag-del:hover{opacity:1}
.teses-tag-inp{border:none;outline:none;font-size:12px;font-family:DM Sans,sans-serif;background:transparent;min-width:100px}
.teses-conteudo{width:100%;min-height:200px;border:1.5px solid var(--cream2);border-radius:8px;padding:12px;font-size:13px;font-family:DM Sans,sans-serif;line-height:1.7;resize:vertical;outline:none;transition:border-color .2s;margin-bottom:16px}
.teses-conteudo:focus{border-color:var(--gold)}
.teses-fundamentos{width:100%;min-height:80px;border:1.5px solid var(--cream2);border-radius:8px;padding:12px;font-size:12px;font-family:DM Sans,sans-serif;line-height:1.6;resize:vertical;outline:none;transition:border-color .2s;color:var(--muted)}
.teses-fundamentos:focus{border-color:var(--gold)}
.teses-editor-ftr{padding:12px 20px;border-top:1px solid var(--cream2);background:#fff;display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex-shrink:0}
.teses-sucesso-rate{display:flex;gap:4px;align-items:center}
.teses-star{font-size:20px;cursor:pointer;opacity:.3;transition:opacity .2s}
.teses-star.on{opacity:1}
.teses-status-badge{font-size:10px;font-weight:700;padding:3px 10px;border-radius:99px}
.teses-status-badge.aprovada{background:rgba(29,158,117,.12);color:var(--green)}
.teses-status-badge.pendente{background:rgba(201,168,76,.12);color:#8a6d00}
.teses-status-badge.refutada{background:rgba(226,75,74,.12);color:#c0392b}
/* Resultados IA */
.teses-ia-resultado{background:#fff;border:1.5px solid rgba(201,168,76,.3);border-radius:10px;padding:14px 16px;margin-bottom:16px;font-size:13px;line-height:1.7;color:var(--text)}
.teses-ia-resultado strong{color:var(--navy)}

.ws-assessor-badge{
  font-size:8px;font-weight:700;
  background:var(--gold);color:var(--navy);
  padding:1px 5px;border-radius:99px;
  margin-left:4px;vertical-align:middle;
}
.assessor-layout{
  display:flex;flex-direction:column;
  height:100%;overflow:hidden;
  background:#f8f7f4;
}
/* Header */
.assessor-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 18px;background:var(--navy);flex-shrink:0;
}
.assessor-header-left{display:flex;align-items:center;gap:12px}
.assessor-avatar{
  width:40px;height:40px;border-radius:50%;
  background:linear-gradient(135deg,var(--gold),var(--gold2));
  display:flex;align-items:center;justify-content:center;
  font-size:20px;flex-shrink:0;
}
.assessor-nome{font-size:15px;font-weight:700;color:#fff;font-family:'Playfair Display',serif}
.assessor-status{font-size:11px;color:rgba(255,255,255,.45);display:flex;align-items:center;gap:5px;margin-top:2px}
.assessor-online{
  width:7px;height:7px;border-radius:50%;
  background:#4ade80;display:inline-block;
  animation:pulse-green 2s ease-in-out infinite;
}
@keyframes pulse-green{0%,100%{opacity:1}50%{opacity:.4}}
.assessor-header-actions{display:flex;gap:8px}
.assessor-action-btn{
  background:rgba(255,255,255,.1);border:none;
  border-radius:7px;padding:6px 10px;cursor:pointer;
  font-size:14px;transition:background .15s;color:#fff;
}
.assessor-action-btn:hover{background:rgba(255,255,255,.18)}

/* Ações rápidas */
.assessor-quick-actions{
  padding:10px 16px;background:#fff;
  border-bottom:1px solid var(--cream2);flex-shrink:0;
}
.assessor-quick-ttl{
  font-size:9.5px;font-weight:700;color:var(--muted);
  text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px;
}
.assessor-quick-btns{display:flex;flex-wrap:wrap;gap:6px}
.assessor-quick-btn{
  padding:5px 12px;border-radius:999px;font-size:11.5px;
  border:1px solid var(--cream2);background:#fff;
  cursor:pointer;font-family:DM Sans,sans-serif;
  color:var(--text);transition:all .15s;white-space:nowrap;
}
.assessor-quick-btn:hover{
  background:var(--navy);color:var(--gold);border-color:var(--navy);
}

/* Mensagens */
.assessor-msgs{
  flex:1;overflow-y:auto;padding:16px;
  display:flex;flex-direction:column;gap:14px;
}
.assessor-msg{display:flex;gap:10px;align-items:flex-start}
.assessor-msg.user{flex-direction:row-reverse}
.assessor-msg-avatar{
  width:32px;height:32px;border-radius:50%;
  background:var(--navy);display:flex;align-items:center;
  justify-content:center;font-size:15px;flex-shrink:0;
}
.assessor-msg.user .assessor-msg-avatar{
  background:linear-gradient(135deg,var(--gold),var(--gold2));
  font-size:13px;font-weight:700;color:var(--navy);
}
.assessor-msg-body{max-width:78%}
.assessor-msg.user .assessor-msg-body{align-items:flex-end;display:flex;flex-direction:column}
.assessor-msg-texto{
  background:#fff;border:1px solid var(--cream2);
  border-radius:12px 12px 12px 2px;
  padding:10px 14px;font-size:13px;line-height:1.65;
  color:var(--text);
}
.assessor-msg.user .assessor-msg-texto{
  background:var(--navy);color:#fff;
  border-radius:12px 12px 2px 12px;border-color:var(--navy);
}
.assessor-msg-hora{
  font-size:10px;color:var(--muted);margin-top:4px;
  padding:0 4px;
}
/* Tipo áudio */
.assessor-msg-audio{
  display:flex;align-items:center;gap:8px;
  background:rgba(201,168,76,.1);border:1px solid rgba(201,168,76,.25);
  border-radius:8px;padding:8px 12px;font-size:12px;color:var(--navy);
}
.assessor-msg-audio-icon{font-size:18px}
/* Tipo arquivo */
.assessor-msg-arquivo{
  display:flex;align-items:center;gap:8px;
  background:rgba(56,189,248,.08);border:1px solid rgba(56,189,248,.2);
  border-radius:8px;padding:8px 12px;font-size:12px;color:#0c4a6e;
}
/* Typing indicator */
.assessor-typing{display:flex;align-items:center;gap:4px;padding:10px 14px}
.assessor-typing span{
  width:7px;height:7px;border-radius:50%;background:var(--muted);
  animation:assessor-dot .9s infinite;
}
.assessor-typing span:nth-child(2){animation-delay:.2s}
.assessor-typing span:nth-child(3){animation-delay:.4s}
@keyframes assessor-dot{0%,80%,100%{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}

/* Input area */
.assessor-input-area{
  padding:12px 14px;background:#fff;
  border-top:1px solid var(--cream2);flex-shrink:0;
}
.assessor-file-prev{
  display:flex;align-items:center;justify-content:space-between;
  background:rgba(56,189,248,.08);border:1px solid rgba(56,189,248,.2);
  border-radius:8px;padding:6px 12px;font-size:12px;color:#0c4a6e;
  margin-bottom:8px;
}
.assessor-file-prev button{
  background:none;border:none;cursor:pointer;font-size:14px;color:#0c4a6e;
}
.assessor-recording{
  display:flex;align-items:center;gap:8px;
  background:rgba(192,57,43,.06);border:1px solid rgba(192,57,43,.2);
  border-radius:8px;padding:7px 12px;margin-bottom:8px;
}
.assessor-rec-dot{
  width:10px;height:10px;border-radius:50%;background:#e74c3c;
  animation:assessor-rec-pulse 1s ease-in-out infinite;flex-shrink:0;
}
@keyframes assessor-rec-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}
#assessor-rec-timer{font-size:14px;font-weight:700;color:#e74c3c;font-family:monospace}
.assessor-input-row{display:flex;align-items:flex-end;gap:8px}
.assessor-btn-audio,.assessor-btn-file{
  width:38px;height:38px;border-radius:50%;border:1.5px solid var(--cream2);
  background:#fff;cursor:pointer;font-size:17px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;transition:all .15s;
}
.assessor-btn-audio:hover{border-color:var(--gold);background:rgba(201,168,76,.08)}
.assessor-btn-file:hover{border-color:#38bdf8;background:rgba(56,189,248,.06)}
.assessor-btn-audio.gravando{
  background:#e74c3c;border-color:#e74c3c;color:#fff;
  animation:assessor-rec-pulse .8s ease-in-out infinite;
}
.assessor-textarea{
  flex:1;border:1.5px solid var(--cream2);border-radius:10px;
  padding:9px 13px;font-size:13px;font-family:DM Sans,sans-serif;
  resize:none;outline:none;min-height:38px;max-height:120px;
  line-height:1.5;transition:border-color .15s;
}
.assessor-textarea:focus{border-color:var(--navy)}
.assessor-btn-send{
  width:38px;height:38px;border-radius:50%;border:none;
  background:var(--navy);color:var(--gold);cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;transition:all .15s;
}
.assessor-btn-send:hover{background:var(--navy2);transform:scale(1.05)}
.assessor-btn-send:disabled{opacity:.4;cursor:not-allowed;transform:none}

@media(max-width:767px){
  .assessor-quick-btns{gap:4px}
  .assessor-quick-btn{font-size:10.5px;padding:4px 10px}
  .assessor-msg-body{max-width:88%}
}


/* ── FIX DEFINITIVO: Portal, Financeiro, Workspace ── */
#screen-portal.active,
#screen-financeiro.active {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
  position: relative !important;
  visibility: visible !important;
  opacity: 1 !important;
  box-sizing: border-box !important;
}

/* Workspace: flex column para empilhar header + tabs + layout (v58) */
#screen-workspace.active {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
  position: relative !important;
  visibility: visible !important;
  opacity: 1 !important;
  box-sizing: border-box !important;
}

/* ── SUB-ABAS TRABALHISTAS ── */
.trab-abas{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:16px;padding-bottom:10px;border-bottom:2px solid var(--cream2)}
.trab-aba{padding:6px 13px;border-radius:6px 6px 0 0;font-size:11px;font-weight:600;border:1px solid var(--cream2);border-bottom:none;background:#fff;color:var(--muted);cursor:pointer;font-family:DM Sans,sans-serif;transition:all .15s;white-space:nowrap}
.trab-aba:hover{color:var(--green)}
.trab-aba.active{background:var(--green);color:#fff;border-color:var(--green)}
.trab-painel{display:none}
.trab-painel.active{display:block}
@media(max-width:767px){.trab-aba{font-size:10px;padding:5px 9px}}
.cert-card{display:block;background:#fff;border:1px solid var(--cream2);border-radius:8px;padding:12px 14px;text-decoration:none;color:inherit;transition:all .15s;cursor:pointer}
.cert-card:hover{border-color:var(--gold);background:rgba(201,168,76,.04);transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.04)}
.cert-card-ttl{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:3px;line-height:1.3}
.cert-card-sub{font-size:11px;color:var(--muted);line-height:1.4}


/* ── MODELOS PRÓPRIOS — LAYOUT MELHORADO ── */
.mod-card-top{padding:16px 16px 12px;flex:1}
.mod-card-tipo{display:inline-flex;align-items:center;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 8px;border-radius:4px;margin-bottom:8px}
.mt-contrato{background:#e8f0fe;color:#1a3a6e}
.mt-peticao{background:#e6f4ea;color:#1a5c2e}
.mt-parecer{background:#fef3e2;color:#7a4a00}
.mt-outro{background:var(--cream2);color:var(--muted)}
.mod-card-titulo{font-size:13px;font-weight:600;color:var(--navy);line-height:1.4;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mod-card-data{font-size:11px;color:var(--muted)}
.mod-card-body{padding:12px 16px;border-top:1px solid var(--cream2);background:var(--cream);display:flex;align-items:center;justify-content:space-between}
.mod-usos{font-size:11px;color:var(--muted)}
.mod-btn-usar{background:var(--navy);color:#fff;border:none;border-radius:6px;padding:5px 14px;font-size:11px;font-weight:600;cursor:pointer;font-family:DM Sans,sans-serif;transition:background .15s}
.mod-btn-usar:hover{background:var(--navy2)}
.mod-empty{text-align:center;padding:60px 20px;grid-column:1/-1}


/* ══════════════════════════════════════════════
   MODAL DE PRIVACIDADE E LGPD
   ══════════════════════════════════════════════ */
.privacy-overlay{
  position:fixed;inset:0;
  background:rgba(10,18,30,.92);
  z-index:10000;
  display:none;align-items:center;justify-content:center;
  padding:16px;
}
.privacy-overlay.open{ display:flex; }
.privacy-card{
  background:#fff;border-radius:16px;
  width:100%;max-width:640px;
  max-height:90vh;
  display:flex;flex-direction:column;
  overflow:hidden;
  box-shadow:0 24px 64px rgba(0,0,0,.4);
}
.privacy-header{
  background:var(--navy);padding:20px 24px;flex-shrink:0;
}
.privacy-header-top{
  display:flex;align-items:center;gap:12px;margin-bottom:4px;
}
.privacy-icon{
  width:38px;height:38px;border-radius:9px;
  background:rgba(201,168,76,.2);border:1px solid rgba(201,168,76,.3);
  display:flex;align-items:center;justify-content:center;
  font-size:18px;flex-shrink:0;
}
.privacy-titulo{
  font-family:'Playfair Display',serif;
  font-size:18px;font-weight:700;color:#fff;
}
.privacy-subtitulo{
  font-size:11px;color:rgba(255,255,255,.45);margin-top:2px;
}
.privacy-body{
  flex:1;overflow-y:auto;padding:24px;
  font-size:13px;line-height:1.8;color:var(--text);
}
.privacy-body::-webkit-scrollbar{width:4px}
.privacy-body::-webkit-scrollbar-thumb{background:var(--cream2);border-radius:2px}
.privacy-section{
  margin-bottom:20px;
  padding-bottom:20px;
  border-bottom:1px solid var(--cream2);
}
.privacy-section:last-child{
  border-bottom:none;margin-bottom:0;padding-bottom:0;
}
.privacy-section-titulo{
  font-size:12px;font-weight:700;
  text-transform:uppercase;letter-spacing:.07em;
  color:var(--navy);margin-bottom:8px;
  display:flex;align-items:center;gap:6px;
}
.privacy-section-titulo span{ font-size:15px; }
.privacy-alerta{
  background:#fef3e2;border:1px solid rgba(201,168,76,.35);
  border-left:4px solid var(--gold);
  border-radius:8px;padding:12px 14px;
  font-size:12px;color:#7a5900;line-height:1.65;
  margin-bottom:16px;
}
.privacy-alerta strong{color:#5a3800}
.privacy-item{
  display:flex;align-items:flex-start;gap:9px;
  margin-bottom:8px;font-size:13px;color:var(--text);
}
.privacy-item-dot{
  width:6px;height:6px;border-radius:50%;
  background:var(--gold);flex-shrink:0;margin-top:7px;
}
.privacy-footer{
  padding:16px 24px;border-top:1px solid var(--cream2);
  background:var(--cream);flex-shrink:0;
}
.privacy-scroll-aviso{
  font-size:11px;color:var(--muted);
  text-align:center;margin-bottom:12px;
  transition:opacity .3s;
}
.privacy-checkboxes{
  display:flex;flex-direction:column;gap:10px;
  margin-bottom:14px;
}
.privacy-check-label{
  display:flex;align-items:flex-start;gap:10px;
  font-size:12px;color:var(--text);line-height:1.6;
  cursor:pointer;
}
.privacy-check-label input[type="checkbox"]{
  width:16px;height:16px;
  accent-color:var(--navy);
  flex-shrink:0;margin-top:2px;cursor:pointer;
}
.privacy-btn-aceitar{
  width:100%;padding:13px;
  background:var(--navy);color:#fff;border:none;
  border-radius:10px;font-family:DM Sans,sans-serif;
  font-size:14px;font-weight:600;cursor:pointer;
  transition:all .2s;
  display:flex;align-items:center;justify-content:center;gap:8px;
}
.privacy-btn-aceitar:hover:not(:disabled){background:var(--navy2)}
.privacy-btn-aceitar:disabled{
  opacity:.45;cursor:not-allowed;
}
.privacy-btn-aceitar.aceito{
  background:#1a7a3c;
}
.privacy-versao{
  font-size:10px;color:var(--muted);text-align:center;
  margin-top:8px;
}
/* Badge no header do chat flutuante */
.ia-cw-privacy-badge{
  font-size:9px;font-weight:600;
  background:rgba(201,168,76,.15);
  color:var(--gold);padding:2px 7px;
  border-radius:999px;border:1px solid rgba(201,168,76,.25);
  white-space:nowrap;
}
@media(max-width:767px){
  .privacy-card{max-height:95vh;border-radius:12px;}
  .privacy-body{padding:16px;}
  .privacy-header{padding:16px;}
  .privacy-footer{padding:12px 16px;}
}

/* ── INTEGRAÇÃO DE REUNIÃO — Atendimento ── */
.atend-integr-btn.meet  { color:#1a73e8; border-color:rgba(26,115,232,.3); }
.atend-integr-btn.meet:hover  { background:rgba(26,115,232,.08); border-color:#1a73e8; }
.atend-integr-btn.zoom  { color:#2d8cff; border-color:rgba(45,140,255,.3); }
.atend-integr-btn.zoom:hover  { background:rgba(45,140,255,.08); border-color:#2d8cff; }
.atend-integr-btn.teams { color:#6264a7; border-color:rgba(98,100,167,.3); }
.atend-integr-btn.teams:hover { background:rgba(98,100,167,.08); border-color:#6264a7; }
.atend-integr-btn.whats { color:#25d366; border-color:rgba(37,211,102,.3); }
.atend-integr-btn.whats:hover { background:rgba(37,211,102,.08); border-color:#25d366; }
.atend-integr-btn.ativo { opacity:1; font-weight:700; }

.atend-link-area{
  margin-top:12px;padding-top:12px;
  border-top:1px solid var(--cream2);
}
.atend-link-label{
  font-size:11px;font-weight:600;color:var(--navy);
  margin-bottom:6px;
}
.atend-link-row{
  display:flex;gap:6px;align-items:center;
}
.atend-link-input{
  flex:1;padding:7px 10px;border:1.5px solid var(--cream2);
  border-radius:7px;font-size:12px;font-family:DM Sans,sans-serif;
  outline:none;color:var(--text);
  transition:border-color .15s;
}
.atend-link-input:focus{ border-color:var(--gold); }
.atend-link-copy{
  padding:7px 10px;border:1.5px solid var(--cream2);
  border-radius:7px;background:#fff;cursor:pointer;
  font-size:13px;transition:all .15s;
}
.atend-link-copy:hover{ border-color:var(--gold); }
.atend-link-whats{
  width:100%;margin-top:8px;padding:8px;
  background:rgba(37,211,102,.1);border:1.5px solid rgba(37,211,102,.3);
  border-radius:7px;color:#1a9e4a;font-size:12px;font-weight:600;
  font-family:DM Sans,sans-serif;cursor:pointer;
  transition:all .15s;
}
.atend-link-whats:hover{ background:rgba(37,211,102,.2); }
.atend-plat-status{
  display:flex;align-items:center;gap:8px;
  margin-top:10px;padding:8px 10px;
  background:rgba(26,122,60,.06);border-radius:7px;
  border-left:3px solid var(--green);
  font-size:11px;
}
.atend-plat-badge{
  font-size:10px;color:var(--green);font-weight:600;
  margin-left:auto;
}

/* ── CONTROLES CRONÔMETRO INLINE ── */
.atend-crono-btns{
  display:flex;gap:6px;margin-left:auto;
}
.atend-crono-btn{
  padding:4px 10px;border-radius:6px;
  font-size:11px;font-weight:600;
  font-family:DM Sans,sans-serif;
  cursor:pointer;border:none;
  transition:all .15s;
}
.atend-crono-btn.pause{
  background:rgba(230,126,34,.12);
  color:#c0780a;border:1px solid rgba(230,126,34,.3);
}
.atend-crono-btn.pause:hover{ background:rgba(230,126,34,.22); }
.atend-crono-btn.pause.retomar{
  background:rgba(26,122,60,.12);
  color:#1a7a3c;border-color:rgba(26,122,60,.3);
}
.atend-crono-btn.stop{
  background:rgba(231,76,60,.12);
  color:#c0392b;border:1px solid rgba(231,76,60,.3);
}
.atend-crono-btn.stop:hover{ background:rgba(231,76,60,.22); }

/* ── GRUPOS DE TRIBUNAIS NA SELEÇÃO ── */
.jur-trib-sup  { border-color:rgba(15,30,53,.3) !important; }
.jur-trib-sup.active { background:var(--navy) !important; }
.jur-trib-trf  { border-color:rgba(41,128,185,.3); color:#2980b9; }
.jur-trib-trf:hover:not(.active) { background:rgba(41,128,185,.08); }
.jur-trib-trf.active { background:#2980b9 !important; color:#fff !important; border-color:#2980b9 !important; }
.jur-trib-trt  { border-color:rgba(39,174,96,.3); color:#1a7a3c; }
.jur-trib-trt:hover:not(.active) { background:rgba(39,174,96,.08); }
.jur-trib-trt.active { background:#27ae60 !important; color:#fff !important; border-color:#27ae60 !important; }
.jur-trib-tj   { border-color:rgba(142,68,173,.3); color:#7d3c98; }
.jur-trib-tj:hover:not(.active) { background:rgba(142,68,173,.08); }
.jur-trib-tj.active { background:#8e44ad !important; color:#fff !important; border-color:#8e44ad !important; }
.jur-trib-tre  { border-color:rgba(192,57,43,.3); color:#c0392b; }
.jur-trib-tre:hover:not(.active) { background:rgba(192,57,43,.08); }
.jur-trib-tre.active { background:#c0392b !important; color:#fff !important; border-color:#c0392b !important; }
.jur-trib-mil  { border-color:rgba(100,100,100,.3); color:#555; }
.jur-trib-mil:hover:not(.active) { background:rgba(100,100,100,.08); }
.jur-trib-mil.active { background:#555 !important; color:#fff !important; border-color:#555 !important; }
.jur-trib-sep  { border:none !important; background:none !important; color:var(--cream2) !important; cursor:default !important; padding:0 2px !important; }
.jur-tribunais { gap:4px !important; }

.jur-sel-grupo{
  padding:3px 8px;border-radius:5px;font-size:10px;font-weight:600;
  border:1px solid var(--cream2);background:#f5f5f0;cursor:pointer;
  color:var(--muted);font-family:DM Sans,sans-serif;
  transition:all .15s;white-space:nowrap;
}
.jur-sel-grupo:hover{ background:var(--cream2);color:var(--navy); }

/* ══════════════════════════════════════════════════════ */
/* ABA MODELOS — CSS                                      */
/* ══════════════════════════════════════════════════════ */
#screen-modelos.active{ display:flex!important; }
.mod-layout{
  display:flex; height:100%; overflow:hidden;
  background:var(--cream);
}

/* ── SIDEBAR ── */
.mod-sidebar{
  width:220px; min-width:220px; background:var(--navy);
  display:flex; flex-direction:column;
  border-right:1px solid rgba(255,255,255,.08);
  overflow-y:auto;
}
.mod-sidebar-header{
  padding:20px 16px 12px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.mod-sidebar-ttl{
  display:flex;align-items:center;gap:6px;
  font-size:16px; font-weight:700; color:#fff;
  font-family:'Playfair Display',serif;
}
.mod-sidebar-sub{
  font-size:10px; color:rgba(255,255,255,.4);
  margin-top:3px;
}
.mod-search-wrap{ padding:10px 12px; }
.mod-search-input{
  width:100%; box-sizing:border-box;
  padding:7px 10px; border-radius:7px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.08);
  color:#fff; font-size:12px;
  font-family:DM Sans,sans-serif;
  outline:none;
}
.mod-search-input::placeholder{ color:rgba(255,255,255,.35); }
.mod-search-input:focus{ border-color:var(--gold); }

.mod-cats{ padding:0 8px; flex:1; }
.mod-cat-item{
  display:flex; align-items:center; gap:8px;
  padding:8px 10px; border-radius:7px;
  cursor:pointer; transition:all .15s;
  margin-bottom:2px;
}
.mod-cats-divisor{
  font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;
  color:var(--gold);padding:10px 12px 4px;margin-top:4px;
  border-top:1px solid rgba(201,168,76,.2);
}
.mod-gerador-pop-btn{
  display:flex;align-items:center;gap:10px;
  margin:10px 10px 6px;padding:10px 12px;
  background:linear-gradient(135deg,rgba(201,168,76,.15),rgba(201,168,76,.06));
  border:1.5px solid rgba(201,168,76,.35);border-radius:10px;
  cursor:pointer;transition:all .15s;
}
.mod-gerador-pop-btn:hover{
  background:linear-gradient(135deg,rgba(201,168,76,.25),rgba(201,168,76,.12));
  border-color:var(--gold);
}
.mod-card-actions{display:flex;gap:6px;margin-top:4px;}
.mod-btn-usar{
  flex:1;padding:7px 6px;font-size:11px;font-weight:600;
  border:1.5px solid var(--navy);border-radius:7px;
  background:transparent;color:var(--navy);cursor:pointer;
  font-family:DM Sans,sans-serif;transition:all .15s;
}
.mod-btn-usar:hover{background:var(--navy);color:#fff;}
.mod-btn-ia{
  flex:1;padding:7px 6px;font-size:11px;font-weight:600;
  border:1.5px solid var(--gold);border-radius:7px;
  background:linear-gradient(135deg,rgba(201,168,76,.12),rgba(201,168,76,.06));
  color:var(--navy);cursor:pointer;
  font-family:DM Sans,sans-serif;transition:all .15s;
}
.mod-btn-ia:hover{background:var(--gold);color:var(--navy);}
.mod-cat-item:hover{ background:rgba(255,255,255,.08); }
.mod-cat-item.active{ background:rgba(201,168,76,.15); }
.mod-cat-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;font-size:14px}
.mod-cat-nome{ font-size:12px; font-weight:500; color:rgba(255,255,255,.8); flex:1; }
.mod-cat-item.active .mod-cat-nome{ color:var(--gold); }
.mod-cat-count{
  font-size:10px; font-weight:600;
  background:rgba(255,255,255,.12);
  color:rgba(255,255,255,.5);
  padding:1px 6px; border-radius:10px;
}
.mod-cat-item.active .mod-cat-count{
  background:rgba(201,168,76,.2); color:var(--gold);
}
.mod-import-btn{
  margin:10px 12px 16px;
  padding:9px 12px; border-radius:8px;
  background:rgba(201,168,76,.15);
  border:1px solid rgba(201,168,76,.3);
  color:var(--gold); font-size:11px;
  font-weight:600; cursor:pointer;
  text-align:center; transition:all .15s;
  font-family:DM Sans,sans-serif;
}
.mod-import-btn:hover{ background:rgba(201,168,76,.25); }

/* ── MAIN ── */
.mod-main{
  flex:1; overflow-y:auto;
  background:var(--cream); padding:24px;
  position:relative;
}
.mod-main-header{
  display:flex; justify-content:space-between;
  align-items:flex-start; margin-bottom:20px;
}
.mod-main-ttl{
  font-size:22px; font-weight:700;
  color:var(--navy);
  font-family:'Playfair Display',serif;
}
.mod-main-sub{ font-size:12px; color:var(--muted); margin-top:3px; }
.mod-sort-sel{
  padding:6px 10px; border-radius:7px;
  border:1px solid var(--cream2);
  background:#fff; font-size:12px;
  font-family:DM Sans,sans-serif;
  color:var(--navy); outline:none; cursor:pointer;
}

/* ── GRADE DE CARDS ── */
.mod-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(200px,1fr));
  gap:12px;
}
.mod-card{
  background:#fff; border:1px solid var(--cream2);
  border-radius:10px; padding:16px;
  cursor:pointer; transition:all .2s;
  display:flex; flex-direction:column; gap:8px;
}
.mod-card:hover{
  border-color:var(--gold);
  box-shadow:0 4px 16px rgba(15,30,53,.08);
  transform:translateY(-1px);
}
.mod-card-icon{ font-size:24px; }
.mod-card-titulo{
  font-size:13px; font-weight:600;
  color:var(--navy); line-height:1.4;
}
.mod-card-cat{
  font-size:10px; font-weight:600;
  padding:2px 8px; border-radius:10px;
  display:inline-block; width:fit-content;
}
.mod-card-campos{
  font-size:11px; color:var(--muted);
}
/* cores por categoria */
.mod-cat-peticao   { background:rgba(41,128,185,.1); color:#2980b9; }
.mod-cat-contrato  { background:rgba(39,174,96,.1);  color:#1a7a3c; }
.mod-cat-instrumento{ background:rgba(142,68,173,.1);color:#7d3c98; }
.mod-cat-notificacao{ background:rgba(230,126,34,.1);color:#c07820; }
.mod-cat-recurso   { background:rgba(231,76,60,.1);  color:#c0392b; }
.mod-cat-acordo    { background:rgba(26,188,156,.1); color:#1a7a6e; }
.mod-cat-outro     { background:rgba(100,100,100,.1);color:#555; }
.mod-empty{
  grid-column:1/-1; text-align:center;
  padding:60px 20px; color:var(--muted);
}

/* ── EDITOR ── */
.mod-editor-layout{
  display:grid; grid-template-columns:380px 1fr;
  gap:20px; height:100%;
}
.mod-form-col{
  background:#fff; border-radius:12px;
  border:1px solid var(--cream2);
  display:flex; flex-direction:column;
  overflow:hidden;
}
.mod-form-header{
  padding:16px; border-bottom:1px solid var(--cream2);
  display:flex; align-items:center; gap:12px;
}
.mod-back-btn{
  padding:6px 12px; border-radius:7px;
  border:1px solid var(--cream2);
  background:#fff; font-size:12px;
  cursor:pointer; color:var(--muted);
  font-family:DM Sans,sans-serif;
  white-space:nowrap; transition:all .15s;
}
.mod-back-btn:hover{ border-color:var(--navy); color:var(--navy); }
.mod-form-ttl{
  font-size:14px; font-weight:700; color:var(--navy);
}
.mod-form-cat{ font-size:11px; color:var(--muted); margin-top:2px; }
.mod-campos{ flex:1; overflow-y:auto; padding:16px; }
.mod-campo-group{ margin-bottom:14px; }
.mod-campo-label{
  display:block; font-size:11px; font-weight:600;
  color:var(--navy); margin-bottom:5px;
  text-transform:uppercase; letter-spacing:.04em;
}
.mod-campo-input, .mod-campo-textarea{
  width:100%; box-sizing:border-box;
  padding:8px 10px; border-radius:7px;
  border:1.5px solid var(--cream2);
  font-size:13px; font-family:DM Sans,sans-serif;
  color:var(--navy); outline:none; transition:border-color .15s;
  background:#fff;
}
.mod-campo-input:focus, .mod-campo-textarea:focus{
  border-color:var(--gold);
}
.mod-campo-textarea{ resize:vertical; min-height:60px; }
.mod-campos-ttl{
  font-size:11px; font-weight:600; color:var(--muted);
  text-transform:uppercase; letter-spacing:.06em;
  margin-bottom:12px;
}
.mod-form-actions{
  padding:12px 16px; border-top:1px solid var(--cream2);
  display:flex; gap:8px;
}
.mod-action-btn{
  flex:1; padding:8px; border-radius:7px;
  font-size:11px; font-weight:600;
  font-family:DM Sans,sans-serif; cursor:pointer;
  transition:all .15s; border:1.5px solid;
}
.mod-action-btn.copy{
  background:#fff; border-color:var(--cream2); color:var(--navy);
}
.mod-action-btn.copy:hover{ border-color:var(--navy); }
.mod-action-btn.docx{
  background:rgba(41,128,185,.08);
  border-color:rgba(41,128,185,.3); color:#2980b9;
}
.mod-action-btn.docx:hover{ background:rgba(41,128,185,.15); }
.mod-action-btn.save{
  background:var(--navy); border-color:var(--navy); color:var(--gold);
}
.mod-action-btn.save:hover{ background:var(--navy2); }

/* ── PREVIEW ── */
.mod-preview-col{
  background:#fff; border-radius:12px;
  border:1px solid var(--cream2);
  display:flex; flex-direction:column;
  overflow:hidden;
}
.mod-preview-header{
  padding:12px 16px; border-bottom:1px solid var(--cream2);
  display:flex; justify-content:space-between; align-items:center;
  font-size:12px; font-weight:600; color:var(--navy);
}
.mod-preview-badge{
  font-size:10px; color:var(--muted);
  background:var(--cream); padding:2px 8px;
  border-radius:10px;
}
.mod-preview-body{
  flex:1; overflow-y:auto; padding:24px 28px;
  font-family:'Times New Roman',serif;
  font-size:13px; line-height:1.9; color:#111;
  white-space:pre-wrap; word-break:break-word;
}
.mod-preview-campo-vazio{
  background:rgba(201,168,76,.15);
  border-bottom:1px solid var(--gold);
  color:var(--gold); padding:0 2px;
  font-style:italic; font-size:11px;
}
.mod-preview-campo-ok{
  font-weight:600; color:var(--navy);
}

/* ── MODAL IMPORTAÇÃO ── */
.mod-modal-overlay{
  position:fixed; inset:0; background:rgba(0,0,0,.5);
  z-index:9999; display:flex;
  align-items:center; justify-content:center;
}
.mod-modal{
  background:#fff; border-radius:14px;
  width:500px; max-width:90vw;
  max-height:80vh; overflow-y:auto;
  box-shadow:0 20px 60px rgba(0,0,0,.2);
}
.mod-modal-header{
  padding:20px 24px 0;
  display:flex; justify-content:space-between; align-items:center;
}
.mod-modal-ttl{
  display:flex;align-items:center;gap:6px;
  font-size:18px; font-weight:700; color:var(--navy);
  font-family:'Playfair Display',serif;
}
.mod-modal-close{
  background:none; border:none; font-size:18px;
  cursor:pointer; color:var(--muted); padding:4px 8px;
}
.mod-modal-body{ padding:20px 24px 24px; }
.mod-import-steps{
  display:flex; gap:0; margin-bottom:20px;
}
.mod-import-step{
  flex:1; display:flex; align-items:center; gap:10px;
  padding:10px; border-radius:8px;
  background:var(--cream); opacity:.5;
}
.mod-import-step.active{ opacity:1; background:rgba(201,168,76,.1); }
.mod-step-num{
  width:24px; height:24px; border-radius:50%;
  background:var(--cream2); color:var(--muted);
  font-size:11px; font-weight:700;
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
}
.mod-import-step.active .mod-step-num{
  background:var(--gold); color:#fff;
}
.mod-step-ttl{ font-size:11px; font-weight:600; color:var(--navy); }
.mod-step-sub{ font-size:10px; color:var(--muted); margin-top:1px; }
.mod-import-label{
  display:block; font-size:12px; font-weight:600;
  color:var(--navy); margin-bottom:6px;
}
.mod-import-input{
  width:100%; box-sizing:border-box;
  padding:10px 12px; border-radius:8px;
  border:1.5px solid var(--cream2);
  font-size:13px; font-family:DM Sans,sans-serif;
  outline:none; transition:border-color .15s;
}
.mod-import-input:focus{ border-color:var(--gold); }
.mod-import-dica{
  font-size:11px; color:var(--muted);
  margin-top:8px; line-height:1.5;
}
.mod-import-prog-bar{
  height:8px; background:var(--cream2);
  border-radius:4px; overflow:hidden; margin-bottom:8px;
}
.mod-import-prog-fill{
  height:100%; background:var(--gold);
  border-radius:4px; transition:width .3s;
}
.mod-import-prog-txt{ font-size:12px; color:var(--muted); }
.mod-import-log{
  margin-top:12px; font-size:11px; color:var(--muted);
  max-height:150px; overflow-y:auto;
  background:var(--cream); border-radius:6px;
  padding:8px 10px; font-family:monospace;
}
.mod-import-success{
  text-align:center; padding:20px 0;
}
.mod-import-success-ttl{
  font-size:18px; font-weight:700;
  color:var(--navy); margin-top:10px;
}
.mod-import-success-sub{
  font-size:13px; color:var(--muted); margin-top:6px;
}


/* ══════════════════════════════════════════════════════════
   VISUAL LAW — CSS Global
   Linha do Tempo · Análise de Risco · Badges · Botões IA
══════════════════════════════════════════════════════════ */

/* ── BADGE DE PRIVACIDADE ─────────────────────────────── */
.vl-privacy-badge{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(26,122,60,.08);
  border:1px solid rgba(26,122,60,.2);
  border-radius:99px;padding:4px 12px;
  font-size:11px;font-weight:600;color:var(--green);
  font-family:DM Sans,sans-serif;
}

/* ── BOTÕES VISUAL LAW (flutuam no preview) ───────────── */
.vl-action-bar{
  display:flex;gap:6px;flex-wrap:wrap;
  padding:10px 16px;
  background:linear-gradient(to bottom,rgba(248,245,239,0),var(--cream) 40%);
  border-top:1px solid var(--cream2);
  position:sticky;bottom:0;
}
.vl-btn{
  display:inline-flex;align-items:center;gap:6px;
  padding:7px 14px;border-radius:8px;
  font-size:12px;font-weight:600;
  font-family:DM Sans,sans-serif;
  cursor:pointer;transition:all .15s;
  border:1.5px solid;
}
.vl-btn-persuasivo{
  background:rgba(142,68,173,.08);
  border-color:rgba(142,68,173,.3);
  color:#7d3c98;
}
.vl-btn-persuasivo:hover{ background:rgba(142,68,173,.15); }
.vl-btn-risco{
  background:rgba(231,76,60,.08);
  border-color:rgba(231,76,60,.3);
  color:#c0392b;
}
.vl-btn-risco:hover{ background:rgba(231,76,60,.15); }
.vl-btn-resumo{
  background:rgba(41,128,185,.08);
  border-color:rgba(41,128,185,.3);
  color:#2980b9;
}
.vl-btn-resumo:hover{ background:rgba(41,128,185,.15); }
.vl-btn-timeline{
  background:rgba(201,168,76,.1);
  border-color:rgba(201,168,76,.3);
  color:#8a6a00;
}
.vl-btn-timeline:hover{ background:rgba(201,168,76,.2); }
.vl-btn-clausula{
  background:rgba(26,122,60,.08);
  border-color:rgba(26,122,60,.25);
  color:var(--green);
}
.vl-btn-clausula:hover{ background:rgba(26,122,60,.15); }

/* ── CYTOSCAPE CANVAS INTERATIVO ─────────────────────────── */
.vl-cy-toolbar{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 16px;background:#fff;
  border:1px solid var(--cream2);border-radius:12px 12px 0 0;
  border-bottom:none;flex-wrap:wrap;gap:8px;
}
.vl-cy-legenda{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.vl-cy-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.vl-cy-btn{
  padding:7px 13px;border-radius:7px;border:1.5px solid var(--cream2);
  background:#fff;font-size:12px;font-weight:600;
  font-family:DM Sans,sans-serif;cursor:pointer;color:var(--navy);
  transition:all .15s;white-space:nowrap;
}
.vl-cy-btn:hover{background:var(--cream);border-color:var(--navy)}
.vl-cy-btn-gold{
  background:linear-gradient(135deg,var(--gold),var(--gold2));
  color:var(--navy);border-color:var(--gold)!important;
}
.vl-cy-btn-gold:hover{opacity:.9;transform:translateY(-1px)}
.vl-cy-wrap{
  position:relative;
  border:1px solid var(--cream2);
  border-radius:0 0 12px 12px;
  overflow:hidden;
  background:#fafafa;
  background-image:
    linear-gradient(rgba(0,0,0,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,0,0,.04) 1px, transparent 1px);
  background-size:32px 32px;
  isolation:isolate;
}
#vl-cy-canvas{
  width:100%;
  height:520px;
  position:relative;
  z-index:1;
}

/* ── PAINEL VISUAL LAW (aparece abaixo do preview) ─────── */
.vl-painel{
  margin-top:16px;border-radius:12px;
  border:1.5px solid var(--cream2);
  background:#fff;overflow:hidden;
  animation:vlFadeIn .25s ease;
}
@keyframes vlFadeIn{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:translateY(0)}
}
.vl-painel-header{
  padding:14px 18px;
  display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid var(--cream2);
}
.vl-painel-titulo{
  font-size:14px;font-weight:700;color:var(--navy);
  font-family:'Playfair Display',serif;
  display:flex;align-items:center;gap:8px;
}
.vl-painel-fechar{
  background:none;border:none;
  font-size:16px;cursor:pointer;
  color:var(--muted);padding:2px 6px;
}
.vl-painel-body{ padding:18px; }

/* ── ANÁLISE DE RISCO ────────────────────────────────── */
.vl-risco-loading{
  display:flex;align-items:center;gap:12px;
  padding:20px;color:var(--muted);font-size:13px;
}
.vl-risco-spinner{
  width:20px;height:20px;border-radius:50%;
  border:2px solid var(--cream2);
  border-top-color:var(--red);
  animation:spin .8s linear infinite;
}
.vl-risco-section{ margin-bottom:16px; }
.vl-risco-section-ttl{
  font-size:11px;font-weight:700;
  text-transform:uppercase;letter-spacing:.06em;
  margin-bottom:8px;display:flex;align-items:center;gap:6px;
}
.vl-risco-ok .vl-risco-section-ttl{ color:var(--green); }
.vl-risco-atencao .vl-risco-section-ttl{ color:#c07820; }
.vl-risco-faltando .vl-risco-section-ttl{ color:var(--red); }
.vl-risco-sugestao .vl-risco-section-ttl{ color:#2980b9; }
.vl-risco-item{
  display:flex;align-items:flex-start;gap:8px;
  padding:8px 10px;border-radius:7px;
  margin-bottom:4px;font-size:12px;line-height:1.6;
}
.vl-risco-ok .vl-risco-item{ background:rgba(26,122,60,.05); color:var(--text); }
.vl-risco-atencao .vl-risco-item{ background:rgba(230,126,34,.07); color:var(--text); }
.vl-risco-faltando .vl-risco-item{ background:rgba(231,76,60,.07); color:var(--text); }
.vl-risco-sugestao .vl-risco-item{ background:rgba(41,128,185,.06); color:var(--text); }
.vl-risco-dot{ font-size:14px;flex-shrink:0;margin-top:1px; }
.vl-risco-score{
  display:flex;align-items:center;gap:10px;
  padding:12px 14px;border-radius:8px;
  background:var(--cream);margin-bottom:16px;
}
.vl-risco-score-num{
  font-family:'Playfair Display',serif;
  font-size:28px;font-weight:700;
}
.vl-risco-score-label{ font-size:12px;color:var(--muted); }
.vl-risco-score-bar{
  flex:1;height:8px;background:var(--cream2);
  border-radius:4px;overflow:hidden;
}
.vl-risco-score-fill{
  height:100%;border-radius:4px;
  transition:width .5s ease;
}

/* ── TEXTO PERSUASIVO ────────────────────────────────── */
.vl-persuasivo-original{
  background:rgba(231,76,60,.05);
  border-left:3px solid rgba(231,76,60,.3);
  padding:10px 14px;border-radius:0 7px 7px 0;
  font-size:13px;color:var(--muted);margin-bottom:12px;
  font-style:italic;
}
.vl-persuasivo-novo{
  background:rgba(142,68,173,.05);
  border-left:3px solid rgba(142,68,173,.3);
  padding:10px 14px;border-radius:0 7px 7px 0;
  font-size:13px;color:var(--text);margin-bottom:12px;
  line-height:1.8;
}
.vl-persuasivo-acoes{
  display:flex;gap:8px;margin-top:12px;
}

/* ── LINHA DO TEMPO ──────────────────────────────────── */
.vl-timeline-wrap{
  overflow-x:auto;padding:20px 0 8px;
}
.vl-timeline{
  display:flex;align-items:flex-start;
  min-width:max-content;padding:0 20px;
  gap:0;position:relative;
}
.vl-timeline::before{
  content:'';position:absolute;
  top:24px;left:20px;right:20px;
  height:2px;background:var(--cream2);
  z-index:0;
}
.vl-tl-item{
  display:flex;flex-direction:column;
  align-items:center;gap:8px;
  min-width:120px;max-width:140px;
  position:relative;z-index:1;
  padding:0 8px;
}
.vl-tl-dot{
  width:14px;height:14px;border-radius:50%;
  border:2px solid #fff;
  box-shadow:0 0 0 2px currentColor;
  flex-shrink:0;
}
.vl-tl-dot.datajud { color:#2980b9; background:#2980b9; }
.vl-tl-dot.manual  { color:var(--green); background:var(--green); }
.vl-tl-dot.upload  { color:#7d3c98; background:#7d3c98; }
.vl-tl-dot.prazo   { color:var(--red); background:var(--red); }
.vl-tl-dot.audiencia{ color:#c07820; background:#c07820; }
.vl-tl-dot.sentenca { color:var(--navy); background:var(--navy); }
.vl-tl-data{
  font-size:10px;font-weight:600;color:var(--muted);
  letter-spacing:.04em;text-align:center;
  white-space:nowrap;
}
.vl-tl-titulo{
  font-size:11px;font-weight:600;color:var(--navy);
  text-align:center;line-height:1.4;
}
.vl-tl-fonte{
  font-size:9px;padding:1px 6px;border-radius:99px;
  font-weight:600;
}
.vl-tl-fonte.datajud{ background:rgba(41,128,185,.1);color:#2980b9; }
.vl-tl-fonte.manual { background:rgba(26,122,60,.1);color:var(--green); }
.vl-tl-fonte.upload { background:rgba(142,68,173,.1);color:#7d3c98; }
.vl-tl-add-btn{
  display:flex;flex-direction:column;align-items:center;gap:8px;
  min-width:80px;padding:0 8px;cursor:pointer;
  position:relative;z-index:1;
}
.vl-tl-add-circle{
  width:24px;height:24px;border-radius:50%;
  border:2px dashed var(--cream2);
  display:flex;align-items:center;justify-content:center;
  font-size:14px;color:var(--muted);
  transition:all .15s;background:#fff;
  margin-top:3px;
}
.vl-tl-add-btn:hover .vl-tl-add-circle{
  border-color:var(--gold);color:var(--gold);
}
.vl-tl-add-label{
  font-size:10px;color:var(--muted);text-align:center;
  font-weight:500;
}
/* Form de novo evento */
.vl-tl-form{
  background:var(--cream);border-radius:8px;
  padding:12px;margin-top:12px;
  border:1px solid var(--cream2);
}
.vl-tl-form input, .vl-tl-form select{
  width:100%;padding:7px 10px;border-radius:7px;
  border:1.5px solid var(--cream2);
  font-size:12px;font-family:DM Sans,sans-serif;
  margin-bottom:6px;outline:none;background:#fff;
}
.vl-tl-form input:focus, .vl-tl-form select:focus{
  border-color:var(--gold);
}
/* Legenda */
.vl-tl-legenda{
  display:flex;gap:12px;flex-wrap:wrap;
  padding:8px 0 0;font-size:10px;color:var(--muted);
}
.vl-tl-legenda-item{
  display:flex;align-items:center;gap:4px;font-weight:500;
}
.vl-tl-legenda-dot{
  width:8px;height:8px;border-radius:50%;
}
/* Upload zona */
.vl-upload-zona{
  border:2px dashed var(--cream2);border-radius:8px;
  padding:16px;text-align:center;cursor:pointer;
  transition:all .15s;margin-top:8px;
}
.vl-upload-zona:hover{ border-color:var(--gold);background:rgba(201,168,76,.04); }
.vl-upload-zona input{ display:none; }
.vl-upload-txt{ font-size:12px;color:var(--muted); }

/* ── CLÁUSULA SOB DEMANDA ────────────────────────────── */
.vl-clausula-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));
  gap:8px;margin-bottom:12px;
}
.vl-clausula-tipo{
  padding:10px;border-radius:8px;
  border:1.5px solid var(--cream2);
  background:#fff;cursor:pointer;
  text-align:center;transition:all .15s;
  font-size:11px;font-weight:600;color:var(--navy);
}
.vl-clausula-tipo:hover{
  border-color:var(--gold);background:rgba(201,168,76,.05);
}
.vl-clausula-tipo-icon{ font-size:20px;display:block;margin-bottom:4px; }

/* ────────── BLOCO 02  (linha original 5301) ────────── */
#screen-dashboard.active{background:var(--cream3,#faf8f4);width:100%;box-sizing:border-box;display:block!important;height:auto!important;overflow:visible!important}
/* ── Telas de bloco único — scroll via app-content ── */
#screen-modelos.active,
#screen-ferramentas.active {
  display: block !important;
  height: 100% !important;
  overflow: hidden !important;
}
/* Financeiro: precisa de grid, mas permite scroll interno */
#screen-financeiro.active {
  display: block !important;
  height: 100% !important;
  overflow: hidden !important;
}

.dash-wrap{max-width:1600px;margin:0 auto;padding:24px 20px 40px}
.dash-boas{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}
.dash-boas-txt{font-size:22px;font-weight:700;color:var(--navy)}
.dash-boas-sub{font-size:13px;color:var(--muted);margin-top:2px}
.dash-data{font-size:12px;color:var(--muted);background:#fff;padding:6px 14px;border-radius:99px;border:1px solid var(--cream2)}
.dash-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}
.dash-kpi{background:#fff;border-radius:14px;padding:16px 18px;border:1px solid var(--cream2);transition:box-shadow .2s;cursor:default}
.dash-kpi:hover{box-shadow:0 4px 16px rgba(15,30,53,.08)}
.dash-kpi-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;margin:0 auto 10px}
.dash-kpi-icon svg{width:26px;height:26px;stroke:var(--navy);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
.dash-kpi-val{font-size:28px;font-weight:700;color:var(--navy);line-height:1}
.dash-kpi-lbl{font-size:11px;color:var(--muted);margin-top:4px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}
.dash-kpi-delta{font-size:11px;margin-top:4px;font-weight:600}
.dash-kpi-delta.ok{color:var(--green)}
.dash-kpi-delta.warn{color:#e67e22}
.dash-kpi-delta.red{color:var(--red)}
.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.dash-card{background:#fff;border-radius:14px;padding:18px 20px;border:1px solid var(--cream2)}
.dash-card-ttl{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:14px;display:flex;align-items:center;gap:8px}
.dash-card-ttl span{display:inline-flex;align-items:center;flex-shrink:0}
.dash-card-ttl svg{width:15px;height:15px;stroke:var(--navy);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.dash-prazo-item{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--cream2)}
.dash-prazo-item:last-child{border-bottom:none}
.dash-prazo-num{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}
.dash-prazo-num.urgente{background:#fdecea;color:#c0392b}
.dash-prazo-num.atencao{background:#fef9e7;color:#e67e22}
.dash-prazo-num.ok{background:#eafaf1;color:#27ae60}
.dash-prazo-info{flex:1;min-width:0}
.dash-prazo-proc{font-size:12px;font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dash-prazo-tipo{font-size:11px;color:var(--muted)}
.dash-prazo-dias{font-size:11px;font-weight:700}
.dash-atividade-item{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--cream2)}
.dash-atividade-item:last-child{border-bottom:none}
.dash-atividade-icon{width:28px;height:28px;border-radius:7px;background:var(--cream);display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0;margin-top:1px}
.dash-atividade-txt{font-size:12px;color:var(--navy);line-height:1.4}
.dash-atividade-time{font-size:10px;color:var(--muted);margin-top:2px}
.dash-acesso-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.dash-acesso-btn{background:var(--cream);border:1px solid var(--cream2);border-radius:10px;padding:12px 10px;text-align:center;cursor:pointer;transition:all .2s;font-family:DM Sans,sans-serif}
.dash-acesso-btn:hover{background:var(--navy);border-color:var(--navy)}
.dash-acesso-btn:hover .dash-acesso-icon{background:rgba(255,255,255,.15)}
.dash-acesso-btn:hover .dash-acesso-lbl{color:#fff}
.dash-acesso-icon{width:40px;height:40px;background:#fff;border-radius:9px;display:flex;align-items:center;justify-content:center;margin:0 auto 6px}
.dash-acesso-icon svg{width:20px;height:20px;stroke:var(--navy);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.dash-acesso-btn:hover .dash-acesso-icon svg{stroke:#fff}
.dash-acesso-lbl{font-size:11px;font-weight:600;color:var(--navy)}
.dash-ia-bar{background:#fff;border-radius:14px;padding:16px 20px;border:1px solid var(--cream2);margin-bottom:16px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.dash-ia-info{flex:1;min-width:180px}
.dash-ia-ttl{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:4px;display:flex;align-items:center;gap:6px}
.dash-ia-ttl svg{width:14px;height:14px;stroke:var(--navy);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.dash-ia-pbar-wrap{background:var(--cream2);border-radius:99px;height:7px;overflow:hidden;margin-top:6px}
.dash-ia-pbar-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--gold),#f5b800);transition:width .6s ease}
.dash-ia-nums{display:flex;gap:16px;flex-wrap:wrap}
.dash-ia-num{text-align:center}
.dash-ia-num-val{font-size:20px;font-weight:700;color:var(--navy)}
.dash-ia-num-lbl{font-size:10px;color:var(--muted);font-weight:600;text-transform:uppercase}
.dash-vazio{text-align:center;padding:20px;color:var(--muted);font-size:12px}
.dash-badge{display:inline-block;padding:2px 8px;border-radius:99px;font-size:10px;font-weight:700}
@media(max-width:780px){
  .dash-kpis{grid-template-columns:repeat(2,1fr)}
  .dash-grid{grid-template-columns:1fr}
  .dash-acesso-grid{grid-template-columns:repeat(2,1fr)}
  .dash-wrap{padding:16px 14px 80px}
  .dash-boas-txt{font-size:18px}
}

/* ────────── BLOCO 03  (linha original 5916) ────────── */
#screen-crm.active{display:flex!important;flex-direction:column;height:100%;overflow:hidden}

/* CRM Header */
.crm-header{
  background:var(--navy);padding:16px 28px;
  display:flex;align-items:center;gap:16px;flex-shrink:0;
  border-bottom:2px solid rgba(201,168,76,.25);
}
.crm-titulo{display:flex;align-items:center;gap:8px;font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--gold)}
.crm-sub{font-size:12px;color:rgba(255,255,255,.5);margin-top:2px}

/* Tab bar CRM */
.crm-tabs{
  background:#fff;border-bottom:2px solid var(--cream2);
  display:flex;flex-shrink:0;overflow-x:auto;scrollbar-width:none;
}
.crm-tabs::-webkit-scrollbar{display:none}
.crm-tab{
  display:inline-flex;align-items:center;gap:6px;
  padding:12px 20px;font-size:13px;font-weight:600;color:var(--muted);
  border:none;background:none;cursor:pointer;border-bottom:3px solid transparent;
  font-family:DM Sans,sans-serif;transition:all .15s;white-space:nowrap;
}
.crm-tab:hover{color:var(--navy);background:var(--cream)}
.crm-tab.active{color:var(--navy);font-weight:700;border-bottom-color:var(--gold);background:rgba(201,168,76,.05)}

/* Conteúdo CRM */
.crm-body{flex:1;overflow-y:auto;background:var(--cream);padding:20px 24px;min-height:0;height:0}
.crm-view{display:none}
.crm-view.active{display:block}

/* ── FUNIL KANBAN ── */
.crm-kanban{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
  align-items:start;
  min-height:500px;
}
.crm-col{
  background:#fff;border-radius:12px;
  border:1px solid var(--cream2);
  overflow:visible;min-height:200px;
}
.crm-col-header{
  padding:12px 14px;display:flex;align-items:center;
  justify-content:space-between;border-bottom:2px solid var(--cream2);
}
.crm-col-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.crm-col-count{
  background:var(--cream);border-radius:99px;
  padding:2px 8px;font-size:11px;font-weight:700;color:var(--muted);
}
.crm-col-total{font-size:10px;color:var(--muted);margin-top:2px}
.crm-col-body{padding:8px;display:flex;flex-direction:column;gap:6px;min-height:160px}
.crm-col-body.drag-over{background:rgba(201,168,76,.08);border-radius:8px}

/* Cards Kanban */
.crm-card{
  background:#fff;border-radius:8px;
  border:1px solid var(--cream2);
  padding:10px 12px;cursor:pointer;
  transition:all .15s;
  box-shadow:0 1px 4px rgba(0,0,0,.05);
}
.crm-card:hover{box-shadow:0 3px 12px rgba(0,0,0,.1);transform:translateY(-1px)}
.crm-card.dragging{opacity:.5;transform:rotate(2deg)}
.crm-card-nome{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:4px}
.crm-card-area{
  display:inline-block;font-size:10px;font-weight:700;
  padding:2px 7px;border-radius:99px;margin-bottom:6px;
}
.crm-card-valor{font-size:12px;font-weight:700;color:var(--green);margin-bottom:4px}
.crm-card-origem{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:4px}
.crm-card-next{
  font-size:11px;color:var(--muted);margin-top:6px;
  padding-top:6px;border-top:1px solid var(--cream2);
  font-style:italic;
}
.crm-card-data{font-size:10px;color:var(--muted);margin-top:4px;text-align:right;opacity:.7}
.crm-add-card{
  width:100%;padding:8px;border:1.5px dashed var(--cream2);
  background:none;border-radius:8px;font-size:12px;color:var(--muted);
  cursor:pointer;transition:all .15s;margin-top:4px;font-family:DM Sans,sans-serif;
}
.crm-add-card:hover{border-color:var(--gold);color:var(--gold);background:rgba(201,168,76,.05)}

/* Cores das colunas */
.crm-col-lead    .crm-col-header{background:rgba(52,152,219,.08)}
.crm-col-lead    .crm-col-title{color:#2980b9}
.crm-col-qual    .crm-col-header{background:rgba(241,196,15,.1)}
.crm-col-qual    .crm-col-title{color:#c07820}
.crm-col-prop    .crm-col-header{background:rgba(230,126,34,.1)}
.crm-col-prop    .crm-col-title{color:#d35400}
.crm-col-fech    .crm-col-header{background:rgba(39,174,96,.1)}
.crm-col-fech    .crm-col-title{color:#1e8449}
.crm-col-perd    .crm-col-header{background:rgba(231,76,60,.08)}
.crm-col-perd    .crm-col-title{color:#c0392b}

/* Área de cards por origem */
.crm-card-area-trabalhista{background:#e8f4fd;color:#2980b9}
.crm-card-area-previdenciario{background:#eafaf1;color:#1e8449}
.crm-card-area-civil{background:#fef9e7;color:#c07820}
.crm-card-area-criminal{background:#fdedec;color:#c0392b}
.crm-card-area-familia{background:#f5eef8;color:#8e44ad}
.crm-card-area-tributario{background:#eaf0fb;color:#2c3e6b}
.crm-card-area-empresarial{background:#fdf2e9;color:#d35400}
.crm-card-area-default{background:var(--cream);color:var(--muted)}

/* ── DASHBOARD BI ── */
.bi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}
.bi-kpi{
  background:#fff;border-radius:12px;border:1px solid var(--cream2);
  padding:18px 20px;
}
.bi-kpi-label{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.bi-kpi-value{font-size:28px;font-weight:700;color:var(--navy);font-family:'Playfair Display',serif}
.bi-kpi-sub{font-size:11px;color:var(--muted);margin-top:4px}
.bi-kpi-trend{font-size:12px;font-weight:600;margin-top:4px}
.bi-kpi-trend.up{color:var(--green)}
.bi-kpi-trend.down{color:var(--red)}

.bi-charts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.bi-chart-card{
  background:#fff;border-radius:12px;border:1px solid var(--cream2);
  padding:18px 20px;
}
.bi-chart-titulo{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:14px}
.bi-bar-item{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.bi-bar-label{font-size:12px;color:var(--muted);width:100px;flex-shrink:0}
.bi-bar-track{flex:1;background:var(--cream);border-radius:99px;height:8px;overflow:hidden}
.bi-bar-fill{height:8px;border-radius:99px;transition:width .6s ease}
.bi-bar-val{font-size:12px;font-weight:700;color:var(--navy);width:40px;text-align:right;flex-shrink:0}

/* Funil visual */
.bi-funil{display:flex;flex-direction:column;gap:6px}
.bi-funil-step{
  display:flex;align-items:center;gap:10px;padding:8px 12px;
  border-radius:8px;cursor:pointer;transition:opacity .15s;
}
.bi-funil-step:hover{opacity:.85}
.bi-funil-bar{flex:1;height:28px;border-radius:6px;display:flex;align-items:center;
  padding:0 10px;font-size:12px;font-weight:700;color:#fff;transition:width .6s}
.bi-funil-count{font-size:13px;font-weight:700;color:var(--navy);width:30px;text-align:right}
.bi-funil-pct{font-size:11px;color:var(--muted);width:36px}

/* ── INTIMAÇÕES ── */
.intim-lista{display:flex;flex-direction:column;gap:8px}
.intim-card{
  background:#fff;border-radius:10px;border:1px solid var(--cream2);
  padding:14px 16px;display:flex;gap:12px;align-items:flex-start;
  transition:box-shadow .15s;cursor:pointer;
}
.intim-card:hover{box-shadow:0 3px 12px rgba(0,0,0,.08)}
.intim-card.nova{border-left:4px solid #e74c3c}
.intim-card.lida{border-left:4px solid var(--cream2);opacity:.7}
.intim-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;
  justify-content:center;font-size:16px;flex-shrink:0}
.intim-icon-nova{background:rgba(231,76,60,.1)}
.intim-icon-lida{background:var(--cream)}
.intim-body{flex:1;min-width:0}
.intim-titulo{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:3px}
.intim-proc{font-size:11px;color:var(--muted);margin-bottom:4px}
.intim-prazo{
  display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;
  border-radius:99px;margin-right:6px;
}
.intim-prazo-urgente{background:rgba(231,76,60,.12);color:#c0392b}
.intim-prazo-normal{background:rgba(39,174,96,.1);color:#1e8449}
.intim-prazo-hoje{background:rgba(241,196,15,.2);color:#c07820}
.intim-acoes{display:flex;gap:6px;margin-top:8px}

/* ────────── BLOCO 04  (linha original 6746) ────────── */
#screen-clientes.active{display:block!important;height:100%;overflow:hidden}

/* ────────── BLOCO 05  (linha original 8062) ────────── */
#screen-pareceres.active{display:block!important;height:100%;overflow:hidden}

/* ────────── BLOCO 06  (linha original 9166) ────────── */
          .jur-cats{display:flex;flex-direction:column;gap:12px;margin-bottom:18px}
          .jur-cat-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:6px}
          .jur-cards-row{display:flex;flex-wrap:wrap;gap:8px}
          .jur-card{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:10px;border:1.5px solid var(--cream2);background:#fff;cursor:pointer;font-family:DM Sans,sans-serif;font-size:12px;font-weight:600;color:var(--navy);transition:all .15s;white-space:nowrap;box-shadow:0 1px 3px rgba(0,0,0,.04)}
          .jur-card:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-1px);box-shadow:0 3px 8px rgba(0,0,0,.1)}
          .jur-card.active{background:var(--navy);color:var(--gold);border-color:var(--navy);box-shadow:0 3px 10px rgba(15,30,53,.2)}
          .jur-card .jc-icon{font-size:16px;line-height:1}
          .jur-card .jc-label{line-height:1.2}
          @media(max-width:767px){.jur-card{font-size:11px;padding:7px 10px;gap:6px}.jur-card .jc-icon{font-size:14px}}
        

/* ────────── BLOCO 07  (linha original 10254) ────────── */
      /* Estilos específicos da calculadora de reforma */
      .rt-tabs{display:flex;gap:0;border-bottom:2px solid var(--cream2);margin-bottom:24px;overflow-x:auto}
      .rt-tab{padding:12px 20px;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s;white-space:nowrap}
      .rt-tab:hover{color:var(--navy)}
      .rt-tab.active{color:var(--navy);border-bottom-color:var(--gold)}
      .rt-screen{display:none}
      .rt-screen.active{display:block}
      .rt-card{background:#fff;border:1px solid var(--cream2);border-radius:14px;padding:24px;margin-bottom:18px}
      .rt-card-title{font-size:15px;font-weight:700;color:var(--navy);margin-bottom:6px}
      .rt-card-sub{font-size:12px;color:var(--muted);margin-bottom:20px;line-height:1.6}
      .rt-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}
      .rt-form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin-bottom:16px}
      .rt-field label{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:5px}
      .rt-field input,.rt-field select{width:100%;border:1.5px solid var(--cream2);border-radius:9px;padding:10px 13px;font-size:13px;font-family:DM Sans,sans-serif;color:var(--text);background:#fff;transition:border-color .2s;appearance:none}
      .rt-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='6'%3E%3Cpath d='M1 1l4.5 4.5L10 1' stroke='%236b6b6b' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;padding-right:34px;cursor:pointer}
      .rt-field input:focus,.rt-field select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.1)}
      .rt-field .pfx{position:relative}
      .rt-field .pfx span{position:absolute;left:13px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--muted);font-weight:600}
      .rt-field .pfx input{padding-left:32px}
      .rt-btn{display:inline-flex;align-items:center;gap:7px;background:linear-gradient(135deg,var(--navy),#1a3050);color:#fff;border:none;border-radius:9px;padding:11px 24px;font-size:13px;font-weight:700;font-family:DM Sans,sans-serif;cursor:pointer;transition:all .2s}
      .rt-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(15,30,53,.2)}
      .rt-btn-gold{background:linear-gradient(135deg,var(--gold),#E8C66A);color:var(--navy)}
      .rt-resultado{display:none;margin-top:18px}
      .rt-resultado.show{display:block}
      .rt-res-header{background:linear-gradient(135deg,var(--navy),#1a3050);border-radius:12px;padding:20px;margin-bottom:16px;display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px}
      .rt-res-titulo{font-size:11px;font-weight:700;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}
      .rt-res-valor{font-family:Georgia,serif;font-size:32px;color:var(--gold);line-height:1}
      .rt-res-label{font-size:11px;color:rgba(255,255,255,.35);margin-top:3px}
      .rt-res-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:16px}
      .rt-res-item{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:14px;text-align:center}
      .rt-res-item-valor{font-size:17px;font-weight:800;color:var(--navy);margin-bottom:3px}
      .rt-res-item-label{font-size:10px;color:var(--muted);font-weight:500}
      .rt-res-item.nv{background:var(--navy);border-color:var(--navy)}
      .rt-res-item.nv .rt-res-item-valor{color:var(--gold)}
      .rt-res-item.nv .rt-res-item-label{color:rgba(255,255,255,.4)}
      .rt-tabela-wrap{overflow-x:auto;border-radius:10px;border:1px solid var(--cream2)}
      .rt-tabela-wrap table{width:100%;border-collapse:collapse}
      .rt-tabela-wrap thead{background:var(--navy)}
      .rt-tabela-wrap thead th{padding:8px 10px;font-size:10px;font-weight:700;color:#fff;text-align:left;white-space:nowrap}
      .rt-tabela-wrap thead th:not(:first-child){text-align:right}
      .rt-tabela-wrap tbody td{padding:7px 10px;font-size:11px;border-bottom:1px solid var(--cream2)}
      .rt-tabela-wrap tbody td:not(:first-child){text-align:right;font-weight:600}
      .rt-tabela-wrap tbody tr:nth-child(even){background:var(--cream)}
      .rt-tabela-wrap tbody tr:last-child td{border:none}
      .rt-td-green{color:var(--green)}
      .rt-td-red{color:var(--red)}
      .rt-td-gold{color:var(--gold)}
      .rt-td-navy{font-weight:700;color:var(--navy)}
      .rt-fase-tag{font-size:9px;font-weight:700;padding:2px 7px;border-radius:99px;display:inline-block}
      .rt-fase-teste{background:rgba(201,168,76,.12);color:#8a6a00}
      .rt-fase-trans{background:rgba(41,128,185,.1);color:#2980B9}
      .rt-fase-plena{background:rgba(29,158,117,.1);color:var(--green)}
      .rt-alerta{background:rgba(201,168,76,.07);border:1px solid rgba(201,168,76,.2);border-radius:9px;padding:12px 14px;font-size:11px;color:#7a5c00;line-height:1.6;margin-top:14px}
      .rt-comp-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}
      .rt-comp-card{border-radius:12px;padding:18px;border:2px solid}
      .rt-comp-atual{background:rgba(226,75,74,.03);border-color:rgba(226,75,74,.2)}
      .rt-comp-novo{background:rgba(29,158,117,.03);border-color:rgba(29,158,117,.2)}
      .rt-comp-titulo{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}
      .rt-comp-atual .rt-comp-titulo{color:var(--red)}
      .rt-comp-novo .rt-comp-titulo{color:var(--green)}
      .rt-comp-linha{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid rgba(0,0,0,.05);font-size:12px}
      .rt-comp-linha:last-child{border:none;font-weight:700;font-size:13px;padding-top:10px}
      .rt-tl{position:relative;padding-left:24px}
      .rt-tl::before{content:'';position:absolute;left:7px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--gold),var(--navy))}
      .rt-tl-item{position:relative;margin-bottom:20px;padding-left:18px}
      .rt-tl-dot{position:absolute;left:-21px;top:4px;width:12px;height:12px;border-radius:50%;border:2.5px solid #fff}
      .rt-tl-dot.teste{background:var(--gold);box-shadow:0 0 0 2px var(--gold)}
      .rt-tl-dot.trans{background:#2980B9;box-shadow:0 0 0 2px #2980B9}
      .rt-tl-dot.vigor{background:var(--green);box-shadow:0 0 0 2px var(--green)}
      .rt-tl-ano{font-size:12px;font-weight:800;color:var(--navy);margin-bottom:3px}
      .rt-tl-titulo{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:3px}
      .rt-tl-desc{font-size:11px;color:var(--muted);line-height:1.6}
      .rt-tl-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
      .rt-tag{font-size:9px;font-weight:700;padding:2px 8px;border-radius:99px}
      .rt-tag-cbs{background:rgba(41,128,185,.1);color:#2980B9}
      .rt-tag-ibs{background:rgba(142,68,173,.1);color:#8E44AD}
      .rt-tag-is{background:rgba(226,75,74,.1);color:var(--red)}
      .rt-tag-old{background:rgba(201,168,76,.1);color:#8a6a00}
      @media(max-width:768px){.rt-form-grid,.rt-form-grid-3,.rt-res-grid,.rt-comp-grid{grid-template-columns:1fr}}
      

/* ────────── BLOCO 08  (linha original 10590) ────────── */
      /* ── Precatórios — estilos internos ── */
      .prec-tabs{display:flex;gap:0;border-bottom:2px solid var(--cream2);margin-bottom:20px;overflow-x:auto;flex-shrink:0}
      .prec-tab{padding:11px 18px;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s;white-space:nowrap;background:none;border-top:none;border-left:none;border-right:none;font-family:DM Sans,sans-serif}
      .prec-tab:hover{color:var(--navy)}
      .prec-tab.active{color:var(--navy);border-bottom-color:var(--gold)}
      .prec-screen{display:none}
      .prec-screen.active{display:block}

      .prec-hero{background:linear-gradient(135deg,var(--navy),#162944);border-radius:12px;padding:18px 22px;margin-bottom:16px}
      .prec-hero-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
      .prec-bloco{text-align:center}
      .prec-bloco .plabel{font-size:9px;font-weight:700;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}
      .prec-bloco .pvalor{font-size:22px;font-weight:800;color:var(--gold);line-height:1}
      .prec-bloco .psub{font-size:10px;color:rgba(255,255,255,.3);margin-top:3px}

      .prec-res-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
      .prec-res-item{background:#fff;border:1px solid var(--cream2);border-radius:9px;padding:12px;text-align:center}
      .prec-res-item .prv{font-size:15px;font-weight:800;color:var(--navy);margin-bottom:2px}
      .prec-res-item .prl{font-size:9px;color:var(--muted)}
      .prec-res-item.verde .prv{color:var(--green)}
      .prec-res-item.gold .prv{color:var(--gold)}
      .prec-res-item.red .prv{color:var(--red,#e24b4a)}

      .prec-alerta{background:rgba(201,168,76,.07);border:1px solid rgba(201,168,76,.2);border-radius:8px;padding:10px 13px;font-size:11px;color:#7a5c00;line-height:1.6;margin-top:12px}
      .prec-alerta.red{background:rgba(226,75,74,.06);border-color:rgba(226,75,74,.2);color:#9c2020}
      .prec-alerta.green{background:rgba(29,158,117,.06);border-color:rgba(29,158,117,.2);color:#1a6048}

      .prec-det-table{width:100%;border-collapse:collapse;font-size:11px;margin-top:12px}
      .prec-det-table th{background:var(--navy);color:#fff;padding:7px 10px;text-align:left;font-size:10px;font-weight:700}
      .prec-det-table th:not(:first-child){text-align:right}
      .prec-det-table td{padding:7px 10px;border-bottom:1px solid var(--cream2);color:var(--text)}
      .prec-det-table td:not(:first-child){text-align:right;font-weight:600}
      .prec-det-table tr:nth-child(even){background:var(--cream)}
      .prec-det-table tr.total-row td{font-weight:700;font-size:12px;background:#E8F5E9}

      .prec-tl{display:flex;align-items:flex-start;gap:0;overflow-x:auto;padding:8px 0}
      .prec-tl-step{flex:1;min-width:110px;text-align:center;position:relative}
      .prec-tl-step:not(:last-child)::after{content:"→";position:absolute;right:-8px;top:12px;color:var(--muted);font-size:12px}
      .prec-tl-dot{width:26px;height:26px;border-radius:50%;margin:0 auto 5px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700}
      .prec-tl-dot.done{background:var(--green);color:#fff}
      .prec-tl-dot.active{background:var(--gold);color:var(--navy)}
      .prec-tl-dot.pending{background:var(--cream2);color:var(--muted)}
      .prec-tl-label{font-size:9px;color:var(--muted);font-weight:600}
      .prec-tl-date{font-size:10px;color:var(--navy);font-weight:700;margin-top:1px}

      .prec-cron-card{background:#fff;border:1px solid var(--cream2);border-radius:10px;overflow:hidden;margin-bottom:12px}
      .prec-cron-hdr{background:var(--navy);padding:11px 16px;display:flex;align-items:center;justify-content:space-between}
      .prec-cron-titulo{font-size:12px;font-weight:700;color:#fff}
      .prec-cron-badge{font-size:9px;font-weight:700;padding:2px 8px;border-radius:99px}
      .badge-fed{background:rgba(52,152,219,.3);color:#7ec8f5}
      .badge-est{background:rgba(142,68,173,.3);color:#d4a3f5}
      .badge-mun{background:rgba(29,158,117,.3);color:#7de8c8}
      .prec-cron-body{padding:12px 16px}
      .prec-cron-linha{display:flex;justify-content:space-between;align-items:center;padding:5px 0;border-bottom:1px solid var(--cream2);font-size:11px}
      .prec-cron-linha:last-child{border:none}
      .prec-cron-key{color:var(--muted)}
      .prec-cron-val{color:var(--navy);font-weight:700}

      .prec-legal-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
      .prec-legal-tag{font-size:9px;font-weight:700;padding:3px 9px;border-radius:99px;border:1px solid}
      .plt-gold{color:var(--gold);border-color:rgba(201,168,76,.4);background:rgba(201,168,76,.08)}
      .plt-blue{color:#3498db;border-color:rgba(52,152,219,.3);background:rgba(52,152,219,.06)}
      .plt-green{color:var(--green);border-color:rgba(29,158,117,.3);background:rgba(29,158,117,.06)}

      .rpv-table{width:100%;border-collapse:collapse;font-size:11px;margin-top:10px}
      .rpv-table th{background:var(--navy);color:#fff;padding:7px 10px;text-align:left;font-size:10px;font-weight:700}
      .rpv-table td{padding:7px 10px;border-bottom:1px solid var(--cream2)}
      .rpv-table tr:nth-child(even){background:var(--cream)}
      

/* ────────── BLOCO 09  (linha original 11420) ────────── */
#screen-assessor.active{display:flex!important;flex-direction:column;height:100%;overflow:hidden}#screen-workspace.active{display:flex!important;flex-direction:column!important;height:100%!important;overflow:hidden!important}

/* ────────── BLOCO 10  (linha original 11972) ────────── */
#screen-modelos.active{display:flex!important;flex-direction:column;height:100%}

/* ────────── BLOCO 11  (linha original 12410) ────────── */
#screen-jurisprudencia.active{display:flex!important;flex-direction:column;overflow:hidden}
.jur-layout{display:grid;grid-template-columns:1fr 310px;height:100%;gap:0;overflow:hidden}
.jur-main{display:flex;flex-direction:column;height:100%;overflow:hidden;padding:20px 24px;overflow-y:auto}
.jur-sidebar{border-left:1px solid var(--cream2);display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:16px}
.jur-header{margin-bottom:18px}
.jur-titulo{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--navy)}
.jur-sub{font-size:12px;color:var(--muted);margin-top:3px}
.jur-busca-row{display:flex;gap:8px;margin-bottom:12px}
.jur-input{flex:1;padding:10px 14px;border:1px solid var(--cream2);border-radius:8px;font-size:14px;font-family:DM Sans,sans-serif;background:#fff;outline:none;transition:border .15s}
.jur-input:focus{border-color:var(--gold)}
.jur-btn-buscar{padding:10px 20px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;font-family:DM Sans,sans-serif;white-space:nowrap;transition:background .15s}
.jur-btn-buscar:hover{background:var(--navy2)}
.jur-btn-buscar:disabled{opacity:.5;cursor:not-allowed}
.jur-trib-compacto{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.jur-trib-todos-btn{padding:8px 16px;border-radius:99px;font-size:13px;font-weight:600;border:1.5px solid var(--cream2);background:#fff;color:var(--muted);cursor:pointer;transition:all .15s;font-family:DM Sans,sans-serif}
.jur-trib-todos-btn.ativo{background:var(--navy);color:var(--gold);border-color:var(--navy)}
.jur-trib-todos-btn:hover:not(.ativo){border-color:var(--gold);color:var(--navy)}
.jur-trib-custom-btn{background:none;border:none;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;padding:4px 0;transition:color .15s;font-family:DM Sans,sans-serif}
.jur-trib-custom-btn:hover{color:var(--navy)}
.jur-trib-expandido{padding:12px 14px;background:var(--cream3);border:1px solid var(--cream2);border-radius:10px;display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.jur-trib-grupo-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.jur-trib-grupo-label{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;min-width:110px;flex-shrink:0}
.jur-trib-btn{padding:5px 12px;border-radius:99px;font-size:12px;font-weight:600;border:1px solid var(--cream2);background:#fff;cursor:pointer;transition:all .15s;font-family:DM Sans,sans-serif}
.jur-trib-btn.active{background:var(--navy);color:var(--gold);border-color:var(--navy)}
.jur-trib-btn:hover:not(.active){border-color:var(--gold);color:var(--navy)}
.jur-ordenar{display:flex;align-items:center;gap:6px;margin-left:auto}
.jur-ordenar select{font-size:11px;padding:4px 8px;border:1px solid var(--cream2);border-radius:6px;font-family:DM Sans,sans-serif}
.jur-info-bar{font-size:12px;color:var(--muted);margin-bottom:12px;min-height:18px}
.jur-resultado{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:16px;margin-bottom:10px;transition:box-shadow .15s}
.jur-resultado:hover{box-shadow:0 2px 12px rgba(15,30,53,.08)}
.jur-res-header{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px}
.jur-badge{padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;white-space:nowrap}
.jur-badge.STJ{background:#e8f0fe;color:#1a3a6e}
.jur-badge.STF{background:#fce8e6;color:#7a1a14}
.jur-badge.TST{background:#e6f4ea;color:#1a5c2e}
.jur-badge.TJSP,.jur-badge.TJRJ,.jur-badge.TJMG{background:#fef3e2;color:#7a4a00}
.jur-badge.TRF1,.jur-badge.TRF3,.jur-badge.TRT2{background:#f3e8fd;color:#4a1a7a}
.jur-res-info{flex:1;min-width:0}
.jur-res-num{font-size:13px;font-weight:600;color:var(--navy)}
.jur-res-meta{font-size:11px;color:var(--muted);margin-top:2px}
.jur-classificacao{padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;white-space:nowrap;flex-shrink:0}
.jur-classificacao.favoravel{background:#e6f4ea;color:#1a5c2e}
.jur-classificacao.contrario{background:#fce8e6;color:#7a1a14}
.jur-classificacao.neutro{background:var(--cream2);color:var(--muted)}
.jur-ementa{font-size:13px;color:var(--text);line-height:1.75;margin-bottom:12px;max-height:130px;overflow:hidden;position:relative}
.jur-ementa.expandida{max-height:none}
.jur-ementa-grad{position:absolute;bottom:0;left:0;right:0;height:40px;background:linear-gradient(transparent,#fff);pointer-events:none}
.jur-res-acoes{display:flex;gap:6px;flex-wrap:wrap}
.jur-btn-acao{padding:5px 11px;font-size:11px;border:1px solid var(--cream2);border-radius:6px;background:#fff;cursor:pointer;font-family:DM Sans,sans-serif;transition:all .15s}
.jur-btn-acao:hover{background:var(--cream);border-color:var(--gold)}
.jur-btn-acao.destaque{background:var(--navy);color:#fff;border-color:var(--navy)}
.jur-btn-acao.destaque:hover{background:var(--navy2)}
.jur-vazio{text-align:center;padding:60px 20px;color:var(--muted)}
.jur-vazio svg{opacity:.2;margin-bottom:12px}
.jur-loading{text-align:center;padding:40px;color:var(--muted);font-size:13px}
.jur-loading-dots::after{content:'...';animation:dots 1.5s infinite}
@keyframes dots{0%{content:''}33%{content:'.'}66%{content:'..'}100%{content:'...'}}
/* Sidebar */
.jur-sb-section{margin-bottom:20px}
.jur-sb-titulo{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}
.jur-tendencia-bar{height:8px;border-radius:4px;background:var(--cream2);overflow:hidden;margin:8px 0}
.jur-tendencia-fill{height:100%;border-radius:4px;background:var(--green);transition:width .5s}
.jur-analise-txt{font-size:12px;color:var(--muted);line-height:1.7}
.jur-recente{padding:6px 8px;border-radius:6px;font-size:12px;color:var(--muted);background:var(--cream);cursor:pointer;margin-bottom:4px;transition:background .15s}
.jur-recente:hover{background:var(--cream2)}
.jur-salvar-sel{width:100%;margin-bottom:8px;padding:7px 10px;border:1px solid var(--cream2);border-radius:6px;font-size:12px;font-family:DM Sans,sans-serif}
@media(max-width:1024px){.jur-layout{grid-template-columns:1fr}.jur-sidebar{display:none}}
@media(max-width:767px){.jur-main{padding:14px 16px}}

/* ── ABA MODELOS — Destaque especial ────────────────────── */
/* ── ABAS EM BREVE ── */
.tool-tab-breve{
  position:relative;
  background:rgba(255,255,255,.04) !important;
  border:1.5px dashed rgba(255,255,255,.15) !important;
  border-radius:8px !important;
  color:rgba(255,255,255,.3) !important;
  font-weight:600 !important;
  padding:5px 10px 5px 8px !important;
  margin:0 2px !important;
  cursor:default !important;
  transition:all .2s !important;
}
.tool-tab-breve:hover{
  background:rgba(255,255,255,.07) !important;
  color:rgba(255,255,255,.5) !important;
  border-color:rgba(255,255,255,.25) !important;
}
.badge-breve{
  display:inline-flex;
  align-items:center;
  font-size:8px;
  font-weight:800;
  color:rgba(255,255,255,.4);
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  border-radius:99px;
  padding:1px 6px;
  margin-left:5px;
  letter-spacing:.06em;
  text-transform:uppercase;
  vertical-align:middle;
}
/* Cursos — badge verde */
.tool-tab-cursos .badge-breve{
  color:rgba(29,158,117,.8);
  background:rgba(29,158,117,.1);
  border-color:rgba(29,158,117,.25);
}
/* HUB — badge azul */
.tool-tab-hub .badge-breve{
  color:rgba(52,152,219,.8);
  background:rgba(52,152,219,.1);
  border-color:rgba(52,152,219,.25);
}

.tool-tab-modelos{
  position:relative;
  background:linear-gradient(135deg,rgba(201,168,76,.12),rgba(201,168,76,.06)) !important;
  border:1.5px solid rgba(201,168,76,.35) !important;
  border-radius:8px !important;
  color:var(--gold) !important;
  font-weight:700 !important;
  padding:5px 10px 5px 8px !important;
  margin:0 2px !important;
  transition:all .2s !important;
}
.tool-tab-modelos:hover{
  background:linear-gradient(135deg,rgba(201,168,76,.22),rgba(201,168,76,.12)) !important;
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(201,168,76,.2) !important;
}
.tool-tab-modelos.active{
  background:linear-gradient(135deg,rgba(201,168,76,.3),rgba(201,168,76,.15)) !important;
  border-color:var(--gold) !important;
  color:var(--navy) !important;
  box-shadow:0 2px 10px rgba(201,168,76,.3) !important;
}
.tool-tab-modelos .tool-tab-icon{
  filter:none !important;
}
.tab-badge-pro{
  display:inline-flex;
  align-items:center;
  background:var(--gold);
  color:var(--navy);
  font-size:8px;
  font-weight:800;
  padding:1px 5px;
  border-radius:99px;
  margin-left:4px;
  letter-spacing:.04em;
  vertical-align:middle;
  line-height:1.6;
  position:relative;
  top:-1px;
  font-family:DM Sans,sans-serif;
}
.tool-tab-modelos.active .tab-badge-pro{
  background:var(--navy);
  color:var(--gold);
}
/* Separador visual antes de Modelos */
.tool-tab-modelos::before{
  content:'';
  position:absolute;
  left:-6px;top:20%;height:60%;
  width:1.5px;
  background:rgba(201,168,76,.25);
  border-radius:2px;
}


/* ── DRAG & DROP DAS ABAS ───────────────────────────────── */
.tool-tab.drag-over{
  background:rgba(201,168,76,.18) !important;
  border:1.5px dashed var(--gold) !important;
  border-radius:8px !important;
  opacity:1 !important;
}
.tool-tab.dragging{
  opacity:.35 !important;
  transform:scale(.95) !important;
  cursor:grabbing !important;
}
.tool-tab[draggable="true"]{
  cursor:grab;
}
.tool-tab[draggable="true"]:active{
  cursor:grabbing;
}


/* ── EDITOR DE TEMPLATE ─────────────────────────────────── */
.mod-card{ position:relative; }
.mod-card-edit-btn{
  position:absolute;top:8px;right:8px;
  background:rgba(15,30,53,.07);border:none;
  width:26px;height:26px;border-radius:6px;
  font-size:12px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  opacity:0;transition:opacity .15s;
  font-family:DM Sans,sans-serif;
}
.mod-card:hover .mod-card-edit-btn{ opacity:1; }
.mod-card-edit-btn:hover{ background:rgba(15,30,53,.14); }

/* Highlight dos campos no editor */
.mte-campo-highlight{
  background:rgba(201,168,76,.25);
  border-radius:3px;
  border-bottom:2px solid var(--gold);
  color:var(--navy);
  font-weight:600;
  cursor:pointer;
}
.mte-campo-highlight:hover{
  background:rgba(201,168,76,.4);
}

/* Card de campo no painel lateral */
.mte-campo-card{
  background:#fff;
  border:1.5px solid var(--cream2);
  border-radius:8px;
  padding:8px 10px;
  font-size:11px;
  display:flex;
  align-items:center;
  gap:8px;
  transition:border-color .15s;
}
.mte-campo-card:hover{ border-color:var(--gold); }
.mte-campo-num{
  width:20px;height:20px;border-radius:50%;
  background:var(--navy);color:var(--gold);
  font-size:9px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
}
.mte-campo-label{
  flex:1;min-width:0;
  font-weight:600;color:var(--navy);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.mte-campo-del{
  background:none;border:none;cursor:pointer;
  color:var(--muted);font-size:13px;padding:2px;
  opacity:.5;transition:opacity .15s;
  font-family:DM Sans,sans-serif;
}
.mte-campo-del:hover{ opacity:1;color:var(--red); }

/* Modal de label do campo */
.mte-modal-overlay{
  position:fixed;inset:0;
  background:rgba(0,0,0,.35);
  z-index:1000;
  display:flex;align-items:center;justify-content:center;
}
.mte-modal{
  background:#fff;border-radius:12px;
  padding:24px;width:340px;
  box-shadow:0 12px 40px rgba(0,0,0,.2);
  animation:vlFadeIn .2s ease;
}
.mte-modal-ttl{
  font-family:'Playfair Display',serif;
  font-size:16px;font-weight:700;color:var(--navy);
  margin-bottom:6px;
}
.mte-modal-sub{
  font-size:12px;color:var(--muted);
  margin-bottom:14px;line-height:1.6;
}
.mte-modal input{
  width:100%;padding:9px 12px;
  border:1.5px solid var(--cream2);border-radius:7px;
  font-size:13px;font-family:DM Sans,sans-serif;
  outline:none;color:var(--navy);
  margin-bottom:12px;box-sizing:border-box;
}
.mte-modal input:focus{ border-color:var(--gold); }
.mte-modal-btns{
  display:flex;gap:8px;justify-content:flex-end;
}


/* ══════════════════════════════════════════════════════════
   EDITOR DE TEMPLATES — Administrador
══════════════════════════════════════════════════════════ */
.mod-admin-btn{
  margin:8px 12px 0;
  padding:9px 14px;
  background:linear-gradient(135deg,var(--navy),#1a3060);
  color:var(--gold);
  border:none;border-radius:8px;
  font-size:12px;font-weight:700;
  font-family:DM Sans,sans-serif;
  cursor:pointer;width:calc(100% - 24px);
  display:flex;align-items:center;gap:8px;
  transition:all .15s;
  box-shadow:0 2px 8px rgba(15,30,53,.2);
}
.mod-admin-btn:hover{
  background:linear-gradient(135deg,#1a3060,#0f1e35);
  transform:translateY(-1px);
  box-shadow:0 4px 14px rgba(15,30,53,.3);
}

/* Tela do editor */
#screen-template-editor{
  position:fixed;top:0;left:0;right:0;bottom:0;
  background:#fff;z-index:900;
  display:none;flex-direction:column;
}
#screen-template-editor.active{
  display:flex!important;
}
.te-header{
  background:var(--navy);color:#fff;
  padding:14px 20px;
  display:flex;align-items:center;gap:14px;
  flex-shrink:0;border-bottom:2px solid var(--gold);
}
.te-header-title{
  display:flex;align-items:center;gap:8px;
  font-family:'Playfair Display',serif;
  font-size:16px;font-weight:700;color:var(--gold);flex:1;
}
.te-header-sub{
  font-size:11px;color:rgba(255,255,255,.6);margin-top:2px;
}
.te-btn{
  display:inline-flex;align-items:center;gap:5px;
  padding:7px 16px;border-radius:7px;
  font-size:12px;font-weight:700;cursor:pointer;
  font-family:DM Sans,sans-serif;border:none;
  transition:all .15s;
}
.te-btn-cancelar{
  background:rgba(255,255,255,.1);color:rgba(255,255,255,.8);
}
.te-btn-cancelar:hover{ background:rgba(255,255,255,.2); }
.te-btn-salvar{
  background:var(--gold);color:var(--navy);
}
.te-btn-salvar:hover{ background:var(--gold2); }

.te-body{
  display:flex;flex:1;min-height:0;
}

/* Painel esquerdo — configurações */
.te-config{
  width:280px;flex-shrink:0;
  border-right:1px solid var(--cream2);
  background:var(--cream);
  overflow-y:auto;padding:16px;
}
.te-config-titulo{
  display:flex;align-items:center;gap:5px;
  font-size:11px;font-weight:700;color:var(--muted);
  text-transform:uppercase;letter-spacing:.08em;
  margin-bottom:10px;
}
.te-field{
  margin-bottom:12px;
}
.te-field label{
  display:block;font-size:11px;font-weight:600;
  color:var(--navy);margin-bottom:4px;
}
.te-field input, .te-field select, .te-field textarea{
  width:100%;padding:8px 10px;border-radius:7px;
  border:1.5px solid var(--cream2);
  font-size:12px;font-family:DM Sans,sans-serif;
  background:#fff;outline:none;
  transition:border-color .15s;
}
.te-field input:focus,.te-field select:focus,.te-field textarea:focus{
  border-color:var(--gold);
}

/* Lista de campos criados */
.te-campos-lista{
  margin-top:16px;
}
.te-campo-item{
  background:#fff;border-radius:7px;
  padding:8px 10px;margin-bottom:6px;
  border:1px solid var(--cream2);
  display:flex;align-items:center;gap:8px;
  font-size:12px;
}
.te-campo-tag{
  background:rgba(201,168,76,.15);color:#8a6a00;
  padding:2px 8px;border-radius:99px;
  font-size:10px;font-weight:700;
  white-space:nowrap;
}
.te-campo-label{
  flex:1;color:var(--navy);font-weight:500;
}
.te-campo-del{
  background:none;border:none;
  color:var(--muted);cursor:pointer;
  font-size:14px;padding:2px 4px;
  border-radius:4px;
  transition:all .15s;
}
.te-campo-del:hover{ background:rgba(231,76,60,.1);color:var(--red); }

/* Painel central — editor de texto */
.te-editor-wrap{
  flex:1;display:flex;flex-direction:column;min-width:0;
}
.te-toolbar{
  padding:8px 14px;border-bottom:1px solid var(--cream2);
  background:#fff;display:flex;align-items:center;gap:6px;
  flex-wrap:wrap;flex-shrink:0;
}
.te-tool-btn{
  display:inline-flex;align-items:center;gap:4px;
  padding:5px 10px;border-radius:6px;
  font-size:11px;font-weight:600;cursor:pointer;
  border:1.5px solid var(--cream2);background:#fff;
  color:var(--navy);font-family:DM Sans,sans-serif;
  transition:all .15s;white-space:nowrap;
}
.te-tool-btn:hover{
  background:var(--navy);color:var(--gold);
  border-color:var(--navy);
}
.te-tool-btn.destaque{
  background:rgba(201,168,76,.1);
  border-color:rgba(201,168,76,.4);
  color:#8a6a00;
}
.te-tool-btn.destaque:hover{
  background:var(--gold);color:var(--navy);
}
.te-instrucao{
  font-size:11px;color:var(--muted);
  padding:0 8px;
  display:flex;align-items:center;gap:4px;
}
.te-editor{
  flex:1;padding:24px 28px;
  font-family:'Times New Roman',serif;
  font-size:13.5px;line-height:1.9;
  color:#1a1a1a;outline:none;
  overflow-y:auto;
  white-space:pre-wrap;word-wrap:break-word;
}
.te-editor:empty::before{
  content:"Cole aqui o texto completo do contrato...\A\ASugestão:\A1. Cole o texto (Ctrl+V)\A2. Selecione com o mouse os trechos que serão campos\A3. Clique em ✚ Criar campo";
  color:var(--muted);font-style:italic;
  white-space:pre;
}

/* Campos marcados no texto */
.te-campo-marcado{
  background:rgba(201,168,76,.2);
  border-bottom:2px solid var(--gold);
  border-radius:3px;
  padding:0 2px;
  cursor:pointer;
  color:var(--navy);
  font-weight:600;
  position:relative;
}
.te-campo-marcado:hover::after{
  content:attr(data-label);
  position:absolute;top:-28px;left:0;
  background:var(--navy);color:var(--gold);
  font-size:10px;padding:3px 8px;border-radius:4px;
  white-space:nowrap;pointer-events:none;
  font-family:DM Sans,sans-serif;
  z-index:10;
}

/* Modal de criação de campo */
.te-modal-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.4);
  z-index:950;display:none;
  align-items:center;justify-content:center;
}
.te-modal-overlay.active{ display:flex!important; }
.te-modal{
  background:#fff;border-radius:12px;
  padding:24px;width:360px;
  box-shadow:0 20px 60px rgba(0,0,0,.2);
}
.te-modal-titulo{
  display:flex;align-items:center;gap:6px;
  font-family:'Playfair Display',serif;
  font-size:15px;font-weight:700;color:var(--navy);
  margin-bottom:16px;
}
.te-modal-preview{
  background:var(--cream);border-radius:7px;
  padding:10px 12px;font-size:12px;
  font-style:italic;color:var(--muted);
  margin-bottom:14px;border-left:3px solid var(--gold);
  max-height:60px;overflow:hidden;
}
.te-modal-actions{
  display:flex;gap:8px;margin-top:16px;
}


/* ── REVISOR DE CONTRATOS — layout específico ── */
/* revisor usa padrão global */


/* ── ABA VISUAL LAW — destaque especial ── */
.tool-tab-sep{
  width:2px;
  min-width:2px;
  height:24px;
  background:linear-gradient(180deg, transparent, rgba(201,168,76,.6), transparent);
  margin:0 8px;
  align-self:center;
  flex-shrink:0;
  pointer-events:none;
  border-radius:99px;
}
.tool-tab-vl{
  background:linear-gradient(135deg,rgba(201,168,76,.15),rgba(201,168,76,.06)) !important;
  border:1.5px solid rgba(201,168,76,.4) !important;
  border-radius:8px !important;
  color:var(--gold) !important;
  font-weight:700 !important;
}
.tool-tab-vl.active{
  background:linear-gradient(135deg,var(--gold),var(--gold2)) !important;
  color:var(--navy) !important;
  border-color:var(--gold) !important;
}

/* ── VISUAL LAW SCREEN ── */
#screen-visuallaw.active{
  display:flex !important;
  flex-direction:column;
  height:100%;
  overflow:hidden;
}
.vl-screen-header{
  background:var(--navy);
  padding:16px 28px;
  border-bottom:2px solid rgba(201,168,76,.25);
  display:flex;align-items:center;gap:16px;
  flex-shrink:0;
}
.vl-screen-titulo{
  font-family:'Playfair Display',serif;
  font-size:20px;font-weight:700;color:var(--gold);flex:1;
}
.vl-screen-sub{
  font-size:12px;color:rgba(255,255,255,.5);margin-top:2px;
}
.vl-abas-bar{
  background:#fff;border-bottom:2px solid var(--cream2);
  display:flex;gap:0;flex-shrink:0;overflow-x:auto;scrollbar-width:none;
}
.vl-abas-bar::-webkit-scrollbar{display:none}
.vl-aba{
  padding:14px 22px;font-size:13px;font-weight:600;
  color:var(--muted);cursor:pointer;border:none;background:none;
  font-family:DM Sans,sans-serif;
  border-bottom:3px solid transparent;
  transition:all .15s;white-space:nowrap;
  display:flex;align-items:center;gap:7px;
}
.vl-aba:hover{ color:var(--navy);background:var(--cream); }
.vl-aba.active{
  color:var(--navy);font-weight:700;
  border-bottom-color:var(--gold);
  background:rgba(201,168,76,.06);
}
.vl-content{
  flex:1;overflow-y:auto;overflow-x:hidden;
  background:var(--cream);
  padding:28px 32px;
  min-height:0;
}
.vl-painel-pg{display:none}
.vl-painel-pg.active{display:block}

/* Cards de resultado VL */
.vl-card{
  background:#fff;border-radius:12px;
  border:1px solid var(--cream2);
  padding:24px;margin-bottom:16px;
}
.vl-card-titulo{
  font-family:'Playfair Display',serif;
  font-size:16px;font-weight:700;color:var(--navy);
  margin-bottom:14px;display:flex;align-items:center;gap:8px;
}
.vl-input-area{
  width:100%;min-height:120px;padding:12px;
  border:1.5px solid var(--cream2);border-radius:8px;
  font-family:DM Sans,sans-serif;font-size:13px;
  resize:vertical;outline:none;
  transition:border-color .15s;
}
.vl-input-area:focus{border-color:var(--gold);}
.vl-btn-gerar{
  background:var(--navy);color:var(--gold);
  border:none;padding:10px 24px;border-radius:8px;
  font-size:13px;font-weight:700;cursor:pointer;
  font-family:DM Sans,sans-serif;
  transition:all .15s;margin-top:10px;
}
.vl-btn-gerar:hover{background:#1a3060;}
.vl-btn-gerar:disabled{opacity:.5;cursor:not-allowed;}
.vl-resultado{
  margin-top:16px;background:var(--cream);
  border-radius:8px;padding:16px;
  font-size:13px;line-height:1.8;
  border:1px solid var(--cream2);
  min-height:60px;
  white-space:pre-wrap;
}
.vl-resultado:empty{ display:none; }

/* Fluxograma */
.vl-fluxo-container{
  background:#fff;border-radius:12px;
  border:1px solid var(--cream2);
  min-height:400px;padding:16px;
  overflow:auto;
  display:flex;align-items:flex-start;
  flex-wrap:wrap;gap:0;
}
.vl-node{
  background:#fff;border:2px solid var(--navy);
  border-radius:8px;padding:10px 16px;
  font-size:12px;font-weight:600;color:var(--navy);
  text-align:center;min-width:120px;max-width:180px;
  cursor:pointer;transition:all .15s;
  position:relative;
}
.vl-node:hover{box-shadow:0 4px 12px rgba(0,0,0,.1);}
.vl-node.fato{border-color:var(--navy);background:rgba(15,30,53,.05);}
.vl-node.decisao{border-color:var(--gold);background:rgba(201,168,76,.08);border-style:dashed;}
.vl-node.prazo{border-color:var(--red);background:rgba(231,76,60,.06);}
.vl-node.obrigacao{border-color:var(--green);background:rgba(26,122,60,.06);}
.vl-node-tipo{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:.6;display:block;margin-bottom:3px;}
.vl-arrow{
  display:flex;align-items:center;padding:0 4px;
  color:var(--muted);font-size:18px;align-self:center;
}
.vl-toolbar-fluxo{
  display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap;align-items:center;
}
.vl-chip{
  padding:4px 12px;border-radius:99px;font-size:11px;font-weight:600;
  border:1.5px solid;cursor:pointer;transition:all .15s;
  font-family:DM Sans,sans-serif;
}

/* ═══════════════════════════════════════════
   EDITOR MAPA MENTAL — CSS
═══════════════════════════════════════════ */
.mm-toolbar-btn{
  display:inline-flex;align-items:center;gap:5px;
  padding:6px 12px;border-radius:7px;font-size:12px;font-weight:600;
  border:1.5px solid var(--cream2);background:#fff;color:var(--navy);
  cursor:pointer;transition:all .15s;font-family:DM Sans,sans-serif;
  white-space:nowrap;
}
.mm-toolbar-btn:hover{background:var(--cream);border-color:var(--navy)}
.mm-toolbar-btn.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.mm-btn-primary{background:var(--navy);color:#fff;border-color:var(--navy)}
.mm-btn-primary:hover{background:#1a3060}
.mm-btn-danger{color:#e74c3c;border-color:#e74c3c}
.mm-btn-danger:hover{background:#e74c3c;color:#fff}
.mm-btn-ia{background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--navy);border-color:var(--gold)}
.mm-btn-ia:hover{opacity:.9}
.mm-tipo-btn{
  padding:4px 10px;border-radius:99px;font-size:11px;font-weight:700;
  border:none;cursor:pointer;transition:all .15s;
  font-family:DM Sans,sans-serif;opacity:.65;
}
.mm-tipo-btn.active{opacity:1;box-shadow:0 0 0 2px rgba(0,0,0,.2)}
.mm-tipo-btn:hover{opacity:.9}

/* Nós do mapa */
.mm-node{
  position:absolute;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  text-align:center;
  font-family:DM Sans,sans-serif;font-weight:600;
  transition:box-shadow .15s;
  user-select:none;
  min-width:80px;max-width:200px;
  word-break:break-word;
  line-height:1.3;
}
.mm-node:hover{filter:brightness(.96)}
.mm-node.selected{
  outline:3px solid var(--gold) !important;
  outline-offset:2px;
  box-shadow:0 6px 20px rgba(0,0,0,.18) !important;
}
.mm-node.connecting-source{
  outline:3px solid #2980b9 !important;
  outline-offset:2px;
}
.mm-node.connecting-target:hover{
  outline:3px solid #27ae60 !important;
  outline-offset:2px;
  cursor:crosshair;
}

/* Tipos de nó */
.mm-node-central{
  background:var(--navy);color:#fff;
  border-radius:50px;padding:14px 24px;
  font-size:14px;font-weight:700;
  box-shadow:0 4px 16px rgba(15,30,53,.35);
  min-width:120px;
}
.mm-node-topico{
  background:#2980b9;color:#fff;
  border-radius:10px;padding:10px 18px;
  font-size:13px;
  box-shadow:0 3px 10px rgba(41,128,185,.3);
}
.mm-node-subtopico{
  background:#27ae60;color:#fff;
  border-radius:8px;padding:8px 14px;
  font-size:12px;
  box-shadow:0 2px 8px rgba(39,174,96,.25);
}
.mm-node-decisao{
  background:var(--gold);color:var(--navy);
  border-radius:0;padding:10px 18px;
  font-size:12px;font-weight:700;
  transform:rotate(0deg);
  clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);
  min-width:110px;min-height:70px;
  box-shadow:0 3px 10px rgba(201,168,76,.35);
}
.mm-node-prazo{
  background:#e74c3c;color:#fff;
  border-radius:8px;padding:8px 14px;
  font-size:12px;
  border:2px dashed rgba(255,255,255,.4);
  box-shadow:0 2px 8px rgba(231,76,60,.3);
}
.mm-node-nota{
  background:#f8f0ff;color:#6c3483;
  border-radius:8px;padding:8px 14px;
  font-size:12px;
  border:2px solid #8e44ad;
  box-shadow:0 2px 8px rgba(142,68,173,.15);
}

/* Input inline de edição */
.mm-edit-input{
  position:absolute;z-index:200;
  border:2px solid var(--gold);border-radius:7px;
  padding:6px 10px;font-size:13px;font-weight:600;
  font-family:DM Sans,sans-serif;
  background:#fff;color:var(--navy);
  min-width:120px;max-width:220px;
  outline:none;
  box-shadow:0 4px 16px rgba(0,0,0,.15);
}

/* Linhas SVG */
.mm-conn{stroke-width:2.5;fill:none;stroke-linecap:round;}
.mm-conn-default{stroke:#b0b8c8}
.mm-conn-selected{stroke:var(--gold);stroke-width:3}


/* ═══════════════════════════════════════
   CALCULADORAS — Resultado Visual Bonito
═══════════════════════════════════════ */

/* Card de resultado principal */
.calc-result-card {
  background: linear-gradient(135deg, var(--navy) 0%, #1a3060 100%);
  border-radius: 14px;
  padding: 22px 24px;
  color: #fff;
  margin-top: 16px;
  box-shadow: 0 6px 24px rgba(15,30,53,.25);
}
.calc-result-card-titulo {
  font-family: 'Playfair Display', serif;
  font-size: 15px;
  font-weight: 700;
  color: var(--gold);
  margin-bottom: 16px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(201,168,76,.25);
  display: flex;
  align-items: center;
  gap: 8px;
}
.calc-result-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 7px 0;
  border-bottom: 1px solid rgba(255,255,255,.07);
  font-size: 13px;
}
.calc-result-row:last-child { border-bottom: none; }
.calc-result-row span { color: rgba(255,255,255,.7); }
.calc-result-row strong { color: #fff; font-weight: 700; }
.calc-result-row.destaque {
  margin-top: 8px;
  padding: 12px 16px;
  background: rgba(201,168,76,.18);
  border-radius: 10px;
  border: 1px solid rgba(201,168,76,.3);
  border-bottom: 1px solid rgba(201,168,76,.3) !important;
}
.calc-result-row.destaque span { color: var(--gold); font-weight: 600; font-size: 14px; }
.calc-result-row.destaque strong { color: var(--gold); font-size: 18px; }
.calc-result-row.subtotal {
  background: rgba(255,255,255,.06);
  border-radius: 7px;
  padding: 6px 10px;
  margin: 4px 0;
  border-bottom: none !important;
}
.calc-result-row.desconto strong { color: #ff8a8a; }
.calc-result-separador {
  border: none;
  border-top: 1px solid rgba(255,255,255,.12);
  margin: 10px 0;
}

/* Seção dentro do card */
.calc-result-secao {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: rgba(255,255,255,.4);
  margin: 12px 0 6px;
}

/* Box de memória de cálculo */
.calc-memoria-box {
  background: #fff;
  border-radius: 12px;
  border: 1px solid var(--cream2);
  padding: 16px 20px;
  margin-top: 12px;
  font-size: 12px;
  line-height: 1.9;
}
.calc-mem-titulo {
  font-family: 'Playfair Display', serif;
  font-size: 14px;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 10px;
}
.calc-mem-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}
.calc-mem-table th {
  background: var(--navy);
  color: var(--gold);
  padding: 8px 12px;
  text-align: left;
  font-weight: 700;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.calc-mem-table td {
  padding: 7px 12px;
  border-bottom: 1px solid var(--cream2);
  color: var(--text);
}
.calc-mem-table tr:last-child td { border-bottom: none; }
.calc-mem-table tr:hover td { background: var(--cream); }
.calc-mem-table tfoot td {
  font-weight: 700;
  color: var(--navy);
  background: rgba(201,168,76,.08);
}


/* ═══════════════════════════════════════
   MARKETING — ICP + CAMPANHA
═══════════════════════════════════════ */

/* Grupos de pergunta */
.mkt-field-group {
  display: flex;
  gap: 14px;
  margin-bottom: 20px;
  align-items: flex-start;
}
.mkt-q-num {
  width: 28px;
  height: 28px;
  min-width: 28px;
  background: var(--navy);
  color: var(--gold);
  border-radius: 6px;
  font-size: 11px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 2px;
  font-family: 'DM Sans', sans-serif;
  letter-spacing: .05em;
}
.mkt-q-body { flex: 1; min-width: 0; }
.mkt-label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: var(--navy);
  margin-bottom: 8px;
  line-height: 1.4;
}

/* Inputs */
.mkt-input {
  width: 100%;
  padding: 9px 12px;
  border: 1.5px solid var(--cream2);
  border-radius: 8px;
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  color: var(--text);
  outline: none;
  transition: border-color .15s;
  box-sizing: border-box;
  margin-top: 8px;
}
.mkt-input:focus { border-color: var(--gold); }

.mkt-textarea {
  width: 100%;
  min-height: 80px;
  padding: 10px 12px;
  border: 1.5px solid var(--cream2);
  border-radius: 8px;
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  color: var(--text);
  outline: none;
  resize: vertical;
  transition: border-color .15s;
  box-sizing: border-box;
  line-height: 1.6;
}
.mkt-textarea:focus { border-color: var(--gold); }

/* Chips de seleção */
.mkt-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 4px;
}
.mkt-chip {
  display:inline-flex;align-items:center;gap:4px;
  padding: 5px 12px;
  border-radius: 99px;
  border: 1.5px solid var(--cream2);
  background: #fff;
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
  cursor: pointer;
  transition: all .15s;
  font-family: 'DM Sans', sans-serif;
  white-space: nowrap;
}
.mkt-chip:hover {
  border-color: var(--gold);
  color: var(--navy);
  background: rgba(201,168,76,.08);
}
.mkt-chip.active {
  background: var(--navy);
  color: var(--gold);
  border-color: var(--navy);
}

/* Card resultado ICP */
.mkt-icp-card {
  background: #fff;
  border-radius: 14px;
  border: 1px solid var(--cream2);
  overflow: hidden;
}
.mkt-icp-header {
  background: linear-gradient(135deg, var(--navy), #1a3060);
  padding: 20px 24px;
  display: flex;
  align-items: center;
  gap: 14px;
}
.mkt-icp-avatar {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: rgba(201,168,76,.2);
  border: 2px solid var(--gold);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
}
.mkt-icp-nome {
  font-family: 'Playfair Display', serif;
  font-size: 17px;
  font-weight: 700;
  color: var(--gold);
  margin-bottom: 2px;
}
.mkt-icp-sub {
  font-size: 12px;
  color: rgba(255,255,255,.55);
}
.mkt-icp-body { padding: 20px 24px; }
.mkt-icp-section {
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--cream2);
}
.mkt-icp-section:last-child { border-bottom: none; margin-bottom: 0; }
.mkt-icp-section-title {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--muted);
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.mkt-icp-section-title::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--cream2);
}
.mkt-icp-text {
  font-size: 13px;
  color: var(--text);
  line-height: 1.7;
}
.mkt-icp-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}
.mkt-icp-tag {
  padding: 3px 10px;
  border-radius: 99px;
  font-size: 11px;
  font-weight: 600;
  background: var(--cream);
  color: var(--navy);
  border: 1px solid var(--cream2);
}
.mkt-icp-tag.danger { background: rgba(231,76,60,.1); color: #c0392b; border-color: rgba(231,76,60,.2); }
.mkt-icp-tag.success { background: rgba(39,174,96,.1); color: #1e8449; border-color: rgba(39,174,96,.2); }
.mkt-icp-tag.warning { background: rgba(241,196,15,.15); color: #c07820; border-color: rgba(241,196,15,.3); }

/* Score e métricas */
.mkt-score-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 8px;
  margin-bottom: 16px;
}
.mkt-score-item {
  background: var(--cream);
  border-radius: 8px;
  padding: 10px 12px;
  text-align: center;
}
.mkt-score-val {
  font-size: 12px;
  font-weight: 600;
  color: var(--navy);
  line-height: 1.45;
}
.mkt-score-label {
  font-size: 10px;
  color: var(--muted);
  margin-top: 4px;
  text-transform: uppercase;
  letter-spacing: .04em;
  font-weight: 700;
}

/* Tabs da campanha */
.mkt-camp-tab {
  display:inline-flex;align-items:center;justify-content:center;gap:5px;
  flex: 1;
  padding: 11px 8px;
  font-size: 12px;
  font-weight: 600;
  border: none;
  background: none;
  cursor: pointer;
  color: var(--muted);
  font-family: 'DM Sans', sans-serif;
  border-bottom: 3px solid transparent;
  transition: all .15s;
  white-space: nowrap;
}
.mkt-camp-tab:hover { color: var(--navy); background: var(--cream); }
.mkt-camp-tab.active { color: var(--navy); font-weight: 700; border-bottom-color: var(--gold); background: rgba(201,168,76,.05); }
.mkt-camp-view { display: none; }
.mkt-camp-view.active { display: block; }

/* Cards do calendário */
.mkt-cal-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;
  margin-bottom: 16px;
}
.mkt-cal-card {
  background: var(--cream);
  border-radius: 8px;
  padding: 10px;
  font-size: 11px;
  border: 1px solid var(--cream2);
  cursor: pointer;
  transition: all .15s;
}
.mkt-cal-card:hover { border-color: var(--gold); background: rgba(201,168,76,.06); }
.mkt-cal-dia { font-weight: 700; color: var(--navy); margin-bottom: 4px; font-size: 10px; text-transform: uppercase; }
.mkt-cal-tipo { 
  display: inline-block;
  font-size: 9px;
  font-weight: 700;
  padding: 1px 6px;
  border-radius: 99px;
  margin-bottom: 4px;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.mkt-tipo-educativo  { background:rgba(41,128,185,.12); color:#2471a3; }
.mkt-tipo-casos      { background:rgba(39,174,96,.12);  color:#1e8449; }
.mkt-tipo-autoridade { background:rgba(142,68,173,.12); color:#6c3483; }
.mkt-tipo-cta        { background:rgba(201,168,76,.2);  color:#8a6a00; }
.mkt-tipo-humanizado { background:rgba(231,126,34,.12); color:#c0622a; }
.mkt-cal-texto { color: var(--text); line-height: 1.4; }

/* Script cards */
.mkt-script-card {
  background: #fff;
  border: 1px solid var(--cream2);
  border-radius: 10px;
  margin-bottom: 12px;
  overflow: hidden;
}
.mkt-script-header {
  background: var(--cream);
  padding: 10px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 12px;
  font-weight: 700;
  color: var(--navy);
}
.mkt-script-body {
  padding: 14px 16px;
  font-size: 13px;
  line-height: 1.7;
  color: var(--text);
  white-space: pre-wrap;
}
.mkt-copy-btn {
  font-size: 11px;
  padding: 3px 10px;
  border-radius: 99px;
  border: 1px solid var(--cream2);
  background: #fff;
  cursor: pointer;
  color: var(--muted);
  font-family: 'DM Sans', sans-serif;
  transition: all .15s;
}
.mkt-copy-btn:hover { background: var(--navy); color: var(--gold); border-color: var(--navy); }


/* ── ABA ASSESSOR — destaque especial ── */
.tool-tab-assessor{
  background:linear-gradient(135deg,rgba(39,174,96,.12),rgba(39,174,96,.04)) !important;
  border:1.5px solid rgba(39,174,96,.35) !important;
  border-radius:8px !important;
  color:#1e8449 !important;
  font-weight:700 !important;
}
.tool-tab-assessor.active{
  background:linear-gradient(135deg,#27ae60,#1e8449) !important;
  color:#fff !important;
  border-color:#27ae60 !important;
}
.assessor-tab-badge{
  color:#e74c3c;font-size:16px;line-height:1;
  vertical-align:middle;margin-left:1px;
}

/* ── SCREEN ASSESSOR ── */
#screen-assessor.active{
  display:flex !important;
  flex-direction:column;
  height:100%;
  overflow:hidden;
}
.assessor-screen-layout{
  display:flex;
  flex-direction:column;
  height:100%;
  background:var(--cream);
}

/* Header da tela */
.assessor-screen-header{
  background:linear-gradient(135deg,#1e8449,#27ae60);
  padding:18px 28px;
  display:flex;align-items:center;gap:16px;
  flex-shrink:0;
  border-bottom:2px solid rgba(255,255,255,.15);
}
.assessor-screen-avatar{
  width:48px;height:48px;border-radius:12px;
  background:rgba(255,255,255,.2);
  display:flex;align-items:center;justify-content:center;
  font-size:24px;flex-shrink:0;
}
.assessor-screen-nome{
  font-family:'Playfair Display',serif;
  font-size:20px;font-weight:700;color:#fff;
}
.assessor-screen-status{
  font-size:12px;color:rgba(255,255,255,.75);
  display:flex;align-items:center;gap:6px;margin-top:2px;
}
.assessor-online-dot{
  width:7px;height:7px;border-radius:50%;
  background:#a8f0c0;
  animation:pulse-green 2s infinite;
}
@keyframes pulse-green{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.6;transform:scale(1.2)}
}

/* Chips de acesso rápido */
.assessor-quickchips{
  display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0;
  padding:12px 28px;
  background:#fff;
  border-bottom:1px solid var(--cream2);
  overflow-x:auto;
}
.assessor-qchip{
  display:inline-flex;align-items:center;gap:5px;
  padding:6px 14px;border-radius:99px;font-size:12px;font-weight:600;
  border:1.5px solid var(--cream2);background:#fff;color:var(--muted);
  cursor:pointer;transition:all .15s;
  font-family:DM Sans,sans-serif;white-space:nowrap;flex-shrink:0;
}
.assessor-qchip:hover{
  background:#27ae60;color:#fff;border-color:#27ae60;
}

/* Área de chat full */
.assessor-chat-full{
  flex:1;display:flex;flex-direction:column;min-height:0;
}
.assessor-msgs-full{
  flex:1;overflow-y:auto;padding:20px 28px;
  display:flex;flex-direction:column;gap:12px;
}
.assessor-input-bar{
  flex-shrink:0;padding:14px 28px;
  background:#fff;border-top:1px solid var(--cream2);
  display:flex;gap:10px;align-items:flex-end;
}
.assessor-input-full{
  flex:1;border:1.5px solid var(--cream2);border-radius:12px;
  padding:11px 16px;font-family:DM Sans,sans-serif;font-size:14px;
  resize:none;outline:none;min-height:44px;max-height:120px;
  transition:border-color .15s;line-height:1.5;
  box-sizing:border-box;
}
.assessor-input-full:focus{border-color:#27ae60;}
.assessor-send-btn{
  width:44px;height:44px;border-radius:11px;border:none;
  background:linear-gradient(135deg,#27ae60,#1e8449);
  color:#fff;cursor:pointer;display:flex;align-items:center;
  justify-content:center;flex-shrink:0;transition:all .15s;
}
.assessor-send-btn:hover{transform:scale(1.05);opacity:.9;}
.assessor-send-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;}

/* Mensagens */
.assessor-msg{
  display:flex;gap:10px;align-items:flex-start;max-width:80%;
}
.assessor-msg.user{margin-left:auto;flex-direction:row-reverse;}
.assessor-msg-bubble{
  padding:11px 16px;border-radius:14px;font-size:13px;
  line-height:1.7;max-width:100%;
}
.assessor-msg.bot .assessor-msg-bubble{
  background:#fff;border:1px solid var(--cream2);color:var(--text);
  border-radius:4px 14px 14px 14px;
}
.assessor-msg.user .assessor-msg-bubble{
  background:linear-gradient(135deg,#27ae60,#1e8449);
  color:#fff;border-radius:14px 4px 14px 14px;
}
.assessor-msg-avatar{
  width:32px;height:32px;border-radius:8px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;font-size:16px;
}
.assessor-msg.bot .assessor-msg-avatar{background:rgba(39,174,96,.12);}
.assessor-msg.user .assessor-msg-avatar{background:var(--navy);}
.assessor-typing{
  display:flex;gap:4px;align-items:center;padding:4px 0;
}
.assessor-typing-dot{
  width:6px;height:6px;border-radius:50%;background:#27ae60;
  animation:typing-bounce .8s ease infinite;
}
.assessor-typing-dot:nth-child(2){animation-delay:.15s;}
.assessor-typing-dot:nth-child(3){animation-delay:.3s;}
@keyframes typing-bounce{0%,80%,100%{transform:translateY(0)}40%{transform:translateY(-5px)}}


/* ── MONITOR DE CUSTOS IA ── */
#ia-cost-monitor{
  position:fixed;bottom:80px;left:16px;
  background:var(--navy);color:#fff;
  border-radius:10px;padding:8px 12px;
  font-size:11px;font-family:DM Sans,sans-serif;
  z-index:9000;opacity:.9;min-width:170px;
  border:1px solid rgba(201,168,76,.3);
  transition:all .3s;
  display:none;
}
#ia-cost-monitor.visible{display:block}
.iacm-row{display:flex;justify-content:space-between;gap:12px;margin-bottom:2px}
.iacm-label{color:rgba(255,255,255,.55);font-size:10px}
.iacm-val{font-weight:700;font-size:11px}
.iacm-saved{color:#2ecc71}
.iacm-model-haiku{color:#f39c12}
.iacm-model-sonnet{color:var(--gold)}
#ia-cost-toggle{
  display:none; /* só admin */
  position:fixed;bottom:80px;left:16px;
  background:var(--navy);color:rgba(255,255,255,.5);
  border-radius:8px;padding:5px 10px;font-size:10px;
  cursor:pointer;z-index:9001;border:1px solid rgba(255,255,255,.1);
  font-family:DM Sans,sans-serif;
  transition:all .2s;
}
#ia-cost-toggle:hover{color:#fff;border-color:var(--gold)}


/* ── SISTEMA DE CRÉDITOS IA ── */
.ia-creditos-bar{display:flex;align-items:center;gap:8px;padding:6px 12px;background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.2);border-radius:8px;font-size:12px;cursor:pointer;transition:all .15s;font-family:DM Sans,sans-serif;}
.ia-creditos-bar:hover{background:rgba(201,168,76,.15)}
.ia-cred-num{font-weight:700;color:var(--navy)}
.ia-cred-num.baixo{color:#e74c3c}
.ia-cred-num.medio{color:#c07820}
.ia-cred-num.ok{color:#27ae60}
.ia-cred-label{color:var(--muted);font-size:11px}
.modal-creditos{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:99999;}
.modal-cred-card{background:#fff;border-radius:16px;padding:32px;max-width:420px;width:90%;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.25);}
.modal-cred-icon{font-size:48px;margin-bottom:12px}
.modal-cred-titulo{font-family:Playfair Display,serif;font-size:22px;font-weight:700;color:var(--navy);margin-bottom:8px}
.modal-cred-sub{font-size:14px;color:var(--muted);line-height:1.6;margin-bottom:20px}
.modal-cred-planos{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}
.modal-cred-plano{border:1.5px solid var(--cream2);border-radius:10px;padding:12px;cursor:pointer;transition:all .15s;text-align:left;}
.modal-cred-plano:hover{border-color:var(--gold);background:rgba(201,168,76,.05)}
.modal-cred-plano.destaque{border-color:var(--navy);background:var(--navy)}
.modal-cred-plano.destaque .mcp-nome{color:var(--gold)}
.modal-cred-plano.destaque .mcp-preco{color:#fff}
.modal-cred-plano.destaque .mcp-cred{color:rgba(255,255,255,.6)}
.mcp-nome{font-weight:700;font-size:13px;color:var(--navy);margin-bottom:2px}
.mcp-preco{font-size:16px;font-weight:700;color:var(--navy)}
.mcp-cred{font-size:11px;color:var(--muted);margin-top:2px}
.trial-banner{background:linear-gradient(135deg,#27ae60,#1e8449);color:#fff;padding:8px 20px;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.trial-banner.expirando{background:linear-gradient(135deg,#c07820,#d35400)}
.trial-banner.expirado{background:linear-gradient(135deg,#c0392b,#962d22)}
/* ── ONBOARDING ──────────────────────────────────────────────── */
.onboard-overlay{position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:88888;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.onboard-card{background:#fff;border-radius:22px;padding:0;max-width:560px;width:94%;overflow:hidden;box-shadow:0 32px 100px rgba(0,0,0,.4);display:flex;flex-direction:column}
/* Visual colorido por passo */
.onboard-visual{position:relative;height:130px;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:background .5s ease;flex-shrink:0}
.onboard-visual-icon{font-size:52px;position:relative;z-index:2;line-height:1;filter:drop-shadow(0 4px 16px rgba(0,0,0,.35));transition:transform .3s ease}
.onboard-visual:hover .onboard-visual-icon{transform:scale(1.08)}
.onboard-visual-glow{position:absolute;width:200px;height:200px;border-radius:50%;background:rgba(255,255,255,.06);top:50%;left:50%;transform:translate(-50%,-50%)}
/* Barra de progresso */
.onboard-bar{height:3px;background:rgba(0,0,0,.06);flex-shrink:0}
.onboard-bar-fill{height:100%;background:linear-gradient(90deg,var(--gold),var(--gold2));transition:width .4s ease;border-radius:0 2px 2px 0}
/* Header */
.onboard-header{padding:20px 28px 16px;text-align:center;background:#fff}
.onboard-step-dots{display:flex;gap:6px;justify-content:center;margin-bottom:12px}
.onboard-dot{width:7px;height:7px;border-radius:50%;background:rgba(15,30,53,.15);cursor:pointer;transition:all .3s}
.onboard-dot.active{background:var(--navy);width:20px;border-radius:4px}
.onboard-dot:hover{background:rgba(15,30,53,.35)}
.onboard-titulo{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--navy);margin-bottom:5px;line-height:1.25}
.onboard-sub{font-size:12.5px;color:var(--muted);line-height:1.55;max-width:460px;margin:0 auto}
/* Body */
.onboard-body{padding:20px 28px 24px;display:flex;flex-direction:column}
.onboard-body-inner{overflow:hidden}
@keyframes onboardSlideIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}
.onboard-slide-in{animation:onboardSlideIn .28s ease}
.onboard-features{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
.onboard-feature{display:flex;gap:13px;align-items:flex-start;padding:10px 12px;border-radius:10px;background:var(--cream3);transition:background .15s}
.onboard-feature:hover{background:var(--cream2)}
.onboard-feat-icon{width:38px;height:38px;border-radius:9px;background:#fff;border:1px solid var(--cream2);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;box-shadow:0 1px 4px rgba(0,0,0,.06)}
.onboard-feat-titulo{font-weight:700;font-size:12.5px;color:var(--navy);margin-bottom:2px}
.onboard-feat-desc{font-size:11.5px;color:var(--muted);line-height:1.5}
/* Último passo — CTAs grandes */
.onboard-cta-btn{width:100%;display:flex;align-items:center;gap:13px;padding:12px 14px;border-radius:11px;border:1.5px solid var(--cream2);background:#fff;cursor:pointer;font-family:'DM Sans',sans-serif;text-align:left;transition:all .15s;margin-bottom:8px}
.onboard-cta-btn:hover{border-color:var(--gold);background:rgba(201,168,76,.04);transform:translateX(2px)}
.onboard-cta-icon{font-size:22px;flex-shrink:0;width:38px;text-align:center}
.onboard-cta-body{flex:1;min-width:0}
.onboard-cta-titulo{font-size:13px;font-weight:700;color:var(--navy);display:block;margin-bottom:2px}
.onboard-cta-desc{font-size:11px;color:var(--muted);line-height:1.45;display:block}
.onboard-cta-arrow{font-size:16px;color:var(--gold);flex-shrink:0;opacity:.7}
.onboard-cta-btn:hover .onboard-cta-arrow{opacity:1}
/* Footer */
.onboard-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:4px;border-top:1px solid var(--cream2);margin-top:4px}
.onboard-progress{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.onboard-btn-skip{background:none;border:none;color:var(--muted);font-size:12px;cursor:pointer;font-family:'DM Sans',sans-serif;padding:0;transition:color .15s}
.onboard-btn-skip:hover{color:var(--navy)}
.onboard-btn-back{background:none;border:1px solid var(--cream2);color:var(--muted);font-size:12px;cursor:pointer;font-family:'DM Sans',sans-serif;padding:7px 13px;border-radius:8px;transition:all .15s}
.onboard-btn-back:hover{border-color:var(--navy);color:var(--navy)}
.onboard-btn-prox{padding:9px 20px!important;font-size:13px!important}
/* Mobile */
@media(max-width:520px){
  .onboard-card{width:100%;border-radius:18px 18px 0 0;position:fixed;bottom:0;left:0;right:0;max-width:100%}
  .onboard-overlay{align-items:flex-end}
  .onboard-visual{height:100px}
  .onboard-visual-icon{font-size:42px}
  .onboard-header{padding:16px 20px 12px}
  .onboard-body{padding:16px 20px 28px}
  .onboard-titulo{font-size:18px}
}


/* ════════════════════════════════════════════════════════
   NOTION-INSPIRED FEATURES — Dr. Contratus
   1. Editor rico com IA inline
   2. Base Jurídica
   3. Tarefas por Processo
   4. Ata de Reunião com IA
════════════════════════════════════════════════════════ */

/* ── 1. EDITOR RICO COM IA INLINE ── */
#ct{
  white-space:pre-wrap;
  font-family:DM Sans,sans-serif;
  font-size:14px;
  line-height:1.9;
  color:var(--text);
  padding:8px 4px;
  min-height:200px;
  outline:none;
  cursor:text;
}
/* Toolbar flutuante de IA inline */
#ia-inline-toolbar{
  position:fixed;
  background:var(--navy);
  border-radius:10px;
  padding:6px 8px;
  display:none;
  align-items:center;
  gap:4px;
  z-index:9999;
  box-shadow:0 8px 28px rgba(0,0,0,.3);
  border:1px solid rgba(255,255,255,.1);
}
#ia-inline-toolbar.show{display:flex}
.ia-tb-btn{
  display:flex;align-items:center;gap:5px;
  padding:5px 10px;border-radius:7px;
  font-size:11px;font-weight:600;
  color:rgba(255,255,255,.8);
  cursor:pointer;background:none;border:none;
  font-family:DM Sans,sans-serif;
  transition:all .15s;white-space:nowrap;
}
.ia-tb-btn:hover{background:rgba(255,255,255,.12);color:#fff}
.ia-tb-sep{width:1px;height:16px;background:rgba(255,255,255,.15);margin:0 2px}
.ia-tb-loading{
  padding:5px 12px;font-size:11px;color:var(--gold);
  font-family:DM Sans,sans-serif;
}
/* Highlight da seleção ao processar */
.ia-processing-selection{
  background:rgba(201,168,76,.2) !important;
  border-radius:3px;
}
/* Resultado inline */
.ia-inline-result{
  background:linear-gradient(135deg,rgba(39,174,96,.08),rgba(39,174,96,.03));
  border-left:3px solid var(--green);
  border-radius:0 8px 8px 0;
  padding:10px 14px;
  margin:8px 0;
  font-size:13px;
  line-height:1.8;
  position:relative;
}
.ia-inline-result-actions{
  display:flex;gap:6px;margin-top:8px;flex-wrap:wrap;
}
.ia-res-btn{
  padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;
  cursor:pointer;border:none;font-family:DM Sans,sans-serif;transition:all .15s;
}
.ia-res-aceitar{background:var(--green);color:#fff}
.ia-res-aceitar:hover{opacity:.85}
.ia-res-descartar{background:var(--cream2);color:var(--muted)}
.ia-res-descartar:hover{background:var(--cream)}
/* Editor do workspace rico */
#doc-conteudo{
  font-size:14px;
  line-height:1.9;
  padding:20px 24px;
  font-family:DM Sans,sans-serif;
  resize:none;
  border:none;
  outline:none;
  flex:1;
  background:transparent;
  color:var(--text);
}

/* ── 2. BASE JURÍDICA (nova aba no Workspace) ── */
.base-juridica-layout{
  display:grid;
  grid-template-columns:240px 1fr;
  height:100%;
  overflow:hidden;
}
.base-sidebar{
  border-right:1px solid var(--cream2);
  overflow-y:auto;
  background:var(--cream3);
}
.base-sidebar-hdr{
  padding:14px 16px 10px;
  font-size:10px;font-weight:700;
  text-transform:uppercase;letter-spacing:.08em;
  color:var(--muted);
  display:flex;align-items:center;justify-content:space-between;
}
.base-item{
  padding:9px 16px;
  font-size:13px;color:var(--text);
  cursor:pointer;transition:background .1s;
  display:flex;align-items:center;gap:8px;
  border-left:2px solid transparent;
}
.base-item:hover{background:var(--cream2)}
.base-item.active{
  background:#fff;
  border-left-color:var(--gold);
  font-weight:600;color:var(--navy);
}
.base-cat-label{
  padding:6px 16px 3px;
  font-size:10px;font-weight:700;
  text-transform:uppercase;letter-spacing:.08em;
  color:var(--muted);margin-top:8px;
}
.base-editor-area{
  display:flex;flex-direction:column;height:100%;overflow:hidden;
}
.base-editor-hdr{
  padding:14px 24px;border-bottom:1px solid var(--cream2);
  display:flex;align-items:center;gap:12px;flex-shrink:0;
}
.base-titulo-input{
  flex:1;font-size:17px;font-weight:700;
  border:none;outline:none;background:transparent;
  font-family:'Playfair Display',serif;color:var(--navy);
}
.base-content{
  flex:1;overflow-y:auto;padding:24px;
}
.base-textarea{
  width:100%;min-height:300px;
  border:none;outline:none;resize:none;
  font-size:14px;line-height:1.9;
  font-family:DM Sans,sans-serif;
  color:var(--text);background:transparent;
}
.base-tag{
  display:inline-flex;align-items:center;gap:4px;
  padding:2px 8px;border-radius:99px;
  font-size:10px;font-weight:600;
  background:rgba(201,168,76,.15);color:var(--gold);
  border:1px solid rgba(201,168,76,.25);
}
.base-empty{
  display:flex;flex-direction:column;align-items:center;
  justify-content:center;height:100%;gap:12px;
  color:var(--muted);
}
.base-search-bar{
  padding:10px 16px;border-bottom:1px solid var(--cream2);flex-shrink:0;
}
.base-search-input{
  width:100%;padding:8px 12px;
  border:1px solid var(--cream2);border-radius:8px;
  font-size:12px;font-family:DM Sans,sans-serif;
  background:#fff;outline:none;color:var(--text);
}
.base-search-input:focus{border-color:var(--gold)}

/* ── 3. TAREFAS POR PROCESSO ── */
.proc-tasks-panel{
  border-top:1px solid var(--cream2);
  margin-top:16px;
}
.proc-tasks-hdr{
  padding:12px 16px;
  display:flex;align-items:center;justify-content:space-between;
  background:var(--cream3);cursor:pointer;
  font-size:13px;font-weight:700;color:var(--navy);
  border-radius:8px;
}
.proc-tasks-hdr:hover{background:var(--cream2)}
.proc-tasks-body{display:none;padding:12px 0}
.proc-tasks-body.open{display:block}
.proc-task-item{
  display:flex;align-items:flex-start;gap:10px;
  padding:8px 16px;border-radius:8px;
  transition:background .1s;cursor:pointer;
}
.proc-task-item:hover{background:var(--cream)}
.proc-task-check{
  width:17px;height:17px;border-radius:4px;
  border:2px solid var(--cream2);
  flex-shrink:0;margin-top:1px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:all .15s;
}
.proc-task-check.done{background:var(--green);border-color:var(--green)}
.proc-task-check.done::after{content:'✓';color:#fff;font-size:10px;font-weight:700}
.proc-task-text{flex:1;font-size:13px;color:var(--text);line-height:1.4}
.proc-task-text.done{text-decoration:line-through;color:var(--muted)}
.proc-task-prazo{font-size:10px;color:var(--muted);margin-top:2px}
.proc-task-prazo.vencido{color:var(--red);font-weight:600}
.proc-task-add{
  display:flex;align-items:center;gap:8px;
  padding:6px 16px;
}
.proc-task-add-input{
  flex:1;padding:6px 10px;border:1px solid var(--cream2);
  border-radius:7px;font-size:12px;font-family:DM Sans,sans-serif;
  outline:none;
}
.proc-task-add-input:focus{border-color:var(--gold)}
.proc-tasks-progress{
  height:4px;border-radius:99px;background:var(--cream2);
  margin:0 16px 10px;overflow:hidden;
}
.proc-tasks-progress-bar{
  height:4px;border-radius:99px;
  background:linear-gradient(90deg,var(--green),#2ecc71);
  transition:width .3s;
}
.proc-tasks-template-btn{
  font-size:11px;color:var(--gold);background:none;border:none;
  cursor:pointer;padding:0 16px;font-family:DM Sans,sans-serif;
  font-weight:600;
}

/* ── 4. ATA DE REUNIÃO ── */
.ata-modal-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.5);
  z-index:10001;display:none;align-items:center;justify-content:center;
}
.ata-modal-overlay.show{display:flex}
.ata-modal-card{
  background:#fff;border-radius:16px;
  padding:32px;width:90%;max-width:560px;
  box-shadow:0 24px 80px rgba(0,0,0,.25);
  max-height:90vh;overflow-y:auto;
}
.ata-modal-titulo{
  font-family:'Playfair Display',serif;
  font-size:20px;font-weight:700;color:var(--navy);
  margin-bottom:6px;
}
.ata-modal-sub{font-size:13px;color:var(--muted);margin-bottom:20px}
.ata-field{margin-bottom:14px}
.ata-field label{
  display:block;font-size:11px;font-weight:700;
  text-transform:uppercase;letter-spacing:.06em;
  color:var(--muted);margin-bottom:5px;
}
.ata-field textarea,.ata-field input,.ata-field select{
  width:100%;padding:10px 14px;
  border:1.5px solid var(--cream2);border-radius:9px;
  font-family:DM Sans,sans-serif;font-size:13px;
  outline:none;resize:vertical;
  transition:border-color .15s;
}
.ata-field textarea:focus,.ata-field input:focus,.ata-field select:focus{
  border-color:var(--gold);
}
.ata-result{
  background:var(--cream3);border-radius:10px;
  padding:16px;margin-top:16px;
  font-size:13px;line-height:1.8;
  border-left:3px solid var(--gold);
  white-space:pre-wrap;max-height:280px;overflow-y:auto;
  display:none;
}
.ata-result.show{display:block}

/* ── BOTÃO ATA nos cards de clientes ── */
.btn-ata{
  display:inline-flex;align-items:center;gap:5px;
  padding:5px 11px;border-radius:7px;
  background:rgba(201,168,76,.1);
  border:1px solid rgba(201,168,76,.25);
  color:var(--gold);font-size:11px;font-weight:600;
  cursor:pointer;transition:all .15s;
  font-family:DM Sans,sans-serif;
}
.btn-ata:hover{background:rgba(201,168,76,.2)}

/* ────────── BLOCO 14  (linha original 26858) ────────── */
    @keyframes pwa-slide-up {
      from { transform: translateY(20px); opacity: 0; }
      to   { transform: translateY(0);    opacity: 1; }
    }
  

/* ────────── BLOCO 15  (linha original 35914) ────────── */
#screen-jurimetria.active{display:flex!important;flex-direction:column;overflow:hidden}
#screen-jurimetria .juri-screen-wrap{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;background:var(--cream)}
#screen-jurimetria .juri-screen-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:24px 28px;min-height:0}
#screen-jurimetria .juri-screen-header{flex-shrink:0}

/* ══ CALENDÁRIO UNIFICADO ════════════════════════════════════════ */

/* Barra de filtros */
.cal-filtros-bar{display:flex;gap:6px;padding:8px 16px;background:#fff;border-bottom:1px solid var(--cream2);flex-shrink:0;flex-wrap:wrap;align-items:center}
.cal-filtros-label{font-size:10px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-right:2px;flex-shrink:0}
.cal-filtro-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;border:1.5px solid var(--cream2);background:#fff;font-size:10px;font-family:"DM Sans",sans-serif;cursor:pointer;color:var(--muted);transition:all .15s;white-space:nowrap}
.cal-filtro-chip.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.cal-filtro-chip:hover:not(.active){border-color:var(--gold);color:var(--navy)}

/* Chips de evento no calendário mensal */
.cal-day-eventos{display:flex;flex-direction:column;gap:2px;margin-top:2px}
.cal-ev-chip{font-size:9px;padding:2px 5px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4;font-weight:500}
.cal-day.tem-evento-dia{border-color:rgba(33,118,174,.25);background:#f8fbff}

/* Semana: evento item */
.sem-ev-item{padding:5px 7px;border-radius:6px;margin-bottom:4px;cursor:pointer;transition:opacity .15s}
.sem-ev-item:hover{opacity:.8}
.sem-ev-titulo{font-size:11px;font-weight:500;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sem-ev-proc{font-size:9px;color:var(--muted);margin-top:1px}
.sem-vazio{font-size:10px;color:var(--muted);text-align:center;padding:8px;opacity:.5}

/* Lista: evento row */
.lista-ev-row{background:#fff;border:1px solid var(--cream2);border-radius:8px;padding:10px 12px;margin-bottom:5px;display:flex;align-items:center;gap:10px;cursor:pointer;transition:all .15s}
.lista-ev-row:hover{border-color:var(--gold)}

/* Modal de dia */
.modal-dia-cal{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:600;display:flex;align-items:center;justify-content:center;padding:16px}
.modal-dia-card{background:#fff;border-radius:14px;width:100%;max-width:420px;box-shadow:0 8px 40px rgba(0,0,0,.18);overflow:hidden;display:flex;flex-direction:column;max-height:90vh}
.modal-dia-header{background:var(--navy);padding:14px 18px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.modal-dia-data{font-size:13px;font-weight:600;color:#fff}
.modal-dia-close{background:none;border:none;color:rgba(255,255,255,.6);cursor:pointer;font-size:16px;padding:0;line-height:1}
.modal-dia-close:hover{color:#fff}
.modal-dia-body{flex:1;overflow-y:auto;padding:12px;min-height:0}
.dia-vazio{text-align:center;padding:24px 0;color:var(--muted);font-size:12px;line-height:1.7}
.dia-ev-item{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:8px;margin-bottom:6px;cursor:pointer;transition:opacity .15s}
.dia-ev-item:hover{opacity:.85}
.dia-ev-titulo{font-size:12px;font-weight:500;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dia-ev-sub{font-size:10px;color:var(--muted);margin-top:1px}
.dia-ev-acoes{display:flex;gap:2px;flex-shrink:0}
.dia-ev-btn{background:none;border:none;cursor:pointer;font-size:13px;padding:3px 4px;border-radius:4px;transition:background .15s}
.dia-ev-btn:hover{background:rgba(0,0,0,.07)}
.cal-btn-add-evento{width:calc(100% - 24px);margin:0 12px 12px;padding:9px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-size:12px;font-family:"DM Sans",sans-serif;cursor:pointer;transition:background .15s;flex-shrink:0}
.cal-btn-add-evento:hover{background:#0a1a35}

/* Modal novo/editar evento */
.modal-evento-cal{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:610;display:flex;align-items:center;justify-content:center;padding:16px}
.modal-evento-card{background:#fff;border-radius:14px;width:100%;max-width:500px;box-shadow:0 8px 40px rgba(0,0,0,.18);overflow-y:auto;max-height:92vh;padding:20px}

/* Seletor de tipo de evento */
.evento-tipo-btns{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.etb{padding:5px 11px;border-radius:20px;border:1.5px solid var(--cream2);background:#fff;font-size:11px;font-family:"DM Sans",sans-serif;cursor:pointer;color:var(--muted);transition:all .15s;white-space:nowrap}
.etb.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.etb:hover:not(.active){border-color:var(--gold);color:var(--navy)}
.evento-campos-grupo{margin-bottom:4px}

@media(max-width:767px){
  .cal-filtros-bar{gap:4px;padding:6px 10px}
  .cal-filtro-chip{font-size:9px;padding:2px 8px}
  .modal-dia-card{max-width:100%}
  .modal-evento-card{max-width:100%}
  .evento-tipo-btns{gap:4px}
  .etb{font-size:10px;padding:4px 8px}
}

/* ══ KANBAN UNIFICADO ════════════════════════════════════════════ */

/* Botão filtro proc_tarefas no header do Kanban */
.kbtn-proc{padding:4px 10px;border-radius:6px;font-size:11px;font-weight:500;font-family:"DM Sans",sans-serif;cursor:pointer;border:1.5px solid var(--cream2);background:#fff;color:var(--muted);transition:all .15s;white-space:nowrap}
.kbtn-proc-active{background:#f2edfb;color:#7B4FD8;border-color:#7B4FD8}
.kbtn-proc:hover:not(.kbtn-proc-active){border-color:var(--gold);color:var(--navy)}

/* Card de proc_tarefa — borda roxa + fundo levemente tintado */
.kt-proc-card{border-left:3px solid #7B4FD8!important;background:#fdf9ff!important}
.kt-proc-card:hover{border-color:#7B4FD8!important}

/* Badge do processo no topo do card */
.kt-proc-badge{font-size:9px;font-weight:600;color:#7B4FD8;background:#f2edfb;padding:2px 7px;border-radius:4px;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}

/* Badge inline na lista */
.kt-proc-badge-sm{font-size:9px;font-weight:600;color:#7B4FD8;background:#f2edfb;padding:1px 6px;border-radius:4px;margin-bottom:3px;display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Prioridade Alta (entre normal e urgente) */
.kp-alta{background:#FEF3E2;color:#7a4400}

/* Item de processo na lista */
.lista-item-proc{border-left:3px solid #7B4FD8}

@media(max-width:767px){
  .kbtn-proc{font-size:10px;padding:3px 8px}
  .kt-proc-badge{font-size:8px}
}

/* ══ ESCRITÓRIO MULTI-USUÁRIO (js/27-escritorio.js) ══════════ */
.escr-modal-card{background:#fff;border-radius:20px;max-width:560px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,.25)}
.escr-modal-hdr{background:linear-gradient(135deg,#0F1E35,#1a3050);padding:22px 24px;display:flex;align-items:center;gap:14px;flex-shrink:0}
.escr-modal-hdr-icon{width:42px;height:42px;background:rgba(255,255,255,.12);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.escr-modal-hdr-info{flex:1;min-width:0}
.escr-modal-hdr-title{font-size:17px;font-weight:700;color:#fff}
.escr-modal-hdr-sub{font-size:11px;color:rgba(255,255,255,.45);margin-top:2px}
.escr-modal-close{background:none;border:none;color:rgba(255,255,255,.4);font-size:20px;cursor:pointer;padding:4px 8px;border-radius:8px;transition:all .15s;line-height:1}
.escr-modal-close:hover{color:#fff;background:rgba(255,255,255,.1)}
.escr-modal-body{padding:20px;overflow-y:auto;flex:1}

/* Onboarding / Criar */
.escr-onboard{text-align:center;padding:8px 0 16px}
.escr-onboard-icon{font-size:2.8rem;margin-bottom:12px}
.escr-onboard-title{font-size:17px;font-weight:700;color:#0F1E35;margin:0 0 8px}
.escr-onboard-desc{font-size:13px;color:#666;line-height:1.65;margin-bottom:22px}

/* Formulário */
.escr-form-group{margin-bottom:14px;text-align:left}
.escr-label{font-size:12px;font-weight:600;color:#444;display:block;margin-bottom:5px}
.escr-input{width:100%;padding:9px 12px;border:1.5px solid #ddd;border-radius:10px;font-size:14px;font-family:inherit;outline:none;box-sizing:border-box;transition:border-color .15s}
.escr-input:focus{border-color:#27ae60}
.escr-select{padding:9px 10px;border:1.5px solid #ddd;border-radius:10px;font-size:13px;font-family:inherit;outline:none;cursor:pointer;background:#fff}

/* Botões */
.escr-btn-primary{background:#27ae60;color:#fff;border:none;border-radius:10px;padding:10px 18px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}
.escr-btn-primary:hover{background:#219a52}
.escr-btn-primary:disabled{background:#999;cursor:not-allowed}
.escr-btn-danger-sm{background:none;border:1.5px solid #e74c3c;color:#e74c3c;border-radius:8px;padding:4px 10px;font-size:11px;cursor:pointer;flex-shrink:0;transition:all .15s}
.escr-btn-danger-sm:hover{background:#ffeaea}
.escr-btn-link{background:none;border:none;color:#27ae60;font-size:12px;cursor:pointer;text-decoration:underline;flex-shrink:0;padding:4px 6px}

/* Seções */
.escr-section{margin-bottom:16px;border:1px solid #eee;border-radius:12px;overflow:hidden}
.escr-section-hdr{display:flex;align-items:center;justify-content:space-between;padding:11px 16px;background:#f9f9f9;border-bottom:1px solid #eee}
.escr-section-title{font-size:13px;font-weight:700;color:#0F1E35}
.escr-count{font-size:11px;background:#e8f5e9;color:#27ae60;padding:2px 8px;border-radius:99px;font-weight:600}

/* Membros */
.escr-membro-item{display:flex;align-items:center;gap:12px;padding:11px 16px;border-bottom:1px solid #f0f0f0}
.escr-membro-item:last-child{border-bottom:none}
.escr-membro-av{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#27ae60,#1e8449);color:#fff;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.escr-membro-info{flex:1;min-width:0}
.escr-membro-nome{font-size:13px;font-weight:600;color:#222}
.escr-membro-sub{font-size:11px;color:#888}
.escr-me-tag{background:#e8f5e9;color:#27ae60;font-size:10px;font-weight:600;padding:1px 5px;border-radius:4px;margin-left:4px}

/* Role badges */
.escr-role-badge{font-size:10px;font-weight:600;padding:3px 8px;border-radius:99px;flex-shrink:0;white-space:nowrap}
.escr-role-dono{background:#fff3e0;color:#e67e22}
.escr-role-admin{background:#e3f2fd;color:#1565c0}
.escr-role-membro{background:#f0f4ff;color:#5c6bc0}
.escr-role-estagiario{background:#f5f5f5;color:#757575}

/* Convites */
.escr-convite-item{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid #f0f0f0}
.escr-convite-item:last-child{border-bottom:none}
.escr-convite-exp{opacity:.5}
.escr-convite-info{flex:1;min-width:0}
.escr-convite-email{font-size:13px;font-weight:500;color:#222;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.escr-convite-sub{font-size:11px;color:#888}

/* Formulário de convite */
.escr-convidar-body{padding:14px 16px}
.escr-form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.escr-form-row .escr-input{flex:1;min-width:150px}
.escr-help-text{font-size:11px;color:#999;margin-top:8px}

/* Link gerado */
.escr-link-display{background:#f0fff4;border:1.5px solid #27ae60;border-radius:12px;padding:14px;margin-top:14px}
.escr-link-label{font-size:12px;font-weight:600;color:#27ae60;margin-bottom:8px}
.escr-link-url{font-size:11px;color:#333;word-break:break-all;background:#fff;padding:8px 10px;border-radius:8px;border:1px solid #c8e6c9;margin-bottom:10px;font-family:monospace}

/* Toast */
.escr-toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);background:#0F1E35;color:#fff;padding:10px 22px;border-radius:99px;font-size:13px;font-weight:600;z-index:99999;pointer-events:none;animation:escrToastIn .2s ease}
@keyframes escrToastIn{from{opacity:0;transform:translateX(-50%) translateY(8px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}

/* Aviso de erro */
.escr-aviso{text-align:center;padding:32px 16px;color:#555}
.escr-aviso p{font-size:14px;line-height:1.6;margin-bottom:20px}

/* Item no dropdown do usuário */
.escr-udrop-item{border-top:1px solid #f0f0f0}

@media(max-width:600px){
  .escr-form-row{flex-direction:column}
  .escr-form-row .escr-input,.escr-form-row .escr-select,.escr-form-row .escr-btn-primary{width:100%;box-sizing:border-box}
}

/* ══ WORKSPACE → PAINEL EQUIPE ════════════════════════════════ */
.ws-equipe-wrap{flex:1;overflow-y:auto;padding:20px}
.ws-equipe-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;background:#fff;border:1px solid #eee;border-radius:14px;padding:18px 20px;margin-bottom:16px;flex-wrap:wrap}
.ws-equipe-nome{font-size:17px;font-weight:700;color:#0F1E35}
.ws-equipe-cnpj{font-size:12px;color:var(--muted);margin-top:3px}

/* Barra de slots */
.ws-slots-wrap{min-width:200px;flex:1;max-width:280px}
.ws-slots-label{display:flex;justify-content:space-between;font-size:12px;color:#555;margin-bottom:6px}
.ws-slots-plano{font-weight:600;color:#27ae60;font-size:11px;background:#e8f5e9;padding:1px 7px;border-radius:99px}
.ws-slots-bar{height:7px;background:#f0f0f0;border-radius:99px;overflow:hidden}
.ws-slots-fill{height:100%;border-radius:99px;transition:width .4s ease}

/* Seções */
.ws-equipe-section{background:#fff;border:1px solid #eee;border-radius:12px;overflow:hidden;margin-bottom:14px}
.ws-equipe-section-hdr{display:flex;align-items:center;justify-content:space-between;padding:11px 16px;background:#f9f9f9;border-bottom:1px solid #eee}
.ws-equipe-section-title{font-size:13px;font-weight:700;color:#0F1E35}

/* Linhas de membros */
.ws-membros-list{padding:4px 0}
.ws-membro-row{display:flex;align-items:center;gap:12px;padding:11px 16px;border-bottom:1px solid #f5f5f5}
.ws-membro-row:last-child{border-bottom:none}

/* Formulário de convite */
.ws-convidar-body{padding:14px 16px}
.ws-convidar-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ws-convidar-row .escr-input{flex:1;min-width:160px}

/* Upgrade CTA */
.ws-upgrade-box{background:#fff8f0;border:1.5px solid #f0ad4e;border-radius:12px;padding:20px;text-align:center;margin-bottom:14px}
.ws-upgrade-icon{font-size:2rem;margin-bottom:8px}
.ws-upgrade-msg{font-size:13px;color:#555;margin-bottom:14px;line-height:1.5}

/* Empty state */
.ws-equipe-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 24px;height:100%}
.ws-equipe-empty-icon{font-size:3rem;margin-bottom:14px}
.ws-equipe-empty-title{font-size:17px;font-weight:700;color:#0F1E35;margin:0 0 8px}
.ws-equipe-empty-desc{font-size:13px;color:#666;line-height:1.65;margin-bottom:22px;max-width:380px}

/* Separador na nav do Workspace */
.ws-nav-sep{height:1px;background:#f0f0f0;margin:6px 12px}

/* ── Equipe Overlay — tabs + chat + reuniões ─────────── */
.eq-overlay-hdr{display:flex;align-items:center;gap:12px;padding:16px 20px 12px;flex-shrink:0;border-bottom:1px solid rgba(15,30,53,.08)}
.eq-back-btn{background:none;border:none;font-size:18px;cursor:pointer;color:var(--muted);padding:4px 8px;border-radius:8px;line-height:1;transition:background .15s}
.eq-back-btn:hover{background:rgba(0,0,0,.06)}
.eq-overlay-title{font-size:15px;font-weight:700;color:#0F1E35}
.eq-tabs{display:flex;align-items:center;gap:2px;padding:0 16px;background:#fff;border-bottom:1.5px solid #eee;flex-shrink:0}
.eq-tab{display:inline-flex;align-items:center;gap:6px;padding:12px 16px;font-size:13px;font-weight:600;color:#666;background:none;border:none;border-bottom:2.5px solid transparent;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s;white-space:nowrap;margin-bottom:-1.5px}
.eq-tab:hover{color:#0F1E35;background:rgba(15,30,53,.04)}
.eq-tab.active{color:var(--gold);border-bottom-color:var(--gold)}
.eq-tab svg{flex-shrink:0}
.eq-panel{flex:1;min-height:0}
.eq-panel-scroll{overflow-y:auto;padding:20px}
.eq-panel-chat{display:flex;flex-direction:column;overflow:hidden}
/* Chat */
.eq-chat-msgs{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:4px}
.eq-chat-sep{text-align:center;font-size:11px;color:#999;margin:10px 0 6px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.eq-msg{display:flex;align-items:flex-end;gap:8px;max-width:78%}
.eq-msg-meu{align-self:flex-end;flex-direction:row-reverse}
.eq-msg-av{width:28px;height:28px;border-radius:50%;background:#0F1E35;color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.eq-msg-wrap{display:flex;flex-direction:column;gap:2px}
.eq-msg-autor{font-size:11px;font-weight:600;color:#666;margin-left:4px;padding-bottom:1px}
.eq-msg-bolha{background:#fff;border:1px solid #e8e8e8;border-radius:16px;border-bottom-left-radius:4px;padding:9px 13px;font-size:13.5px;color:#1a1a2e;line-height:1.5;word-break:break-word;position:relative;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.eq-msg-meu .eq-msg-bolha{background:#0F1E35;color:#fff;border-color:#0F1E35;border-radius:16px;border-bottom-right-radius:4px;box-shadow:none}
.eq-msg-hora{display:block;font-size:10px;color:rgba(0,0,0,.4);text-align:right;margin-top:3px}
.eq-msg-meu .eq-msg-hora{color:rgba(255,255,255,.55)}
.eq-chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:var(--muted);font-size:13px;line-height:1.6;padding:24px}
.eq-chat-input-row{display:flex;align-items:flex-end;gap:10px;padding:12px 16px;border-top:1.5px solid #eee;background:#fff;flex-shrink:0}
.eq-chat-input{flex:1;border:1.5px solid #e0e0e0;border-radius:20px;padding:9px 16px;font-size:13.5px;font-family:'DM Sans',sans-serif;resize:none;outline:none;max-height:120px;overflow-y:auto;line-height:1.5;transition:border .15s}
.eq-chat-input:focus{border-color:var(--gold)}
.eq-chat-enviar{width:38px;height:38px;border-radius:50%;background:#0F1E35;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s;margin-bottom:2px}
.eq-chat-enviar:hover{background:var(--gold)}
/* Reuniões */
.eq-reun-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.eq-reun-toolbar-title{font-size:15px;font-weight:700;color:#0F1E35}
.eq-reun-nova-btn{background:#0F1E35;color:#fff;border:none;padding:9px 18px;border-radius:99px;font-size:13px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:background .15s}
.eq-reun-nova-btn:hover{background:var(--gold)}
.eq-reun-grupo{font-size:11px;font-weight:700;color:#999;text-transform:uppercase;letter-spacing:.06em;margin:12px 0 8px}
.eq-reun-grupo-passadas{margin-top:24px;color:#bbb}
.eq-reun-item{display:flex;align-items:flex-start;gap:14px;background:#fff;border:1px solid #eee;border-radius:14px;padding:14px 16px;margin-bottom:10px;transition:box-shadow .15s}
.eq-reun-item:hover{box-shadow:0 2px 10px rgba(0,0,0,.07)}
.eq-reun-passada{opacity:.55}
.eq-reun-cal{min-width:42px;text-align:center;background:#0F1E35;color:#fff;border-radius:10px;padding:6px 4px}
.eq-reun-dia{font-size:20px;font-weight:800;line-height:1}
.eq-reun-mes{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.8;margin-top:2px}
.eq-reun-info{flex:1;min-width:0}
.eq-reun-titulo{font-size:14px;font-weight:700;color:#0F1E35;margin-bottom:3px}
.eq-reun-sub{font-size:12px;color:#666}
.eq-reun-desc{font-size:12px;color:#888;margin-top:5px;line-height:1.5}
.eq-reun-btns{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:8px}
.eq-reun-btn-agenda{display:inline-flex;align-items:center;gap:5px;background:#e8f5e9;color:#2e7d32;border-radius:99px;padding:6px 12px;font-size:12px;font-weight:600;text-decoration:none;transition:background .15s;white-space:nowrap}
.eq-reun-btn-agenda:hover{background:#c8e6c9}
.eq-reun-btn-del{background:none;border:1px solid #ffcdd2;color:#e74c3c;border-radius:50%;width:28px;height:28px;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}
.eq-reun-btn-del:hover{background:#ffebee}
.eq-reun-empty,.eq-reun-loading{text-align:center;padding:50px 20px;color:var(--muted);font-size:13px;line-height:1.7}
/* Modal Reunião */
.eq-modal-box{background:#fff;border-radius:18px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 24px 64px rgba(15,30,53,.2)}
.eq-modal-hdr{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 14px;border-bottom:1px solid #eee}
.eq-modal-titulo{font-size:15px;font-weight:700;color:#0F1E35}
.eq-modal-close{background:none;border:none;font-size:18px;cursor:pointer;color:var(--muted);padding:4px 8px;border-radius:8px;line-height:1}
.eq-modal-body{padding:18px 22px;display:flex;flex-direction:column;gap:12px}
.eq-modal-lbl{font-size:12px;font-weight:700;color:#444;margin-bottom:4px;display:block}
.eq-modal-input{width:100%;padding:9px 12px;border:1.5px solid #e0e0e0;border-radius:10px;font-size:13.5px;font-family:'DM Sans',sans-serif;outline:none;box-sizing:border-box;transition:border .15s;resize:vertical}
.eq-modal-input:focus{border-color:var(--gold)}
.eq-modal-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.eq-modal-col{display:flex;flex-direction:column}
.eq-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid #eee}
.eq-modal-btn-sec{background:none;border:1.5px solid #ddd;color:#555;padding:9px 18px;border-radius:99px;font-size:13px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif}
.eq-modal-btn-pri{background:#0F1E35;color:#fff;border:none;padding:9px 22px;border-radius:99px;font-size:13px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:background .15s}
.eq-modal-btn-pri:hover{background:var(--gold)}
@media(max-width:600px){.eq-modal-row{grid-template-columns:1fr}}

@media(max-width:767px){
  .ws-equipe-header{flex-direction:column}
  .ws-slots-wrap{max-width:100%;width:100%}
  .ws-convidar-row{flex-direction:column}
  .ws-convidar-row .escr-input,.ws-convidar-row .escr-select,.ws-convidar-row .escr-btn-primary{width:100%;box-sizing:border-box}
}

/* ── Modal Documentos Legais ─────────────────────────── */
#modal-doc-legal{display:none}
#modal-doc-legal.open{display:flex!important}
.doc-legal-card{background:#fff;border-radius:16px;width:100%;max-width:680px;max-height:82vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(15,30,53,.18);overflow:hidden}
.doc-legal-hdr{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--cream2);flex-shrink:0}
.doc-legal-titulo{font-size:16px;font-weight:700;color:#0F1E35}
.doc-legal-close{background:none;border:none;font-size:18px;cursor:pointer;color:var(--muted);padding:4px 8px;border-radius:8px;line-height:1;transition:background .15s}
.doc-legal-close:hover{background:var(--cream)}
.doc-legal-body{overflow-y:auto;padding:24px 28px;flex:1;font-size:13.5px;line-height:1.75;color:#2c3e50}
.doc-legal-body h2{font-size:14px;font-weight:700;color:#0F1E35;margin:22px 0 8px}
.doc-legal-body h2:first-child{margin-top:0}
.doc-legal-body p{margin:0 0 12px}
.doc-legal-body ul{margin:0 0 12px;padding-left:20px}
.doc-legal-body li{margin-bottom:5px}
.doc-legal-body strong{color:#0F1E35}
.doc-legal-updated{font-size:11px;color:var(--muted);margin-bottom:20px;display:block}
@media(max-width:600px){
  .doc-legal-card{max-height:90vh;border-radius:12px}
  .doc-legal-body{padding:18px}
}
.doc-legal-table{width:100%;border-collapse:collapse;margin:0 0 16px;font-size:12.5px}
.doc-legal-table th{background:var(--navy);color:#fff;padding:7px 10px;text-align:left;font-weight:600}
.doc-legal-table td{padding:6px 10px;border-bottom:1px solid var(--cream2);vertical-align:middle}
.doc-legal-table tr:last-child td{border-bottom:none}
.doc-legal-table tr:nth-child(even) td{background:var(--cream)}
.doc-legal-ext{font-size:11px;color:var(--muted);text-decoration:none;padding:4px 10px;border:1px solid var(--cream2);border-radius:6px;transition:all .15s;white-space:nowrap}
.doc-legal-ext:hover{color:var(--navy);border-color:var(--navy);background:var(--cream)}

/* ════════════════════════════════════════════════════════════
   JURISPRUDÊNCIA — Busca real verificada
   ════════════════════════════════════════════════════════════ */
.jusp-wrap{padding:28px 36px;max-width:1180px;margin:0 auto;flex:1;overflow-y:auto}

/* header */
.jusp-header{background:var(--navy);padding:16px 28px;border-bottom:2px solid rgba(201,168,76,.25);display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;position:relative;overflow:hidden}
.jusp-header::after{content:'';position:absolute;right:-30px;top:-30px;width:160px;height:160px;background:radial-gradient(circle,rgba(201,168,76,.08) 0%,transparent 70%);pointer-events:none}
.jusp-titulo{display:flex;align-items:center;gap:8px;font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--gold);margin-bottom:4px}
.jusp-sub{font-size:12px;color:rgba(255,255,255,.45);margin-top:2px;letter-spacing:.01em}
.jusp-header-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:rgba(255,255,255,.75);background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);padding:6px 12px;border-radius:99px;text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;position:relative;z-index:2}

/* painel de busca */
.jusp-busca-card{background:#fff;border:1px solid var(--cream2);border-top:3px solid var(--gold);border-radius:16px;padding:24px 26px 20px;margin-bottom:20px;box-shadow:0 4px 24px rgba(15,30,53,.07);position:relative;overflow:hidden}
.jusp-busca-card::before{content:'';position:absolute;top:0;right:0;width:180px;height:180px;background:radial-gradient(circle at top right,rgba(201,168,76,.07) 0%,transparent 65%);pointer-events:none}
.jusp-label{display:block;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:8px}
.jusp-label-mini{display:block;font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}
.jusp-textarea{width:100%;padding:12px 14px;border:1.5px solid var(--cream2);border-radius:10px;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--text);resize:vertical;background:var(--cream3);transition:all .18s;line-height:1.55}
.jusp-textarea:focus{outline:none;border-color:var(--gold);background:#fff;box-shadow:0 0 0 3px rgba(201,168,76,.14)}
.jusp-textarea-principal{min-height:80px;font-size:14.5px}
.jusp-filtros{display:flex;gap:16px;align-items:flex-end;margin-top:18px;flex-wrap:wrap}
.jusp-filtro-grupo{flex:1;min-width:180px}
.jusp-filtro-grupo-trib{flex:2}
.jusp-trib-wrap{display:flex;align-items:center;gap:8px}
.jusp-trib-todos{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;border-radius:99px;font-size:12px;font-weight:600;border:1.5px solid var(--cream2);background:#fff;color:var(--muted);cursor:pointer;transition:all .15s;font-family:'DM Sans',sans-serif}
.jusp-trib-todos.ativo{background:var(--navy);color:var(--gold);border-color:var(--navy)}
.jusp-trib-todos:hover:not(.ativo){border-color:var(--gold);color:var(--navy)}
.jusp-trib-personalizar{background:none;border:none;font-size:12px;font-weight:600;color:var(--gold);cursor:pointer;padding:4px 0;transition:color .15s;font-family:'DM Sans',sans-serif;text-decoration:underline;text-underline-offset:2px}
.jusp-trib-personalizar:hover{color:var(--navy)}
.jusp-chips{margin-top:10px;padding:10px 12px;background:var(--cream3);border:1px solid var(--cream2);border-radius:10px;display:flex;flex-direction:column;gap:7px}
.jusp-chips-grupo-row{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding-left:6px;border-left:2px solid transparent}
.jusp-chips-superiores{border-left-color:var(--navy)}
.jusp-chips-federais{border-left-color:#4a6fa5}
.jusp-chips-estaduais{border-left-color:var(--red)}
.jusp-chips-label{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;min-width:72px;flex-shrink:0}
.jusp-chip{padding:4px 11px;border-radius:99px;font-size:11.5px;font-weight:600;border:1px solid var(--cream2);background:#fff;color:var(--muted);cursor:pointer;transition:all .15s;font-family:'DM Sans',sans-serif}
.jusp-chip:hover{border-color:var(--gold);color:var(--navy)}
.jusp-chips-superiores .jusp-chip.ativo{background:var(--navy);color:var(--gold);border-color:var(--navy)}
.jusp-chips-federais .jusp-chip.ativo{background:#1a3f72;color:#a8c4f0;border-color:#1a3f72}
.jusp-chips-estaduais .jusp-chip.ativo{background:#7a1a1a;color:#ffc6c6;border-color:#7a1a1a}
.jusp-select{padding:9px 12px;border:1.5px solid var(--cream2);border-radius:9px;font-size:13px;color:var(--text);background:#fff;cursor:pointer;font-family:inherit;transition:border-color .15s}
.jusp-select:focus{outline:none;border-color:var(--gold)}
/* botão de buscar em linha própria */
.jusp-busca-action{margin-top:16px}
.jusp-btn-buscar{width:100%;padding:13px 26px;background:linear-gradient(135deg,var(--navy) 0%,#1a3f72 100%);color:var(--gold);border:none;border-radius:11px;font-size:14.5px;font-weight:700;cursor:pointer;transition:all .18s;display:flex;align-items:center;justify-content:center;gap:8px;letter-spacing:.01em;font-family:'DM Sans',sans-serif}
.jusp-btn-buscar:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px rgba(15,30,53,.22)}
.jusp-btn-buscar:active:not(:disabled){transform:translateY(0)}
.jusp-btn-buscar:disabled{opacity:.5;cursor:wait}
.jusp-btn-primary{padding:11px 26px;background:var(--navy);color:var(--gold);border:none;border-radius:10px;font-size:14px;font-weight:700;cursor:pointer;transition:all .15s;white-space:nowrap}
.jusp-btn-primary:hover:not(:disabled){background:var(--navy2);transform:translateY(-1px);box-shadow:0 4px 14px rgba(15,30,53,.18)}
.jusp-btn-primary:disabled{opacity:.5;cursor:wait}
.jusp-avancado{margin-top:14px;font-size:13px;border-top:1px dashed var(--cream2);padding-top:12px}
.jusp-avancado summary{cursor:pointer;color:var(--muted);font-weight:600;padding:4px 0;user-select:none;list-style:none;display:flex;align-items:center;gap:4px}
.jusp-avancado summary::-webkit-details-marker{display:none}
.jusp-avancado summary:hover{color:var(--navy)}
.jusp-avancado[open] summary{color:var(--navy);margin-bottom:12px}

/* status */
.jusp-status{padding:14px 18px;background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.2);border-radius:10px;font-size:13px;color:var(--navy);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.jusp-status.erro{background:rgba(154,27,27,.08);border-color:rgba(154,27,27,.25);color:var(--red)}
.jusp-status-spinner{width:14px;height:14px;border:2px solid var(--gold);border-top-color:transparent;border-radius:50%;animation:juspSpin .8s linear infinite;flex-shrink:0}
@keyframes juspSpin{to{transform:rotate(360deg)}}

/* cabeçalho de resultados */
.jusp-resultados-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding:10px 14px;background:#fff;border:1px solid var(--cream2);border-radius:10px}
.jusp-res-count{font-size:13px;font-weight:700;color:var(--navy)}
.jusp-res-count em{font-style:normal;font-weight:400;color:var(--muted);font-size:12px;margin-left:6px}
.jusp-res-acoes{display:flex;align-items:center;gap:6px}
.jusp-res-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border:1.5px solid var(--cream2);border-radius:8px;background:#fff;color:var(--navy);font-size:12px;font-weight:600;cursor:pointer;transition:all .12s;font-family:'DM Sans',sans-serif}
.jusp-res-btn:hover{border-color:var(--gold);color:var(--navy);background:rgba(201,168,76,.06)}

/* resultados */
.jusp-resultados{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}
.jusp-card{background:#fff;border:1px solid var(--cream2);border-left:3px solid transparent;border-radius:13px;overflow:hidden;transition:all .15s}
.jusp-card:hover{box-shadow:0 4px 18px rgba(15,30,53,.07)}
/* borda lateral por tribunal */
.jusp-card[data-id^="STF"]{border-left-color:var(--navy)}
.jusp-card[data-id^="STJ"]{border-left-color:var(--gold)}
.jusp-card[data-id^="TST"]{border-left-color:var(--green)}
.jusp-card[data-id^="TRF"]{border-left-color:#4a6fa5}
.jusp-card[data-id^="TJ"]{border-left-color:#a83232}
.jusp-card-head{padding:15px 18px;cursor:pointer;display:flex;align-items:flex-start;gap:12px}
.jusp-card-trib{display:inline-block;padding:3px 10px;border-radius:99px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;flex-shrink:0;margin-top:3px}
.jusp-card-trib.STF{background:rgba(15,30,53,.1);color:var(--navy);border:1px solid rgba(15,30,53,.2)}
.jusp-card-trib.STJ{background:rgba(201,168,76,.15);color:#7a5900;border:1px solid rgba(201,168,76,.3)}
.jusp-card-trib.TST{background:rgba(26,122,60,.1);color:var(--green);border:1px solid rgba(26,122,60,.25)}
.jusp-card-trib.TJSP,.jusp-card-trib.TJRS,.jusp-card-trib.TJSC{background:rgba(154,27,27,.08);color:var(--red);border:1px solid rgba(154,27,27,.2)}
.jusp-card-trib.TRF1,.jusp-card-trib.TRF2,.jusp-card-trib.TRF3,.jusp-card-trib.TRF4,.jusp-card-trib.TRF5,.jusp-card-trib.TRF6{background:rgba(26,63,114,.09);color:#1a3f72;border:1px solid rgba(26,63,114,.2)}
.jusp-card-info{flex:1;min-width:0}
.jusp-card-numero{font-family:'Playfair Display',serif;font-size:15px;font-weight:700;color:var(--navy);margin-bottom:4px}
.jusp-card-meta{font-size:12px;color:var(--muted);margin-bottom:8px;display:flex;flex-wrap:wrap;gap:4px 0}
.jusp-card-meta span{margin-right:12px}
.jusp-card-ementa{font-size:13px;color:var(--text);line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.jusp-card.aberto .jusp-card-ementa{-webkit-line-clamp:unset;display:block}
.jusp-card-toggle{flex-shrink:0;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:var(--cream);color:var(--muted);transition:all .15s;font-size:10px;margin-top:2px}
.jusp-card:hover .jusp-card-toggle{background:var(--cream2);color:var(--navy)}
.jusp-card.aberto .jusp-card-toggle{background:var(--navy);color:var(--gold);transform:rotate(180deg)}
.jusp-card-body{display:none;padding:0 18px 18px;border-top:1px solid var(--cream2);margin-top:0}
.jusp-card.aberto .jusp-card-body{display:block;padding-top:16px;margin-top:12px}
.jusp-card-secao{margin-bottom:16px}
.jusp-card-secao:last-child{margin-bottom:0}
.jusp-card-secao-titulo{font-size:11px;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.jusp-card-completo{font-size:13px;color:var(--text);line-height:1.7;background:var(--cream3);padding:14px 16px;border-radius:9px;border:1px solid var(--cream2);max-height:280px;overflow-y:auto;white-space:pre-wrap}
.jusp-card-acoes{display:flex;gap:8px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--cream2)}
.jusp-card-link{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;background:var(--navy);color:var(--gold);border-radius:8px;font-size:12px;font-weight:700;text-decoration:none;transition:all .15s}
.jusp-card-link:hover{background:var(--navy2);transform:translateY(-1px)}
.jusp-card-link-secundario{background:transparent;color:var(--navy);border:1px solid var(--cream2)}
.jusp-card-link-secundario:hover{background:var(--cream);color:var(--navy)}

/* síntese */
.jusp-sintese{background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 100%);border-radius:14px;padding:24px 28px;color:#fff;position:relative;overflow:hidden;margin-bottom:24px}
.jusp-sintese::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(201,168,76,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,.04) 1px,transparent 1px);background-size:32px 32px;pointer-events:none}
.jusp-sintese-header{display:flex;align-items:center;gap:14px;margin-bottom:16px;position:relative;z-index:2}
.jusp-sintese-icon{width:42px;height:42px;background:linear-gradient(135deg,var(--gold),var(--gold2));border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.jusp-sintese-titulo{font-family:'Playfair Display',serif;font-size:17px;font-weight:700;color:#fff;margin-bottom:2px}
.jusp-sintese-sub{font-size:12px;color:rgba(255,255,255,.6)}
.jusp-sintese-corpo{position:relative;z-index:2;font-size:14px;line-height:1.7;color:rgba(255,255,255,.92)}
.jusp-sintese-corpo strong{color:var(--gold)}
.jusp-sintese-corpo h1,.jusp-sintese-corpo h2,.jusp-sintese-corpo h3{font-family:'Playfair Display',serif;color:var(--gold);margin:14px 0 8px}
.jusp-sintese-corpo ul,.jusp-sintese-corpo ol{margin:8px 0 8px 20px}
.jusp-sintese-corpo li{margin-bottom:5px}

/* estado vazio */
.jusp-vazio{text-align:center;padding:44px 24px 36px;color:var(--muted)}
.jusp-vazio-icon{margin-bottom:14px;color:var(--gold);opacity:.6}
.jusp-vazio-titulo{font-family:'Playfair Display',serif;font-size:17px;color:var(--navy);font-weight:700;margin-bottom:8px}
.jusp-vazio-desc{font-size:13px;line-height:1.65;max-width:480px;margin:0 auto;color:var(--muted)}
.jusp-vazio-sugestoes{margin-top:20px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:640px;margin-left:auto;margin-right:auto}
.jusp-vazio-sugestoes-label{width:100%;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:2px}
.jusp-sugestao-chip{padding:7px 14px;border-radius:99px;font-size:12.5px;font-weight:500;border:1.5px solid var(--cream2);background:#fff;color:var(--navy);cursor:pointer;transition:all .15s;font-family:'DM Sans',sans-serif;text-align:left}
.jusp-sugestao-chip:hover{border-color:var(--gold);background:rgba(201,168,76,.06);transform:translateY(-1px)}

/* modo busca toggle */
.jusp-modo-toggle{display:flex;gap:3px;margin-bottom:14px;background:var(--cream3);border:1px solid var(--cream2);border-radius:10px;padding:3px}
.jusp-modo-btn{flex:1;padding:7px 10px;border:none;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;color:var(--muted);background:transparent;transition:all .15s;font-family:'DM Sans',sans-serif}
.jusp-modo-btn.ativo{background:#fff;color:var(--navy);box-shadow:0 1px 4px rgba(15,30,53,.1)}
.jusp-modo-btn:hover:not(.ativo){color:var(--navy)}

/* filtros avançados grid */
.jusp-filtros-avanc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-top:8px}
.jusp-filtros-avanc-grid input[type=date].jusp-select{font-family:'DM Sans',sans-serif;width:100%}

/* histórico */
.jusp-historico-wrap{margin-bottom:16px}
.jusp-historico-details{background:#fff;border:1px solid var(--cream2);border-radius:13px;padding:14px 18px}
.jusp-historico-details summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--navy);user-select:none;list-style:none}
.jusp-historico-details summary::-webkit-details-marker{display:none}
.jusp-historico-lista{display:flex;flex-direction:column;gap:6px;margin-top:12px}
.jusp-historico-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--cream2);border-radius:9px;cursor:pointer;transition:all .12s}
.jusp-historico-item:hover{border-color:var(--gold);background:rgba(201,168,76,.04)}
.jusp-historico-item-query{flex:1;font-size:13px;color:var(--navy);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jusp-historico-item-meta{font-size:11px;color:var(--muted);flex-shrink:0}
.jusp-historico-limpar{margin-top:10px;background:none;border:none;font-size:12px;color:var(--muted);cursor:pointer;font-family:inherit;padding:2px 0;display:block}
.jusp-historico-limpar:hover{color:var(--red)}

/* print — esconde UI, mostra só resultados */
@media print{
  .jusp-busca-card,.jusp-resultados-header,.jusp-historico-wrap,.jusp-status-spinner,
  .jusp-header-badge,.jusp-card-acoes,.jusp-card-toggle{display:none!important}
  .jusp-card-body{display:block!important;padding-top:12px!important;margin-top:10px!important}
  .jusp-card-ementa{-webkit-line-clamp:unset!important;display:block!important}
  .jusp-sintese{background:#f5f3ee!important;color:#333!important;border:1px solid #ccc}
  .jusp-sintese-corpo{color:#333!important}
}

/* responsivo */
@media (max-width:780px){
  .jusp-wrap{padding:16px 14px}
  .jusp-filtros{flex-direction:column;align-items:stretch}
  .jusp-filtro-grupo-trib{flex:1}
  .jusp-btn-primary{width:100%}
  .jusp-filtros-avanc-grid{grid-template-columns:1fr 1fr}
  .jusp-resultados-header{flex-direction:column;align-items:flex-start;gap:8px}
  .jusp-busca-card{padding:18px 16px 16px}
  .jusp-chips-label{min-width:60px}
}

/* ── CRM Assinaturas: novos controles ── */
.assin-modo-btn{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;border:1.5px solid var(--cream2);background:var(--cream);color:var(--muted);border-radius:7px;font-size:12px;cursor:pointer;font-family:DM Sans,sans-serif;font-weight:600;transition:all .15s}
.assin-modo-btn:hover{border-color:var(--gold)}
.assin-modo-btn.assin-modo-active{background:var(--navy);color:#fff;border-color:var(--navy)}
.btn-mini{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid var(--cream2);background:var(--cream);color:var(--navy);border-radius:6px;font-size:11px;cursor:pointer;font-family:DM Sans,sans-serif;font-weight:500;margin-right:4px;transition:all .15s}
.btn-mini:hover{background:rgba(201,168,76,.12);border-color:var(--gold);color:var(--navy)}
.assin-sig-row{display:grid;grid-template-columns:1fr 1.4fr 110px 28px;gap:6px;margin-bottom:6px;align-items:center}
.assin-sig-row input,.assin-sig-row select{font-size:12px !important;padding:6px 8px !important;margin:0 !important}
.assin-sig-rem{background:none;border:none;color:#c0392b;cursor:pointer;font-size:14px;padding:4px}
.assin-sig-vazio{font-size:11px;color:var(--muted);padding:8px;font-style:italic}

/* ── Filtros de assinatura + cards de template ── */
.assin-filtro-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid var(--cream2);background:var(--cream);color:var(--muted);border-radius:6px;font-size:11px;cursor:pointer;font-family:DM Sans,sans-serif;font-weight:600;transition:all .15s}
.assin-filtro-btn:hover{border-color:var(--gold)}
.assin-filtro-btn.assin-filtro-active{background:var(--navy);color:#fff;border-color:var(--navy)}
.assin-tpl-card{padding:8px 12px;border:1.5px solid var(--cream2);background:var(--cream);border-radius:7px;font-size:12px;cursor:pointer;font-family:DM Sans,sans-serif;font-weight:600;color:var(--navy);transition:all .15s;display:flex;align-items:center;gap:6px}
.assin-tpl-card:hover{background:rgba(201,168,76,.12);border-color:var(--gold);transform:translateY(-1px)}
.assin-sig-status{display:inline-block;padding:2px 8px;border-radius:99px;font-size:10px;font-weight:700;margin-left:6px}
.assin-card-actions{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
.assin-card-btn{padding:4px 10px;border:1px solid var(--cream2);background:var(--cream);color:var(--navy);border-radius:6px;font-size:11px;cursor:pointer;font-family:DM Sans,sans-serif;font-weight:500}
.assin-card-btn:hover{border-color:var(--gold);background:rgba(201,168,76,.08)}

/* ── Assinaturas: toggle lista/kanban ── */
.assin-view-btns{display:flex;gap:2px;border:1px solid var(--cream2);border-radius:7px;overflow:hidden}
.assin-view-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:28px;border:none;background:var(--cream);color:var(--muted);cursor:pointer;transition:all .15s}
.assin-view-btn svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none}
.assin-view-btn:hover{background:rgba(201,168,76,.12);color:var(--navy)}
.assin-view-btn.assin-view-btn-active{background:var(--navy);color:#fff}

/* ── Assinaturas: kanban ── */
.assin-kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;align-items:start}
@media(max-width:900px){.assin-kanban{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.assin-kanban{grid-template-columns:1fr}}
.assin-kanban-col{border-radius:10px;background:var(--cream);border:1px solid var(--cream2);overflow:hidden;min-height:120px}
.assin-kanban-col-header{padding:10px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--cream2)}
.assin-kanban-col-title{font-size:12px;font-weight:700;color:var(--navy);display:flex;align-items:center;gap:6px}
.assin-kanban-col-count{font-size:11px;font-weight:700;padding:1px 7px;border-radius:99px;min-width:20px;text-align:center}
.assin-kanban-col-body{padding:8px;display:flex;flex-direction:column;gap:7px}
.assin-kanban-card{background:#fff;border:1px solid var(--cream2);border-radius:8px;padding:10px 12px;border-left:3px solid transparent;transition:box-shadow .15s}
.assin-kanban-card:hover{box-shadow:0 2px 12px rgba(15,30,53,.08)}
.assin-kanban-card-title{font-size:12px;font-weight:700;color:var(--navy);margin-bottom:4px;line-height:1.4}
.assin-kanban-card-meta{font-size:11px;color:var(--muted);margin-bottom:6px}
.assin-kanban-card-sigs{font-size:11px;color:var(--muted);margin-bottom:6px}
.assin-kanban-card-actions{display:flex;gap:5px;flex-wrap:wrap}
.assin-kanban-vazio{text-align:center;padding:20px 12px;font-size:11px;color:var(--muted)}

/* ── Marketing: Proposta Estratégica pós-ICP ─────────────────── */
.mkt-est-card{background:#fff;border:1px solid var(--cream2);border-radius:14px;overflow:hidden;box-shadow:0 2px 16px rgba(15,30,53,.07)}
.mkt-est-header{background:linear-gradient(135deg,#0d3b1e,#1a5c2e);padding:20px 24px;display:flex;align-items:center;gap:14px}
.mkt-est-header-icon{font-size:28px}
.mkt-est-header-text .mkt-est-title{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;color:#7aff9a}
.mkt-est-header-text .mkt-est-sub{font-size:12px;color:rgba(255,255,255,.55);margin-top:3px}
.mkt-est-body{padding:20px 24px}
.mkt-est-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}
.mkt-est-bloco{background:var(--cream);border-radius:10px;padding:14px 16px}
.mkt-est-bloco-title{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:10px}
.mkt-est-canal-row{display:flex;align-items:center;gap:8px;margin-bottom:7px;font-size:13px}
.mkt-est-canal-bar{height:6px;border-radius:3px;background:var(--gold);transition:width .4s}
.mkt-est-mix-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:12px;color:var(--navy)}
.mkt-est-mix-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.mkt-est-freq{background:linear-gradient(135deg,rgba(201,168,76,.12),rgba(201,168,76,.04));border:1px solid rgba(201,168,76,.25);border-radius:8px;padding:10px 14px;display:flex;align-items:center;gap:10px;margin-bottom:20px;font-size:13px;font-weight:600;color:var(--navy)}
.mkt-est-posts-title{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--cream2)}
.mkt-est-posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.mkt-est-post-card{background:var(--cream);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:8px;border:1px solid var(--cream2);transition:border-color .15s}
.mkt-est-post-card:hover{border-color:var(--gold)}
.mkt-est-post-tipo{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}
.mkt-est-post-legenda{font-size:12px;color:var(--text);line-height:1.6;flex:1}
.mkt-est-post-hashtags{font-size:11px;color:var(--muted)}
.mkt-est-copy-btn{background:var(--navy);color:var(--gold);border:none;border-radius:6px;padding:6px 12px;font-size:11px;font-weight:600;cursor:pointer;font-family:DM Sans,sans-serif;transition:opacity .15s;margin-top:auto}
.mkt-est-copy-btn:hover{opacity:.85}

/* ── Marketing: Calendário com checklist ────────────────────── */
.mkt-cal-card{position:relative;cursor:pointer}
.mkt-cal-card:hover{border-color:var(--gold);box-shadow:0 2px 10px rgba(201,168,76,.15)}
.mkt-cal-check{position:absolute;top:8px;right:8px;width:20px;height:20px;border-radius:50%;border:2px solid var(--cream2);background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;transition:all .2s;font-size:11px}
.mkt-cal-check:hover{border-color:var(--gold)}
.mkt-cal-check.done{background:#2ecc71;border-color:#2ecc71;color:#fff}
.mkt-cal-card.publicado{opacity:.7}
.mkt-cal-card.publicado .mkt-cal-texto{text-decoration:line-through;color:var(--muted)}
.mkt-semana-prog{margin-bottom:6px;display:flex;align-items:center;gap:8px}
.mkt-semana-prog-bar-wrap{flex:1;height:5px;background:var(--cream2);border-radius:3px;overflow:hidden}
.mkt-semana-prog-bar{height:100%;background:#2ecc71;border-radius:3px;transition:width .4s}
.mkt-semana-prog-label{font-size:10px;color:var(--muted);white-space:nowrap;min-width:40px;text-align:right}

/* ── Marketing: Painel Post Completo (slide-over) ───────────── */
#mkt-post-panel{display:flex !important}
#mkt-post-panel.fechado{display:none !important}
.mkt-post-section{margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--cream2)}
.mkt-post-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.mkt-post-section-label{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between}
.mkt-post-copy-btn{background:none;border:1px solid var(--cream2);border-radius:5px;padding:3px 9px;font-size:10px;font-weight:600;color:var(--navy);cursor:pointer;font-family:DM Sans,sans-serif}
.mkt-post-copy-btn:hover{border-color:var(--gold)}
.mkt-post-legenda{font-size:13px;line-height:1.7;color:var(--text);background:var(--cream);border-radius:8px;padding:12px 14px;white-space:pre-wrap}
.mkt-post-hashtags{font-size:12px;color:#0077b5;line-height:1.8;word-break:break-all}
.mkt-post-visual{background:rgba(201,168,76,.07);border:1px solid rgba(201,168,76,.2);border-radius:8px;padding:10px 14px;font-size:12px;color:var(--navy);line-height:1.6}
.mkt-post-horario{display:inline-flex;align-items:center;gap:6px;background:var(--cream);border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;color:var(--navy)}
.mkt-post-loading{text-align:center;padding:40px;color:var(--muted)}

@media(max-width:900px){
  .mkt-est-grid{grid-template-columns:1fr}
  .mkt-est-posts-grid{grid-template-columns:1fr}
  #mkt-post-panel{width:100vw !important}
}
/* ── Marketing: Calculadora ROI ─────────────────────────────── */
.mkt-roi-card{background:#fff;border:1px solid var(--cream2);border-radius:14px;overflow:hidden;box-shadow:0 2px 16px rgba(15,30,53,.07);margin-bottom:16px}
.mkt-roi-header{background:linear-gradient(135deg,#0d3b35,#1a5c4e);padding:18px 24px;display:flex;align-items:center;gap:14px}
.mkt-roi-header-icon{font-size:28px}
.mkt-roi-title{font-family:'Playfair Display',serif;font-size:17px;font-weight:700;color:#7afff0}
.mkt-roi-sub{font-size:12px;color:rgba(255,255,255,.5);margin-top:3px}
.mkt-roi-body{padding:20px 24px;display:flex;flex-direction:column;gap:20px}
.mkt-roi-sliders{display:flex;flex-direction:column;gap:16px}
.mkt-roi-slider-row{display:flex;flex-direction:column;gap:5px}
.mkt-roi-slider-row label{display:flex;flex-direction:column;gap:1px}
.mkt-roi-slider-lbl{font-size:12px;font-weight:700;color:var(--navy)}
.mkt-roi-slider-hint{font-size:10px;color:var(--muted);font-style:italic}
.mkt-roi-slider-line{display:flex;align-items:center;gap:10px}
.mkt-roi-slider-line input{flex:1}
.mkt-roi-val{font-size:11px;font-weight:700;color:var(--navy);background:var(--cream);border:1px solid var(--cream2);border-radius:4px;padding:2px 8px;white-space:nowrap;min-width:64px;text-align:center}
.mkt-roi-range{width:100%;accent-color:var(--navy);height:4px;cursor:pointer}
.mkt-roi-cenarios{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.mkt-roi-cenario{background:var(--cream);border-radius:10px;padding:14px 12px;display:flex;flex-direction:column;gap:8px}
.mkt-roi-cen-nome{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.mkt-roi-cen-stat{display:flex;flex-direction:column;gap:2px}
.mkt-roi-cen-num{font-size:16px;font-weight:700;color:var(--navy)}
.mkt-roi-cen-lbl{font-size:10px;color:var(--muted);font-weight:400}
@media(max-width:700px){.mkt-roi-cenarios{grid-template-columns:1fr}}

/* ── Marketing: Pilares de Conteúdo ─────────────────────────── */
.mkt-pilares-box{background:var(--cream);border-radius:10px;padding:14px 18px;margin-bottom:16px}
.mkt-pilares-title{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:12px}
.mkt-pilares-row{display:flex;align-items:center;gap:10px;margin-bottom:7px}
.mkt-pilares-label{display:flex;align-items:center;gap:6px;min-width:110px;font-size:12px;font-weight:600;color:var(--navy)}
.mkt-pilares-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}
.mkt-pilares-bar-wrap{flex:1;height:6px;background:var(--cream2);border-radius:3px;overflow:hidden}
.mkt-pilares-bar{height:100%;border-radius:3px;transition:width .4s}
.mkt-pilares-pct{font-size:11px;font-weight:700;color:var(--navy);min-width:70px;text-align:right}

/* ── Marketing: Reels ────────────────────────────────────────── */
.mkt-reel-card{background:#fff;border:1px solid var(--cream2);border-radius:12px;margin-bottom:14px;overflow:hidden}
.mkt-reel-header{background:var(--cream);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.mkt-reel-num{font-size:20px;font-weight:700;color:var(--muted);margin-right:6px;font-family:'Playfair Display',serif}
.mkt-reel-tipo{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.mkt-reel-titulo{font-size:13px;font-weight:700;color:var(--navy);flex:1;min-width:120px}
.mkt-reel-body{padding:16px;display:flex;flex-direction:column;gap:14px}
.mkt-reel-fase{background:var(--cream);border-radius:8px;padding:10px 12px}
.mkt-reel-fase-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.mkt-reel-fase-txt{font-size:13px;color:var(--text);line-height:1.7;white-space:pre-wrap}
.mkt-reel-hashtags{font-size:11px;color:#0077b5;line-height:1.8;word-break:break-all;padding:8px 12px;background:rgba(0,119,181,.05);border-radius:8px}
/* ── Marketing: responsividade mobile ───────────────────────── */
@media(max-width:640px){
  /* Calendário: 5 colunas → 2 */
  .mkt-cal-grid{grid-template-columns:repeat(2,1fr)}

  /* Pilares: label menor */
  .mkt-pilares-label{min-width:80px;font-size:11px}

  /* Tabs da campanha: scroll horizontal */
  .mkt-camp-tab{font-size:11px;padding:10px 10px;white-space:nowrap}

  /* ICP header: empilhar em tela pequena */
  .mkt-icp-header{flex-direction:column;align-items:flex-start;gap:8px}

  /* Score grid: já é 3 colunas, shrink font */
  .mkt-score-val{font-size:11px}

  /* ROI cenários: 1 coluna */
  .mkt-roi-cenarios{grid-template-columns:1fr}

  /* Reel header: empilhar */
  .mkt-reel-header{flex-direction:column;align-items:flex-start}

  /* Estratégia: forçar 1 col */
  .mkt-est-grid{grid-template-columns:1fr !important}
  .mkt-est-posts-grid{grid-template-columns:1fr !important}

  /* Post panel */
  #mkt-post-panel{width:100vw !important}

  /* Campaign header buttons: wrap */
  #mkt-step-campanha > div:first-child{flex-direction:column;align-items:flex-start}
  #mkt-step-campanha > div:first-child > div:last-child{flex-wrap:wrap}
}

/* Tabs: garantir scroll em qualquer tela <500px */
@media(max-width:500px){
  .mkt-camp-tab{font-size:10px;padding:9px 8px}
}

/* ── Marketing: Section headers (Scripts, Copy, Bio, Reels) ─── */
.mkt-sec-header{display:flex;align-items:center;gap:14px;padding:16px 20px;background:linear-gradient(135deg,var(--navy),#1a3060);border-radius:12px;margin-bottom:16px}
.mkt-sec-header-icon{font-size:28px;flex-shrink:0}
.mkt-sec-header-title{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:var(--gold)}
.mkt-sec-header-sub{font-size:12px;color:rgba(255,255,255,.55);margin-top:2px}
.mkt-script-num{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:var(--muted);margin-right:4px}
.mkt-sec-obj-badge{font-size:11px;color:var(--muted);font-weight:400;background:var(--cream);border-radius:99px;padding:2px 8px}

/* ── Marketing: Artefato card (Copy Anúncios + Bio) ─────────── */
.mkt-artefato-card{background:#fff;border:1px solid var(--cream2);border-radius:10px;margin-bottom:12px;overflow:hidden;transition:border-color .15s}
.mkt-artefato-card:hover{border-color:rgba(201,168,76,.4)}
.mkt-artefato-header{background:var(--cream);padding:10px 16px;display:flex;align-items:center;justify-content:space-between}
.mkt-artefato-plataforma{font-size:13px;font-weight:700;color:var(--navy)}
.mkt-artefato-body{padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.mkt-artefato-field{display:flex;flex-direction:column;gap:3px}
.mkt-artefato-field-label{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.mkt-artefato-field-titulo{font-size:14px;font-weight:700;color:var(--navy);line-height:1.4}
.mkt-artefato-field-body{font-size:13px;color:var(--text);line-height:1.6}
.mkt-artefato-cta{display:inline-block;background:var(--navy);color:var(--gold);padding:6px 16px;border-radius:99px;font-size:12px;font-weight:700;align-self:flex-start}

/* ── Marketing: Bio grid + barra de chars ────────────────────── */
.mkt-bio-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mkt-bio-chars{font-size:11px;font-weight:600}
.mkt-bio-bar-wrap{height:3px;background:var(--cream2)}
.mkt-bio-bar{height:100%;transition:width .4s}
.mkt-bio-texto{font-size:13px;color:var(--text);line-height:1.7;white-space:pre-wrap;background:var(--cream);border-radius:8px;padding:12px}
@media(max-width:640px){.mkt-bio-grid{grid-template-columns:1fr}}

/* ── Assinaturas: layout amplo para o texto do contrato ──────── */
.assin-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:20px;align-items:start}
@media(max-width:1100px){.assin-grid{grid-template-columns:1fr}}
.assin-expand-btn{background:var(--cream);border:1px solid var(--cream2);color:var(--navy);font-size:11px;font-weight:600;border-radius:6px;padding:4px 10px;cursor:pointer;font-family:DM Sans,sans-serif;transition:all .15s}
.assin-expand-btn:hover{background:var(--gold);color:var(--navy);border-color:var(--gold)}

/* Editor fullscreen */
#assin-texto-fs{display:none;position:fixed;inset:0;background:#fff;z-index:2000;flex-direction:column;padding:20px 28px}
#assin-texto-fs.aberto{display:flex}
.assin-fs-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid var(--cream2);margin-bottom:14px}
.assin-fs-title{font-family:'Playfair Display',serif;font-size:17px;font-weight:700;color:var(--navy)}
.assin-fs-close{background:var(--cream);border:1px solid var(--cream2);color:var(--navy);font-size:12px;font-weight:600;border-radius:8px;padding:8px 14px;cursor:pointer;font-family:DM Sans,sans-serif}
.assin-fs-close:hover{background:#fee;color:#c0392b;border-color:#c0392b}
#assin-texto-fs-area{flex:1;width:100%;border:1px solid var(--cream2);border-radius:10px;padding:18px 22px;font-size:14px;line-height:1.7;font-family:'Times New Roman',serif;background:#fdfcf8;color:var(--text);resize:none;outline:none;transition:border-color .15s}
#assin-texto-fs-area:focus{border-color:var(--gold)}
.assin-fs-footer{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--cream2);margin-top:12px}

/* ── Assinaturas Wizard: Sub-abas (Novo / Lista) ───────────── */
.assin-subtabs{display:flex;gap:0;background:#fff;border-radius:12px 12px 0 0;border:1px solid var(--cream2);border-bottom:none;overflow:hidden;margin-bottom:0;position:relative;z-index:3}
.assin-subtab{flex:1;padding:14px 18px;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer;font-family:DM Sans,sans-serif;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:8px}
.assin-subtab:hover{background:var(--cream);color:var(--navy)}
.assin-subtab.active{color:var(--navy);font-weight:700;border-bottom-color:var(--gold);background:rgba(201,168,76,.05)}
.assin-subtab-badge{background:var(--gold);color:var(--navy);font-size:10px;font-weight:800;padding:1px 7px;border-radius:99px;min-width:18px;text-align:center}
.assin-subaba{display:none}
.assin-subaba.active{display:block}

/* ── Assinaturas Wizard: Stepper visual ─────────────────────── */
.assin-stepper{display:flex;align-items:center;gap:8px;padding:18px 20px;background:#fff;border:1px solid var(--cream2);border-top:none;border-bottom:none}
.assin-step-pill{display:flex;align-items:center;gap:10px;padding:8px 14px;border-radius:10px;cursor:pointer;transition:all .15s;flex:0 0 auto;opacity:.55}
.assin-step-pill:hover{opacity:.85;background:var(--cream)}
.assin-step-pill.active{opacity:1;background:rgba(201,168,76,.08)}
.assin-step-pill.completed{opacity:.95}
.assin-step-pill.completed .assin-step-num{background:var(--green);color:#fff}
.assin-step-num{width:30px;height:30px;border-radius:50%;background:var(--cream2);color:var(--muted);font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:'Playfair Display',serif;transition:all .2s}
.assin-step-pill.active .assin-step-num{background:var(--navy);color:var(--gold)}
.assin-step-pill.completed .assin-step-num::before{content:'✓';font-family:DM Sans,sans-serif;font-size:14px}
.assin-step-pill.completed .assin-step-num{font-size:0}
.assin-step-info{display:flex;flex-direction:column;line-height:1.2}
.assin-step-titulo{font-size:13px;font-weight:700;color:var(--navy)}
.assin-step-desc{font-size:10px;color:var(--muted);margin-top:1px;text-transform:uppercase;letter-spacing:.04em}
.assin-step-conector{flex:1;height:2px;background:var(--cream2);min-width:20px;border-radius:2px}

@media(max-width:760px){
  .assin-stepper{flex-direction:column;align-items:stretch;gap:6px}
  .assin-step-conector{display:none}
  .assin-step-pill{justify-content:flex-start}
}

/* ── Assinaturas Wizard: Card principal ─────────────────────── */
.assin-wizard-card{background:#fff;border:1px solid var(--cream2);border-top:none;border-radius:0 0 12px 12px;padding:24px 28px;min-height:420px}
.assin-wizard-step{display:none;animation:assinFade .25s ease}
.assin-wizard-step.active{display:block}
@keyframes assinFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.assin-step-header{display:flex;align-items:center;gap:14px;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--cream2)}
.assin-step-h-icon{font-size:32px;flex-shrink:0}
.assin-step-h-title{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;color:var(--navy);line-height:1.2}
.assin-step-h-sub{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.5}

/* ── Assinaturas Wizard: Sticky footer ──────────────────────── */
.assin-wizard-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;background:#fff;border:1px solid var(--cream2);border-top:1px solid var(--cream2);border-radius:0 0 12px 12px;margin-top:-1px;position:sticky;bottom:0;z-index:10;box-shadow:0 -4px 16px rgba(15,30,53,.04)}
.assin-btn-voltar{background:transparent;border:1px solid var(--cream2);color:var(--navy);font-size:13px;font-weight:600;padding:9px 16px;border-radius:8px;cursor:pointer;font-family:DM Sans,sans-serif;transition:all .15s}
.assin-btn-voltar:hover{background:var(--cream)}
.assin-step-indicator{font-size:12px;color:var(--muted);font-weight:600}
.assin-step-indicator strong{color:var(--navy);font-size:14px;font-family:'Playfair Display',serif}
.assin-btn-avancar{padding:10px 22px !important;font-size:13px !important}
.assin-btn-enviar{padding:11px 24px !important;font-size:13px !important;background:linear-gradient(135deg,var(--green),#1e8449) !important;color:#fff !important;font-weight:700 !important;box-shadow:0 2px 12px rgba(39,174,96,.3) !important}
.assin-btn-enviar:hover{transform:translateY(-1px);box-shadow:0 4px 18px rgba(39,174,96,.4) !important}

/* ── Assinaturas Wizard: Botão Adicionar Signatário ─────────── */
.assin-add-signatario-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:10px;padding:12px;border:2px dashed var(--cream2);background:transparent;color:var(--navy);font-weight:600;font-size:13px;border-radius:10px;cursor:pointer;transition:all .15s}
.assin-add-signatario-btn:hover{border-color:var(--gold);background:rgba(201,168,76,.05);color:var(--navy)}

/* ── Assinaturas Wizard: Lembrete card ─────────────────────── */
.assin-lembrete-card{background:linear-gradient(135deg,rgba(201,168,76,.05),rgba(201,168,76,.02));border:1px solid rgba(201,168,76,.25);border-radius:10px;padding:14px 18px;margin-top:16px}

/* ── Assinaturas Wizard: Card de revisão (Passo 3) ──────────── */
.assin-revisao-card{background:var(--cream);border-radius:12px;padding:0;overflow:hidden;border:1px solid var(--cream2)}
.assin-rev-bloco{padding:14px 20px;border-bottom:1px solid var(--cream2)}
.assin-rev-bloco:last-child{border-bottom:none}
.assin-rev-label{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px}
.assin-rev-valor{font-size:14px;color:var(--navy);font-weight:600;line-height:1.4}
.assin-rev-vazio{font-size:13px;color:var(--red);font-style:italic;font-weight:400}
.assin-rev-sig-list{display:flex;flex-direction:column;gap:8px}
.assin-rev-sig-item{display:flex;align-items:center;gap:10px;background:#fff;border-radius:8px;padding:10px 12px;border:1px solid var(--cream2)}
.assin-rev-sig-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--navy),#1a3060);color:var(--gold);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex-shrink:0;font-family:'Playfair Display',serif}
.assin-rev-sig-nome{font-size:13px;font-weight:600;color:var(--navy)}
.assin-rev-sig-email{font-size:11px;color:var(--muted)}

/* ── Assinaturas: Configuração colapsável ──────────────────── */
.assin-config-details{margin-top:14px;background:#fff;border:1px solid var(--cream2);border-radius:10px;overflow:hidden}
.assin-config-details summary{padding:12px 18px;cursor:pointer;font-size:13px;font-weight:600;color:var(--muted);user-select:none;list-style:none;display:flex;align-items:center;justify-content:space-between}
.assin-config-details summary::-webkit-details-marker{display:none}
.assin-config-details summary::after{content:'▾';transition:transform .2s;font-size:14px}
.assin-config-details[open] summary::after{transform:rotate(180deg)}
.assin-config-details summary:hover{background:var(--cream);color:var(--navy)}
.assin-config-body{padding:16px 20px;border-top:1px solid var(--cream2)}

/* ── ICP: Modo toggle iniciante/experiente ──────────────────── */
.mkt-modo-toggle{display:flex;gap:0;background:var(--cream);border:1px solid var(--cream2);border-radius:8px;overflow:hidden;margin:12px 0 14px;width:100%}
.mkt-modo-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;flex:1;padding:8px 14px;font-size:12px;font-weight:600;border:none;background:transparent;color:var(--muted);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s;line-height:1.3}
.mkt-modo-btn:hover{background:rgba(201,168,76,.08);color:var(--navy)}
.mkt-modo-btn.active{background:#fff;color:var(--navy);box-shadow:0 1px 4px rgba(15,30,53,.08);border-radius:6px;margin:2px}

/* ── ICP: Dicas colapsáveis ─────────────────────────────────── */
.mkt-dica{margin-top:8px;font-size:11px;color:var(--muted)}
.mkt-dica summary{cursor:pointer;font-weight:600;color:var(--gold);list-style:none;display:inline-flex;align-items:center;gap:4px;user-select:none}
.mkt-dica summary::-webkit-details-marker{display:none}
.mkt-dica[open] summary{color:var(--navy)}
.mkt-dica>div{margin-top:6px;background:rgba(201,168,76,.07);border-left:3px solid var(--gold);border-radius:0 6px 6px 0;padding:8px 12px;line-height:1.6;color:var(--text);font-size:11px}

/* ── GUIA DE PETICIONAMENTO ELETRÔNICO ─────────────────────── */
.guia-filtro-btn{padding:7px 14px;border:1.5px solid var(--cream2);border-radius:20px;background:#fff;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s}
.guia-filtro-btn:hover{border-color:var(--gold);color:var(--navy)}
.guia-filtro-btn.active{background:var(--navy);border-color:var(--navy);color:#fff}
.guia-sistema-card{background:#fff;border:1px solid var(--cream2);border-radius:14px;overflow:hidden;margin-bottom:24px}
.guia-sistema-hdr{background:var(--sistema-cor,var(--navy));padding:20px 24px;display:flex;align-items:center;gap:14px}
.guia-sistema-icon{font-size:28px;flex-shrink:0;width:44px;height:44px;background:rgba(255,255,255,.15);border-radius:10px;display:flex;align-items:center;justify-content:center}
.guia-sistema-info{flex:1}
.guia-sistema-nome{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:#fff;line-height:1.1}
.guia-sistema-fullnome{font-size:12px;color:rgba(255,255,255,.65);margin-top:2px}
.guia-sistema-body{padding:20px 24px}
.guia-sistema-desc{font-size:13px;color:var(--text);line-height:1.6;margin:0 0 14px}
.guia-tribunais-titulo{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:8px}
.guia-tribunais-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}
.guia-tribunal-chip{padding:5px 12px;background:var(--cream);border:1px solid var(--cream2);border-radius:99px;font-size:11px;font-weight:600;color:var(--muted);text-decoration:none;display:inline-flex;align-items:center;gap:4px}
.guia-tribunal-chip--link{color:var(--navy);background:#fff;cursor:pointer;transition:all .15s;border-color:var(--cream2)}
.guia-tribunal-chip--link:hover{background:var(--navy);border-color:var(--navy);color:var(--gold)}
.guia-passos-titulo{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:10px}
.guia-passos-lista{display:flex;flex-direction:column;gap:0}
.guia-passo{display:flex;gap:14px;padding:14px 0;border-top:1px solid var(--cream2)}
.guia-passo:first-child{border-top:none;padding-top:0}
.guia-passo-n{width:28px;height:28px;border-radius:50%;background:var(--navy);color:var(--gold);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;font-family:'DM Sans',sans-serif}
.guia-passo-body{flex:1}
.guia-passo-titulo{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:4px}
.guia-passo-texto{font-size:13px;color:var(--text);line-height:1.65}
.guia-passo-dica{margin-top:8px;background:rgba(201,168,76,.08);border-left:3px solid var(--gold);border-radius:0 6px 6px 0;padding:7px 11px;font-size:12px;color:var(--text);line-height:1.55}
.guia-erros-details{margin-top:16px;background:var(--cream);border-radius:8px;overflow:hidden;border:1px solid var(--cream2)}
.guia-erros-summary{padding:10px 14px;cursor:pointer;font-size:12px;font-weight:700;color:var(--muted);list-style:none;display:flex;align-items:center;justify-content:space-between;user-select:none}
.guia-erros-summary::-webkit-details-marker{display:none}
.guia-erros-summary::after{content:'▾';transition:transform .2s}
.guia-erros-details[open] .guia-erros-summary::after{transform:rotate(180deg)}
.guia-erros-summary:hover{color:var(--navy)}
.guia-erros-lista{margin:0;padding:0 14px 14px;list-style:none;display:flex;flex-direction:column;gap:7px;border-top:1px solid var(--cream2)}
.guia-erro-item{font-size:12px;color:var(--text);line-height:1.55;padding-top:7px}
.guia-copiar-btn{margin-left:auto;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:8px;padding:6px 12px;font-size:11px;font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap;font-family:'DM Sans',sans-serif}
.guia-copiar-btn:hover{background:rgba(201,168,76,.35);border-color:rgba(201,168,76,.6)}
.guia-passo-ctas{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.guia-cta-btn{background:#f0f4ff;border:1px solid #c7d4f5;color:#1a56db;border-radius:7px;padding:4px 11px;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;font-family:'DM Sans',sans-serif}
.guia-cta-btn:hover{background:#1a56db;color:#fff;border-color:#1a56db}
.guia-cta-btn--ia{background:#f5f0ff;border-color:#d4c7f5;color:#7c3aed}
.guia-cta-btn--ia:hover{background:#7c3aed;color:#fff;border-color:#7c3aed}

/* ══ AUDIÊNCIAS ════════════════════════════════════════════════ */
#screen-audiencias{display:flex;flex-direction:column;height:100%}
.aud-layout{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;padding:28px 32px;gap:0;max-width:1280px;width:100%;box-sizing:border-box}
.aud-header{background:var(--navy);padding:16px 28px;border-bottom:2px solid rgba(201,168,76,.25);display:flex;align-items:center;gap:16px;flex-shrink:0}
.aud-title{display:flex;align-items:center;gap:8px;font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--gold)}
.aud-subtitle{font-size:12px;color:rgba(255,255,255,.5);margin-top:2px}

/* KPIs */
.aud-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}
.aud-kpi{background:#fff;border:1px solid var(--cream2);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:4px}
.aud-kpi-icon{font-size:20px}
.aud-kpi-val{font-family:'Playfair Display',serif;font-size:32px;font-weight:700;line-height:1}
.aud-kpi-lbl{font-size:11px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.06em}

/* Filtros */
.aud-filtros-wrap{background:#fff;border:1px solid var(--cream2);border-radius:12px;padding:14px 18px;margin-bottom:16px;display:flex;flex-direction:column;gap:10px}
.aud-filtro-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.aud-filtro-lbl{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;width:46px;flex-shrink:0}
.aud-chip-status,.aud-chip-tipo{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border:1.5px solid var(--cream2);border-radius:20px;background:#fff;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s;white-space:nowrap}
.aud-chip-status:hover,.aud-chip-tipo:hover{border-color:var(--navy);color:var(--navy)}
.aud-chip-status.active,.aud-chip-tipo.active{background:var(--navy);border-color:var(--navy);color:#fff}
.aud-busca{flex:1;min-width:220px;padding:8px 14px;border:1.5px solid var(--cream2);border-radius:8px;font-size:13px;font-family:'DM Sans',sans-serif;color:var(--navy);outline:none;transition:border .15s}
.aud-busca:focus{border-color:var(--gold)}

/* Tabela */
.aud-table-wrap{overflow-x:auto;background:#fff;border:1px solid var(--cream2);border-radius:12px}
.aud-table{width:100%;border-collapse:collapse;font-size:13px}
.aud-table thead th{padding:11px 14px;text-align:left;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);border-bottom:1px solid var(--cream2);background:var(--cream);white-space:nowrap}
.aud-table thead th:first-child{border-radius:12px 0 0 0}
.aud-table thead th:last-child{border-radius:0 12px 0 0}
.aud-tr{border-bottom:1px solid var(--cream2);transition:background .12s}
.aud-tr:last-child{border-bottom:none}
.aud-tr:hover{background:var(--cream)}
.aud-tr td{padding:12px 14px;vertical-align:middle}
.aud-tr-hoje{background:rgba(201,168,76,.05)}
.aud-tr-hoje:hover{background:rgba(201,168,76,.1)}
.aud-tr-atrasada td:first-child{border-left:3px solid var(--red)}
.aud-data-badge{font-size:13px;font-weight:700;color:var(--navy);white-space:nowrap}
.aud-data-hoje{color:var(--gold)}
.aud-hora-txt{font-size:12px;color:var(--muted);margin-top:2px}
.aud-tipo-chip{display:inline-block;padding:3px 9px;background:var(--cream);border-radius:20px;font-size:11px;font-weight:600;color:var(--muted);white-space:nowrap}
.aud-cell-main{font-weight:600;color:var(--navy)}
.aud-cell-sub{font-size:11px;color:var(--muted);margin-top:2px}
.aud-proc-num{font-family:monospace;letter-spacing:.02em}
.aud-resp{font-size:13px;color:var(--text)}
.aud-status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:700;white-space:nowrap}
.aud-acoes{display:flex;gap:4px;align-items:center}
.aud-btn-ico{width:28px;height:28px;border:none;background:none;cursor:pointer;border-radius:6px;font-size:14px;display:inline-flex;align-items:center;justify-content:center;transition:background .12s}
.aud-btn-ico:hover{background:var(--cream2)}
.aud-btn-del:hover{background:#fef2f2}

/* Vazio */
.aud-vazio{padding:60px 20px;text-align:center}
.aud-vazio-icon{font-size:48px;margin-bottom:12px}
.aud-vazio-txt{font-size:14px;color:var(--muted)}

/* Nota equipe */
.aud-nota-equipe{margin-top:16px;padding:12px 16px;background:var(--cream);border-radius:10px;font-size:12px;color:var(--muted);border:1px solid var(--cream2)}

/* Modal */
.aud-modal-box{background:#fff;border-radius:14px;width:100%;max-width:680px;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(15,30,53,.25)}
.aud-modal-hdr{padding:18px 22px;border-bottom:1px solid var(--cream2);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.aud-modal-titulo{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;color:var(--navy)}
.aud-modal-close{background:none;border:none;font-size:20px;cursor:pointer;color:var(--muted);line-height:1;padding:4px}
.aud-modal-body{padding:20px 22px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:14px}
.aud-modal-footer{padding:14px 22px;border-top:1px solid var(--cream2);display:flex;gap:8px;justify-content:flex-end;flex-shrink:0}
.aud-form-grid{display:grid;gap:12px}
.aud-form-grid-full{grid-template-columns:1fr}
.aud-form-grid-2{grid-template-columns:1fr 1fr}
.aud-form-grid-3{grid-template-columns:1fr 1fr 1fr}
.aud-form-label{display:block;font-size:11px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}
.aud-form-input{width:100%;padding:9px 12px;border:1.5px solid var(--cream2);border-radius:8px;font-size:13px;font-family:'DM Sans',sans-serif;color:var(--navy);outline:none;transition:border .15s;box-sizing:border-box;background:#fff}
.aud-form-input:focus{border-color:var(--gold)}
textarea.aud-form-input{resize:vertical;min-height:70px}

@media(max-width:768px){
  .aud-layout{padding:16px}
  .aud-kpis{grid-template-columns:1fr 1fr}
  .aud-form-grid-2,.aud-form-grid-3{grid-template-columns:1fr}
  .aud-filtro-lbl{display:none}
}

/* ══ ANÁLISE ESTRATÉGICA ══════════════════════════════════════ */
#screen-analise{display:flex;flex-direction:column;height:100%}
.ana-layout{display:flex;height:100%;overflow:hidden}
.ana-sidebar{width:340px;flex-shrink:0;background:#fff;border-right:1px solid var(--cream2);padding:24px 22px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}
.ana-side-ttl{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--navy)}
.ana-side-sub{font-size:12px;color:var(--muted);line-height:1.55;margin-bottom:6px}
.ana-campo{display:flex;flex-direction:column;gap:5px}
.ana-label{font-size:11px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.06em}
.ana-input{padding:9px 12px;border:1.5px solid var(--cream2);border-radius:8px;font-size:13px;font-family:'DM Sans',sans-serif;color:var(--navy);outline:none;transition:border .15s;background:#fff;box-sizing:border-box;width:100%}
.ana-input:focus{border-color:var(--gold)}
textarea.ana-input{resize:vertical;min-height:60px}
.ana-side-nota{font-size:11px;color:var(--muted);background:var(--cream);border-radius:8px;padding:9px 12px;line-height:1.5;margin-top:8px}

/* Upload */
.ana-upload-area{border:2px dashed var(--cream2);border-radius:10px;padding:22px 14px;text-align:center;cursor:pointer;transition:all .15s;background:var(--cream)}
.ana-upload-area:hover,.ana-upload-area.drag-over{border-color:var(--gold);background:rgba(201,168,76,.06)}
.ana-upload-icone{font-size:30px;margin-bottom:8px}
.ana-upload-txt{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:3px}
.ana-upload-sub{font-size:11px;color:var(--muted)}
.ana-arquivo-info{margin-top:10px;background:var(--cream);border-radius:8px;padding:11px 13px;border:1px solid var(--cream2)}
.ana-arquivo-nome{font-size:12px;font-weight:700;color:var(--navy);word-break:break-all}
.ana-arquivo-meta{font-size:11px;color:var(--muted);margin-top:3px}
.ana-truncado{color:var(--orange);font-weight:600}
.ana-arquivo-remover{background:none;border:none;color:var(--red);font-size:11px;font-weight:600;cursor:pointer;margin-top:6px;padding:0}
.ana-arquivo-remover:hover{text-decoration:underline}
.ana-upload-status{margin-top:8px;font-size:11px;padding:8px 11px;border-radius:6px;line-height:1.4}
.ana-status-loading{background:rgba(26,86,219,.08);color:#1a56db}
.ana-status-ok{background:rgba(14,122,54,.08);color:#0e7a36}
.ana-status-error{background:rgba(220,38,38,.08);color:#dc2626}
.ana-status-info{background:var(--cream);color:var(--muted)}

/* Main */
.ana-main{flex:1;overflow-y:auto;padding:28px 36px;background:var(--cream);min-width:0}
.ana-result-box{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:14px}

/* Estado vazio */
.ana-estado-vazio{background:#fff;border:1px solid var(--cream2);border-radius:14px;padding:48px 36px;text-align:center}
.ana-estado-icone{font-size:56px;margin-bottom:14px}
.ana-estado-ttl{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:var(--navy);margin-bottom:8px}
.ana-estado-txt{font-size:13px;color:var(--text);line-height:1.6;max-width:560px;margin:0 auto 16px}
.ana-estado-lista{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:7px;max-width:420px;margin:0 auto;text-align:left;font-size:13px;color:var(--text);line-height:1.5}

/* Loading */
.ana-loading{background:#fff;border:1px solid var(--cream2);border-radius:14px;padding:60px 30px;text-align:center}
.ana-loading-spin{width:36px;height:36px;border:3px solid var(--cream2);border-top-color:var(--gold);border-radius:50%;animation:ana-spin 0.9s linear infinite;margin:0 auto 14px}
@keyframes ana-spin{to{transform:rotate(360deg)}}
.ana-loading-txt{font-size:14px;font-weight:700;color:var(--navy)}
.ana-loading-sub{font-size:12px;color:var(--muted);margin-top:5px}

/* Erro */
.ana-erro{background:#fff;border:1px solid #fecaca;border-radius:14px;padding:30px;text-align:center}
.ana-erro-icone{font-size:36px;margin-bottom:8px}
.ana-erro-ttl{font-size:15px;font-weight:700;color:var(--red);margin-bottom:5px}
.ana-erro-txt{font-size:13px;color:var(--text)}

/* Cartões de resultado */
.ana-cartao{background:#fff;border:1px solid var(--cream2);border-radius:12px;padding:20px 24px}
.ana-cartao-ttl{font-family:'Playfair Display',serif;font-size:17px;font-weight:700;color:var(--navy);margin-bottom:12px}
.ana-tipo-id{display:inline-block;background:rgba(201,168,76,.12);color:var(--gold);padding:4px 11px;border-radius:20px;font-size:11px;font-weight:700;margin-bottom:8px}
.ana-partes-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.ana-parte-chip{padding:3px 10px;background:var(--cream);border:1px solid var(--cream2);border-radius:20px;font-size:11px;color:var(--text)}
.ana-parte-chip em{color:var(--muted);font-style:normal;font-size:10px}
.ana-sintese-txt{font-size:13px;color:var(--text);line-height:1.7}
.ana-sintese-txt p{margin:0 0 10px}

/* Teses */
.ana-tese{padding:13px 0;border-top:1px solid var(--cream2)}
.ana-tese:first-of-type{border-top:none;padding-top:0}
.ana-tese-hdr{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.ana-tese-num{width:24px;height:24px;border-radius:50%;background:var(--navy);color:var(--gold);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ana-tese-tit{flex:1;font-size:13px;font-weight:700;color:var(--navy);line-height:1.4}
.ana-forca-badge{font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.ana-forca-green{background:rgba(14,122,54,.1);color:#0e7a36}
.ana-forca-orange{background:rgba(217,119,6,.1);color:#b45309}
.ana-forca-red{background:rgba(220,38,38,.1);color:#b91c1c}
.ana-tese-fund{font-size:12px;color:var(--text);line-height:1.6;margin-left:34px}

/* Riscos */
.ana-risco{display:flex;gap:12px;padding:11px 14px;border-radius:9px;margin-bottom:7px;border:1px solid}
.ana-risco:last-child{margin-bottom:0}
.ana-risco-red{background:rgba(220,38,38,.04);border-color:rgba(220,38,38,.18)}
.ana-risco-orange{background:rgba(217,119,6,.04);border-color:rgba(217,119,6,.18)}
.ana-risco-green{background:rgba(14,122,54,.04);border-color:rgba(14,122,54,.18)}
.ana-risco-grav{font-size:18px;flex-shrink:0;line-height:1}
.ana-risco-txt{font-size:13px;color:var(--text);line-height:1.55;flex:1}

/* Próximos passos */
.ana-passos-lista{margin:0;padding-left:22px;font-size:13px;color:var(--text);line-height:1.7}
.ana-passos-lista li{margin-bottom:5px}

/* Texto bruto fallback */
.ana-texto-bruto{font-size:13px;color:var(--text);line-height:1.7;white-space:pre-wrap}

/* Ações finais */
.ana-acoes-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}
.ana-acao-btn{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1.5px solid var(--cream2);background:#fff;border-radius:11px;cursor:pointer;font-family:'DM Sans',sans-serif;text-align:left;transition:all .15s;width:100%}
.ana-acao-btn:hover{border-color:var(--gold);background:rgba(201,168,76,.04);transform:translateY(-1px)}
.ana-acao-pet:hover{border-color:#1a56db}
.ana-acao-ctr:hover{border-color:#0e7a36}
.ana-acao-par:hover{border-color:#7c3aed}
.ana-acao-trc:hover{border-color:#25d366}

/* Banner "Ver como documento" — entrada do DocPreview */
.ana-doc-banner{display:flex;align-items:center;gap:14px;padding:16px 22px;background:linear-gradient(135deg,var(--navy) 0%,#0f1e3a 100%);color:#fff;border:none;border-radius:13px;cursor:pointer;width:100%;text-align:left;font-family:'DM Sans',sans-serif;transition:all .2s;box-shadow:0 4px 14px rgba(15,23,42,.12);margin-bottom:4px}
.ana-doc-banner:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(15,23,42,.22)}
.ana-doc-banner-icone{width:44px;height:44px;background:rgba(201,168,76,.18);border:1px solid rgba(201,168,76,.4);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--gold)}
.ana-doc-banner-icone svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.85;fill:none}
.ana-doc-banner-txt{flex:1;min-width:0}
.ana-doc-banner-ttl{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:#fff;line-height:1.25}
.ana-doc-banner-sub{font-size:12px;color:rgba(255,255,255,.7);margin-top:2px;line-height:1.45}
.ana-doc-banner-seta{color:var(--gold);flex-shrink:0;opacity:.7;transition:transform .2s}
.ana-doc-banner-seta svg{width:20px;height:20px;stroke:currentColor;stroke-width:2;fill:none}
.ana-doc-banner:hover .ana-doc-banner-seta{transform:translateX(4px);opacity:1}
.ana-acao-icone{font-size:22px;flex-shrink:0;line-height:1}
.ana-acao-ttl{font-size:13px;font-weight:700;color:var(--navy)}
.ana-acao-sub{font-size:11px;color:var(--muted);margin-top:1px}

@media(max-width:900px){
  .ana-layout{flex-direction:column}
  .ana-sidebar{width:auto;border-right:none;border-bottom:1px solid var(--cream2)}
  .ana-main{padding:18px}
  .ana-acoes-grid{grid-template-columns:1fr}
}

/* ═══════════════════════════════════════════════════════════
   TRADUTOR "LINGUAGEM DO CLIENTE" — v54
═══════════════════════════════════════════════════════════ */
.trc-layout{display:flex;height:100%;overflow:hidden;width:100%}
/* override do grid default de .tool-screen.active (380px+1fr) que comprimia .trc-layout */
#screen-tradutor.active{display:block!important;height:100%!important;overflow:hidden!important;width:100%!important}
.trc-sidebar{width:340px;flex-shrink:0;background:#fff;border-right:1px solid var(--cream2);padding:24px 22px;overflow-y:auto;display:flex;flex-direction:column;gap:13px}
.trc-side-ttl{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--navy);display:flex;align-items:center;gap:8px}
.trc-side-ttl svg{width:18px;height:18px;stroke:var(--gold);stroke-width:2;fill:none}
.trc-side-sub{font-size:12px;color:var(--muted);line-height:1.55;margin-bottom:6px}
.trc-campo{display:flex;flex-direction:column;gap:5px}
.trc-label{font-size:11px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.06em}
.trc-input{padding:9px 12px;border:1.5px solid var(--cream2);border-radius:8px;font-size:13px;font-family:'DM Sans',sans-serif;color:var(--navy);outline:none;transition:border .15s;background:#fff;box-sizing:border-box;width:100%}
.trc-input:focus{border-color:var(--gold)}
textarea.trc-input{resize:vertical;min-height:120px;font-family:inherit}

/* Tabs origem (colar / upload) */
.trc-tabs{display:flex;background:var(--cream);border-radius:8px;padding:3px;gap:3px}
.trc-tab{flex:1;padding:8px 10px;font-size:12px;font-weight:600;color:var(--muted);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s;font-family:inherit}
.trc-tab.ativo{background:#fff;color:var(--navy);box-shadow:0 1px 3px rgba(0,0,0,.06)}
.trc-tab:hover:not(.ativo){color:var(--navy)}

/* Upload */
.trc-upload-area{border:2px dashed var(--cream2);border-radius:10px;padding:22px 14px;text-align:center;cursor:pointer;transition:all .15s;background:var(--cream)}
.trc-upload-area:hover,.trc-upload-area.drag-over{border-color:var(--gold);background:rgba(201,168,76,.06)}
.trc-upload-icone{font-size:30px;margin-bottom:8px}
.trc-upload-txt{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:3px}
.trc-upload-sub{font-size:11px;color:var(--muted)}
.trc-arq-info{margin-top:10px;background:var(--cream);border-radius:8px;padding:11px 13px;border:1px solid var(--cream2)}
.trc-arq-nome{font-size:12px;font-weight:700;color:var(--navy);word-break:break-all}
.trc-arq-meta{font-size:11px;color:var(--muted);margin-top:4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.trc-trunc{color:var(--orange);font-weight:600}
.trc-arq-x{background:none;border:none;color:var(--red);font-size:11px;font-weight:600;cursor:pointer;padding:0;text-decoration:underline}
.trc-upload-status{font-size:11px;padding:8px 11px;border-radius:6px;line-height:1.4}
.trc-status-loading{background:rgba(26,86,219,.08);color:#1a56db}
.trc-status-ok{background:rgba(14,122,54,.08);color:#0e7a36}
.trc-status-error{background:rgba(220,38,38,.08);color:#dc2626}
.trc-status-info{background:var(--cream);color:var(--muted)}

/* Main */
.trc-main{flex:1;overflow-y:auto;padding:28px 36px;background:var(--cream);min-width:0}
.trc-result-box{max-width:780px;margin:0 auto}

/* Estado vazio */
.trc-vazio{background:#fff;border:1px solid var(--cream2);border-radius:14px;padding:48px 36px;text-align:center}
.trc-vazio-icone{font-size:54px;margin-bottom:14px}
.trc-vazio-ttl{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:var(--navy);margin-bottom:8px}
.trc-vazio-txt{font-size:13px;color:var(--text);line-height:1.6;max-width:560px;margin:0 auto 16px}
.trc-vazio-lista{list-style:none;padding:0;margin:0 auto;display:flex;flex-direction:column;gap:7px;max-width:420px;text-align:left;font-size:13px;color:var(--text);line-height:1.5}

/* Loading */
.trc-loading{background:#fff;border:1px solid var(--cream2);border-radius:14px;padding:60px 30px;text-align:center}
.trc-loading-spin{width:36px;height:36px;border:3px solid var(--cream2);border-top-color:var(--gold);border-radius:50%;animation:trc-spin .9s linear infinite;margin:0 auto 14px}
@keyframes trc-spin{to{transform:rotate(360deg)}}
.trc-loading-txt{font-size:14px;font-weight:700;color:var(--navy)}
.trc-loading-sub{font-size:12px;color:var(--muted);margin-top:5px}

/* Erro */
.trc-erro{background:#fff;border:1px solid #fecaca;border-radius:14px;padding:30px;text-align:center}
.trc-erro-icone{font-size:36px;margin-bottom:8px}
.trc-erro-ttl{font-size:15px;font-weight:700;color:var(--red);margin-bottom:5px}
.trc-erro-txt{font-size:13px;color:var(--text)}

/* Resultado */
.trc-resultado{background:#fff;border:1px solid var(--cream2);border-radius:14px;overflow:hidden}
.trc-res-header{padding:18px 24px 14px;border-bottom:1px solid var(--cream2);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.trc-res-titulo{font-family:'Playfair Display',serif;font-size:17px;font-weight:700;color:var(--navy);display:flex;align-items:center;gap:9px}
.trc-res-titulo svg{width:18px;height:18px;stroke:var(--gold);stroke-width:2;fill:none}
.trc-res-meta{font-size:11px;color:var(--muted)}
.trc-res-body{padding:20px 26px;outline:none;min-height:200px}
.trc-res-body:focus{outline:none}

.trc-bloco{margin-bottom:18px}
.trc-bloco:last-child{margin-bottom:0}
.trc-bloco-ttl{font-size:11px;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:.07em;margin-bottom:7px;outline:none}
.trc-bloco-txt{font-size:14px;color:var(--text);line-height:1.7;outline:none}
.trc-bloco-ul{margin:0;padding-left:20px;font-size:14px;color:var(--text);line-height:1.7;outline:none}
.trc-bloco-ul li{margin-bottom:5px;outline:none}
.trc-res-body strong{color:var(--navy)}

/* Ações */
.trc-acoes{display:flex;gap:8px;padding:14px 20px;background:var(--cream);border-top:1px solid var(--cream2);flex-wrap:wrap}
.trc-acao{flex:1;min-width:90px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;background:#fff;border:1.5px solid var(--cream2);border-radius:9px;cursor:pointer;font-family:'DM Sans',sans-serif;color:var(--navy);transition:all .15s;font-size:11px;font-weight:600}
.trc-acao svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.9;fill:none;stroke-linecap:round;stroke-linejoin:round}
.trc-acao:hover{border-color:var(--gold);background:rgba(201,168,76,.05);transform:translateY(-1px)}
.trc-acao-wpp:hover{border-color:#25d366;color:#128c4f}
.trc-acao-email:hover{border-color:#1a56db;color:#1a56db}
.trc-acao-pdf:hover{border-color:#dc2626;color:#dc2626}

.trc-dica{padding:10px 20px 14px;font-size:11px;color:var(--muted);background:var(--cream);text-align:center}

/* Toast */
.trc-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--navy);color:#fff;padding:10px 20px;border-radius:99px;font-size:13px;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.18);opacity:0;transition:all .25s;z-index:99999;pointer-events:none}
.trc-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

@media(max-width:900px){
  .trc-layout{flex-direction:column}
  .trc-sidebar{width:auto;border-right:none;border-bottom:1px solid var(--cream2)}
  .trc-main{padding:18px}
  .trc-acoes{gap:6px}
  .trc-acao{min-width:0;flex:1 1 0;padding:8px 4px;font-size:10px}
}

/* ═══════════════════════════════════════════════════════════
   DOC PREVIEW — Drawer reutilizável (v55)
═══════════════════════════════════════════════════════════ */
.docprev-overlay{position:fixed;inset:0;background:rgba(15,23,42,0);z-index:9000;display:flex;justify-content:flex-end;pointer-events:none;transition:background .25s}
.docprev-overlay.aberto{background:rgba(15,23,42,.45);pointer-events:auto}
.docprev-drawer{width:min(72vw,1100px);height:100%;background:var(--cream);box-shadow:-12px 0 40px rgba(0,0,0,.18);transform:translateX(100%);transition:transform .28s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;overflow:hidden}
.docprev-drawer.aberto{transform:translateX(0)}

.docprev-header{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 26px 14px;background:var(--navy);color:#fff;gap:14px;flex-shrink:0}
.docprev-titulo-bloco{flex:1;min-width:0}
.docprev-titulo{font-family:'Playfair Display',serif;font-size:19px;font-weight:700;line-height:1.3;color:#fff}
.docprev-subtitulo{font-size:12px;color:rgba(255,255,255,.65);margin-top:3px;line-height:1.4}
.docprev-fechar{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);width:34px;height:34px;border-radius:8px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}
.docprev-fechar:hover{background:rgba(255,255,255,.18)}
.docprev-fechar svg{width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none}

.docprev-toolbar{display:flex;gap:8px;padding:12px 26px;background:#fff;border-bottom:1px solid var(--cream2);flex-wrap:wrap;flex-shrink:0;align-items:center}
.docprev-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:1.5px solid var(--cream2);background:#fff;border-radius:8px;cursor:pointer;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:600;color:var(--navy);transition:all .15s}
.docprev-btn:hover{border-color:var(--gold);background:rgba(201,168,76,.05);transform:translateY(-1px)}
.docprev-btn.ativo{background:var(--navy);border-color:var(--navy);color:var(--gold)}
.docprev-btn svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.85;fill:none;stroke-linecap:round;stroke-linejoin:round}
.docprev-btn-trc{margin-left:auto;border-color:#25d366;color:#128c4f}
.docprev-btn-trc:hover{background:rgba(37,211,102,.08);border-color:#128c4f}
.docprev-btn-salvar{background:#0e7a36;color:#fff;border-color:#0e7a36}
.docprev-btn-salvar:hover{background:#075a26;border-color:#075a26;color:#fff}

.docprev-edit-bar{align-items:center;justify-content:space-between;padding:9px 26px;background:rgba(201,168,76,.12);border-bottom:1px solid rgba(201,168,76,.3);flex-shrink:0;gap:12px}
.docprev-edit-aviso{font-size:12px;color:var(--navy);font-weight:600}

.docprev-body{flex:1;overflow-y:auto;padding:30px 24px;background:var(--cream)}
.docprev-a4{max-width:780px;margin:0 auto;background:#fff;border-radius:6px;box-shadow:0 4px 18px rgba(15,23,42,.08);padding:54px 64px;font-family:Georgia,"Times New Roman",serif;color:#1a2942;font-size:13.5px;line-height:1.75;min-height:600px}
.docprev-a4.editando{outline:2px dashed var(--gold);outline-offset:-8px;background:#fffdf5}
.docprev-a4 h1{font-family:'Playfair Display',Georgia,serif;font-size:22px;text-align:center;margin:0 0 10px;color:var(--navy);border-bottom:2px solid var(--gold);padding-bottom:10px}
.docprev-a4 h2{font-family:'Playfair Display',Georgia,serif;font-size:16px;margin:22px 0 8px;color:var(--navy)}
.docprev-a4 h3{font-size:12px;color:var(--gold);text-transform:uppercase;letter-spacing:.06em;font-weight:700;margin:18px 0 6px;font-family:'DM Sans',sans-serif}
.docprev-a4 p{margin:0 0 10px;text-align:justify}
.docprev-a4 ul,.docprev-a4 ol{margin:6px 0 12px 22px;padding:0}
.docprev-a4 li{margin-bottom:5px}
.docprev-a4 strong{color:var(--navy)}
.docprev-a4 .docprev-bloco{margin:14px 0}
.docprev-a4 .docprev-chip{display:inline-block;background:var(--cream);border:1px solid var(--cream2);border-radius:99px;padding:3px 10px;font-size:11px;font-family:'DM Sans',sans-serif;color:var(--text);margin:0 4px 4px 0}
.docprev-a4 .docprev-badge{display:inline-block;padding:2px 9px;border-radius:99px;font-size:10px;font-weight:700;font-family:'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.04em;margin-left:6px}
.docprev-a4 .docprev-badge-alta{background:rgba(220,38,38,.12);color:#b91c1c}
.docprev-a4 .docprev-badge-media{background:rgba(217,119,6,.12);color:#b45309}
.docprev-a4 .docprev-badge-baixa{background:rgba(14,122,54,.12);color:#0e7a36}

.docprev-toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--navy);color:#fff;padding:11px 22px;border-radius:99px;font-size:13px;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.18);opacity:0;transition:all .25s;z-index:99999;pointer-events:none}
.docprev-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

@media(max-width:900px){
  .docprev-drawer{width:100vw}
  .docprev-toolbar{padding:10px 14px;gap:6px}
  .docprev-btn{padding:7px 10px;font-size:11px}
  .docprev-btn span{display:none}
  .docprev-btn-salvar span,.docprev-btn-trc span{display:inline}
  .docprev-btn-trc{margin-left:0}
  .docprev-body{padding:16px 10px}
  .docprev-a4{padding:30px 26px}
}

/* ═══════════════════════════════════════════════════════════
   LUCIDE ICONS — Ferramentas, Visual Law, Mobile Nav (PR #125)
═══════════════════════════════════════════════════════════ */

/* Privacy / header */
.privacy-btn-aceitar svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.header-nav-btn svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.vl-privacy-badge svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* Visual Law screen */
.vl-screen-titulo{display:flex;align-items:center;gap:8px}
.vl-screen-titulo svg{width:18px;height:18px;stroke:var(--gold);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.vl-aba svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.vl-card-titulo svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.vl-btn-gerar{display:inline-flex;align-items:center;gap:7px}
.vl-btn-gerar svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.vl-cy-btn{display:inline-flex;align-items:center;gap:5px}
.vl-cy-btn svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.mm-toolbar-btn svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* General buttons */
.btn-main svg,.btn-gerar svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.btn-sec{display:flex;align-items:center;justify-content:center;gap:6px}
.btn-sec svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.btn-tool svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* Ferramentas sidebar */
.tools-menu-icon{color:rgba(255,255,255,.7)}
.tools-menu-item.active .tools-menu-icon{color:#fff}
.tools-menu-icon svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.tools-panel-ttl{display:flex;align-items:center;gap:8px}
.tools-panel-ttl svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* Tab buttons */
.trab-aba{display:inline-flex;align-items:center;gap:5px}
.trab-aba svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.aud-tab{display:inline-flex;align-items:center;gap:5px}
.aud-tab svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.pdf-tab{display:inline-flex;align-items:center;gap:5px}
.pdf-tab svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.guia-filtro-btn{display:inline-flex;align-items:center;gap:5px}
.guia-filtro-btn svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* Jurisprudência cards */
.jur-card .jc-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;font-size:0;line-height:1}
.jur-card .jc-icon svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* PDF tools */
.pdf-drop-icon{display:flex;align-items:center;justify-content:center;margin-bottom:8px;font-size:0}
.pdf-drop-icon svg{width:28px;height:28px;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
.pdf-opcao-icon{display:flex;align-items:center;justify-content:center;gap:4px;margin-bottom:8px;font-size:0}
.pdf-opcao-icon svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* Reforma tributária */
.rt-tab{display:inline-flex;align-items:center;gap:6px}
.rt-tab svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.rt-card-title{display:flex;align-items:center;gap:7px}
.rt-card-title svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.rt-btn svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.rt-comp-titulo{display:flex;align-items:center;gap:5px}
.rt-comp-titulo svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.rt-calc-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;background:linear-gradient(135deg,var(--navy),#1a3050);color:#fff;border:none;border-radius:9px;font-size:13px;font-weight:700;cursor:pointer;font-family:DM Sans,sans-serif;transition:all .2s}
.rt-calc-btn svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* Precatórios */
.prec-tab{display:inline-flex;align-items:center;gap:5px}
.prec-tab svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.prec-cron-titulo{display:flex;align-items:center;gap:6px}
.prec-cron-titulo svg{width:13px;height:13px;stroke:#fff;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* screen-analise */
.ana-side-ttl{display:flex;align-items:center;gap:7px}
.ana-side-ttl svg{width:18px;height:18px;stroke:var(--navy);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.ana-upload-icone{display:flex;align-items:center;justify-content:center;margin-bottom:8px;font-size:0}
.ana-upload-icone svg{width:28px;height:28px;stroke:var(--muted);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* Additional icon containers (pass 2) */
.privacy-icon{font-size:0}
.privacy-icon svg{width:22px;height:22px;stroke:var(--gold);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.privacy-section-titulo span svg{width:14px;height:14px;stroke:var(--navy);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.assin-step-h-icon{display:flex;align-items:center;justify-content:center;font-size:0}
.assin-step-h-icon svg{width:26px;height:26px;stroke:var(--gold);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.assin-fs-title{display:flex;align-items:center;gap:7px}
.assin-fs-title svg{width:16px;height:16px;stroke:var(--gold);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.etb{display:inline-flex;align-items:center;gap:5px}
.etb svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.ia-cw-avatar{font-size:0}
.ia-cw-avatar svg{width:20px;height:20px;stroke:#fff;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}
.jusp-vazio-icon{display:flex;align-items:center;justify-content:center;font-size:0}
.jusp-vazio-icon svg{width:42px;height:42px;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:.4}
.escr-modal-hdr-icon{font-size:0}
.escr-modal-hdr-icon svg{width:22px;height:22px;stroke:var(--navy);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* ════════════════════════════════════════════════════════════════
   MODELOS PRÓPRIOS — padronização visual workspace
   ════════════════════════════════════════════════════════════════ */
#ws-mod-grid{padding:16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;overflow-y:auto;flex:1;background:var(--cream);min-height:0;align-content:start}
.modw-card{position:relative;background:#fff;border:1.5px solid var(--cream2);border-radius:12px;padding:14px 14px 12px;cursor:pointer;transition:all .18s;display:flex;flex-direction:column;gap:6px;overflow:hidden;min-height:130px}
.modw-card:hover{border-color:var(--gold);box-shadow:0 4px 16px rgba(15,30,53,.08);transform:translateY(-1px)}
.modw-card-strip{position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:11px 0 0 11px}
.modw-strip-contrato{background:#185FA5}
.modw-strip-peticao{background:#085041}
.modw-strip-parecer{background:#5b3aa7}
.modw-strip-procuracao{background:#7a4800}
.modw-strip-notificacao{background:#a64f1c}
.modw-strip-outro{background:#9da3ad}
.modw-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.modw-card-tipo{display:inline-flex;align-items:center;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 8px;border-radius:999px;background:var(--cream);color:var(--navy);border:1px solid var(--cream2);flex-shrink:0}
.modw-tipo-contrato{background:rgba(24,95,165,.10);color:#0C4472;border-color:rgba(24,95,165,.20)}
.modw-tipo-peticao{background:rgba(8,80,65,.10);color:#085041;border-color:rgba(8,80,65,.20)}
.modw-tipo-parecer{background:rgba(91,58,167,.10);color:#3D2680;border-color:rgba(91,58,167,.20)}
.modw-tipo-procuracao{background:rgba(122,72,0,.10);color:#7A4800;border-color:rgba(122,72,0,.20)}
.modw-tipo-notificacao{background:rgba(166,79,28,.10);color:#7A2F08;border-color:rgba(166,79,28,.20)}
.modw-tipo-outro{background:rgba(120,128,138,.10);color:#48515E;border-color:rgba(120,128,138,.20)}
.modw-card-data{font-size:10px;color:var(--muted);white-space:nowrap}
.modw-card-titulo{font-size:13px;font-weight:600;color:var(--navy);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.modw-card-tags{display:flex;flex-wrap:wrap;gap:4px}
.modw-card-tags span{font-size:10px;font-weight:600;padding:1px 7px;border-radius:999px;cursor:pointer}
.modw-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:6px}
.modw-card-usos{font-size:10px;color:var(--muted);display:inline-flex;align-items:center;gap:4px}
.modw-card-actions{display:flex;gap:4px}
.modw-card-actions button{font-size:11px;padding:3px 9px;border-radius:6px;border:1px solid var(--cream2);background:#fff;cursor:pointer;color:var(--muted);font-family:"DM Sans",sans-serif;font-weight:500;transition:all .15s}
.modw-card-actions button:hover{border-color:var(--navy);color:var(--navy);background:var(--cream)}
.modw-card-actions .b-primary{background:var(--navy);color:#fff;border-color:var(--navy)}
.modw-card-actions .b-primary:hover{background:var(--navy2);color:#fff}
.modw-card-actions .b-danger{color:#c0392b;border-color:#f5c6c6}
.modw-card-actions .b-danger:hover{background:#fff0f0;border-color:#c0392b;color:#c0392b}
.modw-empty{grid-column:1/-1;text-align:center;padding:48px 20px;color:var(--muted)}
.modw-empty svg{width:42px;height:42px;opacity:.25;margin-bottom:10px}
.modw-empty h3{font-size:14px;color:var(--navy);font-weight:600;margin:0 0 6px}
.modw-empty p{font-size:12px;line-height:1.6;max-width:280px;margin:0 auto}

/* ════════════════════════════════════════════════════════════════
   KANBAN — visão LISTA aprimorada
   ════════════════════════════════════════════════════════════════ */
.lista-tarefas{padding:16px 20px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:14px}
.lista-secao{background:#fff;border:1px solid var(--cream2);border-radius:10px;overflow:hidden}
.lista-secao-hdr{display:flex;align-items:center;gap:8px;padding:9px 14px;background:var(--cream);border-bottom:1px solid var(--cream2);font-size:11px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.06em}
.lista-secao-hdr::before{content:"";width:8px;height:8px;border-radius:50%;background:#9da3ad}
.lista-secao-hdr-afazer::before{background:#5b9bd5}
.lista-secao-hdr-andamento::before{background:#e8a838}
.lista-secao-hdr-aguardando::before{background:#9b6dc5}
.lista-secao-hdr-feito::before{background:#52a97f}
.lista-secao-cnt{margin-left:auto;font-size:10px;background:#fff;color:var(--muted);padding:2px 8px;border-radius:999px;border:1px solid var(--cream2);font-weight:600;letter-spacing:0;text-transform:none}
.lista-secao-body{display:flex;flex-direction:column}
.lista-tarefa-item{position:relative;background:#fff;border:none;border-top:1px solid var(--cream2);border-radius:0;padding:11px 14px 11px 18px;margin:0;display:flex;align-items:center;gap:12px;transition:background .12s}
.lista-secao-body .lista-tarefa-item:first-child{border-top:none}
.lista-tarefa-item:hover{background:var(--cream)}
.lista-tarefa-item::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#9da3ad}
.lista-tarefa-item.lista-prio-urgente::before{background:#e74c3c}
.lista-tarefa-item.lista-prio-alta::before{background:#e67e22}
.lista-tarefa-item.lista-prio-normal::before{background:#5b9bd5}
.lista-tarefa-item.lista-prio-baixa::before{background:#95a5a6}
.lista-tarefa-item.lista-feito::before{background:#52a97f}
.lista-item-proc{border-left:none}
.kt-proc-badge-sm{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:#5b3aa7;background:rgba(91,58,167,.08);padding:1px 6px;border-radius:4px;margin-bottom:3px;font-weight:600}
.lista-tarefa-info{flex:1;min-width:0}
.lista-tarefa-titulo{font-size:13px;font-weight:500;color:var(--navy);line-height:1.4}
.lista-tarefa-titulo.feito{text-decoration:line-through;color:var(--muted)}
.lista-tarefa-meta{font-size:11px;color:var(--muted);margin-top:3px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.lista-tarefa-meta .kt-prio{font-size:10px;font-weight:600;padding:1px 7px;border-radius:999px}
.lista-tarefa-prazo{display:inline-flex;align-items:center;gap:3px}
.lista-tarefa-prazo.vencido{color:#c0392b;font-weight:600}
.lista-tarefa-acoes{display:flex;gap:5px;opacity:0;transition:opacity .15s}
.lista-tarefa-item:hover .lista-tarefa-acoes{opacity:1}
.lista-tarefa-acoes button{font-size:11px;padding:4px 9px;border:1px solid var(--cream2);border-radius:6px;background:#fff;cursor:pointer;color:var(--muted);font-family:"DM Sans",sans-serif;font-weight:500}
.lista-tarefa-acoes button:hover{border-color:var(--navy);color:var(--navy)}
.lista-tarefa-acoes .kt-btn-del{color:#c0392b;border-color:#f5c6c6}
.lista-tarefa-acoes .kt-btn-del:hover{background:#fff0f0;border-color:#c0392b;color:#c0392b}
.lista-vazia{padding:60px 20px;text-align:center;color:var(--muted);font-size:13px}
.lista-vazia svg{width:42px;height:42px;opacity:.25;margin-bottom:10px}
.lista-vazia h3{font-size:14px;color:var(--navy);font-weight:600;margin:0 0 6px}
.lista-vazia p{font-size:12px;line-height:1.6;max-width:280px;margin:0 auto}

/* ════════════════════════════════════════════════════════════════
   LOADING / SKELETON / EMPTY STATES
   ════════════════════════════════════════════════════════════════ */
@keyframes dcShimmer{0%{background-position:-400px 0}100%{background-position:400px 0}}
.skel{background:linear-gradient(90deg,rgba(15,30,53,.04) 0%,rgba(15,30,53,.10) 50%,rgba(15,30,53,.04) 100%);background-size:800px 100%;animation:dcShimmer 1.3s linear infinite;border-radius:6px}
.skel-card{background:#fff;border:1.5px solid var(--cream2);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px;min-height:130px}
.skel-card .skel{border-radius:6px}
.skel-card .skel-line-1{height:14px;width:60%}
.skel-card .skel-line-2{height:10px;width:90%}
.skel-card .skel-line-3{height:10px;width:75%}
.skel-card .skel-foot{height:18px;width:45%;margin-top:auto}
.skel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;padding:16px}
.skel-row{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border:1px solid var(--cream2);border-radius:9px;margin-bottom:8px}
.skel-row .skel{height:12px;border-radius:4px}
.skel-row .skel-circle{width:18px;height:18px;border-radius:50%;flex-shrink:0}
.skel-row .skel-l1{flex:1;height:13px}
.skel-row .skel-l2{width:60px;height:11px}

.dc-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;color:var(--muted);min-height:240px}
.dc-empty-icon{width:54px;height:54px;border-radius:14px;background:rgba(15,30,53,.04);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.dc-empty-icon svg{width:26px;height:26px;stroke:var(--navy);stroke-width:1.5;fill:none;opacity:.55}
.dc-empty h3{font-size:15px;color:var(--navy);font-weight:600;margin:0 0 6px}
.dc-empty p{font-size:12px;line-height:1.65;max-width:320px;margin:0 0 14px}
.dc-empty .dc-empty-cta{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:7px 14px;background:var(--navy);color:#fff;border:none;border-radius:7px;cursor:pointer;font-family:"DM Sans",sans-serif;font-weight:500}
.dc-empty .dc-empty-cta:hover{background:var(--navy2)}
.dc-empty.dc-empty-grid{grid-column:1/-1}

/* ════════════════════════════════════════════════════════════════
   GLOBAL NOTIFICATIONS — bell no topbar
   ════════════════════════════════════════════════════════════════ */
.gnotif-wrap{position:relative}
.gnotif-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);cursor:pointer;transition:all .15s;position:relative}
.gnotif-btn:hover{background:rgba(201,168,76,.18);border-color:var(--gold)}
.gnotif-btn svg{width:18px;height:18px;stroke:#fff;stroke-width:1.85;fill:none;stroke-linecap:round;stroke-linejoin:round}
.gnotif-btn:hover svg{stroke:var(--gold)}
.gnotif-badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;border-radius:99px;background:#c0392b;color:#fff;font-size:9px;font-weight:700;display:none;align-items:center;justify-content:center;border:2px solid var(--cream);font-family:"DM Sans",sans-serif}
.gnotif-badge.visible{display:flex}
.gnotif-panel{position:absolute;top:calc(100% + 8px);right:0;width:340px;max-height:480px;background:#fff;border:1px solid var(--cream2);border-radius:12px;box-shadow:0 12px 36px rgba(15,30,53,.18);display:none;flex-direction:column;z-index:5000;overflow:hidden}
.gnotif-panel.open{display:flex}
.gnotif-hdr{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--cream2);background:var(--cream)}
.gnotif-hdr-ttl{font-size:13px;font-weight:700;color:var(--navy);font-family:'Playfair Display',serif}
.gnotif-hdr-clear{font-size:11px;color:var(--muted);background:transparent;border:none;cursor:pointer;font-family:"DM Sans",sans-serif;padding:3px 8px;border-radius:5px}
.gnotif-hdr-clear:hover{background:rgba(15,30,53,.06);color:var(--navy)}
.gnotif-body{flex:1;overflow-y:auto;max-height:380px}
.gnotif-empty{padding:36px 20px;text-align:center;color:var(--muted);font-size:12px}
.gnotif-empty svg{width:32px;height:32px;opacity:.3;margin-bottom:8px}
.gnotif-item{display:flex;gap:10px;padding:11px 14px;border-bottom:1px solid var(--cream2);cursor:pointer;transition:background .12s;position:relative}
.gnotif-item:hover{background:var(--cream)}
.gnotif-item.nova{background:rgba(201,168,76,.06)}
.gnotif-item.nova::before{content:"";position:absolute;left:6px;top:18px;width:5px;height:5px;border-radius:50%;background:var(--gold)}
.gnotif-icone{flex-shrink:0;width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:rgba(15,30,53,.05);margin-top:2px}
.gnotif-icone svg{width:15px;height:15px;stroke:var(--navy);stroke-width:1.85;fill:none}
.gnotif-icone.gnotif-success{background:rgba(26,122,60,.10)}
.gnotif-icone.gnotif-success svg{stroke:var(--green)}
.gnotif-icone.gnotif-error{background:rgba(192,57,43,.10)}
.gnotif-icone.gnotif-error svg{stroke:#c0392b}
.gnotif-icone.gnotif-info{background:rgba(91,58,167,.10)}
.gnotif-icone.gnotif-info svg{stroke:#5b3aa7}
.gnotif-corpo{flex:1;min-width:0}
.gnotif-titulo{font-size:12px;font-weight:600;color:var(--navy);line-height:1.35}
.gnotif-sub{font-size:11px;color:var(--muted);margin-top:2px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gnotif-data{font-size:10px;color:var(--muted);margin-top:4px}
.gnotif-ftr{padding:8px 14px;border-top:1px solid var(--cream2);background:var(--cream);font-size:10px;color:var(--muted);text-align:center}

/* ════════════════════════════════════════════════════════════════
   PORTAL CONSULTIVO — seletor de tipo no modal
   ════════════════════════════════════════════════════════════════ */
.portal-tipo-btn{flex:1;padding:8px 12px;border-radius:8px;border:1.5px solid var(--cream2);background:#fff;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;font-family:"DM Sans",sans-serif;transition:all .15s;text-align:center}
.portal-tipo-btn.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.portal-tipo-btn:not(.active):hover{border-color:var(--navy);color:var(--navy)}

/* ════════════════════════════════════════════════════════════════
   CONSULTIVO — módulo de instrumentos jurídicos por área
   ════════════════════════════════════════════════════════════════ */
/* Override do grid 2-col padrão de .tool-screen.active — Consultivo é single column scrollable */
#screen-consultivo.active{display:block!important;height:100%;overflow-y:auto;overflow-x:hidden}
.cons-wrap{padding:18px 24px 40px;max-width:1280px;margin:0 auto}
.cons-header{background:var(--navy);padding:16px 28px;border-bottom:2px solid rgba(201,168,76,.25);display:flex;align-items:center;gap:16px;flex-shrink:0}
.cons-ttl{display:flex;align-items:center;gap:8px;font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--gold);letter-spacing:-.3px}
.cons-ttl svg{width:20px;height:20px;stroke:var(--gold);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
.cons-sub{font-size:12px;color:rgba(255,255,255,.55);margin-top:3px;max-width:680px;line-height:1.5}
.cons-header-actions{display:flex;gap:8px;flex-wrap:wrap}
.cons-header-btn{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.25);color:#fff;padding:8px 18px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s}
.cons-header-btn:hover{background:rgba(201,168,76,.22);border-color:var(--gold);color:var(--gold)}
.cons-header-btn svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}

.cons-chips{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap;border-bottom:1px solid var(--cream2);padding-bottom:14px}
.cons-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:20px;border:1.5px solid var(--cream2);background:#fff;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;font-family:"DM Sans",sans-serif;transition:all .15s}
.cons-chip:hover{border-color:var(--navy);color:var(--navy)}
.cons-chip.active{background:var(--navy);color:#fff;border-color:var(--navy)}

.cons-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-bottom:28px}
.cons-cat-card{position:relative;display:flex;background:#fff;border:1px solid var(--cream2);border-radius:12px;overflow:hidden;cursor:pointer;transition:all .15s;min-height:148px}
.cons-cat-card:hover{border-color:var(--navy);box-shadow:0 6px 18px -10px rgba(15,30,53,.18);transform:translateY(-2px)}
.cons-cat-strip{width:4px;flex-shrink:0}
.cons-cat-body{flex:1;padding:14px 16px;display:flex;flex-direction:column;gap:6px;min-width:0}
.cons-cat-icon{width:36px;height:36px;border-radius:9px;background:var(--cream);display:flex;align-items:center;justify-content:center;margin-bottom:2px}
.cons-cat-icon i{width:18px;height:18px;stroke-width:1.75;fill:none}
.cons-cat-ttl{font-size:14px;font-weight:700;color:var(--navy);line-height:1.3}
.cons-cat-desc{font-size:12px;color:var(--muted);line-height:1.45;flex:1}
.cons-cat-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:4px}
.cons-tag{font-size:10px;font-weight:600;color:var(--navy);background:var(--cream);padding:2px 7px;border-radius:10px}
.cons-tag-ia{font-size:10px;font-weight:700;color:#fff;background:linear-gradient(90deg,#7c3aed,#a855f7);padding:2px 7px;border-radius:10px}
.cons-tag-soon{font-size:10px;font-weight:600;color:#92400e;background:#fef3c7;padding:2px 7px;border-radius:10px}
.cons-cat-destaque{border-color:#a855f7;background:linear-gradient(180deg,#faf5ff 0%,#fff 60%)}
.cons-cat-destaque:hover{border-color:#7c3aed}

.cons-list-section{margin-top:8px}
.cons-list-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.cons-list-header h3{font-size:14px;font-weight:700;color:var(--navy);margin:0;font-family:"DM Sans",sans-serif}
.cons-list-filtros input{padding:7px 11px;border:1px solid var(--cream2);border-radius:8px;font-size:12px;width:240px;font-family:"DM Sans",sans-serif}
.cons-pc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.cons-pc-card{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:13px 14px;cursor:pointer;transition:all .15s}
.cons-pc-card:hover{border-color:var(--navy);box-shadow:0 4px 12px -8px rgba(15,30,53,.2)}
.cons-pc-card-ttl{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:3px;line-height:1.3}
.cons-pc-card-cli{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:4px;margin-bottom:8px}
.cons-pc-card-meta{display:flex;gap:6px;align-items:center;font-size:10px;color:var(--muted);flex-wrap:wrap}
.cons-pc-card-status{padding:2px 8px;border-radius:10px;font-weight:600;font-size:10px}
.cons-pc-card-status.rascunho{background:#e5e7eb;color:#4b5563}
.cons-pc-card-status.revisao{background:#fef3c7;color:#92400e}
.cons-pc-card-status.aprovado{background:#d1fae5;color:#065f46}
.cons-pc-card-status.homologado{background:linear-gradient(90deg,#7c3aed,#a855f7);color:#fff}

/* ── Modal: Plano de Cargos e Carreiras + busca CBO ─────────── */
/* Overlay fixo (compartilhado entre os modais do Consultivo).
   Usa display:flex apenas quando o JS define style="display:flex"
   inline — o style padrão display:none mantém o modal oculto. */
.cons-wrap ~ .modal-overlay,
#screen-consultivo > .modal-overlay{position:fixed;inset:0;background:rgba(15,30,53,.55);z-index:9990;align-items:center;justify-content:center;padding:20px}
#modal-cbo{z-index:9995}
#screen-consultivo > .modal-overlay > .modal-content{background:#fff;border-radius:14px;width:100%;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px -10px rgba(15,30,53,.45)}
#screen-consultivo .modal-proc-x{background:none;border:none;color:var(--muted);font-size:22px;cursor:pointer;padding:4px 8px;line-height:1;border-radius:6px}
#screen-consultivo .modal-proc-x:hover{background:var(--cream);color:var(--navy)}
.modal-pc{max-width:980px;width:96%;max-height:92vh;display:flex;flex-direction:column;overflow:hidden}
.modal-pc-header{padding:16px 22px;border-bottom:1px solid var(--cream2);display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-shrink:0}
.modal-pc-ttl{font-family:"Playfair Display",serif;font-size:18px;font-weight:700;color:var(--navy);line-height:1.25}
.modal-pc-sub{font-size:12px;color:var(--muted);margin-top:3px;line-height:1.45}
.modal-pc-body{padding:18px 22px;overflow-y:auto;flex:1}
.modal-pc-section{margin-bottom:22px;padding-bottom:18px;border-bottom:1px dashed var(--cream2)}
.modal-pc-section:last-child{border-bottom:0;margin-bottom:0}
.modal-pc-section h4{font-size:13px;font-weight:700;color:var(--navy);margin:0 0 10px 0;font-family:"DM Sans",sans-serif}
.modal-pc-section-hdr{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;flex-wrap:wrap}
.modal-pc-section-hdr h4{margin:0}
.modal-pc-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.modal-pc-lbl{display:block;font-size:11px;color:var(--muted);font-weight:600;margin-bottom:4px;text-transform:uppercase;letter-spacing:.3px}
.modal-pc-input{width:100%;padding:8px 11px;border:1px solid var(--cream2);border-radius:7px;font-size:13px;font-family:"DM Sans",sans-serif;background:#fff;color:var(--navy)}
.modal-pc-input:focus{outline:none;border-color:var(--navy)}
.modal-pc-footer{padding:14px 22px;border-top:1px solid var(--cream2);display:flex;gap:8px;justify-content:flex-end;background:var(--cream);flex-shrink:0}
.modal-pc-footer .btn-main, .modal-pc-footer .btn-sec{display:inline-flex;align-items:center;gap:6px}

/* ── Tabela de cargos ───────────────────────────────────────── */
.pc-cargos-help{font-size:11px;color:var(--muted);background:#fffbeb;border-left:3px solid #fbbf24;padding:8px 11px;border-radius:5px;margin-bottom:10px;line-height:1.5}
.pc-tbl-wrap{overflow-x:auto;border:1px solid var(--cream2);border-radius:8px}
.pc-tbl{width:100%;border-collapse:collapse;font-size:12px;min-width:720px}
.pc-tbl thead{background:var(--cream)}
.pc-tbl th{text-align:left;padding:9px 10px;font-weight:600;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid var(--cream2)}
.pc-tbl tbody tr{border-bottom:1px solid var(--cream2)}
.pc-tbl tbody tr:last-child{border-bottom:0}
.pc-tbl td{padding:7px 8px;vertical-align:top}
.pc-tbl input{width:100%;padding:6px 8px;border:1px solid var(--cream2);border-radius:5px;font-size:12px;font-family:"DM Sans",sans-serif;background:#fff;color:var(--navy)}
.pc-tbl input:focus{outline:none;border-color:var(--navy)}
.pc-tbl input.pc-cbo-input{cursor:pointer;background:#fff;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'><circle cx='11' cy='11' r='8'/><path d='m21 21-4.35-4.35'/></svg>");background-repeat:no-repeat;background-position:right 8px center;padding-right:28px}
.pc-cbo-cell{display:flex;flex-direction:column;gap:2px}
.pc-cbo-titulo{font-size:10px;color:var(--muted);line-height:1.35;padding:0 2px}
.pc-cbo-manual-aviso{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:#92400e;background:#fef3c7;padding:2px 6px;border-radius:5px;width:fit-content;line-height:1.3;cursor:help}
.pc-cbo-manual-aviso i{width:11px;height:11px;stroke-width:2;fill:none}
.pc-tbl-rm{background:none;border:none;color:#ef4444;cursor:pointer;padding:4px;border-radius:4px}
.pc-tbl-rm:hover{background:#fee2e2}
.pc-tbl-rm i{width:14px;height:14px;stroke-width:2;fill:none}
.pc-tbl-empty{text-align:center;padding:20px;color:var(--muted);font-size:12px;font-style:italic}

/* ── Jurimetria ─────────────────────────────────────────────── */
.pc-juri{background:#fff;border:1px solid var(--cream2);border-radius:8px;padding:14px;min-height:60px}
.pc-juri-empty{font-size:12px;color:var(--muted);font-style:italic;text-align:center;padding:8px}
.pc-juri-resumo{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.pc-juri-card{flex:1;min-width:140px;background:var(--cream);border-radius:8px;padding:10px 12px}
.pc-juri-card-lbl{font-size:10px;color:var(--muted);text-transform:uppercase;font-weight:600;letter-spacing:.3px}
.pc-juri-card-val{font-size:18px;font-weight:700;color:var(--navy);margin-top:2px}
.pc-juri-card.risco-alto{background:#fee2e2}
.pc-juri-card.risco-alto .pc-juri-card-val{color:#b91c1c}
.pc-juri-card.risco-medio{background:#fef3c7}
.pc-juri-card.risco-medio .pc-juri-card-val{color:#92400e}
.pc-juri-card.risco-baixo{background:#d1fae5}
.pc-juri-card.risco-baixo .pc-juri-card-val{color:#065f46}
.pc-juri-alerta{display:flex;align-items:flex-start;gap:8px;padding:9px 11px;border-radius:7px;font-size:12px;margin-top:6px;line-height:1.45}
.pc-juri-alerta i{width:14px;height:14px;stroke-width:2;fill:none;margin-top:2px;flex-shrink:0}
.pc-juri-alerta.alto{background:#fee2e2;color:#b91c1c}
.pc-juri-alerta.medio{background:#fef3c7;color:#92400e}
.pc-juri-alerta.baixo{background:#d1fae5;color:#065f46}

/* ── Modal CBO ──────────────────────────────────────────────── */
.modal-cbo-content{max-width:680px;width:96%;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}
.cbo-resultados{flex:1;overflow-y:auto;padding:4px 18px 12px;min-height:160px}
.cbo-item{padding:10px 12px;border-radius:7px;border:1px solid var(--cream2);margin-bottom:6px;cursor:pointer;transition:all .12s;background:#fff}
.cbo-item:hover{border-color:var(--navy);background:var(--cream)}
.cbo-item-cod{font-size:11px;font-weight:700;color:#7c3aed;font-family:"JetBrains Mono",monospace;letter-spacing:.3px}
.cbo-item-tit{font-size:12px;color:var(--navy);margin-top:2px;line-height:1.4}
.cbo-vazio{text-align:center;padding:24px;color:var(--muted);font-size:12px;font-style:italic}
.cbo-fonte{font-size:10px;color:var(--muted);padding:6px 10px;margin-bottom:8px;background:#f0fdf4;border-left:3px solid #10b981;border-radius:4px;line-height:1.45}
.cbo-fonte-curada{background:#fffbeb;border-left-color:#fbbf24;color:#92400e}
.cbo-item-sin{font-size:10px;color:#7c3aed;font-style:italic;margin-top:3px;line-height:1.3}
.cbo-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:36px 16px;color:var(--muted);font-size:12px;text-align:center;line-height:1.5}
.cbo-spin{width:26px;height:26px;border:2.5px solid var(--cream2);border-top-color:var(--navy);border-radius:50%;animation:cboSpin 700ms linear infinite}
@keyframes cboSpin{to{transform:rotate(360deg)}}
.cbo-manual-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 18px;border-top:1px solid var(--cream2);background:var(--cream);flex-wrap:wrap;flex-shrink:0}
.cbo-mtp-link{font-size:11px;color:var(--muted);display:inline-flex;align-items:center;gap:4px;text-decoration:none;transition:color .15s}
.cbo-mtp-link:hover{color:var(--navy);text-decoration:underline}
.cbo-manual-form{padding:14px 18px;border-top:1px solid var(--cream2);background:#fffbeb;flex-shrink:0}
.cbo-manual-grid{display:grid;grid-template-columns:140px 1fr;gap:10px}
.cbo-manual-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:10px}
.cbo-manual-help{font-size:11px;color:var(--muted);margin-top:8px;line-height:1.45}
.cbo-manual-help code{background:#fff;padding:1px 5px;border-radius:4px;font-family:"JetBrains Mono",monospace;font-size:10px;color:#7c3aed;border:1px solid var(--cream2)}
@media(max-width:540px){.cbo-manual-grid{grid-template-columns:1fr}}

/* ── Botão IA ───────────────────────────────────────────────── */
.btn-ia{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(90deg,#7c3aed,#a855f7);color:#fff;border:none;padding:7px 12px;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;font-family:"DM Sans",sans-serif;transition:all .15s}
.btn-ia:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 10px -4px rgba(124,58,237,.5)}

/* ── Checkbox grid (instrumentos trabalhistas) ──────────────── */
.cons-check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px 14px}
.cons-chk{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--body);cursor:pointer;line-height:1.3;padding:4px 0}
.cons-chk input[type=checkbox]{width:14px;height:14px;accent-color:var(--navy);cursor:pointer;flex-shrink:0}

/* ── Tipo badge na lista de documentos ─────────────────────── */
.cons-pc-card-tipo{display:inline-block;font-size:9px;font-weight:600;padding:1px 6px;border-radius:10px;background:#e0e7ff;color:#3730a3;text-transform:uppercase;letter-spacing:.4px;margin-right:4px}

/* ── ROPA — activity cards ──────────────────────────────────── */
.ropa-atv-card{border:1px solid var(--cream2);border-radius:8px;margin-bottom:10px;overflow:hidden}
.ropa-atv-hdr{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--cream3);cursor:pointer;user-select:none;transition:background .12s}
.ropa-atv-hdr:hover{background:var(--cream2)}
.ropa-atv-num{width:22px;height:22px;border-radius:50%;background:var(--navy);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ropa-atv-nome{font-size:13px;font-weight:600;color:var(--navy);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ropa-atv-form{padding:16px;border-top:1px solid var(--cream2);background:#fff}
.ropa-empty{text-align:center;padding:28px;color:var(--muted);font-size:12px;font-style:italic;background:var(--cream3);border-radius:8px;border:1px dashed var(--cream2)}

/* ── LGPD tipo badge ────────────────────────────────────────── */
.cons-pc-card-tipo.lgpd{background:#ecfdf5;color:#065f46}
.cons-pc-card-tipo.societario{background:#fef3c7;color:#92400e}
.cons-pc-card-tipo.tributario{background:#e0f2fe;color:#0c4a6e}
.cons-pc-card-tipo.civil{background:#fae8ff;color:#86198f}

/* ── Botão "Sugerir com IA" no rodapé dos modais consultivo ─── */
.btn-ai-sugerir{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:7px 12px;
  border:1px solid #c7d2fe;background:#eef2ff;color:#3730a3;border-radius:7px;cursor:pointer;
  font-family:"DM Sans",sans-serif;font-weight:500;transition:background .15s}
.btn-ai-sugerir:hover{background:#e0e7ff}
.btn-ai-sugerir:disabled{opacity:.65;cursor:wait}
.btn-ai-sugerir .cons-ai-spin{width:11px;height:11px;border-radius:50%;
  border:1.6px solid #c7d2fe;border-top-color:#4338ca;display:inline-block;
  animation:cons-ai-spin .6s linear infinite}
@keyframes cons-ai-spin{to{transform:rotate(360deg)}}

/* ── Responsivo ─────────────────────────────────────────────── */
@media(max-width:768px){
  .cons-wrap{padding:12px 14px 30px}
  .cons-header{padding:12px 16px;flex-wrap:wrap}
  .cons-ttl{font-size:17px}
  .cons-sub{font-size:11px}
  .cons-header-btn{padding:7px 14px;font-size:12px}
  .modal-pc-grid2{grid-template-columns:1fr}
  .modal-pc-body{padding:14px 16px}
  .modal-pc-header,.modal-pc-footer{padding:12px 16px}
  .cons-list-filtros input{width:100%}
  .cons-check-grid{grid-template-columns:repeat(2,1fr)}
}

/* ══════════════════════════════════════════════════════════════
   HUB DE ADVOGADOS — Módulo 42
   ══════════════════════════════════════════════════════════════ */

/* Override grid padrão — Hub é single-column scrollable */
#screen-hub.active{display:block!important;height:100%;overflow-y:auto;overflow-x:hidden;background:var(--cream3)}
.hub-wrap{display:flex;flex-direction:column;min-height:100%}

/* ── Hero ── */
.hub-hero{
  background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 55%,var(--navy3) 100%);
  padding:44px 48px 40px;position:relative;overflow:hidden;flex-shrink:0
}
.hub-hero::before{
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(rgba(201,168,76,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,.05) 1px,transparent 1px);
  background-size:44px 44px
}
.hub-hero-glow{
  position:absolute;width:440px;height:440px;border-radius:50%;
  background:radial-gradient(circle,rgba(201,168,76,.11) 0%,transparent 70%);
  bottom:-120px;right:-80px;pointer-events:none
}
.hub-hero-inner{
  position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;
  gap:36px;flex-wrap:wrap;max-width:1600px;margin:0 auto
}
.hub-hero-tag{
  display:inline-flex;align-items:center;gap:7px;
  background:rgba(201,168,76,.15);border:1px solid rgba(201,168,76,.35);border-radius:99px;
  padding:5px 14px;font-size:10px;font-weight:700;color:var(--gold);
  text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px
}
.hub-hero h1{font-family:'Playfair Display',serif;font-size:30px;font-weight:700;color:#fff;line-height:1.2;margin-bottom:10px}
.hub-hero h1 span{color:var(--gold)}
.hub-hero-desc{font-size:14px;color:rgba(255,255,255,.65);max-width:460px;line-height:1.75;margin-bottom:24px}
.hub-hero-btns{display:flex;gap:10px;flex-wrap:wrap}
.hub-btn-primary{
  padding:11px 26px;background:var(--gold);color:var(--navy);border-radius:9px;
  font-size:13px;font-weight:700;cursor:pointer;transition:all .18s;border:none;
  font-family:'DM Sans',sans-serif;letter-spacing:.01em
}
.hub-btn-primary:hover{background:var(--gold2);transform:translateY(-1px);box-shadow:0 4px 14px rgba(201,168,76,.35)}
.hub-btn-secondary{
  padding:11px 22px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.85);border-radius:9px;
  font-size:13px;font-weight:600;cursor:pointer;border:1px solid rgba(255,255,255,.18);
  transition:all .18s;font-family:'DM Sans',sans-serif
}
.hub-btn-secondary:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.28)}
.hub-hero-stats{display:flex;gap:14px;flex-shrink:0;flex-wrap:wrap}
.hub-hero-stat{
  text-align:center;background:rgba(255,255,255,.07);
  border:1px solid rgba(201,168,76,.18);border-radius:14px;
  padding:18px 24px;min-width:96px;
  backdrop-filter:blur(4px);transition:background .18s
}
.hub-hero-stat:hover{background:rgba(255,255,255,.11)}
.hub-hero-stat-num{
  font-family:'Playfair Display',serif;font-size:28px;font-weight:700;
  color:var(--gold);line-height:1;margin-bottom:5px
}
.hub-hero-stat-lbl{font-size:10px;color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:.1em}

/* ── Layout body ── */
.hub-body{
  display:grid;grid-template-columns:1fr 296px;gap:28px;
  padding:28px 48px 56px;max-width:1280px;margin:0 auto;align-items:start;width:100%;box-sizing:border-box
}

/* ══ HUB — TABS (Feed × Parcerias) ══════════════════════════════ */
.hub-tabs-bar{
  display:flex;gap:4px;max-width:1280px;margin:0 auto;width:100%;box-sizing:border-box;
  padding:0 48px;background:var(--navy);border-bottom:1px solid rgba(201,168,76,.2)
}
.hub-tab{
  display:flex;align-items:center;gap:7px;padding:14px 20px;background:none;border:none;
  border-bottom:2.5px solid transparent;color:rgba(255,255,255,.6);font-size:13.5px;font-weight:600;
  cursor:pointer;font-family:'DM Sans',sans-serif;transition:color .15s,border-color .15s
}
.hub-tab i{width:16px;height:16px;stroke-width:2}
.hub-tab:hover{color:rgba(255,255,255,.9)}
.hub-tab.ativo{color:var(--gold);border-bottom-color:var(--gold)}
.hub-tab-badge{
  background:#e0483d;color:#fff;font-size:10px;font-weight:700;min-width:17px;height:17px;
  border-radius:99px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px
}

/* ══ HUB — PARCERIAS ════════════════════════════════════════════ */
#hub-parcerias-pane{max-width:1600px;margin:0 auto;width:100%;box-sizing:border-box;padding:28px 48px 56px}
.parc-grid{display:grid;grid-template-columns:1fr 320px;gap:28px;align-items:start}
.parc-loading{text-align:center;padding:28px 0;color:var(--muted);font-size:13px}

.parc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.parc-toolbar-titulo{font-family:'Playfair Display',serif;font-size:19px;font-weight:700;color:var(--navy)}
.parc-btn-perfil{
  display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border-radius:10px;border:none;
  background:var(--navy);color:#fff;font-size:12.5px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif
}
.parc-btn-perfil i{width:15px;height:15px}
.parc-btn-perfil:hover{background:var(--navy3)}

.parc-filtros{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}
.parc-filtro-sel{
  padding:8px 12px;border-radius:9px;border:1.5px solid var(--cream2);background:#fff;
  color:var(--navy);font-size:12.5px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif
}
.parc-filtro-sel:focus{outline:none;border-color:var(--gold)}

.parc-perfis-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;align-items:start}
.parc-card{
  background:#fff;border:1px solid var(--cream2);border-radius:14px;padding:16px;
  display:flex;flex-direction:column;gap:10px;transition:box-shadow .15s,border-color .15s
}
.parc-card:hover{box-shadow:0 8px 24px rgba(15,30,53,.08);border-color:var(--border)}
.parc-card-top{display:flex;align-items:center;gap:11px}
.parc-card-av{
  width:42px;height:42px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--navy),var(--navy3));color:var(--gold);font-weight:700;font-size:14px
}
.parc-card-id{flex:1;min-width:0}
.parc-card-nome{font-weight:700;color:var(--navy);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.parc-card-sub{font-size:11.5px;color:var(--muted);margin-top:1px}
.parc-card-modelo{
  font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;flex-shrink:0;
  background:rgba(201,168,76,.14);color:var(--gold3);padding:4px 8px;border-radius:99px
}
.parc-card-local{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted)}
.parc-card-local i{width:13px;height:13px}
.parc-card-areas{display:flex;flex-wrap:wrap;gap:5px}
.parc-card-area{font-size:10.5px;font-weight:600;background:var(--cream);color:var(--navy);padding:3px 8px;border-radius:6px}
.parc-card-bloco{font-size:12.5px;color:var(--text);line-height:1.45}
.parc-card-rot{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#1a7a3c;margin-right:4px}
.parc-card-rot.busca{color:var(--navy)}
.parc-card-btn{
  margin-top:4px;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px;border-radius:10px;
  border:1.5px solid var(--gold);background:rgba(201,168,76,.1);color:var(--gold3);
  font-size:12.5px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s
}
.parc-card-btn i{width:15px;height:15px}
.parc-card-btn:hover{background:var(--gold);color:var(--navy)}

.parc-vazio{text-align:center;padding:48px 20px;color:var(--muted);grid-column:1/-1}
.parc-vazio-ico{font-size:42px;margin-bottom:10px}
.parc-vazio-tit{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:var(--navy);margin-bottom:4px}
.parc-vazio-sub{font-size:13px;max-width:340px;margin:0 auto}

/* Lateral — conversas */
.parc-side-card{background:#fff;border:1px solid var(--cream2);border-radius:14px;padding:16px;position:sticky;top:16px}
.parc-side-titulo{display:flex;align-items:center;gap:7px;font-weight:700;color:var(--navy);font-size:14px;margin-bottom:12px}
.parc-side-titulo i{width:16px;height:16px}
.parc-conv-vazio{font-size:12.5px;color:var(--muted);text-align:center;padding:18px 6px;line-height:1.5}
.parc-conv-item{display:flex;align-items:center;gap:10px;padding:9px 8px;border-radius:10px;cursor:pointer;transition:background .12s}
.parc-conv-item:hover{background:var(--cream)}
.parc-conv-av{width:36px;height:36px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--navy),var(--navy3));color:var(--gold);font-weight:700;font-size:12px}
.parc-conv-body{flex:1;min-width:0}
.parc-conv-nome{font-weight:600;color:var(--navy);font-size:13px;display:flex;align-items:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.parc-conv-prev{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.parc-conv-tempo{font-size:10.5px;color:var(--muted);flex-shrink:0}
.parc-conv-status{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:2px 6px;border-radius:99px;background:var(--cream2);color:var(--navy)}
.parc-conv-status.negociando{background:rgba(201,168,76,.18);color:var(--gold3)}
.parc-conv-status.parceria_ativa{background:rgba(26,122,60,.14);color:#1a7a3c}
.parc-conv-status.encerrada{background:rgba(120,120,120,.14);color:var(--muted)}

/* ── Modais de parceria (perfil / contrato) ── */
.parc-modal-overlay{position:fixed;inset:0;background:rgba(15,30,53,.7);z-index:9991;display:flex;align-items:center;justify-content:center;padding:20px}
.parc-modal-box{background:#fff;border-radius:16px;width:100%;max-width:520px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.4)}
.parc-modal-hdr{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;background:var(--navy);color:#fff}
.parc-modal-titulo{font-family:'Playfair Display',serif;font-size:17px;font-weight:700;color:var(--gold)}
.parc-modal-x{background:none;border:none;color:rgba(255,255,255,.6);font-size:18px;cursor:pointer;line-height:1}
.parc-modal-x:hover{color:#fff}
.parc-modal-body{padding:20px 22px;overflow-y:auto}
.parc-modal-hint{font-size:12.5px;color:var(--muted);margin:0 0 16px;line-height:1.5}
.parc-f{margin-bottom:14px}
.parc-f label{display:block;font-size:10.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:5px}
.parc-f input,.parc-f select,.parc-f textarea{width:100%;box-sizing:border-box;padding:9px 11px;border:1.5px solid var(--cream2);border-radius:9px;font-size:13.5px;font-family:'DM Sans',sans-serif;color:var(--text);background:#fff}
.parc-f input:focus,.parc-f select:focus,.parc-f textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.12)}
.parc-f textarea{resize:vertical}
.parc-f-row{display:flex;gap:12px}
.parc-f-row .parc-f{flex:1}
.parc-areas-chips{display:flex;flex-wrap:wrap;gap:6px}
.parc-chip{padding:6px 12px;border-radius:99px;border:1.5px solid var(--cream2);background:#fff;color:var(--muted);font-size:12px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .12s}
.parc-chip:hover{border-color:var(--gold)}
.parc-chip.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.parc-switch{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--navy);font-weight:600;cursor:pointer}
.parc-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 22px;border-top:1px solid var(--cream2)}
.parc-modal-footer>div{display:flex;gap:8px}
.parc-btn-ghost{padding:9px 16px;border-radius:9px;border:1.5px solid var(--cream2);background:#fff;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif}
.parc-btn-ghost:hover{border-color:var(--muted)}
.parc-btn-ghost-del{padding:9px 14px;border:none;background:none;color:#c0392b;font-size:12.5px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif}
.parc-btn-ghost-del:hover{text-decoration:underline}
.parc-btn-gold{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:9px;border:none;background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--navy);font-size:13px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif}
.parc-btn-gold i{width:15px;height:15px}
.parc-btn-gold:disabled{opacity:.6;cursor:default}

/* ── Chat drawer ── */
.parc-chat-overlay{position:fixed;inset:0;background:rgba(15,30,53,.45);z-index:9992;display:none;justify-content:flex-end}
.parc-chat-overlay.aberto{display:flex}
.parc-chat-drawer{width:100%;max-width:460px;height:100%;background:var(--cream3);display:flex;flex-direction:column;box-shadow:-10px 0 40px rgba(0,0,0,.25);transform:translateX(100%);transition:transform .24s cubic-bezier(.4,0,.2,1)}
.parc-chat-overlay.aberto .parc-chat-drawer{transform:translateX(0)}
.parc-chat-hdr{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--navy);color:#fff;flex-shrink:0}
.parc-chat-voltar{background:none;border:none;color:rgba(255,255,255,.7);cursor:pointer;padding:4px;display:flex}
.parc-chat-voltar i{width:20px;height:20px}
.parc-chat-hdr-av{width:38px;height:38px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:rgba(201,168,76,.2);color:var(--gold);font-weight:700;font-size:13px}
.parc-chat-hdr-id{flex:1;min-width:0}
.parc-chat-hdr-nome{font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.parc-chat-status-sel{margin-top:2px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:11px;border-radius:6px;padding:2px 6px;cursor:pointer;font-family:'DM Sans',sans-serif}
.parc-chat-status-sel option{color:var(--navy)}
.parc-chat-contrato-btn{display:flex;flex-direction:column;align-items:center;gap:1px;background:rgba(201,168,76,.16);border:1px solid rgba(201,168,76,.3);color:var(--gold);border-radius:9px;padding:6px 9px;cursor:pointer;font-size:10px;font-weight:600;font-family:'DM Sans',sans-serif;flex-shrink:0}
.parc-chat-contrato-btn i{width:16px;height:16px}
.parc-chat-contrato-btn:hover{background:var(--gold);color:var(--navy)}
.parc-chat-msgs{flex:1;overflow-y:auto;padding:18px 16px;display:flex;flex-direction:column;gap:8px}
.parc-chat-intro{text-align:center;color:var(--muted);font-size:13px;line-height:1.5;margin:auto;max-width:300px}
.parc-chat-intro-ico{font-size:38px;margin-bottom:8px}
.parc-msg{display:flex;max-width:78%}
.parc-msg.meu{align-self:flex-end;justify-content:flex-end}
.parc-msg.dele{align-self:flex-start}
.parc-msg-bolha{padding:9px 13px 18px;border-radius:14px;font-size:13.5px;line-height:1.45;position:relative;word-break:break-word}
.parc-msg.meu .parc-msg-bolha{background:var(--navy);color:#fff;border-bottom-right-radius:4px}
.parc-msg.dele .parc-msg-bolha{background:#fff;color:var(--text);border:1px solid var(--cream2);border-bottom-left-radius:4px}
.parc-msg-hora{position:absolute;right:10px;bottom:5px;font-size:9.5px;opacity:.6}
.parc-chat-input-row{display:flex;align-items:flex-end;gap:8px;padding:12px 14px;background:#fff;border-top:1px solid var(--cream2);flex-shrink:0}
.parc-chat-input{flex:1;resize:none;border:1.5px solid var(--cream2);border-radius:12px;padding:10px 12px;font-size:13.5px;font-family:'DM Sans',sans-serif;max-height:120px;line-height:1.4}
.parc-chat-input:focus{outline:none;border-color:var(--gold)}
.parc-chat-enviar{width:40px;height:40px;border-radius:50%;border:none;background:var(--gold);color:var(--navy);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.parc-chat-enviar:hover{background:var(--gold2)}

@media(max-width:980px){
  .parc-grid{grid-template-columns:1fr}
  .parc-side-card{position:static}
  #hub-parcerias-pane{padding:20px 16px 40px}
  .hub-tabs-bar{padding:0 16px}
}
@media(max-width:520px){
  .parc-chat-drawer{max-width:100%}
  .parc-f-row{flex-direction:column;gap:0}
}

/* ── Feed ── */
.hub-feed-header{display:flex;gap:6px;margin-bottom:18px;flex-wrap:wrap}
.hub-feed-filtro{
  padding:7px 16px;border-radius:99px;font-size:12px;font-weight:600;
  border:1.5px solid var(--cream2);background:#fff;color:var(--muted);
  cursor:pointer;transition:all .15s;font-family:'DM Sans',sans-serif
}
.hub-feed-filtro:hover{border-color:rgba(201,168,76,.35);color:var(--navy)}
.hub-feed-filtro.ativo{background:var(--navy);color:#fff;border-color:var(--navy)}
.hub-nova-post{
  background:#fff;border:1.5px solid var(--cream2);border-radius:12px;
  padding:12px 12px 12px 14px;display:flex;gap:12px;align-items:center;
  margin-bottom:18px;cursor:pointer;transition:all .18s
}
.hub-nova-post:hover{border-color:rgba(201,168,76,.45);box-shadow:0 3px 14px rgba(15,30,53,.07)}
.hub-nova-post-avatar{
  width:38px;height:38px;flex-shrink:0;border-radius:50%;
  background:linear-gradient(135deg,var(--navy),var(--navy2));
  display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:700;color:#fff
}
.hub-nova-post-input{
  flex:1;background:var(--cream);border:1px solid var(--cream2);
  border-radius:8px;padding:10px 14px;font-size:13px;color:var(--muted);
  pointer-events:none
}
.hub-nova-post-publicar{
  padding:9px 18px;background:var(--gold);color:var(--navy);border:none;border-radius:8px;
  font-size:12px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;
  white-space:nowrap;flex-shrink:0;transition:all .15s
}
.hub-nova-post-publicar:hover{background:var(--gold2);transform:translateY(-1px)}

/* ── Posts ── */
.hub-post{
  background:#fff;border:1px solid var(--cream2);border-radius:14px;border-left:3px solid var(--cream2);
  padding:20px;margin-bottom:14px;transition:all .18s
}
.hub-post:hover{border-color:rgba(201,168,76,.3);border-left-color:inherit;box-shadow:0 4px 20px rgba(15,30,53,.08)}
.hub-post[data-tipo="tese"]{border-left-color:rgba(201,168,76,.55)}
.hub-post[data-tipo="duvida"]{border-left-color:rgba(15,30,53,.28)}
.hub-post[data-tipo="juris"]{border-left-color:rgba(26,122,60,.45)}
.hub-post[data-tipo="corr"]{border-left-color:rgba(201,168,76,.35)}
.hub-post-top{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}
.hub-post-avatar{
  width:40px;height:40px;flex-shrink:0;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700
}
.hub-post-meta{flex:1;min-width:0}
.hub-post-autor{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-post-autor span{color:var(--muted);font-weight:400;font-size:12px}
.hub-post-tempo{font-size:11px;color:var(--muted)}
.hub-post-tipo{
  display:inline-flex;align-items:center;gap:4px;
  font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;
  padding:4px 10px;border-radius:99px;flex-shrink:0;white-space:nowrap
}
.hub-post-tipo.tese{background:rgba(201,168,76,.12);color:#7a5900;border:1px solid rgba(201,168,76,.28)}
.hub-post-tipo.duvida{background:rgba(15,30,53,.07);color:var(--navy);border:1px solid rgba(15,30,53,.15)}
.hub-post-tipo.juris{background:rgba(26,122,60,.1);color:#1a7a3c;border:1px solid rgba(26,122,60,.22)}
.hub-post-tipo.corr{background:rgba(201,168,76,.1);color:#8b6914;border:1px solid rgba(201,168,76,.25)}
.hub-post-titulo{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:var(--navy);margin-bottom:7px;line-height:1.35}
.hub-post-texto{font-size:13px;color:var(--muted);line-height:1.7;margin-bottom:14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.hub-post-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.hub-post-tag{font-size:10px;font-weight:600;padding:3px 10px;border-radius:99px;background:var(--cream);color:var(--navy);border:1px solid var(--cream2)}
.hub-post-acoes{display:flex;gap:14px;padding-top:12px;border-top:1px solid var(--cream2);flex-wrap:wrap;align-items:center}
.hub-post-acao{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;transition:color .15s;background:none;border:none;font-family:'DM Sans',sans-serif;padding:4px 0}
.hub-post-acao:hover{color:var(--gold)}
.hub-post-acao-curtido{color:var(--gold)!important}
.hub-post-acao-salvo{color:var(--navy)!important;font-weight:700}
.hub-post-acao-ativo{color:var(--navy)!important;font-weight:700}
.hub-post-acao-del:hover{color:#c0392b!important}
.hub-post-acao-fixar{color:var(--muted)}
.hub-post-acao-fixar.hub-post-acao-ativo{color:var(--navy)!important}
.hub-comentarios-num{font-size:11px;color:var(--muted);margin-left:2px}

/* ── Reações ───────────────────────────────── */
.hub-reacoes-row{display:inline-flex;gap:6px;align-items:center}
.hub-reacao{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;background:#f7f4ec;border:1.5px solid transparent;cursor:pointer;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:600;color:var(--muted);transition:all .15s}
.hub-reacao:hover{background:#fdf8ec;border-color:var(--gold);color:var(--navy)}
.hub-reacao-ico{font-size:13px;line-height:1}
.hub-reacao-num{font-variant-numeric:tabular-nums}
.hub-reacao-ativa{background:rgba(201,168,76,.18);border-color:var(--gold);color:var(--navy)}

/* ── Comentários ───────────────────────────── */
.hub-comentarios-wrap{margin-top:14px;padding-top:14px;border-top:1px solid var(--cream2)}
.hub-comentarios-lista{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}
.hub-comentarios-loading,.hub-comentarios-vazio{font-size:12px;color:var(--muted);padding:8px 0;text-align:center}
.hub-comentario{display:flex;gap:10px;align-items:flex-start}
.hub-comentario-avatar{width:32px;height:32px;border-radius:50%;background:rgba(15,30,53,.08);color:var(--navy);font-weight:700;font-size:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:'DM Sans',sans-serif}
.hub-comentario-body{flex:1;background:#f9f7f2;border-radius:10px;padding:8px 12px;min-width:0}
.hub-comentario-meta{display:flex;align-items:center;gap:8px;margin-bottom:3px;font-size:11px}
.hub-comentario-autor{font-weight:700;color:var(--navy)}
.hub-comentario-tempo{color:var(--muted)}
.hub-comentario-excluir{margin-left:auto;background:none;border:none;cursor:pointer;color:var(--muted);font-size:11px;padding:0 2px;opacity:.6;transition:opacity .15s,color .15s}
.hub-comentario-excluir:hover{opacity:1;color:#c0392b}
.hub-comentario-texto{font-size:13px;line-height:1.5;color:var(--text);white-space:pre-wrap;word-wrap:break-word}
.hub-comentario-input-row{display:flex;gap:8px;align-items:flex-end;position:relative;flex-wrap:wrap}
.hub-comentario-input{flex:1;border:1.5px solid var(--cream2);border-radius:10px;padding:9px 12px;font-size:13px;font-family:'DM Sans',sans-serif;resize:none;min-height:36px;max-height:120px;outline:none;line-height:1.5;background:#fff;transition:border-color .15s}
.hub-comentario-input:focus{border-color:var(--gold)}
.hub-comentario-enviar{width:36px;height:36px;border-radius:10px;border:none;background:var(--gold);color:var(--navy);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}
.hub-comentario-enviar:hover{background:#e8c96a}

/* Empty state */
.hub-vazio{text-align:center;padding:52px 20px 40px;color:var(--muted)}
.hub-vazio-icon{font-size:48px;margin-bottom:14px;line-height:1}
.hub-vazio-titulo{font-family:'Playfair Display',serif;font-size:17px;font-weight:700;color:var(--navy);margin-bottom:7px}
.hub-vazio-sub{font-size:13px;margin-bottom:20px;line-height:1.6}
.hub-vazio-btn{
  display:inline-flex;align-items:center;gap:6px;padding:10px 22px;
  background:var(--gold);color:var(--navy);border:none;border-radius:9px;
  font-size:13px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s
}
.hub-vazio-btn:hover{background:var(--gold2);transform:translateY(-1px)}

/* ── Sidebar ── */
.hub-sidebar{display:flex;flex-direction:column;gap:16px}

/* Perfil */
.hub-perfil-card{background:#fff;border:1px solid var(--cream2);border-radius:14px;box-shadow:0 2px 10px rgba(15,30,53,.04)}
.hub-perfil-banner{height:80px;background:linear-gradient(135deg,var(--navy),var(--navy3));position:relative;overflow:hidden;border-radius:14px 14px 0 0}
.hub-perfil-banner::before{
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(rgba(201,168,76,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,.08) 1px,transparent 1px);
  background-size:20px 20px
}
.hub-perfil-body{padding:0 16px 18px;text-align:center}
.hub-perfil-avatar{
  width:72px;height:72px;border-radius:50%;
  background:linear-gradient(135deg,var(--gold),var(--gold2));
  border:4px solid #fff;box-shadow:0 3px 12px rgba(15,30,53,.2);
  margin:-36px auto 12px;
  display:flex;align-items:center;justify-content:center;
  font-size:22px;font-weight:700;color:var(--navy);
  position:relative;z-index:2;overflow:hidden;
  cursor:pointer;transition:opacity .15s
}
.hub-perfil-avatar:hover{opacity:.88}
.hub-perfil-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
.hub-perfil-nome{font-family:'Playfair Display',serif;font-size:14px;font-weight:700;color:var(--navy);margin-bottom:3px}
.hub-perfil-oab{font-size:11px;color:var(--muted);margin-bottom:14px}
.hub-perfil-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:14px}
.hub-perfil-stat{background:var(--cream);border:1px solid var(--cream2);border-radius:8px;padding:8px 4px;text-align:center}
.hub-perfil-stat-num{font-size:16px;font-weight:700;color:var(--navy);line-height:1}
.hub-perfil-stat-lbl{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-top:3px}
.hub-perfil-btn{
  display:block;width:100%;padding:9px;background:var(--navy);color:var(--gold);
  border-radius:8px;font-size:12px;font-weight:700;text-align:center;
  cursor:pointer;transition:all .15s;border:none;font-family:'DM Sans',sans-serif;letter-spacing:.01em
}
.hub-perfil-btn:hover{background:var(--navy3)}

/* Ranking */
.hub-ranking-card{background:#fff;border:1px solid var(--cream2);border-radius:14px;padding:18px;box-shadow:0 2px 10px rgba(15,30,53,.04)}
.hub-ranking-titulo{font-family:'Playfair Display',serif;font-size:14px;font-weight:700;color:var(--navy);margin-bottom:14px;display:flex;align-items:center;gap:6px}
.hub-ranking-item{display:flex;align-items:center;gap:9px;padding:8px 0;border-bottom:1px solid var(--cream3);font-size:12px}
.hub-ranking-item:last-child{border-bottom:none}
.hub-ranking-item-eu{background:rgba(201,168,76,.07);margin:0 -6px;padding:8px 6px;border-radius:8px;border-bottom:none!important}
.hub-ranking-pos{width:22px;font-size:11px;font-weight:700;color:var(--muted);text-align:center;flex-shrink:0}
.hub-ranking-pos.top{color:var(--gold)}
.hub-ranking-av{width:30px;height:30px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--navy),var(--navy2))}
.hub-ranking-av.eu{background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--navy)}
.hub-ranking-nome{flex:1;font-weight:600;color:var(--navy);font-size:12px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hub-ranking-nome.eu{font-weight:700}
.hub-ranking-pts{font-size:11px;color:var(--gold);font-weight:700;flex-shrink:0}

/* Oportunidades */
.hub-oport-card{background:#fff;border:1px solid var(--cream2);border-radius:14px;padding:18px;box-shadow:0 2px 10px rgba(15,30,53,.04)}
.hub-oport-titulo{font-family:'Playfair Display',serif;font-size:14px;font-weight:700;color:var(--navy);margin-bottom:14px}
.hub-oport-item{padding:10px 0;border-bottom:1px solid var(--cream3);cursor:pointer;transition:background .12s;border-radius:4px}
.hub-oport-item:last-child{border-bottom:none;padding-bottom:0}
.hub-oport-item:hover{background:var(--cream3)}
.hub-oport-nome{font-size:12px;font-weight:700;color:var(--navy);margin-bottom:3px}
.hub-oport-desc{font-size:11px;color:var(--muted);line-height:1.55;margin-bottom:5px}
.hub-oport-tags{display:flex;gap:5px;flex-wrap:wrap}
.hub-oport-tag{font-size:9px;font-weight:700;padding:2px 7px;border-radius:99px;background:rgba(201,168,76,.1);color:var(--gold);border:1px solid rgba(201,168,76,.25);text-transform:uppercase;letter-spacing:.06em}

/* ── Compositor modal ── */
.hub-comp-modal{
  background:#fff;border-radius:18px;max-width:580px;width:100%;
  overflow:hidden;box-shadow:0 32px 80px rgba(0,0,0,.32);display:flex;flex-direction:column;max-height:92vh
}
.hub-comp-header{
  background:linear-gradient(135deg,var(--navy),var(--navy2));
  padding:22px 24px;display:flex;align-items:center;justify-content:space-between
}
.hub-comp-titulo-hdr{font-family:'Playfair Display',serif;font-size:17px;font-weight:700;color:#fff}
.hub-comp-close{background:none;border:none;color:rgba(255,255,255,.45);font-size:22px;cursor:pointer;line-height:1;padding:0;transition:color .15s}
.hub-comp-close:hover{color:#fff}
.hub-comp-body{padding:22px 24px;overflow-y:auto;flex:1}
.hub-comp-user{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--cream2)}
.hub-comp-av{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold2));display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--navy);flex-shrink:0}
.hub-comp-user-info{flex:1}
.hub-comp-user-nome{font-size:13px;font-weight:600;color:var(--navy)}
.hub-comp-field{margin-bottom:16px}
.hub-comp-field label{display:block;font-size:11px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px}
.hub-comp-field input,.hub-comp-field textarea,.hub-comp-field select{
  width:100%;border:1.5px solid var(--cream2);border-radius:9px;padding:9px 12px;
  font-size:13px;font-family:'DM Sans',sans-serif;color:var(--text);background:#fff;
  transition:border-color .15s;resize:vertical;box-sizing:border-box
}
.hub-comp-field input:focus,.hub-comp-field textarea:focus,.hub-comp-field select:focus{
  outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.1)
}
.hub-comp-field textarea{min-height:116px}
.hub-comp-tags-row{display:flex;gap:8px}
.hub-comp-tags-row input{flex:1}
.hub-comp-tags-row button{padding:9px 14px;background:var(--navy);color:var(--gold);border:none;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;white-space:nowrap;transition:background .15s}
.hub-comp-tags-row button:hover{background:var(--navy3)}
.hub-comp-tags-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.hub-tag-chip{
  display:inline-flex;align-items:center;gap:4px;
  padding:4px 10px 4px 11px;border-radius:99px;
  background:rgba(201,168,76,.1);color:var(--gold3);
  border:1px solid rgba(201,168,76,.3);font-size:11px;font-weight:600
}
.hub-tag-chip button{background:none;border:none;cursor:pointer;color:var(--gold3);font-size:13px;line-height:1;padding:0 0 0 2px;opacity:.7}
.hub-tag-chip button:hover{opacity:1}
.hub-comp-footer{padding:16px 24px;border-top:1px solid var(--cream2);display:flex;justify-content:flex-end;gap:8px;background:var(--cream3)}

/* Responsive */
@media(max-width:960px){
  .hub-body{grid-template-columns:1fr;padding:20px 16px 40px}
  .hub-sidebar{display:none}
  .hub-hero{padding:32px 20px 28px}
  .hub-hero-inner{gap:24px}
  .hub-hero h1{font-size:24px}
  .hub-hero-stats{gap:10px}
  .hub-hero-stat{padding:13px 16px;min-width:80px}
  .hub-hero-stat-num{font-size:22px}
}
@media(max-width:480px){
  .hub-feed-header{padding:4px;gap:2px}
  .hub-feed-filtro{padding:6px 10px;font-size:11px}
}

/* ── Hub Notificações ── */
.hub-notif-nav-badge{color:#e74c3c;font-size:16px;line-height:1;vertical-align:middle;margin-left:1px}
.hub-notif-bell{
  margin-left:auto;background:none;border:1px solid var(--cream2);
  border-radius:8px;padding:5px 10px;font-size:14px;cursor:pointer;
  color:var(--navy3);transition:background .15s,border-color .15s;
  position:relative;white-space:nowrap;flex-shrink:0
}
.hub-notif-bell:hover{background:var(--cream3);border-color:var(--cream3)}
.hub-notif-badge{
  display:inline-flex;align-items:center;justify-content:center;
  background:#e74c3c;color:#fff;font-size:9px;font-weight:700;
  border-radius:99px;min-width:16px;height:16px;padding:0 4px;
  margin-left:4px;vertical-align:middle;line-height:1
}
.hub-notif-panel{
  position:relative;z-index:90;
  background:#fff;border:1px solid var(--cream2);
  border-radius:12px;box-shadow:0 8px 32px rgba(15,30,53,.12);
  margin-bottom:16px;overflow:hidden
}
.hub-notif-panel-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 18px 12px;border-bottom:1px solid var(--cream2)
}
.hub-notif-panel-titulo{font-size:13px;font-weight:700;color:var(--navy)}
.hub-notif-panel-fechar{background:none;border:none;color:var(--muted);font-size:16px;cursor:pointer;line-height:1;padding:0;transition:color .15s}
.hub-notif-panel-fechar:hover{color:var(--navy)}
.hub-notif-lista{max-height:320px;overflow-y:auto}
.hub-notif-loading,.hub-notif-empty{text-align:center;padding:28px 20px;color:var(--muted);font-size:13px;line-height:1.8}
.hub-notif-item{
  display:flex;align-items:flex-start;gap:12px;padding:12px 18px;
  border-bottom:1px solid var(--cream2);cursor:pointer;transition:background .12s
}
.hub-notif-item:last-child{border-bottom:none}
.hub-notif-item:hover{background:var(--cream3)}
.hub-notif-nao-lida{background:rgba(201,168,76,.06)}
.hub-notif-ico{font-size:20px;line-height:1;margin-top:1px;flex-shrink:0}
.hub-notif-body{flex:1;min-width:0}
.hub-notif-texto{font-size:12px;color:var(--navy);line-height:1.5;margin-bottom:3px}
.hub-notif-post{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px}
.hub-notif-tempo{font-size:10px;color:var(--muted)}
.hub-notif-dot{width:8px;height:8px;border-radius:50%;background:var(--gold);flex-shrink:0;margin-top:5px}
.hub-notif-ico-mencao{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:rgba(201,168,76,.2);color:var(--gold);font-weight:900;font-size:13px;line-height:1}
/* ── Hub: Post fixado ── */
.hub-post-fixado-wrap{border-color:rgba(201,168,76,.4)!important;background:rgba(201,168,76,.03)}
.hub-post-fixado{font-size:10px;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:.07em;padding:4px 0 8px;opacity:.8}

/* ── Hub Busca ── */
.hub-busca-wrap{display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--cream2);border-radius:10px;padding:8px 14px;margin-bottom:10px;transition:border-color .15s}
.hub-busca-wrap:focus-within{border-color:var(--gold)}
.hub-busca-ico{font-size:14px;opacity:.55;flex-shrink:0}
.hub-busca-input{flex:1;border:none;outline:none;font-size:13px;color:var(--navy);background:transparent;font-family:'DM Sans',sans-serif}
.hub-busca-input::placeholder{color:var(--muted)}
.hub-busca-clear{background:none;border:none;color:var(--muted);font-size:15px;cursor:pointer;line-height:1;padding:0;flex-shrink:0;transition:color .12s}
.hub-busca-clear:hover{color:var(--navy)}

/* ── Hub Menções ── */
.hub-mencao{color:var(--gold);font-weight:600}
.hub-mencao-dd{position:absolute;left:0;right:0;bottom:100%;z-index:200;background:#fff;border:1px solid var(--cream2);border-radius:10px;box-shadow:0 4px 20px rgba(15,30,53,.12);overflow:hidden;margin-bottom:4px}
.hub-mencao-dd-item{display:flex;align-items:center;gap:6px;width:100%;background:none;border:none;border-bottom:1px solid var(--cream2);padding:9px 14px;font-size:12px;font-family:'DM Sans',sans-serif;color:var(--navy);cursor:pointer;text-align:left;transition:background .1s}
.hub-mencao-dd-item:last-child{border-bottom:none}
.hub-mencao-dd-item:hover{background:var(--cream3)}
.hub-mencao-dd-at{font-weight:700;color:var(--gold)}

/* ── Academy: Meu Progresso ── */
.ac-ml-hdr{display:flex;align-items:center;gap:16px;margin-bottom:28px}
.ac-ml-titulo{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:#fff;margin:0;display:flex;align-items:center;gap:8px}
.ac-ml-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:36px}
@media(max-width:640px){.ac-ml-stats{grid-template-columns:repeat(2,1fr)}}
.ac-ml-stat{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:20px 16px;text-align:center}
.ac-ml-stat-ico{font-size:22px;margin-bottom:6px;opacity:.7}
.ac-ml-stat-ico svg{width:22px;height:22px;stroke:var(--gold);fill:none;vertical-align:middle}
.ac-ml-stat-num{font-size:28px;font-weight:700;color:#fff;font-family:'Playfair Display',serif;line-height:1;margin-bottom:4px}
.ac-ml-stat-lbl{font-size:11px;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.06em}
.ac-ml-lista{display:flex;flex-direction:column;gap:12px}
.ac-ml-card{display:flex;align-items:center;gap:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:14px 16px;cursor:pointer;transition:background .15s;text-decoration:none}
.ac-ml-card:hover{background:rgba(255,255,255,.07)}
.ac-ml-card-thumb{width:60px;height:80px;border-radius:8px;overflow:hidden;flex-shrink:0;background:rgba(255,255,255,.06)}
.ac-ml-card-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ac-ml-card-thumb-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;opacity:.3}
.ac-ml-card-info{flex:1;min-width:0}
.ac-ml-card-titulo{font-size:14px;font-weight:600;color:#fff;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-ml-card-meta{display:flex;gap:10px;font-size:11px;color:rgba(255,255,255,.4);margin-bottom:8px}
.ac-ml-prog-wrap{height:4px;background:rgba(255,255,255,.12);border-radius:2px;margin-bottom:5px}
.ac-ml-prog-fill{height:100%;background:var(--gold);border-radius:2px;transition:width .3s}
.ac-ml-prog-txt{font-size:10px;color:rgba(255,255,255,.4)}
.ac-ml-card-acao{flex-shrink:0}
.ac-ml-card-btn{background:none;border:1.5px solid rgba(201,168,76,.5);color:var(--gold);border-radius:8px;padding:7px 14px;font-size:12px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;transition:background .15s,border-color .15s;white-space:nowrap}
.ac-ml-card-btn:hover{background:rgba(201,168,76,.1);border-color:var(--gold)}
.ac-ml-card-btn-cert{border-color:rgba(39,174,96,.5);color:#27ae60}
.ac-ml-card-btn-cert:hover{background:rgba(39,174,96,.1);border-color:#27ae60}
.ac-btn-main{margin-top:20px;background:var(--gold);color:var(--navy);border:none;border-radius:8px;padding:12px 28px;font-weight:700;font-size:14px;cursor:pointer;font-family:'DM Sans',sans-serif;transition:opacity .15s}
.ac-btn-main:hover{opacity:.88}
/* ── Academy: velocidade de reprodução ── */
.ac-player-speed{display:flex;align-items:center;gap:10px;padding:10px 0;margin-bottom:4px;flex-wrap:wrap}
.ac-speed-lbl{font-size:12px;color:rgba(255,255,255,.45);white-space:nowrap}
.ac-speed-btns{display:flex;gap:6px;flex-wrap:wrap}
.ac-speed-btn{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:6px;color:rgba(255,255,255,.6);font-size:12px;font-weight:600;padding:5px 11px;cursor:pointer;font-family:'DM Sans',sans-serif;transition:background .12s,color .12s,border-color .12s}
.ac-speed-btn:hover{background:rgba(255,255,255,.1);color:#fff}
.ac-speed-btn.ativo{background:rgba(201,168,76,.2);border-color:var(--gold);color:var(--gold)}
/* ── Academy: Streak ── */
.ac-ml-streak-wrap{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,rgba(201,168,76,.14),rgba(201,168,76,.06));border:1.5px solid rgba(201,168,76,.3);border-radius:14px;padding:16px 22px;margin-bottom:24px}
.ac-ml-streak-fire{font-size:36px;line-height:1}
.ac-ml-streak-info{flex:1}
.ac-ml-streak-num{font-size:32px;font-weight:700;color:var(--gold);font-family:'Playfair Display',serif;line-height:1}
.ac-ml-streak-lbl{font-size:12px;color:rgba(255,255,255,.5);margin-top:2px}
.ac-ml-streak-pts{font-size:18px;font-weight:700;color:rgba(255,255,255,.7);white-space:nowrap}
.ac-ml-streak-pts span{font-size:24px;color:var(--gold);font-family:'Playfair Display',serif}
/* ── Academy: Ranking ── */
.ac-ml-ranking{display:flex;flex-direction:column;gap:8px}
.ac-ml-ranking-item{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 16px;transition:background .12s}
.ac-ml-ranking-item:hover{background:rgba(255,255,255,.07)}
.ac-ml-ranking-item.eu{border-color:rgba(201,168,76,.35);background:rgba(201,168,76,.06)}
.ac-ml-ranking-pos{font-size:20px;width:32px;text-align:center;flex-shrink:0}
.ac-ml-ranking-nome{flex:1;font-size:13px;font-weight:600;color:#fff}
.ac-ml-ranking-item.eu .ac-ml-ranking-nome{color:var(--gold)}
.ac-ml-ranking-pts{font-size:12px;color:rgba(255,255,255,.45);white-space:nowrap}

/* ══════════════════════════════════════════════════════════════
   DR. CONTRATUS ACADEMY — academy.html  (dark theme)
   ══════════════════════════════════════════════════════════════ */

/* ── Reset / base ── */
.ac-body{margin:0;padding:0;background:var(--navy);font-family:'DM Sans',sans-serif;color:#fff;min-height:100vh;display:flex;flex-direction:column}

/* Sticky footer: app cresce para empurrar o rodapé ao fundo */
#ac-app{flex:1}

/* ── Header ── */
.ac-header{background:var(--navy);height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid rgba(201,168,76,.2);position:sticky;top:0;z-index:200}
.ac-header-left{display:flex;align-items:center;gap:16px}
.ac-logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.ac-logo-badge{width:36px;height:36px;background:linear-gradient(135deg,var(--gold),var(--gold2));border-radius:7px;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:16px;font-weight:700;color:var(--navy)}
.ac-logo-text{font-size:13px;font-weight:700;color:#fff;letter-spacing:.01em}
.ac-logo-text span{color:var(--gold)}
.ac-back-link{font-size:12px;color:rgba(255,255,255,.5);text-decoration:none;display:flex;align-items:center;gap:5px;transition:color .15s;border-left:1px solid rgba(255,255,255,.12);padding-left:16px}
.ac-back-link:hover{color:var(--gold)}
.ac-header-right{display:flex;align-items:center;gap:12px}
.ac-user-info{text-align:right}
.ac-user-nome{font-size:12px;font-weight:600;color:#fff}
.ac-user-plano{font-size:10px;color:var(--gold);text-transform:uppercase;letter-spacing:.08em}
.ac-user-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold2));display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--navy);cursor:pointer;overflow:hidden;flex-shrink:0}
.ac-user-avatar img{width:100%;height:100%;object-fit:cover}
.ac-nav{display:flex;gap:4px}
.ac-nav-btn{padding:6px 14px;border-radius:7px;font-size:12px;font-weight:600;color:rgba(255,255,255,.6);background:none;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s}
.ac-nav-btn:hover{background:rgba(255,255,255,.07);color:#fff}
.ac-nav-btn.ativo{background:rgba(201,168,76,.15);color:var(--gold)}

/* ── Views ── */
.ac-view{display:none}
.ac-view.ativo{display:block}

/* ── Hero (Home) ── */
.ac-hero{
  background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 55%,var(--navy3) 100%);
  padding:52px 48px 48px;position:relative;overflow:hidden
}
.ac-hero::before{
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(rgba(201,168,76,.04) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(201,168,76,.04) 1px,transparent 1px);
  background-size:48px 48px
}
.ac-hero-glow{position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(201,168,76,.08) 0%,transparent 70%);bottom:-180px;right:-100px;pointer-events:none}
.ac-hero-inner{position:relative;z-index:2;max-width:1600px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap}
.ac-hero-tag{display:inline-flex;align-items:center;gap:6px;background:rgba(201,168,76,.15);border:1px solid rgba(201,168,76,.3);border-radius:99px;padding:5px 13px;font-size:10px;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px}
.ac-hero h1{font-family:'Playfair Display',serif;font-size:32px;font-weight:700;color:#fff;line-height:1.2;margin-bottom:10px}
.ac-hero h1 span{color:var(--gold)}
.ac-hero-desc{font-size:14px;color:rgba(255,255,255,.65);max-width:460px;line-height:1.75;margin-bottom:0}
.ac-hero-stats{display:flex;gap:14px;flex-shrink:0;flex-wrap:wrap}
.ac-hero-stat{text-align:center;background:rgba(255,255,255,.07);border:1px solid rgba(201,168,76,.18);border-radius:14px;padding:18px 24px;min-width:90px}
.ac-hero-stat-num{font-family:'Playfair Display',serif;font-size:26px;font-weight:700;color:var(--gold);line-height:1;margin-bottom:4px}
.ac-hero-stat-lbl{font-size:10px;color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:.1em}

/* ── Main container ── */
.ac-main{max-width:1600px;margin:0 auto;padding:36px 48px 60px;box-sizing:border-box}

/* ── Section titles ── */
.ac-section-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.ac-section-titulo{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:#fff;display:inline-flex;align-items:center;gap:10px}
.ac-section-titulo .ac-icon{color:var(--gold);font-size:22px}
.ac-section-link{font-size:12px;font-weight:600;color:var(--gold);text-decoration:none;cursor:pointer}
.ac-section-link:hover{text-decoration:underline}

/* ── Filter bar ── */
.ac-filtros{display:flex;gap:6px;margin-bottom:24px;flex-wrap:wrap}
.ac-filtro{padding:7px 16px;border-radius:99px;font-size:12px;font-weight:600;border:1.5px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:rgba(255,255,255,.65);cursor:pointer;transition:all .15s;font-family:'DM Sans',sans-serif}
.ac-filtro:hover{border-color:rgba(201,168,76,.4);color:#fff;background:rgba(255,255,255,.08)}
.ac-filtro.ativo{background:var(--gold);color:var(--navy);border-color:var(--gold)}

/* ── Course grid ── */
.ac-cursos-grid{display:block}
.ac-grid-outer{display:flex;gap:28px;align-items:flex-start}
.ac-grid-rows{flex:1;min-width:0}
.ac-oraculo-sidebar{width:290px;flex-shrink:0;position:sticky;top:24px}
.ac-oraculo-sidebar .ac-oraculo-col{margin-bottom:0}
@media(max-width:900px){.ac-grid-outer{flex-direction:column}.ac-oraculo-sidebar{width:100%;position:static}}
.ac-curso-card{background:var(--navy2);border:1px solid rgba(255,255,255,.08);border-radius:16px;overflow:hidden;cursor:pointer;transition:all .2s;display:flex;flex-direction:column}
.ac-curso-card:hover{transform:translateY(-3px);box-shadow:0 14px 40px rgba(0,0,0,.4);border-color:rgba(201,168,76,.4)}
.ac-curso-thumb{width:100%;aspect-ratio:16/9;background:linear-gradient(135deg,var(--navy),var(--navy3));position:relative;overflow:hidden;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.06)}
.ac-curso-thumb img{width:100%;height:100%;object-fit:cover}
.ac-curso-thumb-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:36px;opacity:.35;color:var(--gold)}
.ac-curso-nivel{position:absolute;top:10px;left:10px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;padding:3px 9px;border-radius:99px;backdrop-filter:blur(8px)}
.ac-curso-nivel.iniciante{background:rgba(26,122,60,.85);color:#fff}
.ac-curso-nivel.intermediario{background:rgba(201,168,76,.9);color:var(--navy)}
.ac-curso-nivel.avancado{background:rgba(15,30,53,.85);color:var(--gold)}
.ac-curso-lock{position:absolute;top:10px;right:10px;width:28px;height:28px;border-radius:50%;background:rgba(0,0,0,.55);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;font-size:13px}
.ac-curso-body{padding:16px 18px 18px;flex:1;display:flex;flex-direction:column}
.ac-curso-cat{font-size:10px;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:.09em;margin-bottom:7px}
.ac-curso-titulo{font-family:'Playfair Display',serif;font-size:15px;font-weight:700;color:#fff;line-height:1.35;margin-bottom:7px}
.ac-curso-desc{font-size:12px;color:rgba(255,255,255,.55);line-height:1.6;margin-bottom:14px;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ac-curso-meta{display:flex;gap:12px;font-size:11px;color:rgba(255,255,255,.45);margin-bottom:12px;flex-wrap:wrap}
.ac-curso-meta span{display:flex;align-items:center;gap:4px}
.ac-curso-progress-wrap{margin-bottom:12px}
.ac-curso-progress-bar{height:4px;background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden}
.ac-curso-progress-fill{height:100%;background:linear-gradient(90deg,var(--gold),var(--gold2));border-radius:99px;transition:width .4s}
.ac-curso-progress-txt{font-size:10px;color:rgba(255,255,255,.5);margin-top:4px}
.ac-curso-btn{display:block;width:100%;padding:10px;background:var(--gold);color:var(--navy);border:none;border-radius:9px;font-size:12px;font-weight:700;text-align:center;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s;box-sizing:border-box}
.ac-curso-btn:hover{background:var(--gold2);transform:translateY(-1px)}
.ac-curso-btn.bloqueado{background:rgba(255,255,255,.06);color:rgba(255,255,255,.3);cursor:default}
.ac-curso-btn.bloqueado:hover{transform:none}

/* ── Trilhas ── */
.ac-trilhas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}

/* ── Biblioteca ─────────────────────────────────────────── */
.ac-bib-filtros{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}
.ac-bib-busca-wrap{position:relative;max-width:480px}
.ac-bib-busca-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:#94a3b8;pointer-events:none}
.ac-bib-busca{width:100%;padding:12px 16px 12px 42px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:var(--navy2);color:#fff;font-size:14px;font-family:inherit}
.ac-bib-busca:focus{outline:none;border-color:rgba(201,168,76,.5)}
.ac-bib-chips{display:flex;flex-wrap:wrap;gap:8px}
.ac-bib-chip{background:var(--navy2);border:1px solid rgba(255,255,255,.1);color:#cbd5e1;padding:7px 14px;border-radius:999px;font-size:13px;cursor:pointer;font-family:inherit;transition:all .15s}
.ac-bib-chip:hover{border-color:rgba(201,168,76,.4);color:#fff}
.ac-bib-chip.ativo{background:var(--gold);color:var(--navy);border-color:var(--gold);font-weight:600}
.ac-bib-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,340px));gap:20px;justify-content:start}
.ac-bib-vazio{text-align:center;padding:60px 20px;color:#94a3b8;font-size:14px}

/* ── Coleções (pastas) na Biblioteca ───────────────────────── */
.ac-bib-colecoes-wrap{margin:0 0 32px}
.ac-bib-colecoes-hdr{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;color:#fff;margin:0 0 14px;display:flex;align-items:center;gap:8px}
.ac-bib-colecoes{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
.ac-bib-colecao{display:flex;align-items:center;gap:14px;padding:18px 18px;background:var(--navy2);border:1px solid rgba(255,255,255,.08);border-radius:14px;cursor:pointer;text-align:left;font-family:inherit;color:#fff;width:100%;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;position:relative;overflow:hidden}
.ac-bib-colecao::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--gold,#d4af37),rgba(201,168,76,.3));opacity:.85}
.ac-bib-colecao:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(0,0,0,.45);border-color:rgba(201,168,76,.4);background:linear-gradient(135deg,rgba(201,168,76,.06),var(--navy2))}
.ac-bib-colecao-icon{flex:none;width:52px;height:52px;border-radius:12px;background:linear-gradient(135deg,rgba(201,168,76,.18),rgba(201,168,76,.06));border:1px solid rgba(201,168,76,.28);display:flex;align-items:center;justify-content:center;font-size:26px}
.ac-bib-colecao-info{flex:1;min-width:0}
.ac-bib-colecao-nome{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:#fff;line-height:1.25;margin-bottom:3px}
.ac-bib-colecao-desc{font-size:12px;color:rgba(255,255,255,.55);line-height:1.45;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ac-bib-colecao-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:11px}
.ac-bib-colecao-count{color:var(--gold,#d4af37);font-weight:700;background:rgba(201,168,76,.12);padding:2px 9px;border-radius:999px;border:1px solid rgba(201,168,76,.25)}
.ac-bib-colecao-tipos{display:inline-flex;flex-wrap:wrap;gap:6px;color:rgba(255,255,255,.55)}
.ac-bib-colecao-tipo{display:inline-flex;align-items:center;gap:3px;font-size:10.5px}
.ac-bib-colecao-arrow{flex:none;color:rgba(255,255,255,.35);font-size:24px;transition:transform .18s,color .18s}
.ac-bib-colecao:hover .ac-bib-colecao-arrow{transform:translateX(3px);color:var(--gold,#d4af37)}

/* ── Breadcrumb da pasta aberta ───────────────────────────── */
.ac-bib-breadcrumb{display:flex;align-items:center;gap:10px;margin:0 0 18px;padding:10px 14px;background:rgba(15,42,68,.55);border:1px solid rgba(201,168,76,.18);border-radius:10px;font-size:13px;color:rgba(255,255,255,.75)}
.ac-bib-breadcrumb-back{background:none;border:none;color:var(--gold,#d4af37);font-weight:600;cursor:pointer;padding:0;font-size:13px;transition:color .15s}
.ac-bib-breadcrumb-back:hover{color:#f1d57a}
.ac-bib-breadcrumb-sep{opacity:.4}
.ac-bib-breadcrumb-nome{color:#fff;font-weight:600}

@media(max-width:640px){
  .ac-bib-colecoes{grid-template-columns:1fr}
  .ac-bib-colecao{padding:14px}
  .ac-bib-colecao-icon{width:44px;height:44px;font-size:22px}
}
.ac-bib-card{background:var(--navy2);border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:all .2s;position:relative}
.ac-bib-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(0,0,0,.4);border-color:rgba(201,168,76,.35)}
.ac-bib-card-tag{position:absolute;top:12px;left:12px;background:rgba(10,23,38,.92);color:#fff;padding:5px 11px;border-radius:999px;font-size:11px;font-weight:600;backdrop-filter:blur(8px);z-index:2}
.ac-bib-card-capa{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}
.ac-bib-card-capa-placeholder{width:100%;aspect-ratio:3/4;background:linear-gradient(135deg,#1a2742 0%,#0a1726 100%);display:flex;align-items:center;justify-content:center;font-size:64px}
.ac-bib-card-body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.ac-bib-card-titulo{font-size:15px;font-weight:700;color:#fff;margin:0;line-height:1.35;font-family:'Playfair Display',Georgia,serif}
.ac-bib-card-desc{font-size:12.5px;color:#cbd5e1;margin:0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ac-bib-card-meta{font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em}
.ac-bib-card-btn{margin-top:auto;display:inline-block;text-align:center;background:var(--gold);color:var(--navy);text-decoration:none;padding:10px 16px;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;border:0;font-family:inherit;transition:background .15s}
.ac-bib-card-btn:hover{background:var(--gold2)}
.ac-bib-card-btn-disabled{background:rgba(255,255,255,.08);color:#94a3b8;cursor:not-allowed}
.ac-bib-card-autor{font-size:12px;color:var(--gold);margin:0;font-style:italic;font-weight:500}
.ac-bib-resenha{background:rgba(201,168,76,.06);border-left:3px solid var(--gold);border-radius:0 8px 8px 0;padding:12px 14px;margin:6px 0}
.ac-bib-resenha-texto{font-size:12.5px;color:#cbd5e1;margin:0;line-height:1.6;white-space:pre-line}
.ac-bib-resenha-toggle{background:none;border:1px solid rgba(201,168,76,.3);color:var(--gold);font-size:12px;padding:5px 12px;border-radius:999px;cursor:pointer;font-family:inherit;transition:all .15s;margin-bottom:4px}
.ac-bib-resenha-toggle:hover{background:rgba(201,168,76,.1);border-color:var(--gold)}
.ac-bib-card--livro{border-color:rgba(201,168,76,.2)}
.ac-bib-card--livro:hover{border-color:rgba(201,168,76,.5)}
.ac-bib-chip-clube{border-color:rgba(201,168,76,.4);color:var(--gold)}
.ac-bib-chip-clube.ativo{background:var(--gold);color:var(--navy)}

/* Modal de edição de material (Biblioteca admin) */
.ac-modal-bib-box{max-width:600px}
.ac-admin-bib-section{background:rgba(15,42,68,.35);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:18px 20px}
.ac-modal-form{display:flex;flex-direction:column;gap:12px;margin:8px 0 4px}
.ac-modal-form label{display:flex;flex-direction:column;gap:5px;font-size:12.5px;color:var(--muted);font-weight:600}
.ac-modal-form label input[type=text],
.ac-modal-form label input[type=number],
.ac-modal-form label select,
.ac-modal-form label textarea{padding:9px 12px;border-radius:8px;border:1px solid #d8dde6;font-size:13.5px;font-family:inherit;background:#fff;color:#14181f}
.ac-modal-form label input:focus,.ac-modal-form label select:focus,.ac-modal-form label textarea:focus{outline:none;border-color:var(--navy)}
.ac-modal-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ac-modal-form-row label{flex-direction:column}
.ac-modal-form small{color:var(--muted);font-size:12px;margin-top:3px}
.ac-modal-form input[type=checkbox]{margin-right:6px}

@media (max-width:560px){
  .ac-modal-form-row{grid-template-columns:1fr}
}
.ac-trilha-card{background:var(--navy2);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:22px;cursor:pointer;transition:all .2s;display:flex;gap:18px;align-items:flex-start}
.ac-trilha-card:hover{transform:translateY(-2px);box-shadow:0 10px 32px rgba(0,0,0,.35);border-color:rgba(201,168,76,.35)}
.ac-trilha-icon{width:52px;height:52px;border-radius:12px;background:linear-gradient(135deg,var(--gold),var(--gold2));display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0;color:var(--navy)}
.ac-trilha-body{flex:1;min-width:0}
.ac-trilha-titulo{font-family:'Playfair Display',serif;font-size:15px;font-weight:700;color:#fff;margin-bottom:5px}
.ac-trilha-desc{font-size:12px;color:rgba(255,255,255,.55);line-height:1.6;margin-bottom:10px}
.ac-trilha-meta{font-size:11px;color:rgba(255,255,255,.4);display:flex;gap:10px}
.ac-trilha-meta .ac-icon{font-size:12px;margin-right:5px;vertical-align:-0.2em;opacity:.7}
.ac-trilha-progress{height:4px;background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden;margin-top:10px}
.ac-trilha-progress-fill{height:100%;background:linear-gradient(90deg,var(--gold),var(--gold2));border-radius:99px}

/* ── View Curso (detalhe + lista de aulas) ── */
.ac-curso-header{background:linear-gradient(135deg,var(--navy),var(--navy2));padding:36px 48px 32px;position:relative;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.06)}
.ac-curso-header::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(201,168,76,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,.04) 1px,transparent 1px);background-size:44px 44px}
.ac-curso-header-inner{position:relative;z-index:2;max-width:1200px;margin:0 auto}
.ac-breadcrumb{font-size:12px;color:rgba(255,255,255,.45);margin-bottom:14px;display:flex;align-items:center;gap:6px}
.ac-breadcrumb a{color:rgba(255,255,255,.45);text-decoration:none;cursor:pointer}
.ac-breadcrumb a:hover{color:var(--gold)}
.ac-breadcrumb span{color:rgba(255,255,255,.25)}
.ac-player-breadcrumb{margin:4px 0 12px;font-size:13px}
.ac-player-breadcrumb a{padding:5px 10px;border-radius:6px;border:1px solid rgba(255,255,255,.08);transition:all .15s}
.ac-player-breadcrumb a:hover{background:rgba(201,168,76,.08);border-color:rgba(201,168,76,.3);color:var(--gold)}
.ac-curso-header h2{font-family:'Playfair Display',serif;font-size:26px;font-weight:700;color:#fff;margin-bottom:10px;line-height:1.3}
.ac-curso-header-meta{display:flex;gap:16px;font-size:12px;color:rgba(255,255,255,.55);flex-wrap:wrap;margin-bottom:16px}
.ac-curso-header-meta span{display:flex;align-items:center;gap:5px}
.ac-curso-detail-body{max-width:1200px;margin:0 auto;padding:28px 48px 60px;display:grid;grid-template-columns:1fr 340px;gap:32px;align-items:start;box-sizing:border-box}
.ac-modulos-lista{display:flex;flex-direction:column;gap:12px}
.ac-modulo-bloco{background:var(--navy2);border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden}
.ac-modulo-titulo-hdr{padding:14px 18px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.06)}
.ac-modulo-titulo-hdr:hover{background:rgba(255,255,255,.06)}
.ac-modulo-titulo-txt{font-weight:700;font-size:13px;color:#fff;display:flex;align-items:center;gap:8px}
.ac-modulo-count{font-size:11px;color:rgba(255,255,255,.4);font-weight:400}
.ac-modulo-arrow{font-size:11px;color:rgba(255,255,255,.4);transition:transform .2s}
.ac-modulo-arrow.open{transform:rotate(180deg)}
.ac-aulas-lista{display:none}
.ac-aulas-lista.open{display:block}
.ac-aula-item{padding:12px 18px;display:flex;align-items:center;gap:12px;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.05);transition:background .12s}
.ac-aula-item:last-child{border-bottom:none}
.ac-aula-item:hover{background:rgba(255,255,255,.04)}
.ac-aula-item.ativa{background:rgba(201,168,76,.1);border-left:3px solid var(--gold)}
.ac-aula-item.bloqueada{opacity:.45;cursor:default}
.ac-aula-check{width:22px;height:22px;border-radius:50%;border:2px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:11px;transition:all .2s}
.ac-aula-check.ok{background:var(--gold);border-color:var(--gold);color:var(--navy)}
.ac-aula-info{flex:1;min-width:0}
.ac-aula-titulo{font-size:13px;font-weight:600;color:rgba(255,255,255,.9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-aula-dur{font-size:11px;color:rgba(255,255,255,.4)}
.ac-aula-lock{font-size:13px;flex-shrink:0}

/* Sidebar do curso */
.ac-curso-sidebar{position:sticky;top:80px;display:flex;flex-direction:column;gap:14px}
.ac-curso-prog-card{background:var(--navy2);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:20px;text-align:center}
.ac-prog-circle{width:80px;height:80px;margin:0 auto 12px;position:relative}
.ac-prog-circle svg{transform:rotate(-90deg)}
.ac-prog-circle svg circle:first-child{stroke:rgba(255,255,255,.1)}
.ac-prog-pct{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:18px;font-weight:700;color:#fff}
.ac-prog-label{font-size:12px;color:rgba(255,255,255,.5);margin-bottom:14px}
.ac-prog-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}
.ac-prog-stat{background:rgba(255,255,255,.05);border-radius:8px;padding:8px;text-align:center}
.ac-prog-stat-num{font-size:15px;font-weight:700;color:#fff}
.ac-prog-stat-lbl{font-size:9px;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.07em;margin-top:2px}
.ac-cert-btn{display:block;width:100%;padding:10px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--navy);border:none;border-radius:9px;font-size:12px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s;box-sizing:border-box}
.ac-cert-btn:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(201,168,76,.4)}
.ac-cert-btn:disabled{opacity:.35;cursor:default;transform:none;box-shadow:none}
.ac-instrutor-card{background:var(--navy2);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:18px}
.ac-instrutor-titulo{font-size:11px;font-weight:700;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}
.ac-instrutor-body{display:flex;align-items:center;gap:12px}
.ac-instrutor-av{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold2));display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:var(--navy);flex-shrink:0;overflow:hidden}
.ac-instrutor-av img{width:100%;height:100%;object-fit:cover}
.ac-instrutor-nome{font-size:13px;font-weight:700;color:#fff}
.ac-instrutor-sub{font-size:11px;color:rgba(255,255,255,.5)}

/* ── View Player ── */
.ac-player-wrap{max-width:1600px;margin:0 auto;padding:28px 48px 60px;display:grid;grid-template-columns:1fr 320px;gap:28px;align-items:start;box-sizing:border-box}
.ac-player-main{}
.ac-player-video{position:relative;width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000;margin-bottom:20px;box-shadow:0 10px 40px rgba(0,0,0,.4)}
.ac-player-video iframe{width:100%;height:100%;border:none;display:block}
.ac-player-poster{position:absolute;inset:0;cursor:pointer;overflow:hidden;background:#000}
.ac-player-poster-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s,opacity .3s}
.ac-player-poster:hover .ac-player-poster-img{transform:scale(1.03);opacity:.85}
.ac-player-poster-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}
.ac-player-poster-play svg{width:72px;height:72px;filter:drop-shadow(0 4px 16px rgba(0,0,0,.7));transition:transform .2s}
.ac-player-poster:hover .ac-player-poster-play svg{transform:scale(1.1)}
.ac-player-sem-video{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#08161f;overflow:hidden}
.ac-player-sv-blur{position:absolute;inset:-8%;width:116%;height:116%;object-fit:cover;filter:blur(22px);opacity:0.3;pointer-events:none}
.ac-player-sv-cover{position:relative;z-index:2;height:82%;aspect-ratio:2/3;object-fit:cover;border-radius:8px;box-shadow:0 12px 48px rgba(0,0,0,.65)}
.ac-player-sv-badge{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);z-index:3;font-family:'DM Sans',sans-serif;font-size:11px;font-weight:700;letter-spacing:3px;color:rgba(255,255,255,.7);text-transform:uppercase;background:rgba(0,0,0,.55);padding:5px 14px;border-radius:99px;backdrop-filter:blur(6px);white-space:nowrap}
.ac-player-aula-titulo{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:#fff;margin-bottom:8px}
.ac-player-aula-desc{font-size:13px;color:rgba(255,255,255,.6);line-height:1.7;margin-bottom:18px}
.ac-player-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.ac-btn-concluir{padding:10px 22px;background:var(--gold);color:var(--navy);border:none;border-radius:9px;font-size:13px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s}
.ac-btn-concluir:hover{background:var(--gold2);transform:translateY(-1px)}
.ac-btn-concluir.ok{background:rgba(26,122,60,.18);color:#3fbf6e;border:1.5px solid rgba(26,122,60,.4)}
.ac-btn-material{padding:10px 18px;background:rgba(255,255,255,.06);color:rgba(255,255,255,.85);border:1.5px solid rgba(255,255,255,.12);border-radius:9px;font-size:12px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s;display:flex;align-items:center;gap:6px}
.ac-btn-material:hover{border-color:rgba(201,168,76,.45);color:var(--gold);background:rgba(255,255,255,.1)}
.ac-player-nav{display:flex;gap:10px}
.ac-btn-nav{flex:1;padding:10px;background:rgba(255,255,255,.05);color:rgba(255,255,255,.75);border:1.5px solid rgba(255,255,255,.1);border-radius:9px;font-size:12px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s;text-align:center}
.ac-btn-nav:hover{border-color:rgba(201,168,76,.4);color:var(--gold);background:rgba(255,255,255,.08)}
.ac-btn-nav:disabled{opacity:.25;cursor:default}

/* Player sidebar (lista de aulas) */
.ac-player-sidebar{position:sticky;top:80px}
.ac-player-lista{background:var(--navy2);border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden;max-height:calc(100vh - 140px);overflow-y:auto}
.ac-player-lista-hdr{padding:14px 18px;font-size:12px;font-weight:700;color:#fff;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);text-transform:uppercase;letter-spacing:.07em;position:sticky;top:0;z-index:1}

/* ── Certificado (mantém fundo claro para imprimir bem) ── */
.ac-cert-wrap{max-width:900px;margin:40px auto;padding:0 32px 60px}
.ac-cert-paper{background:#fff;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:60px;text-align:center;position:relative;overflow:hidden;box-shadow:0 8px 40px rgba(0,0,0,.3)}
.ac-cert-paper::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(201,168,76,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,.025) 1px,transparent 1px);background-size:32px 32px;pointer-events:none}
.ac-cert-borda{position:absolute;inset:16px;border:1.5px solid rgba(201,168,76,.2);border-radius:10px;pointer-events:none}
.ac-cert-logo{font-family:Georgia,serif;font-size:15px;font-weight:700;color:var(--navy);letter-spacing:.06em;text-transform:uppercase;margin-bottom:32px}
.ac-cert-titulo-cert{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.ac-cert-nome{font-family:'Playfair Display',serif;font-size:38px;font-weight:700;color:var(--navy);margin-bottom:16px;line-height:1.1}
.ac-cert-texto{font-size:14px;color:var(--muted);line-height:1.8;max-width:540px;margin:0 auto 24px}
.ac-cert-curso-nome{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--navy);margin-bottom:6px}
.ac-cert-data{font-size:12px;color:var(--muted);margin-bottom:32px}
.ac-cert-linha{width:200px;height:1px;background:var(--cream2);margin:0 auto 8px}
.ac-cert-assinatura{font-size:12px;color:var(--muted);margin-bottom:32px}
.ac-cert-codigo{display:inline-block;font-size:10px;font-family:monospace;background:var(--cream);border:1px solid var(--cream2);border-radius:6px;padding:6px 14px;color:var(--muted);letter-spacing:.1em}
.ac-cert-acoes{display:flex;gap:10px;justify-content:center;margin-top:28px;flex-wrap:wrap}

/* ── Admin Panel ── */
.ac-admin-wrap{max-width:1600px;margin:0 auto;padding:28px 48px 60px;box-sizing:border-box}
.ac-admin-tabs{display:flex;gap:4px;border-bottom:2px solid rgba(255,255,255,.1);margin-bottom:24px}
.ac-admin-tab{padding:8px 18px;font-size:12px;font-weight:700;color:rgba(255,255,255,.45);background:none;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s}
.ac-admin-tab:hover{color:rgba(255,255,255,.8)}
.ac-admin-tab.ativo{color:#fff;border-bottom-color:var(--gold)}
.ac-admin-section{display:none}
.ac-admin-section.ativo{display:block}
.ac-admin-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}
.ac-admin-titulo{font-family:'Playfair Display',serif;font-size:17px;font-weight:700;color:#fff}
.ac-btn-add{padding:9px 18px;background:var(--gold);color:var(--navy);border:none;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s}
.ac-btn-add:hover{background:var(--gold2);transform:translateY(-1px)}
.ac-table{width:100%;border-collapse:collapse;background:var(--navy2);border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08)}
.ac-table th{padding:11px 14px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.45);background:rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.08);text-align:left}
.ac-table td{padding:11px 14px;font-size:12px;color:rgba(255,255,255,.85);border-bottom:1px solid rgba(255,255,255,.05)}
.ac-table tr:last-child td{border-bottom:none}
.ac-table tr:hover td{background:rgba(255,255,255,.03)}
.ac-table-actions{display:flex;gap:6px}
/* Seletor de cursos no modal de trilha */
.ac-mt-cursos-sel{display:flex;flex-direction:column;gap:6px;margin-bottom:8px;min-height:28px}
.ac-mt-cursos-vazio{font-size:12px;color:#94a3b8;padding:4px 0}
.ac-mt-curso-item{display:flex;align-items:center;gap:10px;background:var(--navy2);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:8px 12px}
.ac-mt-curso-ordem{min-width:22px;height:22px;background:var(--gold);color:var(--navy);border-radius:50%;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ac-mt-curso-titulo{flex:1;font-size:13px;color:#fff;font-weight:500}
.ac-mt-curso-acoes{display:flex;gap:4px;flex-shrink:0}
.ac-mt-curso-acoes button{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#cbd5e1;border-radius:5px;padding:3px 8px;font-size:12px;cursor:pointer;font-family:inherit;transition:all .15s}
.ac-mt-curso-acoes button:hover{background:rgba(201,168,76,.15);border-color:rgba(201,168,76,.4);color:var(--gold)}
.ac-mt-cursos-picker{width:100%;padding:9px 12px;border-radius:8px;border:1px dashed rgba(201,168,76,.3);background:var(--navy2);color:#94a3b8;font-size:13px;font-family:inherit;cursor:pointer;margin-top:2px}
.ac-mt-cursos-picker:focus{outline:none;border-color:var(--gold);color:#fff}
.ac-btn-edit{padding:4px 10px;font-size:11px;font-weight:600;background:rgba(201,168,76,.15);color:var(--gold);border:1px solid rgba(201,168,76,.3);border-radius:6px;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s}
.ac-btn-edit:hover{background:rgba(201,168,76,.25)}

/* ── Gestão de alunos (admin) ───────────────────────────────── */
.ac-alunos-filtros{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}
.ac-alunos-input{padding:9px 13px;background:var(--navy2);border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#fff;font-size:13px;font-family:'DM Sans',sans-serif;outline:none}
.ac-alunos-input:focus{border-color:rgba(201,168,76,.5)}
#ac-alunos-busca{flex:1;min-width:220px}
.ac-plano-pill{display:inline-block;padding:2px 9px;border-radius:99px;font-size:10px;font-weight:700;letter-spacing:.04em;background:rgba(201,168,76,.15);color:var(--gold);border:1px solid rgba(201,168,76,.3)}
.ac-badge-ok{display:inline-block;padding:2px 9px;border-radius:99px;font-size:10px;font-weight:700;background:rgba(29,158,117,.15);color:#2ecc71;border:1px solid rgba(29,158,117,.3)}
.ac-btn-mini{padding:5px 13px;font-size:11px;font-weight:700;background:rgba(201,168,76,.15);color:var(--gold);border:1px solid rgba(201,168,76,.3);border-radius:6px;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s}
.ac-btn-mini:hover{background:rgba(201,168,76,.28)}
.ac-btn-revogar{background:rgba(226,75,74,.12);color:#e87a79;border-color:rgba(226,75,74,.3)}
.ac-btn-revogar:hover{background:rgba(226,75,74,.22)}
.ac-btn-xmini{width:28px;height:26px;font-size:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:6px;cursor:pointer;transition:all .15s}
.ac-btn-xmini:hover{background:rgba(255,255,255,.14)}
.ac-aluno-resumo{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;padding:14px 16px;background:var(--navy2);border:1px solid rgba(255,255,255,.08);border-radius:12px;margin-bottom:20px;font-size:13px;color:rgba(255,255,255,.85)}
.ac-aluno-lbl{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:rgba(255,255,255,.4);margin-bottom:4px}
.ac-aluno-sec-titulo{font-size:13px;font-weight:700;color:#fff;margin-bottom:6px}
.ac-aluno-curso{background:var(--navy2);border:1px solid rgba(255,255,255,.08);border-radius:10px;margin-bottom:8px;overflow:hidden}
.ac-aluno-curso-main{display:flex;align-items:center;gap:10px;padding:11px 14px;cursor:pointer}
.ac-aluno-curso-main:hover{background:rgba(255,255,255,.03)}
.ac-aluno-curso-arrow{font-size:11px;color:var(--muted)}
.ac-aluno-curso-acao{padding:0 14px 11px;display:flex;justify-content:flex-end}
.ac-acesso-sim{font-size:11px;color:#2ecc71;margin-top:2px}
.ac-acesso-nao{font-size:11px;color:rgba(255,255,255,.4);margin-top:2px}
.ac-aluno-aulas{padding:4px 14px 12px;border-top:1px solid rgba(255,255,255,.06)}
.ac-aluno-mod{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gold);margin:10px 0 4px}
.ac-aluno-aula{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.04)}
.ac-aluno-aula:last-child{border-bottom:none}
.ac-aluno-aula-estado{font-size:10px;font-weight:700;padding:2px 8px;border-radius:99px;white-space:nowrap}
.ac-ov-on{background:rgba(29,158,117,.15);color:#2ecc71}
.ac-ov-off{background:rgba(226,75,74,.15);color:#e87a79}
.ac-ov-herda{background:rgba(255,255,255,.06);color:rgba(255,255,255,.5)}
.ac-aluno-aula-btns{display:flex;gap:4px}
.ac-btn-del{padding:4px 10px;font-size:11px;font-weight:600;background:rgba(192,57,43,.15);color:#ff7a6a;border:1px solid rgba(192,57,43,.3);border-radius:6px;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s}
.ac-btn-del:hover{background:rgba(192,57,43,.25)}
.ac-badge-pub{display:inline-block;padding:2px 8px;border-radius:99px;font-size:10px;font-weight:700}
.ac-badge-pub.sim{background:rgba(26,122,60,.18);color:#3fbf6e}
.ac-badge-pub.nao{background:rgba(201,168,76,.15);color:var(--gold)}

/* ══════════════════════════════════════════════════════════════
   HERO CAROUSEL (estilo Netflix)
   ══════════════════════════════════════════════════════════════ */
.ac-hero-carousel{position:relative;width:100%;aspect-ratio:21/9;max-height:560px;overflow:hidden;background:var(--navy)}
.ac-hero-slides{position:absolute;inset:0}
.ac-hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .9s ease;pointer-events:none}
.ac-hero-slide.ativo{opacity:1;pointer-events:auto}
.ac-hero-slide-grad{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,30,53,.92) 0%,rgba(11,30,53,.75) 40%,rgba(11,30,53,.3) 100%),linear-gradient(0deg,rgba(11,30,53,.85) 0%,rgba(11,30,53,0) 50%)}
.ac-hero-slide-info{position:absolute;left:48px;bottom:60px;max-width:560px;z-index:2}
.ac-hero-slide-titulo{font-family:'Playfair Display',serif;font-size:38px;font-weight:700;color:#fff;line-height:1.1;margin-bottom:14px;text-shadow:0 4px 20px rgba(0,0,0,.6)}
.ac-hero-slide-sub{font-size:15px;line-height:1.55;color:rgba(255,255,255,.85);margin-bottom:22px;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.ac-hero-cta{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:var(--navy);border:none;border-radius:10px;padding:12px 28px;font-size:14px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;box-shadow:0 8px 24px rgba(0,0,0,.4);transition:all .15s}
.ac-hero-cta:hover{background:var(--gold2);transform:translateY(-2px);box-shadow:0 12px 32px rgba(0,0,0,.5)}
.ac-hero-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(11,30,53,.55);color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:50%;width:46px;height:46px;font-size:24px;cursor:pointer;z-index:3;backdrop-filter:blur(8px);transition:all .15s;display:flex;align-items:center;justify-content:center;line-height:1}
.ac-hero-arrow:hover{background:rgba(11,30,53,.85);transform:translateY(-50%) scale(1.08)}
.ac-hero-arrow-prev{left:20px}
.ac-hero-arrow-next{right:20px}
.ac-hero-dots{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:3}
.ac-hero-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.35);cursor:pointer;transition:all .15s}
.ac-hero-dot.ativo{background:var(--gold);width:24px;border-radius:99px}
@media(max-width:768px){
  .ac-hero-carousel{aspect-ratio:4/3;max-height:none}
  .ac-hero-slide-info{left:20px;right:20px;bottom:36px;max-width:none}
  .ac-hero-slide-titulo{font-size:24px;margin-bottom:8px}
  .ac-hero-slide-sub{font-size:13px;margin-bottom:14px}
  .ac-hero-cta{padding:10px 18px;font-size:12px}
  .ac-hero-arrow{width:38px;height:38px;font-size:20px}
}

/* ══════════════════════════════════════════════════════════════
   LINHAS HORIZONTAIS NETFLIX (rows com cards verticais)
   ══════════════════════════════════════════════════════════════ */
.ac-nf-row{margin-bottom:32px;position:relative}
.ac-nf-row-titulo{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:#fff;margin:0 0 14px 4px;display:inline-flex;align-items:center;gap:10px}
.ac-nf-row-titulo .ac-icon{color:var(--gold);font-size:20px}
.ac-nf-row-scroll-wrap{position:relative}
.ac-nf-row-scroll{display:flex;gap:14px;overflow-x:auto;scroll-behavior:smooth;padding:8px 4px 16px;scrollbar-width:none}
.ac-nf-row-scroll::-webkit-scrollbar{display:none}
.ac-nf-row-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(11,30,53,.85);color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:50%;width:40px;height:40px;font-size:22px;cursor:pointer;z-index:5;display:flex;align-items:center;justify-content:center;line-height:1;backdrop-filter:blur(6px);opacity:0;transition:opacity .2s,transform .15s}
.ac-nf-row-scroll-wrap:hover .ac-nf-row-arrow{opacity:1}
.ac-nf-row-arrow:hover{background:rgba(11,30,53,1);transform:translateY(-50%) scale(1.08)}
.ac-nf-row-arrow-prev{left:-8px}
.ac-nf-row-arrow-next{right:-8px}
@media(max-width:768px){ .ac-nf-row-arrow{display:none} }

/* Card vertical (poster 2:3) */
.ac-nf-card{flex:0 0 200px;background:var(--navy2);border:1px solid rgba(255,255,255,.07);border-radius:10px;overflow:hidden;cursor:pointer;transition:transform .25s cubic-bezier(.2,.7,.3,1),box-shadow .25s,border-color .25s;display:flex;flex-direction:column;position:relative}
.ac-nf-card:hover{transform:translateY(-6px) scale(1.03);box-shadow:0 18px 40px rgba(0,0,0,.5);border-color:rgba(201,168,76,.5);z-index:4}
.ac-nf-card[onclick=""]{cursor:default}
.ac-nf-card[onclick=""]:hover{transform:none;box-shadow:none;border-color:rgba(255,255,255,.07)}
.ac-nf-card-thumb{position:relative;aspect-ratio:2/3;background:linear-gradient(135deg,var(--navy3),var(--navy2));overflow:hidden}
.ac-nf-card-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ac-nf-card-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:56px;opacity:.3}
.ac-nf-card-lock{position:absolute;top:8px;right:8px;background:rgba(0,0,0,.7);border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-size:13px;backdrop-filter:blur(4px)}
.ac-nf-card-prog{position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(0,0,0,.5)}
.ac-nf-card-prog-fill{height:100%;background:var(--gold);transition:width .3s}
/* ── Continuar Assistindo / Concluídos overlays ── */
.ac-nf-card-em-andamento .ac-nf-card-thumb::after{
  content:'▶ Retomar';position:absolute;bottom:28px;left:50%;transform:translateX(-50%);
  background:rgba(201,168,76,.95);color:#0f1e35;font-size:10px;font-weight:700;
  padding:4px 11px;border-radius:99px;white-space:nowrap;pointer-events:none;
  opacity:0;transition:opacity .18s
}
.ac-nf-card-em-andamento:hover .ac-nf-card-thumb::after{opacity:1}
.ac-nf-card-concluido .ac-nf-card-thumb::after{
  content:'✓ Concluído';position:absolute;bottom:28px;left:50%;transform:translateX(-50%);
  background:rgba(39,174,96,.92);color:#fff;font-size:10px;font-weight:700;
  padding:4px 11px;border-radius:99px;white-space:nowrap;pointer-events:none;
  opacity:0;transition:opacity .18s
}
.ac-nf-card-concluido:hover .ac-nf-card-thumb::after{opacity:1}
.ac-nf-card-info{padding:11px 12px 13px;display:flex;flex-direction:column;gap:5px;flex:1}
.ac-nf-card-titulo{font-size:13px;font-weight:600;color:#fff;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ac-nf-card-meta{display:flex;align-items:center;gap:8px;font-size:10px;color:rgba(255,255,255,.5);flex-wrap:wrap}
.ac-nf-card-nivel{background:rgba(201,168,76,.18);color:var(--gold);padding:2px 7px;border-radius:99px;font-weight:700;font-size:9px;text-transform:uppercase;letter-spacing:.05em}
.ac-nf-card-desc{font-size:11px;color:rgba(255,255,255,.5);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:768px){
  .ac-nf-card{flex:0 0 150px}
  .ac-nf-card-titulo{font-size:12px}
  .ac-nf-row-titulo{font-size:16px}
}

/* ══════════════════════════════════════════════════════════════
   CABEÇALHO DO CURSO COM BANNER CINEMATOGRÁFICO
   ══════════════════════════════════════════════════════════════ */
.ac-curso-header.com-banner{min-height:340px;padding:60px 48px 40px;background-color:var(--navy)}
.ac-curso-header.com-banner h2{font-size:34px;text-shadow:0 4px 20px rgba(0,0,0,.6)}
@media(max-width:768px){
  .ac-curso-header.com-banner{min-height:240px;padding:36px 20px 28px}
  .ac-curso-header.com-banner h2{font-size:24px}
}

/* ══════════════════════════════════════════════════════════════
   PLAYER SIDEBAR — thumbnails das aulas
   ══════════════════════════════════════════════════════════════ */
.ac-player-mod-hdr{padding:9px 14px 5px;font-size:10px;font-weight:700;color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:.08em;background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.06);border-top:1px solid rgba(255,255,255,.04)}
.ac-player-aula-item{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.04);transition:background .12s}
.ac-player-aula-item:hover{background:rgba(255,255,255,.04)}
.ac-player-aula-item.ativa{background:rgba(201,168,76,.1);border-left:3px solid var(--gold);padding-left:11px}
.ac-player-aula-item.bloqueada{opacity:.55;cursor:not-allowed}
.ac-player-aula-thumb{position:relative;flex:0 0 64px;aspect-ratio:16/9;border-radius:6px;overflow:hidden;background:var(--navy3)}
.ac-player-aula-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ac-thumb-check,.ac-thumb-lock{position:absolute;top:3px;right:3px;background:rgba(0,0,0,.75);border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--gold);font-weight:700}

/* ══════════════════════════════════════════════════════════════
   UPLOAD DE IMAGENS (admin)
   ══════════════════════════════════════════════════════════════ */
.ac-field-row-imgs{grid-template-columns:1fr 1fr}
.ac-upload-area{display:flex;flex-direction:column;gap:8px}
.ac-upload-preview{width:100%;background:var(--cream3);border:2px dashed var(--cream2);border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative}
.ac-upload-preview img{width:100%;height:100%;object-fit:cover;display:block}
.ac-upload-23{aspect-ratio:2/3;max-height:280px}
.ac-upload-169{aspect-ratio:16/9}
.ac-upload-empty{color:var(--muted);font-size:12px;text-align:center;padding:14px}
.ac-upload-loading{color:var(--gold);font-size:12px;font-weight:600;padding:18px}
.ac-upload-actions{display:flex;gap:6px}
.ac-upload-btn{flex:1;padding:8px 12px;background:var(--gold);color:var(--navy);border:none;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s}
.ac-upload-btn:hover{background:var(--gold2)}
.ac-upload-clear{padding:8px 14px;background:none;color:var(--muted);border:1px solid var(--cream2);border-radius:8px;font-size:11px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s}
.ac-upload-clear:hover{color:#c0392b;border-color:#c0392b}
@media(max-width:768px){ .ac-field-row-imgs{grid-template-columns:1fr} }

/* ── Material PDF inline ── */
.ac-material-preview{margin-top:20px;background:var(--navy2);border:1px solid rgba(255,255,255,.09);border-radius:12px;overflow:hidden}
.ac-material-hdr{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.08);gap:10px}
.ac-material-titulo{font-size:13px;font-weight:600;color:#fff}
.ac-material-preview iframe{width:100%;height:640px;border:none;background:#fff;display:block}
@media(max-width:768px){ .ac-material-preview iframe{height:420px} }

/* ── Feedback: avaliação + comentários ── */
.ac-feedback-bloco{margin-top:24px;background:var(--navy2);border:1px solid rgba(255,255,255,.09);border-radius:12px;padding:20px}
.ac-rating-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.ac-rating-titulo{font-size:13px;font-weight:700;color:rgba(255,255,255,.6);text-transform:uppercase;letter-spacing:.07em}
.ac-rating-stars{display:inline-flex;gap:2px;user-select:none}
.ac-rating-stars span{font-size:28px;color:rgba(255,255,255,.18);cursor:pointer;transition:color .12s,transform .15s;line-height:1}
.ac-rating-stars span:hover{transform:scale(1.12)}
.ac-rating-stars span.ativa,.ac-rating-stars span.hover{color:var(--gold);text-shadow:0 0 12px rgba(201,168,76,.4)}
.ac-rating-info{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px}
.ac-rating-media{font-size:20px;font-weight:700;color:var(--gold);font-family:'Playfair Display',serif}
.ac-rating-total{color:rgba(255,255,255,.5);font-size:12px}
.ac-rating-minha{margin-left:auto;font-size:12px;color:rgba(255,255,255,.5);font-style:italic}

/* Comentários */
.ac-coms-titulo{font-family:'Playfair Display',serif;font-size:17px;font-weight:700;color:#fff;margin-bottom:14px}
.ac-com-form{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px;margin-bottom:18px}
.ac-com-form textarea{width:100%;min-height:70px;background:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:10px 12px;color:#fff;font-family:'DM Sans',sans-serif;font-size:13px;resize:vertical;box-sizing:border-box;transition:border-color .15s}
.ac-com-form textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.1)}
.ac-com-form textarea::placeholder{color:rgba(255,255,255,.3)}
.ac-com-form-footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px;gap:10px;flex-wrap:wrap}
.ac-com-aviso{font-size:11px;color:rgba(255,255,255,.4);font-style:italic}
.ac-comentario{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.ac-comentario:last-child{border-bottom:none}
.ac-comentario.pendente{opacity:.7}
.ac-com-hdr{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.ac-com-av{width:34px;height:34px;background:linear-gradient(135deg,var(--navy3),var(--navy));border:1px solid rgba(255,255,255,.15);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--gold);flex-shrink:0}
.ac-com-info{flex:1;min-width:0}
.ac-com-nome{font-size:13px;font-weight:600;color:#fff;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ac-com-pend-badge{font-size:10px;font-weight:700;background:rgba(201,168,76,.15);color:var(--gold);padding:2px 8px;border-radius:99px;border:1px solid rgba(201,168,76,.3)}
.ac-com-data{font-size:11px;color:rgba(255,255,255,.4);margin-top:2px}
.ac-com-conteudo{font-size:13px;line-height:1.6;color:rgba(255,255,255,.82);margin-left:44px;white-space:pre-wrap}
.ac-com-acoes{margin-left:44px;margin-top:8px;display:flex;gap:6px}

/* ── Admin: Editor de módulos e aulas ── */
.ac-adm-voltar{background:none;border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:6px 14px;font-size:12px;font-weight:600;color:rgba(255,255,255,.6);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s}
.ac-adm-voltar:hover{color:#fff;background:rgba(255,255,255,.06)}
.ac-adm-mod-titulo{font-size:15px;font-weight:600;color:var(--gold);margin-top:8px}
.ac-adm-modulo-bloco{background:var(--navy2);border:1px solid rgba(255,255,255,.09);border-radius:12px;margin-bottom:14px;overflow:hidden}
.ac-adm-modulo-hdr{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.07);gap:10px}
.ac-adm-modulo-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0}
.ac-adm-modulo-num{width:26px;height:26px;background:var(--gold);color:var(--navy);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;flex-shrink:0}
.ac-adm-modulo-titulo{font-size:14px;font-weight:600;color:#fff;line-height:1.3}
.ac-adm-modulo-meta{font-size:11px;color:rgba(255,255,255,.4);margin-top:2px}
.ac-adm-aulas-lista{padding:4px 0}
.ac-adm-aula-item{display:flex;align-items:center;gap:10px;padding:9px 16px;border-bottom:1px solid rgba(255,255,255,.04);transition:background .12s}
.ac-adm-aula-item:last-child{border-bottom:none}
.ac-adm-aula-item:hover{background:rgba(255,255,255,.025)}
.ac-adm-aula-ordem{width:22px;height:22px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.4);border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0}
.ac-adm-aula-info{flex:1;min-width:0}
.ac-adm-aula-titulo{font-size:13px;font-weight:500;color:rgba(255,255,255,.88);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-adm-aula-meta{font-size:11px;color:rgba(255,255,255,.38);margin-top:3px;display:flex;gap:5px;flex-wrap:wrap;align-items:center}
.ac-adm-sem-aula{padding:11px 16px;font-size:12px;color:rgba(255,255,255,.3);font-style:italic}

/* Admin Modal — mantém fundo branco para legibilidade dos campos */
.ac-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:9990;display:none;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(4px)}
.ac-modal-overlay.open{display:flex}
.ac-modal{background:#fff;border-radius:16px;max-width:620px;width:100%;max-height:92vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.ac-modal-header{background:linear-gradient(135deg,var(--navy),var(--navy2));padding:20px 24px;display:flex;align-items:center;justify-content:space-between}
.ac-modal-titulo{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:#fff;display:inline-flex;align-items:center;gap:9px}
.ac-modal-titulo .ac-icon{color:var(--gold,#d4af37);font-size:18px}
.ac-modal-close{background:none;border:none;color:rgba(255,255,255,.4);font-size:22px;cursor:pointer;line-height:1;padding:0;transition:color .15s}
.ac-modal-close:hover{color:#fff}
.ac-modal-body{padding:22px 24px;overflow-y:auto;flex:1;color:var(--text)}
.ac-field{margin-bottom:15px}
.ac-field label{display:block;font-size:11px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.07em;margin-bottom:5px}
.ac-field input,.ac-field textarea,.ac-field select{width:100%;border:1.5px solid var(--cream2);border-radius:8px;padding:9px 12px;font-size:13px;font-family:'DM Sans',sans-serif;color:var(--text);background:#fff;transition:border-color .15s;resize:vertical;box-sizing:border-box}
.ac-field input:focus,.ac-field textarea:focus,.ac-field select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.1)}
.ac-field textarea{min-height:80px}
.ac-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ac-planos-check{display:flex;flex-wrap:wrap;gap:8px;padding:10px;border:1.5px solid var(--cream2);border-radius:8px}
.ac-plano-label{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--navy);cursor:pointer;background:var(--cream3);padding:4px 10px;border-radius:6px;border:1px solid var(--cream2);transition:all .15s}
.ac-plano-label:has(input:checked){background:rgba(201,168,76,.12);border-color:rgba(201,168,76,.35);color:var(--gold3)}
.ac-plano-label input{width:12px;height:12px;accent-color:var(--gold)}
.ac-modal-footer{padding:16px 24px;border-top:1px solid var(--cream2);display:flex;justify-content:flex-end;gap:8px;background:var(--cream3)}
.ac-modal-footer .ac-btn-nav{flex:none;padding:9px 16px;background:#fff;color:var(--navy);border:1.5px solid var(--cream2)}
.ac-modal-footer .ac-btn-nav:hover{border-color:rgba(201,168,76,.4);color:var(--gold);background:#fff}

/* ── Empty / Loading states ── */
.ac-empty{text-align:center;padding:52px 20px;color:rgba(255,255,255,.5)}
.ac-empty-icon{font-size:44px;margin-bottom:14px;opacity:.7}
.ac-empty-titulo{font-family:'Playfair Display',serif;font-size:17px;font-weight:700;color:#fff;margin-bottom:7px}
.ac-empty-sub{font-size:13px;line-height:1.65;color:rgba(255,255,255,.5)}
.ac-spinner{text-align:center;padding:40px;color:rgba(255,255,255,.5);font-size:13px}
.ac-spinner-icon{font-size:28px;display:inline-block;animation:ac-spin .9s linear infinite;margin-bottom:8px;color:var(--gold)}
@keyframes ac-spin{to{transform:rotate(360deg)}}

/* ── Toast ── */
.ac-toast{position:fixed;bottom:24px;right:24px;background:var(--navy2);color:#fff;padding:12px 18px;border-radius:10px;font-size:13px;font-weight:500;box-shadow:0 8px 28px rgba(0,0,0,.5);z-index:9999;transform:translateY(80px);opacity:0;transition:all .25s;max-width:320px;border:1px solid rgba(255,255,255,.1)}
.ac-toast.show{transform:translateY(0);opacity:1}
.ac-toast.ok{border-left:3px solid var(--gold)}
.ac-toast.erro{border-left:3px solid #c0392b}

/* ── Responsive ── */
@media(max-width:1024px){
  .ac-curso-detail-body,.ac-player-wrap{grid-template-columns:1fr;padding:20px 20px 40px}
  .ac-curso-sidebar,.ac-player-sidebar{position:static}
  .ac-player-lista{max-height:400px}
}
@media(max-width:768px){
  .ac-hero{padding:36px 20px 32px}
  .ac-hero h1{font-size:24px}
  .ac-main{padding:24px 16px 40px}
  .ac-cursos-grid{grid-template-columns:1fr}
  .ac-curso-header{padding:24px 20px 20px}
  .ac-admin-wrap{padding:20px 16px 40px}
  .ac-header{padding:0 16px}
  .ac-user-info{display:none}
  /* Abas de navegação com scroll horizontal no mobile */
  .ac-nav{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px;flex-shrink:0}
  .ac-nav::-webkit-scrollbar{display:none}
  .ac-nav-btn{white-space:nowrap;flex-shrink:0;min-height:44px;display:inline-flex;align-items:center}
  /* Safe area para iOS notch */
  .ac-body{padding-bottom:env(safe-area-inset-bottom)}
  .ac-footer{padding-bottom:calc(16px + env(safe-area-inset-bottom))}
}

/* ── ÍCONES SVG (Lucide-style, sóbrios) ──────────────────────── */
.ac-icon{width:1em;height:1em;display:inline-block;vertical-align:-0.15em;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ac-icon-sm{width:.9em;height:.9em}
.ac-icon-lg{font-size:1.2em}
.ac-icon-xl{width:48px;height:48px;stroke-width:1.3}
.ac-icon-hero{width:64px;height:64px;stroke-width:1.2}
.ac-nav-btn .ac-icon,.ac-filtro .ac-icon{font-size:15px;margin-right:7px;opacity:.9}
.ac-nf-card-meta .ac-icon{font-size:12px;margin-right:3px;opacity:.7}
.ac-curso-meta .ac-icon{font-size:13px;margin-right:4px;opacity:.75}
.ac-empty .ac-icon-hero{color:rgba(212,175,55,.55);margin-bottom:14px}

/* ── PAGAMENTOS — paywall, preços nos cards, CTA assinar ─────── */
.ac-nav-cta{background:linear-gradient(135deg,var(--gold,#d4af37) 0%,#b8941e 100%);color:#0b1e35;font-weight:700;border:none}
.ac-nav-cta:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(212,175,55,.35)}

.ac-nf-card-preco{position:absolute;top:8px;right:8px;background:rgba(212,175,55,.95);color:#0b1e35;font-weight:700;font-size:12px;padding:4px 10px;border-radius:6px;box-shadow:0 2px 8px rgba(0,0,0,.4)}

/* Modal helpers */
.ac-modal-sec-titulo{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--gold,#d4af37);margin:24px 0 12px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);font-weight:700}
.ac-field-hint{font-size:11px;color:rgba(255,255,255,.55);margin-top:4px;line-height:1.4}
.ac-field-2col{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:640px){ .ac-field-2col{grid-template-columns:1fr} }

/* Modal paywall */
.ac-modal-paywall{max-width:920px;width:100%}
.ac-paywall-curso{display:flex;gap:14px;padding:14px;background:var(--cream);border:1px solid var(--cream2);border-radius:12px;margin-bottom:20px;align-items:center}
.ac-paywall-curso-thumb{width:72px;height:108px;border-radius:6px;overflow:hidden;background:var(--cream2);display:flex;align-items:center;justify-content:center;flex:none}
.ac-paywall-curso-thumb img{width:100%;height:100%;object-fit:cover}
.ac-paywall-thumb-empty{font-size:32px;opacity:.4;color:var(--navy)}
.ac-paywall-curso-titulo{font-size:18px;font-weight:700;color:var(--navy);margin-bottom:6px;line-height:1.3}
.ac-paywall-curso-preco{font-size:15px;color:var(--gold,#b8941e);font-weight:700}

.ac-paywall-opcoes{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:760px){ .ac-paywall-opcoes{grid-template-columns:1fr} }

.ac-paywall-card{background:#fafaf7;border:1.5px solid var(--cream2);border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:12px;position:relative;transition:transform .2s ease,border-color .2s ease}
.ac-paywall-card:hover{transform:translateY(-2px);border-color:rgba(201,168,76,.5)}
.ac-paywall-card-destaque{border-color:rgba(201,168,76,.6);background:linear-gradient(180deg,rgba(201,168,76,.12) 0%,#fafaf7 70%)}
.ac-paywall-card-tag{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;background:rgba(201,168,76,.18);color:#8a6f1f;font-size:11px;padding:4px 10px;border-radius:6px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.ac-paywall-card-tag .ac-icon{font-size:13px}
.ac-paywall-card-titulo{font-size:20px;font-weight:700;color:var(--navy)}
.ac-paywall-card-desc{font-size:13px;color:#556;line-height:1.5}
.ac-paywall-card-list{list-style:none;padding:0;margin:6px 0;font-size:13px;color:#445;line-height:1.9}
.ac-paywall-card-list li{padding-left:0}
.ac-paywall-card-btn{margin-top:auto;background:linear-gradient(135deg,var(--gold,#c9a84c) 0%,#a88a36 100%);color:#fff;border:none;padding:13px;font-size:14px;font-weight:700;border-radius:10px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}
.ac-paywall-card-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(201,168,76,.4)}

.ac-paywall-precos{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}
.ac-paywall-preco-btn{background:#fff;border:1.5px solid var(--cream2);border-radius:10px;padding:14px 8px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--navy);font-family:inherit;transition:all .15s ease;position:relative}
.ac-paywall-preco-btn:hover{border-color:var(--gold,#c9a84c);background:rgba(201,168,76,.06)}
.ac-paywall-preco-anual{border-color:rgba(201,168,76,.5)}
.ac-paywall-preco-tag{position:absolute;top:-8px;right:8px;background:#22c55e;color:#fff;font-size:10px;font-weight:700;padding:3px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.04em}
.ac-paywall-preco-label{font-size:12px;color:#778;text-transform:uppercase;letter-spacing:.04em}
.ac-paywall-preco-valor{font-size:20px;font-weight:700;color:#8a6f1f;margin-top:4px}
.ac-paywall-preco-sub{font-size:11px;color:#999}

.ac-paywall-rodape{margin-top:18px;padding-top:14px;border-top:1px solid var(--cream2);font-size:12px;color:#778;text-align:center;line-height:1.6}
.ac-paywall-rodape strong{color:var(--navy)}

/* Minhas compras */
.ac-mc-bloco{display:flex;gap:14px;padding:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;margin-bottom:10px;align-items:center;cursor:pointer;transition:background .15s ease}
.ac-mc-bloco:hover{background:rgba(255,255,255,.07)}
.ac-mc-bloco-thumb{width:64px;height:64px;border-radius:8px;overflow:hidden;background:rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;font-size:24px;flex:none}
.ac-mc-bloco-thumb img{width:100%;height:100%;object-fit:cover}
.ac-mc-bloco-icone{width:48px;height:48px;background:rgba(212,175,55,.18);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;flex:none}
.ac-mc-bloco-info{flex:1;min-width:0}
.ac-mc-bloco-titulo{font-size:15px;font-weight:600;color:#fff;margin-bottom:3px}
.ac-mc-bloco-sub{font-size:12px;color:rgba(255,255,255,.6)}
.ac-mc-bloco-cta{font-size:13px;color:var(--gold,#d4af37);font-weight:600;flex:none}
.ac-mc-bloco-titulo-sec{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:rgba(255,255,255,.55);margin:16px 0 8px;font-weight:600}
.ac-mc-assinatura{background:linear-gradient(180deg,rgba(212,175,55,.12) 0%,rgba(255,255,255,.04) 70%);border-color:rgba(212,175,55,.35)}

/* ── Module badge (MÓDULO X) ── */
.ac-nf-card-modulo{position:absolute;top:8px;left:8px;background:rgba(34,197,94,.88);color:#fff;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:3px 8px;border-radius:4px;backdrop-filter:blur(4px);line-height:1.4}
.ac-nf-card-preco{position:absolute;bottom:42px;left:8px;background:rgba(201,168,76,.92);color:var(--navy);font-size:10px;font-weight:700;padding:3px 8px;border-radius:5px;backdrop-filter:blur(4px)}

/* ── User dropdown menu ── */
.ac-user-menu-wrap{position:relative}
.ac-user-menu{position:absolute;top:calc(100% + 10px);right:0;background:var(--navy2);border:1px solid rgba(201,168,76,.22);border-radius:12px;min-width:220px;box-shadow:0 16px 48px rgba(0,0,0,.55);z-index:600;overflow:hidden;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .18s,transform .18s}
.ac-user-menu.open{opacity:1;transform:translateY(0);pointer-events:auto}
.ac-user-menu-hdr{padding:14px 16px 12px;border-bottom:1px solid rgba(255,255,255,.07)}
.ac-user-menu-nome{font-size:13px;font-weight:700;color:#fff;line-height:1.3}
.ac-user-menu-plano{font-size:10px;color:var(--gold);text-transform:uppercase;letter-spacing:.08em;margin-top:2px}
.ac-user-menu-item{display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:13px;color:rgba(255,255,255,.75);cursor:pointer;transition:all .12s;background:none;border:none;width:100%;text-align:left;font-family:'DM Sans',sans-serif;text-decoration:none}
.ac-user-menu-item:hover{background:rgba(255,255,255,.07);color:#fff}
.ac-user-menu-item.danger{color:#e57373}
.ac-user-menu-item.danger:hover{background:rgba(229,115,115,.07);color:#ef5350}
.ac-user-menu-divider{height:1px;background:rgba(255,255,255,.07);margin:4px 0}
.ac-user-menu-item .ac-icon{opacity:.65;flex-shrink:0}
.ac-user-menu-item:hover .ac-icon{opacity:1}

/* ── Academy Login page ── */
.acl-body{margin:0;padding:0;background:var(--navy);font-family:'DM Sans',sans-serif;color:#fff;min-height:100vh;display:flex;align-items:stretch}
.acl-left{flex:1;background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 60%,var(--navy3) 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 48px;position:relative;overflow:hidden}
.acl-left::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(201,168,76,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,.05) 1px,transparent 1px);background-size:48px 48px}
.acl-left-glow{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(201,168,76,.1) 0%,transparent 70%);bottom:-200px;right:-150px;pointer-events:none}
.acl-left-inner{position:relative;z-index:2;max-width:420px;width:100%}
.acl-brand{display:flex;align-items:center;gap:12px;margin-bottom:40px}
.acl-brand-badge{width:44px;height:44px;background:linear-gradient(135deg,var(--gold),var(--gold2));border-radius:9px;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:20px;font-weight:700;color:var(--navy)}
.acl-brand-name{font-size:16px;font-weight:700;color:#fff;line-height:1.2}
.acl-brand-name span{color:var(--gold)}
.acl-hero-title{font-family:'Playfair Display',serif;font-size:36px;font-weight:700;color:#fff;line-height:1.2;margin-bottom:14px}
.acl-hero-title span{color:var(--gold)}
.acl-hero-sub{font-size:14px;color:rgba(255,255,255,.6);line-height:1.75;margin-bottom:36px}
.acl-features{display:flex;flex-direction:column;gap:12px}
.acl-feature{display:flex;align-items:center;gap:12px;font-size:13px;color:rgba(255,255,255,.8)}
.acl-feature-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);flex-shrink:0}
.acl-right{width:420px;flex-shrink:0;background:var(--navy2);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 40px;border-left:1px solid rgba(201,168,76,.12)}
@media(max-width:820px){.acl-left{display:none}.acl-right{width:100%;border-left:none;padding:40px 24px}}
.acl-form-logo{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:#fff;margin-bottom:6px;text-align:center}
.acl-form-logo span{color:var(--gold)}
.acl-form-sub{font-size:13px;color:rgba(255,255,255,.5);text-align:center;margin-bottom:32px}
.acl-field{margin-bottom:16px;width:100%}
.acl-field label{display:block;font-size:12px;font-weight:600;color:rgba(255,255,255,.65);margin-bottom:6px;letter-spacing:.02em}
.acl-field input{width:100%;background:rgba(255,255,255,.06);border:1.5px solid rgba(255,255,255,.12);border-radius:9px;padding:12px 14px;font-size:14px;color:#fff;font-family:'DM Sans',sans-serif;outline:none;transition:border-color .15s;box-sizing:border-box}
.acl-field input:focus{border-color:var(--gold)}
.acl-field input::placeholder{color:rgba(255,255,255,.3)}
.acl-btn-primary{width:100%;padding:13px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--navy);border:none;border-radius:9px;font-size:14px;font-weight:700;font-family:'DM Sans',sans-serif;cursor:pointer;transition:all .18s;margin-top:4px}
.acl-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px rgba(201,168,76,.4)}
.acl-btn-primary:disabled{opacity:.55;cursor:not-allowed}
.acl-link-row{margin-top:14px;text-align:center;font-size:12px;color:rgba(255,255,255,.45)}
.acl-link-row a{color:var(--gold);text-decoration:none;font-weight:600}
.acl-link-row a:hover{text-decoration:underline}
.acl-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:rgba(255,255,255,.2);font-size:11px}
.acl-divider::before,.acl-divider::after{content:'';flex:1;height:1px;background:rgba(255,255,255,.08)}
.acl-msg{padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:16px;display:none}
.acl-msg.erro{background:rgba(239,83,80,.12);border:1px solid rgba(239,83,80,.3);color:#ef9a9a}
.acl-msg.ok{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);color:#86efac}
.acl-msg.show{display:block}
.acl-footer{margin-top:28px;text-align:center;font-size:11px;color:rgba(255,255,255,.25)}
.acl-footer a{color:rgba(255,255,255,.4);text-decoration:none}
.acl-footer a:hover{color:var(--gold)}

/* ── Aula ao vivo — banner no curso ── */
.ac-live-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,rgba(15,30,53,.95) 0%,rgba(22,40,68,.95) 100%);border:1px solid rgba(255,80,80,.35);border-radius:14px;padding:20px 24px;margin:24px 48px 0;flex-wrap:wrap}
.ac-live-banner.ao-vivo{border-color:rgba(239,68,68,.6);background:linear-gradient(135deg,rgba(60,10,10,.9) 0%,rgba(40,15,15,.9) 100%);box-shadow:0 0 30px rgba(239,68,68,.12)}
.ac-live-banner-left{flex:1;min-width:0}
.ac-live-badge{display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#f87171;margin-bottom:8px}
.ao-vivo .ac-live-badge{color:#ef4444}
.ac-live-pulse{width:8px;height:8px;border-radius:50%;background:#ef4444;display:inline-block;animation:ac-pulse 1.4s ease-in-out infinite}
@keyframes ac-pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.6}}
.ac-live-titulo{font-size:16px;font-weight:700;color:#fff;margin-bottom:4px;line-height:1.3}
.ac-live-desc{font-size:12px;color:rgba(255,255,255,.6);margin-bottom:6px;line-height:1.5}
.ac-live-data{font-size:12px;color:rgba(255,255,255,.5);margin-bottom:4px}
.ac-live-countdown{font-size:13px;font-weight:600;color:var(--gold);margin-top:4px}
.ac-live-banner-right{flex-shrink:0}
.ac-live-btn{display:inline-flex;align-items:center;gap:8px;background:#ef4444;color:#fff;border:none;border-radius:9px;padding:11px 22px;font-size:13px;font-weight:700;font-family:'DM Sans',sans-serif;cursor:pointer;text-decoration:none;transition:all .18s;white-space:nowrap}
.ac-live-btn:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 6px 20px rgba(239,68,68,.4)}
.ac-live-btn-off{font-size:13px;color:rgba(255,255,255,.5);text-align:center;white-space:nowrap}
@media(max-width:768px){.ac-live-banner{margin:16px 16px 0;padding:16px}}

/* ── Admin sub-abas (Módulos / Ao Vivo) ── */
.ac-adm-subtabs{display:flex;gap:4px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:0;padding-bottom:0}
.ac-adm-subtab{padding:9px 18px;font-size:12px;font-weight:600;color:rgba(255,255,255,.5);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s;margin-bottom:-1px}
.ac-adm-subtab:hover{color:#fff}
.ac-adm-subtab.ativo{color:var(--gold);border-bottom-color:var(--gold)}
.ac-adm-subpanel{display:none}
.ac-adm-subpanel.ativo{display:block}

/* ── Mural de Avisos (aluno) ── */
.ac-avisos-wrap{margin:20px 48px 0;display:flex;flex-direction:column;gap:10px}
.ac-avisos-hdr{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.4);margin-bottom:4px}
.ac-aviso-card{background:var(--navy2);border-radius:10px;padding:14px 18px;border-left:4px solid rgba(255,255,255,.15);transition:border-color .15s}
.ac-aviso-card.fixado{border-left-color:var(--gold);background:rgba(201,168,76,.06)}
.ac-aviso-card.ac-aviso-live{border-left-color:#ef4444}
.ac-aviso-card.ac-aviso-modulo{border-left-color:#22c55e}
.ac-aviso-card.ac-aviso-aviso{border-left-color:var(--gold)}
.ac-aviso-card-hdr{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}
.ac-aviso-badge{font-size:10px;font-weight:700;color:rgba(255,255,255,.7);background:rgba(255,255,255,.08);padding:2px 8px;border-radius:99px}
.ac-aviso-pin{font-size:10px;color:var(--gold)}
.ac-aviso-data{font-size:10px;color:rgba(255,255,255,.35);margin-left:auto}
.ac-aviso-titulo{font-size:14px;font-weight:600;color:#fff;margin-bottom:4px;line-height:1.35}
.ac-aviso-conteudo{font-size:13px;color:rgba(255,255,255,.6);line-height:1.6;white-space:pre-wrap}
@media(max-width:768px){.ac-avisos-wrap{margin:12px 16px 0}}

/* ── Rodapé Academy ─────────────────────────────────────────── */
.ac-footer,.dc-footer{background:#0a1525;border-top:1px solid rgba(201,168,76,.12);padding:20px 24px;margin-top:auto}
.ac-footer-inner,.dc-footer-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:8px;justify-content:center;flex-wrap:wrap;font-size:12px;color:rgba(255,255,255,.35)}
.ac-footer-brand,.dc-footer-brand{font-family:Georgia,'Times New Roman',serif;font-weight:700;color:rgba(201,168,76,.6);font-size:13px}
.ac-footer-sep,.dc-footer-sep{color:rgba(201,168,76,.3)}
.ac-footer-verse,.dc-footer-verse{font-style:italic;color:rgba(201,168,76,.55);letter-spacing:.04em}
@media(max-width:480px){.ac-footer-inner,.dc-footer-inner{flex-direction:column;gap:4px;text-align:center}}

/* ── Botão Iniciar/Continuar curso ──────────────────────────── */
.ac-retomar-btn{width:100%;margin-top:10px;padding:11px 16px;background:linear-gradient(135deg,#c9a84c,#e8c96a);color:#0f1e35;font-weight:700;font-size:13px;border:none;border-radius:9px;cursor:pointer;font-family:'Segoe UI',Arial,sans-serif;transition:opacity .2s}
.ac-retomar-btn:hover{opacity:.88}

/* ── Materiais complementares (player) ──────────────────────── */
.ac-materiais-wrap{margin:16px 0 0;background:#0f1e35;border:1px solid rgba(201,168,76,.18);border-radius:10px;overflow:hidden}
.ac-materiais-hdr{padding:10px 16px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(201,168,76,.8);border-bottom:1px solid rgba(201,168,76,.1)}
.ac-mat-item{display:flex;align-items:center;gap:10px;padding:10px 16px;text-decoration:none;color:rgba(255,255,255,.85);font-size:13px;border-bottom:1px solid rgba(255,255,255,.05);transition:background .15s}
.ac-mat-item:last-child{border-bottom:none}
.ac-mat-item:hover{background:rgba(201,168,76,.08);color:#fff}
.ac-mat-icon{font-size:16px;flex:none}
.ac-mat-titulo{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-mat-baixar{flex:none;font-size:14px;opacity:.45}

/* ── Material vinculado da Biblioteca (card destacado) ───────── */
.ac-mat-biblioteca{display:flex;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;color:#fff;background:linear-gradient(135deg,rgba(201,168,76,.12),rgba(201,168,76,.04));border-bottom:1px solid rgba(201,168,76,.18);transition:background .18s,transform .18s;cursor:pointer}
.ac-mat-biblioteca:last-child{border-bottom:none}
.ac-mat-biblioteca:hover{background:linear-gradient(135deg,rgba(201,168,76,.22),rgba(201,168,76,.08));transform:translateY(-1px)}
.ac-mat-biblioteca-icon{font-size:32px;flex:none;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(201,168,76,.15);border:1px solid rgba(201,168,76,.3);border-radius:10px}
.ac-mat-biblioteca-info{flex:1;min-width:0}
.ac-mat-biblioteca-tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--gold,#d4af37);margin-bottom:4px}
.ac-mat-biblioteca-titulo{font-family:'Playfair Display',serif;font-size:15px;font-weight:700;color:#fff;line-height:1.3;margin-bottom:4px}
.ac-mat-biblioteca-desc{font-size:12px;color:rgba(255,255,255,.6);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ac-mat-biblioteca-meta{font-size:11px;color:rgba(255,255,255,.45);margin-top:5px}
.ac-mat-biblioteca-btn{flex:none;padding:8px 14px;background:var(--gold,#d4af37);color:var(--navy,#0a1929);border-radius:7px;font-size:12px;font-weight:700;white-space:nowrap;transition:background .15s}
.ac-mat-biblioteca:hover .ac-mat-biblioteca-btn{background:#f1d57a}

/* ── Visualizador de Ebook (modal markdown) ────────────────── */
.ac-modal-ebook-overlay{z-index:9995}
.ac-modal-ebook{max-width:880px;max-height:94vh;background:#fbf8f2}
.ac-modal-ebook .ac-modal-body{padding:0;background:#fbf8f2}
.ac-modal-ebook .ac-modal-header{background:linear-gradient(135deg,var(--navy,#0a1929),var(--navy2,#0f2a44))}
.ac-ebook-content{padding:32px clamp(20px,5vw,56px);font-family:'DM Sans','Inter',system-ui,sans-serif;color:#1a2a3e;line-height:1.7;max-width:720px;margin:0 auto;font-size:15px}
.ac-ebook-content > *:first-child{margin-top:0}
.ac-ebook-h1{font-family:'Playfair Display',serif;font-size:30px;font-weight:800;color:var(--navy,#0a1929);margin:0 0 22px;line-height:1.2;border-bottom:3px solid var(--gold,#d4af37);padding-bottom:14px}
.ac-ebook-h2{font-family:'Playfair Display',serif;font-size:24px;font-weight:700;color:var(--navy,#0a1929);margin:32px 0 14px;line-height:1.25}
.ac-ebook-h3{font-family:'Playfair Display',serif;font-size:19px;font-weight:700;color:var(--navy,#0a1929);margin:24px 0 10px;line-height:1.3}
.ac-ebook-h4{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:700;color:var(--navy,#0a1929);margin:18px 0 8px;text-transform:uppercase;letter-spacing:.04em}
.ac-ebook-h5,.ac-ebook-h6{font-size:14px;font-weight:700;color:var(--navy,#0a1929);margin:16px 0 8px}
.ac-ebook-p{margin:0 0 14px}
.ac-ebook-ul,.ac-ebook-ol{margin:0 0 16px;padding-left:22px}
.ac-ebook-ul li,.ac-ebook-ol li{margin-bottom:6px}
.ac-ebook-bq{margin:18px 0;padding:14px 18px;background:rgba(201,168,76,.08);border-left:4px solid var(--gold,#d4af37);border-radius:0 8px 8px 0;color:#3a4a5e;font-size:14px}
.ac-ebook-bq p{margin:0}
.ac-ebook-hr{border:none;border-top:1px solid rgba(10,25,41,.12);margin:28px 0}
.ac-ebook-ic{background:rgba(10,25,41,.06);padding:1px 6px;border-radius:4px;font-family:'JetBrains Mono','Menlo',monospace;font-size:13px;color:#0a1929}
.ac-ebook-code{background:#0f1e35;color:#e8eef7;padding:14px 16px;border-radius:8px;overflow-x:auto;font-family:'JetBrains Mono','Menlo',monospace;font-size:13px;line-height:1.55;margin:16px 0}
.ac-ebook-code code{background:transparent;padding:0;color:inherit}
.ac-ebook-tabela{width:100%;border-collapse:collapse;margin:18px 0;background:#fff;border:1px solid rgba(10,25,41,.12);border-radius:8px;overflow:hidden;font-size:13px}
.ac-ebook-tabela th{background:var(--navy,#0a1929);color:#fff;padding:10px 12px;text-align:left;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.ac-ebook-tabela td{padding:10px 12px;border-top:1px solid rgba(10,25,41,.08);vertical-align:top}
.ac-ebook-tabela tr:nth-child(even) td{background:rgba(201,168,76,.04)}
.ac-ebook-content strong{color:var(--navy,#0a1929);font-weight:700}
.ac-ebook-content em{color:#3a4a5e}
.ac-ebook-content a{color:var(--gold,#d4af37);text-decoration:underline;text-underline-offset:2px}
.ac-ebook-content a:hover{color:#a98430}
.ac-ebook-erro{padding:40px 30px;text-align:center;color:#3a4a5e}
.ac-ebook-erro p{margin:0 0 8px}

/* Ações no header do viewer (imprimir + fechar) */
.ac-ebook-acoes{display:flex;align-items:center;gap:8px}
.ac-ebook-btn-print{background:rgba(212,175,55,.18);border:1px solid rgba(212,175,55,.45);color:var(--gold,#d4af37);padding:6px 12px;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s,color .15s;font-family:inherit}
.ac-ebook-btn-print:hover{background:var(--gold,#d4af37);color:var(--navy,#0a1929)}

@media(max-width:640px){
  .ac-modal-ebook{max-height:96vh;border-radius:0}
  .ac-ebook-content{padding:22px 18px;font-size:14px}
  .ac-ebook-h1{font-size:24px}
  .ac-ebook-h2{font-size:20px}
  .ac-ebook-h3{font-size:17px}
  .ac-mat-biblioteca{flex-direction:column;align-items:flex-start;gap:10px;padding:14px}
  .ac-mat-biblioteca-btn{width:100%;text-align:center}
  .ac-ebook-btn-print{font-size:11px;padding:5px 9px}
}

/* ── Print: isola o conteúdo do ebook para "Salvar como PDF" ─ */
@media print {
  body.ac-printing-ebook *{visibility:hidden !important}
  body.ac-printing-ebook #ac-modal-ebook,
  body.ac-printing-ebook #ac-modal-ebook *{visibility:visible !important}
  body.ac-printing-ebook #ac-modal-ebook{
    position:absolute !important;
    left:0 !important; top:0 !important;
    width:100% !important; height:auto !important;
    background:#fff !important;
    padding:0 !important; margin:0 !important;
    display:block !important;
    overflow:visible !important;
  }
  body.ac-printing-ebook .ac-modal-ebook{
    max-width:100% !important; max-height:none !important;
    box-shadow:none !important; border-radius:0 !important;
    background:#fff !important;
    display:block !important;
  }
  body.ac-printing-ebook .ac-modal-header,
  body.ac-printing-ebook .ac-modal-close,
  body.ac-printing-ebook .ac-ebook-acoes{display:none !important}
  body.ac-printing-ebook .ac-modal-body{
    overflow:visible !important;
    padding:0 !important;
    background:#fff !important;
  }
  body.ac-printing-ebook .ac-ebook-content{
    max-width:none !important;
    padding:0 1.2cm !important;
    color:#000 !important;
    font-size:11pt !important;
    line-height:1.55 !important;
  }
  body.ac-printing-ebook .ac-ebook-h1{
    font-size:22pt !important; color:#0a1929 !important;
    border-bottom-color:#d4af37 !important;
    page-break-before:auto; page-break-after:avoid;
  }
  body.ac-printing-ebook .ac-ebook-h2{
    font-size:16pt !important; color:#0a1929 !important;
    page-break-before:auto; page-break-after:avoid;
    margin-top:18pt !important;
  }
  body.ac-printing-ebook .ac-ebook-h3{font-size:13pt !important; page-break-after:avoid}
  body.ac-printing-ebook .ac-ebook-h4,
  body.ac-printing-ebook .ac-ebook-h5,
  body.ac-printing-ebook .ac-ebook-h6{page-break-after:avoid}
  body.ac-printing-ebook .ac-ebook-p,
  body.ac-printing-ebook .ac-ebook-ul,
  body.ac-printing-ebook .ac-ebook-ol{orphans:3; widows:3}
  body.ac-printing-ebook .ac-ebook-tabela{page-break-inside:avoid}
  body.ac-printing-ebook .ac-ebook-bq{
    background:#f5f0e0 !important; color:#1a2a3e !important;
    page-break-inside:avoid;
  }
  body.ac-printing-ebook .ac-ebook-code{
    background:#f0f0f0 !important; color:#000 !important;
    page-break-inside:avoid;
  }
  @page { margin: 1.6cm 1.2cm; }
}

/* ── Materiais admin (modal de aula) ────────────────────────── */
.ac-ma-mats-lista{display:flex;flex-direction:column;gap:6px}
.ac-mat-admin-row{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:7px;padding:6px 8px}
.ac-mat-admin-row select,.ac-mat-admin-row input{background:#0f1e35;border:1px solid rgba(255,255,255,.15);border-radius:5px;color:#fff;padding:5px 8px;font-size:12px}

/* ── Certificado: URL de verificação ────────────────────────── */
.ac-cert-verificar{margin-top:6px;font-size:10px;color:#aaa;text-align:center;word-break:break-all}

/* ── Anotações pessoais por aula ────────────────────────────── */
.ac-anotacao-wrap{margin:20px 0 0;background:#0d1b2e;border:1px solid rgba(201,168,76,.18);border-radius:10px;overflow:hidden}
.ac-anotacao-hdr{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;font-size:12px;font-weight:600;color:rgba(201,168,76,.8);border-bottom:1px solid rgba(201,168,76,.1)}
.ac-anotacao-status{font-size:11px;font-weight:400;color:rgba(255,255,255,.4)}
.ac-anotacao-textarea{width:100%;min-height:120px;padding:14px 16px;background:transparent;border:none;color:rgba(255,255,255,.85);font-size:13px;line-height:1.65;resize:vertical;font-family:'Segoe UI',Arial,sans-serif;box-sizing:border-box;outline:none}
.ac-anotacao-textarea::placeholder{color:rgba(255,255,255,.25)}

/* ── Drip content — módulo bloqueado ────────────────────────── */
.ac-modulo-drip .ac-modulo-titulo-hdr{opacity:.6;cursor:default!important}
.ac-modulo-drip-badge{font-size:11px;font-weight:600;color:#f59e0b;background:rgba(245,158,11,.12);padding:3px 10px;border-radius:99px;white-space:nowrap}

/* ── Q&A — resposta do admin ────────────────────────────────── */
.ac-com-resposta{margin:8px 0 0 32px;background:rgba(201,168,76,.07);border-left:3px solid rgba(201,168,76,.5);border-radius:0 8px 8px 0;padding:10px 14px}
.ac-com-resp-hdr{font-size:11px;font-weight:700;color:#c9a84c;margin-bottom:4px;text-transform:uppercase;letter-spacing:.06em}
.ac-com-resp-conteudo{font-size:13px;color:rgba(255,255,255,.75);line-height:1.6;white-space:pre-wrap}
.ac-com-responder-btn{background:transparent;border:1px solid rgba(201,168,76,.35);color:#c9a84c;font-size:11px;font-weight:600;padding:3px 10px;border-radius:6px;cursor:pointer;margin-right:6px;transition:background .15s}
.ac-com-responder-btn:hover{background:rgba(201,168,76,.12)}
.ac-reply-form{margin-top:8px;display:flex;flex-direction:column;gap:6px}
.ac-reply-textarea{background:#0d1b2e;border:1px solid rgba(201,168,76,.25);border-radius:7px;color:#fff;font-size:13px;padding:10px 12px;line-height:1.5;resize:vertical;min-height:70px;font-family:'Segoe UI',Arial,sans-serif;outline:none}

/* ── Busca global ───────────────────────────────────────────── */
.ac-busca-wrap{max-width:760px;margin:0 auto;padding:32px 24px 48px}
.ac-busca-hdr{display:flex;align-items:center;gap:16px;margin-bottom:28px}
.ac-busca-titulo{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:#fff;margin:0}
.ac-busca-input-wrap{position:relative;margin-bottom:28px}
.ac-busca-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:rgba(201,168,76,.6);pointer-events:none}
.ac-busca-input{width:100%;padding:14px 16px 14px 48px;background:#0f1e35;border:1px solid rgba(201,168,76,.3);border-radius:12px;color:#fff;font-size:16px;font-family:'Segoe UI',Arial,sans-serif;outline:none;box-sizing:border-box;transition:border-color .2s}
.ac-busca-input:focus{border-color:rgba(201,168,76,.7)}
.ac-busca-input::placeholder{color:rgba(255,255,255,.3)}
.ac-busca-hint{color:rgba(255,255,255,.35);font-size:14px;text-align:center;padding:32px 0}
.ac-busca-secao-titulo{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(201,168,76,.7);margin-bottom:10px;margin-top:24px}
.ac-busca-secao-titulo:first-child{margin-top:0}
.ac-busca-cursos{display:flex;flex-direction:column;gap:6px}
.ac-busca-curso-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:#0f1e35;border:1px solid rgba(255,255,255,.08);border-radius:10px;cursor:pointer;text-align:left;color:#fff;transition:border-color .15s,background .15s;width:100%}
.ac-busca-curso-card:hover{border-color:rgba(201,168,76,.4);background:#11223d}
.ac-busca-curso-icon{flex:none;width:36px;height:36px;background:rgba(201,168,76,.1);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#c9a84c}
.ac-busca-curso-info{flex:1;min-width:0}
.ac-busca-curso-titulo{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-busca-curso-cat{font-size:12px;color:rgba(255,255,255,.45);text-transform:capitalize;margin-top:2px}
.ac-busca-aulas{display:flex;flex-direction:column;gap:4px}
.ac-busca-aula-row{display:flex;align-items:center;gap:12px;padding:12px 14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:9px;cursor:pointer;text-align:left;color:#fff;transition:background .15s;width:100%}
.ac-busca-aula-row:hover{background:rgba(201,168,76,.06);border-color:rgba(201,168,76,.2)}
.ac-busca-aula-icon{flex:none;color:rgba(201,168,76,.6)}
.ac-busca-aula-info{flex:1;min-width:0}
.ac-busca-aula-titulo{font-weight:600;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-busca-aula-meta{font-size:11px;color:rgba(255,255,255,.4);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:600px){.ac-busca-wrap{padding:20px 14px 32px}}

/* ── Analytics admin ────────────────────────────────────────── */
.ac-analytics-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}
@media(max-width:900px){.ac-analytics-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.ac-analytics-cards{grid-template-columns:1fr 1fr}}
.ac-analytics-card{background:linear-gradient(135deg,#0d1b2e,#0f2040);border:1px solid rgba(201,168,76,.18);border-radius:12px;padding:20px 18px;text-align:center}
.ac-analytics-card-icon{font-size:26px;margin-bottom:10px}
.ac-analytics-card-value{font-size:32px;font-weight:800;color:#c9a84c;font-family:'Playfair Display',serif;line-height:1}
.ac-analytics-card-label{font-size:11px;color:rgba(255,255,255,.5);margin-top:6px;line-height:1.35}
.ac-analytics-table-wrap{overflow-x:auto;margin-top:8px}
.ac-analytics-bar-wrap{display:flex;align-items:center;gap:8px;min-width:100px}
.ac-analytics-bar{height:6px;background:linear-gradient(90deg,#c9a84c,#e8c96a);border-radius:99px;min-width:2px;flex:none;transition:width .3s}
.ac-analytics-pct{font-size:12px;font-weight:600;color:rgba(255,255,255,.7);white-space:nowrap}

/* ── Linha do Tempo — formulário estruturado ────────────────── */
.tl-evento-row{background:rgba(15,30,53,.4);border:1px solid var(--cream2);border-radius:10px;padding:12px 14px;margin-bottom:8px}
.tl-ev-grid{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-start}
.tl-ev-grid .field{flex:1;min-width:120px}
.tl-ev-grid .field label{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:5px}
.tl-ev-grid .field input,.tl-ev-grid .field select{width:100%;box-sizing:border-box;padding:7px 10px;border-radius:7px;border:1.5px solid var(--cream2);font-family:DM Sans,sans-serif;font-size:13px;background:#fff;color:var(--navy)}
@media(max-width:600px){.tl-ev-grid{flex-direction:column}.tl-ev-grid .field{min-width:0;width:100%}}

/* ── Visual Law: templates rápidos de fluxograma ──────────── */
.vl-template-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:4px}
@media(max-width:900px){.vl-template-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.vl-template-grid{grid-template-columns:1fr 1fr}}
.vl-template-card{background:#f9f7f2;border:1.5px solid var(--cream2);border-radius:12px;padding:14px 12px;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:4px;transition:border-color .15s,background .15s;font-family:DM Sans,sans-serif}
.vl-template-card:hover{border-color:var(--gold);background:#fdf8ec}
.vl-template-icon{font-size:22px;margin-bottom:4px}
.vl-template-nome{font-size:13px;font-weight:700;color:var(--navy)}
.vl-template-desc{font-size:11px;color:var(--muted);line-height:1.4}

/* ── Ditado por voz: feedback visual no botão de microfone ── */
.vl-voz-ativo{background:var(--gold)!important;border-color:var(--gold)!important;color:var(--navy)!important;animation:vl-voz-pulse 1.4s ease-in-out infinite}
.vl-voz-ativo i,.vl-voz-ativo svg{stroke:var(--navy)!important;color:var(--navy)!important}
@keyframes vl-voz-pulse{0%,100%{box-shadow:0 0 0 0 rgba(201,168,76,.55)}50%{box-shadow:0 0 0 8px rgba(201,168,76,0)}}

/* ── Microfone flutuante anexado a textareas (ditado por voz) ── */
.voz-mic-floating{position:absolute;top:6px;right:6px;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--cream2);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:5;opacity:.55;transition:opacity .15s,border-color .15s,background .15s,box-shadow .15s;color:var(--muted);padding:0}
.voz-mic-floating:hover{opacity:1;border-color:var(--gold);color:var(--navy)}
.voz-mic-floating.vl-voz-ativo{opacity:1}

/* ════════════════════════════════════════════════════════════════
   REPOSITÓRIO DE CONTRATOS (Sprint 1 CLM)
   ════════════════════════════════════════════════════════════════ */
#screen-repo-contratos{padding:0;overflow:auto;display:flex;flex-direction:column}
.rc-wrap{max-width:1280px;margin:0 auto;padding:24px 32px 60px;width:100%;box-sizing:border-box}
/* Hero navy (padronizado com Audiências) */
.rc-hero{background:var(--navy);padding:16px 28px;border-bottom:2px solid rgba(201,168,76,.25);display:flex;align-items:center;gap:16px;flex-shrink:0;flex-wrap:wrap}
.rc-hero-title{display:flex;align-items:center;gap:8px;font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--gold)}
.rc-hero-title i{width:20px;height:20px;stroke:var(--gold);stroke-width:1.5;fill:none}
.rc-hero-sub{font-size:12px;color:rgba(255,255,255,.55);margin-top:2px}
.rc-hero-acts{display:flex;gap:8px;flex-wrap:wrap}
.rc-hero-btn{background:rgba(255,255,255,.08);border:1.5px solid rgba(255,255,255,.18);color:#fff;padding:7px 14px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;font-family:DM Sans,sans-serif;display:inline-flex;align-items:center;gap:6px;transition:all .15s}
.rc-hero-btn:hover{background:rgba(255,255,255,.16);border-color:rgba(201,168,76,.4)}
.rc-hero-btn i{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}
.rc-hero-btn-primary{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.rc-hero-btn-primary:hover{background:#d4b75a;border-color:#d4b75a}
@media (max-width:767px){.rc-hero{padding:14px 16px}.rc-hero-title{font-size:17px}}
.rc-btn-primary{background:var(--navy);color:#fff;border:none;padding:10px 18px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;font-family:DM Sans,sans-serif;display:inline-flex;align-items:center;gap:7px;transition:background .15s}
.rc-btn-primary:hover{background:#1a2b4a}
.rc-btn-primary i{width:15px;height:15px;stroke:currentColor;stroke-width:2;fill:none}
.rc-btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--cream2);padding:10px 18px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;font-family:DM Sans,sans-serif}
.rc-btn-ghost:hover{color:var(--navy);border-color:var(--navy)}
.rc-btn-danger{background:rgba(220,53,69,.1);color:#dc3545;border:1px solid rgba(220,53,69,.25);padding:10px 14px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;font-family:DM Sans,sans-serif;display:inline-flex;align-items:center;gap:6px}
.rc-btn-danger:hover{background:rgba(220,53,69,.18)}
.rc-btn-danger i{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}

.rc-stats{display:grid;grid-template-columns:repeat(auto-fit, minmax(165px, 1fr));gap:12px;margin-bottom:20px}
.rc-stat{background:#fff;border:1px solid var(--cream2);border-radius:10px;padding:12px 14px;min-width:0}
.rc-stat-lbl{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.rc-stat-val{font-family:'Playfair Display',serif;font-size:26px;color:var(--navy);font-weight:700;margin-top:4px;line-height:1.1}
.rc-stat-alert{background:linear-gradient(135deg,#fff7e6,#fff);border-color:rgba(201,168,76,.35)}
.rc-stat-alert .rc-stat-val{color:#9a6f00}
/* Stats com ícone + faixa lateral colorida */
.rc-stat-acc{display:flex;align-items:center;gap:12px;position:relative;overflow:hidden;transition:transform .12s,box-shadow .12s}
.rc-stat-acc:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(15,30,53,.06)}
.rc-stat-acc::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--cream2)}
.rc-stat-ico{width:36px;height:36px;flex-shrink:0;border-radius:9px;background:var(--cream);display:flex;align-items:center;justify-content:center}
.rc-stat-ico i{width:18px;height:18px;stroke-width:2;fill:none}
.rc-stat-info{min-width:0;flex:1;overflow:hidden}
.rc-stat-info .rc-stat-val{margin-top:2px;font-size:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rc-stat-info .rc-stat-lbl{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rc-stat-acc-navy::before{background:var(--navy)}
.rc-stat-acc-navy .rc-stat-ico{background:rgba(15,30,53,.08)} .rc-stat-acc-navy .rc-stat-ico i{stroke:var(--navy)}
.rc-stat-acc-muted::before{background:#9ca3af}
.rc-stat-acc-muted .rc-stat-ico{background:rgba(108,117,125,.1)} .rc-stat-acc-muted .rc-stat-ico i{stroke:#495057}
.rc-stat-acc-blue::before{background:#0d6efd}
.rc-stat-acc-blue .rc-stat-ico{background:rgba(13,110,253,.1)} .rc-stat-acc-blue .rc-stat-ico i{stroke:#0d6efd}
.rc-stat-acc-green::before{background:#198754}
.rc-stat-acc-green .rc-stat-ico{background:rgba(25,135,84,.1)} .rc-stat-acc-green .rc-stat-ico i{stroke:#198754}
.rc-stat-acc-gold::before{background:var(--gold)}
.rc-stat-acc-gold .rc-stat-ico{background:rgba(201,168,76,.15)} .rc-stat-acc-gold .rc-stat-ico i{stroke:var(--gold)}
.rc-stat-acc-gold .rc-stat-val{color:#9a6f00;font-size:18px}
.rc-stat-acc-alert::before{background:#e67e00}
.rc-stat-acc-alert{background:linear-gradient(135deg,#fff7e6,#fff);border-color:rgba(201,168,76,.35)}
.rc-stat-acc-alert .rc-stat-ico{background:rgba(230,126,0,.12)} .rc-stat-acc-alert .rc-stat-ico i{stroke:#e67e00}
.rc-stat-acc-alert .rc-stat-val{color:#9a6f00}

/* Empty state com botões de ação */
.rc-empty-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:700px;margin:18px auto 0}
.rc-empty-act{display:flex;align-items:center;gap:10px;padding:14px 14px;background:#fff;border:1px solid var(--cream2);border-radius:10px;cursor:pointer;text-align:left;transition:border-color .15s,transform .1s;font-family:'DM Sans',sans-serif}
.rc-empty-act:hover{border-color:var(--gold);transform:translateY(-1px)}
.rc-empty-act i{width:22px;height:22px;stroke:var(--gold);stroke-width:1.75;fill:none;flex-shrink:0;margin-bottom:0}
.rc-empty-act span{display:flex;flex-direction:column;gap:2px;text-align:left}
.rc-empty-act b{font-size:13px;color:var(--navy);font-weight:600}
.rc-empty-act small{font-size:11px;color:var(--muted)}

/* Templates modal */
.rc-tpl-lista{display:flex;flex-direction:column;gap:8px;max-height:50vh;overflow-y:auto}
.rc-tpl-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--cream2);border-radius:10px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}
.rc-tpl-card:hover{border-color:var(--gold);background:#fffdf5}
.rc-tpl-card-ico{width:34px;height:34px;flex-shrink:0;border-radius:9px;background:rgba(201,168,76,.12);display:flex;align-items:center;justify-content:center}
.rc-tpl-card-ico i{width:17px;height:17px;stroke:var(--gold);stroke-width:1.75;fill:none}
.rc-tpl-card-body{flex:1;min-width:0}
.rc-tpl-card-ttl{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rc-tpl-card-meta{font-size:11px;color:var(--muted);display:flex;gap:10px;flex-wrap:wrap}
.rc-tpl-card-meta i{width:11px;height:11px;stroke:currentColor;stroke-width:2;fill:none;vertical-align:middle}
.rc-tpl-card-go{flex-shrink:0;color:var(--muted);font-size:11px;display:flex;align-items:center;gap:4px}
.rc-tpl-card-go i{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}

.rc-filtros{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap}
.rc-busca{flex:1;min-width:240px;padding:10px 14px;border:1px solid var(--cream2);border-radius:8px;font-size:13px;font-family:DM Sans,sans-serif;background:#fff}
.rc-busca:focus{outline:none;border-color:var(--gold)}
.rc-sel{padding:10px 14px;border:1px solid var(--cream2);border-radius:8px;font-size:13px;font-family:DM Sans,sans-serif;background:#fff;color:var(--text);cursor:pointer;min-width:170px}
.rc-sel:focus{outline:none;border-color:var(--gold)}

.rc-lista{display:flex;flex-direction:column;gap:10px}
.rc-card{background:#fff;border:1px solid var(--cream2);border-radius:12px;padding:16px 20px;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .1s}
.rc-card:hover{border-color:var(--gold);box-shadow:0 4px 16px rgba(15,30,53,.08);transform:translateY(-1px)}
.rc-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:6px}
.rc-card-ttl{font-family:'Playfair Display',serif;font-size:15px;color:var(--navy);font-weight:700;line-height:1.3}
.rc-card-badges{display:flex;gap:6px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}
.rc-card-partes{font-size:13px;color:var(--text);margin-bottom:8px}
.rc-muted{color:var(--muted);font-style:italic}
.rc-card-meta{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--muted)}
.rc-meta-item{display:inline-flex;align-items:center;gap:5px}
.rc-meta-item i{width:13px;height:13px;stroke:currentColor;stroke-width:1.75;fill:none}
/* card footer row (aditivos) */
.rc-card-foot{display:flex;align-items:center;gap:8px;margin-top:10px;padding-top:8px;border-top:1px solid var(--cream2)}
.ad-card-btn{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--navy);background:rgba(15,30,53,.06);border:1px solid rgba(15,30,53,.12);padding:4px 10px;border-radius:20px;cursor:pointer;transition:background .15s;font-family:'DM Sans',sans-serif}
.ad-card-btn:hover{background:rgba(15,30,53,.12)}
.ad-card-btn i{width:12px;height:12px;stroke:currentColor;stroke-width:2;fill:none}
.ad-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;background:var(--gold);color:var(--navy);font-size:9px;font-weight:700;border-radius:999px;padding:0 4px}
/* aditivos list in modal */
.ad-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;background:var(--cream);margin-bottom:8px;cursor:pointer;transition:background .15s}
.ad-item:hover{background:var(--cream2)}
.ad-item-num{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:var(--gold);min-width:32px;text-align:center;line-height:1}
.ad-item-body{flex:1;min-width:0}
.ad-item-ttl{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ad-item-meta{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.ad-tipo-badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.04em}
.ad-item-edit-btn{background:none;border:none;cursor:pointer;color:var(--muted);padding:4px;border-radius:6px;transition:color .15s,background .15s;flex-shrink:0}
.ad-item-edit-btn:hover{color:var(--navy);background:rgba(15,30,53,.08)}
.ad-item-edit-btn i{width:15px;height:15px;stroke:currentColor;stroke-width:1.75;fill:none;display:block}
/* Sprint 6: ZapSign no repositório */
.rc-zap-link{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:#1D9E75;text-decoration:none;background:rgba(29,158,117,.1);border:1px solid rgba(29,158,117,.25);padding:4px 10px;border-radius:20px;transition:background .15s}
.rc-zap-link:hover{background:rgba(29,158,117,.2)}
.rc-zap-link i{width:12px;height:12px;stroke:currentColor;stroke-width:2;fill:none}
.zap-sig-row{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin-bottom:8px;align-items:center}
.zap-sig-nome,.zap-sig-email{padding:8px 10px;border:1.5px solid var(--cream2);border-radius:8px;font-family:'DM Sans',sans-serif;font-size:13px;color:var(--navy);background:#fff;outline:none;transition:border-color .15s}
.zap-sig-nome:focus,.zap-sig-email:focus{border-color:var(--gold)}
.zap-sig-del{background:none;border:none;cursor:pointer;color:var(--muted);padding:6px;border-radius:6px;transition:color .15s}
.zap-sig-del:hover{color:#e74c3c}
.zap-sig-del i{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none;display:block}
/* Sprint 7: histórico de versões */
.cv-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;background:var(--cream);margin-bottom:8px}
.cv-item-num{font-family:'Playfair Display',serif;font-size:15px;font-weight:700;color:var(--gold);min-width:28px;text-align:center}
.cv-item-body{flex:1;min-width:0}
.cv-item-ttl{font-size:13px;font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}
.cv-item-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.cv-status-badge{font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px;background:var(--cream2);color:var(--muted)}
.cv-restore-btn{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--navy);background:rgba(15,30,53,.07);border:1px solid rgba(15,30,53,.15);padding:5px 10px;border-radius:8px;cursor:pointer;white-space:nowrap;font-family:'DM Sans',sans-serif;transition:background .15s;flex-shrink:0}
.cv-restore-btn:hover{background:rgba(15,30,53,.14)}
.cv-restore-btn i{width:13px;height:13px;stroke:currentColor;stroke-width:2;fill:none}

.rc-badge{display:inline-block;font-size:10px;font-weight:600;padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.rc-badge-rascunho{background:rgba(108,117,125,.12);color:#495057}
.rc-badge-enviado{background:rgba(13,110,253,.12);color:#0d6efd}
.rc-badge-assinado{background:rgba(25,135,84,.12);color:#198754}
.rc-badge-vigente{background:rgba(25,135,84,.18);color:#0f5132;border:1px solid rgba(25,135,84,.3)}
.rc-badge-encerrado{background:rgba(108,117,125,.18);color:#495057}
.rc-badge-cancelado{background:rgba(220,53,69,.12);color:#dc3545}
.rc-badge-revisao{background:rgba(111,66,193,.12);color:#6f42c1}
.rc-badge-aviso{background:rgba(201,168,76,.15);color:#9a6f00}
.rc-badge-alerta{background:rgba(255,140,0,.15);color:#cc6f00}
.rc-badge-vencido{background:rgba(220,53,69,.18);color:#dc3545}

/* ── Dashboard CLM ─────────────────────────────────────────── */
.clm-dash-section{margin-bottom:24px}
.clm-dash-sh{font-size:12px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.08em;display:flex;align-items:center;gap:6px;margin-bottom:12px}
.clm-dash-sh i{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}
.clm-pipeline-dash{display:flex;align-items:flex-end;gap:0;background:var(--cream);border-radius:12px;padding:20px 16px;overflow-x:auto}
.clm-pd-step{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:72px;flex:1}
.clm-pd-count{font-size:26px;font-weight:800;color:var(--navy);line-height:1}
.clm-pd-bar{height:60px;width:100%;display:flex;align-items:flex-end;justify-content:center}
.clm-pd-bar-fill{width:70%;border-radius:4px 4px 0 0;background:var(--gold);opacity:.55;transition:height .4s}
.clm-pd-lbl{font-size:10px;font-weight:600;color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.05em}
.clm-pd-arrow{display:flex;align-items:center;color:var(--cream2);padding:0 2px;flex-shrink:0;margin-bottom:16px}
.clm-pd-arrow i{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none}
.clm-pd-rascunho .clm-pd-bar-fill{background:#9ca3af}
.clm-pd-revisao  .clm-pd-bar-fill{background:#6f42c1}
.clm-pd-enviado  .clm-pd-bar-fill{background:#0d6efd}
.clm-pd-assinado .clm-pd-bar-fill{background:#198754}
.clm-pd-vigente  .clm-pd-bar-fill{background:#0f5132;opacity:.8}
.clm-pd-encerrado .clm-pd-bar-fill{background:#495057}
.clm-dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.clm-dash-card{background:var(--cream);border-radius:12px;padding:16px 18px;border:1px solid var(--cream2)}
.clm-dash-card-valor{grid-column:1/-1}
.clm-dash-ch{font-size:11px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.07em;display:flex;align-items:center;gap:6px;margin-bottom:12px}
.clm-dash-ch i{width:13px;height:13px;stroke:currentColor;stroke-width:2;fill:none}
.clm-dash-empty{font-size:12px;color:var(--muted);text-align:center;padding:12px 0}
.clm-tipo-row{display:flex;align-items:center;gap:10px;padding:5px 0;border-bottom:1px solid var(--cream2);font-size:12px}
.clm-tipo-lbl{flex:0 0 110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-weight:500;text-transform:capitalize}
.clm-tipo-bar-wrap{flex:1;background:rgba(15,30,53,.07);border-radius:3px;height:7px;overflow:hidden}
.clm-tipo-bar{height:100%;background:var(--gold);border-radius:3px;transition:width .4s}
.clm-tipo-cnt{flex:0 0 28px;text-align:right;color:var(--muted);font-weight:600}
.clm-venc-row{display:flex;align-items:center;gap:12px;padding:7px 10px;border-radius:8px;cursor:pointer;transition:background .12s;margin-bottom:4px}
.clm-venc-row:hover{background:rgba(15,30,53,.04)}
.clm-venc-dias{font-size:13px;font-weight:800;min-width:32px;text-align:center}
.clm-venc-ttl{font-size:12px;font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}
.clm-venc-sub{font-size:11px;color:var(--muted)}
.clm-venc-ok .clm-venc-dias{color:#198754}
.clm-venc-alerta .clm-venc-dias{color:#e67e00}
.clm-venc-critico .clm-venc-dias{color:#dc3545}
.clm-venc-critico{background:rgba(220,53,69,.04);border:1px solid rgba(220,53,69,.12)}
.clm-valor-num{font-family:'Playfair Display',serif;font-size:32px;font-weight:700;color:var(--navy);letter-spacing:-.01em}

/* ── Workflow de aprovação ─────────────────────────────────── */
.clm-workflow-strip{display:flex;align-items:center;background:var(--cream);border-radius:10px;padding:10px 14px;margin-bottom:16px;overflow-x:auto;gap:0}
.clm-ws-step{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:64px;flex:1}
.clm-ws-dot{width:12px;height:12px;border-radius:50%;background:var(--cream2);border:2px solid var(--cream2);transition:background .2s,border-color .2s}
.clm-ws-lbl{font-size:9px;font-weight:600;text-align:center;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.clm-ws-done .clm-ws-dot{background:#198754;border-color:#198754}
.clm-ws-done .clm-ws-lbl{color:#198754}
.clm-ws-active .clm-ws-dot{background:var(--gold);border-color:var(--gold);width:16px;height:16px;box-shadow:0 0 0 3px rgba(201,168,76,.25)}
.clm-ws-active .clm-ws-lbl{color:var(--navy);font-weight:700}
.clm-ws-arrow{display:flex;align-items:center;color:var(--cream2);padding:0 2px;flex-shrink:0;margin-bottom:16px}
.clm-ws-arrow i{width:12px;height:12px;stroke:currentColor;stroke-width:2;fill:none}
.clm-btn-devolver{color:#6f42c1;border-color:rgba(111,66,193,.3)}
.clm-btn-devolver:hover{background:rgba(111,66,193,.07)}
.clm-btn-avancar{background:var(--navy);color:#fff}
.clm-btn-avancar:hover{background:#0f2240}
@media (max-width:767px){.clm-dash-grid{grid-template-columns:1fr} .clm-dash-card-valor{grid-column:unset}}

.rc-empty{text-align:center;padding:60px 20px;color:var(--muted)}
.rc-empty i{width:48px;height:48px;stroke:var(--cream2);stroke-width:1.25;fill:none;margin-bottom:14px}
.rc-empty h3{font-family:'Playfair Display',serif;font-size:18px;color:var(--navy);font-weight:700;margin-bottom:8px}
.rc-empty p{font-size:13px;max-width:480px;margin:0 auto;line-height:1.6}
.rc-empty-msg{padding:30px;text-align:center;color:var(--muted);font-size:13px}
.rc-empty-msg code{background:#f4f4f4;padding:2px 6px;border-radius:4px;font-size:12px}

.rc-modal{position:fixed;inset:0;background:rgba(15,30,53,.55);z-index:9000;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(2px)}
.rc-modal-box{background:#fff;border-radius:14px;width:100%;max-width:760px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.rc-modal-header{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid var(--cream2)}
.rc-modal-ttl{font-family:'Playfair Display',serif;font-size:18px;color:var(--navy);font-weight:700}
.rc-modal-x{background:transparent;border:none;color:var(--muted);cursor:pointer;padding:6px;border-radius:6px;display:flex;align-items:center;justify-content:center}
.rc-modal-x:hover{background:var(--cream);color:var(--navy)}
.rc-modal-x i{width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none}
.rc-modal-body{padding:20px 24px;overflow-y:auto;flex:1}
.rc-modal-foot{display:flex;gap:10px;align-items:center;padding:14px 24px;border-top:1px solid var(--cream2)}
.rc-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.rc-field-wide{grid-column:1/-1}
.rc-field label{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:5px}
.rc-field input,.rc-field select,.rc-field textarea{width:100%;padding:9px 12px;border:1px solid var(--cream2);border-radius:7px;font-size:13px;font-family:DM Sans,sans-serif;background:#fff;color:var(--text);box-sizing:border-box}
.rc-field input:focus,.rc-field select:focus,.rc-field textarea:focus{outline:none;border-color:var(--gold)}
.rc-field textarea{resize:vertical;line-height:1.5;font-family:Georgia,serif}

@media (max-width:767px){
  .rc-wrap{padding:18px 16px 60px}
  .rc-form-grid{grid-template-columns:1fr}
  .rc-modal{padding:0;align-items:stretch}
  .rc-modal-box{max-height:100vh;border-radius:0}
  .rc-empty-actions{grid-template-columns:1fr}
}

/* ── Repositório: tabs de view ───────────────────────────────── */
.rc-views-tabs{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.rc-view-tab{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border-radius:8px;font-size:13px;font-weight:600;font-family:DM Sans,sans-serif;cursor:pointer;border:1px solid var(--cream2);background:#fff;color:var(--muted);transition:all .15s;white-space:nowrap}
.rc-view-tab i{width:15px;height:15px;stroke:currentColor;stroke-width:2;fill:none}
.rc-view-tab.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.rc-view-tab:hover:not(.active){border-color:var(--gold);color:var(--navy)}
.rc-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#dc3545;color:#fff;font-size:10px;font-weight:700;line-height:1}

/* ── Alertas cards ───────────────────────────────────────────── */
.rc-alerta-card{cursor:pointer}
.rc-alerta-row{display:flex;align-items:flex-start;gap:14px}
.rc-alerta-ico{flex-shrink:0;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center}
.rc-alerta-ico i{width:20px;height:20px;stroke:currentColor;stroke-width:1.75;fill:none}
.rc-alerta-info{flex:1;min-width:0}
.rc-alerta-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
.rc-alerta-tipo-badge{flex-shrink:0;font-size:10px;font-weight:600;padding:4px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.05em;align-self:center}
.rc-alerta-tipo-vencimento{background:rgba(220,53,69,.12);color:#dc3545}
.rc-alerta-tipo-reajuste{background:rgba(13,110,253,.1);color:#0d6efd}

.rc-alerta-critico{border-left:4px solid #dc3545!important}
.rc-alerta-critico .rc-alerta-ico{background:rgba(220,53,69,.1);color:#dc3545}
.rc-alerta-critico .rc-alerta-label{color:#dc3545}

.rc-alerta-alerta{border-left:4px solid #e67e00!important}
.rc-alerta-alerta .rc-alerta-ico{background:rgba(230,126,0,.1);color:#e67e00}
.rc-alerta-alerta .rc-alerta-label{color:#e67e00}

.rc-alerta-aviso{border-left:4px solid #9a6f00!important}
.rc-alerta-aviso .rc-alerta-ico{background:rgba(201,168,76,.15);color:#9a6f00}
.rc-alerta-aviso .rc-alerta-label{color:#9a6f00}

/* ── Sprint 3: contratos CLM no drawer do processo ───────────── */
.proc-clm-item{display:flex;align-items:center;gap:8px;background:var(--cream);border-radius:8px;padding:9px 12px;margin-bottom:6px;cursor:pointer;transition:background .15s}
.proc-clm-item:hover{background:rgba(201,168,76,.12)}
.proc-clm-nome{flex:1;font-size:12px;font-weight:600;color:var(--navy);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.proc-clm-meta{font-size:11px;color:var(--muted);white-space:nowrap}

/* ── Sprint 4: upload de contrato + extração IA ──────────────── */
.rc-upload-area{border:2px dashed var(--cream2);border-radius:12px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .15s;background:rgba(15,30,53,.02)}
.rc-upload-area:hover,.rc-upload-area.rc-upload-drag{border-color:var(--gold);background:rgba(201,168,76,.06)}
.rc-upload-ico{margin-bottom:12px}
.rc-upload-ico i{width:42px;height:42px;stroke:var(--gold);stroke-width:1.5;fill:none}
.rc-upload-txt{font-size:14px;font-weight:600;color:var(--navy);margin-bottom:4px}
.rc-upload-sub{font-size:12px;color:var(--muted)}

/* ── Academy — Tutora IA ─────────────────────────────────────── */
.ac-tutor-wrap{background:rgba(255,255,255,.05);border:1px solid rgba(201,168,76,.2);border-radius:12px;margin-bottom:20px;overflow:hidden}
.ac-tutor-hdr{display:flex;align-items:center;gap:8px;padding:14px 18px;cursor:pointer;user-select:none;font-weight:600;font-size:14px;color:#fff;transition:background .15s}
.ac-tutor-hdr:hover{background:rgba(255,255,255,.05)}
.ac-tutor-toggle-ico{margin-left:auto;font-size:11px;opacity:.6}
.ac-tutor-body{padding:0 18px 16px;border-top:1px solid rgba(255,255,255,.08)}
.ac-tutor-aviso{background:rgba(201,168,76,.1);border:1px solid rgba(201,168,76,.25);border-radius:8px;padding:10px 14px;font-size:12px;color:rgba(255,255,255,.7);margin:12px 0;line-height:1.5}
.ac-tutor-rapidas{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 12px}
.ac-tutor-rapida{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.85);border-radius:20px;padding:6px 14px;font-size:12px;font-family:'DM Sans',sans-serif;cursor:pointer;transition:all .15s;white-space:nowrap}
.ac-tutor-rapida:hover{background:rgba(201,168,76,.18);border-color:var(--gold);color:var(--gold)}
.ac-tutor-msgs{display:flex;flex-direction:column;gap:10px;max-height:320px;overflow-y:auto;padding:4px 0;margin-bottom:12px;scroll-behavior:smooth}
.ac-tutor-msgs::-webkit-scrollbar{width:4px}
.ac-tutor-msgs::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:2px}
.ac-tutor-msg{padding:10px 14px;border-radius:10px;font-size:13px;line-height:1.65;max-width:92%}
.ac-tutor-msg-user{background:rgba(201,168,76,.15);border:1px solid rgba(201,168,76,.25);color:var(--gold);align-self:flex-end;border-bottom-right-radius:3px}
.ac-tutor-msg-ia{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.9);align-self:flex-start;border-bottom-left-radius:3px}
.ac-tutor-loading{opacity:.6;font-style:italic}
.ac-tutor-input-row{display:flex;gap:8px;align-items:flex-end}
.ac-tutor-input{flex:1;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:10px 12px;color:#fff;font-family:'DM Sans',sans-serif;font-size:13px;resize:none;min-height:42px;max-height:100px;line-height:1.5;transition:border-color .15s}
.ac-tutor-input:focus{outline:none;border-color:rgba(201,168,76,.5)}
.ac-tutor-input::placeholder{color:rgba(255,255,255,.35)}
.ac-tutor-send{background:var(--gold);color:var(--navy);border:none;border-radius:8px;padding:10px 16px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:700;cursor:pointer;transition:opacity .15s;flex-shrink:0;height:42px}
.ac-tutor-send:hover{opacity:.88}
.ac-tutor-send:disabled{opacity:.4;cursor:not-allowed}
.ac-tutor-credito{font-size:11px;color:rgba(255,255,255,.35);margin-top:8px;text-align:right}
/* Aplicar agora */
.ac-aplicar-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 24px;background:linear-gradient(135deg,var(--gold) 0%,var(--gold2) 100%);color:var(--navy);border-radius:10px;font-weight:700;font-size:14px;font-family:'DM Sans',sans-serif;text-decoration:none;cursor:pointer;transition:opacity .15s,transform .1s;box-shadow:0 4px 16px rgba(201,168,76,.3)}
.ac-aplicar-btn:hover{opacity:.9;transform:translateY(-1px)}

/* ── Academy — Workbook (Cases) ─────────────────────────────── */
.ac-workbook-wrap{background:rgba(255,255,255,.05);border:1px solid rgba(201,168,76,.2);border-radius:12px;margin-bottom:20px;overflow:hidden}
.ac-workbook-hdr{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 18px;font-weight:600;font-size:14px;color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.ac-workbook-count{font-size:11px;color:var(--gold);font-weight:500;background:rgba(201,168,76,.15);padding:3px 9px;border-radius:99px}
.ac-workbook-cases{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;padding:14px 18px}
.ac-case-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:14px;cursor:pointer;transition:all .15s;display:flex;flex-direction:column;gap:8px}
.ac-case-card:hover{background:rgba(201,168,76,.08);border-color:rgba(201,168,76,.35);transform:translateY(-1px)}
.ac-case-card-titulo{font-size:13px;font-weight:700;color:#fff;line-height:1.3}
.ac-case-card-preview{font-size:11px;color:rgba(255,255,255,.55);line-height:1.5;flex:1}
.ac-case-card-footer{display:flex;justify-content:flex-end;margin-top:auto}
.ac-case-status{font-size:11px;font-weight:700;padding:3px 9px;border-radius:99px}
.ac-case-status.pendente{background:rgba(201,168,76,.18);color:var(--gold)}
.ac-case-status.aprovado{background:rgba(34,197,94,.18);color:#22c55e}
.ac-case-status.reprovado{background:rgba(239,68,68,.18);color:#ef4444}

/* Modal responder */
.ac-case-enunciado{background:rgba(255,255,255,.04);border-left:3px solid var(--gold);padding:14px 16px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.88);border-radius:6px;margin-bottom:10px;white-space:pre-wrap}
.ac-case-contexto{background:rgba(255,255,255,.03);border-left:2px solid rgba(255,255,255,.2);padding:10px 14px;font-size:12px;line-height:1.6;color:rgba(255,255,255,.65);border-radius:5px;white-space:pre-wrap}
.ac-case-feedback{margin-top:18px}
.ac-case-loading{padding:24px;text-align:center;font-style:italic;color:rgba(255,255,255,.5);font-size:13px}
.ac-case-erro{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:12px 16px;border-radius:8px;font-size:13px}
.ac-case-result{display:flex;align-items:center;gap:18px;padding:18px 22px;border-radius:10px;margin-bottom:14px}
.ac-case-result.aprovado{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3)}
.ac-case-result.reprovado{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3)}
.ac-case-result-nota{font-family:'Playfair Display',serif;font-size:42px;font-weight:700;line-height:1}
.ac-case-result.aprovado .ac-case-result-nota{color:#22c55e}
.ac-case-result.reprovado .ac-case-result-nota{color:#ef4444}
.ac-case-result-nota span{font-size:18px;opacity:.6}
.ac-case-result-badge{font-size:13px;font-weight:700;color:#fff}
.ac-case-fb-bloco{background:rgba(255,255,255,.04);border-radius:8px;padding:14px 16px;margin-bottom:10px}
.ac-case-fb-titulo{font-size:12px;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}
.ac-case-fb-texto{font-size:13px;line-height:1.7;color:rgba(255,255,255,.85)}
.ac-case-publicar{margin-top:14px;padding:12px;background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.2);border-radius:8px}

/* Admin — lista de cases */
.ac-ma-cases-lista{display:flex;flex-direction:column;gap:6px;margin-top:4px}
.ac-ma-case-row{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:10px 14px}
.ac-ma-case-info{flex:1;min-width:0}
.ac-ma-case-titulo{font-size:13px;font-weight:600;color:#fff;display:flex;align-items:center;gap:6px}
.ac-ma-case-badge{font-size:10px;background:rgba(201,168,76,.2);color:var(--gold);padding:2px 6px;border-radius:99px;font-weight:700}
.ac-ma-case-preview{font-size:11px;color:rgba(255,255,255,.5);margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ac-ma-case-acts{display:flex;gap:4px;flex-shrink:0}
.ac-ma-case-btn{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.7);border-radius:6px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:13px;transition:all .15s}
.ac-ma-case-btn:hover{background:rgba(201,168,76,.15);border-color:var(--gold);color:var(--gold)}

/* ════════════════════════════════════════════════════════════════
   ACADEMY — COMUNIDADE (feed de respostas públicas)
   ════════════════════════════════════════════════════════════════ */
.ac-comu-hero{background:linear-gradient(135deg,#0b1e35 0%,#142a4a 100%);padding:40px 48px 32px;position:relative;overflow:hidden;border-bottom:1px solid rgba(201,168,76,.2)}
.ac-comu-hero::before{content:"";position:absolute;top:-50px;right:-50px;width:300px;height:300px;background:radial-gradient(circle,rgba(201,168,76,.15) 0%,transparent 70%);pointer-events:none}
.ac-comu-hero-inner{max-width:1200px;margin:0 auto;position:relative;z-index:1}
.ac-comu-hero-tag{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;color:var(--gold);background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.3);padding:6px 12px;border-radius:99px;margin-bottom:14px;text-transform:uppercase;letter-spacing:.06em}
.ac-comu-hero h2{font-family:'Playfair Display',serif;font-size:34px;color:#fff;margin:0 0 8px;font-weight:600;letter-spacing:-.01em}
.ac-comu-hero p{font-size:14px;color:rgba(255,255,255,.7);max-width:680px;margin:0;line-height:1.6}

.ac-comu-filtros{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:0 0 22px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:24px}
.ac-comu-filtro{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:99px;font-size:12px;font-weight:600;color:rgba(255,255,255,.65);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .15s}
.ac-comu-filtro:hover{background:rgba(255,255,255,.08);color:#fff}
.ac-comu-filtro.ativo{background:rgba(201,168,76,.18);color:var(--gold);border-color:rgba(201,168,76,.5)}
.ac-comu-curso-sel{margin-left:auto;padding:7px 14px;border-radius:8px;font-size:12px;font-weight:600;color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);cursor:pointer;font-family:'DM Sans',sans-serif;outline:none}
.ac-comu-curso-sel:focus{border-color:var(--gold)}
.ac-comu-curso-sel option{background:#0f1e35;color:#fff}

.ac-comu-feed{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}
.ac-comu-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:18px;cursor:pointer;transition:all .18s;display:flex;flex-direction:column;gap:12px}
.ac-comu-card:hover{background:rgba(201,168,76,.06);border-color:rgba(201,168,76,.35);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.18)}
.ac-comu-card-hdr{display:flex;align-items:center;gap:10px}
.ac-comu-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--gold) 0%,#b8941e 100%);color:#0b1e35;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex-shrink:0}
.ac-comu-autor-wrap{flex:1;min-width:0}
.ac-comu-autor{font-size:13px;font-weight:700;color:#fff;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-comu-meta{font-size:11px;color:rgba(255,255,255,.5);line-height:1.4;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-comu-nota{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;line-height:1;flex-shrink:0}
.ac-comu-nota span{font-size:11px;opacity:.6;font-weight:400}
.ac-comu-nota.aprovado{color:#22c55e}
.ac-comu-nota.reprovado{color:#f59e0b}
.ac-comu-case-titulo{font-size:13px;font-weight:600;color:var(--gold);line-height:1.4}
.ac-comu-preview{font-size:13px;color:rgba(255,255,255,.8);line-height:1.6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.ac-comu-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:8px;border-top:1px solid rgba(255,255,255,.06)}
.ac-comu-data{font-size:11px;color:rgba(255,255,255,.4)}
.ac-comu-curtir{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.65);border-radius:99px;cursor:pointer;font-size:11px;font-weight:600;font-family:'DM Sans',sans-serif;transition:all .15s}
.ac-comu-curtir:hover{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.4);color:#ef4444}
.ac-comu-curtir.on{background:rgba(239,68,68,.18);border-color:rgba(239,68,68,.5);color:#ef4444}
.ac-comu-curtir.on .ac-icon{fill:#ef4444;stroke:#ef4444}
.ac-comu-curtir .ac-icon{width:13px;height:13px}
.ac-comu-curtir-num{font-weight:700}

/* Modal detalhe resposta */
.ac-comu-resp-hdr{display:flex;align-items:center;gap:12px;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08)}
.ac-comu-resp-case-titulo{font-size:14px;font-weight:700;color:var(--gold);margin-bottom:14px}
.ac-comu-resp-texto-bloco{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-left:3px solid var(--gold);border-radius:8px;padding:16px 18px;margin-bottom:18px;font-size:14px;line-height:1.7;color:rgba(255,255,255,.9);white-space:pre-wrap}

/* ════════════════════════════════════════════════════════════════
   ACADEMY — TRILHA DE AULAS (progresso por módulo + próxima aula)
   ════════════════════════════════════════════════════════════════ */
.ac-trilha-continuar{display:flex;align-items:center;gap:16px;padding:18px 22px;background:linear-gradient(135deg,rgba(201,168,76,.18) 0%,rgba(201,168,76,.06) 100%);border:1px solid rgba(201,168,76,.35);border-radius:14px;margin-bottom:18px;cursor:pointer;transition:all .18s}
.ac-trilha-continuar:hover{transform:translateY(-1px);border-color:var(--gold);box-shadow:0 6px 22px rgba(201,168,76,.18)}
.ac-trilha-continuar.bloqueada{cursor:default;opacity:.55}
.ac-trilha-continuar.bloqueada:hover{transform:none;box-shadow:none}
.ac-trilha-continuar-ico{font-size:28px;width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,var(--gold) 0%,#b8941e 100%);color:#0b1e35;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:700}
.ac-trilha-continuar-info{flex:1;min-width:0}
.ac-trilha-continuar-lbl{font-size:11px;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}
.ac-trilha-continuar-titulo{font-size:16px;font-weight:700;color:#fff;line-height:1.3;margin-bottom:4px}
.ac-trilha-continuar-meta{font-size:12px;color:rgba(255,255,255,.55)}
.ac-trilha-continuar-cta{font-size:12px;font-weight:700;color:var(--gold);flex-shrink:0;padding:7px 14px;border:1px solid rgba(201,168,76,.4);border-radius:99px;background:rgba(201,168,76,.08)}

.ac-modulo-banner{width:100%;aspect-ratio:16/9;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.06)}
.ac-modulo-banner img{width:100%;height:100%;object-fit:cover;display:block}
.ac-modulo-prog{height:3px;background:rgba(255,255,255,.06);overflow:hidden}
.ac-modulo-prog-fill{height:100%;background:linear-gradient(90deg,var(--gold) 0%,#e0c067 100%);transition:width .5s ease}
.ac-modulo-bloco.ac-modulo-completo .ac-modulo-prog-fill{background:linear-gradient(90deg,#22c55e 0%,#16a34a 100%)}
.ac-modulo-bloco.ac-modulo-completo .ac-modulo-titulo-hdr{background:rgba(34,197,94,.06)}
.ac-modulo-check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#22c55e;color:#fff;font-size:11px;font-weight:700;margin-left:4px}

.ac-aula-item.proxima{background:rgba(201,168,76,.08);border-left:3px solid var(--gold)}
.ac-aula-item.proxima:hover{background:rgba(201,168,76,.14)}
.ac-aula-proxima-badge{display:inline-block;font-size:10px;font-weight:700;color:var(--gold);background:rgba(201,168,76,.18);padding:2px 7px;border-radius:99px;margin-left:6px;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}

@media (max-width:720px){
  .ac-comu-hero{padding:28px 20px 22px}
  .ac-comu-hero h2{font-size:24px}
  .ac-comu-filtros{padding-bottom:16px;margin-bottom:18px}
  .ac-comu-curso-sel{margin-left:0;width:100%}
  .ac-comu-feed{grid-template-columns:1fr;gap:12px}
  .ac-trilha-continuar{padding:14px 16px;gap:12px}
  .ac-trilha-continuar-ico{width:44px;height:44px;font-size:22px}
  .ac-trilha-continuar-titulo{font-size:14px}
  .ac-trilha-continuar-cta{display:none}
}

/* ════════════════════════════════════════════════════════════════
   ACADEMY — ADMIN MODAL (light mode) — fix contraste
   O modal tem fundo branco. Elementos criados com cores escuras
   (Aplicar Agora, Workbook) ficavam invisíveis.
   ════════════════════════════════════════════════════════════════ */

/* Select da ferramenta "Aplicar agora" */
.ac-modal-body .ac-ma-ferramenta-sel{
  background:#fff;border:1.5px solid var(--cream2);color:var(--text);
  border-radius:8px;padding:9px 12px;outline:none;transition:border-color .15s;
}
.ac-modal-body .ac-ma-ferramenta-sel:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.1)}

/* Botões "+ Adicionar case" / "+ Adicionar material" dentro do modal */
.ac-modal-body .ac-btn-nav{
  background:#f5f0e8;color:var(--navy);border:1.5px solid var(--cream2);
}
.ac-modal-body .ac-btn-nav:hover{
  background:rgba(201,168,76,.15);border-color:var(--gold);color:var(--navy);
}

/* Empty state dos cases */
.ac-ma-cases-hint{
  font-size:12px;color:#6b7385;background:#fafaf7;border:1px dashed var(--cream2);
  border-radius:8px;padding:10px 14px;line-height:1.5;
}
.ac-ma-cases-hint strong{color:var(--navy);font-weight:700}

/* Linhas de cases existentes — versão light */
.ac-ma-cases-lista .ac-ma-case-row{
  background:#fafaf7;border:1px solid var(--cream2);
}
.ac-ma-cases-lista .ac-ma-case-titulo{color:var(--navy)}
.ac-ma-cases-lista .ac-ma-case-preview{color:#6b7385}
.ac-ma-cases-lista .ac-ma-case-badge{background:rgba(201,168,76,.18);color:#a07a1f}
.ac-ma-cases-lista .ac-ma-case-btn{
  background:#fff;border:1px solid var(--cream2);color:var(--navy);
}
.ac-ma-cases-lista .ac-ma-case-btn:hover{
  background:rgba(201,168,76,.12);border-color:var(--gold);color:var(--navy);
}

/* ════════════════════════════════════════════════════════════════
   ACADEMY — ORÁCULO (mentoria ao vivo)
   ════════════════════════════════════════════════════════════════ */

/* Nav button especial */
.ac-nav-oraculo{background:linear-gradient(135deg,rgba(139,92,246,.25) 0%,rgba(109,40,217,.2) 100%)!important;color:#c4b5fd!important;border:1px solid rgba(139,92,246,.35)!important}
.ac-nav-oraculo:hover{background:linear-gradient(135deg,rgba(139,92,246,.4) 0%,rgba(109,40,217,.3) 100%)!important;color:#ede9fe!important}
.ac-nav-oraculo.ativo{background:linear-gradient(135deg,rgba(139,92,246,.5) 0%,rgba(109,40,217,.45) 100%)!important;color:#fff!important;border-color:rgba(139,92,246,.7)!important}

/* Hero */
.ac-oraculo-hero{background:linear-gradient(135deg,#0b1e35 0%,#1a0b35 60%,#2d1b69 100%);padding:42px 48px 34px;border-bottom:1px solid rgba(139,92,246,.3);position:relative;overflow:hidden}
.ac-oraculo-hero::before{content:"";position:absolute;top:-60px;right:-60px;width:360px;height:360px;background:radial-gradient(circle,rgba(139,92,246,.2) 0%,transparent 70%);pointer-events:none}
.ac-oraculo-hero-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;z-index:1;flex-wrap:wrap}
.ac-oraculo-tag{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;color:#c4b5fd;background:rgba(139,92,246,.15);border:1px solid rgba(139,92,246,.35);padding:6px 12px;border-radius:99px;text-transform:uppercase;letter-spacing:.06em}
.ac-oraculo-hero h2{font-family:'Playfair Display',serif;font-size:34px;color:#fff;margin:10px 0 8px;letter-spacing:-.01em}
.ac-oraculo-hero p{font-size:14px;color:rgba(255,255,255,.7);max-width:600px;line-height:1.6;margin:0}
.ac-oraculo-cta-btn{margin-top:18px;display:inline-block;padding:13px 24px;background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%);color:#fff;font-weight:700;font-size:14px;border-radius:10px;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .18s;box-shadow:0 6px 24px rgba(139,92,246,.4)}
.ac-oraculo-cta-btn:hover{transform:translateY(-2px);box-shadow:0 10px 32px rgba(139,92,246,.5)}
.ac-oraculo-submeter-btn{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;background:rgba(139,92,246,.18);color:#c4b5fd;font-weight:700;font-size:13px;border-radius:10px;border:1px solid rgba(139,92,246,.4);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .18s}
.ac-oraculo-submeter-btn:hover{background:rgba(139,92,246,.3);color:#ede9fe;transform:translateY(-1px)}

/* Próxima sessão */
.ac-oraculo-proxima-card{background:linear-gradient(135deg,rgba(139,92,246,.15) 0%,rgba(109,40,217,.1) 100%);border:1px solid rgba(139,92,246,.35);border-radius:16px;padding:24px 28px;margin-bottom:4px;position:relative;overflow:hidden}
.ac-oraculo-proxima-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#8b5cf6,#6d28d9)}
.ac-oraculo-proxima-card.ao-vivo{border-color:rgba(239,68,68,.5);background:linear-gradient(135deg,rgba(239,68,68,.12) 0%,rgba(139,92,246,.1) 100%)}
.ac-oraculo-proxima-card.ao-vivo::before{background:linear-gradient(90deg,#ef4444,#8b5cf6)}
.ac-oraculo-proxima-hdr{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap}
.ac-oraculo-proxima-tag{font-size:11px;font-weight:700;color:#c4b5fd;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.ac-oraculo-proxima-titulo{font-family:'Playfair Display',serif;font-size:22px;color:#fff;font-weight:600;margin-bottom:6px;line-height:1.3}
.ac-oraculo-proxima-tema{font-size:13px;color:rgba(255,255,255,.6);margin-bottom:6px}
.ac-oraculo-proxima-desc{font-size:13px;color:rgba(255,255,255,.7);line-height:1.6;max-width:560px}
.ac-oraculo-proxima-right{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex-shrink:0}
.ac-oraculo-data-big{font-size:14px;font-weight:700;color:#c4b5fd;text-align:right}
.ac-oraculo-countdown{font-size:28px;font-weight:700;color:#fff;font-family:'Playfair Display',serif;letter-spacing:.02em;text-align:right}
.ac-oraculo-live-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(239,68,68,.2);border:1px solid rgba(239,68,68,.5);color:#fca5a5;font-size:11px;font-weight:700;padding:4px 10px;border-radius:99px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}
.ac-oraculo-live-dot{width:7px;height:7px;border-radius:50%;background:#ef4444;animation:oraculo-pulse 1.4s ease-in-out infinite}
@keyframes oraculo-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}
.ac-oraculo-entrar-btn{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%);color:#fff;font-weight:700;font-size:13px;border-radius:10px;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .18s;text-decoration:none;box-shadow:0 4px 14px rgba(139,92,246,.35)}
.ac-oraculo-entrar-btn.destaque{font-size:14px;padding:13px 24px;box-shadow:0 6px 22px rgba(139,92,246,.45)}
.ac-oraculo-entrar-btn:hover{transform:translateY(-1px);box-shadow:0 8px 28px rgba(139,92,246,.5)}
.ac-oraculo-remind-btn{padding:11px 20px;background:rgba(255,255,255,.06);color:rgba(255,255,255,.45);border:1px solid rgba(255,255,255,.1);border-radius:10px;font-size:13px;cursor:default;font-family:'DM Sans',sans-serif}
.ac-oraculo-sem-sessao{padding:22px;background:rgba(255,255,255,.04);border:1px dashed rgba(255,255,255,.15);border-radius:12px;font-size:14px;color:rgba(255,255,255,.5);display:flex;align-items:center;gap:10px}

/* Sessões anteriores */
.ac-oraculo-sessoes-lista{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.ac-oraculo-sessao-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:14px 18px;display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.ac-oraculo-sessao-data{font-size:11px;color:rgba(255,255,255,.45);flex-shrink:0;min-width:160px}
.ac-oraculo-sessao-titulo{flex:1;font-size:14px;font-weight:600;color:#fff}
.ac-oraculo-sessao-tema{font-size:11px;color:rgba(255,255,255,.45)}

/* Casos grid */
.ac-oraculo-filtros{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.ac-oraculo-casos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;margin-top:16px}
.ac-oraculo-caso-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:18px;cursor:pointer;transition:all .18s;display:flex;flex-direction:column;gap:8px}
.ac-oraculo-caso-card:hover{background:rgba(139,92,246,.08);border-color:rgba(139,92,246,.35);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.18)}
.ac-oraculo-caso-hdr{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ac-oraculo-caso-titulo{font-size:14px;font-weight:700;color:#fff;line-height:1.35}
.ac-oraculo-caso-area{font-size:12px;color:rgba(255,255,255,.5)}
.ac-oraculo-caso-preview{font-size:12px;color:rgba(255,255,255,.65);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex:1}
.ac-oraculo-caso-footer{display:flex;align-items:center;justify-content:space-between;padding-top:8px;border-top:1px solid rgba(255,255,255,.06)}
.ac-oraculo-caso-contribuir{font-size:11px;color:#c4b5fd;font-weight:600}

/* Status badges */
.ac-oraculo-status-badge{display:inline-block;font-size:11px;font-weight:700;padding:3px 9px;border-radius:99px;text-transform:uppercase;letter-spacing:.04em}
.ac-oraculo-status-badge.em_discussao{background:rgba(139,92,246,.2);color:#c4b5fd;border:1px solid rgba(139,92,246,.4)}
.ac-oraculo-status-badge.aprovado{background:rgba(201,168,76,.15);color:var(--gold);border:1px solid rgba(201,168,76,.3)}
.ac-oraculo-status-badge.encerrado{background:rgba(34,197,94,.12);color:#4ade80;border:1px solid rgba(34,197,94,.3)}
.ac-oraculo-status-badge.aguardando{background:rgba(255,255,255,.06);color:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.1)}
.ac-oraculo-tipo-badge{display:inline-block;font-size:10px;color:rgba(255,255,255,.45);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);padding:2px 7px;border-radius:99px}

/* Detalhe do caso (modal) */
.ac-oraculo-caso-detalhe-wrap{display:grid;grid-template-columns:1fr 420px;min-height:500px;max-height:75vh}
.ac-oraculo-caso-enunciado-bloco{padding:22px 24px;border-right:1px solid rgba(255,255,255,.08);overflow-y:auto}
.ac-oraculo-caso-enunciado-meta{display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap}
.ac-oraculo-enunciado-texto{font-size:14px;line-height:1.75;color:rgba(255,255,255,.88);white-space:pre-wrap}
.ac-oraculo-instrucoes{margin-top:20px;background:rgba(139,92,246,.1);border:1px solid rgba(139,92,246,.25);border-radius:10px;padding:14px 16px;font-size:13px;color:rgba(255,255,255,.8);line-height:1.6}
.ac-oraculo-instrucoes-titulo{font-size:11px;font-weight:700;color:#c4b5fd;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}

/* Contribuições (painel direito do modal) */
.ac-oraculo-contrib-secao{display:flex;flex-direction:column;overflow:hidden}
.ac-oraculo-contrib-hdr{padding:14px 18px;font-size:13px;font-weight:700;color:#fff;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.03);flex-shrink:0}
#ac-cd-contribs{flex:1;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:10px}
.ac-oraculo-contrib{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 14px}
.ac-oraculo-contrib-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:8px}
.ac-oraculo-contrib-tipo{font-size:11px;font-weight:700;color:#c4b5fd;background:rgba(139,92,246,.15);border:1px solid rgba(139,92,246,.3);padding:2px 8px;border-radius:99px}
.ac-oraculo-contrib-data{font-size:11px;color:rgba(255,255,255,.35)}
.ac-oraculo-contrib-texto{font-size:13px;line-height:1.65;color:rgba(255,255,255,.85);white-space:pre-wrap}
.ac-oraculo-contrib-footer{display:flex;justify-content:flex-end;margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.05)}
.ac-oraculo-nova-contrib{padding:14px 16px;border-top:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);flex-shrink:0}

/* Admin aguardando */
.ac-oraculo-aguard-row{display:flex;align-items:flex-start;gap:12px;background:#fafaf7;border:1px solid var(--cream2);border-radius:10px;padding:12px 14px;margin-bottom:8px}
.ac-oraculo-aguard-info{flex:1;min-width:0}

@media (max-width:720px){
  .ac-oraculo-hero{padding:28px 20px 22px}
  .ac-oraculo-hero h2{font-size:24px}
  .ac-oraculo-hero-inner{flex-direction:column;align-items:flex-start}
  .ac-oraculo-proxima-hdr{flex-direction:column}
  .ac-oraculo-proxima-right{align-items:flex-start}
  .ac-oraculo-countdown{font-size:20px}
  .ac-oraculo-caso-detalhe-wrap{grid-template-columns:1fr;max-height:none}
  .ac-oraculo-caso-enunciado-bloco{border-right:none;border-bottom:1px solid rgba(255,255,255,.08)}
  .ac-oraculo-casos-grid{grid-template-columns:1fr}
}

/* ══ MODAL UPSELL ORÁCULO ══════════════════════════════════════════ */
.ac-upsell-modal { max-width: 520px; }
.ac-upsell-header { background: linear-gradient(135deg, #4f1d96 0%, #6d28d9 100%); }
.ac-upsell-header .ac-modal-titulo { color: #fff; }
.ac-upsell-header .ac-modal-close { color: rgba(255,255,255,.8); }
.ac-upsell-intro { color: var(--navy); font-size: 14px; line-height: 1.6; margin: 0 0 12px; }
.ac-upsell-features { margin: 0 0 20px; padding: 0 0 0 4px; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.ac-upsell-features li { font-size: 13px; color: #445; }
.ac-upsell-pill { display: inline-block; background: #f0ebff; color: #6d28d9; font-size: 11px; font-weight: 700; letter-spacing: .4px; text-transform: uppercase; padding: 3px 10px; border-radius: 20px; margin-bottom: 10px; }
.ac-upsell-preco { display: flex; align-items: baseline; gap: 4px; margin-bottom: 8px; }
.ac-upsell-preco-sm { margin-bottom: 6px; }
.ac-upsell-valor { font-size: 36px; font-weight: 800; color: var(--navy); line-height: 1; }
.ac-upsell-per { font-size: 14px; color: #778; }
.ac-upsell-desc { font-size: 13px; color: #556; line-height: 1.5; margin: 0 0 14px; }
.ac-upsell-acoes { display: flex; flex-direction: column; gap: 8px; }
.ac-upsell-btn { display: block; padding: 12px 18px; border-radius: 8px; font-size: 14px; font-weight: 600; text-align: center; cursor: pointer; border: none; text-decoration: none; transition: opacity .15s; }
.ac-upsell-btn:hover { opacity: .88; }
.ac-upsell-btn-prim { background: linear-gradient(135deg, #4f1d96 0%, #7c3aed 100%); color: #fff; }
.ac-upsell-btn:not(.ac-upsell-btn-prim) { background: var(--cream2); color: var(--navy); }
.ac-upsell-eco { font-size: 11px; background: #d1fae5; color: #065f46; padding: 1px 6px; border-radius: 10px; margin-left: 6px; font-weight: 600; }
.ac-upsell-nota { font-size: 12px; color: #e67e22; margin: 10px 0 0; line-height: 1.5; }
.ac-upsell-divider { text-align: center; font-size: 12px; color: #aaa; margin: 16px 0; position: relative; }
.ac-upsell-divider::before { content: ''; position: absolute; top: 50%; left: 0; right: 0; height: 1px; background: var(--cream2); z-index: 0; }
.ac-upsell-divider { position: relative; }
.ac-upsell-opcoes-wrap { display: flex; flex-direction: column; gap: 0; }
.ac-upsell-opcao { padding: 16px; border: 1.5px solid var(--cream2); border-radius: 10px; margin-bottom: 2px; }
.ac-upsell-opcao-tag { display: inline-block; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .5px; padding: 2px 8px; border-radius: 10px; margin-bottom: 6px; background: var(--cream2); color: #778; }
.ac-upsell-opcao-tag-destaque { background: #ede9fe; color: #6d28d9; }
.ac-upsell-opcao-titulo { font-size: 16px; font-weight: 700; color: var(--navy); margin-bottom: 2px; }
@media(max-width:520px){
  .ac-upsell-valor{font-size:28px}
  .ac-upsell-btn{font-size:13px}
}

/* Oráculo — linha de vagas na sessão destaque */
.ac-oraculo-proxima-vagas{font-size:12px;color:rgba(255,255,255,.6);margin-top:6px}

/* ══ ORÁCULO — Banner promo nos cursos ═════════════════════════ */
.ac-oraculo-promo-banner{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  background:linear-gradient(135deg,#2d1b6e 0%,#4f1d96 50%,#6d28d9 100%);
  border-radius:14px;padding:24px 28px;margin-bottom:28px;cursor:pointer;
  border:1px solid rgba(255,255,255,.12);
  transition:transform .15s,box-shadow .15s;
}
.ac-oraculo-promo-banner:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(109,40,217,.35)}
.ac-oraculo-promo-left{flex:1;min-width:0}
.ac-oraculo-promo-tag{
  display:inline-block;background:rgba(255,255,255,.15);color:#e9d5ff;
  font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;
  padding:3px 10px;border-radius:20px;margin-bottom:10px;
}
.ac-oraculo-promo-titulo{font-size:22px;font-weight:800;color:#fff;line-height:1.2;margin-bottom:6px}
.ac-oraculo-promo-desc{font-size:13px;color:rgba(255,255,255,.8);line-height:1.5;margin-bottom:12px;max-width:520px}
.ac-oraculo-promo-pills{display:flex;flex-wrap:wrap;gap:8px}
.ac-oraculo-promo-pills span{
  font-size:12px;color:#ddd6fe;
  background:rgba(255,255,255,.1);border-radius:20px;padding:4px 10px;
}
.ac-oraculo-promo-right{flex-shrink:0}
.ac-oraculo-promo-btn{
  background:#fff;color:#4f1d96;font-weight:700;font-size:14px;
  border:none;border-radius:8px;padding:12px 22px;cursor:pointer;
  white-space:nowrap;transition:opacity .15s;
}
.ac-oraculo-promo-btn:hover{opacity:.9}
@media(max-width:600px){
  .ac-oraculo-promo-banner{flex-direction:column;align-items:flex-start}
  .ac-oraculo-promo-titulo{font-size:18px}
  .ac-oraculo-promo-btn{width:100%}
}
/* Variante coluna — card do Oráculo encaixado no grid de cursos */
.ac-oraculo-col{
  flex-direction:column;align-items:stretch;gap:14px;
  margin-bottom:32px;align-self:start;
}
.ac-oraculo-col .ac-oraculo-promo-titulo{font-size:19px}
.ac-oraculo-col .ac-oraculo-promo-desc{max-width:none}
.ac-oraculo-col .ac-oraculo-promo-pills{flex-direction:column;align-items:flex-start}
.ac-oraculo-col .ac-oraculo-promo-right{width:100%}
.ac-oraculo-col .ac-oraculo-promo-btn{width:100%}

/* ══ Upload de material — casos Oráculo ════════════════════════ */
.ac-upload-mat-wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px}
.ac-upload-mat-btn{
  display:inline-flex;align-items:center;gap:5px;padding:7px 14px;
  background:var(--cream2);color:var(--navy);border-radius:6px;font-size:13px;
  font-weight:600;cursor:pointer;border:1.5px solid rgba(15,30,53,.15);
  transition:background .15s;white-space:nowrap;
}
.ac-upload-mat-btn:hover{background:#e2dcd0}
.ac-upload-mat-status{font-size:12px;color:#778;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ac-upload-mat-remover{
  background:none;border:none;color:#e05;font-size:14px;cursor:pointer;
  padding:2px 4px;border-radius:4px;line-height:1;flex-shrink:0;
}
.ac-upload-mat-remover:hover{background:#fff0f0}
.ac-oraculo-material-link{
  display:inline-flex;align-items:center;gap:6px;margin-top:12px;
  padding:8px 14px;background:rgba(255,255,255,.1);border-radius:8px;
  color:#e9d5ff;font-size:13px;font-weight:600;text-decoration:none;
  border:1px solid rgba(255,255,255,.15);transition:background .15s;
}
.ac-oraculo-material-link:hover{background:rgba(255,255,255,.18)}

/* Linha discreta de cross-sell Oráculo no paywall Academy */
.ac-paywall-oraculo-link{
  margin-top:10px;text-align:center;font-size:12px;color:#778;
  cursor:pointer;padding:6px 12px;border-radius:6px;
  transition:color .15s,background .15s;
}
.ac-paywall-oraculo-link strong{color:#6d28d9;font-weight:700}
.ac-paywall-oraculo-link:hover{color:#4f1d96;background:rgba(109,40,217,.06)}

/* ─────────────── Google Agenda Sync — botão + modal ──────────── */
.agenda-gsync-btn{
  padding:6px 12px;background:#fff;color:var(--navy);
  border:1.5px solid var(--cream2);border-radius:7px;
  font-size:12px;font-weight:500;font-family:"DM Sans",sans-serif;
  cursor:pointer;display:inline-flex;align-items:center;gap:6px;
  transition:all .15s;
}
.agenda-gsync-btn:hover{background:var(--cream);border-color:var(--gold)}
.agenda-gsync-btn svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}

.gas-overlay{
  position:fixed;inset:0;background:rgba(15,30,53,.55);
  display:flex;align-items:center;justify-content:center;
  z-index:9999;padding:20px;font-family:"DM Sans",sans-serif;
}
.gas-box{
  background:#fff;width:100%;max-width:560px;max-height:90vh;
  border-radius:14px;overflow:hidden;display:flex;flex-direction:column;
  box-shadow:0 20px 60px rgba(0,0,0,.3);
}
.gas-head{
  background:var(--navy);color:#fff;padding:18px 22px;
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
}
.gas-head-left{display:flex;gap:12px;align-items:flex-start}
.gas-head-left svg{
  width:28px;height:28px;stroke:var(--gold);stroke-width:1.8;fill:none;flex-shrink:0;
}
.gas-title{font-size:16px;font-weight:600;color:var(--gold);line-height:1.2}
.gas-sub{font-size:12px;color:rgba(255,255,255,.7);margin-top:3px;line-height:1.3}
.gas-close{
  background:rgba(255,255,255,.1);border:none;color:#fff;
  width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:14px;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  transition:background .15s;
}
.gas-close:hover{background:rgba(255,255,255,.2)}

.gas-body{padding:20px 22px;overflow-y:auto;color:var(--ink)}
.gas-loading{padding:30px;text-align:center;color:var(--muted);font-size:13px}

.gas-label{
  display:block;font-size:11px;font-weight:600;color:var(--muted);
  text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;
}
.gas-url-row{display:flex;gap:8px;margin-bottom:6px}
.gas-url-row input{
  flex:1;padding:10px 12px;border:1.5px solid var(--cream2);border-radius:7px;
  font-size:12px;font-family:"DM Mono","Menlo",monospace;background:var(--cream);
  color:var(--navy);outline:none;
}
.gas-url-row input:focus{border-color:var(--gold)}
.gas-btn-copiar{
  padding:10px 14px;background:var(--navy);color:#fff;border:none;border-radius:7px;
  font-size:12px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:5px;
  transition:background .15s;font-family:"DM Sans",sans-serif;
}
.gas-btn-copiar:hover{background:var(--navy2)}
.gas-btn-copiar svg{width:13px;height:13px;stroke:currentColor;stroke-width:2;fill:none}

.gas-hint{
  font-size:11px;color:#8a6d3b;background:#fdf5e6;border-left:3px solid #c9a84c;
  padding:8px 12px;border-radius:4px;margin:10px 0 18px;line-height:1.4;
}

.gas-tabs{display:flex;gap:0;border-bottom:1.5px solid var(--cream2);margin-bottom:14px}
.gas-tab{
  flex:1;padding:9px 12px;background:transparent;border:none;border-bottom:2.5px solid transparent;
  color:var(--muted);font-size:12px;font-weight:500;cursor:pointer;
  font-family:"DM Sans",sans-serif;transition:all .15s;margin-bottom:-1.5px;
}
.gas-tab:hover{color:var(--navy)}
.gas-tab.active{color:var(--navy);border-bottom-color:var(--gold);font-weight:600}

.gas-tab-panel{font-size:13px;color:var(--ink);line-height:1.5}
.gas-passos{margin:0;padding-left:22px}
.gas-passos li{margin-bottom:8px}
.gas-passos b{color:var(--navy)}
.gas-passos a{color:var(--gold);text-decoration:underline}
.gas-passos i{color:var(--muted);font-size:12px}
.gas-dica{
  margin-top:12px;font-size:12px;color:var(--muted);
  background:var(--cream);padding:8px 12px;border-radius:6px;line-height:1.4;
}

.gas-acoes{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin-top:20px;padding-top:14px;border-top:1px solid var(--cream2);
}
.gas-btn-sec{
  padding:8px 14px;background:#fff;color:var(--navy);
  border:1.5px solid var(--cream2);border-radius:7px;
  font-size:12px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:6px;
  font-family:"DM Sans",sans-serif;transition:all .15s;
}
.gas-btn-sec:hover{background:var(--cream);border-color:var(--gold)}
.gas-btn-sec svg{width:13px;height:13px;stroke:currentColor;stroke-width:2;fill:none}
.gas-switch{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink);cursor:pointer}
.gas-switch input{cursor:pointer}

.gas-rodape{
  margin-top:14px;font-size:11px;color:var(--muted);line-height:1.5;
  background:var(--cream);padding:10px 12px;border-radius:6px;
}
.gas-rodape b{color:var(--navy)}

@media (max-width:640px){
  .gas-box{max-width:100%;max-height:100vh;border-radius:0}
  .gas-url-row{flex-direction:column}
  .gas-btn-copiar{justify-content:center}
  .gas-acoes{flex-direction:column;align-items:stretch}
}

/* ════════════════════════════════════════════
   NOTÍCIAS JURÍDICAS — Feedly + IA (v2)
   ════════════════════════════════════════════ */
/* Override do grid 2-col padrão de .tool-screen.active — Notícias é single column scrollable */
#screen-noticias.active{display:block!important;height:100%;overflow-y:auto;overflow-x:hidden}

/* Override do grid 2-col padrão — Assistente IA ocupa tudo (single column) */
#screen-assistente.active{display:flex!important;flex-direction:column;height:100%;overflow:hidden}
.dca-wrap{display:flex;flex-direction:column;flex:1;width:100%;min-height:0;height:100%;background:var(--cream3);position:relative}
.not-wrap{display:block}

/* ── Header navy ── */
.not-page-hdr{background:var(--navy);padding:20px 28px 16px;border-bottom:1px solid rgba(201,168,76,0.2)}
.not-page-hdr-inner{display:flex;justify-content:space-between;align-items:center;gap:16px}
.not-h1{font-size:21px;font-weight:800;color:#fff;margin:0 0 3px;letter-spacing:-0.01em;font-family:Georgia,serif;line-height:1.2}
.not-sub{font-size:12px;color:rgba(201,168,76,0.85);margin:0}
.not-page-hdr-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.not-contador{font-size:12px;color:rgba(255,255,255,0.55);font-weight:600;white-space:nowrap}
.not-btn-reload{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.15);color:#fff;width:34px;height:34px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.2s,transform 0.3s;flex-shrink:0}
.not-btn-reload:hover{background:rgba(201,168,76,0.3);transform:rotate(180deg)}
.not-btn-reload svg{width:14px;height:14px;stroke:#fff}

/* ── Tabs nav ── */
.not-tabs-nav{background:#fff;border-bottom:2px solid #e8ecf4;padding:0 28px;display:flex}
.not-tab{display:inline-flex;align-items:center;gap:7px;padding:12px 20px;background:none;border:0;border-bottom:3px solid transparent;margin-bottom:-2px;font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer;transition:color 0.15s,border-color 0.15s;white-space:nowrap;font-family:inherit}
.not-tab svg{width:15px;height:15px;stroke:currentColor;flex-shrink:0;opacity:0.65;transition:opacity 0.15s}
.not-tab:hover{color:var(--navy)}
.not-tab.ativo{color:var(--navy);border-bottom-color:var(--gold)}
.not-tab.ativo svg{opacity:1}

/* ── Pane (área de conteúdo com padding) ── */
.not-pane{padding:20px 28px 80px}

/* ── Barra de filtros ── */
.not-filtros-bar{display:flex;gap:8px;flex-wrap:nowrap;margin-bottom:14px;align-items:center}
.not-busca-wrap{position:relative;flex:1;min-width:180px}
.not-busca-icon{position:absolute;left:11px;top:50%;transform:translateY(-50%);width:15px;height:15px;stroke:var(--muted);pointer-events:none}
.not-busca-input{width:100%;padding:9px 12px 9px 34px;border:1px solid #d8dde6;border-radius:8px;font-size:14px;background:#fff;transition:border-color 0.15s;box-sizing:border-box}
.not-busca-input:focus{outline:0;border-color:var(--navy);box-shadow:0 0 0 3px rgba(20,38,72,0.08)}
.not-fonte-sel{padding:9px 12px;border:1px solid #d8dde6;border-radius:8px;font-size:13.5px;background:#fff;cursor:pointer;min-width:160px;flex-shrink:0}
.not-fonte-sel:focus{outline:0;border-color:var(--navy)}
.not-btn-limpar{background:#fff;border:1px solid #d8dde6;color:var(--muted);padding:9px 14px;border-radius:8px;font-size:13px;cursor:pointer;font-weight:500;white-space:nowrap;transition:all 0.15s;flex-shrink:0}
.not-btn-limpar:hover{background:#f5f7fb;color:var(--navy);border-color:var(--navy)}

/* ── Chips de área ── */
.not-chips-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #eaecf3}
.not-chip{display:inline-flex;align-items:center;background:#f4f6fb;border:1px solid #e0e4ee;color:#5a6b8a;padding:5px 13px;border-radius:999px;font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all 0.15s;line-height:1}
.not-chip:hover{border-color:var(--navy);color:var(--navy);background:#edf0f8}
.not-chip.ativo{background:var(--navy);color:#fff;border-color:var(--navy)}

/* ── Grid de cards ── */
.not-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px;align-items:start}
.not-vazio{text-align:center;padding:56px 20px;color:var(--muted);font-size:14px;display:flex;flex-direction:column;align-items:center;gap:16px;line-height:1.6}
.not-vazio-erro button,.not-btn-retry{margin-top:4px;background:var(--navy);color:#fff;border:0;padding:9px 20px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}
.not-spinner{width:30px;height:30px;border:3px solid #e8ecf3;border-top-color:var(--navy);border-radius:50%;animation:notSpin 0.75s linear infinite}
@keyframes notSpin{to{transform:rotate(360deg)}}

/* ── Cartões de notícia ── */
.not-card{background:#fff;border:1px solid #e8ecf4;border-radius:12px;padding:18px 20px 15px;transition:border-color 0.15s,box-shadow 0.15s;display:flex;flex-direction:column}
.not-card:hover{border-color:#b8c4dc;box-shadow:0 4px 20px rgba(20,38,72,0.09)}
.not-card-top{display:flex;align-items:center;gap:9px;margin-bottom:10px}
.not-fonte-badge{color:#fff;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;padding:3px 9px;border-radius:4px;flex-shrink:0}
.not-tempo{font-size:11px;color:var(--muted);font-weight:500;margin-left:auto}
.not-titulo{font-size:15px;font-weight:700;color:var(--navy);margin:0 0 9px;line-height:1.4;letter-spacing:-0.005em}
.not-resumo{font-size:13px;color:#4a5568;line-height:1.62;margin:0 0 11px}
.not-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}
.not-area-tag{background:#eef1fa;color:#4a5c80;font-size:10px;padding:3px 9px;border-radius:999px;font-weight:600;text-transform:uppercase;letter-spacing:0.04em}
.not-rodape{padding-top:10px;border-top:1px solid #f0f2f8;margin-top:auto}
.not-link-fonte{display:inline-flex;align-items:center;gap:5px;color:#3a5ba0;font-size:12.5px;font-weight:600;text-decoration:none;transition:color 0.15s}
.not-link-fonte:hover{color:var(--gold3)}
.not-icon-ext{width:13px;height:13px;stroke:currentColor;flex-shrink:0}

/* ── Botão upload admin ── */
.not-btn-upload{display:inline-flex;align-items:center;gap:6px;background:var(--gold);color:var(--navy);border:0;padding:7px 13px;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap;transition:background 0.15s;font-family:inherit;flex-shrink:0}
.not-btn-upload:hover{background:var(--gold2)}
.not-btn-upload svg{width:13px;height:13px;stroke:var(--navy);flex-shrink:0}
.not-btn-upload-stj{background:rgba(15,30,53,.85);color:#fff}
.not-btn-upload-stj:hover{background:var(--navy)}
.not-btn-upload-stj svg{stroke:#fff}
.not-btn-upload-tst{background:#6f1e51;color:#fff}
.not-btn-upload-tst:hover{background:#4a1237}
.not-btn-upload-tst svg{stroke:#fff}
.not-btn-diag{background:#2d6a4f;color:#fff}
.not-btn-diag:hover{background:#1b4332}
.not-btn-diag svg{stroke:#fff}

@media (max-width:768px){
  .not-page-hdr{padding:14px 16px 12px}
  .not-page-hdr-inner{flex-wrap:wrap;gap:10px}
  .not-tabs-nav{padding:0 16px}
  .not-tab{padding:10px 14px;font-size:13px}
  .not-pane{padding:14px 16px 60px}
  .not-lista{grid-template-columns:1fr}
  .not-filtros-bar{flex-wrap:wrap}
  .not-busca-wrap{min-width:0;width:100%;flex:none}
  .not-fonte-sel,.not-btn-limpar{flex:1;min-width:0}
  .not-titulo{font-size:14.5px}
  .not-resumo{font-size:12.5px}
}

/* ════════════════════════════════════════════
   ACADEMY — Widget Notícias Jurídicas (rodapé discreto)
   Lista de manchetes compacta, herda tema escuro
   ════════════════════════════════════════════ */
.ac-wn-hdr{margin-bottom:8px;opacity:0.85}
.ac-wn-sec-titulo{font-size:15px;font-weight:600;color:rgba(255,255,255,0.70)}
.ac-wn-lista{display:flex;flex-direction:column}
.ac-wn-row{display:flex;align-items:center;gap:11px;padding:11px 4px;text-decoration:none;color:inherit;border-bottom:1px solid rgba(255,255,255,0.07);transition:padding-left 0.15s}
.ac-wn-row:last-child{border-bottom:0}
.ac-wn-row:hover{padding-left:8px}
.ac-wn-row:hover .ac-wn-row-titulo{color:#fff}
.ac-wn-fonte{color:#fff;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;padding:3px 7px;border-radius:4px;flex-shrink:0;min-width:54px;text-align:center}
.ac-wn-row-titulo{flex:1;font-size:13.5px;font-weight:500;color:rgba(255,255,255,0.78);line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color 0.15s}
.ac-wn-tempo{font-size:11px;color:rgba(255,255,255,0.40);font-weight:500;flex-shrink:0}

@media (max-width:640px){
  .ac-wn-row-titulo{font-size:12.5px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .ac-wn-tempo{display:none}
}


/* ════════════════════════════════════════════
   INFORMATIVOS STF — Cards e seções
   ════════════════════════════════════════════ */
.inf-edicao{margin-bottom:12px;border:1px solid #e0e6f0;border-radius:12px;overflow:hidden}

/* ── Acordeão: header clicável ── */
.inf-edicao-hdr{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:15px 20px;background:var(--navy);color:#fff;border:0;cursor:pointer;text-align:left;font-family:inherit;transition:background 0.15s}
.inf-edicao-hdr:hover{background:var(--navy3)}
.inf-edicao-numero{font-size:16px;font-weight:800;letter-spacing:-0.01em;font-family:Georgia,serif;color:#fff}
.inf-edicao-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.inf-data-divulg{font-size:12px;color:rgba(255,255,255,0.65);font-weight:500}
.inf-ano-badge{background:var(--gold);color:var(--navy);font-size:11px;font-weight:800;padding:3px 10px;border-radius:4px}
.inf-decisoes-count{font-size:11px;color:rgba(255,255,255,0.50);font-weight:500}
.inf-toggle-icon{width:18px;height:18px;stroke:rgba(255,255,255,0.7);flex-shrink:0;transition:transform 0.25s;margin-left:4px}
.inf-edicao.aberto .inf-toggle-icon{transform:rotate(180deg)}

/* ── Corpo colapsável ── */
.inf-edicao-body{display:none}
.inf-edicao.aberto .inf-edicao-body{display:block}

.inf-orgao-bloco{padding:0 20px}
.inf-orgao-label{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:0.1em;color:var(--navy);opacity:0.5;padding:16px 0 8px;border-bottom:1px solid #edf0f8;margin-bottom:0}

.inf-card{padding:18px 0 16px;border-bottom:1px solid #f0f3f9}
.inf-orgao-bloco:last-child .inf-card:last-child{border-bottom:0;padding-bottom:20px}
.inf-titulo{font-size:15px;font-weight:700;color:var(--navy);margin:0 0 10px;line-height:1.4;letter-spacing:-0.005em}
.inf-resumo{font-size:13px;color:#4a5568;line-height:1.65;margin:0 0 12px}

.inf-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:12px}
.inf-area{background:#eef1fa;color:#4a5c80;font-size:10px;padding:3px 9px;border-radius:999px;font-weight:600;text-transform:uppercase;letter-spacing:0.04em}
.inf-tag{background:#fdf3dc;color:#7a5c00;font-size:10px;padding:3px 9px;border-radius:999px;font-weight:600;text-transform:uppercase;letter-spacing:0.04em}

.inf-meta-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.inf-processo{font-size:12px;font-weight:700;color:var(--navy);background:#f0f4ff;padding:4px 10px;border-radius:5px;font-family:'Courier New',monospace}
.inf-relator{font-size:12px;color:var(--muted);font-weight:500}
.inf-data-julg{font-size:11.5px;color:var(--muted)}
.inf-resultado{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:#2e7d32;background:#e8f5e9;padding:3px 9px;border-radius:4px}

@media (max-width:640px){
  .inf-edicao-hdr{padding:14px 14px}
  .inf-orgao-bloco{padding:0 14px}
  .inf-meta-row{gap:8px}
}

/* ════════════════════════════════════════════
   NOTÍCIAS — Modal Upload Informativo STF
   ════════════════════════════════════════════ */
.not-modal-overlay{position:fixed;inset:0;background:rgba(10,20,40,0.55);z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px}
.not-modal-box{background:#fff;border-radius:14px;width:100%;max-width:480px;box-shadow:0 24px 60px rgba(0,0,0,0.22);padding:28px 28px 24px}
.not-modal-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.not-modal-titulo{font-size:18px;font-weight:800;color:var(--navy);margin:0;letter-spacing:-0.01em}
.not-modal-fechar{background:none;border:0;font-size:22px;color:var(--muted);cursor:pointer;line-height:1;padding:0 2px;transition:color 0.15s}
.not-modal-fechar:hover{color:var(--navy)}
.not-modal-desc{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 20px}

.not-upload-label{display:block;cursor:pointer}
.not-upload-label input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.not-upload-area{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 20px;border:2px dashed #c8d0e8;border-radius:10px;background:#f8faff;transition:border-color 0.15s,background 0.15s;text-align:center}
.not-upload-label:hover .not-upload-area,.not-upload-area:has(+*){border-color:var(--navy);background:#f0f4ff}
.not-upload-area svg{width:36px;height:36px;stroke:var(--navy);opacity:0.5}
.not-upload-area span{font-size:14px;font-weight:600;color:var(--navy)}
.not-upload-nome{font-size:12px;color:var(--gold3);font-weight:700;min-height:16px;display:block}

.not-upload-result{margin:14px 0 0;padding:10px 14px;border-radius:8px;font-size:13px;font-weight:500;line-height:1.5;display:none}
.not-upload-result:not(:empty){display:block}
.not-upload-result.sucesso{background:#e8f5e9;color:#1b5e20;border:1px solid #a5d6a7}
.not-upload-result.erro{background:#ffebee;color:#b71c1c;border:1px solid #ef9a9a}

.not-modal-acoes{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.not-modal-btn-cancel{background:#f4f6fb;border:1px solid #d8dde6;color:var(--muted);padding:10px 18px;border-radius:8px;font-size:13.5px;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.15s}
.not-modal-btn-cancel:hover{background:#eaecf3;color:var(--navy)}
.not-modal-btn-proc{background:var(--navy);color:#fff;border:0;padding:10px 22px;border-radius:8px;font-size:13.5px;font-weight:700;cursor:pointer;font-family:inherit;transition:background 0.15s}
.not-modal-btn-proc:hover:not(:disabled){background:var(--navy3)}
.not-modal-btn-proc:disabled{opacity:0.6;cursor:not-allowed}

@media (max-width:480px){
  .not-modal-box{padding:20px 16px 18px}
  .not-modal-acoes{flex-direction:column}
  .not-modal-btn-cancel,.not-modal-btn-proc{width:100%;justify-content:center}
}
.not-modal-diag-box{max-width:600px}
.not-diag-lista{display:flex;flex-direction:column;gap:8px;margin-top:4px;max-height:60vh;overflow-y:auto}
.not-diag-row{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:10px;border:1px solid #e4e8ef}
.not-diag-ok{background:#f0fdf4;border-color:#bbf7d0}
.not-diag-warn{background:#fffbeb;border-color:#fde68a}
.not-diag-err{background:#fff1f2;border-color:#fecdd3}
.not-diag-icon{font-size:16px;font-weight:800;width:20px;text-align:center;flex-shrink:0;margin-top:1px}
.not-diag-ok .not-diag-icon{color:#16a34a}
.not-diag-warn .not-diag-icon{color:#d97706}
.not-diag-err .not-diag-icon{color:#e11d48}
.not-diag-info{display:flex;flex-direction:column;gap:2px;min-width:0}
.not-diag-info strong{font-size:13.5px;color:var(--navy)}
.not-diag-detalhe{font-size:12px;color:#52525b}
.not-diag-detalhe-err{color:#e11d48;font-weight:600}
.not-diag-url{font-size:11px;color:#94a3b8;word-break:break-all;text-decoration:none}
.not-diag-url:hover{color:var(--navy);text-decoration:underline}

/* ══════════════════════════════════════════════════════════════
   CONQUISTAS — gamificação (plaquinhas + níveis + badges)
   ══════════════════════════════════════════════════════════════ */
#screen-conquistas.active{display:block!important;height:100%;overflow-y:auto;overflow-x:hidden}
.conq-loading{text-align:center;padding:80px 20px;color:var(--muted);font-size:14px}
.conq-spin{font-size:32px;animation:cons-ai-spin .9s linear infinite;margin-bottom:10px}

/* Hero */
.conq-page-hdr{
  background:linear-gradient(135deg,var(--navy),#1e3a5f);position:relative;overflow:hidden;
  padding:38px 48px;display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap
}
.conq-page-hdr-inner{max-width:620px}
.conq-page-tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(201,168,76,.4);border-radius:99px;padding:5px 13px;margin-bottom:14px}
.conq-page-hdr h1{font-family:'Playfair Display',Georgia,serif;font-size:32px;font-weight:800;color:#fff;margin:0 0 8px;line-height:1.15}
.conq-page-hdr h1 span{color:var(--gold)}
.conq-page-hdr p{font-size:14px;color:rgba(255,255,255,.7);margin:0;line-height:1.5}
.conq-hero-placa{text-align:center;flex-shrink:0}
.conq-hero-ico{font-size:84px;line-height:1;filter:drop-shadow(0 6px 16px rgba(0,0,0,.35))}
.conq-hero-faixa{font-size:16px;font-weight:700;margin-top:8px;color:#fff}

/* Body */
.conq-body{max-width:1100px;margin:0 auto;padding:32px 48px 64px}
.conq-sec{margin-bottom:38px}
.conq-sec-hdr{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.conq-sec-hdr h2{font-family:'Playfair Display',Georgia,serif;font-size:20px;font-weight:700;color:var(--navy);margin:0}
.conq-priv{font-size:11.5px;color:var(--muted);background:var(--cream);border:1px solid var(--cream2);padding:4px 11px;border-radius:99px;font-weight:600}

/* Progresso */
.conq-prog{background:#fff;border:1px solid var(--cream2);border-radius:14px;padding:16px 18px;margin-bottom:18px}
.conq-prog-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;color:var(--navy);margin-bottom:9px;flex-wrap:wrap}
.conq-prog-bar{height:10px;border-radius:99px;background:var(--cream2);overflow:hidden}
.conq-prog-fill{height:100%;border-radius:99px;transition:width .6s cubic-bezier(.4,0,.2,1)}
.conq-prog-falta{font-size:12px;color:var(--muted);margin-top:8px}

/* Placas grid */
.conq-placas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.conq-placa{position:relative;background:#fff;border:1.5px solid var(--cream2);border-radius:16px;padding:20px 12px 16px;text-align:center;opacity:.55;filter:grayscale(.7);transition:all .2s}
.conq-placa.on{opacity:1;filter:none;border-color:var(--pc,var(--gold));box-shadow:0 8px 22px rgba(15,30,53,.1)}
.conq-placa-ico{font-size:46px;line-height:1;margin-bottom:8px}
.conq-placa-nome{font-weight:700;color:var(--navy);font-size:15px}
.conq-placa-rot{font-size:11.5px;color:var(--muted);margin-top:2px}
.conq-share-mini{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:8px;border:none;background:var(--navy);color:var(--gold);cursor:pointer;display:flex;align-items:center;justify-content:center}
.conq-share-mini i{width:14px;height:14px}
.conq-share-mini:hover{background:var(--navy3)}

/* Nível de estudo */
.conq-nivel-card{background:#fff;border:1px solid var(--cream2);border-radius:16px;padding:20px 22px}
.conq-nivel-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:13px}
.conq-nivel-rotulo{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.conq-nivel-nome{font-family:'Playfair Display',Georgia,serif;font-size:24px;font-weight:700;color:var(--navy);margin-top:2px}
.conq-xp-badge{background:rgba(201,168,76,.16);color:var(--gold3);font-weight:700;font-size:14px;padding:7px 15px;border-radius:99px;flex-shrink:0}
.conq-stats-row{display:flex;gap:10px;margin-top:16px}
.conq-stat{flex:1;background:var(--cream);border-radius:11px;padding:12px;text-align:center}
.conq-stat-num{font-size:22px;font-weight:800;color:var(--navy);font-family:'Playfair Display',Georgia,serif}
.conq-stat-lbl{font-size:11px;color:var(--muted);margin-top:2px}

/* Badges grid */
.conq-badges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}
.conq-badge{position:relative;background:#fff;border:1.5px solid var(--cream2);border-radius:14px;padding:18px 14px;text-align:center;opacity:.5;filter:grayscale(.7);transition:all .2s}
.conq-badge.on{opacity:1;filter:none;border-color:var(--gold);box-shadow:0 6px 18px rgba(15,30,53,.08)}
.conq-badge-ico{font-size:36px;line-height:1;margin-bottom:7px}
.conq-badge-nome{font-weight:700;color:var(--navy);font-size:13.5px}
.conq-badge-desc{font-size:11.5px;color:var(--muted);margin-top:3px;line-height:1.35}

@media(max-width:760px){
  .conq-page-hdr{padding:28px 20px}
  .conq-page-hdr h1{font-size:25px}
  .conq-hero-ico{font-size:64px}
  .conq-body{padding:24px 16px 48px}
}

/* ══════════════════════════════════════════════════════════════
   ASSISTENTE DR. CONTRATUS — chat de IA (tema claro)
   ══════════════════════════════════════════════════════════════ */
#screen-assistente{padding:0!important}
.dca-top{display:flex;align-items:center;gap:14px;padding:16px 24px;border-bottom:1px solid var(--border);background:#fff;flex-shrink:0}
.dca-top-icon{width:42px;height:42px;border-radius:11px;background:linear-gradient(135deg,var(--navy),var(--navy3));color:var(--gold2);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dca-top-icon i{width:22px;height:22px}
.dca-top-txt{flex:1;min-width:0}
.dca-top-title{font-family:Georgia,serif;font-size:18px;font-weight:700;color:var(--navy);line-height:1.1}
.dca-top-sub{font-size:12px;color:var(--muted);margin-top:2px}
.dca-clear{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--border);color:var(--navy);font-size:12px;font-weight:600;padding:8px 13px;border-radius:8px;cursor:pointer;transition:background .15s,border-color .15s;flex-shrink:0}
.dca-clear:hover{background:var(--cream);border-color:var(--gold)}
.dca-clear i{width:15px;height:15px}
.dca-dir-btn{width:36px;height:36px;border-radius:8px;border:1px solid var(--border);background:#fff;color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s,color .15s,border-color .15s}
.dca-dir-btn:hover{background:var(--cream);color:var(--navy);border-color:var(--gold)}
.dca-dir-btn i{width:16px;height:16px}
.dca-dir-btn.ativo{background:rgba(201,168,76,.12);color:#7a5500;border-color:rgba(201,168,76,.5)}
.dca-dir-btn.ativo::after{content:'';width:7px;height:7px;border-radius:50%;background:var(--gold);position:absolute;top:6px;right:6px;border:1.5px solid #fff}
.dca-dir-btn{position:relative}
/* Modal diretrizes */
.dca-dir-overlay{position:fixed;inset:0;background:rgba(15,30,53,.45);z-index:9000;display:flex;align-items:center;justify-content:center;padding:20px}
.dca-dir-modal{background:#fff;border-radius:16px;width:100%;max-width:560px;box-shadow:0 24px 64px rgba(15,30,53,.18);display:flex;flex-direction:column;max-height:90vh}
.dca-dir-hdr{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--cream2)}
.dca-dir-hdr-txt{display:flex;align-items:center;gap:12px}
.dca-dir-hdr-ic{width:16px;height:16px;stroke:var(--gold);flex-shrink:0}
.dca-dir-ttl{font-size:15px;font-weight:700;color:var(--navy)}
.dca-dir-sub{font-size:11.5px;color:var(--muted);margin-top:1px}
.dca-dir-close{width:30px;height:30px;border-radius:6px;border:none;background:var(--cream);color:var(--muted);cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center}
.dca-dir-close:hover{background:var(--cream2);color:var(--navy)}
.dca-dir-body{padding:20px 22px;display:flex;flex-direction:column;gap:14px;overflow-y:auto}
.dca-dir-hint{font-size:12.5px;color:var(--muted);margin:0}
.dca-dir-exemplos{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px}
.dca-dir-exemplos li{font-size:12px;color:#888;line-height:1.5}
.dca-dir-textarea{width:100%;min-height:140px;max-height:280px;border:1px solid var(--cream2);border-radius:10px;padding:12px 14px;font-family:inherit;font-size:13.5px;line-height:1.6;color:var(--text);resize:vertical;outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}
.dca-dir-textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.12)}
.dca-dir-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:4px}
.dca-dir-limpar{background:none;border:1px solid var(--cream2);color:var(--muted);font-size:12.5px;padding:8px 14px;border-radius:8px;cursor:pointer}
.dca-dir-limpar:hover{border-color:var(--navy);color:var(--navy)}
.dca-dir-salvar{display:inline-flex;align-items:center;gap:6px;background:var(--navy);color:var(--gold2);border:none;font-size:13px;font-weight:600;padding:9px 18px;border-radius:8px;cursor:pointer;transition:background .15s}
.dca-dir-salvar:hover{background:var(--navy3)}
.dca-dir-salvar i{width:14px;height:14px}

.dca-scroll{flex:1;overflow-y:auto;padding:28px 0;scroll-behavior:smooth}
.dca-msg{display:flex;gap:14px;max-width:760px;margin:0 auto 22px;padding:0 24px}
.dca-avatar{width:34px;height:34px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.dca-avatar i{width:18px;height:18px}
.dca-avatar-ai{background:linear-gradient(135deg,var(--navy),var(--navy3));color:var(--gold2)}
.dca-avatar-user{background:var(--cream2);color:var(--navy)}
.dca-bubble{flex:1;min-width:0;font-size:14.5px;line-height:1.62;color:var(--text);padding-top:4px;word-wrap:break-word;overflow-wrap:anywhere}
.dca-msg-user .dca-bubble{background:#fff;border:1px solid var(--border);border-radius:12px;padding:11px 15px}
.dca-p{margin:0 0 11px}
.dca-bubble>.dca-p:last-child,.dca-bubble>.dca-ul:last-child,.dca-bubble>.dca-ol:last-child{margin-bottom:0}
.dca-h{font-family:Georgia,serif;color:var(--navy);margin:16px 0 9px;line-height:1.25}
h4.dca-h{font-size:16px}h5.dca-h{font-size:15px}h6.dca-h{font-size:14px}
.dca-ul,.dca-ol{margin:0 0 11px;padding-left:22px}
.dca-ul li,.dca-ol li{margin-bottom:5px}
.dca-bubble strong{color:var(--navy);font-weight:700}
.dca-code{background:var(--navy);color:#f5f0e8;border-radius:8px;padding:13px 15px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.5;overflow-x:auto;margin:0 0 11px;white-space:pre-wrap}
.dca-ic{background:var(--cream2);border-radius:5px;padding:1px 6px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12.5px;color:var(--navy)}

.dca-dots{display:flex;gap:5px;padding:6px 0}
.dca-dots span{width:7px;height:7px;border-radius:50%;background:var(--gold);opacity:.4;animation:dca-blink 1.3s infinite both}
.dca-dots span:nth-child(2){animation-delay:.2s}
.dca-dots span:nth-child(3){animation-delay:.4s}
@keyframes dca-blink{0%,80%,100%{opacity:.3}40%{opacity:1}}

/* Welcome / sugestões */
.dca-welcome{max-width:680px;margin:0 auto;padding:40px 24px;text-align:center}
.dca-welcome-icon{width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,var(--navy),var(--navy3));color:var(--gold2);display:flex;align-items:center;justify-content:center;margin:0 auto 18px}
.dca-welcome-icon i{width:32px;height:32px}
.dca-welcome-title{font-family:Georgia,serif;font-size:24px;font-weight:700;color:var(--navy)}
.dca-welcome-sub{font-size:14px;color:var(--muted);margin:8px 0 26px;line-height:1.5}
.dca-chips{display:grid;grid-template-columns:1fr 1fr;gap:12px;text-align:left}
.dca-chip{display:flex;align-items:center;gap:11px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px 16px;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .1s;font-family:inherit}
.dca-chip:hover{border-color:var(--gold);box-shadow:0 4px 16px rgba(15,30,53,.08);transform:translateY(-1px)}
.dca-chip-ic{width:34px;height:34px;border-radius:9px;background:var(--cream);color:var(--gold3);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dca-chip-ic i{width:18px;height:18px}
.dca-chip-tt{font-size:13.5px;font-weight:600;color:var(--navy)}

/* Composer */
.dca-composer{flex-shrink:0;padding:14px 24px 18px;background:linear-gradient(to top,var(--cream3) 70%,transparent);border-top:1px solid var(--border)}
.dca-input-wrap{max-width:760px;margin:0 auto;display:flex;align-items:flex-end;gap:10px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:8px 8px 8px 16px;transition:border-color .15s,box-shadow .15s}
.dca-input-wrap:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.12)}
.dca-input{flex:1;border:none;outline:none;resize:none;font-family:inherit;font-size:14.5px;line-height:1.5;color:var(--text);background:transparent;max-height:200px;padding:7px 0}
.dca-send{width:38px;height:38px;border-radius:11px;border:none;background:var(--navy);color:var(--gold2);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s,opacity .15s}
.dca-send:hover{background:var(--navy3)}
.dca-send:disabled{opacity:.45;cursor:default}
.dca-send i{width:19px;height:19px}
.dca-mic{width:38px;height:38px;border-radius:11px;border:1px solid var(--cream2);background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s,color .15s,border-color .15s}
.dca-mic:hover{background:var(--cream);color:var(--navy);border-color:var(--navy)}
.dca-mic i{width:17px;height:17px}
.dca-mic.ativo{background:#fce8e8;color:#c0392b;border-color:#e57373;animation:dca-mic-pulse 1.2s ease-in-out infinite}
@keyframes dca-mic-pulse{0%,100%{box-shadow:0 0 0 0 rgba(192,57,43,.25)}50%{box-shadow:0 0 0 6px rgba(192,57,43,0)}}
.dca-foot{max-width:760px;margin:9px auto 0;text-align:center;font-size:11px;color:var(--muted);line-height:1.4}

/* Botões de ação no bubble (quando IA gera peça/contrato) */
.dca-bubble-acoes{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid var(--cream2)}
.dca-bubble-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:8px;background:var(--navy);color:#fff;border:none;font-size:12px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:background .15s}
.dca-bubble-btn:hover{background:#0a2342}
.dca-bubble-btn i{width:13px;height:13px;stroke-width:2}
.dca-bubble-btn-sec{background:#fff;color:var(--navy);border:1px solid var(--cream2)}
.dca-bubble-btn-sec:hover{background:var(--cream);border-color:var(--navy)}

@media(max-width:767px){
  .dca-top{padding:12px 16px}
  .dca-top-sub{display:none}
  .dca-clear span{display:none}
  .dca-clear{padding:8px}
  .dca-msg{padding:0 14px;gap:10px}
  .dca-chips{grid-template-columns:1fr}
  .dca-composer{padding:10px 14px 14px}
  .dca-bubble-btn{padding:8px 12px;font-size:12px;flex:1;justify-content:center}
}

/* ── MODAL AGENDA POR VOZ — fix mobile ── */
@media(max-width:767px){
  #agv-modal{padding:8px!important;align-items:flex-end!important}
  #agv-modal>div{max-height:96vh!important;border-radius:14px 14px 0 0!important}
  #agv-tela-inicial{padding:22px 18px!important}
  #agv-tela-confirmacao{padding:16px 18px!important;max-height:calc(96vh - 170px)!important;overflow-y:auto!important}
  #agv-rodape-confirmacao{padding:12px 18px!important;flex-wrap:wrap;gap:6px!important}
  #agv-rodape-confirmacao button{flex:1;min-width:120px;justify-content:center}
  #agv-mic{width:84px!important;height:84px!important}
  #agv-mic i{width:32px!important;height:32px!important}
}

/* ═════════════════════════════════════════════════════════════
   SECRETÁRIA VIRTUAL (Agenda)
   ═════════════════════════════════════════════════════════════ */
.sec-layout{display:flex;flex:1;min-height:0;overflow:hidden}
.sec-cal-box{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}
.sec-toggle-btn{background:linear-gradient(135deg,#5b21b6,#7c3aed)!important;color:#fff!important;border:none!important}
.sec-toggle-btn:hover{filter:brightness(1.1)}

.sec-panel{
  width:0;flex-shrink:0;background:#fff;border-left:1px solid var(--border,#e5e7eb);
  display:flex;flex-direction:column;overflow:hidden;
  transition:width .25s ease;
}
.sec-panel.sec-open{width:380px}

.sec-head{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 16px;border-bottom:1px solid var(--border,#e5e7eb);
  background:linear-gradient(135deg,#5b21b6,#7c3aed);color:#fff;
}
.sec-head-titulo{display:flex;align-items:center;gap:10px}
.sec-avatar{
  width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.18);
  display:flex;align-items:center;justify-content:center;font-size:18px;
}
.sec-nome{font-weight:600;font-size:14px;line-height:1.1}
.sec-status{font-size:11px;opacity:.85;margin-top:2px}
.sec-fechar{
  background:rgba(255,255,255,.15);border:none;color:#fff;
  width:28px;height:28px;border-radius:6px;font-size:20px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;line-height:1;
}
.sec-fechar:hover{background:rgba(255,255,255,.28)}

.sec-msgs{
  flex:1;overflow-y:auto;padding:14px;background:#fafafa;
  display:flex;flex-direction:column;gap:10px;
}
.sec-msg{display:flex;max-width:100%}
.sec-msg-user{justify-content:flex-end}
.sec-msg-assistant{justify-content:flex-start}
.sec-msg-bolha{
  max-width:85%;padding:9px 13px;border-radius:14px;font-size:13px;line-height:1.45;
  word-wrap:break-word;
}
.sec-msg-user .sec-msg-bolha{
  background:#7c3aed;color:#fff;border-bottom-right-radius:4px;
}
.sec-msg-assistant .sec-msg-bolha{
  background:#fff;color:#111;border:1px solid var(--border,#e5e7eb);
  border-bottom-left-radius:4px;
}

.sec-card-action{
  display:flex;align-items:flex-start;gap:8px;
  padding:8px 11px;border-radius:9px;font-size:12px;
  background:#f3f4f6;border:1px solid var(--border,#e5e7eb);
}
.sec-card-action.sec-card-ok{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}
.sec-card-action.sec-card-err{background:#fef2f2;border-color:#fecaca;color:#991b1b}
.sec-card-icon{font-size:14px;flex-shrink:0;line-height:1.3}
.sec-card-titulo{font-weight:600;font-size:12px}
.sec-card-det{font-size:11px;opacity:.85;margin-top:2px}

.sec-sugestoes{
  display:flex;flex-wrap:wrap;gap:6px;
  padding:8px 14px;border-top:1px solid var(--border,#e5e7eb);background:#fff;
}
.sec-sug{
  font-size:11px;padding:5px 10px;border-radius:14px;
  background:#f3e8ff;color:#5b21b6;border:1px solid #ddd6fe;cursor:pointer;
  font-family:inherit;transition:background .15s;
}
.sec-sug:hover{background:#e9d5ff}

.sec-input-bar{
  display:flex;align-items:flex-end;gap:8px;
  padding:10px 14px 12px;border-top:1px solid var(--border,#e5e7eb);background:#fff;
}
#sec-input{
  flex:1;border:1px solid var(--border,#e5e7eb);border-radius:10px;
  padding:8px 11px;font-size:13px;font-family:inherit;resize:none;
  max-height:120px;line-height:1.4;outline:none;
  transition:border-color .15s;
}
#sec-input:focus{border-color:#7c3aed}
.sec-send{
  width:36px;height:36px;border-radius:50%;border:none;
  background:#7c3aed;color:#fff;cursor:pointer;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  transition:background .15s;
}
.sec-send:hover:not(:disabled){background:#6d28d9}
.sec-send:disabled{background:#c4b5fd;cursor:not-allowed}

/* Card de mensagem gerada (Fase 3) */
.sec-mensagem-card{
  background:#fffbeb;border:1px solid #fcd34d;border-radius:10px;
  padding:12px;display:flex;flex-direction:column;gap:8px;
}
.sec-mc-label{
  font-size:11px;font-weight:600;color:#92400e;text-transform:uppercase;letter-spacing:.04em;
}
.sec-mc-texto{
  font-size:13px;line-height:1.5;color:#1c1917;white-space:pre-wrap;word-wrap:break-word;
  background:#fff;border:1px solid #fde68a;border-radius:7px;padding:10px 12px;margin:0;
  font-family:"DM Sans",sans-serif;
}
.sec-mc-copiar{
  align-self:flex-end;display:flex;align-items:center;gap:5px;
  background:#f59e0b;color:#fff;border:none;border-radius:7px;
  padding:6px 13px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;
  transition:background .15s;
}
.sec-mc-copiar:hover{background:#d97706}
.sec-mc-copiar.sec-mc-copiado{background:#059669}

/* Mobile: painel ocupa tela inteira sobre o calendário */
@media(max-width:900px){
  .sec-panel.sec-open{
    position:fixed;top:0;right:0;bottom:0;left:0;width:auto;
    z-index:9000;
  }
}

