/* Ações da conta visíveis no cabeçalho do painel admin. */
.vn-header-actions {
    display: flex;
    flex: none;
    align-items: center;
    gap: .5rem;
    margin-inline-start: 1rem;
    color: #64748b;
}
.vn-header-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0;
    border: 0;
    border-radius: .65rem;
    background: transparent;
    color: inherit;
    cursor: pointer;
    text-decoration: none;
}
.vn-header-action svg { width: 1.3rem; height: 1.3rem; }
.vn-header-action:hover { background: #f1f5f9; color: #00234a; }
.vn-header-action:focus-visible { outline: 2px solid #007a60; outline-offset: 2px; }
.vn-header-action[aria-current="page"] { background: #e9fcf6; color: #007a60; }
.vn-header-themes {
    display: flex;
    gap: .125rem;
    padding: .125rem;
    border: 1px solid #e2e8f0;
    border-radius: .8rem;
    background: #f8fafc;
}
.vn-header-themes .vn-header-action[aria-pressed="true"] {
    background: #fff;
    color: #9a5700;
    box-shadow: 0 1px 3px #00234a1a, inset 0 0 0 1px #e2e8f0;
}
.vn-header-logout { margin: 0; }
.vn-header-action--logout:hover { color: #b91c1c; background: #fff1f2; }
.dark .vn-header-actions { color: #cbd5e1; }
.dark .vn-header-action:hover { background: #334155; color: #fff; }
.dark .vn-header-action:focus-visible { outline-color: #34d399; }
.dark .vn-header-action[aria-current="page"] { color: #6ee7b7; background: #064e3b; }
.dark .vn-header-themes { border-color: #475569; background: #1e293b; }
.dark .vn-header-themes .vn-header-action[aria-pressed="true"] { background: #475569; color: #fcd34d; box-shadow: inset 0 0 0 1px #64748b; }
.dark .vn-header-action--logout:hover { background: #4c0519; color: #fda4af; }
@media (max-width: 640px) {
    .fi-topbar:has(> .vn-header-actions) { flex-wrap: wrap; gap: .5rem; padding-block: .5rem; }
    .vn-header-actions { gap: .25rem; margin-inline-start: auto; }
    .vn-header-action { width: 2rem; height: 2rem; }
    .vn-header-action svg { width: 1.2rem; height: 1.2rem; }
}

/* Licenciado: Emitir Relatório e O Meu Plano no cabeçalho, ao lado da pesquisa. */
.vn-header-ctas { display: flex; flex: none; align-items: center; gap: .5rem; margin-inline-end: .75rem; }
.vn-header-cta {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    min-height: 2.5rem;
    padding: 0 .9rem;
    border: 1px solid #cbd5e1;
    border-radius: .65rem;
    background: #fff;
    color: #00234a;
    font-size: .875rem;
    font-weight: 600;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}
.vn-header-cta svg { width: 1.15rem; height: 1.15rem; flex: none; }
.vn-header-cta:hover { background: #f1f5f9; }
.vn-header-cta:focus-visible { outline: 2px solid #007a60; outline-offset: 2px; }
.vn-header-cta[aria-current="page"] { border-color: #007a60; background: #e9fcf6; }
.vn-header-cta--primary, .vn-header-cta--primary[aria-current="page"] { border-color: #01d7a4; background: #01d7a4; color: #00234a; box-shadow: 0 1px 3px #00234a33; }
.vn-header-cta--primary:hover { background: #00c394; }
.dark .vn-header-cta { border-color: #475569; background: #1e293b; color: #f1f5f9; }
.dark .vn-header-cta:hover { background: #334155; }
.dark .vn-header-cta[aria-current="page"] { border-color: #34d399; background: #064e3b; }
.dark .vn-header-cta--primary, .dark .vn-header-cta--primary[aria-current="page"] { border-color: #01d7a4; background: #01d7a4; color: #00234a; }
.dark .vn-header-cta--primary:hover { background: #00c394; }
@media (max-width: 1100px) {
    .vn-header-cta:not(.vn-header-cta--primary) { width: 2.5rem; padding: 0; justify-content: center; }
    .vn-header-cta:not(.vn-header-cta--primary) span { display: none; }
}
@media (max-width: 640px) {
    .vn-header-ctas { gap: .25rem; margin-inline-end: .25rem; }
    .vn-header-cta, .vn-header-cta:not(.vn-header-cta--primary) { width: 2.25rem; min-height: 2.25rem; padding: 0; justify-content: center; }
    .vn-header-cta span { display: none; }
}

/* Licenciado: menu lateral em três blocos, separados por uma linha. */
.fi-sidebar-nav:has([data-vn-licensee-nav]) .fi-sidebar-item:has(> a[href$="/admin/orders"]),
.fi-sidebar-nav:has([data-vn-licensee-nav]) .fi-sidebar-item:has(> a[href$="/admin/chat"]) { margin-top: .75rem; }
.fi-sidebar-nav:has([data-vn-licensee-nav]) .fi-sidebar-item:has(> a[href$="/admin/orders"])::before,
.fi-sidebar-nav:has([data-vn-licensee-nav]) .fi-sidebar-item:has(> a[href$="/admin/chat"])::before {
    content: "";
    display: block;
    height: 1px;
    margin: 0 .75rem .75rem;
    background: #e2e8f0;
}
.dark .fi-sidebar-nav:has([data-vn-licensee-nav]) .fi-sidebar-item:has(> a[href$="/admin/orders"])::before,
.dark .fi-sidebar-nav:has([data-vn-licensee-nav]) .fi-sidebar-item:has(> a[href$="/admin/chat"])::before { background: #475569; }
.fi-sidebar-nav:has([data-vn-licensee-nav]) .fi-sidebar-item:has(> a[href$="/admin/documentos"]) { margin-top: 0; }
