/* Paleta oficial. Os arquivos da marca mantêm proporções e cores originais. */
:root { --brand-navy:#1d314d; --brand-orange:#ee7926; --brand-orange-ink:#a64b0d; }
.vivian-brand { display:block; max-width:100%; height:auto; object-fit:contain; flex-shrink:0; }
.sidebar { background:var(--brand-navy); }
.sidebar-header { min-height:96px; padding:20px 16px; flex-shrink:0; }
.sidebar-brand { display:flex; width:100%; min-height:42px; justify-content:center; border-radius:6px; }
.sidebar-brand .brand-full { width:200px; }
.sidebar-brand .brand-small { display:none; width:34px; }
.sidebar-brand:focus-visible { outline:2px solid var(--brand-orange); outline-offset:7px; }
.nav-section { color:#acb9ca; }
.topbar-brand { display:none; border-radius:4px; }
.topbar-brand .vivian-brand { width:116px; }
.brand-on-dark { display:none; }
html[data-theme="dark"] .topbar-brand .brand-on-light { display:none; }
html[data-theme="dark"] .topbar-brand .brand-on-dark { display:block; }
.brand-print-header { display:none; }
.brand-print-logo { display:block; width:180px; max-width:100%; height:auto; margin:0 auto 12px; }
.btn-accent,html[data-theme="dark"] .btn-accent { color:var(--brand-navy); background:var(--brand-orange); }
.btn-accent:hover,html[data-theme="dark"] .btn-accent:hover { color:var(--brand-navy); background:#f59a59; }
.notification-badge:hover { color:var(--brand-navy); }
.dashboard-eyebrow { color:var(--brand-orange-ink); }
html[data-theme="dark"] .dashboard-eyebrow { color:var(--brand-orange); }
.flatpickr-day.today { background:var(--brand-orange)!important; color:var(--brand-navy)!important; }
.flatpickr-day.today:hover { background:#f59a59!important; color:var(--brand-navy)!important; }
a:hover { color:var(--brand-orange-ink); }
.topbar-brand:focus-visible { outline:2px solid var(--brand-orange); outline-offset:6px; }
@media screen and (min-width:1025px) {
    body.sidebar-collapsed .sidebar-brand .brand-full { display:none; }
    body.sidebar-collapsed .sidebar-brand .brand-small { display:block; }
}
@media screen and (max-width:1024px) {
    .topbar-brand { display:block; }
    .sidebar.open .sidebar-brand .brand-full { display:block; }
    .sidebar.open .sidebar-brand .brand-small { display:none; }
    .sidebar.open .sidebar-header { padding:20px 16px; }
}
@media screen and (max-width:360px) { .topbar-brand .vivian-brand { width:98px; } }
@media print {
    .brand-print-header { display:block; padding:0 0 12px; margin-bottom:16px; border-bottom:1px solid #000; }
    .brand-print-header .vivian-brand { width:48mm; margin:0 auto; }
    .printing-fallback .brand-print-header { display:none; }
}
@media (prefers-reduced-motion:reduce) {
    .topbar,.sidebar,.main-content,body { transition:none; }
}

.email-tags.form-control{display:flex;flex-wrap:nowrap;align-items:center;gap:5px;line-height:normal;padding:4px 8px;cursor:text;overflow-x:auto;scrollbar-width:none}
.email-tags::-webkit-scrollbar{display:none}
.email-tags:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px rgba(249,115,22,.12)}
.email-tag{display:inline-flex;flex:0 0 auto;align-items:center;gap:4px;max-width:75%;height:24px;padding:0 6px;border-radius:5px;background:var(--gray-100);color:var(--gray-800);font-size:.8rem;line-height:1.2}
.email-tag span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.email-tag button{flex:0 0 20px;width:20px;height:24px;min-height:0;border:0;background:transparent;color:inherit;font-size:18px;line-height:1;padding:0;cursor:pointer;border-radius:3px}
.email-tag button:focus-visible{outline:2px solid var(--primary);outline-offset:0}
.email-tags-input{flex:1 0 80px;width:80px;min-width:0;max-width:100%;height:100%;min-height:0;border:0!important;outline:0;background:transparent;color:inherit;font:inherit;line-height:normal;padding:0;box-shadow:none!important}
@media(max-width:640px){.email-tag{height:30px}.email-tag button{width:28px;flex-basis:28px;height:30px}.email-tags-input{font-size:16px}}
