:root{
  --marca:#2412b8;--marca-escura:#160776;--marca-clara:#eeeaff;
  --texto:#1c2230;--texto-suave:#667085;--linha:#e4e7ec;--fundo:#f5f6fa;
  --cartao:#fff;--perigo:#c62828;--sucesso:#087a55;--sombra:0 14px 36px rgba(27,31,56,.08);
}
*{box-sizing:border-box}
html,body{height:100%}
body{height:100vh;overflow:hidden;grid-template-columns:250px minmax(0,1fr);background:var(--fundo);color:var(--texto);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
aside{height:100vh;overflow-y:auto;padding:24px 16px;background:linear-gradient(165deg,#181046 0%,#2412b8 65%,#3925d7 100%);color:#fff;border:0;box-shadow:10px 0 34px rgba(26,16,79,.15);scrollbar-width:thin}
.marca{padding:2px 8px 22px;border-bottom:1px solid rgba(255,255,255,.15);margin-bottom:14px}
.marca .logo{background:#fff;color:var(--marca);box-shadow:0 8px 20px rgba(0,0,0,.18)}
.marca strong,.marca small{color:#fff}
nav{gap:4px}
nav>button,.nav-grupo button{min-height:42px;border:1px solid transparent;border-radius:10px;background:transparent;color:rgba(255,255,255,.82);font-weight:600;text-align:left;padding:10px 12px;transition:.18s ease}
nav>button:hover,.nav-grupo button:hover{background:rgba(255,255,255,.1);color:#fff;transform:translateX(2px)}
nav>button.ativo,.nav-grupo button.ativo{background:#fff;color:var(--marca-escura);box-shadow:0 7px 20px rgba(0,0,0,.14)}
.nav-grupo{border:0;padding:12px 0 3px;margin:0}
.nav-grupo>small{display:block;padding:0 12px 7px;color:rgba(255,255,255,.55);font-size:.68rem;letter-spacing:.11em;font-weight:800}
.nav-administracao{margin-top:8px;border-top:1px solid rgba(255,255,255,.14)}
.nav-badge{background:#e52335;color:#fff;border:2px solid rgba(255,255,255,.9);box-shadow:0 2px 8px rgba(0,0,0,.25)}
.rodape{color:rgba(255,255,255,.55);border-color:rgba(255,255,255,.12)}
main{height:100vh;min-width:0;overflow-y:auto;overflow-x:hidden;padding:28px 34px 70px;scrollbar-gutter:stable}
main>header{position:sticky;top:-28px;z-index:30;margin:-28px -34px 0;padding:28px 34px 18px;background:rgba(245,246,250,.93);backdrop-filter:blur(14px);border-bottom:1px solid rgba(228,231,236,.8)}
header h1{font-size:1.75rem;letter-spacing:-.035em;color:#17142b}
header p,.saudacao{color:var(--texto-suave)}
.barra{position:sticky;top:86px;z-index:29;margin:0 -34px 24px;padding:14px 34px;background:rgba(245,246,250,.95);backdrop-filter:blur(14px);border-bottom:1px solid var(--linha);box-shadow:0 8px 20px rgba(27,31,56,.035)}
button,input,select,textarea{font:inherit}
button{min-height:38px;border:1px solid #d5d9e2;border-radius:9px;background:#fff;color:#303746;font-weight:650;padding:8px 13px;box-shadow:0 1px 2px rgba(16,24,40,.04);transition:border-color .15s,box-shadow .15s,transform .15s,background .15s}
button:hover:not(:disabled){border-color:#aaa2ed;box-shadow:0 5px 14px rgba(36,18,184,.1);transform:translateY(-1px)}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(36,18,184,.18);outline-offset:1px}
button.primario,.primario{background:var(--marca);border-color:var(--marca);color:#fff}
button.primario:hover{background:var(--marca-escura);border-color:var(--marca-escura)}
button.perigo,.perigo{color:#fff;background:var(--perigo);border-color:var(--perigo)}
button:disabled{opacity:.48;cursor:not-allowed}
input,select,textarea{max-width:100%;border:1px solid #d5d9e2;border-radius:9px;background:#fff;color:var(--texto);padding:9px 11px;box-shadow:0 1px 2px rgba(16,24,40,.03)}
textarea{resize:vertical}
.painel,.card,.cartao,.g-gerenciar,.g-drive,.nt-quadro article{background:var(--cartao);border:1px solid var(--linha);border-radius:16px;box-shadow:var(--sombra)}
.g-cabecalho{align-items:center;margin-bottom:22px;padding:4px 0}
.g-cabecalho h2{font-size:1.55rem;letter-spacing:-.03em;margin:.2rem 0}
.g-cabecalho p{color:var(--texto-suave);margin:0;max-width:720px}
.g-modal{border:0;border-radius:18px;box-shadow:0 30px 90px rgba(17,12,63,.28);padding:24px;max-height:88vh;overflow:auto}
.g-modal::backdrop,dialog::backdrop{background:rgba(14,12,35,.55);backdrop-filter:blur(3px)}
.g-fechar,.g-modal-topo>button:last-child{color:#c62828;border-color:#f0c6c6;font-size:1.15rem}
.g-fechar:hover,.g-modal-topo>button:last-child:hover{background:#fff1f1;border-color:#d33}
#conteudo,.g-clientes,.g-arquivos,.nt-quadro{min-width:0}
.nt-filtros{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:20px;padding:14px;background:#fff;border:1px solid var(--linha);border-radius:14px;box-shadow:0 5px 20px rgba(27,31,56,.04)}
.nt-status{display:flex;gap:8px;flex-wrap:wrap}
.nt-status button.ativo{background:var(--marca);border-color:var(--marca);color:#fff}
.nt-quadro{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.nt-quadro article{min-width:0;overflow:hidden;padding:18px;display:flex;flex-direction:column;gap:11px}
.nt-quadro article.urgente{border-top:4px solid #e52335}
.nt-topo{display:flex;gap:8px;justify-content:space-between;align-items:center}
.nt-topo span,.nt-topo em,.nt-detalhe-meta span{max-width:100%;padding:5px 8px;border-radius:999px;background:#f1efff;color:var(--marca-escura);font-size:.7rem;font-style:normal;font-weight:800;letter-spacing:.035em;overflow-wrap:anywhere}
.nt-topo em{background:#f3f4f6;color:#5c6472}
.nt-quadro h3{margin:0;font-size:1.04rem;line-height:1.35;overflow-wrap:anywhere;word-break:break-word}
.nt-descricao{margin:0;color:#4d5565;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.nt-descricao.resumida{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;white-space:normal}
.nt-ver-mais{align-self:flex-start;min-height:auto;padding:2px 0;border:0;background:transparent;color:var(--marca);box-shadow:none;font-weight:800}
.nt-ver-mais:hover:not(:disabled){border:0;box-shadow:none;transform:none;text-decoration:underline}
.nt-quadro article>small{color:var(--texto-suave);overflow-wrap:anywhere}
.nt-quadro article>label{margin-top:auto}
.nt-detalhe{min-width:min(620px,75vw);max-width:760px}
.nt-detalhe-meta{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}
.nt-detalhe-meta span.urgente{background:#ffebed;color:#b71928}
.nt-detalhe dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 18px}
.nt-detalhe dl div{padding:12px;background:#f7f7fb;border-radius:10px}
.nt-detalhe dt,.nt-detalhe-descricao>small{font-size:.68rem;color:var(--texto-suave);font-weight:800;letter-spacing:.08em}
.nt-detalhe dd{margin:4px 0 0;font-weight:700}
.nt-detalhe-descricao{padding:16px;border:1px solid var(--linha);border-radius:12px;background:#fff}
.nt-detalhe-descricao p{margin:9px 0 0;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.nt-skeleton{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.nt-skeleton i{display:block;height:220px;border-radius:16px;background:linear-gradient(90deg,#e9eaf0 20%,#f8f8fb 40%,#e9eaf0 60%);background-size:300% 100%;animation:ntPulso 1.35s infinite}
@keyframes ntPulso{to{background-position:-150% 0}}
.app-loading{position:fixed;z-index:99999;top:0;left:0;right:0;height:4px;overflow:hidden;background:rgba(36,18,184,.12);pointer-events:none}
.app-loading span{display:block;width:35%;height:100%;background:linear-gradient(90deg,#6d5cff,var(--marca),#00a6a6);transform:translateX(-120%);animation:carregando 1.05s ease-in-out infinite;transition:width .25s}
.app-loading.finalizando span{width:100%;animation:none;transform:none}
@keyframes carregando{50%{transform:translateX(160%)}100%{transform:translateX(330%)}}
.aviso,.estado{border-radius:11px;padding:12px 14px}
.login-card{border:1px solid rgba(255,255,255,.55);border-radius:22px;box-shadow:0 28px 90px rgba(20,12,83,.22)}
@media(max-width:1050px){body{grid-template-columns:220px minmax(0,1fr)}main{padding-left:22px;padding-right:22px}main>header{margin-left:-22px;margin-right:-22px;padding-left:22px;padding-right:22px}.barra{margin-left:-22px;margin-right:-22px;padding-left:22px;padding-right:22px}.nt-skeleton{grid-template-columns:1fr 1fr}}
@media(max-width:760px){body{grid-template-columns:190px minmax(0,1fr)}aside{padding:18px 10px}main{padding:18px 14px 50px}main>header{top:-18px;margin:-18px -14px 0;padding:18px 14px 14px}.barra{top:105px;margin:0 -14px 18px;padding:10px 14px;overflow-x:auto;flex-wrap:nowrap}.barra>*{flex:0 0 auto}.nt-filtros{align-items:stretch;flex-direction:column}.nt-quadro,.nt-skeleton{grid-template-columns:1fr}.nt-detalhe{min-width:0;width:100%}}
@media print{body{height:auto;overflow:visible;display:block;background:#fff}aside,.barra,.app-loading{display:none!important}main{height:auto;overflow:visible;padding:0}main>header{position:static;margin:0;padding:0;background:#fff}#conteudo{overflow:visible}}
.em-layout{display:grid;grid-template-columns:minmax(360px,1fr) minmax(320px,1fr);gap:24px;align-items:start}.em-pastas{display:flex;gap:8px;margin-bottom:12px}.em-leitura iframe{width:100%;height:60vh;border:0}.em-leitura pre{white-space:pre-wrap;font:inherit}.em-layout .g-lista em{display:block;max-width:46ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.g-lista time{font-size:.78rem;color:var(--texto-suave,#64748b)}@media(max-width:900px){.em-layout{grid-template-columns:1fr}}
.nt-atualizando{opacity:.72;transition:opacity .16s ease;pointer-events:none}
