:root{--azul:#1f3a5f;--azul2:#2c5282;--claro:#e8eef5;--borda:#c9d4e1;--texto:#1d2733;--cinza:#5a6878;
--verde:#2f855a;--vermelho:#c53030;--amarelo:#b7791f;--fundo:#f4f6f9}
*{box-sizing:border-box}
body{margin:0;font:14px/1.45 "Segoe UI",Arial,sans-serif;color:var(--texto);background:var(--fundo)}
a{color:var(--azul2)}
.topo{background:var(--azul);color:#fff;display:flex;align-items:center;gap:16px;padding:0 16px;height:52px}
.topo b{font-size:17px;letter-spacing:.5px}.topo .usuario{margin-left:auto;font-size:13px}
.topo a{color:#fff}
.layout{display:flex;min-height:calc(100vh - 52px)}
nav.menu{width:220px;background:#16283f;padding:12px 0;flex-shrink:0}
nav.menu a{display:block;color:#cfd9e6;text-decoration:none;padding:9px 18px;font-size:14px}
nav.menu a:hover,nav.menu a.ativo{background:#24405f;color:#fff}
nav.menu .sec{color:#7f93ab;font-size:11px;text-transform:uppercase;padding:14px 18px 4px;letter-spacing:.6px}
main{flex:1;padding:20px 26px;max-width:1300px}
h1{font-size:22px;font-weight:500;margin:0 0 14px;color:var(--azul)}
h2{font-size:16px;font-weight:600;margin:22px 0 8px;color:var(--azul)}
.cartoes{display:flex;gap:14px;flex-wrap:wrap}
.cartao{background:#fff;border:1px solid var(--borda);border-radius:6px;padding:14px 18px;min-width:170px}
.cartao .n{font-size:26px;font-weight:600;color:var(--azul)}.cartao .t{color:var(--cinza);font-size:12px}
table.lista{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--borda)}
table.lista th{background:#4a74a8;color:#fff;font-weight:500;text-align:left;padding:7px 9px;font-size:13px}
table.lista td{padding:7px 9px;border-top:1px solid #e3e9f0;vertical-align:top}
table.lista tr:hover td{background:#f7fafc}
.btn,button{display:inline-block;background:var(--azul2);color:#fff;border:0;border-radius:4px;padding:7px 13px;
font-size:13px;cursor:pointer;text-decoration:none;font-family:inherit}
.btn.verde{background:var(--verde)}.btn.vermelho{background:var(--vermelho)}.btn.cinza{background:#718096}
.btn.peq{padding:3px 8px;font-size:12px}
form.inline{display:inline}
input,select,textarea{font:inherit;padding:6px 8px;border:1px solid var(--borda);border-radius:4px;background:#fff}
.campos{background:#fff;border:1px solid var(--borda);border-radius:6px;padding:16px}
.campos p{margin:0 0 10px}.campos label{display:inline-block;min-width:160px;color:var(--cinza)}
.msg{padding:10px 14px;border-radius:4px;margin-bottom:12px}
.msg.success{background:#e6f4ea;color:#22543d}.msg.error{background:#fde8e8;color:#9b2c2c}.msg.warning{background:#fff6db}
.erro,.errorlist{color:var(--vermelho);font-size:13px}
.etq{display:inline-block;padding:1px 8px;border-radius:10px;font-size:12px;background:#e2e8f0}
.etq.agendado{background:#e2e8f0}.etq.chegou{background:#fefcbf}.etq.atendimento{background:#bee3f8}
.etq.concluido{background:#c6f6d5}.etq.faltou,.etq.cancelado,.etq.vencido{background:#fed7d7}
.etq.a-vencer{background:#fefcbf}.etq.em-dia{background:#c6f6d5}.etq.sem-ASO{background:#e2e8f0}
.dica{color:var(--cinza);font-size:12px}
.busca{display:flex;gap:8px;margin-bottom:14px}.busca input{flex:1;max-width:460px}
#sugestoes div{padding:6px 8px;cursor:pointer;border-bottom:1px solid #eee;background:#fff}
#sugestoes div:hover{background:var(--claro)}
@media print{.topo,nav.menu,.nao-imprimir{display:none!important}main{padding:0}body{background:#fff}}
@media (max-width:760px){nav.menu{display:none}main{padding:14px}}
