/* SecretariadoVirtual — tokens e base (espelha as variáveis do Figma) */
:root{
  --indigo:#4F46E5; --indigo-light:#8C94FF; --indigo-soft:#EDF0FF;
  --navy:#0F172A; --navy-card:#19243C; --navy-line:#263248; --navy-deep:#0B1120;
  --slate:#475569; --muted:#94A3B8; --side-text:#9EABC2;
  --bg-soft:#F8FAFC; --bg-page:#FFFFFF; --border:#E2E8F0;
  --green:#10B981; --green-soft:#DEF7EC;
  --amber:#F59E0B; --amber-soft:#FFF3D9;
  --red:#EF4444; --red-soft:#FFEBEB;
  --radius:12px; --radius-lg:16px;
  --shadow:0 8px 24px rgba(15,23,42,.08);
  --shadow-sm:0 4px 14px rgba(15,23,42,.06);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,-apple-system,sans-serif;color:var(--navy);background:var(--bg-page);line-height:1.5;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none}
.container{max-width:1280px;margin:0 auto;padding:0 24px}

/* Botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:15px;padding:14px 28px;border-radius:10px;transition:.15s}
.btn-primary{background:var(--indigo);color:#fff}
.btn-primary:hover{background:#4238d6}
.btn-secondary{background:#fff;color:var(--navy);border:1.5px solid var(--border)}
.btn-secondary:hover{border-color:var(--muted)}
.btn-soft{background:var(--indigo-soft);color:var(--indigo)}
.btn-soft:hover{background:#e0e5ff}
.btn-white{background:#fff;color:var(--indigo)}
.btn-green{background:var(--green);color:#fff}
.btn-sm{padding:8px 14px;font-size:13px;border-radius:8px}
.btn-block{width:100%}

/* Badges */
.badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:99px;font-size:11px;font-weight:600;white-space:nowrap}
.badge-success{background:var(--green-soft);color:var(--green)}
.badge-warning{background:var(--amber-soft);color:#8c6606}
.badge-danger{background:var(--red-soft);color:var(--red)}
.badge-info{background:var(--indigo-soft);color:var(--indigo)}
.badge-neutral{background:#eef1f6;color:var(--slate)}

/* Card */
.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);}
.card-shadow{border:0;box-shadow:var(--shadow-sm)}

/* Tipografia utilitária */
.kicker{font-size:14px;font-weight:600;color:var(--indigo);letter-spacing:.06em;text-transform:uppercase}
.muted{color:var(--muted)}
.slate{color:var(--slate)}
.center{text-align:center}
