:root{--bg:#08101a;--card:#101a27;--soft:#0c1621;--text:#e9f0f7;--muted:#8da0b4;--line:#243448;--accent:#4b93e6;--accent2:#347fd4;--ok:#5bd39a;--danger:#ff7575;--warn:#f1bd61}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font:14px/1.5 Inter,system-ui,-apple-system,"Segoe UI",sans-serif}a{color:#78b9ff;text-decoration:none}a:hover{text-decoration:underline}
.app-shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#09121d,#0c1724);border-right:1px solid #1c2b3b;padding:14px 11px;display:flex;flex-direction:column}.brand{display:flex;gap:11px;align-items:center;padding:8px 8px 19px;color:white;border-bottom:1px solid #1b2a38}.brand:hover{text-decoration:none}.brand>span{width:43px;height:43px;border-radius:11px;background:linear-gradient(145deg,#397fd2,#5da8ff);display:grid;place-items:center;font-size:11px;font-weight:900}.brand>div{display:grid}.brand small{color:#74889b}.sidebar nav{display:grid;gap:4px;padding:15px 0;overflow:auto}.sidebar nav a{padding:10px 11px;border-radius:8px;color:#a9bac9;font-weight:650}.sidebar nav a:hover{background:#112235;color:#fff;text-decoration:none}.nav-label{padding:15px 11px 4px;font-size:9px;color:#586f85;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.sidebar-foot{margin-top:auto;border-top:1px solid #1b2a38;padding:12px 8px;display:grid;color:#72869a}
.workspace{min-width:0}.topbar{height:68px;position:sticky;top:0;z-index:20;background:rgba(9,17,27,.96);backdrop-filter:blur(10px);border-bottom:1px solid #1c2a38;display:flex;align-items:center;justify-content:space-between;padding:0 26px}.topbar>div:first-child{display:grid}.top-actions{display:flex;align-items:center;gap:9px}.top-actions form{margin:0}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#162d46;color:#83c0ff;border:1px solid #234564;font-weight:850}.content{padding:27px 28px 60px}.eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-weight:850;color:#6fb1ff}.muted,small{color:var(--muted)}
h1{font-size:28px;letter-spacing:-.025em;margin:4px 0 6px}h2{font-size:16px;margin:0 0 14px}h3{font-size:13px;margin:18px 0 8px}.page-head,.hero{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:20px}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.actions form{margin:0}
button,.button-link{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 12px;border:1px solid #2b3b4c;border-radius:8px;background:#131f2c;color:#dce7f1;font:inherit;font-weight:700;cursor:pointer}.button-link:hover,button:hover{background:#192838;border-color:#42607b;text-decoration:none}.primary{background:linear-gradient(180deg,#287ac3,#1d65a7);border-color:#3b8bd1;color:#fff}.ghost{background:transparent;border:0}
.panel,.kpis>a,.process-kpis>div{background:linear-gradient(180deg,#101a27,#0e1722);border:1px solid var(--line);border-radius:11px;box-shadow:0 10px 30px rgba(0,0,0,.10)}.panel{padding:18px;margin-bottom:18px}.compact{padding:13px}.panel-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.panel-head h2{margin:0}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:18px}.kpis>a{padding:14px;display:grid;gap:4px;color:var(--text)}.kpis>a:hover{text-decoration:none;border-color:#36516b}.kpis span{font-size:10px;color:#8194a8;font-weight:700}.kpis strong{font-size:27px;line-height:1.15}.kpis small{font-size:9px}.small-kpis{grid-template-columns:repeat(3,1fr);max-width:900px}.date-kpi{font-size:18px!important}.danger-soft{background:linear-gradient(180deg,#26151b,#1c1217)!important;border-color:#4b242b!important}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.process-kpis{display:grid;grid-template-columns:1.1fr 1.2fr 2fr .8fr;gap:11px;margin-bottom:18px}.process-kpis>div{padding:13px;display:grid;gap:5px}.process-kpis span{font-size:9px;text-transform:uppercase;color:#7f93a6;font-weight:800}.process-kpis strong{font-size:12px;overflow-wrap:anywhere}
.filters{display:grid;grid-template-columns:minmax(260px,2fr) minmax(150px,1fr) auto;gap:10px;align-items:end}.filters.wide{grid-template-columns:minmax(280px,2fr) minmax(150px,1fr) auto auto}.stack{display:grid;gap:13px}.form-panel{max-width:900px}label{display:grid;gap:6px;font-weight:700;font-size:12px}input,select,textarea{width:100%;min-height:40px;padding:9px 10px;border:1px solid #34475b;border-radius:8px;background:#0a1420;color:#f0f5fa;font:inherit}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:#4f98e5;box-shadow:0 0 0 3px rgba(79,152,229,.12)}.check{display:flex;align-items:center;gap:7px;min-height:40px}.check input{width:auto;min-height:0}
.table-panel{overflow-x:auto;padding:0}table{width:100%;border-collapse:collapse;min-width:900px}th,td{text-align:left;padding:12px 14px;border-bottom:1px solid #223244;vertical-align:middle}th{background:#0b1622;color:#9fb3c5;font-size:9px;text-transform:uppercase;letter-spacing:.06em}td{font-size:12px;color:#d2dde7}td small{display:block;margin-top:3px}.row-unread{box-shadow:inset 3px 0 0 #4f9bea;background:#0e1e2e}.overdue{background:#29171c}.strong{font-weight:800}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.status,.badge{display:inline-flex;align-items:center;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;background:#172330;color:#a9bac9;white-space:nowrap}.badge{background:#102a42;color:#78baff;border:1px solid #244f79}.status-ok{background:#10291f;color:#5fd39a}.status-error{background:#2d171d;color:#ff7777}.status-partial{background:#2d2414;color:#f1bd61}
.feed,.health-row,.run-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #1d2a38}.feed:last-child,.health-row:last-child,.run-row:last-child{border-bottom:0}.feed>div{display:grid;gap:2px;min-width:0}.feed time,.timeline time{font-size:10px;color:#8295a8;white-space:nowrap}.dot{width:8px;height:8px;border-radius:50%;background:#6f8192;flex:none}.dot.ok{background:var(--ok);box-shadow:0 0 0 3px rgba(91,211,154,.12)}.dot.bad{background:var(--danger)}
.timeline{display:grid}.timeline-item{display:grid;grid-template-columns:15px minmax(0,1fr) auto;gap:9px;align-items:start;padding:11px 0;border-bottom:1px solid #1d2a38}.timeline-item>div{display:grid}.timeline-item.fresh{background:linear-gradient(90deg,#10283f,transparent);margin:0 -8px;padding:11px 8px;border-radius:7px}
.details{display:grid;grid-template-columns:130px 1fr;gap:9px 14px}.details dt{color:#7f93a6;font-weight:750}.details dd{margin:0}.mini-feed>div{padding:10px 0;border-top:1px solid #1d2a38}.mini-feed p{margin:5px 0}.pub-text{white-space:pre-wrap;max-height:520px;overflow:auto;background:#0a1420;border:1px solid #213043;border-radius:9px;padding:15px;line-height:1.62}.scope-note{background:#0c1d2c;border:1px solid #244867;border-radius:8px;padding:10px 12px;color:#a9c7e2;font-size:11px}.empty{text-align:center;color:#657b90;padding:25px 10px}
.alert{border:1px solid #2b3b4c;border-radius:8px;padding:10px 12px;margin-bottom:16px}.alert.success{background:#10281f;color:#73dbaa;border-color:#225b42}.alert.error{background:#2c171d;color:#ff9292;border-color:#5c2933}.error-text,.bad-text{color:var(--danger)}.ok-text{color:var(--ok)}.warn-text{color:var(--warn)}
.agenda{display:grid}.agenda-item{display:grid;grid-template-columns:70px 1fr;gap:14px;align-items:center;padding:12px;border-bottom:1px solid #1d2a38;border-radius:8px}.agenda-item>time{display:grid;text-align:center}.agenda-item>time strong{font-size:25px}.agenda-item>div{display:grid;gap:3px;justify-items:start}
pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#0a1420;padding:10px;border-radius:7px;color:#cbd6e0}
.auth-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 0,rgba(50,118,190,.15),transparent 34%),#08101a}.login-card{width:min(430px,92vw);background:#0f1824;border:1px solid #263547;border-radius:13px;padding:30px;box-shadow:0 24px 70px rgba(0,0,0,.3)}.login-card h1{font-size:28px}
.errorlist{color:#ff9292;margin:3px 0;padding-left:18px}
@media(max-width:1200px){.kpis{grid-template-columns:repeat(2,1fr)}.process-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:980px){.app-shell{display:block}.sidebar{position:relative;height:auto}.sidebar nav{display:flex;overflow-x:auto}.sidebar nav a,.nav-label{white-space:nowrap}.sidebar-foot{display:none}.content{padding:20px}.grid2{grid-template-columns:1fr}}
@media(max-width:680px){.page-head,.hero{align-items:flex-start;flex-direction:column}.kpis,.small-kpis,.process-kpis,.filters,.filters.wide{grid-template-columns:1fr}.content{padding:16px 12px}.topbar{padding:0 12px}.brand{border-bottom:0}.sidebar{padding-bottom:4px}.agenda-item{grid-template-columns:55px 1fr}}

.danger-button{background:#2b151b!important;border-color:#6a2f3b!important;color:#ff9da8!important}.danger-button:hover{background:#381920!important;border-color:#8b3d4b!important}


/* V1 Etapa 3.2 — vínculos Cliente ↔ Processo */
.relation-panel .panel-head{align-items:flex-start}.relation-list{display:grid;gap:9px;margin:12px 0 16px}.relation-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px;background:#0b1622;border:1px solid #223448;border-radius:9px}.relation-card>div:first-child{display:grid;gap:2px}.relation-actions{display:flex;gap:7px;flex-wrap:wrap}.relation-actions form,.relation-card form{margin:0}.badge-primary{background:#123022!important;color:#70dda8!important;border-color:#285f46!important}.inline-form{display:grid;grid-template-columns:minmax(250px,2fr) minmax(170px,1fr) auto;gap:10px;align-items:end;padding-top:14px;border-top:1px solid #203043}.single-number-form{grid-template-columns:minmax(300px,1fr) auto;margin-top:15px}.compact-relation{grid-template-columns:minmax(0,1fr) auto auto;margin-bottom:8px}.compact-relation .mono{overflow-wrap:anywhere}
@media(max-width:800px){.relation-card,.inline-form,.single-number-form,.compact-relation{grid-template-columns:1fr}.relation-actions{justify-content:flex-start}}


/* ETAPA 3.5 — Centro de Sincronização */
.sync-overview { margin: 18px 0; }
.sync-mini-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(120px, 1fr));
  gap: 10px;
  margin: 14px 0;
}
.sync-mini-grid > div {
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 12px;
  background: rgba(255,255,255,.015);
}
.sync-mini-grid span, .sync-mini-grid small { display: block; }
.sync-mini-grid span { color: var(--muted); font-size: 12px; margin-bottom: 6px; }
.sync-mini-grid strong { font-size: 20px; }
.sync-job-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 0;
  border-top: 1px solid var(--line);
}
.sync-job-row small { display: block; color: var(--muted); margin-top: 3px; }
.text-ok { color: #66e0a3 !important; }
.text-bad { color: #ff7a86 !important; }
.sync-status-queued { background: rgba(104, 163, 255, .12); color: #8fc0ff; }
.sync-status-running { background: rgba(246, 190, 74, .12); color: #ffd277; }
.sync-status-success { background: rgba(73, 205, 139, .12); color: #66e0a3; }
.sync-status-error { background: rgba(255, 93, 108, .13); color: #ff8e98; }
.sync-status-cancelled { opacity: .7; }
.progress-track {
  width: 180px;
  max-width: 100%;
  height: 8px;
  background: rgba(255,255,255,.07);
  border-radius: 999px;
  overflow: hidden;
  margin-bottom: 5px;
}
.progress-track > span {
  display: block;
  height: 100%;
  background: currentColor;
  border-radius: 999px;
}
.data-table td small { display: block; margin-top: 5px; }
@media (max-width: 1100px) {
  .sync-mini-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 700px) {
  .sync-mini-grid { grid-template-columns: repeat(2, 1fr); }
}


/* ETAPA 3.7 — atualização parcial sem recarregar a página */
.refresh-button {
  white-space: nowrap;
}
.refresh-button:disabled {
  opacity: .65;
  cursor: wait;
}


/* ETAPA 3.8 — Caixa de entrada jurídica */
.publication-kpis {
  margin-bottom: 16px;
}
.publication-status-new { color: #8fc0ff; }
.publication-status-review { color: #ffd277; }
.publication-status-action { color: #ff9e72; }
.publication-status-done { color: #66e0a3; }
.publication-status-archived { opacity: .72; }


/* ETAPA 3.8.1 — status histórico/importado */
.publication-status-historical {
  color: var(--muted);
  background: rgba(255,255,255,.05);
}


/* ETAPA 3.9 — Agenda jurídica e controle de prazos */
.workflow-kpis {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.task-kpis {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.workflow-filters {
  display: grid;
  grid-template-columns: minmax(260px, 2fr) repeat(3, minmax(150px, 1fr)) auto auto;
  gap: 10px;
  align-items: end;
}
.agenda-filters {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(220px, 1.2fr) auto auto;
  gap: 10px;
  align-items: end;
  max-width: 900px;
}
.row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}
.row-actions form {
  margin: 0;
}
.row-actions button {
  min-height: 30px;
  padding: 5px 8px;
  font-size: 11px;
}
.due-today {
  background: rgba(236, 181, 66, .08);
  box-shadow: inset 3px 0 0 rgba(236, 181, 66, .75);
}
.text-warn {
  color: #ffd277 !important;
}
.priority-urgent {
  color: #ff8e98;
}
.priority-high {
  color: #ffd277;
}
.task-status-doing {
  color: #8fc0ff;
}
.task-status-waiting {
  color: #ffd277;
}
.task-status-done {
  color: #66e0a3;
}
.agenda-section {
  scroll-margin-top: 90px;
}
.agenda-event-content {
  min-width: 0;
}
.agenda-event-top {
  display: flex;
  gap: 7px;
  align-items: center;
}
.agenda-edit-link {
  font-size: 11px;
  margin-top: 2px;
}
.feed-danger {
  background: rgba(255, 93, 108, .07);
  border-radius: 8px;
  padding-left: 8px;
  padding-right: 8px;
}
.daily-control h3 {
  margin: 4px 0 10px;
}
@media(max-width:1200px) {
  .workflow-kpis,
  .task-kpis {
    grid-template-columns: repeat(2, 1fr);
  }
  .workflow-filters {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media(max-width:680px) {
  .workflow-kpis,
  .task-kpis,
  .workflow-filters,
  .agenda-filters {
    grid-template-columns: 1fr;
  }
}


/* ETAPA 3.10 — Dossiê Processual 360 */
.dossier-statusbar {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}
.dossier-statusbar > div,
.summary-card,
.dossier-task-card {
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255,255,255,.015);
}
.dossier-statusbar > div {
  padding: 12px 14px;
}
.dossier-statusbar span,
.summary-card span {
  display: block;
  color: var(--muted);
  font-size: 11px;
  margin-bottom: 5px;
}
.dossier-statusbar strong {
  font-size: 15px;
}
.dossier-kpis {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.attention-soft {
  background: rgba(69, 151, 236, .08) !important;
}
.dossier-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.summary-card {
  padding: 14px;
  min-height: 126px;
}
.summary-card strong,
.summary-card small,
.summary-card a {
  display: block;
}
.summary-card strong {
  margin-bottom: 6px;
}
.summary-card small {
  color: var(--muted);
  margin-bottom: 8px;
}
.timeline-kind {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--muted);
  margin-bottom: 3px;
}
.dossier-task-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.dossier-task-card {
  padding: 12px;
  display: flex;
  justify-content: space-between;
  gap: 18px;
}
.dossier-task-card strong,
.dossier-task-card small,
.dossier-task-card time,
.dossier-task-card a {
  display: block;
}
.dossier-task-card strong {
  margin: 5px 0;
}
.dossier-task-card small {
  color: var(--muted);
}
.dossier-task-card > div:last-child {
  text-align: right;
  min-width: 90px;
}
.dossier-task-card time {
  margin-bottom: 8px;
}
#clientes,
#timeline-unificada,
#movimentacoes,
#publicacoes,
#prazos,
#tarefas {
  scroll-margin-top: 90px;
}
@media (max-width: 1100px) {
  .dossier-statusbar,
  .dossier-summary-grid,
  .dossier-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 700px) {
  .dossier-statusbar,
  .dossier-summary-grid,
  .dossier-kpis,
  .dossier-task-grid {
    grid-template-columns: 1fr;
  }
}


/* ETAPA 3.11 — Usuários, perfis e auditoria */
.user-kpis {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.admin-filters {
  display: grid;
  grid-template-columns: minmax(260px, 2fr) minmax(180px, 1fr) minmax(160px, 1fr) auto auto;
  gap: 10px;
  align-items: end;
}
.audit-filters {
  display: grid;
  grid-template-columns: minmax(230px, 1.6fr) minmax(150px, 1fr) minmax(180px, 1.2fr) 145px 145px auto auto;
  gap: 10px;
  align-items: end;
}
.info-list > div {
  padding: 10px 0;
  border-bottom: 1px solid var(--line);
}
.info-list > div:last-child {
  border-bottom: 0;
}
.info-list span,
.info-list strong {
  display: block;
}
.info-list span {
  color: var(--muted);
  font-size: 11px;
  margin-bottom: 4px;
}
.audit-details {
  padding: 10px 0 2px;
  max-width: 900px;
}
.audit-details pre {
  white-space: pre-wrap;
  word-break: break-word;
  background: rgba(255,255,255,.035);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
  max-height: 260px;
  overflow: auto;
}
@media (max-width: 1200px) {
  .admin-filters,
  .audit-filters {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 680px) {
  .user-kpis,
  .admin-filters,
  .audit-filters {
    grid-template-columns: 1fr;
  }
}


/* ETAPA 3.12 — Central de Alertas */
.alert-kpis,
.alert-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.alert-summary-grid {
  margin-bottom: 14px;
}
.alert-summary-grid a {
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 12px;
  background: rgba(255,255,255,.015);
}
.alert-summary-grid span,
.alert-summary-grid strong {
  display: block;
}
.alert-summary-grid span {
  color: var(--muted);
  font-size: 11px;
  margin-bottom: 5px;
}
.alert-summary-grid strong {
  font-size: 22px;
}
.alert-filters {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(190px, 1fr) auto auto;
  gap: 10px;
  align-items: end;
  max-width: 800px;
}
.alert-center-list {
  display: grid;
  gap: 8px;
}
.alert-center-item {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto 18px;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 12px;
  background: rgba(255,255,255,.012);
  text-decoration: none;
}
.alert-center-item:hover {
  background: rgba(255,255,255,.03);
}
.alert-severity-critical {
  box-shadow: inset 3px 0 0 rgba(255, 93, 108, .8);
}
.alert-severity-warning {
  box-shadow: inset 3px 0 0 rgba(236, 181, 66, .75);
}
.alert-severity-info {
  box-shadow: inset 3px 0 0 rgba(86, 157, 230, .65);
}
.alert-center-icon {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 50%;
  font-weight: 800;
}
.alert-center-main strong,
.alert-center-main small {
  display: block;
}
.alert-center-main strong {
  margin: 5px 0;
}
.alert-center-main small {
  color: var(--muted);
}
.alert-center-meta {
  display: flex;
  gap: 6px;
  align-items: center;
}
.alert-center-item time {
  color: var(--muted);
  font-size: 11px;
  white-space: nowrap;
}
.alert-center-arrow {
  font-size: 22px;
  opacity: .65;
}
.dashboard-alert-feed {
  text-decoration: none;
}
.panel-attention {
  box-shadow: inset 0 2px 0 rgba(255, 93, 108, .35);
}
@media (max-width: 850px) {
  .alert-kpis,
  .alert-summary-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .alert-center-item {
    grid-template-columns: 30px minmax(0, 1fr) 18px;
  }
  .alert-center-item time {
    display: none;
  }
}
@media (max-width: 650px) {
  .alert-filters,
  .alert-kpis,
  .alert-summary-grid {
    grid-template-columns: 1fr;
  }
}


/* ETAPA 3.13 — Documentos e Peças */
.document-kpis {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.document-filters {
  display: grid;
  grid-template-columns: minmax(280px, 2fr) repeat(3, minmax(160px, 1fr)) auto auto;
  gap: 10px;
  align-items: end;
}
.cloud-document-panel {
  overflow: hidden;
}
.cloud-document-panel code,
.document-extracted-preview {
  overflow-wrap: anywhere;
  word-break: break-word;
}
.cloud-link {
  display: block;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,.025);
  white-space: normal;
  overflow-wrap: anywhere;
}
#documentos {
  scroll-margin-top: 90px;
}
@media(max-width:1100px) {
  .document-filters {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media(max-width:680px) {
  .document-kpis,
  .document-filters {
    grid-template-columns: 1fr;
  }
}


/* ETAPA 3.14 — Pesquisa Global 360 */
.topbar {
  gap: 18px;
}
.topbar-title {
  min-width: 150px;
}
.top-global-search {
  flex: 1;
  max-width: 620px;
  min-width: 220px;
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 4px 8px 4px 10px;
  background: rgba(255,255,255,.02);
}
.top-global-search:focus-within {
  border-color: rgba(100, 168, 235, .65);
  box-shadow: 0 0 0 3px rgba(79, 145, 210, .08);
}
.top-global-search input {
  flex: 1;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  min-height: 31px;
  padding: 3px 0;
}
.top-global-search kbd {
  color: var(--muted);
  border: 1px solid var(--line);
  border-radius: 5px;
  min-width: 23px;
  height: 23px;
  display: grid;
  place-items: center;
  font-size: 11px;
  background: rgba(255,255,255,.025);
}
.global-search-hero {
  padding: 18px;
}
.global-search-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  margin-bottom: 8px;
}
.global-search-form input {
  min-height: 46px;
  font-size: 15px;
}
.search-result-summary {
  display: flex;
  gap: 8px;
  align-items: baseline;
  margin: 16px 0;
}
.search-result-summary strong {
  font-size: 28px;
}
.search-result-summary span {
  color: var(--muted);
}
.search-group {
  scroll-margin-top: 90px;
}
.global-result-list {
  display: grid;
  gap: 7px;
}
.global-result-item {
  display: grid;
  grid-template-columns: 105px minmax(0, 1fr) auto 16px;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  text-decoration: none;
  background: rgba(255,255,255,.012);
}
.global-result-item:hover {
  background: rgba(255,255,255,.03);
}
.global-result-kind {
  color: var(--muted);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.global-result-main {
  min-width: 0;
}
.global-result-main strong,
.global-result-main small {
  display: block;
}
.global-result-main small {
  color: var(--muted);
  margin-top: 3px;
}
.global-result-main p {
  color: var(--muted);
  margin: 6px 0 0;
  line-height: 1.35;
}
.global-result-item time {
  color: var(--muted);
  font-size: 11px;
  white-space: nowrap;
}
.global-result-arrow {
  font-size: 22px;
  opacity: .6;
}
.search-empty {
  display: grid;
  gap: 5px;
  min-height: 130px;
  place-content: center;
  text-align: center;
}
.search-empty span {
  color: var(--muted);
}
@media(max-width:900px) {
  .top-global-search {
    max-width: none;
  }
  .global-result-item {
    grid-template-columns: 80px minmax(0, 1fr) 16px;
  }
  .global-result-item time {
    display: none;
  }
}
@media(max-width:680px) {
  .topbar {
    flex-wrap: wrap;
  }
  .topbar-title {
    min-width: 0;
  }
  .top-global-search {
    order: 3;
    flex-basis: 100%;
  }
  .global-search-form {
    grid-template-columns: 1fr;
  }
  .global-result-item {
    grid-template-columns: 1fr 18px;
  }
  .global-result-kind {
    grid-column: 1 / -1;
  }
}


/* ETAPA 3.15 — Relatórios 360 e Exportação */
.report-filter {
  display: grid;
  grid-template-columns: minmax(300px, 1fr) auto;
  gap: 10px;
  align-items: end;
  max-width: 700px;
}
.report-kpis {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.report-bars {
  display: grid;
  gap: 12px;
}
.report-row {
  display: grid;
  grid-template-columns: minmax(130px, 1fr) minmax(120px, 2fr) 42px;
  gap: 10px;
  align-items: center;
}
.report-row > span {
  font-size: 12px;
}
.report-row > strong {
  text-align: right;
}
.report-bar {
  height: 9px;
  border-radius: 999px;
  background: rgba(255,255,255,.05);
  overflow: hidden;
}
.report-bar i {
  display: block;
  height: 100%;
  min-width: 3px;
  border-radius: inherit;
  background: currentColor;
  opacity: .65;
}
.report-ranking {
  display: grid;
  gap: 5px;
}
.report-ranking > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid var(--line);
}
.report-ranking > div:last-child {
  border-bottom: 0;
}
.export-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.export-grid a {
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 14px;
  text-decoration: none;
  background: rgba(255,255,255,.015);
}
.export-grid a:hover {
  background: rgba(255,255,255,.035);
}
.export-grid strong,
.export-grid small,
.export-grid span {
  display: block;
}
.export-grid small {
  color: var(--muted);
  min-height: 36px;
  margin: 5px 0 10px;
}
.export-grid span {
  font-size: 11px;
}
@media(max-width:1200px) {
  .report-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .export-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media(max-width:680px) {
  .report-filter,
  .report-kpis,
  .export-grid {
    grid-template-columns: 1fr;
  }
  .report-row {
    grid-template-columns: 1fr 60px;
  }
  .report-bar {
    grid-column: 1 / -1;
    grid-row: 2;
  }
}


/* ETAPA 3.16 — Calendário Jurídico Mensal */
.calendar-kpis {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.calendar-toolbar {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: end;
}
.calendar-nav,
.calendar-filters {
  display: flex;
  gap: 8px;
  align-items: end;
  flex-wrap: wrap;
}
.calendar-filters label {
  min-width: 165px;
}
.calendar-panel {
  overflow-x: auto;
}
.calendar-weekdays,
.calendar-grid {
  min-width: 980px;
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
}
.calendar-weekdays {
  border: 1px solid var(--line);
  border-bottom: 0;
  border-radius: 10px 10px 0 0;
  overflow: hidden;
}
.calendar-weekdays strong {
  padding: 9px;
  text-align: center;
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .08em;
  border-right: 1px solid var(--line);
}
.calendar-weekdays strong:last-child {
  border-right: 0;
}
.calendar-grid {
  border-left: 1px solid var(--line);
  border-top: 1px solid var(--line);
}
.calendar-day {
  min-height: 150px;
  padding: 8px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: rgba(255,255,255,.008);
}
.calendar-day.outside-month {
  opacity: .32;
  background: rgba(255,255,255,.003);
}
.calendar-today {
  background: rgba(86, 157, 230, .06);
  box-shadow: inset 0 0 0 2px rgba(86, 157, 230, .35);
}
.calendar-day-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 7px;
}
.calendar-day-head > span {
  font-weight: 800;
}
.calendar-day-head small {
  color: var(--muted);
  font-size: 10px;
}
.calendar-events {
  display: grid;
  gap: 5px;
}
.calendar-event {
  display: block;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 6px;
  text-decoration: none;
  background: rgba(255,255,255,.018);
  overflow: hidden;
}
.calendar-event:hover {
  background: rgba(255,255,255,.04);
}
.calendar-event > span {
  display: block;
  font-size: 9px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .07em;
}
.calendar-event > strong,
.calendar-event > small {
  display: block;
}
.calendar-event > strong {
  font-size: 11px;
  margin: 2px 0;
}
.calendar-event > small {
  font-size: 9px;
  color: var(--muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.calendar-event-deadline {
  box-shadow: inset 3px 0 0 rgba(255, 170, 70, .75);
}
.calendar-event-task {
  box-shadow: inset 3px 0 0 rgba(86, 157, 230, .65);
}
.calendar-event-urgent {
  background: rgba(255, 93, 108, .07);
  box-shadow: inset 3px 0 0 rgba(255, 93, 108, .85);
}
.calendar-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
}
.calendar-legend > div {
  display: flex;
  gap: 7px;
  align-items: center;
}
.legend-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  display: inline-block;
  border: 2px solid currentColor;
}
.deadline-dot {
  color: rgba(255, 170, 70, .9);
}
.task-dot {
  color: rgba(86, 157, 230, .9);
}
.urgent-dot {
  color: rgba(255, 93, 108, .95);
}
@media(max-width:850px) {
  .calendar-toolbar {
    align-items: stretch;
    flex-direction: column;
  }
  .calendar-kpis {
    grid-template-columns: 1fr;
  }
}


/* ETAPA 3.17 — Fechamento V1 */
.release-banner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 16px 18px;
  margin-bottom: 14px;
}
.release-banner span,
.release-banner strong {
  display: block;
}
.release-banner > div > span {
  color: var(--muted);
  font-size: 11px;
  margin-bottom: 4px;
}
.release-ready {
  background: rgba(67, 196, 132, .07);
}
.release-attention {
  background: rgba(236, 181, 66, .06);
}
.diagnostic-kpis {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.diagnostic-list {
  display: grid;
  gap: 7px;
}
.diagnostic-row {
  display: grid;
  grid-template-columns: 16px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px 0;
  border-bottom: 1px solid var(--line);
}
.diagnostic-row:last-child {
  border-bottom: 0;
}
.diagnostic-row strong,
.diagnostic-row small {
  display: block;
}
.diagnostic-row small {
  color: var(--muted);
  margin-top: 3px;
}
.check-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.check-grid > div {
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 12px;
  display: flex;
  gap: 10px;
  align-items: center;
}
.check-grid strong {
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 50%;
}
.error-page {
  max-width: 720px;
  margin: 8vh auto;
  text-align: center;
  padding: 42px;
}
.error-code {
  font-size: 58px;
  font-weight: 900;
  opacity: .18;
}
@media(max-width:1100px) {
  .diagnostic-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .check-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media(max-width:650px) {
  .diagnostic-kpis,
  .check-grid {
    grid-template-columns: 1fr;
  }
}


/* ETAPA 3.17.2 — Tratamento seguro TLS DJEN */
.tls-error-text {
  margin: 7px 0 0;
  padding: 9px 10px;
  border: 1px solid rgba(236, 181, 66, .30);
  border-radius: 8px;
  background: rgba(236, 181, 66, .06);
  color: #ffd277;
  line-height: 1.45;
}
.tls-error-text strong {
  color: inherit;
}


/* ETAPA 3.17.5 - Relatorios profissionais PDF */
.export-card {
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 14px;
  background: rgba(255,255,255,.012);
}
.export-card > strong,
.export-card > small {
  display: block;
}
.export-card > small {
  color: var(--muted);
  min-height: 34px;
  margin: 5px 0 12px;
}
.export-actions {
  display: flex;
  gap: 7px;
}
.export-actions a {
  flex: 1;
  text-align: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 7px 8px;
  text-decoration: none;
  font-size: 11px;
}
.export-actions a:hover {
  background: rgba(255,255,255,.04);
}
.export-actions .export-primary {
  background: rgba(65, 139, 220, .13);
  border-color: rgba(65, 139, 220, .36);
  font-weight: 800;
}


/* ETAPA 3.17.6 - Interface somente leitura */
.readonly-strip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 14px;
  padding: 5px 9px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(255,255,255,.018);
  color: var(--muted);
}
.readonly-strip span {
  color: var(--text);
  font-size: 11px;
  font-weight: 800;
}
.readonly-strip small,
.readonly-label {
  color: var(--muted);
  font-size: 11px;
}
.readonly-details {
  margin-bottom: 0;
}


/* =========================================================
   ETAPA 3.18 — G360 MINIMAL
   Design System + Novo Painel
   ========================================================= */

:root {
  --g360-bg: #08111d;
  --g360-bg-2: #0a1421;
  --g360-panel: #0e1927;
  --g360-panel-soft: #101d2d;
  --g360-line: #1e3043;
  --g360-line-soft: rgba(148, 170, 193, .13);
  --g360-text: #eef4fa;
  --g360-muted: #8297ad;
  --g360-accent: #4b9cff;
  --g360-accent-soft: rgba(75, 156, 255, .12);
  --g360-danger: #ff7d87;
  --g360-danger-soft: rgba(255, 87, 102, .09);
  --g360-ok: #65d9a3;
  --g360-radius: 14px;
  --g360-shadow: 0 18px 55px rgba(0, 0, 0, .13);
}

html,
body {
  background:
    radial-gradient(circle at 65% -10%, rgba(57, 117, 184, .07), transparent 30%),
    var(--g360-bg);
  color: var(--g360-text);
}

body {
  letter-spacing: -.005em;
}

.app-shell {
  grid-template-columns: 224px minmax(0, 1fr);
  transition: grid-template-columns .18s ease;
}

.sidebar {
  padding: 12px 10px;
  background: linear-gradient(180deg, #08121f 0%, #091522 100%);
  border-right: 1px solid var(--g360-line-soft);
}

.brand-row {
  display: flex;
  align-items: center;
  gap: 6px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--g360-line-soft);
}

.brand {
  min-width: 0;
  flex: 1;
  border: 0;
  padding: 6px;
  gap: 10px;
}

.brand-mark,
.brand > span {
  width: 40px;
  height: 40px;
  border-radius: 11px;
  border: 1px solid rgba(75, 156, 255, .62);
  background: linear-gradient(145deg, rgba(50, 122, 212, .22), rgba(28, 66, 112, .24));
  color: #dcebff;
  box-shadow: inset 0 0 18px rgba(75, 156, 255, .08);
  font-size: 11px;
}

.brand-copy {
  min-width: 0;
  display: grid;
}

.brand-copy strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.brand-copy small {
  color: var(--g360-muted);
}

.sidebar-toggle {
  min-height: 30px;
  width: 30px;
  padding: 0;
  border-radius: 8px;
  background: transparent;
  border-color: transparent;
  color: var(--g360-muted);
  font-size: 22px;
}

.sidebar-toggle:hover {
  background: rgba(255,255,255,.04);
  border-color: var(--g360-line-soft);
}

.sidebar nav {
  gap: 2px;
  padding-top: 12px;
  scrollbar-width: thin;
}

.sidebar nav a {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 39px;
  padding: 8px 9px;
  color: #a8b7c7;
  border: 1px solid transparent;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 620;
}

.sidebar nav a:hover {
  background: rgba(255,255,255,.028);
  border-color: var(--g360-line-soft);
}

.sidebar nav a.is-active {
  color: #f3f7fc;
  background: linear-gradient(90deg, rgba(58, 123, 197, .15), rgba(255,255,255,.025));
  border-color: rgba(86, 145, 207, .14);
  box-shadow: inset 2px 0 0 var(--g360-accent);
}

.nav-icon {
  flex: 0 0 20px;
  width: 20px;
  text-align: center;
  color: #8aa5c0;
  font-size: 13px;
}

.is-active .nav-icon {
  color: var(--g360-accent);
}

.nav-copy {
  min-width: 0;
  white-space: nowrap;
}

.nav-label {
  padding: 16px 9px 4px;
  color: #526b84;
}

.sidebar-foot {
  grid-template-columns: 34px minmax(0,1fr);
  align-items: center;
  gap: 9px;
  padding: 12px 7px 3px;
  border-color: var(--g360-line-soft);
}

.sidebar-user-avatar {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #132d4a;
  color: #9bc9ff;
  border: 1px solid rgba(75,156,255,.2);
  font-weight: 850;
}

.foot-copy {
  display: grid;
  min-width: 0;
}

.foot-copy strong {
  font-size: 11px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.foot-copy small {
  font-size: 9px;
}

/* Sidebar recolhida */
.app-shell.sidebar-collapsed {
  grid-template-columns: 72px minmax(0, 1fr);
}

.sidebar-collapsed .brand-copy,
.sidebar-collapsed .nav-copy,
.sidebar-collapsed .foot-copy,
.sidebar-collapsed .nav-label {
  display: none;
}

.sidebar-collapsed .brand-row {
  justify-content: center;
}

.sidebar-collapsed .brand {
  flex: 0;
  padding: 5px 0;
}

.sidebar-collapsed .sidebar-toggle {
  position: absolute;
  top: 62px;
}

.sidebar-collapsed .sidebar nav {
  padding-top: 42px;
}

.sidebar-collapsed .sidebar nav a {
  justify-content: center;
  padding-left: 5px;
  padding-right: 5px;
}

.sidebar-collapsed .sidebar-foot {
  display: flex;
  justify-content: center;
}

.topbar {
  height: 64px;
  gap: 18px;
  padding: 0 22px;
  border-bottom: 1px solid var(--g360-line-soft);
  background: rgba(8, 17, 29, .91);
  backdrop-filter: blur(18px);
}

.topbar-title {
  min-width: 135px;
}

.topbar-title strong {
  font-size: 12px;
}

.top-global-search {
  max-width: 560px;
  margin: 0 auto;
  border-radius: 11px;
  border-color: rgba(132, 158, 184, .16);
  background: rgba(255,255,255,.018);
  min-height: 42px;
}

.top-global-search input {
  font-size: 12px;
}

.top-actions {
  min-width: 188px;
  justify-content: flex-end;
}

.quick-create {
  position: relative;
}

.quick-create summary {
  list-style: none;
  cursor: pointer;
  border-radius: 9px;
  padding: 9px 14px;
  background: linear-gradient(180deg, #3188e7, #236fc2);
  color: #fff;
  border: 1px solid rgba(100, 177, 255, .35);
  font-weight: 800;
  font-size: 12px;
  box-shadow: 0 8px 28px rgba(34, 111, 194, .17);
}

.quick-create summary::-webkit-details-marker {
  display: none;
}

.quick-create-menu {
  position: absolute;
  z-index: 60;
  top: calc(100% + 9px);
  right: 0;
  width: 255px;
  padding: 7px;
  background: #0d1927;
  border: 1px solid #26394c;
  border-radius: 12px;
  box-shadow: 0 22px 60px rgba(0,0,0,.36);
}

.quick-create-menu a {
  display: grid;
  gap: 1px;
  padding: 9px 10px;
  border-radius: 8px;
  color: var(--g360-text);
}

.quick-create-menu a:hover {
  text-decoration: none;
  background: rgba(255,255,255,.04);
}

.quick-create-menu small {
  font-size: 9px;
}

.avatar {
  width: 32px;
  height: 32px;
  background: #132c49;
}

.content {
  max-width: 1500px;
  width: 100%;
  margin: 0 auto;
  padding: 28px 30px 58px;
}

.panel {
  border-radius: var(--g360-radius);
  border-color: var(--g360-line-soft);
  background: linear-gradient(180deg, rgba(17, 30, 46, .93), rgba(13, 24, 37, .96));
  box-shadow: none;
}

.minimal-hero {
  display: flex;
  justify-content: space-between;
  align-items: end;
  min-height: 86px;
  margin-bottom: 18px;
}

.minimal-hero h1 {
  margin: 5px 0 4px;
  font-size: clamp(28px, 3vw, 38px);
  line-height: 1.03;
  letter-spacing: -.045em;
}

.minimal-hero p {
  margin: 0;
  font-size: 12px;
}

.minimal-attention {
  display: grid;
  grid-template-columns: 34px minmax(0,1fr) auto;
  align-items: center;
  gap: 11px;
  margin-bottom: 14px;
  padding: 10px 12px;
  border: 1px solid rgba(255, 106, 118, .2);
  border-radius: 11px;
  background: rgba(255, 84, 98, .055);
  color: var(--g360-text);
}

.minimal-attention:hover {
  text-decoration: none;
  background: rgba(255, 84, 98, .075);
}

.minimal-attention-icon {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #ffb2b8;
  background: rgba(255, 90, 104, .12);
  font-weight: 900;
}

.minimal-attention div {
  display: grid;
}

.minimal-attention small,
.minimal-attention > span:last-child {
  color: #a8b6c6;
  font-size: 10px;
}

.minimal-primary-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 12px;
  margin-bottom: 12px;
}

.minimal-kpi {
  min-height: 132px;
  display: grid;
  grid-template-columns: 48px minmax(0,1fr);
  align-items: start;
  gap: 14px;
  padding: 18px;
  border: 1px solid var(--g360-line-soft);
  border-radius: var(--g360-radius);
  background:
    linear-gradient(180deg, rgba(18, 32, 49, .96), rgba(13, 25, 39, .96));
  color: var(--g360-text);
  overflow: hidden;
  position: relative;
}

.minimal-kpi::after {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 13px;
  height: 2px;
  border-radius: 99px;
  background: linear-gradient(90deg, rgba(75,156,255,.72) 0 34%, rgba(255,255,255,.055) 34% 100%);
}

.minimal-kpi:hover {
  text-decoration: none;
  border-color: rgba(75,156,255,.28);
  transform: translateY(-1px);
}

.minimal-kpi.is-critical {
  border-color: rgba(255, 101, 112, .22);
}

.minimal-kpi.is-critical::after {
  background: linear-gradient(90deg, rgba(255,101,112,.72) 0 45%, rgba(255,255,255,.055) 45% 100%);
}

.minimal-kpi-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: #65aaff;
  background: linear-gradient(145deg, rgba(49,125,220,.22), rgba(42,91,153,.10));
  border: 1px solid rgba(75,156,255,.10);
  font-size: 18px;
}

.minimal-kpi-copy {
  display: grid;
}

.minimal-kpi-copy > span {
  color: #a8b7c7;
  font-size: 11px;
  font-weight: 680;
}

.minimal-kpi-copy > strong {
  margin: 4px 0 0;
  font-size: 30px;
  line-height: 1;
  letter-spacing: -.035em;
}

.minimal-kpi-copy > small {
  margin-top: 8px;
  font-size: 9px;
}

.minimal-secondary-kpis {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 8px;
  margin-bottom: 14px;
}

.minimal-secondary-kpis > a {
  display: grid;
  grid-template-columns: 34px minmax(0,1fr) 16px;
  align-items: center;
  gap: 9px;
  min-height: 68px;
  padding: 10px 12px;
  border: 1px solid var(--g360-line-soft);
  border-radius: 12px;
  background: rgba(255,255,255,.012);
  color: var(--g360-text);
}

.minimal-secondary-kpis > a:hover {
  text-decoration: none;
  background: rgba(255,255,255,.026);
}

.minimal-mini-icon {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  background: rgba(77, 127, 181, .10);
  color: #8db7e6;
}

.minimal-secondary-kpis div {
  display: grid;
}

.minimal-secondary-kpis small {
  font-size: 9px;
}

.minimal-secondary-kpis strong {
  margin-top: 1px;
  font-size: 18px;
}

.minimal-secondary-kpis b {
  color: #6f879f;
  font-size: 20px;
}

.minimal-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0,1.8fr) minmax(320px,.9fr);
  gap: 14px;
  align-items: stretch;
}

.minimal-daily,
.minimal-week,
.minimal-activity {
  margin-bottom: 14px;
}

.minimal-panel-head {
  align-items: flex-start;
  margin-bottom: 12px;
}

.minimal-panel-head h2 {
  margin: 2px 0 0;
  font-size: 14px;
}

.minimal-section-kicker {
  color: #91a5b9;
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 800;
}

.minimal-panel-head > a {
  font-size: 10px;
}

.minimal-daily-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
}

.minimal-focus-card {
  min-height: 210px;
  padding: 13px;
  border: 1px solid var(--g360-line-soft);
  border-radius: 12px;
  background: rgba(255,255,255,.009);
}

.minimal-focus-title {
  display: flex;
  gap: 8px;
  align-items: center;
  padding-bottom: 9px;
  color: #cbd7e3;
  font-size: 11px;
}

.minimal-focus-title > span {
  color: #7698bb;
}

.minimal-focus-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid var(--g360-line-soft);
}

.minimal-focus-row div {
  display: grid;
  min-width: 0;
}

.minimal-focus-row strong {
  font-size: 11px;
}

.minimal-focus-row small {
  margin-top: 3px;
  font-size: 9px;
}

.minimal-focus-row time {
  color: #8da2b7;
  font-size: 10px;
  white-space: nowrap;
}

.minimal-focus-row.is-overdue {
  box-shadow: inset 2px 0 0 rgba(255,101,112,.65);
  padding-left: 8px;
}

.minimal-empty {
  min-height: 145px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 5px;
  text-align: center;
  color: #8195aa;
}

.minimal-empty > span {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  margin-bottom: 6px;
  border-radius: 50%;
  background: rgba(85,126,169,.10);
  color: #7698bc;
  font-size: 18px;
}

.minimal-empty strong {
  color: #aebdcb;
  font-size: 11px;
}

.minimal-empty small {
  max-width: 250px;
  font-size: 9px;
}

.minimal-week-list {
  display: grid;
}

.minimal-week-row {
  display: grid;
  grid-template-columns: 44px minmax(0,1fr) 14px;
  align-items: center;
  gap: 10px;
  min-height: 60px;
  padding: 8px 0;
  border-top: 1px solid var(--g360-line-soft);
  color: var(--g360-text);
}

.minimal-week-row:hover {
  text-decoration: none;
}

.minimal-week-row time {
  display: grid;
  justify-items: center;
  padding: 5px 3px;
  border-radius: 8px;
  background: rgba(255,255,255,.025);
}

.minimal-week-row time strong {
  line-height: 1;
  font-size: 16px;
}

.minimal-week-row time small {
  margin-top: 3px;
  font-size: 8px;
}

.minimal-week-row > div {
  display: grid;
  min-width: 0;
}

.minimal-week-row > div strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10px;
}

.minimal-week-row > div small {
  margin-top: 3px;
  font-size: 8.5px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.minimal-week-row > span {
  color: #6d8399;
  font-size: 18px;
}

.minimal-week-empty {
  min-height: 220px;
}

.minimal-activity {
  padding-bottom: 8px;
}

.minimal-activity-row {
  display: grid;
  grid-template-columns: 32px minmax(0,1fr) auto 14px;
  align-items: center;
  gap: 10px;
  min-height: 53px;
  padding: 8px 2px;
  border-top: 1px solid var(--g360-line-soft);
  color: var(--g360-text);
}

.minimal-activity-row:hover {
  text-decoration: none;
  background: rgba(255,255,255,.008);
}

.minimal-activity-icon {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  color: #72aff2;
  background: rgba(49,125,220,.10);
}

.minimal-activity-row > div {
  display: grid;
  min-width: 0;
}

.minimal-activity-row strong {
  font-size: 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.minimal-activity-row small {
  margin-top: 2px;
  font-size: 8.5px;
}

.minimal-activity-row time {
  color: #8297ad;
  font-size: 9px;
  white-space: nowrap;
}

.minimal-activity-row b {
  color: #61798f;
  font-size: 17px;
}

.minimal-monitor-strip {
  display: grid;
  grid-template-columns: minmax(190px,1.6fr) repeat(3,minmax(90px,.55fr)) repeat(2,minmax(100px,.65fr));
  gap: 8px;
  align-items: stretch;
  margin-bottom: 16px;
}

.minimal-monitor-strip > div,
.minimal-monitor-main {
  min-height: 60px;
  display: grid;
  align-content: center;
  padding: 10px 12px;
  border: 1px solid var(--g360-line-soft);
  border-radius: 11px;
  background: rgba(255,255,255,.01);
}

.minimal-monitor-main {
  grid-template-columns: 10px minmax(0,1fr);
  align-items: center;
  gap: 9px;
  color: var(--g360-text);
}

.minimal-monitor-main:hover {
  text-decoration: none;
}

.monitor-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ffca6f;
  box-shadow: 0 0 0 4px rgba(255,202,111,.07);
}

.monitor-dot.is-ok {
  background: var(--g360-ok);
  box-shadow: 0 0 0 4px rgba(101,217,163,.07);
}

.minimal-monitor-strip small {
  font-size: 8.5px;
}

.minimal-monitor-strip strong {
  margin-top: 2px;
  font-size: 11px;
}

.minimal-source-status {
  text-align: left;
}

.readonly-strip {
  margin-bottom: 10px;
  background: rgba(255,255,255,.012);
}

@media(max-width:1280px) {
  .minimal-primary-kpis {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .minimal-monitor-strip {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }
}

@media(max-width:1020px) {
  .app-shell,
  .app-shell.sidebar-collapsed {
    display: block;
  }

  .sidebar {
    position: relative;
    height: auto;
  }

  .brand-row {
    border-bottom: 0;
  }

  .sidebar-toggle {
    display: none;
  }

  .sidebar nav {
    display: flex;
    overflow-x: auto;
    padding: 8px 0 4px;
  }

  .sidebar nav a {
    flex: none;
  }

  .sidebar-foot,
  .nav-label {
    display: none;
  }

  .minimal-dashboard-grid {
    grid-template-columns: 1fr;
  }
}

@media(max-width:760px) {
  .topbar {
    height: auto;
    min-height: 64px;
    flex-wrap: wrap;
    padding: 10px 12px;
  }

  .topbar-title {
    min-width: 0;
  }

  .top-actions {
    min-width: auto;
  }

  .top-global-search {
    order: 3;
    flex-basis: 100%;
    max-width: none;
  }

  .content {
    padding: 20px 13px 45px;
  }

  .minimal-hero {
    min-height: 70px;
  }

  .minimal-primary-kpis,
  .minimal-secondary-kpis,
  .minimal-daily-grid,
  .minimal-monitor-strip {
    grid-template-columns: 1fr;
  }

  .minimal-attention {
    grid-template-columns: 30px minmax(0,1fr);
  }

  .minimal-attention > span:last-child {
    display: none;
  }

  .minimal-kpi {
    min-height: 112px;
  }

  .minimal-secondary-kpis {
    gap: 6px;
  }

  .minimal-activity-row {
    grid-template-columns: 30px minmax(0,1fr) 12px;
  }

  .minimal-activity-row time {
    display: none;
  }

  .quick-create-menu {
    position: fixed;
    top: 64px;
    right: 12px;
  }
}


/* =========================================================
   ETAPA 3.18.1 — REDESIGN RADICAL
   ========================================================= */

/* Rail compacto por padrão */
.app-shell.sidebar-collapsed {
  grid-template-columns: 76px minmax(0, 1fr);
}

.sidebar-collapsed .sidebar {
  padding-left: 8px;
  padding-right: 8px;
}

.sidebar-collapsed .brand-row {
  position: relative;
  min-height: 56px;
  justify-content: center;
}

.sidebar-collapsed .brand-mark,
.sidebar-collapsed .brand > span {
  width: 42px;
  height: 42px;
}

.sidebar-collapsed .sidebar-toggle {
  position: absolute;
  right: -17px;
  top: 15px;
  z-index: 50;
  width: 26px;
  height: 26px;
  background: #101d2b;
  border: 1px solid #26384a;
  border-radius: 50%;
  box-shadow: 0 8px 25px rgba(0,0,0,.28);
}

.sidebar-collapsed .sidebar nav {
  padding-top: 12px;
}

.sidebar-collapsed .sidebar nav a {
  width: 46px;
  min-height: 46px;
  margin: 0 auto 4px;
  border-radius: 12px;
}

.sidebar-collapsed .nav-icon {
  font-size: 15px;
}

.sidebar-collapsed .sidebar nav a.is-active {
  box-shadow: inset 3px 0 0 var(--g360-accent);
}

/* Topbar sem título duplicado */
.topbar {
  grid-template-columns: minmax(320px, 620px) auto;
  justify-content: center;
  min-height: 62px;
}

.top-global-search {
  margin-left: auto;
  margin-right: 0;
  width: min(620px, 100%);
}

.top-actions {
  margin-left: auto;
}

.topbar-title {
  display: none !important;
}

/* Conteúdo com mais respiro e menos caixas */
.content {
  max-width: 1420px;
  padding-top: 36px;
}

.command-hero {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 28px;
}

.command-hero h1 {
  max-width: 780px;
  margin: 6px 0 7px;
  font-size: clamp(34px, 4vw, 52px);
  line-height: .98;
  letter-spacing: -.055em;
}

.command-hero p {
  margin: 0;
  font-size: 13px;
}

.command-health {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  border: 1px solid rgba(132,158,184,.12);
  border-radius: 999px;
  background: rgba(255,255,255,.012);
}

.command-health div {
  display: grid;
}

.command-health small {
  font-size: 8px;
  text-transform: uppercase;
  letter-spacing: .09em;
}

.command-health strong {
  font-size: 10px;
}

.health-dot,
.source-dot,
.activity-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #efb95c;
}

.health-dot.is-ok,
.source-dot.is-ok {
  background: #65d9a3;
  box-shadow: 0 0 0 4px rgba(101,217,163,.07);
}

.source-dot.is-warn {
  background: #f1b963;
  box-shadow: 0 0 0 4px rgba(241,185,99,.07);
}

/* Faixa de métricas, sem cards */
.metric-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  margin-bottom: 12px;
  border-top: 1px solid var(--g360-line-soft);
  border-bottom: 1px solid var(--g360-line-soft);
}

.metric-strip a {
  min-height: 118px;
  display: grid;
  align-content: center;
  padding: 18px 26px;
  color: var(--g360-text);
  border-right: 1px solid var(--g360-line-soft);
  background: transparent;
}

.metric-strip a:last-child {
  border-right: 0;
}

.metric-strip a:hover {
  text-decoration: none;
  background: rgba(255,255,255,.012);
}

.metric-strip small {
  color: #8ca0b4;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.metric-strip strong {
  margin: 5px 0 3px;
  font-size: 36px;
  line-height: 1;
  letter-spacing: -.04em;
}

.metric-strip span {
  color: #72879b;
  font-size: 9px;
}

.metric-strip a.danger strong,
.metric-strip a.danger span {
  color: #ff8c95;
}

/* Fatos secundários como chips */
.quick-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0 0 26px;
}

.quick-facts a {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  padding: 7px 10px;
  border: 1px solid rgba(132,158,184,.11);
  border-radius: 999px;
  background: rgba(255,255,255,.009);
  color: #91a5b9;
  font-size: 9px;
}

.quick-facts a:hover {
  text-decoration: none;
  background: rgba(255,255,255,.018);
}

.quick-facts strong {
  color: #d8e3ee;
  font-size: 10px;
}

.attention-line {
  display: grid;
  grid-template-columns: 28px auto 1fr 16px;
  align-items: center;
  gap: 9px;
  margin-bottom: 16px;
  padding: 8px 10px;
  border-radius: 10px;
  background: rgba(255,80,92,.055);
  color: #dce5ee;
}

.attention-line:hover {
  text-decoration: none;
  background: rgba(255,80,92,.075);
}

.attention-line > span {
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(255,80,92,.12);
  color: #ff9ba3;
  font-weight: 900;
}

.attention-line strong {
  font-size: 10px;
}

.attention-line small {
  justify-self: end;
  color: #9baabc;
  font-size: 9px;
}

.attention-line b {
  color: #8ca0b4;
}

/* Centro de comando */
.command-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.85fr) minmax(290px, .65fr);
  gap: 16px;
  margin-bottom: 16px;
}

.command-panel {
  padding: 20px;
  border-top: 1px solid var(--g360-line-soft);
  border-bottom: 1px solid var(--g360-line-soft);
  background: rgba(255,255,255,.006);
}

.command-panel-head,
.activity-head {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 16px;
  margin-bottom: 14px;
}

.command-panel-head small,
.activity-head small {
  font-size: 8px;
  color: #65809a;
  letter-spacing: .12em;
}

.command-panel-head h2,
.activity-head h2 {
  margin: 3px 0 0;
  font-size: 16px;
}

.command-panel-head > a,
.activity-head > a {
  font-size: 9px;
}

.today-columns {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 18px;
}

.today-column {
  min-width: 0;
}

.today-title {
  display: grid;
  grid-template-columns: 22px minmax(0,1fr) auto;
  align-items: center;
  gap: 6px;
  padding: 0 0 9px;
  border-bottom: 1px solid var(--g360-line-soft);
}

.today-title span {
  color: #7ea8d3;
}

.today-title strong {
  font-size: 11px;
}

.today-title b {
  min-width: 24px;
  text-align: center;
  padding: 3px 6px;
  border-radius: 999px;
  background: rgba(255,255,255,.035);
  color: #9caec0;
  font-size: 9px;
}

.today-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 12px 2px;
  border-bottom: 1px solid rgba(132,158,184,.08);
  color: var(--g360-text);
}

.today-row:hover {
  text-decoration: none;
  padding-left: 7px;
}

.today-row div {
  min-width: 0;
  display: grid;
}

.today-row strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10px;
}

.today-row small {
  margin-top: 2px;
  font-size: 8px;
}

.today-row time {
  color: #8599ad;
  font-size: 9px;
}

.today-row.danger {
  box-shadow: inset 2px 0 0 rgba(255,101,112,.7);
  padding-left: 7px;
}

.today-empty {
  min-height: 155px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 4px;
  text-align: center;
}

.today-empty > span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(70,126,186,.08);
  color: #6f9ac5;
  margin-bottom: 5px;
}

.today-empty strong {
  color: #aebccb;
  font-size: 10px;
}

.today-empty small {
  max-width: 230px;
  font-size: 8.5px;
}

/* Monitor */
.monitor-panel {
  background: linear-gradient(180deg, rgba(18,31,46,.46), rgba(11,21,32,.2));
}

.monitor-source-list {
  display: grid;
  gap: 2px;
  margin-bottom: 18px;
}

.monitor-source {
  display: grid;
  grid-template-columns: 12px minmax(0,1fr);
  align-items: center;
  gap: 8px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(132,158,184,.07);
}

.monitor-source div {
  display: grid;
}

.monitor-source strong {
  font-size: 10px;
}

.monitor-source small {
  margin-top: 2px;
  font-size: 8px;
}

.monitor-numbers {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 8px;
  margin-bottom: 15px;
}

.monitor-numbers > div {
  padding: 10px;
  border-radius: 9px;
  background: rgba(255,255,255,.014);
}

.monitor-numbers small {
  font-size: 8px;
}

.monitor-numbers strong {
  display: block;
  margin-top: 2px;
  font-size: 17px;
}

.monitor-link {
  font-size: 9px;
}

/* Atividade sem card */
.activity-surface {
  padding: 20px 0 0;
  border-top: 1px solid var(--g360-line-soft);
}

.activity-line {
  display: grid;
  grid-template-columns: 12px minmax(0,1fr) auto 14px;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  padding: 8px 4px;
  border-bottom: 1px solid rgba(132,158,184,.07);
  color: var(--g360-text);
}

.activity-line:hover {
  text-decoration: none;
  background: rgba(255,255,255,.008);
}

.activity-dot {
  width: 6px;
  height: 6px;
  background: #4b9cff;
}

.activity-line div {
  display: grid;
  min-width: 0;
}

.activity-line strong {
  font-size: 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.activity-line small {
  margin-top: 2px;
  font-size: 8px;
}

.activity-line time {
  color: #788da1;
  font-size: 8.5px;
}

.activity-line b {
  color: #5f768d;
}

.activity-empty {
  color: #7b8fa4;
  padding: 18px 0;
  font-size: 10px;
}

@media(max-width:1100px) {
  .metric-strip {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .metric-strip a:nth-child(2) {
    border-right: 0;
  }

  .metric-strip a:nth-child(-n+2) {
    border-bottom: 1px solid var(--g360-line-soft);
  }

  .command-grid {
    grid-template-columns: 1fr;
  }
}

@media(max-width:760px) {
  .command-hero {
    align-items: flex-start;
    flex-direction: column;
  }

  .metric-strip,
  .today-columns {
    grid-template-columns: 1fr;
  }

  .metric-strip a {
    border-right: 0;
    border-bottom: 1px solid var(--g360-line-soft);
  }

  .metric-strip a:last-child {
    border-bottom: 0;
  }

  .attention-line {
    grid-template-columns: 28px minmax(0,1fr) 16px;
  }

  .attention-line small {
    display: none;
  }

  .activity-line time {
    display: none;
  }

  .activity-line {
    grid-template-columns: 12px minmax(0,1fr) 14px;
  }
}


/* =========================================================
   ETAPA 3.18.2 — DOSSIÊ PROCESSUAL MINIMAL EM ABAS
   ========================================================= */

.dossier-hero-minimal {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 24px;
  padding: 10px 0 22px;
}

.dossier-hero-main {
  min-width: 0;
}

.dossier-hero-main h1 {
  margin: 5px 0 8px;
  font-size: clamp(30px, 4vw, 46px);
  letter-spacing: -.045em;
  line-height: 1;
}

.dossier-hero-main p {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
  color: #8398ad;
  font-size: 11px;
}

.dossier-hero-main p strong {
  color: #b9c7d4;
}

.dossier-hero-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
}

.dossier-hero-actions > a,
.dossier-hero-actions button {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  padding: 7px 10px;
  border: 1px solid rgba(132,158,184,.14);
  border-radius: 9px;
  background: rgba(255,255,255,.012);
  color: #c7d3df;
  font-size: 9px;
  font-weight: 780;
}

.dossier-hero-actions > a:hover,
.dossier-hero-actions button:hover {
  text-decoration: none;
  background: rgba(255,255,255,.026);
}

.dossier-hero-actions button.primary {
  background: rgba(49,132,220,.16);
  border-color: rgba(75,156,255,.28);
  color: #dcecff;
}

.dossier-overview-strip {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  border-top: 1px solid var(--g360-line-soft);
  border-bottom: 1px solid var(--g360-line-soft);
  margin-bottom: 4px;
}

.dossier-overview-strip > div {
  display: grid;
  align-content: center;
  min-height: 72px;
  padding: 13px 15px;
  border-right: 1px solid var(--g360-line-soft);
}

.dossier-overview-strip > div:last-child {
  border-right: 0;
}

.dossier-overview-strip small {
  color: #69839d;
  font-size: 8px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.dossier-overview-strip strong {
  margin-top: 4px;
  color: #d8e3ed;
  font-size: 11px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dossier-overview-strip .has-attention strong {
  color: #78b5f7;
}

.dossier-tabs {
  position: sticky;
  top: 62px;
  z-index: 25;
  display: flex;
  gap: 2px;
  overflow-x: auto;
  padding: 12px 0 8px;
  margin-bottom: 12px;
  background: linear-gradient(180deg, rgba(8,17,29,.99) 72%, rgba(8,17,29,.92));
  border-bottom: 1px solid rgba(132,158,184,.10);
  scrollbar-width: thin;
}

.dossier-tabs button {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  padding: 8px 12px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 7px 7px 0 0;
  background: transparent;
  color: #7f93a7;
  font-size: 9px;
  font-weight: 800;
}

.dossier-tabs button:hover {
  color: #b8c7d5;
  background: rgba(255,255,255,.012);
}

.dossier-tabs button.is-active {
  color: #e8f2fb;
  border-bottom-color: var(--g360-accent);
  background: rgba(75,156,255,.045);
}

.dossier-tabs button span {
  min-width: 20px;
  padding: 2px 6px;
  border-radius: 999px;
  background: rgba(75,156,255,.10);
  color: #8dc1fb;
  font-size: 8px;
}

.dossier-tab-stage {
  min-height: 440px;
}

.dossier-tab-panel[hidden] {
  display: none !important;
}

.dossier-tab-panel {
  animation: dossier-tab-in .16s ease;
}

@keyframes dossier-tab-in {
  from { opacity: 0; transform: translateY(3px); }
  to { opacity: 1; transform: translateY(0); }
}

.dossier-summary-minimal {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  border-top: 1px solid var(--g360-line-soft);
  border-bottom: 1px solid var(--g360-line-soft);
}

.dossier-summary-minimal article {
  min-height: 170px;
  padding: 20px;
  border-right: 1px solid var(--g360-line-soft);
}

.dossier-summary-minimal article:last-child {
  border-right: 0;
}

.dossier-summary-minimal small {
  display: block;
  color: #6f889f;
  font-size: 8px;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.dossier-summary-minimal strong {
  display: block;
  margin: 10px 0 7px;
  color: #e3edf6;
  font-size: 16px;
  line-height: 1.25;
}

.dossier-summary-minimal p {
  min-height: 34px;
  margin: 0 0 8px;
  color: #879aac;
  font-size: 9px;
  line-height: 1.5;
}

.tab-inline-link {
  padding: 0;
  min-height: auto;
  border: 0;
  background: transparent;
  color: #69adf7;
  font-size: 8.5px;
  text-align: left;
}

.tab-inline-link:hover {
  text-decoration: underline;
  background: transparent;
}

.dossier-resume-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
  padding-top: 24px;
}

.dossier-flat-section {
  min-width: 0;
}

.dossier-flat-head,
.dossier-tab-heading,
.dossier-management-head {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 14px;
  margin-bottom: 13px;
}

.dossier-flat-head small,
.dossier-tab-heading small,
.dossier-management-head small,
.dossier-work-title small {
  color: #68839d;
  font-size: 8px;
  letter-spacing: .10em;
}

.dossier-flat-head h2,
.dossier-tab-heading h2 {
  margin: 3px 0 0;
  font-size: 16px;
}

.dossier-tab-heading {
  padding: 7px 0 16px;
  border-bottom: 1px solid var(--g360-line-soft);
}

.dossier-tab-heading p {
  margin: 5px 0 0;
  color: #8095aa;
  font-size: 9px;
}

.dossier-tab-heading > a,
.dossier-heading-actions a {
  font-size: 9px;
}

.dossier-heading-actions {
  display: flex;
  gap: 7px;
}

.dossier-client-preview {
  display: grid;
}

.dossier-client-preview > a {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 55px;
  padding: 8px 0;
  border-bottom: 1px solid rgba(132,158,184,.07);
  color: var(--g360-text);
}

.dossier-client-preview > a:hover {
  text-decoration: none;
}

.dossier-client-preview > a div {
  display: grid;
  min-width: 0;
}

.dossier-client-preview strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10px;
}

.dossier-client-preview small {
  margin-top: 2px;
  font-size: 8px;
}

.dossier-client-preview span {
  padding: 4px 7px;
  border-radius: 999px;
  color: #879bad;
  background: rgba(255,255,255,.025);
  font-size: 8px;
}

.dossier-client-preview span.is-primary {
  color: #83bfff;
  background: rgba(75,156,255,.08);
}

.dossier-mini-timeline {
  display: grid;
}

.dossier-mini-timeline > div {
  display: grid;
  grid-template-columns: 10px minmax(0,1fr);
  gap: 9px;
  min-height: 55px;
  padding: 8px 0;
  border-bottom: 1px solid rgba(132,158,184,.07);
}

.dossier-mini-timeline > div > span {
  width: 6px;
  height: 6px;
  margin-top: 5px;
  border-radius: 50%;
  background: #556f89;
}

.dossier-mini-timeline > div > span.is-new {
  background: #4b9cff;
  box-shadow: 0 0 0 4px rgba(75,156,255,.06);
}

.dossier-mini-timeline > div > div {
  display: grid;
  min-width: 0;
}

.dossier-mini-timeline strong {
  font-size: 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dossier-mini-timeline small {
  margin-top: 2px;
  font-size: 8px;
}

.dossier-timeline-minimal {
  position: relative;
  display: grid;
  margin-top: 8px;
}

.dossier-timeline-minimal > div:not(.dossier-empty-line) {
  position: relative;
  display: grid;
  grid-template-columns: 18px minmax(0,1fr) auto;
  gap: 9px;
  min-height: 76px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(132,158,184,.07);
}

.dossier-timeline-minimal .timeline-node {
  width: 7px;
  height: 7px;
  margin-top: 4px;
  border-radius: 50%;
  background: #526c85;
  box-shadow: 0 0 0 5px rgba(82,108,133,.04);
}

.dossier-timeline-minimal > div.is-new .timeline-node {
  background: #4b9cff;
  box-shadow: 0 0 0 5px rgba(75,156,255,.06);
}

.dossier-timeline-minimal .timeline-main {
  display: grid;
  min-width: 0;
}

.dossier-timeline-minimal .timeline-main > small {
  color: #68839d;
  font-size: 7.5px;
  letter-spacing: .08em;
}

.dossier-timeline-minimal .timeline-main strong {
  margin-top: 3px;
  font-size: 10px;
}

.dossier-timeline-minimal .timeline-main p {
  margin: 4px 0 0;
  color: #8194a7;
  font-size: 8.5px;
  line-height: 1.45;
}

.dossier-timeline-minimal time {
  color: #72869a;
  font-size: 8px;
  white-space: nowrap;
}

.dossier-secondary-details {
  margin-top: 20px;
  border-top: 1px solid var(--g360-line-soft);
}

.dossier-secondary-details summary {
  cursor: pointer;
  padding: 13px 0;
  color: #8aa0b5;
  font-size: 9px;
}

.dossier-secondary-details[open] summary {
  color: #b5c3d1;
}

.dossier-list-minimal {
  display: grid;
}

.dossier-list-minimal > a,
.dossier-work-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 18px;
  min-height: 76px;
  padding: 12px 3px;
  border-bottom: 1px solid rgba(132,158,184,.07);
  color: var(--g360-text);
}

.dossier-list-minimal > a:hover {
  text-decoration: none;
  background: rgba(255,255,255,.006);
}

.dossier-list-minimal > a > div,
.dossier-work-row > div {
  display: grid;
  min-width: 0;
}

.dossier-list-minimal > a small,
.dossier-work-row small {
  font-size: 8px;
  color: #72889e;
}

.dossier-list-minimal > a strong,
.dossier-work-row strong {
  margin-top: 3px;
  font-size: 10px;
}

.dossier-list-minimal > a p,
.dossier-work-row p {
  margin: 4px 0 0;
  color: #8094a7;
  font-size: 8.5px;
  line-height: 1.4;
}

.dossier-list-minimal > a > span {
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(255,255,255,.025);
  color: #91a4b7;
  font-size: 8px;
  white-space: nowrap;
}

.dossier-empty-state {
  min-height: 250px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 5px;
  text-align: center;
  color: #7b8fa3;
}

.dossier-empty-state > span {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  margin-bottom: 5px;
  border-radius: 50%;
  background: rgba(65,118,174,.08);
  color: #6e96bd;
}

.dossier-empty-state strong {
  color: #acbac8;
  font-size: 10px;
}

.dossier-empty-state small {
  font-size: 8.5px;
}

.dossier-work-grid,
.dossier-management-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  padding-top: 18px;
}

.dossier-work-grid > section + section,
.dossier-management-grid > section + section {
  border-left: 1px solid var(--g360-line-soft);
  padding-left: 24px;
}

.dossier-work-title {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 12px;
  padding-bottom: 9px;
  border-bottom: 1px solid var(--g360-line-soft);
}

.dossier-work-title h3,
.dossier-management-head h3 {
  margin: 3px 0 0;
  font-size: 13px;
}

.danger-pill {
  padding: 4px 7px;
  border-radius: 999px;
  background: rgba(255,93,105,.08);
  color: #ff939b;
  font-size: 8px;
}

.dossier-work-row time {
  color: #8296aa;
  font-size: 8.5px;
  white-space: nowrap;
}

.dossier-work-row.is-danger {
  box-shadow: inset 2px 0 0 rgba(255,101,112,.65);
  padding-left: 8px;
}

.dossier-doc-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
  padding-top: 15px;
}

.dossier-doc-grid article {
  display: grid;
  grid-template-columns: 38px minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 74px;
  padding: 11px;
  border: 1px solid rgba(132,158,184,.10);
  border-radius: 11px;
  background: rgba(255,255,255,.008);
}

.dossier-doc-icon {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  background: rgba(75,156,255,.08);
  color: #7fb8f5;
}

.dossier-doc-grid article > div:nth-child(2) {
  display: grid;
  min-width: 0;
}

.dossier-doc-grid strong {
  font-size: 10px;
}

.dossier-doc-grid small {
  margin-top: 3px;
  font-size: 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dossier-doc-open {
  font-size: 8.5px;
  white-space: nowrap;
}

.dossier-management-section {
  padding: 16px 0;
  border-top: 1px solid var(--g360-line-soft);
}

.dossier-management-section:first-of-type {
  border-top: 0;
}

.dossier-management-head {
  align-items: end;
}

.dossier-compact-form,
.dossier-note-form {
  max-width: none;
}

.dossier-notes-list {
  display: grid;
  margin-top: 14px;
}

.dossier-notes-list article {
  padding: 10px 0;
  border-top: 1px solid rgba(132,158,184,.07);
}

.dossier-notes-list article > div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.dossier-notes-list strong {
  font-size: 9px;
}

.dossier-notes-list time {
  color: #71869a;
  font-size: 8px;
}

.dossier-notes-list p {
  margin: 5px 0 0;
  color: #8ca0b3;
  font-size: 9px;
  line-height: 1.5;
}

.dossier-empty-line {
  padding: 18px 0;
  color: #74899e;
  font-size: 9px;
}

.dossier-legal-note {
  margin: 20px 0 0;
  padding: 11px 13px;
  border-left: 2px solid rgba(75,156,255,.25);
  background: rgba(75,156,255,.025);
  color: #7890a7;
  font-size: 8.5px;
  line-height: 1.5;
}

.dossier-footer-note {
  margin-top: 24px;
}

@media(max-width:1180px) {
  .dossier-overview-strip {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .dossier-overview-strip > div:nth-child(3n) {
    border-right: 0;
  }

  .dossier-overview-strip > div:nth-child(-n+3) {
    border-bottom: 1px solid var(--g360-line-soft);
  }

  .dossier-summary-minimal {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .dossier-summary-minimal article:nth-child(2) {
    border-right: 0;
  }

  .dossier-summary-minimal article:nth-child(-n+2) {
    border-bottom: 1px solid var(--g360-line-soft);
  }
}

@media(max-width:820px) {
  .dossier-hero-minimal {
    align-items: flex-start;
    flex-direction: column;
  }

  .dossier-hero-actions {
    justify-content: flex-start;
  }

  .dossier-resume-columns,
  .dossier-work-grid,
  .dossier-management-grid,
  .dossier-doc-grid {
    grid-template-columns: 1fr;
  }

  .dossier-work-grid > section + section,
  .dossier-management-grid > section + section {
    border-left: 0;
    border-top: 1px solid var(--g360-line-soft);
    padding-left: 0;
    padding-top: 22px;
  }

  .dossier-tabs {
    top: 0;
  }
}

@media(max-width:620px) {
  .dossier-overview-strip,
  .dossier-summary-minimal {
    grid-template-columns: 1fr;
  }

  .dossier-overview-strip > div,
  .dossier-summary-minimal article {
    border-right: 0;
    border-bottom: 1px solid var(--g360-line-soft);
  }

  .dossier-overview-strip > div:last-child,
  .dossier-summary-minimal article:last-child {
    border-bottom: 0;
  }

  .dossier-hero-main h1 {
    font-size: 26px;
  }

  .dossier-list-minimal > a,
  .dossier-work-row {
    grid-template-columns: 1fr;
  }

  .dossier-list-minimal > a > span,
  .dossier-work-row time {
    justify-self: start;
  }

  .dossier-doc-grid article {
    grid-template-columns: 36px minmax(0,1fr);
  }

  .dossier-doc-open {
    grid-column: 2;
  }
}


/* =========================================================
   ETAPA 3.18.3 — G360 MINIMAL / UNIFICAÇÃO VISUAL
   ========================================================= */

/* Base da família minimalista */
.minimal-page {
  --minimal-border: rgba(132,158,184,.105);
  --minimal-border-strong: rgba(132,158,184,.15);
  --minimal-surface: rgba(255,255,255,.007);
  --minimal-surface-hover: rgba(255,255,255,.014);
}

.minimal-page .page-head {
  align-items: end;
  margin-bottom: 24px;
  padding: 6px 0 21px;
  border-bottom: 1px solid var(--minimal-border);
}

.minimal-page .page-head h1 {
  margin: 5px 0 6px;
  font-size: clamp(31px, 3.1vw, 42px);
  line-height: 1;
  letter-spacing: -.045em;
}

.minimal-page .page-head p {
  margin: 0;
  font-size: 10px;
}

.minimal-page .page-head .actions {
  gap: 6px;
}

.minimal-page .page-head .button-link,
.minimal-page .page-head button,
.record-actions > a,
.record-actions > button,
.record-actions form button {
  min-height: 34px;
  padding: 7px 10px;
  border-color: var(--minimal-border-strong);
  border-radius: 8px;
  background: rgba(255,255,255,.008);
  color: #c8d4df;
  font-size: 9px;
  box-shadow: none;
}

.minimal-page .page-head .button-link.primary,
.primary-minimal {
  background: rgba(59,139,226,.14) !important;
  border-color: rgba(82,160,245,.28) !important;
  color: #dcebfb !important;
}

/* Filtros como barra funcional, não card */
.minimal-page > .panel.compact,
.minimal-page .panel.compact:has(form) {
  margin: 0 0 17px;
  padding: 12px 0 14px;
  border: 0;
  border-bottom: 1px solid var(--minimal-border);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.minimal-page .filters,
.minimal-page .workflow-filters,
.minimal-page .document-filters,
.minimal-page .report-filter {
  gap: 8px;
}

.minimal-page label {
  color: #8296aa;
  font-size: 9px;
  letter-spacing: .015em;
}

.minimal-page input,
.minimal-page select,
.minimal-page textarea {
  min-height: 36px;
  padding: 7px 9px;
  border-color: rgba(132,158,184,.15);
  border-radius: 7px;
  background: rgba(4,12,21,.56);
  font-size: 10px;
}

.minimal-page form > button:not(.quiet-danger),
.minimal-page .filters button,
.minimal-page .workflow-filters button,
.minimal-page .document-filters button,
.minimal-page .report-filter button {
  min-height: 36px;
  padding: 7px 10px;
  border-color: rgba(132,158,184,.16);
  border-radius: 7px;
  background: rgba(255,255,255,.018);
  font-size: 9px;
}

/* KPIs de módulos viram faixas planas */
.minimal-page .kpis,
.minimal-metric-strip {
  display: grid;
  gap: 0;
  margin: 0 0 18px;
  border-top: 1px solid var(--minimal-border);
  border-bottom: 1px solid var(--minimal-border);
}

.minimal-page .kpis {
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
}

.minimal-page .kpis > a,
.minimal-metric-strip > a {
  min-height: 94px;
  align-content: center;
  padding: 14px 17px;
  border: 0;
  border-right: 1px solid var(--minimal-border);
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
  color: var(--g360-text, #e6eef6);
}

.minimal-page .kpis > a:last-child,
.minimal-metric-strip > a:last-child {
  border-right: 0;
}

.minimal-page .kpis > a:hover,
.minimal-metric-strip > a:hover {
  text-decoration: none;
  background: rgba(255,255,255,.01) !important;
}

.minimal-page .kpis span,
.minimal-metric-strip small {
  color: #71879d;
  font-size: 8px;
  text-transform: uppercase;
  letter-spacing: .07em;
}

.minimal-page .kpis strong,
.minimal-metric-strip strong {
  margin: 4px 0 2px;
  font-size: 25px;
  line-height: 1;
  letter-spacing: -.035em;
}

.minimal-page .kpis small,
.minimal-metric-strip span {
  color: #667d92;
  font-size: 8px;
}

.minimal-page .kpis > a.danger-soft strong,
.minimal-page .kpis > a.danger-soft small {
  color: #ff8b95;
}

.minimal-metric-strip.three {
  grid-template-columns: repeat(3,1fr);
}

.minimal-metric-strip .metric-date {
  font-size: 18px;
}

/* Tabelas planas e mais elegantes */
.minimal-page .table-panel {
  margin: 0 0 18px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow-x: auto;
}

.minimal-page table {
  min-width: 850px;
}

.minimal-page th {
  height: 35px;
  padding: 8px 12px;
  border-top: 1px solid var(--minimal-border);
  border-bottom: 1px solid var(--minimal-border);
  background: transparent;
  color: #6f8499;
  font-size: 7.8px;
}

.minimal-page td {
  min-height: 54px;
  padding: 12px;
  border-bottom-color: rgba(132,158,184,.07);
  color: #cad6e0;
  font-size: 10px;
}

.minimal-page tbody tr {
  transition: background .12s ease;
}

.minimal-page tbody tr:hover {
  background: rgba(255,255,255,.008);
}

.minimal-page td strong {
  color: #dbe5ee;
  font-size: 10px;
}

.minimal-page td small {
  color: #778da2;
  font-size: 8px;
}

.minimal-page .status,
.minimal-page .badge {
  padding: 3px 6px;
  border-width: 0;
  background: rgba(255,255,255,.03);
  font-size: 7.5px;
  letter-spacing: .025em;
}

.minimal-page .badge {
  color: #7dbaff;
  background: rgba(75,156,255,.08);
}

.minimal-page .row-unread {
  box-shadow: inset 2px 0 0 #4f9bea;
  background: rgba(75,156,255,.025);
}

.minimal-page .overdue {
  background: rgba(255,93,108,.035);
}

.minimal-page .due-today {
  background: rgba(236,181,66,.035);
  box-shadow: inset 2px 0 0 rgba(236,181,66,.6);
}

/* Ações de tabela discretas */
.minimal-page .row-actions {
  gap: 4px;
}

.minimal-page .row-actions button,
.minimal-page .row-actions a {
  min-height: 26px;
  padding: 4px 6px;
  border-radius: 6px;
  font-size: 8px;
}

.minimal-page .row-actions a {
  display: inline-flex;
  align-items: center;
}

/* Cards antigos de relatórios e outras grids viram seções */
.minimal-page .grid2 {
  gap: 20px;
}

.minimal-page .grid2 > .panel,
.minimal-page > .panel:not(.compact):not(.table-panel):not(.form-panel) {
  padding: 18px 0;
  margin-bottom: 14px;
  border: 0;
  border-top: 1px solid var(--minimal-border);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.minimal-page .panel-head {
  margin-bottom: 12px;
}

.minimal-page .panel-head h2,
.minimal-page > .panel h2 {
  font-size: 14px;
}

.minimal-page .panel-head p {
  font-size: 8.5px;
}

.minimal-page .feed {
  min-height: 54px;
  padding: 9px 2px;
  border-bottom-color: rgba(132,158,184,.07);
}

.minimal-page .feed strong {
  font-size: 9.5px;
}

.minimal-page .feed small,
.minimal-page .feed time {
  font-size: 8px;
}

/* Relatórios */
.minimal-page .report-bars,
.minimal-page .report-ranking {
  display: grid;
  gap: 0;
}

.minimal-page .report-row,
.minimal-page .report-ranking > div {
  min-height: 40px;
  border-bottom: 1px solid rgba(132,158,184,.07);
}

.minimal-page .report-bar {
  height: 5px;
  background: rgba(255,255,255,.035);
}

.minimal-page .report-bar i {
  background: #478ed8;
}

.minimal-page .export-grid {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 0;
  border-top: 1px solid var(--minimal-border);
  border-bottom: 1px solid var(--minimal-border);
}

.minimal-page .export-card {
  min-height: 120px;
  padding: 16px;
  border: 0;
  border-right: 1px solid var(--minimal-border);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.minimal-page .export-card:last-child {
  border-right: 0;
}

.minimal-page .export-card strong {
  font-size: 11px;
}

.minimal-page .export-card small {
  min-height: 31px;
  margin-top: 4px;
  font-size: 8px;
}

.minimal-page .export-actions {
  margin-top: 12px;
}

.minimal-page .export-actions a {
  font-size: 8.5px;
}

/* Formulários */
.minimal-form-page .form-panel {
  max-width: 780px;
  padding: 18px 0 0;
  border: 0;
  border-top: 1px solid var(--minimal-border);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.minimal-form-page .stack {
  gap: 15px;
}

.minimal-form-page textarea {
  min-height: 110px;
}

/* Detalhes — Cliente / Advogado */
.record-hero {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 22px;
  padding: 7px 0 22px;
  border-bottom: 1px solid var(--minimal-border);
}

.record-hero h1 {
  margin: 5px 0 7px;
  font-size: clamp(31px,3.4vw,44px);
  line-height: 1;
  letter-spacing: -.045em;
}

.record-hero p {
  margin: 0;
  color: #8095a9;
  font-size: 10px;
}

.record-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}

.record-actions form {
  margin: 0;
}

.record-strip {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  margin-bottom: 23px;
  border-bottom: 1px solid var(--minimal-border);
}

.record-strip > div {
  min-height: 75px;
  display: grid;
  align-content: center;
  padding: 13px 16px;
  border-right: 1px solid var(--minimal-border);
}

.record-strip > div:last-child {
  border-right: 0;
}

.record-strip small {
  color: #6c849a;
  font-size: 7.7px;
  text-transform: uppercase;
  letter-spacing: .07em;
}

.record-strip strong {
  margin-top: 4px;
  font-size: 10.5px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.record-columns,
.minimal-dual-list {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 24px;
}

.minimal-dual-list {
  grid-template-columns: 1fr 1fr;
}

.minimal-section {
  min-width: 0;
  padding: 18px 0;
  border-top: 1px solid var(--minimal-border);
}

.minimal-section-head {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 12px;
  margin-bottom: 12px;
}

.minimal-section-head small {
  color: #68839d;
  font-size: 7.5px;
  letter-spacing: .10em;
}

.minimal-section-head h2 {
  margin: 3px 0 0;
  font-size: 14px;
}

.minimal-section-head p {
  margin: 5px 0 0;
  color: #7c91a5;
  font-size: 8.5px;
}

.minimal-section-head > a {
  font-size: 8.5px;
}

.minimal-details {
  display: grid;
  grid-template-columns: 135px minmax(0,1fr);
  gap: 0;
  margin: 0;
}

.minimal-details dt,
.minimal-details dd {
  min-height: 43px;
  display: flex;
  align-items: center;
  margin: 0;
  padding: 8px 0;
  border-bottom: 1px solid rgba(132,158,184,.07);
  font-size: 9px;
}

.minimal-details dt {
  color: #72879b;
}

.minimal-details dd {
  color: #c5d1dc;
}

.minimal-relations,
.minimal-feed-list,
.minimal-document-list {
  display: grid;
}

.minimal-relation-row,
.minimal-feed-list > a,
.minimal-document-list article {
  min-height: 58px;
  display: grid;
  align-items: center;
  gap: 10px;
  padding: 9px 2px;
  border-bottom: 1px solid rgba(132,158,184,.07);
}

.minimal-relation-row {
  grid-template-columns: minmax(0,1fr) auto auto;
}

.minimal-relation-row > div,
.minimal-feed-list > a > div,
.minimal-document-list article > div {
  display: grid;
  min-width: 0;
}

.minimal-relation-row strong,
.minimal-feed-list strong,
.minimal-document-list strong {
  font-size: 9.5px;
}

.minimal-relation-row small,
.minimal-feed-list small,
.minimal-document-list small {
  margin-top: 2px;
  color: #74899e;
  font-size: 8px;
}

.minimal-relation-row > span,
.minimal-feed-list > a > span {
  padding: 3px 6px;
  border-radius: 999px;
  background: rgba(255,255,255,.028);
  color: #8297ab;
  font-size: 7.5px;
}

.minimal-relation-row > span.is-primary,
.minimal-feed-list > a > span.is-new {
  color: #7cbbff;
  background: rgba(75,156,255,.08);
}

.quiet-danger {
  min-height: 27px !important;
  padding: 4px 6px !important;
  border-color: rgba(255,104,116,.13) !important;
  background: transparent !important;
  color: #d67d84 !important;
  font-size: 8px !important;
}

.minimal-link-form {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 8px;
  align-items: end;
  padding-top: 13px;
}

.minimal-link-form label {
  font-size: 8.5px;
}

.document-section {
  margin-top: 7px;
}

.minimal-document-list article {
  grid-template-columns: 30px minmax(0,1fr) auto;
}

.minimal-document-list article > span {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 7px;
  background: rgba(75,156,255,.055);
  color: #72a9df;
}

.minimal-document-list article > a {
  font-size: 8.5px;
}

.minimal-empty {
  padding: 20px 2px;
  color: #6f8499;
  font-size: 8.5px;
}

/* Monitor advogado */
.monitor-history-line {
  display: grid;
  grid-template-columns: 1fr 1.3fr 1.1fr auto;
  align-items: stretch;
  border-bottom: 1px solid var(--minimal-border);
}

.monitor-history-line > div {
  min-height: 75px;
  display: grid;
  align-content: center;
  padding: 12px 15px;
  border-right: 1px solid var(--minimal-border);
}

.monitor-history-line > div:last-child {
  border-right: 0;
}

.monitor-history-line small {
  color: #6e859a;
  font-size: 7.5px;
  letter-spacing: .08em;
}

.monitor-history-line strong {
  margin-top: 3px;
  font-size: 9.5px;
}

.monitor-history-line span {
  margin-top: 2px;
  color: #748a9f;
  font-size: 7.8px;
}

.monitor-history-action {
  min-width: 120px;
}

.monitor-history-action a {
  font-size: 8.5px;
}

.minimal-feed-list > a {
  grid-template-columns: minmax(0,1fr) auto;
  color: #d4dee8;
}

.minimal-feed-list > a:hover {
  text-decoration: none;
  background: rgba(255,255,255,.006);
}

.minimal-alert-error {
  margin: 10px 0;
  padding: 8px 10px;
  border-left: 2px solid rgba(255,105,116,.65);
  background: rgba(255,93,108,.035);
  color: #e9949b;
  font-size: 8.5px;
}

.minimal-scope-note,
.minimal-page .scope-note {
  margin-top: 18px;
  padding: 10px 0 10px 12px;
  border: 0;
  border-left: 2px solid rgba(75,156,255,.22);
  border-radius: 0;
  background: transparent;
  color: #71889e;
  font-size: 8.5px;
  line-height: 1.5;
}

/* Sidebar collapsed: centralização e respiro */
.app-shell.sidebar-collapsed .sidebar {
  overflow: visible;
}

.app-shell.sidebar-collapsed .sidebar nav {
  overflow-x: visible;
}

.app-shell.sidebar-collapsed .sidebar nav a {
  display: flex;
  justify-content: center;
  padding-left: 0;
  padding-right: 0;
}

/* Responsivo */
@media(max-width:1180px) {
  .minimal-page .export-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .minimal-page .export-card:nth-child(3) {
    border-right: 0;
  }

  .record-columns,
  .minimal-dual-list {
    grid-template-columns: 1fr;
  }

  .monitor-history-line {
    grid-template-columns: repeat(2,1fr);
  }

  .monitor-history-line > div:nth-child(2) {
    border-right: 0;
  }
}

@media(max-width:820px) {
  .record-hero {
    align-items: flex-start;
    flex-direction: column;
  }

  .record-actions {
    justify-content: flex-start;
  }

  .record-strip {
    grid-template-columns: repeat(2,1fr);
  }

  .record-strip > div:nth-child(2) {
    border-right: 0;
  }

  .minimal-page .export-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .minimal-page .export-card:nth-child(3) {
    border-right: 1px solid var(--minimal-border);
  }

  .minimal-page .export-card:nth-child(even) {
    border-right: 0;
  }
}

@media(max-width:620px) {
  .minimal-page .kpis,
  .minimal-metric-strip.three,
  .record-strip,
  .monitor-history-line,
  .minimal-page .export-grid {
    grid-template-columns: 1fr;
  }

  .minimal-page .kpis > a,
  .minimal-metric-strip > a,
  .record-strip > div,
  .monitor-history-line > div,
  .minimal-page .export-card {
    border-right: 0;
    border-bottom: 1px solid var(--minimal-border);
  }

  .minimal-page .kpis > a:last-child,
  .minimal-metric-strip > a:last-child,
  .record-strip > div:last-child,
  .monitor-history-line > div:last-child,
  .minimal-page .export-card:last-child {
    border-bottom: 0;
  }

  .minimal-details {
    grid-template-columns: 1fr;
  }

  .minimal-details dt {
    min-height: auto;
    padding-bottom: 0;
    border-bottom: 0;
  }

  .minimal-link-form,
  .minimal-relation-row {
    grid-template-columns: 1fr;
  }

  .minimal-document-list article {
    grid-template-columns: 28px minmax(0,1fr);
  }

  .minimal-document-list article > a {
    grid-column: 2;
  }
}

/* =========================================================
   ETAPA 3.19 — PORTAL DO CLIENTE + ENTRADA ÚNICA G360
   ========================================================= */
.gateway-body,.professional-auth-body,.client-portal-body{margin:0;min-height:100vh;background:#07111d;color:#dfe9f2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.gateway-body{display:grid;grid-template-rows:auto 1fr auto;background:radial-gradient(circle at 72% 35%,rgba(46,123,205,.09),transparent 33%),#07111d}.gateway-top{display:flex;justify-content:space-between;align-items:center;padding:22px clamp(24px,5vw,70px);border-bottom:1px solid rgba(132,158,184,.08)}.gateway-brand,.client-brand{display:flex;align-items:center;gap:11px;color:#dfe9f2;text-decoration:none}.gateway-brand>span,.client-brand>span{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,#1f65a9,#123d68);font-size:10px;font-weight:900;letter-spacing:.04em}.gateway-brand div,.client-brand div{display:grid}.gateway-brand strong,.client-brand strong{font-size:11px}.gateway-brand small,.client-brand small{margin-top:2px;color:#647f99;font-size:8px}.professional-entry{padding:9px 12px;border:1px solid rgba(132,158,184,.13);border-radius:999px;color:#8ea6bc;font-size:9px;text-decoration:none}.professional-entry:hover{color:#d9e5ef;background:rgba(255,255,255,.015)}.gateway-main{width:min(1180px,calc(100% - 44px));margin:auto;display:grid;grid-template-columns:1.15fr .72fr;gap:clamp(42px,8vw,120px);align-items:center;padding:55px 0}.gateway-copy h1{margin:9px 0 17px;font-size:clamp(46px,6.2vw,78px);line-height:.93;letter-spacing:-.065em;font-weight:850}.gateway-copy>p{max-width:580px;color:#8096aa;font-size:12px;line-height:1.65}.gateway-trust{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.gateway-trust span{padding:7px 9px;border-radius:999px;background:rgba(255,255,255,.014);color:#708aa2;font-size:8px}.gateway-login{padding:30px;border:1px solid rgba(132,158,184,.11);border-radius:18px;background:linear-gradient(180deg,rgba(17,31,46,.62),rgba(9,19,30,.42));box-shadow:0 30px 80px rgba(0,0,0,.16)}.gateway-login>div:first-child>small{color:#5d90c5;font-size:8px;letter-spacing:.12em}.gateway-login h2{margin:6px 0 7px;font-size:23px;letter-spacing:-.035em}.gateway-login>div:first-child>p,.gateway-help{color:#758ba0;font-size:8.8px;line-height:1.55}.gateway-login form{margin-top:21px}.gateway-login input,.professional-login-card input,.client-form-card input{width:100%;box-sizing:border-box;min-height:43px;border:1px solid rgba(132,158,184,.14);border-radius:9px;background:rgba(3,10,18,.55);color:#e4edf5}.gateway-submit{min-height:44px!important;margin-top:3px}.gateway-help{margin:15px 0 0;text-align:center}.gateway-footer{padding:18px;text-align:center;border-top:1px solid rgba(132,158,184,.07);color:#506a82;font-size:8px}.gateway-footer span{padding:0 7px}.professional-auth-body{display:grid;place-items:center;position:relative}.auth-back{position:absolute;top:24px;left:28px;color:#71889e;font-size:9px;text-decoration:none}.professional-login-card{width:min(420px,calc(100% - 42px));box-sizing:border-box;padding:31px;border:1px solid rgba(132,158,184,.11);border-radius:17px;background:rgba(15,28,42,.48)}.professional-login-card h1{margin:7px 0 6px;font-size:27px;letter-spacing:-.04em}.professional-login-card form{margin-top:22px}.client-topbar{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;align-items:center;padding:14px clamp(20px,4vw,54px);border-bottom:1px solid rgba(132,158,184,.08);background:rgba(7,17,29,.94);backdrop-filter:blur(18px)}.client-brand>span{width:36px;height:36px}.client-topbar nav{display:flex;gap:4px}.client-topbar nav a{padding:8px 10px;border-radius:8px;color:#7f95a9;font-size:9px;text-decoration:none}.client-topbar nav a:hover{background:rgba(255,255,255,.018);color:#d7e3ed}.client-portal-main{width:min(1120px,calc(100% - 38px));margin:0 auto;padding:42px 0 60px}.client-footer{padding:20px;text-align:center;border-top:1px solid rgba(132,158,184,.07);color:#536c83;font-size:8px}.client-welcome,.client-case-hero{display:flex;justify-content:space-between;align-items:end;gap:24px;padding-bottom:25px;border-bottom:1px solid rgba(132,158,184,.10)}.client-welcome h1,.client-case-hero h1{margin:6px 0 7px;font-size:clamp(34px,4vw,49px);letter-spacing:-.05em;line-height:1}.client-welcome p,.client-case-hero p{margin:0;color:#7b91a5;font-size:10px}.client-count{display:grid;justify-items:end}.client-count small{color:#687f95;font-size:8px}.client-count strong{font-size:36px;letter-spacing:-.04em}.client-section{padding:24px 0;border-bottom:1px solid rgba(132,158,184,.08)}.client-section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:11px}.client-section-head small{color:#5f7f9d;font-size:7.5px;letter-spacing:.12em}.client-section-head h2{margin:3px 0 0;font-size:15px}.client-case-list,.client-document-list{display:grid}.client-case-list>a{display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:13px;min-height:78px;padding:10px 3px;border-bottom:1px solid rgba(132,158,184,.07);color:#dbe5ed;text-decoration:none}.client-case-list>a:hover,.client-document-list>a:hover{background:rgba(255,255,255,.007)}.client-case-list>a>div{display:grid;min-width:0}.client-case-list strong{font-size:11px}.client-case-list span,.client-case-list small{margin-top:3px;color:#7a90a5;font-size:8px}.client-case-list em{padding:4px 7px;border-radius:999px;background:rgba(75,156,255,.07);color:#80b9f4;font-size:7.5px;font-style:normal}.client-case-list b{color:#58738c}.client-document-list>a{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:9px 3px;border-bottom:1px solid rgba(132,158,184,.07);color:#d6e1ea;text-decoration:none}.client-document-list>a>span{width:29px;height:29px;display:grid;place-items:center;border-radius:8px;background:rgba(75,156,255,.055);color:#73a9df}.client-document-list>a>div{display:grid;min-width:0}.client-document-list strong{font-size:9.5px}.client-document-list small{margin-top:2px;color:#74899e;font-size:8px}.client-document-list b{color:#6d9dcc;font-size:8.5px}.client-empty{padding:25px 2px;color:#6c8398;font-size:9px}.client-back{display:inline-block;margin-bottom:15px;color:#7690a7;font-size:9px;text-decoration:none}.client-case-hero>span{padding:6px 9px;border-radius:999px;background:rgba(75,156,255,.07);color:#83bcf5;font-size:8px}.client-case-summary,.client-account-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid rgba(132,158,184,.10)}.client-case-summary>div,.client-account-card>div{min-height:82px;display:grid;align-content:center;padding:13px 16px;border-right:1px solid rgba(132,158,184,.09)}.client-case-summary>div:last-child,.client-account-card>div:last-child{border-right:0}.client-case-summary small,.client-account-card small{color:#698198;font-size:7.5px;text-transform:uppercase;letter-spacing:.07em}.client-case-summary strong,.client-account-card strong{margin-top:5px;font-size:9.5px;line-height:1.45}.client-tabs{display:flex;gap:4px;padding-top:18px;border-bottom:1px solid rgba(132,158,184,.09)}.client-tabs button{padding:9px 12px;border:0;border-bottom:2px solid transparent;background:transparent;color:#748ba0;font-size:9px}.client-tabs button.is-active{color:#dbe6ef;border-bottom-color:#4b9cff}.client-tabs span{margin-left:5px;padding:2px 5px;border-radius:999px;background:rgba(75,156,255,.08);font-size:7px}.client-tab-panel{padding-top:9px;min-height:300px}.client-timeline>div:not(.client-empty){display:grid;grid-template-columns:15px minmax(0,1fr) auto;gap:9px;min-height:68px;padding:11px 2px;border-bottom:1px solid rgba(132,158,184,.07)}.client-timeline>div>span{width:7px;height:7px;margin-top:4px;border-radius:50%;background:#4f91d3}.client-timeline>div>div{display:grid;min-width:0}.client-timeline strong{font-size:9.5px}.client-timeline small{margin-top:3px;color:#72889d;font-size:7.8px}.client-timeline time{color:#70869a;font-size:8px;white-space:nowrap}.client-note{margin-top:19px;padding-left:11px;border-left:2px solid rgba(75,156,255,.20);color:#70879d;font-size:8px;line-height:1.55}.client-welcome.compact{align-items:start}.client-account-card{grid-template-columns:repeat(4,1fr);margin-bottom:18px}.client-primary-link{display:inline-flex;padding:9px 11px;border-radius:8px;background:rgba(75,156,255,.10);color:#9ac9fb;font-size:9px;text-decoration:none}.client-form-card{width:min(650px,100%);padding-top:10px}.client-form-card h1{margin:6px 0;font-size:32px;letter-spacing:-.04em}.client-form-card>p{color:#7a90a5;font-size:9px}.client-form-card form{margin-top:20px}.portal-access-section{margin-top:7px}.portal-access-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;border-top:1px solid rgba(132,158,184,.08);border-bottom:1px solid rgba(132,158,184,.08)}.portal-access-row>div{min-height:70px;display:grid;align-content:center;padding:12px 14px;border-right:1px solid rgba(132,158,184,.08)}.portal-access-row small{font-size:7.5px;color:#6c849a}.portal-access-row strong{margin-top:3px;font-size:9.5px}.portal-access-actions{display:flex!important;align-items:center;gap:5px;border-right:0!important}.portal-access-actions form{margin:0}.portal-access-empty{padding:15px 0}.portal-access-empty p{color:#7d92a6;font-size:9px}.portal-invite-box{margin-top:22px;padding:20px 0;border-top:1px solid rgba(132,158,184,.10);border-bottom:1px solid rgba(132,158,184,.10)}.portal-invite-box>small{color:#6483a1;font-size:7.5px;letter-spacing:.08em}.portal-invite-box code{display:block;overflow-wrap:anywhere;margin:10px 0;padding:12px;border-radius:8px;background:rgba(2,8,14,.6);color:#9cc8f5;font-size:9px}.portal-invite-box p{color:#74899e;font-size:8.5px}
@media(max-width:820px){.gateway-main{grid-template-columns:1fr;gap:35px;padding:35px 0}.gateway-copy h1{font-size:49px}.client-account-card{grid-template-columns:repeat(2,1fr)}.portal-access-row{grid-template-columns:1fr 1fr}.portal-access-actions{grid-column:1/-1}}@media(max-width:620px){.gateway-top{padding:16px}.gateway-brand div{display:none}.professional-entry{font-size:8px}.gateway-main{width:calc(100% - 30px)}.gateway-copy h1{font-size:40px}.gateway-login{padding:22px}.client-topbar{padding:12px 14px}.client-brand div{display:none}.client-topbar nav a{padding:7px;font-size:8px}.client-portal-main{width:calc(100% - 28px);padding-top:28px}.client-welcome,.client-case-hero{align-items:flex-start;flex-direction:column}.client-case-list>a{grid-template-columns:1fr auto}.client-case-list b{display:none}.client-case-summary,.client-account-card{grid-template-columns:1fr}.client-case-summary>div,.client-account-card>div{border-right:0;border-bottom:1px solid rgba(132,158,184,.08)}.client-timeline>div:not(.client-empty){grid-template-columns:13px minmax(0,1fr)}.client-timeline time{grid-column:2}.portal-access-row{grid-template-columns:1fr}.portal-access-actions{grid-column:auto}}


/* =========================================================
   ETAPA 3.19.1 — PEDIR RELATÓRIO / PORTAL DO CLIENTE
   ========================================================= */

.client-report-hero {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 28px;
  padding: 16px 0 26px;
  border-bottom: 1px solid rgba(132,158,184,.11);
}

.client-report-hero h1 {
  margin: 6px 0 8px;
  font-size: clamp(34px,4vw,50px);
  line-height: 1;
  letter-spacing: -.05em;
}

.client-report-hero p {
  margin: 0;
  color: #7f97ad;
  font-size: 10px;
}

.client-report-time {
  min-width: 180px;
  display: grid;
  padding: 13px 15px;
  border-left: 2px solid rgba(75,156,255,.36);
}

.client-report-time small {
  color: #6a859e;
  font-size: 7.5px;
  letter-spacing: .08em;
}

.client-report-time strong {
  margin-top: 4px;
  color: #d9e6f2;
  font-size: 12px;
}

.client-report-layout {
  display: grid;
  grid-template-columns: minmax(0,1.25fr) minmax(280px,.75fr);
  gap: 34px;
  padding: 28px 0;
}

.client-report-form-section,
.client-report-docs {
  min-width: 0;
}

.client-report-identity {
  display: grid;
  grid-template-columns: 150px minmax(0,1fr);
  margin: 0 0 20px;
  border-top: 1px solid rgba(132,158,184,.09);
}

.client-report-identity dt,
.client-report-identity dd {
  min-height: 43px;
  display: flex;
  align-items: center;
  margin: 0;
  padding: 8px 0;
  border-bottom: 1px solid rgba(132,158,184,.07);
  font-size: 9px;
}

.client-report-identity dt {
  color: #6e869d;
}

.client-report-identity dd {
  color: #cbd7e2;
}

.client-report-form {
  display: grid;
  gap: 14px;
}

.client-report-form label {
  display: grid;
  gap: 6px;
  color: #aebfce;
  font-size: 9px;
  font-weight: 700;
}

.client-report-form label > small {
  color: #6f879e;
  font-size: 7.8px;
  font-weight: 400;
}

.client-report-form input,
.client-report-form select,
.client-report-form textarea {
  width: 100%;
  min-height: 42px;
  padding: 9px 11px;
  border: 1px solid rgba(132,158,184,.16);
  border-radius: 8px;
  background: rgba(7,17,29,.72);
  color: #e5edf5;
  font: inherit;
  font-size: 10px;
}

.client-report-form textarea {
  min-height: 100px;
  resize: vertical;
}

.client-report-notice {
  padding: 13px 14px;
  border-left: 2px solid rgba(75,156,255,.32);
  background: rgba(75,156,255,.025);
}

.client-report-notice strong {
  color: #cbd9e6;
  font-size: 9px;
}

.client-report-notice p {
  margin: 4px 0 0;
  color: #768da4;
  font-size: 8.3px;
  line-height: 1.5;
}

.client-primary-action {
  min-height: 43px;
  border: 1px solid rgba(81,162,248,.42);
  border-radius: 8px;
  background: linear-gradient(180deg,#3289d7,#2474bd);
  color: #fff;
  font-size: 10px;
  font-weight: 850;
}

.client-report-consent {
  margin: -6px 0 0;
  color: #617a91;
  font-size: 7.7px;
}

.client-report-docs {
  padding: 18px 0 0 24px;
  border-left: 1px solid rgba(132,158,184,.09);
}

.client-report-docs > small {
  color: #61809c;
  font-size: 7.5px;
  letter-spacing: .09em;
}

.client-report-docs h2 {
  margin: 5px 0 8px;
  font-size: 17px;
}

.client-report-docs > p {
  color: #7d93a8;
  font-size: 8.5px;
  line-height: 1.5;
}

.client-report-doc-list {
  display: grid;
  margin: 14px 0;
  border-top: 1px solid rgba(132,158,184,.08);
}

.client-report-doc-list span {
  min-height: 36px;
  display: flex;
  align-items: center;
  padding: 6px 0;
  border-bottom: 1px solid rgba(132,158,184,.07);
  color: #b6c5d3;
  font-size: 8.8px;
}

.client-report-doc-list span::before {
  content: "✓";
  margin-right: 8px;
  color: #5da7ee;
}

.client-report-small {
  font-size: 7.8px !important;
}

.client-report-history {
  border-top: 1px solid rgba(132,158,184,.10);
}

.client-report-request-list {
  display: grid;
}

.client-report-request-list article {
  min-height: 62px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto auto;
  align-items: center;
  gap: 15px;
  padding: 10px 2px;
  border-bottom: 1px solid rgba(132,158,184,.07);
}

.client-report-request-list article > div {
  display: grid;
}

.client-report-request-list strong {
  font-size: 9.5px;
}

.client-report-request-list small,
.client-report-request-list time {
  margin-top: 2px;
  color: #71879c;
  font-size: 7.8px;
}

.client-report-status,
.report-admin-status {
  padding: 4px 7px;
  border-radius: 999px;
  background: rgba(255,255,255,.028);
  color: #8fa4b8;
  font-size: 7.5px;
  white-space: nowrap;
}

.status-requested { color: #83bdf8; background: rgba(75,156,255,.08); }
.status-in_progress { color: #e8c273; background: rgba(232,194,115,.08); }
.status-ready { color: #8dd9b4; background: rgba(94,205,151,.08); }
.status-sent { color: #8dd9b4; background: rgba(94,205,151,.08); }
.status-cancelled { color: #9aabbc; background: rgba(255,255,255,.025); }

.client-case-topline {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
}

.client-report-link {
  color: #69adf7;
  font-size: 8.5px;
}

/* Profissional — fila */
.report-queue-filter {
  padding: 11px 0 15px;
  border-bottom: 1px solid rgba(132,158,184,.10);
}

.report-queue-filter form {
  display: flex;
  align-items: end;
  gap: 8px;
}

.report-queue-filter label {
  min-width: 220px;
  display: grid;
  gap: 5px;
}

.report-queue-filter select {
  min-height: 36px;
}

.report-queue {
  display: grid;
  margin-top: 15px;
}

.report-queue-head,
.report-queue > a {
  display: grid;
  grid-template-columns: minmax(260px,1.8fr) .8fr .7fr .7fr;
  gap: 14px;
  align-items: center;
}

.report-queue-head {
  min-height: 34px;
  padding: 6px 10px;
  border-bottom: 1px solid rgba(132,158,184,.11);
  color: #668097;
  font-size: 7.5px;
  text-transform: uppercase;
  letter-spacing: .07em;
}

.report-queue > a {
  min-height: 64px;
  padding: 10px;
  border-bottom: 1px solid rgba(132,158,184,.07);
  color: #d7e1ea;
}

.report-queue > a:hover {
  text-decoration: none;
  background: rgba(255,255,255,.007);
}

.report-queue > a > div {
  display: grid;
}

.report-queue > a strong {
  font-size: 9.5px;
}

.report-queue > a small,
.report-queue > a time {
  color: #768da2;
  font-size: 8px;
}

.report-queue > a.is-overdue {
  box-shadow: inset 2px 0 0 rgba(255,99,111,.68);
}

.report-queue > a.is-overdue time:nth-of-type(2) {
  color: #f08d96;
}

.report-detail-strip {
  grid-template-columns: 1fr 1fr 1.5fr 1fr;
}

.report-detail-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
}

.report-writing-section {
  margin-top: 6px;
}

.report-writing-form {
  display: grid;
  gap: 10px;
}

.report-writing-form label {
  display: grid;
  gap: 6px;
  color: #8ea1b3;
  font-size: 8.5px;
}

.report-writing-form textarea {
  width: 100%;
  min-height: 230px;
  padding: 12px;
  border: 1px solid rgba(132,158,184,.14);
  border-radius: 8px;
  background: rgba(4,12,21,.55);
  color: #dce6ef;
  font: inherit;
  font-size: 9.5px;
  line-height: 1.55;
}

.report-readonly-text {
  color: #aab9c7;
  font-size: 9px;
  line-height: 1.6;
}

.report-source-row {
  min-height: 52px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  border-bottom: 1px solid rgba(132,158,184,.07);
}

.report-source-row > div {
  display: grid;
}

.report-source-row strong {
  font-size: 9px;
}

.report-source-row small,
.report-source-row time {
  color: #71889e;
  font-size: 7.7px;
}

.report-send-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}

.report-send-actions > a,
.report-send-actions button {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  padding: 7px 10px;
  border: 1px solid rgba(132,158,184,.15);
  border-radius: 7px;
  background: rgba(255,255,255,.012);
  color: #cbd7e1;
  font-size: 8.5px;
}

.report-send-actions form {
  margin: 0;
}

.report-send-actions button[disabled] {
  opacity: .45;
  cursor: not-allowed;
}

.report-email-config-warning {
  margin-top: 10px;
  color: #d5aa67;
  font-size: 8.2px;
}

.report-sent-confirmation {
  margin-top: 10px;
  color: #78cda2;
  font-size: 8.2px;
}

@media(max-width:900px) {
  .client-report-layout,
  .report-detail-grid {
    grid-template-columns: 1fr;
  }

  .client-report-docs {
    padding-left: 0;
    border-left: 0;
    border-top: 1px solid rgba(132,158,184,.09);
  }

  .report-queue-head {
    display: none;
  }

  .report-queue > a {
    grid-template-columns: 1fr 1fr;
  }
}

@media(max-width:620px) {
  .client-report-hero {
    align-items: flex-start;
    flex-direction: column;
  }

  .client-report-identity {
    grid-template-columns: 1fr;
  }

  .client-report-identity dt {
    min-height: auto;
    padding-bottom: 0;
    border-bottom: 0;
  }

  .client-report-request-list article,
  .report-queue > a {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   ETAPA 3.19.2 — SOLICITAÇÕES DO CLIENTE
   ========================================================= */

.sidebar nav a .nav-counter {
  margin-left: auto;
  min-width: 19px;
  height: 19px;
  display: inline-grid;
  place-items: center;
  padding: 0 5px;
  border-radius: 999px;
  background: rgba(75,156,255,.11);
  color: #85c0ff;
  font-size: 7.5px;
  font-weight: 850;
}

.sidebar-collapsed .sidebar nav a .nav-counter {
  position: absolute;
  top: 4px;
  right: 2px;
  min-width: 15px;
  height: 15px;
  padding: 0 4px;
  font-size: 6.5px;
}

.request-center-hero {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 24px;
  padding: 8px 0 24px;
  border-bottom: 1px solid rgba(132,158,184,.10);
}

.request-center-hero h1 {
  margin: 5px 0 7px;
  font-size: clamp(34px,4vw,48px);
  line-height: 1;
  letter-spacing: -.05em;
}

.request-center-hero p {
  margin: 0;
  color: #7e94a8;
  font-size: 9.5px;
}

.request-center-summary {
  min-width: 115px;
  display: grid;
  justify-items: end;
}

.request-center-summary small {
  color: #63809b;
  font-size: 7.5px;
  letter-spacing: .08em;
}

.request-center-summary strong {
  margin-top: 3px;
  font-size: 31px;
  line-height: 1;
}

.request-center-metrics {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  border-bottom: 1px solid rgba(132,158,184,.10);
}

.request-center-metrics a {
  min-height: 94px;
  display: grid;
  align-content: center;
  padding: 14px 18px;
  border-right: 1px solid rgba(132,158,184,.09);
  color: #d9e3ed;
}

.request-center-metrics a:last-child {
  border-right: 0;
}

.request-center-metrics a:hover {
  text-decoration: none;
  background: rgba(255,255,255,.007);
}

.request-center-metrics small {
  color: #6d849a;
  font-size: 7.6px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.request-center-metrics strong {
  margin: 4px 0 2px;
  font-size: 24px;
  line-height: 1;
}

.request-center-metrics span {
  color: #667d92;
  font-size: 7.7px;
}

.request-center-metrics a.is-danger strong,
.request-center-metrics a.is-danger span {
  color: #f28b94;
}

.request-center-tabs {
  display: flex;
  align-items: center;
  gap: 3px;
  overflow-x: auto;
  padding: 16px 0 9px;
  border-bottom: 1px solid rgba(132,158,184,.09);
}

.request-center-tabs a,
.request-center-tabs > span {
  flex: none;
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 10px;
  border-bottom: 2px solid transparent;
  color: #7890a6;
  font-size: 8.5px;
}

.request-center-tabs a:hover {
  text-decoration: none;
  color: #b5c5d4;
}

.request-center-tabs a.is-active {
  color: #e3edf6;
  border-bottom-color: #4b9cff;
}

.request-center-tabs a.is-active-sub {
  color: #95bfe8;
}

.request-center-tabs a span {
  min-width: 18px;
  padding: 2px 5px;
  border-radius: 999px;
  background: rgba(75,156,255,.09);
  color: #79baff;
  font-size: 7px;
  text-align: center;
}

.future-request-tab {
  opacity: .42;
  cursor: default;
}

.request-center-toolbar {
  padding: 12px 0;
  border-bottom: 1px solid rgba(132,158,184,.08);
}

.request-center-toolbar form {
  display: flex;
  align-items: end;
  gap: 7px;
}

.request-center-toolbar label {
  min-width: 220px;
  display: grid;
  gap: 4px;
  color: #778ea3;
  font-size: 8px;
}

.request-center-toolbar select,
.request-center-toolbar button {
  min-height: 34px;
}

.request-center-toolbar > form > a {
  padding: 8px 5px;
  font-size: 8px;
}

.request-center-queue {
  display: grid;
  margin-top: 9px;
}

.request-center-head,
.request-center-queue > a {
  display: grid;
  grid-template-columns: 100px minmax(280px,1.8fr) .65fr .6fr .7fr;
  gap: 13px;
  align-items: center;
}

.request-center-head {
  min-height: 34px;
  padding: 6px 9px;
  border-bottom: 1px solid rgba(132,158,184,.10);
  color: #647f98;
  font-size: 7.2px;
  text-transform: uppercase;
  letter-spacing: .07em;
}

.request-center-queue > a {
  min-height: 68px;
  padding: 10px 9px;
  border-bottom: 1px solid rgba(132,158,184,.07);
  color: #d6e0e9;
}

.request-center-queue > a:hover {
  text-decoration: none;
  background: rgba(255,255,255,.007);
}

.request-center-queue > a.is-overdue {
  box-shadow: inset 2px 0 0 rgba(255,99,111,.68);
}

.request-type-badge {
  width: fit-content;
  padding: 4px 6px;
  border-radius: 999px;
  background: rgba(75,156,255,.07);
  color: #75b8fb;
  font-size: 6.8px;
  font-weight: 850;
  letter-spacing: .04em;
}

.request-center-queue > a > div {
  display: grid;
  min-width: 0;
}

.request-center-queue > a strong {
  font-size: 9.3px;
}

.request-center-queue > a small,
.request-center-queue > a time {
  margin-top: 2px;
  color: #71879c;
  font-size: 7.7px;
}

.request-center-queue > a time b {
  display: block;
  margin-top: 2px;
  color: #ee8a93;
  font-size: 6.9px;
  text-transform: uppercase;
}

.request-center-empty {
  min-height: 230px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 5px;
  color: #6f869b;
  text-align: center;
}

.request-center-empty > span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  margin-bottom: 4px;
  border-radius: 50%;
  background: rgba(75,156,255,.06);
  color: #6da8e3;
}

.request-center-empty strong {
  color: #aebdca;
  font-size: 9.5px;
}

.request-center-empty small {
  font-size: 7.8px;
}

.request-center-note {
  margin-top: 21px;
  padding: 11px 13px;
  border-left: 2px solid rgba(75,156,255,.23);
  background: rgba(75,156,255,.018);
}

.request-center-note strong {
  color: #aebfce;
  font-size: 8.5px;
}

.request-center-note p {
  margin: 4px 0 0;
  color: #70879c;
  font-size: 7.8px;
  line-height: 1.5;
}

@media(max-width:980px) {
  .request-center-metrics {
    grid-template-columns: repeat(2,1fr);
  }

  .request-center-metrics a:nth-child(2) {
    border-right: 0;
  }

  .request-center-head {
    display: none;
  }

  .request-center-queue > a {
    grid-template-columns: 100px 1fr 1fr;
  }

  .request-center-queue > a > div {
    grid-column: 2 / 4;
  }
}

@media(max-width:620px) {
  .request-center-hero {
    align-items: flex-start;
    flex-direction: column;
  }

  .request-center-summary {
    justify-items: start;
  }

  .request-center-metrics {
    grid-template-columns: 1fr;
  }

  .request-center-metrics a {
    border-right: 0;
    border-bottom: 1px solid rgba(132,158,184,.08);
  }

  .request-center-toolbar form {
    align-items: stretch;
    flex-direction: column;
  }

  .request-center-toolbar label {
    min-width: 0;
  }

  .request-center-queue > a {
    grid-template-columns: 1fr;
  }

  .request-center-queue > a > div {
    grid-column: auto;
  }
}


/* =========================================================
   ETAPA 3.19.3 — CENTRAL OPERACIONAL + TIPOGRAFIA EQUILIBRADA
   ========================================================= */

/* ---------- Central Operacional ---------- */
.operational-hero {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 24px;
  padding: 8px 0 24px;
  border-bottom: 1px solid rgba(132,158,184,.10);
}

.operational-hero h1 {
  margin: 6px 0 7px;
  font-size: clamp(34px,3.7vw,48px);
  line-height: 1;
  letter-spacing: -.05em;
}

.operational-hero p {
  margin: 0;
  color: #8095a9;
  font-size: 11px;
}

.operational-attention {
  display: grid;
  justify-items: end;
  min-width: 130px;
}

.operational-attention small {
  color: #6d859b;
  font-size: 9px;
  letter-spacing: .08em;
}

.operational-attention strong {
  margin-top: 3px;
  font-size: 34px;
  line-height: 1;
}

.operational-metrics {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  border-bottom: 1px solid rgba(132,158,184,.10);
}

.operational-metrics button {
  min-height: 96px;
  display: grid;
  align-content: center;
  padding: 14px 17px;
  border: 0;
  border-right: 1px solid rgba(132,158,184,.09);
  border-radius: 0;
  background: transparent;
  color: #dce6ef;
  text-align: left;
}

.operational-metrics button:last-child {
  border-right: 0;
}

.operational-metrics button:hover {
  background: rgba(255,255,255,.008);
}

.operational-metrics small {
  color: #71879d;
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: .055em;
}

.operational-metrics strong {
  margin: 5px 0 2px;
  font-size: 27px;
  line-height: 1;
}

.operational-metrics span {
  color: #687f94;
  font-size: 9px;
}

.operational-metrics button.is-danger strong,
.operational-metrics button.is-danger span {
  color: #ee8b94;
}

.operational-tabs {
  position: sticky;
  top: 62px;
  z-index: 20;
  display: flex;
  gap: 2px;
  overflow-x: auto;
  padding: 14px 0 8px;
  border-bottom: 1px solid rgba(132,158,184,.10);
  background: rgba(8,17,29,.96);
  backdrop-filter: blur(16px);
}

.operational-tabs button {
  flex: none;
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 11px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 6px 6px 0 0;
  background: transparent;
  color: #7f94a8;
  font-size: 10px;
  font-weight: 750;
}

.operational-tabs button:hover {
  color: #bdcad6;
  background: rgba(255,255,255,.008);
}

.operational-tabs button.is-active {
  color: #e6eff7;
  border-bottom-color: #4b9cff;
  background: rgba(75,156,255,.035);
}

.operational-tabs button span {
  min-width: 19px;
  padding: 2px 5px;
  border-radius: 999px;
  background: rgba(75,156,255,.09);
  color: #7fbaff;
  font-size: 8px;
  text-align: center;
}

.operational-stage {
  min-height: 520px;
}

.operational-panel {
  animation: operational-in .14s ease;
}

.operational-panel[hidden] {
  display: none !important;
}

@keyframes operational-in {
  from {opacity:0; transform:translateY(3px)}
  to {opacity:1; transform:none}
}

.operational-overview-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  padding-top: 25px;
}

.operational-block {
  min-width: 0;
}

.operational-block-head,
.operational-section-head {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 16px;
  margin-bottom: 12px;
}

.operational-block-head small,
.operational-section-head small {
  color: #6d869d;
  font-size: 9px;
  letter-spacing: .09em;
}

.operational-block-head h2,
.operational-section-head h2 {
  margin: 3px 0 0;
  font-size: 17px;
}

.operational-section-head {
  padding: 22px 0 15px;
  border-bottom: 1px solid rgba(132,158,184,.10);
}

.operational-section-head p {
  margin: 5px 0 0;
  color: #7e93a8;
  font-size: 10px;
}

.operational-section-head > a,
.operational-head-actions a {
  font-size: 10px;
}

.operational-text-action {
  padding: 0;
  border: 0;
  background: transparent;
  color: #69adf7;
  font-size: 9.5px;
}

.operational-feed {
  display: grid;
}

.operational-feed > a {
  min-height: 60px;
  display: grid;
  grid-template-columns: 15px minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 9px 2px;
  border-bottom: 1px solid rgba(132,158,184,.07);
  color: #d6e1ea;
}

.operational-feed > a:hover {
  text-decoration: none;
  background: rgba(255,255,255,.006);
}

.operational-feed > a > div {
  display: grid;
  min-width: 0;
}

.operational-feed strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10.5px;
}

.operational-feed small {
  margin-top: 3px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #768da2;
  font-size: 9px;
}

.operational-feed em {
  color: #778da2;
  font-size: 8.5px;
  font-style: normal;
  white-space: nowrap;
}

.op-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #526e88;
}

.op-dot.is-new {
  background: #4b9cff;
  box-shadow: 0 0 0 4px rgba(75,156,255,.06);
}

.operational-feed .severity-critical .op-dot {
  background: #ef717c;
}

.operational-feed .severity-warning .op-dot {
  background: #ddb05c;
}

.op-date {
  min-width: 38px;
  color: #8ea3b6;
  font-size: 9px;
  font-weight: 800;
}

.operational-feed > a.is-today .op-date {
  color: #77baff;
}

.operational-empty {
  min-height: 110px;
  display: grid;
  place-items: center;
  color: #71879c;
  font-size: 9.5px;
}

.operational-list {
  display: grid;
}

.operational-list article {
  min-height: 72px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto minmax(170px,auto);
  align-items: center;
  gap: 16px;
  padding: 11px 4px;
  border-bottom: 1px solid rgba(132,158,184,.07);
}

.operational-list article:has(.movement-indicator) {
  grid-template-columns: 14px minmax(0,1fr) auto minmax(170px,auto);
}

.operational-list article.is-unread {
  box-shadow: inset 2px 0 0 #4b9cff;
  padding-left: 10px;
}

.operational-list article.is-overdue {
  box-shadow: inset 2px 0 0 #ef717c;
  padding-left: 10px;
}

.operational-list article.is-today {
  box-shadow: inset 2px 0 0 #d9ad59;
  padding-left: 10px;
}

.operational-list-main {
  display: grid;
  min-width: 0;
}

.operational-list-main small {
  color: #71889e;
  font-size: 9px;
}

.operational-list-main strong {
  display: block;
  margin-top: 3px;
  color: #dce6ef;
  font-size: 10.5px;
}

.operational-list-main p {
  margin: 4px 0 0;
  color: #7f94a8;
  font-size: 9px;
}

.op-status {
  padding: 4px 7px;
  border-radius: 999px;
  background: rgba(255,255,255,.025);
  color: #8fa3b6;
  font-size: 8.5px;
  white-space: nowrap;
}

.operational-row-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 5px;
  flex-wrap: wrap;
}

.operational-row-actions form {
  margin: 0;
}

.operational-row-actions a,
.operational-row-actions button {
  min-height: 29px;
  display: inline-flex;
  align-items: center;
  padding: 5px 7px;
  border: 1px solid rgba(132,158,184,.12);
  border-radius: 6px;
  background: transparent;
  color: #91a9be;
  font-size: 8.5px;
}

.operational-row-actions a:hover,
.operational-row-actions button:hover {
  text-decoration: none;
  background: rgba(255,255,255,.012);
}

.movement-indicator {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #536e87;
}

.movement-indicator.is-new {
  background: #4b9cff;
  box-shadow: 0 0 0 4px rgba(75,156,255,.06);
}

.operational-head-actions {
  display: flex;
  gap: 7px;
  align-items: center;
}

.operational-legal-note {
  margin: 16px 0 0;
  padding: 10px 12px;
  border-left: 2px solid rgba(75,156,255,.22);
  color: #71889e;
  font-size: 9px;
  line-height: 1.5;
}

.operational-agenda {
  display: grid;
}

.operational-agenda > a {
  min-height: 68px;
  display: grid;
  grid-template-columns: 55px 85px minmax(0,1fr) 15px;
  align-items: center;
  gap: 12px;
  padding: 10px 3px;
  border-bottom: 1px solid rgba(132,158,184,.07);
  color: #d7e1ea;
}

.operational-agenda > a:hover {
  text-decoration: none;
  background: rgba(255,255,255,.006);
}

.operational-agenda > a > time {
  display: grid;
  text-align: center;
}

.operational-agenda time strong {
  font-size: 18px;
  line-height: 1;
}

.operational-agenda time small {
  margin-top: 3px;
  color: #6e869d;
  font-size: 8px;
}

.agenda-kind {
  width: fit-content;
  padding: 4px 7px;
  border-radius: 999px;
  font-size: 8px;
}

.kind-deadline {
  color: #84bfff;
  background: rgba(75,156,255,.08);
}

.kind-task {
  color: #9dc8ac;
  background: rgba(86,180,125,.07);
}

.operational-agenda > a > div {
  display: grid;
  min-width: 0;
}

.operational-agenda > a > div strong {
  font-size: 10.5px;
}

.operational-agenda > a > div small {
  margin-top: 3px;
  color: #758ba0;
  font-size: 9px;
}

.operational-agenda > a.is-today {
  box-shadow: inset 2px 0 0 #4b9cff;
  padding-left: 9px;
}

.operational-alerts {
  display: grid;
}

.operational-alerts > a {
  min-height: 72px;
  display: grid;
  grid-template-columns: 34px minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 10px 3px;
  border-bottom: 1px solid rgba(132,158,184,.07);
  color: #d7e1ea;
}

.operational-alerts > a:hover {
  text-decoration: none;
  background: rgba(255,255,255,.006);
}

.op-alert-icon {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(75,156,255,.06);
  color: #77b6f6;
  font-size: 11px;
  font-weight: 900;
}

.operational-alerts .severity-critical .op-alert-icon {
  background: rgba(239,113,124,.08);
  color: #ef8992;
}

.operational-alerts .severity-warning .op-alert-icon {
  background: rgba(221,176,92,.08);
  color: #ddb05c;
}

.operational-alerts > a > div {
  display: grid;
  min-width: 0;
}

.operational-alerts small {
  color: #688198;
  font-size: 8px;
  letter-spacing: .06em;
}

.operational-alerts strong {
  margin-top: 2px;
  font-size: 10.5px;
}

.operational-alerts p {
  margin: 4px 0 0;
  color: #788ea2;
  font-size: 9px;
  line-height: 1.4;
}

.operational-alerts time {
  color: #6d8498;
  font-size: 8.5px;
  white-space: nowrap;
}

/* ---------- Área do Cliente: escala tipográfica equilibrada ---------- */
.client-portal-body {
  font-size: 14px;
}

.client-topbar nav a {
  font-size: 11px !important;
}

.client-brand strong {
  font-size: 12px !important;
}

.client-brand small {
  font-size: 9px !important;
}

.client-portal-main {
  width: min(1180px,calc(100% - 44px));
  padding-top: 38px;
}

.client-welcome h1 {
  font-size: clamp(32px,3.25vw,45px) !important;
  line-height: 1.03 !important;
}

.client-case-hero h1 {
  font-size: clamp(29px,3.05vw,41px) !important;
  line-height: 1.04 !important;
  overflow-wrap: anywhere;
}

.client-welcome p,
.client-case-hero p {
  font-size: 11px !important;
}

.client-count small,
.client-section-head small,
.client-case-summary small,
.client-account-card small {
  font-size: 9px !important;
}

.client-count strong {
  font-size: 31px !important;
}

.client-section-head h2 {
  font-size: 17px !important;
}

.client-case-list strong {
  font-size: 12px !important;
}

.client-case-list span,
.client-case-list small {
  font-size: 10px !important;
  line-height: 1.45;
}

.client-case-list em,
.client-case-hero > span {
  font-size: 9px !important;
}

.client-case-summary strong,
.client-account-card strong {
  font-size: 11px !important;
}

.client-tabs button {
  font-size: 11px !important;
}

.client-tabs span {
  font-size: 8.5px !important;
}

.client-timeline strong {
  font-size: 11px !important;
}

.client-timeline small,
.client-timeline time {
  font-size: 9.5px !important;
}

.client-note,
.client-empty,
.client-back,
.client-report-link {
  font-size: 10px !important;
}

.client-document-list strong {
  font-size: 11px !important;
}

.client-document-list small,
.client-document-list b {
  font-size: 9.5px !important;
}

/* Pedido de relatório do cliente */
.client-report-hero h1 {
  font-size: clamp(31px,3.35vw,44px) !important;
}

.client-report-hero p,
.client-report-docs > p {
  font-size: 10.5px !important;
}

.client-report-time small,
.client-report-docs > small {
  font-size: 9px !important;
}

.client-report-time strong {
  font-size: 13px !important;
}

.client-report-identity dt,
.client-report-identity dd,
.client-report-form label {
  font-size: 10px !important;
}

.client-report-form label > small,
.client-report-consent,
.client-report-small {
  font-size: 9px !important;
}

.client-report-notice strong,
.client-report-doc-list span {
  font-size: 10px !important;
}

.client-report-notice p {
  font-size: 9.5px !important;
}

/* ---------- Monitor: escala tipográfica equilibrada ---------- */
.minimal-page .record-hero h1 {
  font-size: clamp(29px,3vw,40px) !important;
  line-height: 1.04;
}

.minimal-page .record-hero p {
  font-size: 11px !important;
  line-height: 1.45;
}

.monitor-history-line small {
  font-size: 9px !important;
}

.monitor-history-line strong {
  font-size: 11px !important;
}

.monitor-history-line span,
.monitor-history-action a {
  font-size: 9px !important;
}

.minimal-metric-strip small {
  font-size: 9px !important;
}

.minimal-metric-strip strong {
  font-size: 24px !important;
}

.minimal-metric-strip .metric-date {
  font-size: 17px !important;
}

.minimal-metric-strip span {
  font-size: 9px !important;
}

.minimal-section-head small {
  font-size: 9px !important;
}

.minimal-section-head h2 {
  font-size: 16px !important;
}

.minimal-section-head > a {
  font-size: 9.5px !important;
}

.minimal-feed-list strong {
  font-size: 11px !important;
}

.minimal-feed-list small {
  font-size: 9.5px !important;
  line-height: 1.4;
}

.minimal-feed-list > a > span {
  font-size: 8.5px !important;
}

.minimal-scope-note {
  font-size: 9.5px !important;
  line-height: 1.55;
}

@media(max-width:1180px) {
  .operational-metrics {
    grid-template-columns: repeat(3,1fr);
  }

  .operational-metrics button:nth-child(3n) {
    border-right: 0;
  }
}

@media(max-width:860px) {
  .operational-overview-grid {
    grid-template-columns: 1fr;
  }

  .operational-list article,
  .operational-list article:has(.movement-indicator) {
    grid-template-columns: minmax(0,1fr) auto;
  }

  .operational-list article:has(.movement-indicator) .movement-indicator {
    display: none;
  }

  .operational-row-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }

  .operational-agenda > a {
    grid-template-columns: 50px 80px minmax(0,1fr);
  }

  .operational-agenda > a > b {
    display: none;
  }
}

@media(max-width:620px) {
  .operational-hero {
    align-items: flex-start;
    flex-direction: column;
  }

  .operational-attention {
    justify-items: start;
  }

  .operational-metrics {
    grid-template-columns: repeat(2,1fr);
  }

  .operational-metrics button:nth-child(3n) {
    border-right: 1px solid rgba(132,158,184,.09);
  }

  .operational-metrics button:nth-child(even) {
    border-right: 0;
  }

  .operational-list article,
  .operational-list article:has(.movement-indicator) {
    grid-template-columns: 1fr;
  }

  .operational-agenda > a {
    grid-template-columns: 48px minmax(0,1fr);
  }

  .agenda-kind {
    grid-column: 2;
  }

  .operational-agenda > a > div {
    grid-column: 2;
  }

  .operational-alerts > a {
    grid-template-columns: 32px minmax(0,1fr);
  }

  .operational-alerts time {
    grid-column: 2;
  }

  .client-portal-main {
    width: calc(100% - 30px);
  }

  .client-welcome h1 {
    font-size: 31px !important;
  }

  .client-case-hero h1 {
    font-size: 27px !important;
  }
}


/* =========================================================
   ETAPA 3.19.4 — POLIMENTO VISUAL E TIPOGRÁFICO
   Nenhuma alteração funcional.
   ========================================================= */

/* ---------- Tipografia geral do ambiente profissional ---------- */
body {
  font-size: 14px;
  line-height: 1.45;
}

.content {
  max-width: 1480px;
  padding-left: 34px;
  padding-right: 34px;
}

.eyebrow {
  font-size: 10px !important;
  letter-spacing: .105em !important;
}

.muted,
.page-head p,
.record-hero p {
  font-size: 11px !important;
  line-height: 1.5 !important;
}

/* ---------- Sidebar: mais limpa, sem barra horizontal ---------- */
.sidebar {
  overflow-x: hidden !important;
}

.sidebar nav {
  overflow-x: hidden !important;
  padding-right: 4px;
}

.sidebar nav a {
  position: relative;
  min-width: 0;
  min-height: 45px;
  gap: 11px;
}

.sidebar nav a .nav-copy {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 660;
  letter-spacing: -.01em;
}

.sidebar .nav-icon {
  flex: 0 0 22px;
  width: 22px;
  font-size: 14px;
  text-align: center;
}

.sidebar nav a .nav-counter {
  flex: 0 0 auto;
  margin-right: 2px;
}

.nav-label .nav-copy {
  font-size: 9px !important;
  letter-spacing: .13em !important;
}

/* scrollbar vertical discreta */
.sidebar,
.sidebar nav {
  scrollbar-width: thin;
  scrollbar-color: rgba(132,158,184,.28) transparent;
}

.sidebar::-webkit-scrollbar,
.sidebar nav::-webkit-scrollbar {
  width: 5px;
  height: 0;
}

.sidebar::-webkit-scrollbar-thumb,
.sidebar nav::-webkit-scrollbar-thumb {
  background: rgba(132,158,184,.25);
  border-radius: 999px;
}

/* ---------- Central Operacional: escala mais elegante ---------- */
.operational-center {
  --op-line: rgba(132,158,184,.105);
  --op-soft: rgba(255,255,255,.010);
  --op-soft-hover: rgba(255,255,255,.018);
}

.operational-hero {
  min-height: 150px;
  align-items: center;
  padding: 27px 4px 30px;
}

.operational-hero h1 {
  max-width: 780px;
  margin: 7px 0 9px;
  font-size: clamp(34px, 3.15vw, 43px);
  line-height: 1.02;
  letter-spacing: -.047em;
}

.operational-hero p {
  max-width: 720px;
  font-size: 12px;
  line-height: 1.55;
}

.operational-attention {
  min-width: 155px;
  padding: 13px 16px;
  border: 1px solid var(--op-line);
  border-radius: 13px;
  background: rgba(255,255,255,.008);
}

.operational-attention small {
  font-size: 9px;
  letter-spacing: .10em;
}

.operational-attention strong {
  margin-top: 5px;
  font-size: 29px;
}

/* Métricas mais compactas e legíveis */
.operational-metrics {
  margin-bottom: 6px;
  border-top: 1px solid var(--op-line);
}

.operational-metrics button {
  min-height: 104px;
  padding: 18px 20px;
  transition: background .15s ease, transform .15s ease;
}

.operational-metrics button:hover {
  background: var(--op-soft-hover);
}

.operational-metrics small {
  font-size: 9.5px;
  font-weight: 650;
  letter-spacing: .065em;
}

.operational-metrics strong {
  margin: 7px 0 4px;
  font-size: 28px;
  font-weight: 760;
}

.operational-metrics span {
  font-size: 9.5px;
  line-height: 1.35;
}

/* Abas mais claras */
.operational-tabs {
  gap: 5px;
  padding: 13px 0 10px;
}

.operational-tabs button {
  min-height: 39px;
  padding: 9px 13px;
  font-size: 10.5px;
  font-weight: 700;
  border-radius: 8px 8px 0 0;
}

.operational-tabs button span {
  min-width: 21px;
  padding: 2px 6px;
  font-size: 8.5px;
}

/* Visão Geral agrupada em superfícies leves */
.operational-overview-grid {
  gap: 18px;
  padding-top: 20px;
}

.operational-block {
  padding: 18px 20px 6px;
  border: 1px solid rgba(132,158,184,.085);
  border-radius: 13px;
  background: linear-gradient(
    180deg,
    rgba(255,255,255,.010),
    rgba(255,255,255,.004)
  );
}

.operational-block-head {
  min-height: 44px;
  margin-bottom: 7px;
}

.operational-block-head small,
.operational-section-head small {
  font-size: 9px;
  font-weight: 650;
}

.operational-block-head h2,
.operational-section-head h2 {
  margin-top: 4px;
  font-size: 16px;
  letter-spacing: -.02em;
}

.operational-text-action,
.operational-section-head > a,
.operational-head-actions a {
  font-size: 9.5px !important;
}

/* Linhas internas maiores e mais confortáveis */
.operational-feed > a {
  min-height: 66px;
  padding: 11px 3px;
}

.operational-feed strong {
  font-size: 11px;
  line-height: 1.35;
}

.operational-feed small {
  margin-top: 4px;
  font-size: 9.5px;
  line-height: 1.4;
}

.operational-feed em {
  font-size: 9px;
}

.op-date {
  font-size: 9.5px;
}

.operational-empty {
  min-height: 140px;
  padding: 24px 10px;
  font-size: 10px;
  line-height: 1.5;
  text-align: center;
}

/* Cabeçalho das demais abas */
.operational-section-head {
  align-items: center;
  padding: 24px 3px 17px;
}

.operational-section-head h2 {
  font-size: 18px;
}

.operational-section-head p {
  font-size: 10.5px;
  line-height: 1.5;
}

/* Listas operacionais */
.operational-list article {
  min-height: 78px;
  padding-top: 13px;
  padding-bottom: 13px;
}

.operational-list-main small {
  font-size: 9.5px;
}

.operational-list-main strong {
  margin-top: 4px;
  font-size: 11.5px;
  line-height: 1.35;
}

.operational-list-main p {
  font-size: 9.5px;
  line-height: 1.4;
}

.op-status {
  font-size: 9px;
}

.operational-row-actions a,
.operational-row-actions button {
  min-height: 31px;
  padding: 6px 8px;
  font-size: 9px;
}

.operational-legal-note {
  font-size: 9.5px;
}

/* Agenda */
.operational-agenda > a {
  min-height: 74px;
  padding-top: 12px;
  padding-bottom: 12px;
}

.operational-agenda time strong {
  font-size: 19px;
}

.operational-agenda time small,
.agenda-kind {
  font-size: 8.5px;
}

.operational-agenda > a > div strong {
  font-size: 11px;
}

.operational-agenda > a > div small {
  font-size: 9.5px;
}

/* Alertas */
.operational-alerts > a {
  min-height: 78px;
  padding-top: 12px;
  padding-bottom: 12px;
}

.operational-alerts small {
  font-size: 8.5px;
}

.operational-alerts strong {
  font-size: 11.5px;
}

.operational-alerts p {
  font-size: 9.5px;
}

.operational-alerts time {
  font-size: 9px;
}

/* ---------- Área do Cliente: refinamento fino ---------- */
.client-portal-main {
  width: min(1160px, calc(100% - 48px));
}

.client-welcome {
  padding-top: 22px;
}

.client-welcome h1 {
  max-width: 960px;
  font-size: clamp(31px, 3vw, 41px) !important;
  letter-spacing: -.045em !important;
}

.client-welcome p {
  font-size: 11.5px !important;
}

.client-count small {
  font-size: 9.5px !important;
}

.client-count strong {
  font-size: 29px !important;
}

.client-section-head h2 {
  font-size: 17px !important;
}

.client-section-head small {
  font-size: 9px !important;
}

.client-case-list > a {
  min-height: 78px;
}

.client-case-list strong {
  font-size: 11.5px !important;
}

.client-case-list span,
.client-case-list small {
  font-size: 9.5px !important;
}

.client-case-hero h1 {
  max-width: 920px;
  font-size: clamp(28px, 2.7vw, 37px) !important;
  letter-spacing: -.04em !important;
}

.client-case-summary strong {
  font-size: 11px !important;
}

.client-tabs button {
  min-height: 39px;
  font-size: 10.5px !important;
}

.client-timeline > div {
  min-height: 72px;
}

.client-timeline strong {
  font-size: 11px !important;
}

.client-timeline small,
.client-timeline time {
  font-size: 9.5px !important;
}

/* ---------- Monitor: refinamento fino ---------- */
.minimal-page .record-hero {
  padding-top: 11px;
  padding-bottom: 24px;
}

.minimal-page .record-hero h1 {
  max-width: 980px;
  font-size: clamp(29px, 2.7vw, 38px) !important;
  letter-spacing: -.043em;
}

.minimal-page .record-hero p {
  font-size: 11px !important;
}

.monitor-history-line > div {
  min-height: 82px;
  padding: 14px 16px;
}

.monitor-history-line small {
  font-size: 9px !important;
}

.monitor-history-line strong {
  font-size: 11px !important;
  line-height: 1.4;
}

.monitor-history-line span {
  font-size: 9px !important;
}

.minimal-metric-strip > a {
  min-height: 101px;
  padding: 16px 18px;
}

.minimal-metric-strip small {
  font-size: 9px !important;
}

.minimal-metric-strip strong {
  font-size: 23px !important;
}

.minimal-metric-strip span {
  font-size: 9px !important;
}

.minimal-section-head h2 {
  font-size: 16px !important;
}

.minimal-feed-list > a {
  min-height: 64px;
  padding-top: 11px;
  padding-bottom: 11px;
}

.minimal-feed-list strong {
  font-size: 11px !important;
}

.minimal-feed-list small {
  font-size: 9.5px !important;
}

/* ---------- Responsivo ---------- */
@media(max-width: 1180px) {
  .content {
    padding-left: 26px;
    padding-right: 26px;
  }

  .operational-hero {
    min-height: auto;
  }

  .operational-overview-grid {
    grid-template-columns: 1fr;
  }
}

@media(max-width: 760px) {
  .content {
    padding-left: 18px;
    padding-right: 18px;
  }

  .operational-hero h1 {
    font-size: 33px;
  }

  .operational-metrics {
    grid-template-columns: repeat(2, 1fr);
  }

  .operational-block {
    padding-left: 14px;
    padding-right: 14px;
  }

  .operational-tabs {
    top: 0;
  }
}


/* =========================================================
   ETAPA 3.19.5 — LAPIDAÇÃO VISUAL FINAL
   Somente apresentação. Nenhuma regra funcional alterada.
   ========================================================= */

:root {
  --g360-radius-xs: 6px;
  --g360-radius-sm: 9px;
  --g360-radius-md: 13px;
  --g360-radius-lg: 17px;

  --g360-line-hair: rgba(139,164,189,.085);
  --g360-line-ui: rgba(139,164,189,.13);
  --g360-panel-soft: rgba(255,255,255,.008);
  --g360-panel-hover: rgba(255,255,255,.015);

  --g360-text-strong: #eef4fa;
  --g360-text-main: #ced9e4;
  --g360-text-muted: #8297ab;
  --g360-text-faint: #657c92;
}

/* ---------- Ritmo e leitura global ---------- */
html {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

body {
  letter-spacing: -.003em;
}

a,
button,
input,
select,
textarea {
  transition:
    background-color .14s ease,
    border-color .14s ease,
    color .14s ease,
    opacity .14s ease,
    box-shadow .14s ease;
}

.content {
  padding-top: 31px;
  padding-bottom: 52px;
}

h1, h2, h3, strong {
  text-wrap: balance;
}

p {
  text-wrap: pretty;
}

.mono {
  letter-spacing: -.018em;
}

/* ---------- Topbar mais sofisticada ---------- */
.topbar {
  min-height: 64px;
  padding-left: 24px;
  padding-right: 24px;
  border-bottom-color: rgba(139,164,189,.095);
  background: rgba(7,16,28,.92);
  backdrop-filter: blur(18px);
}

.top-global-search {
  max-width: 660px;
}

.top-global-search input {
  min-height: 43px;
  padding-left: 38px;
  border-color: rgba(139,164,189,.12);
  border-radius: 12px;
  background: rgba(255,255,255,.012);
  font-size: 11px;
}

.top-global-search input:focus {
  border-color: rgba(76,158,245,.38);
  background: rgba(255,255,255,.018);
  box-shadow: 0 0 0 3px rgba(76,158,245,.055);
}

.top-actions {
  gap: 10px;
}

.top-actions > a,
.top-actions > button,
.top-actions .button-link {
  min-height: 38px;
  border-radius: 10px;
  font-size: 10px;
}

.top-actions .primary,
.top-actions .button-primary {
  box-shadow: 0 8px 20px rgba(30,111,194,.12);
}

/* ---------- Sidebar: acabamento ---------- */
.sidebar {
  border-right-color: rgba(139,164,189,.10);
  background:
    radial-gradient(circle at 20% 0%, rgba(39,93,145,.055), transparent 30%),
    #071321;
}

.brand-row {
  min-height: 74px;
  border-bottom: 1px solid rgba(139,164,189,.08);
}

.brand-mark,
.brand > span {
  box-shadow: inset 0 0 0 1px rgba(113,177,241,.08);
}

.sidebar nav {
  padding-top: 10px;
  padding-bottom: 12px;
}

.sidebar nav a {
  margin-bottom: 2px;
  border: 1px solid transparent;
  border-radius: 10px;
}

.sidebar nav a:hover {
  border-color: rgba(139,164,189,.07);
  background: rgba(255,255,255,.012);
}

.sidebar nav a.is-active {
  border-color: rgba(76,158,245,.12);
  background:
    linear-gradient(90deg, rgba(65,143,226,.115), rgba(65,143,226,.035));
  box-shadow: inset 2px 0 0 #4c9ef5;
}

.sidebar nav a.is-active .nav-copy {
  color: #e8f2fb;
}

.sidebar .nav-icon {
  color: #7d9bb6;
}

.sidebar nav a.is-active .nav-icon {
  color: #6eb5fb;
}

.nav-label {
  margin-top: 9px;
}

.sidebar-footer {
  border-top-color: rgba(139,164,189,.085);
  background: rgba(5,13,23,.72);
}

/* ---------- Botões globais ---------- */
button,
.button-link,
a.button-link {
  font-weight: 720;
}

button:not(.primary):not(.primary-minimal):not(.client-primary-action),
.button-link:not(.primary),
.record-actions > a:not(.primary-minimal) {
  box-shadow: none;
}

button:hover,
.button-link:hover,
.record-actions > a:hover {
  transform: translateY(-.5px);
}

.primary,
.primary-minimal,
.button-link.primary,
.client-primary-action {
  background: linear-gradient(180deg, #358bd9, #2779c2) !important;
  border-color: rgba(90,169,249,.40) !important;
  color: #fff !important;
  box-shadow: 0 8px 22px rgba(25,105,183,.14);
}

.primary:hover,
.primary-minimal:hover,
.button-link.primary:hover,
.client-primary-action:hover {
  background: linear-gradient(180deg, #3c94e4, #2b80ca) !important;
  box-shadow: 0 10px 25px rgba(25,105,183,.18);
}

/* ---------- Inputs / filtros ---------- */
input,
select,
textarea {
  outline: none;
}

.minimal-page input,
.minimal-page select,
.minimal-page textarea,
.client-report-form input,
.client-report-form select,
.client-report-form textarea {
  border-color: rgba(139,164,189,.14);
  background: rgba(4,12,21,.60);
}

.minimal-page input:focus,
.minimal-page select:focus,
.minimal-page textarea:focus,
.client-report-form input:focus,
.client-report-form select:focus,
.client-report-form textarea:focus {
  border-color: rgba(76,158,245,.40);
  box-shadow: 0 0 0 3px rgba(76,158,245,.05);
}

/* ---------- Painel: acabamento leve ---------- */
.command-hero h1 {
  font-size: clamp(33px, 3.7vw, 47px);
  letter-spacing: -.052em;
}

.command-hero p {
  font-size: 11px;
}

.command-health {
  border-color: var(--g360-line-ui);
  background: rgba(255,255,255,.009);
}

.metric-strip {
  border-color: var(--g360-line-hair);
}

.metric-strip a {
  min-height: 111px;
  padding: 18px 24px;
  border-right-color: var(--g360-line-hair);
}

.metric-strip small {
  font-size: 9px;
}

.metric-strip strong {
  font-size: 32px;
}

.metric-strip span {
  font-size: 9px;
}

.quick-facts a {
  border-color: var(--g360-line-hair);
  background: rgba(255,255,255,.006);
}

.attention-line {
  border: 1px solid rgba(233,91,102,.085);
  background: rgba(233,91,102,.045);
}

.command-panel {
  border-color: var(--g360-line-hair);
  background: rgba(255,255,255,.004);
}

.command-panel-head h2,
.activity-head h2 {
  font-size: 16px;
}

.today-row,
.activity-line {
  border-bottom-color: rgba(139,164,189,.065);
}

/* ---------- Central Operacional: acabamento de produto ---------- */
.operational-hero {
  padding-left: 2px;
  padding-right: 2px;
}

.operational-hero h1 {
  color: var(--g360-text-strong);
}

.operational-hero p {
  color: var(--g360-text-muted);
}

.operational-attention {
  border-color: rgba(139,164,189,.105);
  background:
    linear-gradient(180deg, rgba(255,255,255,.013), rgba(255,255,255,.005));
}

.operational-attention strong {
  color: #eff5fb;
}

.operational-metrics button {
  position: relative;
}

.operational-metrics button::after {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 0;
  height: 1px;
  background: transparent;
}

.operational-metrics button:hover::after {
  background: rgba(76,158,245,.35);
}

.operational-tabs {
  box-shadow: 0 8px 20px rgba(0,0,0,.05);
}

.operational-tabs button {
  color: #8599ad;
}

.operational-tabs button.is-active {
  color: #edf4fb;
}

.operational-block {
  border-color: rgba(139,164,189,.095);
  box-shadow: 0 12px 32px rgba(0,0,0,.045);
}

.operational-block:hover {
  border-color: rgba(139,164,189,.13);
}

.operational-feed > a {
  border-bottom-color: rgba(139,164,189,.06);
}

.operational-list article,
.operational-agenda > a,
.operational-alerts > a {
  border-bottom-color: rgba(139,164,189,.065);
}

.operational-list article:hover,
.operational-agenda > a:hover,
.operational-alerts > a:hover {
  background: rgba(255,255,255,.007);
}

.operational-legal-note {
  border-left-color: rgba(76,158,245,.28);
  background: rgba(76,158,245,.018);
}

/* ---------- Solicitações do Cliente ---------- */
.request-center-hero h1 {
  font-size: clamp(33px, 3.25vw, 44px);
  color: var(--g360-text-strong);
}

.request-center-hero p {
  font-size: 11px;
}

.request-center-summary {
  padding: 12px 15px;
  border: 1px solid var(--g360-line-hair);
  border-radius: 12px;
  background: var(--g360-panel-soft);
}

.request-center-metrics a {
  min-height: 101px;
}

.request-center-metrics small {
  font-size: 9px;
}

.request-center-metrics strong {
  font-size: 26px;
}

.request-center-metrics span {
  font-size: 9px;
}

.request-center-tabs a,
.request-center-tabs > span {
  min-height: 37px;
  font-size: 9.5px;
}

.request-center-toolbar label {
  font-size: 9px;
}

.request-center-head {
  font-size: 8px;
}

.request-center-queue > a {
  min-height: 72px;
  border-bottom-color: rgba(139,164,189,.065);
}

.request-center-queue > a:hover {
  background: rgba(255,255,255,.008);
}

.request-center-queue > a strong {
  font-size: 10.5px;
}

.request-center-queue > a small,
.request-center-queue > a time {
  font-size: 8.7px;
}

.request-type-badge,
.report-admin-status {
  font-size: 8px;
}

/* ---------- Listas e tabelas do sistema ---------- */
.minimal-page .page-head h1 {
  color: var(--g360-text-strong);
}

.minimal-page .table-panel {
  border-top: 1px solid var(--g360-line-hair);
}

.minimal-page th {
  height: 39px;
  padding-top: 9px;
  padding-bottom: 9px;
  color: #758ca2;
  font-size: 8.5px;
  letter-spacing: .075em;
}

.minimal-page td {
  padding-top: 14px;
  padding-bottom: 14px;
  font-size: 10.5px;
}

.minimal-page td strong {
  font-size: 10.5px;
}

.minimal-page td small {
  font-size: 8.8px;
}

.minimal-page tbody tr:hover {
  background: rgba(255,255,255,.007);
}

.minimal-page .status,
.minimal-page .badge {
  font-size: 8px;
}

/* ---------- Cliente: detalhe e lista ---------- */
.record-hero h1 {
  color: var(--g360-text-strong);
}

.record-strip {
  border-bottom-color: var(--g360-line-hair);
}

.record-strip > div {
  border-right-color: var(--g360-line-hair);
}

.record-strip small {
  font-size: 8.5px;
}

.record-strip strong {
  font-size: 10.5px;
}

.minimal-section {
  border-top-color: var(--g360-line-hair);
}

.minimal-details dt,
.minimal-details dd,
.minimal-relation-row,
.minimal-feed-list > a,
.minimal-document-list article {
  border-bottom-color: rgba(139,164,189,.065);
}

/* ---------- Monitor de advogado ---------- */
.monitor-history-line {
  border-bottom-color: var(--g360-line-hair);
  border-top: 1px solid var(--g360-line-hair);
}

.monitor-history-line > div {
  border-right-color: var(--g360-line-hair);
  background: rgba(255,255,255,.003);
}

.minimal-metric-strip {
  border-color: var(--g360-line-hair);
}

.minimal-metric-strip > a {
  border-right-color: var(--g360-line-hair);
}

.minimal-scope-note {
  background: rgba(76,158,245,.014);
}

/* ---------- Dossiê ---------- */
.dossier-hero-main h1 {
  color: var(--g360-text-strong);
}

.dossier-overview-strip,
.dossier-tabs,
.dossier-summary-minimal {
  border-color: var(--g360-line-hair);
}

.dossier-overview-strip > div,
.dossier-summary-minimal article {
  border-right-color: var(--g360-line-hair);
}

.dossier-tabs button {
  font-size: 10px;
}

.dossier-tabs button.is-active {
  color: #eef5fb;
}

.dossier-summary-minimal article {
  min-height: 160px;
}

.dossier-summary-minimal strong {
  font-size: 15px;
}

.dossier-summary-minimal p {
  font-size: 9.5px;
}

/* ---------- Portal do Cliente: identidade mais refinada ---------- */
.client-portal-body {
  background:
    radial-gradient(circle at 18% 8%, rgba(38,92,144,.045), transparent 28%),
    #071321;
}

.client-topbar {
  background: rgba(7,16,28,.94);
  border-bottom-color: rgba(139,164,189,.09);
  backdrop-filter: blur(18px);
}

.client-brand strong {
  color: #edf4fb;
}

.client-topbar nav a {
  color: #8da2b5;
}

.client-topbar nav a:hover {
  color: #dfeaf4;
}

.client-welcome {
  border-bottom-color: var(--g360-line-hair);
}

.client-welcome h1,
.client-case-hero h1,
.client-report-hero h1 {
  color: #edf4fb;
}

.client-case-list > a,
.client-timeline > div,
.client-document-list article,
.client-report-request-list article {
  border-bottom-color: rgba(139,164,189,.065);
}

.client-case-list > a:hover,
.client-document-list article:hover {
  background: rgba(255,255,255,.006);
}

.client-tabs {
  border-bottom-color: var(--g360-line-hair);
}

.client-tabs button {
  color: #8399ae;
}

.client-tabs button.is-active {
  color: #eef5fb;
}

.client-case-summary {
  border-color: var(--g360-line-hair);
}

.client-case-summary > div {
  border-right-color: var(--g360-line-hair);
}

.client-report-docs {
  border-left-color: var(--g360-line-hair);
}

.client-report-notice {
  background: rgba(76,158,245,.018);
}

.client-report-history {
  border-top-color: var(--g360-line-hair);
}

/* ---------- Gateway / login ---------- */
.portal-gateway,
.professional-login-page {
  background:
    radial-gradient(circle at 18% 16%, rgba(44,100,154,.06), transparent 30%),
    #071321;
}

.portal-login-card,
.professional-login-card {
  border-color: rgba(139,164,189,.12);
  border-radius: 17px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.018), rgba(255,255,255,.007));
  box-shadow: 0 18px 50px rgba(0,0,0,.12);
}

.portal-login-card input,
.professional-login-card input {
  border-radius: 10px;
}

/* ---------- Relatórios ---------- */
.minimal-page .kpis {
  border-color: var(--g360-line-hair);
}

.minimal-page .kpis > a {
  border-right-color: var(--g360-line-hair);
}

.minimal-page .grid2 > .panel,
.minimal-page > .panel:not(.compact):not(.table-panel):not(.form-panel) {
  border-top-color: var(--g360-line-hair);
}

.minimal-page .export-grid {
  border-color: var(--g360-line-hair);
}

.minimal-page .export-card {
  border-right-color: var(--g360-line-hair);
}

/* ---------- Estados vazios mais elegantes ---------- */
.minimal-empty,
.dossier-empty-line,
.activity-empty,
.client-empty,
.operational-empty,
.request-center-empty {
  color: #71879c;
}

.today-empty > span,
.dossier-empty-state > span,
.request-center-empty > span {
  box-shadow: inset 0 0 0 1px rgba(112,173,234,.045);
}

/* ---------- Foco por teclado ---------- */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid rgba(78,158,240,.68);
  outline-offset: 2px;
}

/* ---------- Responsivo fino ---------- */
@media(max-width: 1280px) {
  .content {
    padding-left: 28px;
    padding-right: 28px;
  }

  .sidebar nav a .nav-copy {
    font-size: 12.5px;
  }
}

@media(max-width: 900px) {
  .content {
    padding-left: 21px;
    padding-right: 21px;
  }

  .topbar {
    padding-left: 16px;
    padding-right: 16px;
  }

  .operational-attention,
  .request-center-summary {
    align-self: flex-start;
  }
}

@media(max-width: 620px) {
  .content {
    padding-left: 15px;
    padding-right: 15px;
  }

  .operational-hero h1,
  .request-center-hero h1 {
    font-size: 31px;
  }

  .operational-block {
    border-radius: 11px;
  }

  .client-portal-main {
    width: calc(100% - 28px);
  }
}


/* =========================================================
   ETAPA 3.19.6 — AJUSTE VISUAL CIRÚRGICO
   Fechamento do design. Nenhuma alteração funcional.
   ========================================================= */

/* 1. Sidebar mais compacta verticalmente */
.sidebar nav {
  padding-top: 7px;
  padding-bottom: 8px;
}

.sidebar nav a {
  min-height: 41px;
  margin-bottom: 1px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.sidebar nav a .nav-copy {
  font-size: 12.5px;
}

.nav-label {
  margin-top: 5px;
  margin-bottom: 2px;
}

.sidebar-footer {
  min-height: 61px;
}

/* 2. "Solicitações do Cliente" completo, sem truncar */
.sidebar nav a[href="/portal/solicitacoes/"] {
  min-height: 48px;
  align-items: center;
}

.sidebar nav a[href="/portal/solicitacoes/"] .nav-copy {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  line-height: 1.15;
  max-width: 145px;
}

.sidebar nav a[href="/portal/solicitacoes/"] .nav-counter {
  margin-left: auto;
}

/* Quando recolhida, mantém somente ícone e contador */
.app-shell.sidebar-collapsed .sidebar nav a[href="/portal/solicitacoes/"] {
  min-height: 41px;
}

.app-shell.sidebar-collapsed .sidebar nav a[href="/portal/solicitacoes/"] .nav-copy {
  display: none;
}

/* 3. Painel: hero ligeiramente mais contido */
.command-hero h1 {
  max-width: 1040px;
  font-size: clamp(32px, 3.35vw, 43px) !important;
  line-height: 1.015;
  letter-spacing: -.049em;
}

.command-hero p {
  margin-top: 8px;
  font-size: 11.5px !important;
}

/* 4. Lista de advogados: título na mesma escala de Clientes */
.lawyer-list-page .page-head h1 {
  font-size: clamp(30px, 2.75vw, 37px) !important;
  letter-spacing: -.045em;
}

.lawyer-list-page .page-head p {
  font-size: 10.5px !important;
}

/* Pequeno acabamento na tabela da lista de advogados */
.lawyer-list-page table th {
  font-size: 8.4px;
}

.lawyer-list-page table td {
  font-size: 10px;
}

.lawyer-list-page table td strong {
  font-size: 10.5px;
}

/* Administração deve ficar mais facilmente visível sem aumentar o menu */
.sidebar nav + .sidebar-admin,
.sidebar .admin-section {
  margin-top: 4px;
}

@media(max-width:1280px) {
  .sidebar nav a .nav-copy {
    font-size: 12px;
  }

  .sidebar nav a[href="/portal/solicitacoes/"] .nav-copy {
    max-width: 135px;
  }
}


/* =========================================================
   ETAPA 3.20 — COMUNICAÇÃO COM O CLIENTE
   ========================================================= */

.gateway-account-links {
  display: flex;
  justify-content: flex-end;
  margin-top: -2px;
}

.gateway-account-links a {
  color: #69adf7;
  font-size: 9.5px;
}

.communication-success,
.communication-warning {
  margin: 18px 0 0;
  padding: 13px 15px;
  border-left: 2px solid;
  border-radius: 0 8px 8px 0;
}

.communication-success {
  border-color: rgba(91,205,149,.55);
  background: rgba(91,205,149,.035);
}

.communication-warning {
  border-color: rgba(222,178,94,.55);
  background: rgba(222,178,94,.035);
}

.communication-success strong,
.communication-warning strong {
  font-size: 10.5px;
}

.communication-success p,
.communication-warning p {
  margin: 4px 0 0;
  color: #8095a9;
  font-size: 9.5px;
}

.request-center-hero-actions {
  display: flex;
  align-items: center;
  gap: 14px;
}

.request-center-hero-actions > a {
  color: #69adf7;
  font-size: 9.5px;
}

.communication-status-strip {
  display: grid;
  grid-template-columns: .75fr 1.5fr .55fr 1.5fr;
  margin-bottom: 20px;
  border-bottom: 1px solid rgba(139,164,189,.09);
}

.communication-status-strip > div {
  min-height: 78px;
  display: grid;
  align-content: center;
  padding: 13px 16px;
  border-right: 1px solid rgba(139,164,189,.08);
}

.communication-status-strip > div:last-child {
  border-right: 0;
}

.communication-status-strip small {
  color: #70879d;
  font-size: 8.5px;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.communication-status-strip strong {
  margin-top: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10.5px;
}

.communication-status-strip .is-ok strong {
  color: #83d5ab;
}

.communication-status-strip .is-warning strong {
  color: #ddb05c;
}

.communication-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
}

.communication-test-form {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 8px;
  align-items: end;
}

.communication-test-form label {
  display: grid;
  gap: 5px;
  font-size: 9px;
}

.communication-test-form input {
  width: 100%;
  min-height: 37px;
}

.communication-test-form button[disabled] {
  opacity: .45;
  cursor: not-allowed;
}

.communication-warning-text,
.communication-meta {
  margin-top: 9px;
  color: #a88b59;
  font-size: 8.5px;
}

.communication-recipient-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.communication-recipient-list span {
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(75,156,255,.065);
  color: #8cbcf0;
  font-size: 8.5px;
}

.communication-log {
  display: grid;
}

.communication-log-head,
.communication-log > div:not(.minimal-empty) {
  display: grid;
  grid-template-columns: 1.15fr 1.4fr 1.15fr .65fr .75fr;
  gap: 12px;
  align-items: center;
}

.communication-log-head {
  min-height: 34px;
  padding: 6px 8px;
  border-bottom: 1px solid rgba(139,164,189,.10);
  color: #6f879d;
  font-size: 7.8px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.communication-log > div:not(.minimal-empty) {
  min-height: 60px;
  padding: 9px 8px;
  border-bottom: 1px solid rgba(139,164,189,.065);
  color: #bac9d6;
  font-size: 8.8px;
}

.communication-log time {
  color: #71889e;
  font-size: 8.5px;
}

.communication-log small {
  grid-column: 1 / -1;
  color: #c1868c;
  font-size: 8px;
}

.email-status {
  width: fit-content;
  padding: 4px 7px;
  border-radius: 999px;
  font-size: 8px;
}

.email-status.status-sent {
  color: #84d6ac;
  background: rgba(91,205,149,.06);
}

.email-status.status-failed {
  color: #ee8b94;
  background: rgba(239,113,124,.06);
}

.email-status.status-skipped {
  color: #d5ac67;
  background: rgba(221,176,92,.06);
}

@media(max-width:900px) {
  .communication-status-strip {
    grid-template-columns: repeat(2,1fr);
  }

  .communication-grid {
    grid-template-columns: 1fr;
  }

  .communication-log-head {
    display: none;
  }

  .communication-log > div:not(.minimal-empty) {
    grid-template-columns: 1fr 1fr;
  }
}

@media(max-width:620px) {
  .request-center-hero-actions {
    align-items: flex-start;
    flex-direction: column;
  }

  .communication-status-strip,
  .communication-log > div:not(.minimal-empty),
  .communication-test-form {
    grid-template-columns: 1fr;
  }
}


/* ETAPA 3.20.1 — API HTTPS / RESEND */
.communication-ok {
  color: #83d5ab !important;
}

.communication-pending {
  color: #ddb05c !important;
}

.communication-api-note {
  margin-top: 10px;
  padding: 9px 11px;
  border-left: 2px solid rgba(75,156,255,.30);
  background: rgba(75,156,255,.018);
  color: #7890a5;
  font-size: 8.7px;
  line-height: 1.5;
}

.communication-api-note code {
  color: #9dc8f5;
  font-size: 8.5px;
}


/* =========================================================
   ETAPA 3.20.2 — GESTÃO DO CLIENTE E DO ACESSO AO PORTAL
   ========================================================= */

.record-actions form {
  margin: 0;
}

.portal-management-grid {
  display: grid;
  grid-template-columns: minmax(0,.9fr) minmax(420px,1.1fr);
  gap: 34px;
  align-items: start;
}

.portal-management-actions {
  display: grid;
  gap: 14px;
}

.portal-email-edit-form {
  display: grid;
  gap: 9px;
  padding: 14px 16px;
  border: 1px solid rgba(139,164,189,.09);
  border-radius: 12px;
  background: rgba(255,255,255,.006);
}

.portal-email-edit-form > label:first-child {
  display: grid;
  gap: 6px;
  color: #8297ab;
  font-size: 9px;
}

.portal-email-edit-form input[type="email"] {
  width: 100%;
  min-height: 38px;
}

.portal-email-edit-form > button {
  width: fit-content;
  min-height: 32px;
}

.portal-email-edit-form > small {
  color: #71879c;
  font-size: 8.7px;
  line-height: 1.45;
}

.portal-checkbox-line {
  display: flex !important;
  align-items: center;
  gap: 8px !important;
  color: #8da1b4 !important;
  font-size: 9px !important;
}

.portal-checkbox-line input {
  width: 14px;
  height: 14px;
}

.portal-access-actions-expanded {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.portal-access-actions-expanded form {
  margin: 0;
}

.portal-access-actions-expanded button {
  min-height: 32px;
  font-size: 9px;
}

.portal-preservation-note {
  margin: 0;
  padding: 10px 12px;
  border-left: 2px solid rgba(75,156,255,.24);
  background: rgba(75,156,255,.014);
  color: #758ca1;
  font-size: 8.8px;
  line-height: 1.5;
}

.portal-preservation-note strong {
  color: #9db2c5;
}

.report-recipient-edit-form {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 8px;
  align-items: end;
  margin: 0 0 14px;
  padding: 12px 14px;
  border: 1px solid rgba(139,164,189,.09);
  border-radius: 10px;
  background: rgba(255,255,255,.006);
}

.report-recipient-edit-form label {
  display: grid;
  gap: 5px;
  color: #8398ac;
  font-size: 8.8px;
}

.report-recipient-edit-form input {
  width: 100%;
  min-height: 36px;
}

.report-recipient-edit-form button {
  min-height: 36px;
}

.report-recipient-edit-form small {
  grid-column: 1 / -1;
  color: #71879c;
  font-size: 8.5px;
}

@media(max-width:900px) {
  .portal-management-grid {
    grid-template-columns: 1fr;
  }
}

@media(max-width:620px) {
  .report-recipient-edit-form {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   V1-4.0 — ACESSIBILIDADE E CONSISTÊNCIA DO PRODUTO
   Escala confortável para uso profissional prolongado.
   ========================================================= */

:root {
  --brand-gold: #c6a15b;
  --brand-gold-light: #e0c486;
  --focus-ring: #8bc4ff;
}

html {
  scroll-behavior: smooth;
}

body {
  font-size: 15px;
  line-height: 1.55;
}

.skip-link {
  position: fixed;
  z-index: 9999;
  top: 12px;
  left: 12px;
  padding: 10px 14px;
  border-radius: 9px;
  background: #fff;
  color: #071321;
  font-weight: 800;
  transform: translateY(-180%);
  box-shadow: 0 8px 30px rgba(0,0,0,.28);
}

.skip-link:focus {
  transform: translateY(0);
}

.brand-mark,
.brand > span,
.gateway-brand > span,
.client-brand > span {
  background: linear-gradient(145deg, #9f7737, var(--brand-gold)) !important;
  color: #07111d !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.18), 0 8px 24px rgba(198,161,91,.10) !important;
}

.eyebrow {
  color: var(--brand-gold-light) !important;
  font-size: 10.5px !important;
  letter-spacing: .12em;
}

button,
.button-link,
a.button-link,
.primary-minimal,
.client-primary-action {
  min-height: 42px;
  font-size: 12.5px;
}

input,
select,
textarea {
  min-height: 44px;
  font-size: 14px;
}

label {
  font-size: 12.5px;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
  outline: 3px solid var(--focus-ring) !important;
  outline-offset: 3px !important;
}

.sidebar nav a {
  min-height: 44px;
}

.sidebar nav a .nav-copy {
  font-size: 13px !important;
  line-height: 1.25;
}

.sidebar-foot small,
.brand-copy small,
.top-global-search input,
.command-hero p,
.request-center-hero p,
.lawyer-list-page .page-head p {
  font-size: 12px !important;
}

.top-global-search input {
  min-height: 44px;
}

.minimal-page th,
.request-center-head,
.lawyer-list-page table th {
  font-size: 10.5px !important;
}

.minimal-page td,
.minimal-page td strong,
.lawyer-list-page table td,
.lawyer-list-page table td strong {
  font-size: 12.5px !important;
}

.minimal-page td small,
.request-center-queue > a small,
.request-center-queue > a time,
.record-strip small,
.dossier-summary-minimal p {
  font-size: 11.5px !important;
}

.minimal-page .status,
.minimal-page .badge,
.request-type-badge,
.report-admin-status {
  font-size: 10px !important;
}

.gateway-brand strong,
.client-brand strong {
  font-size: 12.5px !important;
}

.gateway-brand small,
.client-brand small,
.gateway-login > div:first-child > p,
.gateway-help,
.gateway-trust span,
.professional-entry,
.auth-back {
  font-size: 11.5px !important;
}

.gateway-copy > p {
  max-width: 610px;
  font-size: 14px !important;
  line-height: 1.7;
}

.gateway-login {
  padding: clamp(25px, 3.2vw, 36px);
}

.gateway-account-links {
  margin-top: 13px;
  font-size: 12.5px;
}

.client-topbar nav {
  align-items: center;
}

.client-topbar nav a,
.client-logout {
  min-height: 40px;
  padding: 9px 11px;
  border: 0;
  background: transparent;
  color: #96a9bb;
  font-size: 12px !important;
  font-weight: 650;
}

.client-topbar nav form {
  margin: 0;
}

.client-logout:hover {
  background: rgba(255,255,255,.025);
  color: #eef5fb;
}

.client-welcome p,
.client-case-hero p,
.client-case-list strong,
.client-document-list strong,
.client-timeline strong,
.client-account-card strong,
.client-case-summary strong,
.client-form-card > p,
.portal-access-row strong,
.portal-invite-box p {
  font-size: 12.5px !important;
}

.client-case-list span,
.client-case-list small,
.client-document-list small,
.client-timeline small,
.client-timeline time,
.client-note,
.client-empty,
.client-count small,
.client-section-head small,
.client-case-summary small,
.client-account-card small,
.portal-access-row small {
  font-size: 11px !important;
}

.gateway-footer,
.client-footer {
  font-size: 10.5px !important;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

@media(max-width: 760px) {
  .gateway-main {
    width: min(100% - 30px, 620px);
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 34px 0;
  }

  .gateway-copy h1 {
    font-size: clamp(40px, 12vw, 58px);
  }

  .client-topbar {
    align-items: flex-start;
    gap: 14px;
  }

  .client-topbar nav {
    flex-wrap: wrap;
    justify-content: flex-end;
  }
}

/* V1-4.1.0 — fluxo Cliente × Processo */
.client-create-layout {
  display: grid;
  gap: 24px;
  max-width: 900px;
}

.client-form-section {
  max-width: none !important;
}

.form-section-title {
  display: grid;
  gap: 4px;
  margin-bottom: 18px;
}

.form-section-title small {
  color: #d9ad55;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .12em;
}

.form-section-title h2 {
  margin: 0;
  font-size: 20px;
}

.form-section-title p {
  margin: 0;
  color: #8396aa;
  font-size: 11px;
  font-weight: 500;
}

.process-link-section {
  padding-top: 18px !important;
}

.process-link-note {
  display: grid;
  gap: 4px;
  margin-top: 12px;
  padding: 12px 14px;
  border: 1px solid var(--minimal-border);
  border-radius: 10px;
  color: #93a7ba;
  font-size: 10.5px;
}

.process-link-note strong {
  color: #e8f0f7;
  font-size: 11px;
}

.client-create-actions,
.inline-form-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.client-create-actions {
  padding-bottom: 18px;
}

.client-create-actions .primary {
  width: auto;
  min-width: 220px;
}

/* V1-4.2.0 — importação gratuita de carteira pública */
.monitor-back-link {
  display: inline-flex;
  margin: 0 0 14px;
  color: var(--g360-text-muted, #8297ab);
  font-size: 12px;
  text-decoration: none;
}

.monitor-back-link:hover {
  color: var(--g360-text-strong, #eef4fa);
}

.monitor-history-line {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.public-import-guide {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 22px 0;
  border-top: 1px solid rgba(139,164,189,.12);
  border-bottom: 1px solid rgba(139,164,189,.12);
}

.public-import-guide > div {
  min-height: 108px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 18px;
  border-right: 1px solid rgba(139,164,189,.10);
}

.public-import-guide > div:last-child { border-right: 0; }
.public-import-guide small { color: #77aee7; font-size: 9px; letter-spacing: .08em; }
.public-import-guide strong { color: #e5edf5; font-size: 13px; }
.public-import-guide span { color: #7890a7; font-size: 11px; line-height: 1.5; }

.public-import-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr);
  gap: 28px;
  align-items: start;
}

.portfolio-import-page .form-panel { max-width: none; }
.portfolio-import-page textarea {
  min-height: 320px;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.public-import-notes {
  padding: 20px 0 20px 24px;
  border-left: 1px solid rgba(139,164,189,.10);
}

.public-import-notes > small { color: #77aee7; font-size: 9px; letter-spacing: .08em; }
.public-import-notes h2 { margin: 5px 0 10px; font-size: 20px; }
.public-import-notes p,
.public-import-notes li { color: #8297ab; font-size: 11px; line-height: 1.65; }
.public-import-notes ul { padding-left: 18px; }
.public-import-notes > a { color: #77b7f7; font-size: 11px; text-decoration: none; }

.monitor-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 2px 2px;
  color: #70879d;
  font-size: 10px;
}

.monitor-pagination a { color: #77b7f7; text-decoration: none; }

@media(max-width: 820px) {
  .public-import-guide,
  .public-import-layout { grid-template-columns: 1fr; }
  .public-import-guide > div {
    border-right: 0;
    border-bottom: 1px solid rgba(139,164,189,.10);
  }
  .public-import-guide > div:last-child { border-bottom: 0; }
  .public-import-notes { padding-left: 0; border-left: 0; }
}


/* =========================================================
   V1-4.3.0 — INTERFACE DE GESTÃO DO ESCRITÓRIO
   Escala tipográfica equilibrada e foco na rotina jurídica.
   ========================================================= */

:root {
  --bg: #0a121b;
  --card: #111c28;
  --soft: #0e1823;
  --text: #e9eff5;
  --muted: #93a4b5;
  --line: #253545;
  --accent: #4b97e6;
  --g360-line-soft: rgba(145, 168, 190, .14);
}

html, body {
  font-size: 14px;
  line-height: 1.5;
}

h1 { font-size: 26px; line-height: 1.15; }
h2 { font-size: 17px; line-height: 1.25; }
h3 { font-size: 14px; }

.app-shell { grid-template-columns: 236px minmax(0, 1fr); }

.sidebar {
  padding: 12px 10px;
  background: #09131e;
  border-right-color: rgba(145, 168, 190, .13);
}

.brand { padding: 7px 7px 15px; }
.brand-mark, .brand > span { width: 40px; height: 40px; border-radius: 10px; }
.brand-copy strong { font-size: 13px; }
.brand-copy small { font-size: 11px !important; }

.sidebar nav { gap: 2px; padding: 8px 0 12px; }
.sidebar nav .nav-label {
  min-height: auto;
  margin-top: 7px;
  padding: 9px 10px 4px;
  color: #65798d;
  font-size: 9px;
}

.sidebar nav a {
  min-height: 41px;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 7px 9px;
  border-radius: 9px;
  color: #a6b5c4;
}

.sidebar nav a.is-active {
  color: #f2f6fa;
  background: rgba(75, 151, 230, .13);
  box-shadow: inset 2px 0 0 var(--brand-gold);
}

.nav-icon {
  width: 25px;
  height: 25px;
  display: grid;
  place-items: center;
  flex: 0 0 25px;
  border: 1px solid rgba(145, 168, 190, .10);
  border-radius: 7px;
  color: #91a8bd;
  font-size: 12px;
}

.sidebar nav a.is-active .nav-icon {
  color: var(--brand-gold-light);
  border-color: rgba(198, 161, 91, .24);
  background: rgba(198, 161, 91, .06);
}

.sidebar-foot {
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  padding: 10px 7px 2px;
}

.sidebar-site-link {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 5px;
  padding: 8px 9px;
  border: 1px solid rgba(198, 161, 91, .15);
  border-radius: 8px;
  color: #cbb786;
  font-size: 11px;
}

.sidebar-site-link:hover { background: rgba(198, 161, 91, .05); text-decoration: none; }
.sidebar-collapsed .sidebar-site-link { display: none; }

.topbar {
  min-height: 64px;
  height: 64px;
  padding: 0 24px;
  background: rgba(10, 18, 27, .96);
  border-bottom-color: rgba(145, 168, 190, .12);
}

.top-global-search { max-width: 580px; }
.top-global-search input { min-height: 40px; font-size: 13px !important; }
.content { width: 100%; max-width: 1440px; margin: 0 auto; padding: 25px 28px 56px; }

.minimal-page .page-head h1,
.minimal-page .record-hero h1,
.record-hero h1 { font-size: 26px; line-height: 1.15; }
.minimal-page .page-head p,
.record-hero p { font-size: 12.5px; }

.command-hero {
  align-items: center;
  margin-bottom: 20px;
}

.command-hero h1 {
  max-width: none;
  margin: 4px 0 5px;
  font-size: 27px;
  line-height: 1.12;
  letter-spacing: -.025em;
}

.command-hero p { font-size: 12.5px; }
.command-health { padding: 8px 11px; border-radius: 10px; }
.command-health small { font-size: 10px; letter-spacing: .04em; text-transform: none; }
.command-health strong { font-size: 12px; }

.metric-strip { margin-bottom: 10px; }
.metric-strip a { min-height: 98px; padding: 15px 20px; }
.metric-strip small { font-size: 10.5px; }
.metric-strip strong { margin: 4px 0 2px; font-size: 29px; }
.metric-strip span { font-size: 11px; }

.quick-facts { margin-bottom: 20px; gap: 8px; }
.quick-facts a { padding: 7px 11px; font-size: 11px; }
.quick-facts strong { font-size: 11.5px; }

.attention-line strong { font-size: 12px; }
.attention-line small { font-size: 11px; }

.command-grid { grid-template-columns: minmax(0, 1.6fr) minmax(330px, .8fr); gap: 18px; }
.command-panel { padding: 18px; border: 1px solid rgba(145, 168, 190, .12); border-radius: 12px; }
.command-panel-head small, .activity-head small { font-size: 10px; }
.command-panel-head h2, .activity-head h2 { font-size: 17px; }
.command-panel-head > a, .activity-head > a { font-size: 11.5px; }

.today-title strong { font-size: 12px; }
.today-title b { font-size: 10.5px; }
.today-row strong { font-size: 12.5px; }
.today-row small { font-size: 10.5px; }
.today-row time { font-size: 11px; }
.today-empty { min-height: 145px; }
.today-empty strong { font-size: 12px; }
.today-empty small { font-size: 10.5px; }

.office-shortcuts-panel { background: rgba(255, 255, 255, .009); }
.office-shortcuts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.office-shortcuts > a {
  min-height: 67px;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  padding: 10px;
  border: 1px solid rgba(145, 168, 190, .11);
  border-radius: 9px;
  color: var(--text);
  background: rgba(255, 255, 255, .008);
}
.office-shortcuts > a:hover { background: rgba(75, 151, 230, .07); border-color: rgba(75, 151, 230, .25); text-decoration: none; }
.office-shortcuts > a > span { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; background: rgba(75, 151, 230, .09); color: #82b8ed; }
.office-shortcuts > a div { min-width: 0; display: grid; }
.office-shortcuts strong { font-size: 11.5px; }
.office-shortcuts small { margin-top: 2px; font-size: 9.5px; }

.office-worker-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px 13px;
  margin-top: 12px;
  padding-top: 11px;
  border-top: 1px solid rgba(145, 168, 190, .10);
  color: #879bad;
  font-size: 10px;
}
.office-worker-line a { margin-left: auto; font-size: 10.5px; }

.activity-line { min-height: 58px; }
.activity-line strong { font-size: 12.5px; }
.activity-line small, .activity-line time { font-size: 10.5px; }
.activity-empty { font-size: 12px; }

.panel { border-radius: 10px; }
th { font-size: 10px; }
td { font-size: 12.5px; }
.status, .badge { font-size: 10px; }

.gateway-top-actions { display: flex; align-items: center; gap: 14px; }
.institutional-entry { color: #aebdca; font-size: 11.5px; }

@media (max-width: 1100px) {
  .command-grid { grid-template-columns: 1fr; }
}

@media (max-width: 980px) {
  .app-shell { display: block; }
  .sidebar { height: auto; }
  .sidebar nav .nav-label { display: none; }
  .sidebar nav a { min-width: max-content; }
  .content { padding: 22px 20px 48px; }
}

@media (max-width: 680px) {
  .content { padding: 18px 13px 42px; }
  .topbar { padding: 0 12px; }
  .command-hero h1,
  .minimal-page .page-head h1,
  .minimal-page .record-hero h1,
  .record-hero h1 { font-size: 23px; }
  .metric-strip a { min-height: 84px; }
  .office-shortcuts { grid-template-columns: 1fr; }
  .gateway-top-actions { gap: 8px; }
  .institutional-entry { display: none; }
}

.operational-metrics { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.operational-overview-grid .operational-block.is-wide { grid-column: 1 / -1; }

@media (max-width: 1100px) {
  .operational-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .operational-metrics { grid-template-columns: 1fr; }
}
