:root{
  --primary:var(--red,#e31b23);
  --secondary:var(--blue,#172c64);
  --bg:#f4f7fb;
  --surface:#ffffff;
  --surface-2:#f8fafc;
  --text:#0f172a;
  --muted:#64748b;
  --border:#e2e8f0;
  --shadow:0 18px 45px rgba(15,23,42,.08);
  --radius:18px;
}
[data-theme="dark"]{
  --bg:var(--dark-bg,#0b1220);
  --surface:var(--dark-surface,#111827);
  --surface-2:var(--dark-surface-2,#0f172a);
  --text:var(--dark-text,#e5e7eb);
  --muted:var(--dark-muted,#94a3b8);
  --border:#243244;
  --shadow:0 18px 45px rgba(0,0,0,.25);
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;background:linear-gradient(135deg,var(--bg),#eef2ff);color:var(--text);min-height:100vh}
a{color:inherit;text-decoration:none}.page{max-width:1360px;margin:0 auto;padding:26px}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 26px;background:rgba(255,255,255,.86);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);box-shadow:0 8px 28px rgba(15,23,42,.06)}[data-theme="dark"] .topbar{background:color-mix(in srgb,var(--dark-topbar,#101827) 88%,transparent)}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;color:var(--secondary);font-size:18px}.brand img{height:42px;max-width:160px;object-fit:contain}.topbar nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.topbar nav a,.theme{border:1px solid transparent;border-radius:999px;padding:9px 13px;color:var(--muted);background:transparent;cursor:pointer;font-weight:650}.topbar nav a:hover,.theme:hover{color:var(--primary);background:rgba(227,27,35,.08)}.topbar .danger{color:#dc2626}.theme .moon{display:none}[data-theme="dark"] .theme .sun{display:none}[data-theme="dark"] .theme .moon{display:inline}
h1{font-size:30px;margin:0 0 20px;font-weight:850;letter-spacing:-.03em}h2{font-size:18px;margin:0 0 16px}.card,.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-card,.filter-card{margin-bottom:22px}.config-grid{align-items:stretch}.config-card{display:flex;flex-direction:column;gap:8px;min-height:132px;transition:.18s transform,.18s box-shadow}.config-card:hover{transform:translateY(-3px);box-shadow:0 22px 55px rgba(15,23,42,.12)}.config-card strong{font-size:18px;color:var(--secondary)}.config-card span{color:var(--muted);line-height:1.45}.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:13px;font-weight:750;color:var(--muted)}input,select,textarea{width:100%;border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:13px;padding:12px 13px;font-size:14px;outline:none}textarea{min-height:110px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(227,27,35,.12)}.align-end{align-self:end}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;padding:11px 16px;font-weight:800;background:linear-gradient(135deg,var(--btn-default-start,#B8121A),var(--btn-default-end,var(--primary)));color:var(--btn-text,#fff);cursor:pointer;box-shadow:0 10px 25px color-mix(in srgb,var(--btn-default-end,var(--primary)) 28%,transparent)}.btn:hover{filter:brightness(.98);transform:translateY(-1px)}.btn.gray{background:var(--btn-gray-bg,#f8fafc);color:var(--btn-gray-text,#0f172a);border:1px solid var(--border);box-shadow:none}.btn.blue{background:linear-gradient(135deg,var(--btn-blue-start,var(--secondary)),var(--btn-blue-end,#2563eb));color:var(--btn-text,#fff)}.btn.danger{background:linear-gradient(135deg,var(--btn-danger-start,#991b1b),var(--btn-danger-end,#ef4444));color:var(--btn-text,#fff) !important;min-width:190px;white-space:nowrap}.btn.sm{padding:7px 10px;font-size:12px}.alert{margin:0 0 18px;padding:14px 16px;border-radius:14px;background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.alert.ok{background:#ecfdf5;color:#065f46;border-color:#bbf7d0}.kpi{position:relative;overflow:hidden}.kpi:before{content:"";position:absolute;right:-35px;top:-35px;width:110px;height:110px;border-radius:50%;background:rgba(227,27,35,.10)}.kpi strong{font-size:34px;display:block;color:var(--secondary)}.kpi span{color:var(--muted);font-weight:750}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:auto}.table{width:100%;border-collapse:collapse;min-width:900px}.table th{background:var(--surface-2);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;text-align:left;padding:14px}.table td{padding:14px;border-top:1px solid var(--border);vertical-align:middle}.table tr:hover td{background:rgba(100,116,139,.06)}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:850;background:#e2e8f0;color:#334155}.badge.criado,.badge.pendente{background:#dbeafe;color:#1d4ed8}.badge.encaminhado,.badge.leitura_confirmada{background:#fef3c7;color:#92400e}.badge.finalizado,.badge.lido,.badge.recebido{background:#dcfce7;color:#166534}.badge.cancelado,.badge.private{background:#fee2e2;color:#991b1b}.responsavel{font-weight:850;color:var(--secondary)}.login-wrap{min-height:calc(100vh - 90px);display:grid;place-items:center}.login-card{width:min(440px,100%);padding:34px}.login-logo{display:block;max-height:90px;max-width:220px;margin:0 auto 18px;object-fit:contain}.login-card h1{text-align:center}.login-link{text-align:center;color:var(--muted)}.choice-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.choice-row.stacked{align-items:flex-start;flex-direction:column}.check-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:14px;padding:14px}.meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin-bottom:18px}.meta-grid p{margin:0;background:var(--surface-2);border:1px solid var(--border);border-radius:14px;padding:12px}.msg{white-space:pre-wrap;background:var(--surface-2);border:1px solid var(--border);border-radius:16px;padding:18px;line-height:1.55}.sep{border:0;border-top:1px solid var(--border);margin:24px 0}.subcard{background:var(--surface-2);border:1px solid var(--border);border-radius:16px;padding:18px;margin-top:18px}.event{border-left:4px solid var(--primary);background:var(--surface-2);border-radius:12px;padding:12px;margin:10px 0}.preview-logo{max-height:90px;max-width:240px}.preview-favicon{width:48px;height:48px;object-fit:contain}.swatch{display:inline-block;width:16px;height:16px;border-radius:999px;margin-right:8px;vertical-align:middle;border:1px solid var(--border)}.icon-pill{display:inline-flex;border-radius:999px;padding:5px 10px;background:var(--surface-2);border:1px solid var(--border)}.footer{text-align:center;color:var(--muted);padding:24px}.quick-create{margin-top:22px}
@media (max-width:900px){.topbar{position:relative;align-items:flex-start;flex-direction:column}.grid.two,.grid.three{grid-template-columns:1fr}.page{padding:18px}.table{min-width:760px}}

[data-theme="dark"] body{background:radial-gradient(circle at top left,color-mix(in srgb,var(--secondary) 35%,transparent),transparent 35%),radial-gradient(circle at top right,color-mix(in srgb,var(--primary) 16%,transparent),transparent 30%),linear-gradient(135deg,color-mix(in srgb,var(--dark-bg,#0b1220) 86%,#000),var(--dark-bg,#0b1220) 55%,var(--dark-topbar,#101827))}
[data-theme="dark"][data-gradient="medio"] body{background:radial-gradient(circle at top left,color-mix(in srgb,var(--secondary) 48%,transparent),transparent 38%),radial-gradient(circle at top right,color-mix(in srgb,var(--primary) 25%,transparent),transparent 34%),linear-gradient(135deg,color-mix(in srgb,var(--dark-bg,#0b1220) 75%,#000),var(--dark-bg,#0b1220) 55%,var(--dark-topbar,#101827))}
[data-theme="dark"][data-gradient="forte"] body{background:radial-gradient(circle at top left,color-mix(in srgb,var(--secondary) 62%,transparent),transparent 42%),radial-gradient(circle at top right,color-mix(in srgb,var(--primary) 34%,transparent),transparent 38%),linear-gradient(135deg,color-mix(in srgb,var(--dark-bg,#0b1220) 64%,#000),var(--dark-bg,#0b1220) 55%,var(--dark-topbar,#101827))}
[data-theme="dark"] .card,[data-theme="dark"] .kpi,[data-theme="dark"] .table-wrap{background:linear-gradient(180deg,var(--dark-surface,#111827),var(--dark-surface-2,#0f172a))}
.hint{display:block;margin-top:8px;color:var(--muted);font-size:12px;line-height:1.35}

/* Abas/filtros da tela de protocolos */
.toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px;flex-wrap:wrap}
.toolbar h1{margin-bottom:12px}
.tabs{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.tab{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;padding:9px 14px;font-weight:800;font-size:14px;box-shadow:0 8px 20px rgba(15,23,42,.05);transition:.16s ease}
.tab:hover{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 40%,var(--border));background:color-mix(in srgb,var(--primary) 8%,var(--surface));transform:translateY(-1px)}
.tab.active{color:var(--btn-text,#fff);background:linear-gradient(135deg,var(--btn-default-start,#B8121A),var(--btn-default-end,var(--primary)));border-color:transparent;box-shadow:0 12px 28px color-mix(in srgb,var(--btn-default-end,var(--primary)) 28%,transparent)}
.filter-card .actions{margin-top:0}
.filter-card input{flex:1;min-width:260px}
.filter-card .btn{min-width:110px}
[data-theme="dark"] .tab{background:var(--surface-2);box-shadow:none}
[data-theme="dark"] .tab.active{background:linear-gradient(135deg,var(--btn-default-start,#B8121A),var(--btn-default-end,var(--primary)));color:var(--btn-text,#fff)}
@media (max-width:900px){.toolbar{flex-direction:column}.tabs{width:100%}.tab{flex:1;min-width:145px}.filter-card .actions{flex-direction:column;align-items:stretch}.filter-card input,.filter-card .btn{width:100%}}

.user-menu{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.user-menu strong{margin-right:2px}
.user-menu a{border:1px solid var(--border);border-radius:999px;padding:8px 11px;background:var(--surface-2);color:var(--muted);font-weight:800}
.user-menu a:hover{color:var(--primary);background:rgba(227,27,35,.08)}
.user-menu a.danger{color:#dc2626}
.profile-head{display:flex;gap:16px;align-items:center}
.avatar-big{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;font-size:30px;font-weight:900;color:#fff;background:linear-gradient(135deg,var(--btn-default-start,#B8121A),var(--btn-default-end,var(--primary)));box-shadow:0 14px 32px color-mix(in srgb,var(--btn-default-end,var(--primary)) 25%,transparent)}
.btn,.tab.active,[data-theme="dark"] .tab.active{background:linear-gradient(135deg,var(--btn-default-start,#B8121A),var(--btn-default-end,var(--primary)));color:var(--btn-text,#fff)}
.btn:hover,.tab.active:hover{background:linear-gradient(135deg,#A51018,#D81F28)}

/* Painel de acompanhamento de e-mails */
.page-intro{margin:-10px 0 20px;color:var(--muted);line-height:1.5}.muted{color:var(--muted)}.compact{margin:4px 0 0}.email-kpis{margin-bottom:18px}.email-kpi-link{text-decoration:none;display:block;transition:.18s transform,.18s border-color,.18s box-shadow}.email-kpi-link:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.email-kpi-link.active{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent),var(--shadow)}.email-monitor-card{padding:18px;margin-bottom:18px}.email-monitor-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}.email-monitor-head h2{margin-bottom:0}.email-filter-form{display:grid;grid-template-columns:160px minmax(250px,1fr) auto auto;gap:8px;align-items:center;min-width:min(650px,100%)}.email-filter-form input,.email-filter-form select{margin:0}.email-alert-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 14px;padding:12px 14px;border-radius:13px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}.email-alert-strip form{margin-left:auto}.email-table-wrap{box-shadow:none;border-radius:14px}.email-table{min-width:1050px}.email-error-cell{max-width:320px;white-space:normal;overflow-wrap:anywhere;color:#991b1b;font-size:12px}.empty-state{text-align:center!important;padding:28px!important;color:var(--muted)}.email-admin-details,.email-config-details{margin-bottom:18px;padding:0;overflow:hidden}.email-admin-details>summary,.email-config-details>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;padding:18px 22px}.email-admin-details>summary::-webkit-details-marker,.email-config-details>summary::-webkit-details-marker,.email-template-details>summary::-webkit-details-marker{display:none}.email-admin-details>summary span:first-child,.email-config-details>summary span:first-child{display:flex;flex-direction:column;gap:4px}.email-admin-details>summary strong,.email-config-details>summary strong{font-size:17px;color:var(--secondary)}.email-admin-details>summary small,.email-config-details>summary small{color:var(--muted);font-weight:500}.details-hint{font-size:12px;font-weight:800;color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface));border-radius:999px;padding:7px 10px}.email-admin-details[open] .details-hint,.email-config-details[open] .details-hint{font-size:0}.email-admin-details[open] .details-hint:after,.email-config-details[open] .details-hint:after{content:'Fechar';font-size:12px}.details-body{border-top:1px solid var(--border);padding:22px}.email-admin-subcard{margin-top:0}.email-template-details{margin-top:20px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);overflow:hidden}.email-template-details>summary{list-style:none;cursor:pointer;padding:15px 16px;display:flex;flex-direction:column;gap:3px}.email-template-details>summary small{color:var(--muted);font-weight:500}.compact-details-body{padding:16px}.email-template-card{background:var(--surface);margin-top:12px}.email-template-card textarea{min-height:92px}
@media (max-width:900px){.email-monitor-head{flex-direction:column}.email-filter-form{grid-template-columns:1fr 1fr;width:100%;min-width:0}.email-filter-form input{grid-column:1/-1}.email-alert-strip form{margin-left:0}.email-kpis{grid-template-columns:1fr}}
@media (max-width:600px){.email-filter-form{grid-template-columns:1fr}.email-filter-form input{grid-column:auto}.email-monitor-card{padding:12px}.email-admin-details>summary,.email-config-details>summary{padding:16px}.details-body{padding:16px}}
