/* Estrutura do espaço de trabalho: cabeçalho, navegação e painéis. */
body.com-menu { --workspace-bg:#f0f3f7; --panel-head:#f5f7fa; --soft-border:#dce3e9; background:var(--workspace-bg); --ink-3:#65736c; }
.topo-workspace { height:72px; padding:0 24px 0 0; gap:24px; }
.topo-workspace .marca { width:252px; flex:0 0 252px; height:72px; padding:0 25px; border-right:1px solid var(--line); font-size:19px; }
.topo-workspace .marca small { display:block; font-size:9px; letter-spacing:.16em; font-weight:750; margin-top:1px; color:var(--ink-3); }
.topo-contexto { display:flex; flex-direction:column; gap:2px; min-width:120px; }
.topo-contexto>small { font-size:9px; font-weight:750; letter-spacing:.1em; color:var(--ink-3); }
.topo-contexto>strong { font-size:18px; letter-spacing:-.025em; font-weight:650; white-space:nowrap; }
.topo-workspace .topo-dir { gap:18px; }
.topo-buscar { display:flex; align-items:center; gap:8px; border:0; padding:8px 0; background:none; color:var(--ink-2); cursor:pointer; font:inherit; font-size:13px; font-weight:600; }
.topo-buscar svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; }
.topo-dropdown { position:relative; }
.topo-dropdown>summary { display:flex; align-items:center; gap:9px; list-style:none; cursor:pointer; border-radius:10px; }
.topo-dropdown>summary::-webkit-details-marker { display:none; }
.topo-novo>summary { background:#14654a; color:#fff; padding:10px 15px; font-size:13px; font-weight:650; box-shadow:0 3px 6px #0d493018; }
.topo-novo>summary:hover { background:#0f523c; }
.novo-mais { font-size:24px; line-height:20px; font-weight:400; }
.dropdown-seta { font-size:16px; line-height:1; opacity:.75; }
.topo-popover { position:absolute; right:0; top:calc(100% + 12px); width:240px; padding:8px; background:var(--surface); border:1px solid var(--line); border-radius:13px; box-shadow:0 15px 45px #0b241826; z-index:30; }
.topo-popover>small { display:block; font-size:10px; font-weight:700; letter-spacing:.07em; padding:8px 10px 11px; }
.topo-popover>a,.topo-popover button { display:flex; justify-content:space-between; width:100%; padding:11px; text-align:left; color:var(--ink); font:inherit; font-size:13px; border:0; border-radius:7px; background:transparent; cursor:pointer; text-decoration:none; }
.topo-popover>a:hover,.topo-popover button:hover { background:var(--surface-2); }
.topo-popover>a>span { color:var(--ink-3); }
.topo-popover form { border-top:1px solid var(--line); margin-top:5px; padding-top:5px; }
.topo-popover button { color:var(--bad); }
.topo-chat { position:relative; display:grid; place-items:center; color:var(--ink-2); width:38px; height:38px; border:1px solid var(--line); border-radius:11px; }
.topo-chat:hover { background:var(--surface-2); }
.topo-chat .nav-icon { color:currentColor; }
.topo-chat .chat-pill { position:absolute; top:-7px; right:-8px; font-size:10px; }
.topo-perfil { padding-left:17px; border-left:1px solid var(--line); }
.perfil-avatar { display:grid; place-items:center; width:36px; height:36px; flex:0 0 36px; border-radius:50%; background:#dfeee6; color:#1c5a3f; font-size:12px; font-weight:750; border:1px solid #c9ded2; }
.perfil-nome { display:flex; flex-direction:column; max-width:142px; gap:2px; }
.perfil-nome strong { font-size:12px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.perfil-nome small { font-size:10px; font-weight:500; }
.menu.menu-nova { top:72px; }
.com-menu .conteudo { padding:100px 28px 32px; max-width:1900px; }
.area-tabs { display:flex; align-items:stretch; gap:24px; background:var(--surface); border-bottom:1px solid var(--soft-border); margin:-28px -28px 26px; padding:0 28px; min-height:55px; overflow-x:auto; scrollbar-width:thin; }
.area-tabs a { display:flex; align-items:center; justify-content:center; border-bottom:3px solid transparent; padding:15px 4px 12px; color:var(--ink-2); font-size:13px; font-weight:600; white-space:nowrap; text-decoration:none; }
.area-tabs a:hover { color:var(--brand); }
.area-tabs a.selecionada { color:var(--brand); border-bottom-color:var(--brand); font-weight:750; }
.conteudo>.cab { align-items:center; margin-bottom:22px; }
.conteudo>.cab h1 { font-size:26px; letter-spacing:-.035em; line-height:1.3; }
.conteudo>.cab .sub { margin-top:6px; font-size:13px; }
.conteudo>.filtros { background:var(--surface); border:1px solid var(--soft-border); box-shadow:0 2px 5px #12291a03; border-radius:13px; padding:19px 20px; gap:14px; margin-bottom:20px; }
.conteudo>.filtros label { margin-bottom:7px; font-size:12px; }
.conteudo>.filtros input,.conteudo>.filtros select { border-color:var(--soft-border); background:var(--panel-head); border-radius:8px; min-height:42px; }
.conteudo>.filtros .btn { min-height:42px; }
.conteudo>.filtros .btn:not(.prim) { background:var(--brand-soft); border-color:transparent; color:var(--brand); }
.tabela-wrap { border:1px solid var(--soft-border); box-shadow:0 2px 6px #12291a04; border-radius:13px; }
th { background:var(--panel-head); color:var(--ink-2); font-size:11px; font-weight:700; letter-spacing:.035em; padding:15px 16px; }
td { padding:15px 16px; font-size:13px; border-bottom-color:var(--soft-border); }
.tabela-wrap td a { font-weight:600; }
.tabela-wrap td small { font-weight:400; font-size:11px; }
.tag { border-radius:6px; padding:4px 9px; font-size:11px; font-weight:650; }
.kpi { position:relative; border-color:var(--soft-border); padding:20px 22px; border-top:3px solid #527fa8; border-radius:12px; }
.kpi.ok { border-top-color:#2b9468; }
.kpi.bad { border-top-color:#d06b5c; }
.kpi .rot { font-size:12px; color:var(--ink-2); font-weight:600; }
.kpi .val { font-size:27px; letter-spacing:-.035em; margin:7px 0; }
.kpi .det { color:var(--ink-3); font-size:12px; }
.resumo-lista { margin:0 0 20px; }
.resumo-lista .kpi { box-shadow:none; }
.resumo-lista .val { font-size:23px; white-space:nowrap; }
.resumo-lista .resumo-nota { margin-top:9px; color:var(--ink-3); font-size:11px; }
.card { border-color:var(--soft-border); }
.card>h2 { font-size:18px; letter-spacing:-.02em; padding-bottom:12px; border-bottom:1px solid var(--line); }
.chat-root { height:calc(100dvh - 204px); }
.busca-paginas { width:min(620px,calc(100vw - 32px)); max-height:min(750px,85dvh); border:1px solid var(--line); border-radius:18px; padding:24px; color:var(--ink); background:var(--surface); box-shadow:0 25px 90px #071e1840; }
.busca-paginas::backdrop { background:#071e1866; backdrop-filter:blur(3px); }
.busca-paginas-cab { display:flex; justify-content:space-between; align-items:flex-start; gap:14px; }
.busca-paginas h2 { font-size:22px; letter-spacing:-.03em; margin-bottom:5px; }
.busca-paginas p { color:var(--ink-3); font-size:13px; }
.busca-paginas input { width:100%; margin:9px 0 14px; padding:13px 14px; border:1px solid var(--line); border-radius:10px; background:var(--surface-2); color:var(--ink); font:inherit; }
.busca-paginas-resultados { max-height:45dvh; overflow-y:auto; }
.busca-paginas-resultados a { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px; border-radius:8px; color:var(--ink); text-decoration:none; font-size:14px; }
.busca-paginas-resultados a:hover,.busca-paginas-resultados a:focus { background:var(--brand-soft); }
.busca-paginas-resultados small { font-size:11px; }
.busca-paginas-rodape { display:flex; justify-content:space-between; border-top:1px solid var(--line); margin-top:16px; padding-top:12px; color:var(--ink-3); font-size:11px; }
.busca-vazia { padding:22px 12px; }
@media(prefers-color-scheme:dark) {
  body.com-menu { --workspace-bg:#111b18; --panel-head:#202d27; --soft-border:#33453c; --ink-3:#a6b8ad; }
}
@media(max-width:1280px) {
  .topo-workspace { gap:18px; padding-right:18px; }
  .topo-workspace .topo-dir { gap:13px; }
  .perfil-nome { display:none; }
  .topo-contexto>strong { font-size:16px; }
}
@media(max-width:1050px) {
  .topo-buscar span,.topo-pendencias { display:none; }
  .topo-workspace { gap:16px; }
  .topo-novo>summary { padding:10px 12px; }
  .topo-contexto { min-width:0; }
  .topo-contexto small { font-size:8px; }
  .area-tabs { gap:18px; }
}
@media(max-width:860px) {
  .topo-workspace { height:64px; gap:12px; padding:0 14px; }
  .topo-workspace .marca { flex:initial; width:auto; height:64px; padding:0; border:0; font-size:15px; }
  .topo-workspace .marca small,.topo-contexto { display:none; }
  .topo-workspace .topo-dir { gap:11px; }
  .topo-novo>summary>span:not(.novo-mais) { display:none; }
  .topo-novo>summary { width:34px; height:34px; padding:0; justify-content:center; }
  .topo-perfil { padding-left:0; border:0; }
  .topo-perfil .dropdown-seta { display:none; }
  .topo-chat { width:34px; height:34px; }
  .perfil-avatar { width:32px; height:32px; flex-basis:32px; }
  .menu.menu-nova { top:64px; }
  .com-menu .conteudo { padding:86px 16px 28px; }
  .area-tabs { margin:-22px -16px 22px; padding:0 16px; min-height:50px; gap:20px; }
  .area-tabs a { font-size:12px; padding:13px 2px 10px; }
  .conteudo>.cab h1 { font-size:23px; }
  .conteudo>.filtros { padding:15px; }
  .chat-root { height:calc(100dvh - 185px); }
}
@media(max-width:680px) { .chat-root { height:auto; } }
@media(max-width:420px) {
  .topo-workspace .marca>span:last-child { display:none; }
  .topo-workspace .topo-dir { gap:13px; }
  .topo-workspace .topo-novo .topo-popover { right:-95px; }
  .resumo-lista .val { font-size:21px; }
}
