/**
 * Gestor — identidade visual Grupo Pulse (laranja #eb4910 / #d43f00)
 * Login + área autenticada
 *
 * Densidade global ~80%: equivalente ao zoom do browser a 80% com zoom em 100%.
 * Tipografia/rem (Bulma, Tailwind, pulse-ui) escala via html; estrutura fixa via vars.
 */
html {
    font-size: 80%;
}

:root {
    --pulse-orange: #eb4910;
    --pulse-orange-dark: #d43f00;
    --pulse-orange-soft: #fff5f0;
    --pulse-text: #1a1a1a;
    --pulse-muted: #6b7280;
    --pulse-bg: #f4f5f7;
    --pulse-card: #ffffff;
    --pulse-border: #e5e7eb;
    --sidebar-width: 240px;
    --sidebar-width-collapsed: 58px;
    --sidebar-current-width: var(--sidebar-width);
    --topbar-h: 45px;
}

.pulse-login-page {
    margin: 0;
    min-height: 100vh;
    font-family: 'Inter', system-ui, sans-serif;
    -webkit-font-smoothing: antialiased;
    color: var(--pulse-text);
}

.pulse-login {
    display: grid;
    min-height: 100vh;
    grid-template-columns: 1fr;
}

@media (min-width: 900px) {
    .pulse-login {
        grid-template-columns: minmax(320px, 1fr) minmax(400px, 520px);
    }
}

.pulse-login__brand {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 2.5rem 2rem;
    /* Pulso de gradiente (gestor2): tons claros ↔ laranja; nunca branco puro para partículas brancas */
    background-color: #ffedd5;
    background-image: linear-gradient(
        130deg,
        #fff7ed 0%,
        #ffedd5 14%,
        #fed7aa 28%,
        #fdba74 42%,
        #fb923c 56%,
        #f97316 70%,
        #ea580c 84%,
        #c2410c 100%
    );
    background-size: 400% 400%;
    animation: pulseGradient 14s ease-in-out infinite;
    position: relative;
    overflow: hidden;
}

#particles-js {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
    pointer-events: none;
}

#particles-js canvas {
    pointer-events: auto;
}

@keyframes pulseGradient {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

.pulse-login__brand::after {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 85% 60% at 50% 0%, rgba(255, 255, 255, 0.12) 0%, transparent 58%);
    pointer-events: none;
    z-index: 0;
}

.pulse-login__brand-inner {
    position: relative;
    z-index: 2;
    max-width: 420px;
    margin: 0 auto;
}

.pulse-login__logo {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.25), rgba(255, 255, 255, 0.08));
    border: 1px solid rgba(255, 255, 255, 0.35);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin-bottom: 1.25rem;
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.2);
}

.pulse-login__brand-header {
    margin-bottom: 1rem;
}

.pulse-login__pulseti-logo {
    display: block;
    width: 48px;
    height: 48px;
    object-fit: contain;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.12);
    padding: 6px;
    box-sizing: border-box;
    margin-bottom: 1rem;
    filter: drop-shadow(0 2px 8px rgba(0,0,0,0.2));
}

.pulse-login__title-product {
    font-size: clamp(1.75rem, 3vw, 2.25rem);
    font-weight: 800;
    margin: 0 0 0.5rem 0;
    letter-spacing: -0.03em;
    color: #ffffff;
    text-shadow: 0 2px 20px rgba(0, 0, 0, 0.25);
    line-height: 1.15;
}

.pulse-login__title-group {
    font-weight: 700;
    opacity: 0.95;
}

.pulse-login__brand p {
    margin: 0;
    color: rgba(255, 255, 255, 0.92);
    font-size: 1.05rem;
    line-height: 1.55;
    text-shadow: 0 1px 8px rgba(0, 0, 0, 0.15);
}

.pulse-login__brand p strong {
    color: #fff;
    font-weight: 700;
}

.pulse-login__form-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem 1.5rem 3rem;
    background: var(--pulse-bg);
}

.pulse-login__card {
    width: 100%;
    max-width: 400px;
    background: rgba(255, 255, 255, 0.98);
    border-radius: 20px;
    padding: 2rem 1.75rem;
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(0, 0, 0, 0.04);
    position: relative;
    overflow: hidden;
}

.pulse-login__card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--pulse-orange), var(--pulse-orange-dark), var(--pulse-orange));
    background-size: 200% 100%;
    animation: pulseShimmer 3s ease-in-out infinite;
}

@keyframes pulseShimmer {
    0% { background-position: -100% 0; }
    100% { background-position: 200% 0; }
}

.pulse-login__card h2 {
    margin: 0 0 0.25rem 0;
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--pulse-text);
}

.pulse-login__card .pulse-login__lead {
    margin: 0 0 1.5rem 0;
    font-size: 0.9rem;
    color: var(--pulse-muted);
}

.pulse-field { margin-bottom: 1.15rem; }

.pulse-label {
    display: block;
    font-weight: 600;
    font-size: 0.875rem;
    color: #374151;
    margin-bottom: 0.45rem;
}

.pulse-input-wrap { position: relative; }

.pulse-input-wrap .pulse-input-icon {
    position: absolute;
    left: 0.9rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--pulse-orange);
    pointer-events: none;
    z-index: 1;
}

.pulse-input {
    width: 100%;
    border: 2px solid var(--pulse-border);
    border-radius: 12px;
    padding: 0.85rem 1rem 0.85rem 2.65rem;
    font-size: 1rem;
    font-family: inherit;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.pulse-input:focus {
    outline: none;
    border-color: var(--pulse-orange);
    box-shadow: 0 0 0 4px rgba(235, 73, 16, 0.12);
}

.pulse-btn-primary {
    width: 100%;
    margin-top: 0.5rem;
    border: none;
    border-radius: 12px;
    padding: 0.95rem 1.25rem;
    font-size: 0.95rem;
    font-weight: 700;
    font-family: inherit;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #fff;
    cursor: pointer;
    background: linear-gradient(135deg, var(--pulse-orange), var(--pulse-orange-dark));
    box-shadow: 0 4px 16px rgba(235, 73, 16, 0.35);
    transition: transform 0.15s, box-shadow 0.15s;
}

.pulse-btn-primary:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 24px rgba(235, 73, 16, 0.42);
}

.pulse-alert {
    border-radius: 12px;
    padding: 0.9rem 1rem;
    margin-bottom: 1.25rem;
    background: linear-gradient(135deg, #fee2e2, #fecaca);
    border-left: 4px solid #dc2626;
    color: #991b1b;
    font-size: 0.9rem;
}

.pulse-login__footer {
    text-align: center;
    margin-top: 1.5rem;
    padding-top: 1rem;
    border-top: 1px solid var(--pulse-border);
    font-size: 0.75rem;
    color: #9ca3af;
}

.pulse-app {
    margin: 0;
    min-height: 100vh;
    font-family: 'Inter', system-ui, sans-serif;
    background: var(--pulse-bg);
    color: var(--pulse-text);
    -webkit-font-smoothing: antialiased;
}

.pulse-app__shell {
    display: flex;
    align-items: stretch;
    min-height: 100vh;
}

.pulse-sidebar {
    width: var(--sidebar-current-width);
    flex-shrink: 0;
    transition: width 0.22s ease;
    align-self: stretch;
    min-height: 100vh;
    background: linear-gradient(180deg, #ea580c 0%, #c2410c 48%, #9a3412 100%);
    background-attachment: local;
    color: #fff;
    padding: 1.25rem 0.85rem;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    overflow-y: auto;
    transition: transform 0.25s ease;
    z-index: 200;
    text-rendering: optimizeLegibility;
    -webkit-overflow-scrolling: touch;
}

@media (max-width: 768px) {
    .pulse-sidebar {
        position: fixed;
        left: 0;
        top: 0;
        bottom: 0;
        transform: translateX(-100%);
        box-shadow: 4px 0 24px rgba(0,0,0,0.15);
    }
    .pulse-sidebar.is-open {
        transform: translateX(0);
    }
}

.pulse-sidebar__brand {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.65rem;
    padding: 0.5rem 0.75rem 1.25rem;
    border-bottom: 1px solid rgba(255,255,255,0.15);
    margin-bottom: 0.75rem;
}

.pulse-sidebar__brand-img {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    object-fit: contain;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.1);
    padding: 5px;
    box-sizing: border-box;
}

.pulse-sidebar__brand-meta {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    line-height: 1.15;
    min-width: 0;
}

.pulse-sidebar__brand-product {
    font-weight: 800;
    font-size: 1.12rem;
    letter-spacing: -0.02em;
    color: #fff;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
}

.pulse-sidebar__brand-group {
    font-size: 0.8rem;
    font-weight: 700;
    color: #fffbeb;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

.pulse-sidebar__brand-link {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.65rem;
    text-decoration: none;
    color: inherit;
    border-radius: 10px;
    margin: -0.25rem;
    padding: 0.25rem;
    transition: background 0.15s ease;
}

.pulse-sidebar__brand-link:hover {
    background: rgba(255, 255, 255, 0.08);
}

.pulse-sidebar__hint {
    border-left: 3px solid rgba(235, 73, 16, 0.85);
    margin: 0 0.5rem 0.75rem;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 0 6px 6px 0;
    line-height: 1.35;
}

.pulse-nav-section {
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: 800;
    color: #fffbeb;
    padding: 0.85rem 0.75rem 0.4rem;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
    opacity: 1;
}

.pulse-nav-link {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.78rem 0.85rem;
    border-radius: 10px;
    color: #ffffff;
    text-decoration: none;
    font-weight: 700;
    font-size: 0.95rem;
    line-height: 1.35;
    margin-bottom: 3px;
    transition: background 0.15s, color 0.15s;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
    -webkit-font-smoothing: antialiased;
}

.pulse-nav-link > i {
    width: 1.35rem;
    flex-shrink: 0;
    text-align: center;
    font-size: 1.05rem;
    opacity: 1;
    filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.4));
}

.pulse-nav-link:hover {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
}

.pulse-nav-link.is-active {
    background: rgba(0, 0, 0, 0.32);
    font-weight: 800;
    color: #fff;
    box-shadow: inset 3px 0 0 #fffbeb;
}

.pulse-nav-link.is-disabled {
    opacity: 1;
    color: rgba(255, 255, 255, 0.78);
    font-weight: 600;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
}

.pulse-nav-link.is-disabled > i {
    opacity: 0.88;
    filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.3));
}

/* Sidebar — grupos com dropdown */
.pulse-sidebar__nav {
    display: flex;
    flex-direction: column;
    flex: 0 0 auto;
    overflow: visible;
    padding-bottom: 1rem;
}

.pulse-nav-group {
    margin-bottom: 4px;
}

.pulse-nav-group__toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 0.5rem;
    padding: 0.72rem 0.85rem;
    border: none;
    border-radius: 10px;
    background: transparent;
    color: #fff;
    font-weight: 700;
    font-size: 0.95rem;
    line-height: 1.35;
    cursor: pointer;
    text-align: left;
    transition: background 0.15s ease;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
    font-family: inherit;
}

.pulse-nav-group__toggle:hover,
.pulse-nav-group.is-open > .pulse-nav-group__toggle {
    background: rgba(255, 255, 255, 0.14);
}

.pulse-nav-group__label {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-width: 0;
}

.pulse-nav-group__label > i {
    width: 1.35rem;
    flex-shrink: 0;
    text-align: center;
    font-size: 1.05rem;
}

.pulse-nav-group__chevron {
    font-size: 0.7rem;
    opacity: 0.9;
    transition: transform 0.2s ease;
    flex-shrink: 0;
}

.pulse-nav-group.is-open .pulse-nav-group__chevron {
    transform: rotate(180deg);
}

.pulse-nav-submenu {
    display: none;
    flex-direction: column;
    gap: 2px;
    padding: 0.15rem 0 0.35rem 0.35rem;
    margin-left: 0.5rem;
    border-left: 2px solid rgba(255, 255, 255, 0.22);
}

.pulse-nav-group.is-open .pulse-nav-submenu {
    display: flex;
}

.pulse-nav-sublink {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.58rem 0.75rem 0.58rem 0.85rem;
    border-radius: 8px;
    color: rgba(255, 255, 255, 0.95);
    text-decoration: none;
    font-weight: 600;
    font-size: 0.88rem;
    line-height: 1.3;
    transition: background 0.15s, color 0.15s;
}

.pulse-nav-sublink > i {
    width: 1.1rem;
    flex-shrink: 0;
    text-align: center;
    font-size: 0.92rem;
    opacity: 0.95;
}

.pulse-nav-sublink:hover {
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
}

.pulse-nav-sublink.is-active {
    background: rgba(0, 0, 0, 0.28);
    color: #fff;
    font-weight: 700;
    box-shadow: inset 2px 0 0 #fffbeb;
}

.pulse-nav-sublink.is-disabled {
    opacity: 0.75;
    cursor: not-allowed;
    font-weight: 600;
}

.pulse-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.35);
    z-index: 150;
}

@media (max-width: 768px) {
    .pulse-overlay.is-visible {
        display: block;
    }
}

.pulse-main {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
    position: relative;
}

/* Menu lateral recolhido (desktop) — mais espaço na área principal */
@media (min-width: 769px) {
    .pulse-app__shell.is-sidebar-collapsed {
        --sidebar-current-width: var(--sidebar-width-collapsed);
    }

    .pulse-app__shell.is-sidebar-collapsed .pulse-sidebar {
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }

    .pulse-app__shell.is-sidebar-collapsed .pulse-sidebar__brand-meta {
        display: none;
    }

    .pulse-app__shell.is-sidebar-collapsed .pulse-sidebar__brand {
        justify-content: center;
        padding-left: 0.35rem;
        padding-right: 0.35rem;
    }

    .pulse-app__shell.is-sidebar-collapsed .pulse-nav-group__chevron,
    .pulse-app__shell.is-sidebar-collapsed .pulse-nav-submenu {
        display: none !important;
    }

    .pulse-app__shell.is-sidebar-collapsed .pulse-nav-group__label > span:last-child {
        display: none;
    }

    .pulse-app__shell.is-sidebar-collapsed .pulse-nav-group__toggle {
        justify-content: center;
        padding-left: 0.55rem;
        padding-right: 0.55rem;
    }

    .pulse-app__shell.is-sidebar-collapsed .pulse-nav-sublink > span {
        display: none;
    }

    .pulse-app__shell.is-sidebar-collapsed .pulse-nav-sublink {
        justify-content: center;
        padding-left: 0.55rem;
        padding-right: 0.55rem;
    }

    .pulse-app__shell.is-sidebar-collapsed .pulse-nav-link {
        justify-content: center;
        font-size: 0;
        padding-left: 0.55rem;
        padding-right: 0.55rem;
    }

    .pulse-app__shell.is-sidebar-collapsed .pulse-nav-link > i {
        font-size: 1.05rem;
    }
}

.pulse-sidebar-collapse-btn {
    display: none;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border: 1px solid var(--pulse-border);
    border-radius: 0.5rem;
    background: var(--pulse-card);
    color: var(--pulse-muted);
    cursor: pointer;
    flex-shrink: 0;
    transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.pulse-sidebar-collapse-btn:hover {
    color: var(--pulse-orange);
    border-color: var(--pulse-orange);
    background: var(--pulse-orange-soft);
}

@media (min-width: 769px) {
    .pulse-sidebar-collapse-btn {
        display: inline-flex;
    }
}

/* Loading global na área principal (ControlKan, comercial, etc.) */
.pulse-page-loading {
    position: absolute;
    z-index: 9000;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.72);
    backdrop-filter: blur(2px);
    pointer-events: auto;
}

.pulse-page-loading[hidden] {
    display: none !important;
}

.pulse-page-loading__box {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
    padding: 1.5rem 2rem;
    border-radius: 0.75rem;
    background: var(--pulse-card, #fff);
    border: 1px solid var(--pulse-border, #e2e8f0);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
    color: #475569;
    font-size: 0.875rem;
    font-weight: 500;
}

.pulse-page-loading__box .fa-spinner {
    color: var(--pulse-orange, #eb4910);
}

html.pulse-loading-active {
    overflow: hidden;
}


html.dark .pulse-page-loading {
    background: rgba(15, 23, 42, 0.75);
}

html.dark .pulse-page-loading__box {
    background: #1e293b;
    border-color: #334155;
    color: #cbd5e1;
}

.pulse-topbar {
    height: var(--topbar-h);
    min-height: var(--topbar-h);
    background: var(--pulse-card);
    border-bottom: 1px solid var(--pulse-border);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0 0.75rem 0 0.75rem;
    gap: 0.75rem;
    position: sticky;
    top: 0;
    z-index: 100;
}

.pulse-topbar__spacer {
    flex: 1 1 auto;
    min-width: 0;
}

.pulse-topbar__dropdown-form {
    margin: 0;
    padding: 0;
}

.pulse-topbar__dropdown-item--current {
    font-weight: 600;
    color: var(--pulse-orange-dark, #c2410c);
    cursor: default;
    opacity: 1;
}

.pulse-topbar__dropdown-item--current:hover {
    background: transparent;
    color: var(--pulse-orange-dark, #c2410c);
}

.pulse-topbar__dropdown-hint {
    font-size: 0.75rem;
    color: #6b7280;
    padding: 0.15rem 0.85rem 0.35rem;
    line-height: 1.35;
}

.pulse-topbar__account {
    position: relative;
    flex-shrink: 0;
    z-index: 120;
}

.pulse-topbar__trigger {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    max-width: min(100vw - 5rem, 17rem);
    padding: 0.35rem 0.5rem 0.35rem 0.35rem;
    margin: 0;
    border: 1px solid transparent;
    border-radius: 12px;
    background: transparent;
    cursor: pointer;
    font: inherit;
    color: inherit;
    text-align: left;
    transition: background 0.15s, border-color 0.15s;
}

.pulse-topbar__trigger:hover {
    background: var(--pulse-orange-soft);
    border-color: #fed7aa;
}

.pulse-topbar__account.is-open .pulse-topbar__trigger {
    background: #fff7ed;
    border-color: #fdba74;
}

.pulse-topbar__chev {
    font-size: 0.65rem;
    color: var(--pulse-muted);
    margin-left: 0.15rem;
    transition: transform 0.2s ease;
    flex-shrink: 0;
}

.pulse-topbar__account.is-open .pulse-topbar__chev {
    transform: rotate(180deg);
}

.pulse-topbar__dropdown {
    position: absolute;
    right: 0;
    top: calc(100% + 6px);
    min-width: 240px;
    max-width: min(100vw - 1.5rem, 24rem);
    max-height: calc(100vh - var(--topbar-h) - 1rem);
    max-height: calc(100dvh - var(--topbar-h) - 1rem);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 0.35rem;
    background: #fff;
    border: 1px solid var(--pulse-border);
    border-radius: 12px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.04);
}

.pulse-topbar__dropdown[hidden] {
    display: none !important;
}

.pulse-topbar__dropdown-item {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.65rem 0.85rem;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #374151;
    text-decoration: none;
    transition: background 0.12s, color 0.12s;
}

.pulse-topbar__dropdown-item:hover {
    background: var(--pulse-orange-soft);
    color: var(--pulse-orange-dark);
}

.pulse-topbar__dropdown-item i {
    width: 1.1rem;
    text-align: center;
    color: var(--pulse-orange);
}

.pulse-topbar__dropdown-heading {
    font-size: 0.65rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #9ca3af;
    padding: 0.35rem 0.85rem 0.15rem;
}

.pulse-topbar__ctx-tree {
    max-height: min(34vh, 12rem);
    overflow-y: auto;
    padding-bottom: 0.2rem;
}

.pulse-topbar__ctx-empresa {
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #9ca3af;
    padding: 0.55rem 0.85rem 0.15rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pulse-topbar__ctx-unidade-form {
    margin: 0;
}

.pulse-topbar__ctx-unidade.pulse-topbar__dropdown-item {
    padding-left: 1.65rem;
    font-size: 0.84rem;
    font-weight: 500;
}

.pulse-topbar__ctx-unidade.pulse-topbar__dropdown-item span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.pulse-topbar__dropdown-sep {
    height: 1px;
    margin: 0.35rem 0;
    background: var(--pulse-border);
}

.pulse-topbar__status-menu {
    display: grid;
    gap: 0.25rem;
}

.pulse-topbar__status-option {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.65rem;
    width: 100%;
    padding: 0.58rem 0.72rem;
    border: 1px solid transparent;
    border-radius: 9px;
    background: transparent;
    color: #374151;
    cursor: pointer;
    text-align: left;
    font: inherit;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
}

.pulse-topbar__status-option:hover {
    background: var(--pulse-orange-soft);
    border-color: #fed7aa;
}

.pulse-topbar__status-option.is-active {
    background: color-mix(in srgb, var(--pulse-orange) 9%, #fff 91%);
    border-color: color-mix(in srgb, var(--pulse-orange) 36%, var(--pulse-border) 64%);
}

.pulse-topbar__status-option-dot {
    width: 0.72rem;
    height: 0.72rem;
    border-radius: 999px;
    background: #22c55e;
    box-shadow: 0 0 0 3px color-mix(in srgb, #22c55e 18%, transparent);
}

.pulse-topbar__status-option.is-ocupado .pulse-topbar__status-option-dot { background: #f97316; box-shadow: 0 0 0 3px color-mix(in srgb, #f97316 22%, transparent); }
.pulse-topbar__status-option.is-ausente .pulse-topbar__status-option-dot { background: #38bdf8; box-shadow: 0 0 0 3px color-mix(in srgb, #38bdf8 22%, transparent); }
.pulse-topbar__status-option.is-offline .pulse-topbar__status-option-dot { background: #94a3b8; box-shadow: 0 0 0 3px color-mix(in srgb, #94a3b8 24%, transparent); }

.pulse-topbar__status-option-text {
    min-width: 0;
}

.pulse-topbar__status-option-text strong,
.pulse-topbar__status-option-text small {
    display: block;
}

.pulse-topbar__status-option-text strong {
    color: inherit;
    font-size: 0.84rem;
    font-weight: 800;
    line-height: 1.15;
}

.pulse-topbar__status-option-text strong i {
    width: 0.95rem;
    margin-right: 0.2rem;
    color: var(--pulse-orange);
}

.pulse-topbar__status-option-text small {
    margin-top: 0.12rem;
    color: var(--pulse-muted);
    font-size: 0.72rem;
    line-height: 1.25;
}

.pulse-topbar__status-option-check {
    color: var(--pulse-orange);
    font-size: 0.8rem;
}

button.pulse-topbar__dropdown-item,
.pulse-topbar__dropdown-item--btn {
    width: 100%;
    border: none;
    background: transparent;
    font: inherit;
    cursor: pointer;
    text-align: left;
}

@media (max-height: 760px) {
    .pulse-topbar__dropdown {
        top: calc(100% + 4px);
        max-height: calc(100vh - var(--topbar-h) - 0.5rem);
        max-height: calc(100dvh - var(--topbar-h) - 0.5rem);
        padding: 0.25rem;
        border-radius: 10px;
    }

    .pulse-topbar__dropdown-item {
        gap: 0.5rem;
        padding: 0.48rem 0.65rem;
        border-radius: 7px;
        font-size: 0.82rem;
    }

    .pulse-topbar__dropdown-heading {
        padding: 0.25rem 0.65rem 0.08rem;
        font-size: 0.58rem;
        letter-spacing: 0.08em;
    }

    .pulse-topbar__dropdown-sep {
        margin: 0.22rem 0;
    }

    .pulse-topbar__status-menu {
        gap: 0.15rem;
    }

    .pulse-topbar__status-option {
        gap: 0.5rem;
        padding: 0.42rem 0.6rem;
        border-radius: 7px;
    }

    .pulse-topbar__status-option-dot {
        width: 0.58rem;
        height: 0.58rem;
    }

    .pulse-topbar__status-option-text strong {
        font-size: 0.78rem;
    }

    .pulse-topbar__status-option-text small {
        font-size: 0.66rem;
    }

    .pulse-topbar__ctx-tree {
        max-height: min(24vh, 8rem);
    }

    .pulse-topbar__ctx-empresa {
        padding: 0.38rem 0.65rem 0.08rem;
        font-size: 0.6rem;
    }

    .pulse-topbar__ctx-unidade.pulse-topbar__dropdown-item {
        padding-left: 1.15rem;
        font-size: 0.78rem;
    }

    .pulse-topbar__dropdown-hint {
        padding: 0.1rem 0.65rem 0.25rem;
        font-size: 0.68rem;
    }
}

@media (max-height: 620px) {
    .pulse-topbar__status-option-text small,
    .pulse-topbar__dropdown-hint {
        display: none;
    }

    .pulse-topbar__ctx-tree {
        max-height: min(20vh, 6rem);
    }
}

.pulse-theme-toolbar {
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    z-index: 300;
    display: flex;
    padding: 0.25rem;
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid var(--pulse-border);
    border-radius: 999px;
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1);
}

.pulse-theme-tool {
    width: 44px;
    height: 44px;
    border: none;
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
    color: #64748b;
    font-size: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s, color 0.15s;
}

.pulse-theme-tool:hover {
    background: var(--pulse-orange-soft);
    color: var(--pulse-orange-dark);
}

.pulse-topbar__theme-toggle {
    gap: 0.5rem;
}

.pulse-topbar__theme-toggle [data-theme-toggle-text] {
    flex: 1;
    min-width: 0;
    font-weight: 600;
}

.pulse-menu-btn {
    display: none;
    width: 44px;
    height: 44px;
    border: none;
    border-radius: 10px;
    background: var(--pulse-orange-soft);
    color: var(--pulse-orange-dark);
    cursor: pointer;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
}

@media (max-width: 768px) {
    .pulse-menu-btn {
        display: flex;
    }
}

.pulse-avatar {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--pulse-orange), var(--pulse-orange-dark));
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.85rem;
    flex-shrink: 0;
    overflow: hidden;
}

.pulse-avatar--image {
    background: var(--pulse-card);
    border: 1px solid var(--pulse-border);
}

.pulse-avatar img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.pulse-profile-avatar {
    width: 76px;
    height: 76px;
    border-radius: 50%;
    overflow: hidden;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--pulse-orange), var(--pulse-orange-dark));
    color: #fff;
    font-size: 1.35rem;
    font-weight: 800;
    border: 2px solid color-mix(in srgb, var(--pulse-orange) 30%, transparent);
}

.pulse-profile-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.pulse-profile-status-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.pulse-profile-status-option {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.65rem;
    align-items: center;
    min-height: 74px;
    padding: 0.8rem;
    border: 1px solid var(--pulse-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--pulse-card) 94%, var(--pulse-surface) 6%);
    color: var(--pulse-text);
    cursor: pointer;
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease;
}

.pulse-profile-status-option:hover {
    border-color: color-mix(in srgb, var(--pulse-orange) 45%, var(--pulse-border) 55%);
    transform: translateY(-1px);
}

.pulse-profile-status-option input {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.pulse-profile-status-option__dot,
.pulse-topbar__status {
    width: 0.72rem;
    height: 0.72rem;
    border-radius: 999px;
    background: #22c55e;
    box-shadow: 0 0 0 3px color-mix(in srgb, #22c55e 18%, transparent);
}

.pulse-profile-status-option.is-ocupado .pulse-profile-status-option__dot,
.pulse-topbar__status.is-ocupado { background: #f97316; box-shadow: 0 0 0 3px color-mix(in srgb, #f97316 22%, transparent); }
.pulse-profile-status-option.is-ausente .pulse-profile-status-option__dot,
.pulse-topbar__status.is-ausente { background: #38bdf8; box-shadow: 0 0 0 3px color-mix(in srgb, #38bdf8 22%, transparent); }
.pulse-profile-status-option.is-offline .pulse-profile-status-option__dot,
.pulse-topbar__status.is-offline { background: #94a3b8; box-shadow: 0 0 0 3px color-mix(in srgb, #94a3b8 24%, transparent); }

.pulse-profile-status-option__text {
    min-width: 0;
}

.pulse-profile-status-option__text strong,
.pulse-profile-status-option__text small {
    display: block;
}

.pulse-profile-status-option__text strong {
    color: var(--pulse-text);
    font-size: 0.9rem;
    font-weight: 800;
}

.pulse-profile-status-option__text small {
    margin-top: 0.12rem;
    color: var(--pulse-muted);
    font-size: 0.76rem;
    line-height: 1.25;
}

.pulse-profile-status-option:has(input:checked) {
    border-color: var(--pulse-orange);
    background: color-mix(in srgb, var(--pulse-orange) 10%, var(--pulse-card) 90%);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--pulse-orange) 35%, transparent);
}

.pulse-topbar__meta {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.12rem;
    line-height: 1.2;
    overflow: hidden;
}

.pulse-topbar__meta-name {
    display: flex;
    align-items: center;
    gap: 0.42rem;
    font-size: 0.95rem;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.pulse-topbar__status {
    flex: 0 0 auto;
}

@media (max-width: 640px) {
    .pulse-profile-status-grid {
        grid-template-columns: 1fr;
    }
}

/* ------------------------------------------------------------------ Meu perfil */
.pulse-content--profile {
    width: 100%;
    max-width: none;
    padding: 1.25rem 1.25rem 1.5rem 1.75rem;
}

@media (min-width: 769px) {
    .pulse-content--profile {
        padding: 1.5rem 1.75rem 2rem 2.5rem;
    }
}

@media (min-width: 1200px) {
    .pulse-content--profile {
        padding: 1.75rem 2rem 2rem 3.25rem;
    }
}

.pulse-profile-page {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    width: 100%;
    max-width: none;
    margin: 0;
}

.pulse-profile-alert {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.85rem 1rem;
    border-radius: 12px;
    font-size: 0.88rem;
    line-height: 1.45;
}

.pulse-profile-alert i {
    margin-top: 0.12rem;
    font-size: 1rem;
}

.pulse-profile-alert--success {
    border: 1px solid color-mix(in srgb, #10b981 35%, var(--pulse-border) 65%);
    background: color-mix(in srgb, #10b981 10%, var(--pulse-card) 90%);
    color: #047857;
}

.pulse-profile-alert--error {
    border: 1px solid color-mix(in srgb, #ef4444 35%, var(--pulse-border) 65%);
    background: color-mix(in srgb, #ef4444 8%, var(--pulse-card) 92%);
    color: #b91c1c;
}

.pulse-profile-alert ul {
    margin: 0.35rem 0 0;
    padding-left: 1.1rem;
}

.pulse-profile-form {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.pulse-profile-hero {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--pulse-border);
    border-radius: 16px;
    background: var(--pulse-card);
    box-shadow: 0 8px 28px rgba(15, 23, 42, 0.06);
}

.pulse-profile-hero__cover {
    height: 112px;
    background:
        radial-gradient(circle at 85% 20%, rgba(255, 255, 255, 0.28) 0%, transparent 42%),
        linear-gradient(120deg, color-mix(in srgb, var(--pulse-orange) 88%, #1e293b 12%), color-mix(in srgb, var(--pulse-orange-dark, #ea580c) 75%, #0f172a 25%));
}

.pulse-profile-hero__body {
    display: flex;
    align-items: flex-end;
    gap: 1.35rem;
    padding: 0 1.75rem 1.35rem 2rem;
    margin-top: -2.6rem;
}

.pulse-profile-hero__avatar-wrap {
    position: relative;
    flex: 0 0 auto;
}

.pulse-profile-avatar--hero {
    width: 96px;
    height: 96px;
    font-size: 1.75rem;
    border: 4px solid var(--pulse-card);
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14);
}

.pulse-profile-avatar--md {
    width: 72px;
    height: 72px;
    font-size: 1.2rem;
}

.pulse-profile-hero__status-dot {
    position: absolute;
    right: 6px;
    bottom: 6px;
    width: 16px;
    height: 16px;
    border-radius: 999px;
    border: 3px solid var(--pulse-card);
    background: #22c55e;
    box-shadow: 0 0 0 2px color-mix(in srgb, #22c55e 25%, transparent);
}

.pulse-profile-hero__status-dot.is-ocupado { background: #f97316; box-shadow: 0 0 0 2px color-mix(in srgb, #f97316 25%, transparent); }
.pulse-profile-hero__status-dot.is-ausente { background: #38bdf8; box-shadow: 0 0 0 2px color-mix(in srgb, #38bdf8 25%, transparent); }
.pulse-profile-hero__status-dot.is-offline { background: #94a3b8; box-shadow: 0 0 0 2px color-mix(in srgb, #94a3b8 25%, transparent); }

.pulse-profile-hero__info {
    min-width: 0;
    flex: 1;
    padding-bottom: 0.15rem;
}

.pulse-profile-hero__eyebrow {
    margin: 0;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--pulse-muted);
}

.pulse-profile-hero__name {
    margin: 0.15rem 0 0;
    font-size: clamp(1.35rem, 2.4vw, 1.75rem);
    font-weight: 800;
    line-height: 1.15;
    color: var(--pulse-text);
}

.pulse-profile-hero__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem 1rem;
    margin: 0.45rem 0 0;
    color: var(--pulse-muted);
    font-size: 0.82rem;
}

.pulse-profile-hero__meta span {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.pulse-profile-hero__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 0.75rem;
}

.pulse-profile-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.28rem 0.62rem;
    border-radius: 999px;
    border: 1px solid var(--pulse-border);
    background: color-mix(in srgb, var(--pulse-card) 92%, var(--pulse-surface) 8%);
    color: var(--pulse-text);
    font-size: 0.74rem;
    font-weight: 600;
}

.pulse-profile-chip--accent {
    border-color: color-mix(in srgb, var(--pulse-orange) 35%, var(--pulse-border) 65%);
    background: color-mix(in srgb, var(--pulse-orange) 12%, var(--pulse-card) 88%);
    color: color-mix(in srgb, var(--pulse-orange) 85%, var(--pulse-text) 15%);
}

.pulse-profile-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
    gap: 1.15rem;
    align-items: start;
}

@media (min-width: 1100px) {
    .pulse-profile-grid {
        grid-template-columns: minmax(0, 1.15fr) minmax(340px, 420px);
        gap: 1.35rem;
    }
}

@media (min-width: 1400px) {
    .pulse-profile-grid {
        grid-template-columns: minmax(0, 1.25fr) minmax(360px, 440px);
        gap: 1.5rem;
    }
}

.pulse-profile-main,
.pulse-profile-aside {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.pulse-profile-card {
    border: 1px solid var(--pulse-border);
    border-radius: 14px;
    background: var(--pulse-card);
    box-shadow: 0 2px 14px rgba(15, 23, 42, 0.04);
    overflow: hidden;
}

.pulse-profile-card--sticky {
    position: sticky;
    top: calc(var(--pulse-topbar-height, 58px) + 0.75rem);
}

.pulse-profile-card__head {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1.05rem 1.35rem 0.9rem 1.45rem;
    border-bottom: 1px solid color-mix(in srgb, var(--pulse-border) 85%, transparent);
}

.pulse-profile-card__icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    background: color-mix(in srgb, var(--pulse-orange) 14%, var(--pulse-card) 86%);
    color: var(--pulse-orange);
    font-size: 0.95rem;
}

.pulse-profile-card__head h2 {
    margin: 0;
    font-size: 0.98rem;
    font-weight: 800;
    color: var(--pulse-text);
}

.pulse-profile-card__head p {
    margin: 0.18rem 0 0;
    font-size: 0.78rem;
    line-height: 1.4;
    color: var(--pulse-muted);
}

.pulse-profile-card__body {
    padding: 1.05rem 1.35rem 1.2rem 1.45rem;
}

.pulse-profile-photo {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.pulse-profile-photo__hint {
    margin: 0;
    font-size: 0.78rem;
    line-height: 1.45;
    color: var(--pulse-muted);
}

.pulse-profile-photo__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 0.75rem;
}

.pulse-profile-photo__pick {
    cursor: pointer;
}

.pulse-profile-photo__remove {
    color: #dc2626 !important;
}

.pulse-profile-photo__filename {
    margin: 0.55rem 0 0;
    font-size: 0.76rem;
    font-weight: 600;
    color: var(--pulse-orange);
}

.pulse-profile-dl {
    display: grid;
    gap: 0.75rem;
    margin: 0;
}

.pulse-profile-dl div {
    display: grid;
    gap: 0.15rem;
}

.pulse-profile-dl dt {
    margin: 0;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--pulse-muted);
}

.pulse-profile-dl dd {
    margin: 0;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--pulse-text);
    word-break: break-word;
}

.pulse-profile-divider {
    height: 1px;
    margin: 1rem 0;
    background: var(--pulse-border);
}

.pulse-profile-password h3 {
    margin: 0;
    font-size: 0.92rem;
    font-weight: 800;
    color: var(--pulse-text);
}

.pulse-profile-password > p {
    margin: 0.25rem 0 0.85rem;
    font-size: 0.76rem;
    color: var(--pulse-muted);
}

.pulse-profile-password__fields {
    display: grid;
    gap: 0.75rem;
}

.pulse-profile-save {
    margin-top: 1rem;
}

.pulse-btn--block {
    width: 100%;
    justify-content: center;
}

.pulse-profile-notify__status {
    margin: 0 0 0.75rem;
    padding: 0.65rem 0.75rem;
    border-radius: 10px;
    border: 1px solid var(--pulse-border);
    background: color-mix(in srgb, var(--pulse-card) 94%, var(--pulse-surface) 6%);
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1.4;
    color: var(--pulse-muted);
}

.pulse-profile-notify__status.is-success {
    border-color: color-mix(in srgb, #10b981 35%, var(--pulse-border) 65%);
    background: color-mix(in srgb, #10b981 10%, var(--pulse-card) 90%);
    color: #047857;
}

.pulse-profile-notify__status.is-warn {
    border-color: color-mix(in srgb, #f59e0b 35%, var(--pulse-border) 65%);
    background: color-mix(in srgb, #f59e0b 10%, var(--pulse-card) 90%);
    color: #b45309;
}

.pulse-profile-notify__status.is-error {
    border-color: color-mix(in srgb, #ef4444 35%, var(--pulse-border) 65%);
    background: color-mix(in srgb, #ef4444 8%, var(--pulse-card) 92%);
    color: #b91c1c;
}

.pulse-profile-notify__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

html.dark .pulse-profile-alert--success { color: #6ee7b7; }
html.dark .pulse-profile-alert--error { color: #fca5a5; }
html.dark .pulse-profile-notify__status.is-success { color: #6ee7b7; }
html.dark .pulse-profile-notify__status.is-warn { color: #fcd34d; }
html.dark .pulse-profile-notify__status.is-error { color: #fca5a5; }

@media (max-width: 960px) {
    .pulse-profile-grid {
        grid-template-columns: 1fr;
    }

    .pulse-profile-card--sticky {
        position: static;
    }
}

@media (max-width: 640px) {
    .pulse-profile-hero__body {
        flex-direction: column;
        align-items: flex-start;
        margin-top: -2.2rem;
        padding-inline: 1rem;
    }

    .pulse-profile-photo {
        flex-direction: column;
        align-items: flex-start;
    }
}

.pulse-topbar__meta .pulse-topbar__meta-org {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    max-width: 100%;
    min-width: 0;
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--pulse-muted);
}

.pulse-topbar__meta-org-text {
    display: block;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 8.5rem;
}

@media (max-width: 768px) {
    .pulse-topbar__meta-org-text {
        max-width: 5.5rem;
    }

    .pulse-topbar__trigger {
        max-width: min(100vw - 4.5rem, 14rem);
    }
}

.pulse-topbar__meta span {
    font-size: 0.75rem;
    color: var(--pulse-muted);
}

.pulse-topbar__meta-login {
    display: block;
    font-size: 0.75rem;
    color: var(--pulse-muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.pulse-cliente-empresa-celula {
    max-width: 10rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    cursor: help;
}

.pulse-topbar__meta .pulse-topbar__perfil {
    display: block;
    font-size: 0.68rem;
    font-weight: 600;
    color: var(--pulse-primary, #eb4910);
    margin-top: 0.1rem;
}

.pulse-btn-ghost {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 0.85rem;
    border-radius: 10px;
    border: 1px solid var(--pulse-border);
    background: #fff;
    color: #374151;
    font-size: 0.85rem;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
    text-decoration: none;
    transition: border-color 0.15s, background 0.15s;
}

.pulse-btn-ghost:hover {
    border-color: var(--pulse-orange);
    color: var(--pulse-orange-dark);
}

.pulse-content {
    padding: 1.25rem;
    flex: 1;
}

@media (min-width: 769px) {
    .pulse-content {
        padding: 1.5rem 1.75rem;
    }
}

.pulse-breadcrumb {
    font-size: 0.8rem;
    color: var(--pulse-muted);
    margin-bottom: 1rem;
}

.pulse-breadcrumb a {
    color: var(--pulse-orange);
    text-decoration: none;
}

.pulse-dash-g2 code {
    font-size: 0.8em;
    background: #f3f4f6;
    padding: 0.1em 0.35em;
    border-radius: 4px;
}


.pulse-hero {
    background: linear-gradient(135deg, #fff 0%, var(--pulse-orange-soft) 100%);
    border: 1px solid #ffe4d4;
    border-radius: 16px;
    padding: 1.5rem 1.25rem;
    margin-bottom: 1.25rem;
}

@media (min-width: 769px) {
    .pulse-hero {
        padding: 1.75rem 2rem;
    }
}

.pulse-hero h1 {
    margin: 0 0 0.35rem 0;
    font-size: clamp(1.35rem, 2.5vw, 1.75rem);
    font-weight: 800;
    letter-spacing: -0.02em;
}

.pulse-hero p {
    margin: 0;
    color: var(--pulse-muted);
    font-size: 0.95rem;
    max-width: 52ch;
    line-height: 1.5;
}

.pulse-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 1rem;
}

.pulse-tag {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.35rem 0.75rem;
    border-radius: 999px;
    font-size: 0.8rem;
    font-weight: 600;
    background: #fff;
    border: 1px solid #ffd6c9;
    color: var(--pulse-orange-dark);
}

.pulse-tag--muted {
    background: #f9fafb;
    border-color: var(--pulse-border);
    color: var(--pulse-muted);
    font-weight: 500;
}

.pulse-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: 1fr;
}

@media (min-width: 600px) {
    .pulse-grid--3 {
        grid-template-columns: repeat(3, 1fr);
    }
}

.pulse-card {
    background: var(--pulse-card);
    border-radius: 14px;
    border: 1px solid #eef0f3;
    padding: 1.15rem 1.1rem;
    box-shadow: 0 2px 12px rgba(0,0,0,0.04);
}

.pulse-card__icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: var(--pulse-orange-soft);
    color: var(--pulse-orange);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.65rem;
    font-size: 1.1rem;
}

.pulse-card h3 {
    margin: 0 0 0.25rem 0;
    font-size: 0.95rem;
    font-weight: 700;
}

.pulse-card p {
    margin: 0;
    font-size: 0.8rem;
    color: var(--pulse-muted);
    line-height: 1.45;
}

.pulse-stat {
    text-align: center;
    padding: 1rem 0.75rem;
    border-radius: 12px;
    background: var(--pulse-card);
    border: 1px solid #eef0f3;
    border-top: 3px solid var(--pulse-orange);
}

.pulse-stat .label {
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--pulse-muted);
    margin-bottom: 0.35rem;
}

.pulse-stat .value {
    font-size: 1.65rem;
    font-weight: 800;
    color: var(--pulse-text);
    line-height: 1;
}

.pulse-footnote {
    font-size: 0.75rem;
    color: var(--pulse-muted);
    margin-top: 1.25rem;
    line-height: 1.5;
}

.pulse-footnote code {
    font-size: 0.72rem;
    background: #f3f4f6;
    padding: 0.1rem 0.35rem;
    border-radius: 4px;
}

/* Upload de imagens (configurações, etc.) */
.pulse-media-upload {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.pulse-media-upload__label {
    margin-bottom: 0 !important;
    font-weight: 600;
    color: var(--pulse-text, #111827);
}

.pulse-media-upload__preview {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 140px;
    padding: 1.25rem;
    border-radius: 14px;
    border: 1px solid var(--pulse-border);
    background: linear-gradient(145deg, #f9fafb 0%, #f3f4f6 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.pulse-media-upload__preview img {
    max-height: 7rem;
    max-width: 100%;
    object-fit: contain;
    filter: drop-shadow(0 4px 12px rgba(15, 23, 42, 0.12));
}

.pulse-media-upload__preview--favicon {
    min-height: 96px;
}

.pulse-media-upload__preview--favicon img {
    max-height: 3rem;
    width: 3rem;
    height: 3rem;
}

.pulse-media-upload__dropzone {
    position: relative;
    display: block;
    cursor: pointer;
    border-radius: 14px;
    border: 2px dashed #d1d5db;
    background: var(--pulse-card);
    transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
}

.pulse-media-upload__dropzone:hover {
    border-color: var(--pulse-primary, var(--pulse-orange));
    background: rgba(235, 73, 16, 0.04);
    box-shadow: 0 0 0 3px rgba(235, 73, 16, 0.08);
}

.pulse-media-upload__dropzone.is-dragover {
    border-color: var(--pulse-primary, var(--pulse-orange));
    border-style: solid;
    background: rgba(235, 73, 16, 0.08);
    box-shadow: 0 0 0 4px rgba(235, 73, 16, 0.12);
    transform: scale(1.01);
}

.pulse-media-upload__dropzone.has-file {
    border-color: #86efac;
    background: rgba(34, 197, 94, 0.06);
}

.pulse-media-upload__dropzone.has-file .pulse-media-upload__icon {
    color: #16a34a;
    background: rgba(34, 197, 94, 0.12);
}

.pulse-media-upload__input {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.pulse-media-upload__dropzone-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 1.35rem 1rem;
    text-align: center;
    pointer-events: none;
}

.pulse-media-upload__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 12px;
    font-size: 1.25rem;
    color: var(--pulse-primary, var(--pulse-orange));
    background: rgba(235, 73, 16, 0.1);
    margin-bottom: 0.25rem;
    transition: color 0.2s ease, background 0.2s ease;
}

.pulse-media-upload__title {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--pulse-text, #1f2937);
    line-height: 1.35;
}

.pulse-media-upload__hint {
    font-size: 0.78rem;
    color: var(--pulse-muted, #6b7280);
    line-height: 1.4;
    max-width: 22rem;
}

.pulse-media-upload__file {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-top: 0.35rem;
    padding: 0.3rem 0.65rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
    color: #166534;
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.25);
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pulse-media-upload__file[hidden] {
    display: none !important;
}

.pulse-media-upload__file::before {
    content: "\f15b";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 0.7rem;
}

.pulse-media-upload__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

/* Certificado digital A1 (drawer empresa) */
.pulse-cert-panel {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.pulse-cert-panel__intro {
    margin: 0;
    font-size: 0.82rem;
    line-height: 1.5;
    color: var(--pulse-muted, #6b7280);
}

.pulse-cert-status {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
    padding: 0.9rem 1rem;
    border-radius: 12px;
    border: 1px solid var(--pulse-border);
    background: color-mix(in srgb, #22c55e 6%, var(--pulse-card) 94%);
}

.pulse-cert-status--empty {
    background: color-mix(in srgb, var(--pulse-muted) 6%, var(--pulse-card) 94%);
}

.pulse-cert-status--warning {
    background: color-mix(in srgb, #f59e0b 8%, var(--pulse-card) 92%);
}

.pulse-cert-status--warning .pulse-cert-status__icon {
    color: #b45309;
    background: rgba(245, 158, 11, 0.16);
}

.pulse-cert-status--danger {
    background: color-mix(in srgb, #ef4444 8%, var(--pulse-card) 92%);
}

.pulse-cert-status--danger .pulse-cert-status__icon {
    color: #b91c1c;
    background: rgba(239, 68, 68, 0.14);
}

.pulse-cert-status__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 10px;
    font-size: 1.1rem;
    color: #15803d;
    background: rgba(34, 197, 94, 0.14);
}

.pulse-cert-status__icon--muted {
    color: var(--pulse-muted, #6b7280);
    background: color-mix(in srgb, var(--pulse-muted) 12%, transparent);
}

.pulse-cert-status__content {
    min-width: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.pulse-cert-status__head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
}

.pulse-cert-status__head strong {
    font-size: 0.92rem;
    color: var(--pulse-text);
}

.pulse-cert-status__empty-hint {
    display: block;
    font-size: 0.78rem;
    line-height: 1.45;
    color: var(--pulse-muted, #6b7280);
}

.pulse-cert-status__badge {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.pulse-cert-status__badge--valid {
    color: #166534;
    background: rgba(34, 197, 94, 0.16);
    border: 1px solid rgba(34, 197, 94, 0.28);
}

.pulse-cert-status__badge--expiring {
    color: #92400e;
    background: rgba(245, 158, 11, 0.16);
    border: 1px solid rgba(245, 158, 11, 0.3);
}

.pulse-cert-status__badge--expired {
    color: #991b1b;
    background: rgba(239, 68, 68, 0.14);
    border: 1px solid rgba(239, 68, 68, 0.28);
}

.pulse-cert-status__meta {
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
    gap: 0.45rem 1rem;
}

.pulse-cert-status__row {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.pulse-cert-status__row dt {
    margin: 0;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--pulse-muted, #6b7280);
}

.pulse-cert-status__row dd {
    margin: 0;
    font-size: 0.84rem;
    font-weight: 600;
    color: var(--pulse-text);
    word-break: break-word;
}

.pulse-cert-upload {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
    padding-top: 0.25rem;
    border-top: 1px dashed var(--pulse-border);
}

.pulse-cert-upload__label {
    margin-bottom: 0 !important;
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--pulse-muted, #6b7280);
}

.pulse-cert-upload__dropzone .pulse-media-upload__dropzone-inner {
    padding: 1.15rem 1rem;
}

.pulse-cert-upload__dropzone .pulse-media-upload__icon {
    color: #4338ca;
    background: rgba(99, 102, 241, 0.12);
}

.pulse-cert-upload__grid {
    margin-bottom: 0 !important;
}

.pulse-cert-upload__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.65rem 1rem;
}

.pulse-cert-upload__hint {
    flex: 1;
    min-width: 12rem;
}

html.dark .pulse-cert-status {
    background: color-mix(in srgb, #22c55e 8%, #1e293b 92%);
    border-color: #334155;
}

html.dark .pulse-cert-status--empty {
    background: color-mix(in srgb, #64748b 10%, #1e293b 90%);
}

html.dark .pulse-cert-status__icon {
    color: #86efac;
    background: rgba(34, 197, 94, 0.18);
}

html.dark .pulse-cert-upload__dropzone .pulse-media-upload__icon {
    color: #a5b4fc;
    background: rgba(99, 102, 241, 0.2);
}

/* ========== Modo escuro (html.dark) ========== */
html.dark {
    color-scheme: dark;
    --pulse-text: #f1f5f9;
    --pulse-muted: #94a3b8;
    --pulse-bg: #0f172a;
    --pulse-card: #1e293b;
    --pulse-border: #334155;
    --pulse-orange-soft: rgba(234, 88, 12, 0.14);
}

html.dark .pulse-breadcrumb {
    color: var(--pulse-muted);
}

html.dark .pulse-topbar__dropdown {
    background: var(--pulse-card);
    border-color: var(--pulse-border);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(255, 255, 255, 0.06);
}

html.dark .pulse-topbar__dropdown-item {
    color: #e2e8f0;
}

html.dark .pulse-topbar__dropdown-item:hover {
    background: rgba(234, 88, 12, 0.12);
    color: #fed7aa;
}

html.dark .pulse-topbar__dropdown-item--current {
    color: #fdba74;
}

html.dark .pulse-topbar__dropdown-item--current:hover {
    color: #fdba74;
}

html.dark .pulse-topbar__dropdown-hint {
    color: #94a3b8;
}

html.dark .pulse-topbar__status-option {
    color: #e2e8f0;
}

html.dark .pulse-topbar__status-option:hover {
    background: rgba(234, 88, 12, 0.12);
    border-color: rgba(251, 146, 60, 0.35);
}

html.dark .pulse-topbar__status-option.is-active {
    background: rgba(249, 115, 22, 0.14);
    border-color: rgba(251, 146, 60, 0.45);
}

html.dark .pulse-topbar__status-option-text small {
    color: #94a3b8;
}

html.dark .pulse-topbar__meta strong {
    color: var(--pulse-text);
}

html.dark .pulse-topbar__meta span {
    color: var(--pulse-muted);
}

html.dark .pulse-topbar__meta .pulse-topbar__meta-org {
    color: #94a3b8;
}

html.dark .pulse-topbar__chev {
    color: #94a3b8;
}

html.dark .pulse-topbar__trigger:hover {
    background: rgba(234, 88, 12, 0.1);
    border-color: rgba(251, 146, 60, 0.35);
}

html.dark .pulse-topbar__account.is-open .pulse-topbar__trigger {
    background: rgba(30, 41, 59, 0.95);
    border-color: var(--pulse-border);
}

html.dark .pulse-menu-btn {
    background: rgba(234, 88, 12, 0.15);
    color: #fdba74;
}

html.dark .pulse-login__form-wrap {
    background: var(--pulse-bg);
}

html.dark .pulse-login__card {
    background: rgba(30, 41, 59, 0.92);
    border: 1px solid var(--pulse-border);
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.35);
}

html.dark .pulse-login__card h2 {
    color: var(--pulse-text);
}

html.dark .pulse-login__lead {
    color: var(--pulse-muted);
}

html.dark .pulse-login__footer {
    color: #64748b;
    border-top-color: var(--pulse-border);
}

html.dark .pulse-label {
    color: #cbd5e1;
}

html.dark .pulse-input {
    background: #0f172a;
    border-color: var(--pulse-border);
    color: var(--pulse-text);
}

/* Bulma + tabelas: modo escuro global (listagens usam .table do Bulma) */
html.dark .table {
    background-color: var(--pulse-card);
    color: var(--pulse-text);
}

html.dark .table td,
html.dark .table th {
    border-color: var(--pulse-border);
    color: var(--pulse-text);
}

html.dark .table thead th {
    background-color: rgba(15, 23, 42, 0.75);
    color: #e2e8f0;
}

html.dark .table.is-striped tbody tr:not(.is-selected):nth-child(even) {
    background-color: rgba(15, 23, 42, 0.45);
}

html.dark .table.is-striped tbody tr:not(.is-selected):nth-child(odd) {
    background-color: transparent;
}

html.dark .table.is-hoverable tbody tr:hover {
    background-color: rgba(234, 88, 12, 0.1) !important;
}

html.dark .label {
    color: #cbd5e1 !important;
}

html.dark .help {
    color: #94a3b8 !important;
}

html.dark .input,
html.dark .textarea,
html.dark .select select {
    background-color: #0f172a !important;
    border-color: var(--pulse-border) !important;
    color: var(--pulse-text) !important;
}

html.dark .input::placeholder,
html.dark .textarea::placeholder {
    color: #64748b !important;
}

html.dark .select:not(.is-multiple):not(:loading)::after {
    border-color: #94a3b8 !important;
}

html.dark .box {
    background-color: var(--pulse-card) !important;
    color: var(--pulse-text) !important;
    box-shadow: 0 0.5em 1em -0.125em rgba(0, 0, 0, 0.4), 0 0 0 1px var(--pulse-border) !important;
}

html.dark .notification.is-light {
    background: rgba(30, 41, 59, 0.92) !important;
    color: var(--pulse-text) !important;
}

html.dark .notification.is-danger.is-light {
    background: rgba(127, 29, 29, 0.35) !important;
    color: #fecaca !important;
}

html.dark .notification.is-success.is-light {
    background: rgba(21, 128, 61, 0.28) !important;
    color: #bbf7d0 !important;
}

html.dark .notification.is-info.is-light {
    background: rgba(14, 116, 144, 0.2) !important;
    border: 1px solid rgba(34, 211, 238, 0.24) !important;
    color: #bae6fd !important;
}

html.dark .notification.is-info.is-light strong {
    color: #e0f2fe !important;
}

html.dark .tag.is-light {
    background: rgba(51, 65, 85, 0.85) !important;
    color: #e2e8f0 !important;
}

html.dark .tag.is-success.is-light {
    background: rgba(21, 128, 61, 0.32) !important;
    color: #bbf7d0 !important;
}

html.dark .tag.is-warning.is-light {
    background: rgba(161, 98, 7, 0.32) !important;
    color: #fde68a !important;
}

html.dark .tag.is-info.is-light {
    background: rgba(29, 78, 216, 0.3) !important;
    color: #bfdbfe !important;
}

html.dark .tag.is-link.is-light {
    background: rgba(37, 99, 235, 0.28) !important;
    color: #bfdbfe !important;
}

html.dark .content {
    color: var(--pulse-text);
}

html.dark .has-text-grey {
    color: #94a3b8 !important;
}

html.dark .pulse-footnote code,
html.dark :is(.pulse-dash-g2, .pulse-content) code {
    background: #334155;
    color: #e2e8f0;
}

html.dark .notification.is-warning.is-light {
    background: rgba(234, 179, 8, 0.12) !important;
    color: #fde68a !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .text-gray-900,
html.dark :is(.pulse-dash-g2, .pulse-content) .text-gray-800 {
    color: #f1f5f9 !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .text-gray-700 {
    color: #cbd5e1 !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .text-gray-600,
html.dark :is(.pulse-dash-g2, .pulse-content) .text-gray-500 {
    color: #94a3b8 !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .text-gray-400,
html.dark :is(.pulse-dash-g2, .pulse-content) .text-gray-300 {
    color: #64748b !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .bg-white {
    background-color: var(--pulse-card) !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .border-gray-200,
html.dark :is(.pulse-dash-g2, .pulse-content) .border-gray-100,
html.dark :is(.pulse-dash-g2, .pulse-content) .border-gray-300 {
    border-color: var(--pulse-border) !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .bg-gray-50,
html.dark :is(.pulse-dash-g2, .pulse-content) .bg-gray-50\/80 {
    background-color: rgba(51, 65, 85, 0.5) !important;
}

html.dark .pulse-media-upload__label {
    color: var(--pulse-text) !important;
}

html.dark .pulse-media-upload__preview {
    background: linear-gradient(145deg, rgba(30, 41, 59, 0.95) 0%, rgba(15, 23, 42, 0.85) 100%);
    border-color: var(--pulse-border);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

html.dark .pulse-media-upload__preview img {
    filter: drop-shadow(0 4px 16px rgba(0, 0, 0, 0.45));
}

html.dark .pulse-media-upload__dropzone {
    border-color: #475569;
    background: rgba(15, 23, 42, 0.55);
}

html.dark .pulse-media-upload__dropzone:hover {
    border-color: var(--pulse-primary, #fb923c);
    background: rgba(251, 146, 60, 0.08);
    box-shadow: 0 0 0 3px rgba(251, 146, 60, 0.15);
}

html.dark .pulse-media-upload__dropzone.is-dragover {
    border-color: var(--pulse-primary, #fb923c);
    background: rgba(251, 146, 60, 0.12);
    box-shadow: 0 0 0 4px rgba(251, 146, 60, 0.2);
}

html.dark .pulse-media-upload__dropzone.has-file {
    border-color: #4ade80;
    background: rgba(34, 197, 94, 0.1);
}

html.dark .pulse-media-upload__dropzone.has-file .pulse-media-upload__icon {
    color: #86efac;
    background: rgba(34, 197, 94, 0.18);
}

html.dark .pulse-media-upload__icon {
    color: var(--pulse-primary, #fb923c);
    background: rgba(251, 146, 60, 0.15);
}

html.dark .pulse-media-upload__title {
    color: #f1f5f9;
}

html.dark .pulse-media-upload__hint {
    color: #94a3b8;
}

html.dark .pulse-media-upload__file {
    color: #bbf7d0;
    background: rgba(34, 197, 94, 0.16);
    border-color: rgba(74, 222, 128, 0.35);
}

html.dark :is(.pulse-dash-g2, .pulse-content) input[type="color"] {
    border-color: var(--pulse-border) !important;
    background: #334155;
}

html.dark :is(.pulse-dash-g2, .pulse-content) div.rounded-2xl > div.px-5.py-3.border-b-2 {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.05), rgba(15, 23, 42, 0.55)) !important;
    border-bottom-color: rgba(71, 85, 105, 0.55) !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .hover\:bg-gray-50\/80:hover {
    background-color: rgba(51, 65, 85, 0.65) !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .hover\:border-primary\/30:hover {
    border-color: rgba(251, 146, 60, 0.45) !important;
}

html.dark .pulse-theme-toolbar {
    background: rgba(30, 41, 59, 0.92);
    border: 1px solid var(--pulse-border);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.35);
}

html.dark .pulse-theme-tool {
    color: #cbd5e1;
}

html.dark .pulse-theme-tool:hover {
    background: rgba(234, 88, 12, 0.15);
    color: #fff;
}

html.dark .pulse-alert {
    background: linear-gradient(135deg, rgba(127, 29, 29, 0.35), rgba(153, 27, 27, 0.25)) !important;
    border-left-color: #f87171 !important;
    color: #fecaca !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .border-t.border-gray-200 {
    border-color: var(--pulse-border) !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) strong {
    color: #f1f5f9 !important;
}

/* Alertas inline (Tailwind bg-red-50 / text-red-800 nas listagens) */
html.dark :is(.pulse-dash-g2, .pulse-content) .bg-red-50,
html.dark :is(.pulse-dash-g2, .pulse-content) .bg-red-50\/60 {
    background-color: rgba(127, 29, 29, 0.32) !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .border-red-200 {
    border-color: rgba(248, 113, 113, 0.4) !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .text-red-800 {
    color: #fecaca !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .bg-emerald-100 {
    background-color: rgba(21, 128, 61, 0.35) !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .text-emerald-800 {
    color: #bbf7d0 !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .bg-red-100 {
    background-color: rgba(127, 29, 29, 0.35) !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .border-emerald-200 {
    border-color: rgba(52, 211, 153, 0.35) !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .bg-emerald-50\/60,
html.dark :is(.pulse-dash-g2, .pulse-content) .bg-emerald-50 {
    background-color: rgba(21, 128, 61, 0.25) !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .shadow-lg {
    box-shadow:
        0 10px 15px -3px rgba(0, 0, 0, 0.35),
        0 4px 6px -2px rgba(0, 0, 0, 0.2) !important;
}

html.dark :is(.pulse-dash-g2, .pulse-content) .shadow-xl {
    box-shadow:
        0 20px 25px -5px rgba(0, 0, 0, 0.4),
        0 10px 10px -5px rgba(0, 0, 0, 0.25) !important;
}

/* ========== Notificações toast (PulseNotify) ========== */
.pulse-notify-container {
    position: fixed;
    top: calc(var(--topbar-h, 45px) + 14px);
    right: 14px;
    left: 14px;
    z-index: 10060;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 12px;
    pointer-events: none;
    max-width: 420px;
    margin-left: auto;
}

@media (min-width: 480px) {
    .pulse-notify-container {
        left: auto;
        width: min(420px, calc(100vw - 28px));
    }
}

.pulse-notify {
    --notify-accent: var(--pulse-orange);
    --notify-accent-soft: rgba(235, 73, 16, 0.12);
    --notify-accent-glow: rgba(235, 73, 16, 0.22);
    pointer-events: auto;
    position: relative;
    display: grid;
    grid-template-columns: auto 1fr auto;
    grid-template-rows: auto auto;
    grid-template-areas:
        'icon body close'
        'progress progress progress';
    align-items: start;
    gap: 0 12px;
    width: 100%;
    padding: 14px 14px 10px 12px;
    border-radius: 14px;
    font-family: 'Inter', system-ui, sans-serif;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background: rgba(255, 255, 255, 0.94);
    color: var(--pulse-text);
    box-shadow:
        0 4px 6px -1px rgba(15, 23, 42, 0.06),
        0 16px 40px -8px rgba(15, 23, 42, 0.18),
        0 0 0 1px rgba(255, 255, 255, 0.6) inset;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    overflow: hidden;
    cursor: pointer;
    opacity: 0;
    transform: translate3d(24px, 0, 0) scale(0.96);
    transition:
        opacity 0.38s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.42s cubic-bezier(0.22, 1, 0.36, 1);
}

.pulse-notify::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: var(--notify-accent);
    border-radius: 14px 0 0 14px;
    opacity: 0.95;
}

.pulse-notify.is-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    animation: pulse-notify-glow-in 0.55s ease-out;
}

.pulse-notify.is-leaving {
    opacity: 0;
    transform: translate3d(24px, 0, 0) scale(0.94);
    transition:
        opacity 0.28s cubic-bezier(0.4, 0, 1, 1),
        transform 0.32s cubic-bezier(0.4, 0, 1, 1);
    pointer-events: none;
}

.pulse-notify__icon {
    grid-area: icon;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    margin-top: 1px;
    border-radius: 10px;
    background: var(--notify-accent-soft);
    color: var(--notify-accent);
    font-size: 1.05rem;
    flex-shrink: 0;
    animation: pulse-notify-icon-pop 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) 0.08s both;
}

.pulse-notify__body {
    grid-area: body;
    min-width: 0;
    padding-top: 1px;
}

.pulse-notify__title {
    display: block;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--notify-accent);
    margin-bottom: 0.2rem;
    line-height: 1.2;
}

.pulse-notify__msg {
    display: block;
    font-size: 0.9rem;
    line-height: 1.45;
    font-weight: 500;
    color: #1e293b;
}

.pulse-notify__close {
    grid-area: close;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    margin: -2px -2px 0 0;
    border: none;
    background: transparent;
    color: #94a3b8;
    font-size: 0.85rem;
    line-height: 1;
    padding: 0;
    cursor: pointer;
    border-radius: 8px;
    transition: background 0.15s, color 0.15s, transform 0.15s;
}

.pulse-notify__close:hover {
    background: rgba(15, 23, 42, 0.06);
    color: #334155;
    transform: scale(1.08);
}

.pulse-notify__close:active {
    transform: scale(0.95);
}

.pulse-notify__progress-track {
    grid-area: progress;
    display: block;
    height: 3px;
    margin: 10px -14px -10px -12px;
    background: rgba(15, 23, 42, 0.06);
    border-radius: 0 0 14px 14px;
    overflow: hidden;
}

.pulse-notify__progress {
    display: block;
    height: 100%;
    width: 100%;
    transform-origin: left center;
    transform: scaleX(1);
    background: var(--notify-accent);
    opacity: 0.85;
    border-radius: 0 2px 2px 0;
}

.pulse-notify--success {
    --notify-accent: #059669;
    --notify-accent-soft: rgba(5, 150, 105, 0.14);
    --notify-accent-glow: rgba(5, 150, 105, 0.25);
}

.pulse-notify--error {
    --notify-accent: #dc2626;
    --notify-accent-soft: rgba(220, 38, 38, 0.12);
    --notify-accent-glow: rgba(220, 38, 38, 0.28);
}

.pulse-notify--warning {
    --notify-accent: #d97706;
    --notify-accent-soft: rgba(217, 119, 6, 0.14);
    --notify-accent-glow: rgba(217, 119, 6, 0.25);
}

.pulse-notify--info {
    --notify-accent: #2563eb;
    --notify-accent-soft: rgba(37, 99, 235, 0.12);
    --notify-accent-glow: rgba(37, 99, 235, 0.22);
}

@keyframes pulse-notify-icon-pop {
    from {
        opacity: 0;
        transform: scale(0.5);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes pulse-notify-glow-in {
    0% {
        box-shadow:
            0 4px 6px -1px rgba(15, 23, 42, 0.06),
            0 16px 40px -8px rgba(15, 23, 42, 0.18),
            0 0 0 0 var(--notify-accent-glow);
    }
    45% {
        box-shadow:
            0 4px 6px -1px rgba(15, 23, 42, 0.06),
            0 16px 40px -8px rgba(15, 23, 42, 0.18),
            0 0 0 6px transparent;
    }
}

html.dark .pulse-notify {
    background: rgba(30, 41, 59, 0.92);
    border-color: rgba(51, 65, 85, 0.9);
    box-shadow:
        0 4px 6px -1px rgba(0, 0, 0, 0.25),
        0 20px 48px -12px rgba(0, 0, 0, 0.55),
        0 0 0 1px rgba(255, 255, 255, 0.04) inset;
}

html.dark .pulse-notify__msg {
    color: #e2e8f0;
}

html.dark .pulse-notify__close {
    color: #64748b;
}

html.dark .pulse-notify__close:hover {
    background: rgba(255, 255, 255, 0.08);
    color: #f1f5f9;
}

html.dark .pulse-notify__progress-track {
    background: rgba(0, 0, 0, 0.25);
}

@media (prefers-reduced-motion: reduce) {
    .pulse-notify,
    .pulse-notify.is-visible,
    .pulse-notify.is-leaving {
        transition: opacity 0.15s ease;
        transform: none;
        animation: none;
    }

    .pulse-notify__icon {
        animation: none;
    }

    .pulse-notify__progress {
        display: none;
    }
}

/* ========== Drawer lateral (cadastro empresa) ========== */
html.pulse-drawer-open {
    overflow: hidden;
}

.pulse-drawer {
    position: fixed;
    inset: 0;
    z-index: 10050;
    pointer-events: none;
}

.pulse-drawer.is-open {
    pointer-events: auto;
}

.pulse-drawer__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, 0.5);
    opacity: 0;
    transition: opacity 0.25s ease;
    cursor: pointer;
}

.pulse-drawer.is-open .pulse-drawer__backdrop {
    opacity: 1;
}

.pulse-drawer__panel {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(440px, 100vw);
    max-width: 100%;
    background: var(--pulse-card);
    border-left: 1px solid var(--pulse-border);
    box-shadow: -12px 0 40px rgba(15, 23, 42, 0.12);
    display: flex;
    flex-direction: column;
    transform: translateX(100%);
    transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
    font-family: 'Inter', system-ui, sans-serif;
}

.pulse-drawer.is-open .pulse-drawer__panel {
    transform: translateX(0);
}

.pulse-drawer__panel--wide {
    width: min(960px, 100vw);
}

.pulse-drawer__panel--perfil {
    width: min(720px, 100vw);
}

.pulse-drawer__panel--empresa {
    width: min(620px, 100vw);
}

#pulse-empresa-drawer .pulse-drawer__body {
    padding: 1.35rem 1.5rem;
}

#pulse-empresa-drawer .pulse-drawer__form .input,
#pulse-empresa-drawer .pulse-drawer__form .textarea,
#pulse-empresa-drawer .pulse-drawer__form .select select {
    font-size: 0.95rem;
}

#pulse-empresa-drawer .pulse-drawer__form .label {
    font-size: 0.88rem;
}

/* ===========================================================================
 * Configurações → Comercial (CRUD lista + form dentro do drawer)
 * =========================================================================== */
.pulse-comercial-shell {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.pulse-comercial-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem;
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 0.75rem;
}
.pulse-comercial-toolbar__search {
    position: relative;
    flex: 1 1 240px;
    min-width: 200px;
}
.pulse-comercial-toolbar__search i {
    position: absolute;
    left: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
    color: #9ca3af;
    pointer-events: none;
}
.pulse-comercial-toolbar__search input {
    width: 100%;
    padding: 0.5rem 0.75rem 0.5rem 2.25rem;
    border: 1px solid #d1d5db;
    border-radius: 0.5rem;
    background: #fff;
    font-size: 0.875rem;
    line-height: 1.25;
}
.pulse-comercial-toolbar__search input:focus {
    outline: 2px solid var(--pulse-primary, #eb4910);
    outline-offset: -1px;
}
.pulse-comercial-toolbar__filter {
    padding: 0.5rem 0.75rem;
    border: 1px solid #d1d5db;
    border-radius: 0.5rem;
    background: #fff;
    font-size: 0.875rem;
    line-height: 1.25;
}
.pulse-comercial-list {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 0.75rem;
    overflow: hidden;
}
.pulse-comercial-empty {
    padding: 2rem 1rem;
    text-align: center;
    color: #6b7280;
    font-size: 0.875rem;
}
.pulse-comercial-empty--err {
    color: #b91c1c;
    background: #fef2f2;
}
.pulse-comercial-table-wrap {
    width: 100%;
    overflow-x: auto;
}
.pulse-comercial-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.875rem;
}
.pulse-comercial-table thead th {
    text-align: left;
    padding: 0.625rem 0.75rem;
    background: #f9fafb;
    color: #374151;
    font-weight: 600;
    border-bottom: 1px solid #e5e7eb;
    position: sticky;
    top: 0;
    z-index: 1;
}
.pulse-comercial-table tbody td {
    padding: 0.625rem 0.75rem;
    border-bottom: 1px solid #f1f5f9;
    color: #1f2937;
    cursor: pointer;
}
.pulse-comercial-table tbody tr:hover td {
    background: #f3f4f6;
}
.pulse-comercial-table__actions {
    width: 1%;
    white-space: nowrap;
    cursor: default !important;
}
.pulse-comercial-table__actions .pulse-btn {
    padding: 0.25rem 0.5rem;
}
.pulse-comercial-cell-empresa {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}
.pulse-comercial-cell-empresa small {
    color: #6b7280;
    font-size: 0.75rem;
}

.pulse-comercial-form {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 0.75rem;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.pulse-comercial-form__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem 1rem;
}
.pulse-comercial-form__col-span-2 {
    grid-column: span 2;
}
.pulse-comercial-form__col-span-3 {
    grid-column: 1 / -1;
}
.pulse-comercial-form__row--unidade {
    grid-column: 1 / -1;
    padding-bottom: 0.5rem;
    border-bottom: 1px dashed #e5e7eb;
}
.pulse-comercial-form__footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
    padding-top: 0.5rem;
    border-top: 1px solid #f1f5f9;
}
.pulse-comercial-form__actions {
    display: flex;
    gap: 0.5rem;
}
@media (max-width: 640px) {
    .pulse-comercial-form__grid {
        grid-template-columns: 1fr;
    }
    .pulse-comercial-form__col-span-2,
    .pulse-comercial-form__col-span-3 {
        grid-column: 1 / -1;
    }
}

/* pulse-field reuse for simple labelled inputs (já existem variantes globais; reforço local) */
.pulse-comercial-form .pulse-field {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-size: 0.875rem;
}
.pulse-comercial-form .pulse-field__label {
    color: #374151;
    font-weight: 500;
    font-size: 0.8125rem;
}
.pulse-comercial-form .pulse-field input,
.pulse-comercial-form .pulse-field select,
.pulse-comercial-form .pulse-field textarea {
    padding: 0.5rem 0.75rem;
    border: 1px solid #d1d5db;
    border-radius: 0.5rem;
    font-size: 0.875rem;
    background: #fff;
}
.pulse-comercial-form .pulse-field input:focus,
.pulse-comercial-form .pulse-field select:focus,
.pulse-comercial-form .pulse-field textarea:focus {
    outline: 2px solid var(--pulse-primary, #eb4910);
    outline-offset: -1px;
}
.pulse-comercial-form .pulse-field--inline {
    flex-direction: row;
    align-items: center;
    gap: 0.5rem;
}

.pulse-field__hint {
    display: block;
    margin-top: 0.25rem;
    font-size: 0.75rem;
    color: #6b7280;
}

/* CEP: indicador visual durante consulta ViaCEP */
.pulse-comercial-form input[name="endereco_cep"][aria-busy="true"],
.pulse-comercial-form input[name="cep"][aria-busy="true"] {
    background-image: linear-gradient(90deg, transparent, rgba(234, 88, 12, 0.18), transparent);
    background-size: 200% 100%;
    background-repeat: no-repeat;
    background-position: 200% 0;
    animation: pulseCepShimmer 1.2s ease-in-out infinite;
}
@keyframes pulseCepShimmer {
    0%   { background-position:  200% 0; }
    100% { background-position: -200% 0; }
}

/* --- Cabeçalhos de secção dentro do form comercial --- */
.pulse-comercial-form__section {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0.5rem 0 0.25rem;
    padding-bottom: 0.4rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #1f2937;
    border-bottom: 1px solid #e5e7eb;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}
.pulse-comercial-form__section i {
    color: var(--pulse-orange-dark, #c2410c);
    font-size: 0.875rem;
}
.pulse-comercial-form__section:first-child {
    margin-top: 0;
}
html.dark .pulse-comercial-form__section {
    color: #e2e8f0;
    border-bottom-color: var(--pulse-border);
}
html.dark .pulse-comercial-form__section i {
    color: #fdba74;
}

/* --- Parcelas dinâmicas (Pagamento Venda) --- */
.pulse-parcelas {
    border: 1px dashed #d1d5db;
    border-radius: 0.75rem;
    padding: 0.75rem 1rem 1rem;
    background: rgba(249, 250, 251, 0.6);
}
.pulse-parcelas__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-bottom: 0.5rem;
}
.pulse-parcelas__title {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    font-size: 0.9rem;
    font-weight: 600;
    color: #374151;
}
.pulse-parcelas__header-actions {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
}
.pulse-parcelas__soma {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.75rem;
    border-radius: 9999px;
    font-size: 0.8125rem;
    font-weight: 600;
    background: #f3f4f6;
    color: #4b5563;
    border: 1px solid #e5e7eb;
}
.pulse-parcelas__soma.is-ok {
    background: #dcfce7;
    color: #166534;
    border-color: #bbf7d0;
}
.pulse-parcelas__soma.is-err {
    background: #fee2e2;
    color: #b91c1c;
    border-color: #fecaca;
}
.pulse-parcelas__list {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}
.pulse-parcelas__row {
    display: grid;
    grid-template-columns: auto 1fr 1fr auto;
    align-items: end;
    gap: 0.5rem 0.75rem;
    padding: 0.5rem 0.75rem;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 0.5rem;
}
.pulse-parcelas__numero {
    align-self: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    background: var(--pulse-orange-soft, rgba(234, 88, 12, 0.12));
    color: var(--pulse-orange-dark, #c2410c);
    border-radius: 9999px;
    font-weight: 700;
    font-size: 0.75rem;
}
.pulse-parcelas__row .pulse-field {
    gap: 0.125rem;
}
.pulse-parcelas__row .pulse-field input {
    padding: 0.375rem 0.5rem;
    font-size: 0.875rem;
}
.pulse-parcelas__remove {
    align-self: center;
    padding: 0.375rem 0.5rem;
}
.pulse-parcelas__hint {
    margin: 0.5rem 0 0;
    color: #6b7280;
    font-size: 0.75rem;
}
@media (max-width: 600px) {
    .pulse-parcelas__row {
        grid-template-columns: auto 1fr auto;
    }
    .pulse-parcelas__row .pulse-field:nth-of-type(2) {
        grid-column: 1 / -1;
    }
}

/* Dark mode para parcelas */
html.dark .pulse-parcelas {
    border-color: var(--pulse-border);
    background: rgba(15, 23, 42, 0.4);
}
html.dark .pulse-parcelas__title {
    color: #cbd5e1;
}
html.dark .pulse-parcelas__soma {
    background: rgba(15, 23, 42, 0.7);
    border-color: var(--pulse-border);
    color: #e2e8f0;
}
html.dark .pulse-parcelas__soma.is-ok {
    background: rgba(22, 101, 52, 0.35);
    color: #bbf7d0;
    border-color: rgba(34, 197, 94, 0.4);
}
html.dark .pulse-parcelas__soma.is-err {
    background: rgba(185, 28, 28, 0.3);
    color: #fecaca;
    border-color: rgba(239, 68, 68, 0.4);
}
html.dark .pulse-parcelas__row {
    background: var(--pulse-card);
    border-color: var(--pulse-border);
}
html.dark .pulse-parcelas__hint {
    color: var(--pulse-muted);
}
html.dark .pulse-field__hint {
    color: var(--pulse-muted);
}

/* --- Modo escuro: parâmetros comerciais (drawers em Configurações) --- */
html.dark .pulse-comercial-toolbar {
    background: rgba(15, 23, 42, 0.6);
    border-color: var(--pulse-border);
}

html.dark .pulse-comercial-toolbar__search input,
html.dark .pulse-comercial-toolbar__filter {
    background: var(--pulse-bg);
    border-color: var(--pulse-border);
    color: var(--pulse-text);
}

html.dark .pulse-comercial-toolbar__search i {
    color: var(--pulse-muted);
}

html.dark .pulse-comercial-list {
    background: var(--pulse-card);
    border-color: var(--pulse-border);
}

html.dark .pulse-comercial-empty {
    color: var(--pulse-muted);
}

html.dark .pulse-comercial-empty--err {
    color: #fca5a5;
    background: rgba(127, 29, 29, 0.35);
}

html.dark .pulse-comercial-table thead th {
    background: rgba(15, 23, 42, 0.85);
    color: #e2e8f0;
    border-bottom-color: var(--pulse-border);
}

html.dark .pulse-comercial-table tbody td {
    color: #e2e8f0;
    border-bottom-color: rgba(51, 65, 85, 0.6);
}

html.dark .pulse-comercial-table tbody tr:hover td {
    background: rgba(234, 88, 12, 0.08);
}

html.dark .pulse-comercial-cell-empresa small {
    color: var(--pulse-muted);
}

html.dark .pulse-comercial-form {
    background: var(--pulse-card);
    border-color: var(--pulse-border);
}

html.dark .pulse-comercial-form__row--unidade {
    border-bottom-color: var(--pulse-border);
}

html.dark .pulse-comercial-form__footer {
    border-top-color: var(--pulse-border);
}

html.dark .pulse-comercial-form .pulse-field__label {
    color: #cbd5e1;
}

html.dark .pulse-comercial-form .pulse-field input,
html.dark .pulse-comercial-form .pulse-field select,
html.dark .pulse-comercial-form .pulse-field textarea {
    background: var(--pulse-bg);
    border-color: var(--pulse-border);
    color: var(--pulse-text);
}

html.dark .pulse-comercial-form .pulse-field input::placeholder,
html.dark .pulse-comercial-form .pulse-field textarea::placeholder {
    color: rgba(148, 163, 184, 0.75);
}

html.dark .pulse-comercial-form .pulse-field input:focus,
html.dark .pulse-comercial-form .pulse-field select:focus,
html.dark .pulse-comercial-form .pulse-field textarea:focus {
    outline-color: var(--pulse-orange, #f97316);
}

html.dark .pulse-comercial-form .pulse-field input:disabled,
html.dark .pulse-comercial-form .pulse-field select:disabled,
html.dark .pulse-comercial-form .pulse-field textarea:disabled {
    background: rgba(15, 23, 42, 0.5);
    color: var(--pulse-muted);
}

html.dark .pulse-comercial-form .pulse-field select option {
    background: var(--pulse-card);
    color: var(--pulse-text);
}

.pulse-drawer__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px;
    border-bottom: 1px solid var(--pulse-border);
    flex-shrink: 0;
}

.pulse-drawer__title {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--pulse-text);
}

.pulse-drawer__close {
    border: none;
    background: transparent;
    color: var(--pulse-muted);
    width: 40px;
    height: 40px;
    border-radius: 10px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
}

.pulse-drawer__close:hover {
    background: var(--pulse-orange-soft);
    color: var(--pulse-orange);
}

.pulse-drawer__body {
    padding: 18px;
    overflow-y: auto;
    flex: 1;
}

.pulse-drawer__errors .notification {
    margin-bottom: 0.5rem;
}

.pulse-drawer__actions {
    margin-top: 0.5rem;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
}

/* Form unidades (filial) no drawer */
.pulse-filial-form .field {
    margin-bottom: 0.85rem;
}

.pulse-filial-form .field:last-of-type {
    margin-bottom: 0;
}

.pulse-filial-form .help {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    max-width: 100%;
}

.pulse-filial-form__check {
    display: flex !important;
    align-items: flex-start;
    gap: 0.5rem;
    line-height: 1.4;
    white-space: normal;
}

.pulse-filial-form__check input[type='checkbox'] {
    flex-shrink: 0;
    margin-top: 0.15rem;
}

/* Switch toggle (formulários) */
.pulse-switch {
    display: inline-flex;
    align-items: center;
    gap: 0.65rem;
    cursor: pointer;
    user-select: none;
    color: var(--pulse-text);
}

.pulse-switch__input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    pointer-events: none;
}

.pulse-switch__track {
    position: relative;
    flex-shrink: 0;
    width: 2.5rem;
    height: 1.35rem;
    border-radius: 999px;
    background: color-mix(in srgb, var(--pulse-text) 18%, var(--pulse-card) 82%);
    border: 1px solid var(--pulse-border);
    transition: background 0.18s ease, border-color 0.18s ease;
}

.pulse-switch__track::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: calc(1.35rem - 6px);
    height: calc(1.35rem - 6px);
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.25);
    transition: transform 0.18s ease;
}

.pulse-switch__input:checked + .pulse-switch__track {
    background: var(--pulse-primary, #eb4910);
    border-color: var(--pulse-primary, #eb4910);
}

.pulse-switch__input:checked + .pulse-switch__track::after {
    transform: translateX(1.15rem);
}

.pulse-switch__input:focus-visible + .pulse-switch__track {
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--pulse-primary, #eb4910) 28%, transparent);
}

.pulse-switch__label {
    font-size: 0.875rem;
    line-height: 1.35;
}

.pulse-unidade-medica-panel[hidden] {
    display: none !important;
}

.pulse-unidade-medica-section {
    border: 1px solid var(--pulse-border);
    border-radius: 12px;
    padding: 1rem 1.1rem;
    background: color-mix(in srgb, var(--pulse-primary, #eb4910) 4%, var(--pulse-card) 96%);
}

.pulse-unidade-medica-section__title {
    margin: 0 0 0.85rem;
    font-size: 0.95rem;
    font-weight: 800;
    color: var(--pulse-text);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.pulse-unidade-medica-section__title i {
    color: var(--pulse-primary, #eb4910);
}

.pulse-unidade-medica-rows {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.pulse-unidade-medica-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.65rem 1rem;
}

.pulse-unidade-medica-row__switch {
    flex: 0 0 auto;
}

.pulse-unidade-medica-row__field {
    flex: 1 1 14rem;
    min-width: min(100%, 14rem);
    max-width: 22rem;
}

.pulse-unidade-medica-row__field[hidden] {
    display: none !important;
}

.pulse-unidade-medica-inline-field {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
}

.pulse-unidade-medica-inline-field__label {
    flex-shrink: 0;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--pulse-muted);
    min-width: 4.5rem;
}

.pulse-unidade-medica-inline-field__input {
    flex: 1 1 5rem;
    min-width: 0;
    padding: 0.45rem 0.65rem;
    font-size: 0.875rem;
    border: 1px solid var(--pulse-border);
    border-radius: 8px;
    background: var(--pulse-card);
    color: var(--pulse-text);
}

.pulse-unidade-medica-inline-field__input--wide {
    flex: 1 1 12rem;
}

.pulse-unidade-medica-inline-field__input:focus {
    outline: none;
    border-color: var(--pulse-primary, #eb4910);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--pulse-primary, #eb4910) 22%, transparent);
}

.pulse-unidade-medica-inline-field__suffix {
    flex-shrink: 0;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--pulse-muted);
}

html.dark .pulse-switch__track {
    background: rgba(51, 65, 85, 0.85);
    border-color: #475569;
}

html.dark .pulse-switch__input:checked + .pulse-switch__track {
    background: var(--pulse-primary, #fb923c);
    border-color: var(--pulse-primary, #fb923c);
}

html.dark .pulse-unidade-medica-section {
    background: rgba(30, 41, 59, 0.65);
    border-color: #334155;
}

.pulse-filial-form__footer {
    margin-top: 1rem;
    padding-top: 0.5rem;
    border-top: 1px solid var(--pulse-border);
}

html.dark .pulse-filial-form__footer {
    border-top-color: #334155;
}

html.dark .pulse-filial-form .help {
    color: #94a3b8;
}

html.dark .pulse-filial-form--view .pulse-filial-form__check span {
    color: #e2e8f0;
}

html.dark .pulse-drawer__panel {
    background: var(--pulse-card);
    border-left-color: var(--pulse-border);
    box-shadow: -12px 0 48px rgba(0, 0, 0, 0.5);
}

html.dark .pulse-drawer__title {
    color: #f1f5f9;
}

html.dark .pulse-drawer__header {
    border-bottom-color: #334155;
}

.pulse-drawer__details {
    border: 1px solid var(--pulse-border);
    border-radius: 10px;
    padding: 0 12px 10px;
    background: rgba(249, 250, 251, 0.6);
}

html.dark .pulse-drawer__details {
    background: rgba(30, 41, 59, 0.45);
    border-color: #334155;
}

.pulse-drawer__summary {
    cursor: pointer;
    font-weight: 600;
    font-size: 0.9rem;
    padding: 10px 0 6px;
    color: var(--pulse-text);
    list-style: none;
}

.pulse-drawer__summary::-webkit-details-marker {
    display: none;
}

.pulse-drawer__summary::before {
    content: '\25B8';
    display: inline-block;
    margin-right: 8px;
    transition: transform 0.15s ease;
    color: var(--pulse-orange);
}

.pulse-drawer__details[open] .pulse-drawer__summary::before {
    transform: rotate(90deg);
}

html.dark .pulse-drawer__summary {
    color: #e2e8f0;
}

.pulse-config-helena__hero {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.85rem;
    align-items: center;
    margin-bottom: 1rem;
    padding: 1rem;
    border: 1px solid color-mix(in srgb, var(--pulse-orange) 28%, var(--pulse-border));
    border-radius: 0.75rem;
    background: color-mix(in srgb, var(--pulse-orange) 8%, var(--pulse-card));
}

.pulse-config-helena__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 0.7rem;
    background: var(--pulse-orange);
    color: #fff;
    box-shadow: 0 14px 30px color-mix(in srgb, var(--pulse-orange) 28%, transparent);
}

.pulse-config-helena__hero strong {
    display: block;
    color: var(--pulse-text);
    font-size: 1rem;
    font-weight: 800;
    margin-bottom: 0.2rem;
}

.pulse-config-helena__hero p {
    margin: 0;
    color: var(--pulse-muted);
    font-size: 0.85rem;
    line-height: 1.45;
}

.pulse-config-helena__hero code,
.pulse-config-helena__field code {
    padding: 0.05rem 0.3rem;
    border-radius: 0.35rem;
    background: color-mix(in srgb, var(--pulse-orange) 12%, transparent);
    color: var(--pulse-text);
    font-size: 0.82em;
}

.pulse-config-helena__details {
    padding-bottom: 12px;
}

.pulse-config-helena__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.pulse-config-helena__field {
    margin: 0;
}

.pulse-config-helena__field--full {
    grid-column: 1 / -1;
}

.pulse-config-helena__field .input {
    min-height: 2.75rem;
}

.pulse-config-helena__field .help {
    margin-top: 0.4rem;
    color: var(--pulse-muted);
    line-height: 1.35;
}

.pulse-config-helena__unit {
    pointer-events: none;
    color: var(--pulse-muted);
    font-weight: 800;
}

.pulse-config-helena__note {
    display: flex;
    gap: 0.65rem;
    align-items: flex-start;
    grid-column: 1 / -1;
    padding: 0.8rem 0.9rem;
    border: 1px solid var(--pulse-border);
    border-radius: 0.65rem;
    background: var(--pulse-card);
    color: var(--pulse-muted);
    font-size: 0.84rem;
    line-height: 1.4;
}

.pulse-config-helena__note i {
    margin-top: 0.12rem;
    color: var(--pulse-orange);
}

.pulse-config-helena__actions {
    padding-top: 0.9rem;
    border-top: 1px solid var(--pulse-border);
}

html.dark .pulse-config-helena__hero {
    background: color-mix(in srgb, var(--pulse-orange) 10%, var(--pulse-card));
}

html.dark .pulse-config-helena__note {
    background: rgba(15, 23, 42, 0.35);
}

@media (max-width: 720px) {
    .pulse-config-helena__grid {
        grid-template-columns: 1fr;
    }
}

.pulse-candidatos-filtros {
    background: var(--pulse-card);
    border: 1px solid var(--pulse-border);
    border-radius: 1rem;
    padding: 1rem 1.1rem;
    color: var(--pulse-text);
}

html.dark .pulse-candidatos-filtros a.has-text-link {
    color: #7dd3fc !important;
}

html.dark .pulse-candidatos-filtros a.has-text-link:hover {
    color: #bae6fd !important;
}

.pulse-candidatos-filtros__row {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr auto;
    gap: 0.75rem;
    align-items: end;
}

@media (max-width: 1100px) {
    .pulse-candidatos-filtros__row {
        grid-template-columns: 1fr 1fr;
    }

    .pulse-candidatos-filtros__busca {
        grid-column: 1 / -1;
    }

    .pulse-candidatos-filtros__btn {
        grid-column: 1 / -1;
    }
}

/* Solicitações (Pulse Control) */
.pulse-sol-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 1.5rem;
}

@media (max-width: 1024px) {
    .pulse-sol-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 520px) {
    .pulse-sol-stats {
        grid-template-columns: 1fr;
    }
}

.pulse-sol-stat {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    padding: 1rem 1.1rem;
    border-radius: 14px;
    border: 1px solid var(--pulse-border);
    background: var(--pulse-card);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.pulse-sol-stat__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 11px;
    font-size: 1rem;
    color: var(--pulse-primary, #eb4910);
    background: color-mix(in srgb, var(--pulse-primary, #eb4910) 12%, var(--pulse-card) 88%);
}

.pulse-sol-stat__body {
    min-width: 0;
}

.pulse-sol-stat__label {
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--pulse-muted);
    margin-bottom: 0.15rem;
}

.pulse-sol-stat__value {
    display: block;
    font-size: 1.65rem;
    font-weight: 800;
    line-height: 1.1;
    color: var(--pulse-text);
}

.pulse-sol-stat--pending .pulse-sol-stat__icon {
    color: #b45309;
    background: rgba(245, 158, 11, 0.14);
}

.pulse-sol-stat--progress .pulse-sol-stat__icon {
    color: #0369a1;
    background: rgba(14, 165, 233, 0.14);
}

.pulse-sol-stat--done .pulse-sol-stat__icon {
    color: #15803d;
    background: rgba(34, 197, 94, 0.14);
}

.pulse-sol-badge,
.pulse-sol-priority,
.pulse-sol-tipo {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.22rem 0.55rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
    border: 1px solid transparent;
}

.pulse-sol-badge--pendente {
    color: #92400e;
    background: rgba(245, 158, 11, 0.14);
    border-color: rgba(245, 158, 11, 0.25);
}

.pulse-sol-badge--em_andamento {
    color: #075985;
    background: rgba(14, 165, 233, 0.14);
    border-color: rgba(14, 165, 233, 0.25);
}

.pulse-sol-badge--aceito {
    color: #4338ca;
    background: rgba(99, 102, 241, 0.14);
    border-color: rgba(99, 102, 241, 0.25);
}

.pulse-sol-badge--finalizado {
    color: #166534;
    background: rgba(34, 197, 94, 0.14);
    border-color: rgba(34, 197, 94, 0.25);
}

.pulse-sol-badge--recusado {
    color: #991b1b;
    background: rgba(239, 68, 68, 0.12);
    border-color: rgba(239, 68, 68, 0.25);
}

.pulse-sol-badge--cancelado {
    color: #475569;
    background: rgba(100, 116, 139, 0.12);
    border-color: rgba(100, 116, 139, 0.22);
}

.pulse-sol-priority--baixa {
    color: #475569;
    background: rgba(100, 116, 139, 0.12);
    border-color: rgba(100, 116, 139, 0.22);
}

.pulse-sol-priority--normal {
    color: #075985;
    background: rgba(14, 165, 233, 0.12);
    border-color: rgba(14, 165, 233, 0.22);
}

.pulse-sol-priority--alta {
    color: #c2410c;
    background: rgba(249, 115, 22, 0.12);
    border-color: rgba(249, 115, 22, 0.25);
}

.pulse-sol-priority--urgente {
    color: #991b1b;
    background: rgba(239, 68, 68, 0.12);
    border-color: rgba(239, 68, 68, 0.25);
}

.pulse-sol-tipo--inclusao {
    color: #166534;
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.22);
}

.pulse-sol-tipo--alteracao {
    color: #4338ca;
    background: rgba(99, 102, 241, 0.1);
    border-color: rgba(99, 102, 241, 0.22);
}

.pulse-sol-tipo--remocao {
    color: #991b1b;
    background: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.22);
}

.pulse-sol-code {
    display: inline-flex;
    padding: 0.15rem 0.45rem;
    border-radius: 6px;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--pulse-muted);
    background: color-mix(in srgb, var(--pulse-muted) 8%, var(--pulse-card) 92%);
    border: 1px solid var(--pulse-border);
}

.pulse-sol-assunto {
    display: block;
    max-width: 18rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 600;
    color: var(--pulse-text);
}

.pulse-sol-assunto:hover {
    color: var(--pulse-primary, #eb4910);
}

.pulse-sol-table-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
    align-items: center;
    white-space: nowrap;
}

.pulse-sol-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.75fr) minmax(16rem, 1fr);
    gap: 1.25rem;
    align-items: start;
}

@media (max-width: 960px) {
    .pulse-sol-layout {
        grid-template-columns: 1fr;
    }
}

.pulse-sol-panel {
    border: 1px solid var(--pulse-border);
    border-radius: 14px;
    background: var(--pulse-card);
    overflow: hidden;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.pulse-sol-panel + .pulse-sol-panel {
    margin-top: 1.25rem;
}

.pulse-sol-panel__head {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.85rem 1.15rem;
    border-bottom: 1px solid var(--pulse-border);
    background: color-mix(in srgb, var(--pulse-primary, #eb4910) 4%, var(--pulse-card) 96%);
}

.pulse-sol-panel__head h2 {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 800;
    color: var(--pulse-text);
}

.pulse-sol-panel__head i {
    color: var(--pulse-primary, #eb4910);
    font-size: 0.9rem;
}

.pulse-sol-panel__body {
    padding: 1.15rem;
}

.pulse-sol-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem 1.25rem;
}

@media (max-width: 640px) {
    .pulse-sol-meta {
        grid-template-columns: 1fr;
    }
}

.pulse-sol-meta__item dt {
    margin: 0 0 0.15rem;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--pulse-muted);
}

.pulse-sol-meta__item dd {
    margin: 0;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--pulse-text);
    word-break: break-word;
}

.pulse-sol-desc {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px dashed var(--pulse-border);
}

.pulse-sol-desc__label {
    display: block;
    margin-bottom: 0.45rem;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--pulse-muted);
}

.pulse-sol-desc__box {
    padding: 0.85rem 1rem;
    border-radius: 10px;
    border: 1px solid var(--pulse-border);
    background: color-mix(in srgb, var(--pulse-muted) 4%, var(--pulse-card) 96%);
    font-size: 0.88rem;
    line-height: 1.55;
    white-space: pre-wrap;
    color: var(--pulse-text);
}

.pulse-sol-thread {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1.15rem;
}

.pulse-sol-thread__item {
    display: flex;
    gap: 0.75rem;
    align-items: flex-start;
}

.pulse-sol-thread__avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 2.1rem;
    height: 2.1rem;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 800;
    color: #4338ca;
    background: rgba(99, 102, 241, 0.14);
}

.pulse-sol-thread__bubble {
    flex: 1;
    min-width: 0;
    padding: 0.75rem 0.9rem;
    border-radius: 12px;
    border: 1px solid var(--pulse-border);
    background: color-mix(in srgb, var(--pulse-muted) 4%, var(--pulse-card) 96%);
}

.pulse-sol-thread__head {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.35rem 0.75rem;
    margin-bottom: 0.35rem;
}

.pulse-sol-thread__author {
    font-size: 0.84rem;
    font-weight: 800;
    color: var(--pulse-text);
}

.pulse-sol-thread__time {
    font-size: 0.72rem;
    color: var(--pulse-muted);
}

.pulse-sol-thread__text {
    font-size: 0.86rem;
    line-height: 1.5;
    white-space: pre-wrap;
    color: var(--pulse-text);
}

.pulse-sol-empty {
    padding: 2rem 1rem;
    text-align: center;
    color: var(--pulse-muted);
    font-size: 0.88rem;
}

.pulse-sol-empty i {
    display: block;
    font-size: 1.75rem;
    opacity: 0.35;
    margin-bottom: 0.55rem;
}

.pulse-sol-control {
    display: flex;
    flex-direction: column;
    gap: 1.15rem;
}

.pulse-sol-control__block {
    padding-bottom: 1.15rem;
    border-bottom: 1px dashed var(--pulse-border);
}

.pulse-sol-control__block:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.pulse-sol-form-card {
    border: 1px solid var(--pulse-border);
    border-radius: 14px;
    background: var(--pulse-card);
    overflow: hidden;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.pulse-sol-form-card__body {
    padding: 1.25rem 1.35rem;
}

.pulse-sol-form-card__footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 1rem 1.35rem;
    border-top: 1px solid var(--pulse-border);
    background: color-mix(in srgb, var(--pulse-muted) 3%, var(--pulse-card) 97%);
}

.pulse-sol-header-badges {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.45rem;
    margin-top: 0.35rem;
}

/* Detalhe da solicitação */
.pulse-sol-detail-hero {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem 1.25rem;
    margin-bottom: 1.25rem;
    padding: 1.25rem 1.35rem;
    border: 1px solid var(--pulse-border);
    border-radius: 16px;
    background: var(--pulse-card);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
    border-left-width: 4px;
    border-left-style: solid;
}

.pulse-sol-detail-hero--pendente { border-left-color: #f59e0b; }
.pulse-sol-detail-hero--em_andamento { border-left-color: #0ea5e9; }
.pulse-sol-detail-hero--aceito { border-left-color: #6366f1; }
.pulse-sol-detail-hero--finalizado { border-left-color: #22c55e; }
.pulse-sol-detail-hero--recusado { border-left-color: #ef4444; }
.pulse-sol-detail-hero--cancelado { border-left-color: #64748b; }

.pulse-sol-detail-hero__main {
    min-width: 0;
    flex: 1;
}

.pulse-sol-detail-hero__eyebrow {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 0.55rem;
}

.pulse-sol-detail-hero__title {
    margin: 0 0 0.55rem;
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1.3;
    color: var(--pulse-text);
}

.pulse-sol-detail-hero__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem 1.1rem;
    margin: 0;
    font-size: 0.84rem;
    color: var(--pulse-muted);
}

.pulse-sol-detail-hero__meta span {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.pulse-sol-detail-hero__meta i {
    opacity: 0.75;
    font-size: 0.78rem;
}

.pulse-sol-detail-hero__actions {
    flex-shrink: 0;
}

.pulse-sol-facts {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
    gap: 0.75rem;
    margin-bottom: 1.25rem;
}

.pulse-sol-fact {
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;
    padding: 0.85rem 0.95rem;
    border: 1px solid var(--pulse-border);
    border-radius: 12px;
    background: var(--pulse-card);
}

.pulse-sol-fact__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 2rem;
    height: 2rem;
    border-radius: 9px;
    font-size: 0.82rem;
    color: var(--pulse-primary, #eb4910);
    background: color-mix(in srgb, var(--pulse-primary, #eb4910) 10%, var(--pulse-card) 90%);
}

.pulse-sol-fact__label {
    display: block;
    font-size: 0.66rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--pulse-muted);
    margin-bottom: 0.1rem;
}

.pulse-sol-fact__value {
    display: block;
    font-size: 0.88rem;
    font-weight: 700;
    line-height: 1.35;
    color: var(--pulse-text);
    word-break: break-word;
}

.pulse-sol-fact__sub {
    display: block;
    margin-top: 0.2rem;
    font-size: 0.78rem;
    font-weight: 500;
    line-height: 1.35;
    color: var(--pulse-muted);
}

.pulse-sol-layout--detail {
    grid-template-columns: minmax(0, 1.65fr) minmax(17rem, 22rem);
}

.pulse-sol-layout__aside {
    position: sticky;
    top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.pulse-sol-layout__aside .pulse-sol-panel + .pulse-sol-panel {
    margin-top: 0;
}

.pulse-sol-desc__box--plain {
    border: 0;
    padding: 0;
    background: transparent;
    font-size: 0.92rem;
    line-height: 1.6;
}

.pulse-sol-tech-notes .pulse-sol-desc__box {
    margin-top: 0.35rem;
}

.pulse-sol-composer {
    margin-top: 1.15rem;
    padding-top: 1.15rem;
    border-top: 1px dashed var(--pulse-border);
}

.pulse-sol-composer__label {
    display: block;
    margin-bottom: 0.45rem;
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--pulse-text);
}

.pulse-sol-composer__input {
    min-height: 6.5rem;
    resize: vertical;
}

.pulse-sol-composer__actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 0.75rem;
}

.pulse-sol-timeline {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.pulse-sol-timeline__item {
    display: flex;
    gap: 0.7rem;
    align-items: flex-start;
    padding: 0.75rem 0;
    border-bottom: 1px dashed var(--pulse-border);
}

.pulse-sol-timeline__item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.pulse-sol-timeline__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 1.85rem;
    height: 1.85rem;
    border-radius: 999px;
    font-size: 0.72rem;
    color: var(--pulse-primary, #eb4910);
    background: color-mix(in srgb, var(--pulse-primary, #eb4910) 12%, var(--pulse-card) 88%);
    border: 1px solid color-mix(in srgb, var(--pulse-primary, #eb4910) 22%, var(--pulse-border) 78%);
}

.pulse-sol-timeline__body {
    min-width: 0;
    flex: 1;
}

.pulse-sol-timeline__title {
    display: block;
    font-size: 0.84rem;
    font-weight: 800;
    color: var(--pulse-text);
    margin-bottom: 0.15rem;
}

.pulse-sol-timeline__desc {
    margin: 0 0 0.25rem;
    font-size: 0.8rem;
    line-height: 1.45;
    color: var(--pulse-muted);
}

.pulse-sol-timeline__meta {
    display: block;
    font-size: 0.72rem;
    color: var(--pulse-muted);
}

@media (max-width: 960px) {
    .pulse-sol-layout__aside {
        position: static;
    }
}

html.dark .pulse-sol-detail-hero,
html.dark .pulse-sol-fact {
    box-shadow: none;
}

html.dark .pulse-sol-desc__box--plain {
    color: var(--pulse-text);
}

html.dark .pulse-sol-detail-hero__meta {
    color: #94a3b8;
}

html.dark .pulse-sol-fact__icon,
html.dark .pulse-sol-timeline__icon {
    background: color-mix(in srgb, var(--pulse-primary, #eb4910) 18%, #1e293b 82%);
    border-color: #475569;
}

html.dark .pulse-sol-panel,
html.dark .pulse-sol-form-card {
    box-shadow: none;
}

html.dark .pulse-sol-desc__box,
html.dark .pulse-sol-thread__bubble {
    background: color-mix(in srgb, #64748b 8%, #1e293b 92%);
}

html.dark .pulse-sol-thread__avatar {
    color: #c7d2fe;
    background: rgba(99, 102, 241, 0.28);
}

/* Dashboard técnico (Pulse Control) */
.pulse-tecnico-dash-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
    gap: 1.25rem;
    margin-bottom: 1rem;
}

@media (max-width: 960px) {
    .pulse-tecnico-dash-grid {
        grid-template-columns: 1fr;
    }
}

.pulse-tecnico-dash-panel {
    border: 1px solid var(--pulse-border);
    border-radius: 14px;
    background: var(--pulse-card);
    overflow: hidden;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.pulse-tecnico-dash-panel__head {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.85rem 1.15rem;
    border-bottom: 1px solid var(--pulse-border);
    background: color-mix(in srgb, var(--pulse-primary, #eb4910) 4%, var(--pulse-card) 96%);
}

.pulse-tecnico-dash-panel__head h2 {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 800;
    color: var(--pulse-text);
}

.pulse-tecnico-dash-panel__head i {
    color: var(--pulse-primary, #eb4910);
}

.pulse-tecnico-dash-panel__body {
    padding: 1.15rem;
}

.pulse-tecnico-dash-ratings {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.65rem;
}

@media (max-width: 720px) {
    .pulse-tecnico-dash-ratings {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.pulse-tecnico-dash-rating {
    padding: 0.75rem 0.85rem;
    border-radius: 10px;
    border: 1px solid var(--pulse-border);
    background: color-mix(in srgb, var(--pulse-muted) 4%, var(--pulse-card) 96%);
}

.pulse-tecnico-dash-rating--pos {
    border-color: rgba(34, 197, 94, 0.28);
    background: color-mix(in srgb, #22c55e 6%, var(--pulse-card) 94%);
}

.pulse-tecnico-dash-rating--neg {
    border-color: rgba(239, 68, 68, 0.28);
    background: color-mix(in srgb, #ef4444 6%, var(--pulse-card) 94%);
}

.pulse-tecnico-dash-rating__label {
    display: block;
    font-size: 0.66rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--pulse-muted);
    margin-bottom: 0.15rem;
}

.pulse-tecnico-dash-rating__value {
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--pulse-text);
}

.pulse-tecnico-dash-eval-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

.pulse-tecnico-dash-eval {
    display: flex;
    gap: 0.65rem;
    align-items: flex-start;
    padding: 0.65rem 0.75rem;
    border-radius: 10px;
    border: 1px solid var(--pulse-border);
}

.pulse-tecnico-dash-eval__badge {
    flex-shrink: 0;
    padding: 0.2rem 0.5rem;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 700;
    color: #4338ca;
    background: rgba(99, 102, 241, 0.14);
    border: 1px solid rgba(99, 102, 241, 0.25);
}

.pulse-tecnico-dash-eval__body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    font-size: 0.82rem;
}

.pulse-tecnico-dash-eval__body strong {
    color: var(--pulse-text);
}

.pulse-tecnico-dash-eval__body span {
    color: var(--pulse-text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pulse-tecnico-dash-eval__body small {
    color: var(--pulse-muted);
    font-size: 0.72rem;
}

.pulse-tecnico-dash-info {
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.pulse-tecnico-dash-info__row dt {
    margin: 0 0 0.12rem;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--pulse-muted);
}

.pulse-tecnico-dash-info__row dd {
    margin: 0;
    font-size: 0.88rem;
    font-weight: 600;
    color: var(--pulse-text);
    line-height: 1.45;
}

html.dark .pulse-tecnico-dash-panel {
    box-shadow: none;
}

html.dark .pulse-tecnico-dash-rating--pos {
    background: rgba(20, 83, 45, 0.35);
    border-color: rgba(74, 222, 128, 0.35);
}

html.dark .pulse-tecnico-dash-rating--neg {
    background: rgba(127, 29, 29, 0.35);
    border-color: rgba(248, 113, 113, 0.35);
}

html.dark .pulse-tecnico-dash-eval__badge {
    color: #c7d2fe;
    background: rgba(49, 46, 129, 0.55);
    border-color: rgba(129, 140, 248, 0.35);
}

/* ========== Dashboard Operação (/operacao) ========== */
.pulse-operacao-page .pulse-operacao-panel {
    border: 1px solid var(--pulse-border);
    border-radius: 14px;
    background: var(--pulse-card);
    overflow: hidden;
    margin-bottom: 1.5rem;
    box-shadow: 0 4px 6px -1px rgba(15, 23, 42, 0.06);
}

.pulse-operacao-page .pulse-operacao-panel:last-child {
    margin-bottom: 0;
}

.pulse-operacao-grid-2 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

@media (max-width: 1023px) {
    .pulse-operacao-grid-2 {
        grid-template-columns: 1fr;
    }
}

.pulse-operacao-panel__head {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.85rem 1.15rem;
    border-bottom: 2px solid var(--pulse-border);
    background: color-mix(in srgb, var(--pulse-text) 3%, var(--pulse-card) 97%);
}

.pulse-operacao-panel__head h2 {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 800;
    color: var(--pulse-text);
    display: flex;
    align-items: center;
    gap: 0.55rem;
}

.pulse-operacao-panel__head-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 8px;
    font-size: 0.85rem;
    flex-shrink: 0;
}

.pulse-operacao-panel__head--filter {
    border-bottom-color: color-mix(in srgb, var(--pulse-primary, #eb4910) 35%, var(--pulse-border) 65%);
}

.pulse-operacao-panel__head--filter .pulse-operacao-panel__head-icon {
    background: color-mix(in srgb, var(--pulse-primary, #eb4910) 18%, transparent);
    color: var(--pulse-primary, #eb4910);
}

.pulse-operacao-panel__head--emerald {
    border-bottom-color: rgba(34, 197, 94, 0.35);
}

.pulse-operacao-panel__head--emerald .pulse-operacao-panel__head-icon {
    background: rgba(34, 197, 94, 0.15);
    color: #16a34a;
}

.pulse-operacao-panel__head--blue {
    border-bottom-color: rgba(59, 130, 246, 0.35);
}

.pulse-operacao-panel__head--blue .pulse-operacao-panel__head-icon {
    background: rgba(59, 130, 246, 0.15);
    color: #2563eb;
}

.pulse-operacao-panel__head--cyan {
    border-bottom-color: rgba(6, 182, 212, 0.35);
}

.pulse-operacao-panel__head--cyan .pulse-operacao-panel__head-icon {
    background: rgba(6, 182, 212, 0.15);
    color: #0891b2;
}

.pulse-operacao-panel__head--amber {
    border-bottom-color: rgba(245, 158, 11, 0.35);
}

.pulse-operacao-panel__head--amber .pulse-operacao-panel__head-icon {
    background: rgba(245, 158, 11, 0.15);
    color: #d97706;
}

.pulse-operacao-panel__head--violet {
    border-bottom-color: rgba(139, 92, 246, 0.35);
}

.pulse-operacao-panel__head--violet .pulse-operacao-panel__head-icon {
    background: rgba(139, 92, 246, 0.15);
    color: #7c3aed;
}

.pulse-operacao-panel__body {
    padding: 1.15rem;
}

.pulse-operacao-page-title {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--pulse-text);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.pulse-operacao-page-sub {
    font-size: 0.75rem;
    color: var(--pulse-muted);
    margin-left: 3rem;
}

.pulse-operacao-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 700;
    border: 1px solid rgba(34, 197, 94, 0.35);
    background: color-mix(in srgb, #22c55e 8%, var(--pulse-card) 92%);
    color: #15803d;
}

.pulse-operacao-period-btn {
    padding: 0.45rem 0.75rem;
    font-size: 0.75rem;
    border-radius: 8px;
    border: 1px solid var(--pulse-border);
    background: var(--pulse-card);
    color: var(--pulse-text);
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

@media (min-width: 640px) {
    .pulse-operacao-period-btn {
        font-size: 0.875rem;
    }
}

.pulse-operacao-period-btn:hover {
    background: color-mix(in srgb, var(--pulse-text) 4%, var(--pulse-card) 96%);
}

.pulse-operacao-period-btn.is-active {
    background: var(--pulse-primary, #eb4910);
    border-color: var(--pulse-primary, #eb4910);
    color: #fff;
}

.pulse-operacao-field-label {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--pulse-muted);
    margin-bottom: 0.25rem;
}

.pulse-operacao-input,
.pulse-operacao-select {
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
    border: 1px solid var(--pulse-border);
    border-radius: 8px;
    background: var(--pulse-card);
    color: var(--pulse-text);
}

.pulse-operacao-input:focus,
.pulse-operacao-select:focus {
    outline: none;
    border-color: var(--pulse-primary, #eb4910);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--pulse-primary, #eb4910) 22%, transparent);
}

.pulse-operacao-divider {
    border-top: 1px solid var(--pulse-border);
    padding-top: 1rem;
    margin-top: 0.5rem;
}

.pulse-operacao-alert {
    margin-bottom: 1rem;
    padding: 0.85rem 1rem;
    border-left: 4px solid #eab308;
    border-radius: 8px;
    background: color-mix(in srgb, #eab308 10%, var(--pulse-card) 90%);
    color: var(--pulse-text);
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.875rem;
}

.pulse-operacao-alert i {
    color: #ca8a04;
}

.pulse-operacao-progress {
    position: relative;
    width: 100%;
    height: 1.5rem;
    border-radius: 999px;
    background: color-mix(in srgb, var(--pulse-text) 8%, var(--pulse-card) 92%);
    border: 1px solid var(--pulse-border);
    overflow: hidden;
}

.pulse-operacao-progress__label {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.625rem;
    font-weight: 700;
    color: var(--pulse-text);
    padding: 0 0.25rem;
    z-index: 2;
}

.pulse-operacao-progress__meta-line {
    position: absolute;
    top: 0;
    height: 100%;
    width: 2px;
    background: #0ea5e9;
    z-index: 1;
}

.pulse-operacao-metric-value {
    font-size: 2.25rem;
    font-weight: 800;
    line-height: 1.1;
}

.pulse-operacao-metric-value--ok {
    color: #16a34a;
}

.pulse-operacao-metric-value--bad {
    color: #dc2626;
}

.pulse-operacao-metric-value--muted {
    color: var(--pulse-muted);
}

.pulse-operacao-meta-caption {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--pulse-muted);
}

.pulse-operacao-meta-value {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--pulse-text);
}

.pulse-operacao-footnote {
    font-size: 0.68rem;
    color: var(--pulse-muted);
}

.pulse-operacao-aging {
    border-radius: 14px;
    border: 1px solid var(--pulse-border);
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.pulse-operacao-aging--ok {
    border-color: rgba(34, 197, 94, 0.35);
    background: color-mix(in srgb, #22c55e 6%, var(--pulse-card) 94%);
}

.pulse-operacao-aging--bad {
    border-color: rgba(239, 68, 68, 0.35);
    background: color-mix(in srgb, #ef4444 6%, var(--pulse-card) 94%);
}

.pulse-operacao-aging__value--ok {
    color: #15803d;
}

.pulse-operacao-aging__value--bad {
    color: #b91c1c;
}

.pulse-operacao-stat {
    border-radius: 12px;
    border: 1px solid var(--pulse-border);
    padding: 1rem;
    background: color-mix(in srgb, var(--pulse-text) 2%, var(--pulse-card) 98%);
}

.pulse-operacao-stat__label {
    font-size: 0.75rem;
    font-weight: 700;
}

.pulse-operacao-stat__value {
    font-size: 1.875rem;
    font-weight: 800;
    line-height: 1.15;
    margin: 0.15rem 0;
}

.pulse-operacao-stat__hint {
    font-size: 0.68rem;
    opacity: 0.85;
}

.pulse-operacao-stat--violet {
    border-color: rgba(139, 92, 246, 0.35);
    background: color-mix(in srgb, #8b5cf6 7%, var(--pulse-card) 93%);
}

.pulse-operacao-stat--violet .pulse-operacao-stat__label,
.pulse-operacao-stat--violet .pulse-operacao-stat__value,
.pulse-operacao-stat--violet .pulse-operacao-stat__hint {
    color: #6d28d9;
}

.pulse-operacao-stat--rose {
    border-color: rgba(244, 63, 94, 0.35);
    background: color-mix(in srgb, #f43f5e 7%, var(--pulse-card) 93%);
}

.pulse-operacao-stat--rose .pulse-operacao-stat__label,
.pulse-operacao-stat--rose .pulse-operacao-stat__value,
.pulse-operacao-stat--rose .pulse-operacao-stat__hint {
    color: #be123c;
}

.pulse-operacao-stat--sky {
    border-color: rgba(14, 165, 233, 0.35);
    background: color-mix(in srgb, #0ea5e9 7%, var(--pulse-card) 93%);
}

.pulse-operacao-stat--sky .pulse-operacao-stat__label,
.pulse-operacao-stat--sky .pulse-operacao-stat__value,
.pulse-operacao-stat--sky .pulse-operacao-stat__hint {
    color: #0369a1;
}

.pulse-operacao-subpanel {
    border-radius: 12px;
    border: 1px solid var(--pulse-border);
    padding: 1rem;
    background: color-mix(in srgb, var(--pulse-text) 2%, var(--pulse-card) 98%);
}

.pulse-operacao-subpanel--amber {
    border-color: rgba(245, 158, 11, 0.35);
    background: color-mix(in srgb, #f59e0b 5%, var(--pulse-card) 95%);
}

.pulse-operacao-subpanel--emerald {
    border-color: rgba(34, 197, 94, 0.35);
    background: color-mix(in srgb, #22c55e 5%, var(--pulse-card) 95%);
}

.pulse-operacao-subpanel h3 {
    font-size: 0.875rem;
    font-weight: 800;
    color: var(--pulse-text);
    margin: 0 0 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.pulse-operacao-note {
    border-radius: 10px;
    border: 1px solid var(--pulse-border);
    padding: 0.75rem;
    background: var(--pulse-card);
}

.pulse-operacao-note__title {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--pulse-text);
}

.pulse-operacao-note__text {
    margin-top: 0.25rem;
    font-size: 0.75rem;
    color: var(--pulse-muted);
    line-height: 1.45;
}

.pulse-operacao-note__action {
    margin-top: 0.5rem;
    font-size: 0.68rem;
    line-height: 1.45;
}

.pulse-operacao-note--link {
    display: block;
    transition: border-color 0.15s ease, background 0.15s ease;
}

.pulse-operacao-note--link:hover {
    border-color: color-mix(in srgb, var(--pulse-primary, #eb4910) 35%, var(--pulse-border) 65%);
    background: color-mix(in srgb, var(--pulse-text) 3%, var(--pulse-card) 97%);
}

.pulse-operacao-badge {
    flex-shrink: 0;
    font-size: 0.68rem;
    font-weight: 800;
    padding: 0.15rem 0.5rem;
    border-radius: 999px;
    border: 1px solid var(--pulse-border);
    background: color-mix(in srgb, var(--pulse-text) 6%, var(--pulse-card) 94%);
    color: var(--pulse-text);
}

.pulse-operacao-badge--amber {
    border-color: rgba(245, 158, 11, 0.35);
    background: color-mix(in srgb, #f59e0b 14%, var(--pulse-card) 86%);
    color: #b45309;
}

.pulse-operacao-badge--emerald {
    border-color: rgba(34, 197, 94, 0.35);
    background: color-mix(in srgb, #22c55e 14%, var(--pulse-card) 86%);
    color: #15803d;
}

.pulse-operacao-badge--violet {
    border-color: rgba(139, 92, 246, 0.35);
    background: color-mix(in srgb, #8b5cf6 14%, var(--pulse-card) 86%);
    color: #6d28d9;
}

.pulse-operacao-badge--rose {
    border-color: rgba(244, 63, 94, 0.35);
    background: color-mix(in srgb, #f43f5e 14%, var(--pulse-card) 86%);
    color: #be123c;
}

.pulse-operacao-badge--indigo {
    border-color: rgba(99, 102, 241, 0.35);
    background: color-mix(in srgb, #6366f1 14%, var(--pulse-card) 86%);
    color: #4338ca;
}

.pulse-operacao-badge--teal {
    border-color: rgba(20, 184, 166, 0.35);
    background: color-mix(in srgb, #14b8a6 14%, var(--pulse-card) 86%);
    color: #0f766e;
}

.pulse-operacao-badge--orange {
    border-color: rgba(249, 115, 22, 0.35);
    background: color-mix(in srgb, #f97316 14%, var(--pulse-card) 86%);
    color: #c2410c;
}

.pulse-operacao-ticket {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.15rem 0.45rem;
    border-radius: 6px;
    font-size: 0.68rem;
    font-weight: 700;
    border: 1px solid var(--pulse-border);
    background: color-mix(in srgb, var(--pulse-text) 4%, var(--pulse-card) 96%);
    color: var(--pulse-text);
    text-decoration: none;
}

.pulse-operacao-ticket:hover {
    background: color-mix(in srgb, var(--pulse-text) 8%, var(--pulse-card) 92%);
}

.pulse-operacao-ticket--violet {
    border-color: rgba(139, 92, 246, 0.35);
    color: #6d28d9;
}

.pulse-operacao-ticket--sky {
    border-color: rgba(14, 165, 233, 0.35);
    color: #0369a1;
}

.pulse-operacao-ticket--indigo {
    border-color: rgba(99, 102, 241, 0.35);
    color: #4338ca;
}

.pulse-operacao-ticket--orange {
    border-color: rgba(249, 115, 22, 0.35);
    color: #c2410c;
}

.pulse-operacao-helena-warn {
    font-size: 0.875rem;
    padding: 0.65rem 0.85rem;
    border-radius: 8px;
    border: 1px solid rgba(245, 158, 11, 0.35);
    background: color-mix(in srgb, #f59e0b 10%, var(--pulse-card) 90%);
    color: var(--pulse-text);
}

.pulse-operacao-empty {
    font-size: 0.75rem;
    color: var(--pulse-muted);
    font-style: italic;
}

.pulse-operacao-page section > h3 {
    color: var(--pulse-text);
}

html.dark .pulse-operacao-page .pulse-operacao-panel {
    box-shadow: none;
}

html.dark .pulse-operacao-chip {
    color: #86efac;
    background: rgba(20, 83, 45, 0.45);
    border-color: rgba(74, 222, 128, 0.35);
}

html.dark .pulse-operacao-panel__head--emerald .pulse-operacao-panel__head-icon {
    color: #4ade80;
    background: rgba(20, 83, 45, 0.55);
}

html.dark .pulse-operacao-panel__head--blue .pulse-operacao-panel__head-icon {
    color: #93c5fd;
    background: rgba(30, 58, 138, 0.55);
}

html.dark .pulse-operacao-panel__head--cyan .pulse-operacao-panel__head-icon {
    color: #67e8f9;
    background: rgba(22, 78, 99, 0.55);
}

html.dark .pulse-operacao-panel__head--amber .pulse-operacao-panel__head-icon {
    color: #fcd34d;
    background: rgba(120, 53, 15, 0.55);
}

html.dark .pulse-operacao-panel__head--violet .pulse-operacao-panel__head-icon {
    color: #c4b5fd;
    background: rgba(76, 29, 149, 0.55);
}

html.dark .pulse-operacao-metric-value--ok,
html.dark .pulse-operacao-aging__value--ok {
    color: #4ade80;
}

html.dark .pulse-operacao-metric-value--bad,
html.dark .pulse-operacao-aging__value--bad {
    color: #f87171;
}

html.dark .pulse-operacao-aging--ok {
    background: rgba(20, 83, 45, 0.35);
    border-color: rgba(74, 222, 128, 0.35);
}

html.dark .pulse-operacao-aging--bad {
    background: rgba(127, 29, 29, 0.35);
    border-color: rgba(248, 113, 113, 0.35);
}

html.dark .pulse-operacao-stat--violet {
    background: rgba(76, 29, 149, 0.35);
    border-color: rgba(167, 139, 250, 0.35);
}

html.dark .pulse-operacao-stat--violet .pulse-operacao-stat__label,
html.dark .pulse-operacao-stat--violet .pulse-operacao-stat__value,
html.dark .pulse-operacao-stat--violet .pulse-operacao-stat__hint {
    color: #ddd6fe;
}

html.dark .pulse-operacao-stat--rose {
    background: rgba(136, 19, 55, 0.35);
    border-color: rgba(251, 113, 133, 0.35);
}

html.dark .pulse-operacao-stat--rose .pulse-operacao-stat__label,
html.dark .pulse-operacao-stat--rose .pulse-operacao-stat__value,
html.dark .pulse-operacao-stat--rose .pulse-operacao-stat__hint {
    color: #fecdd3;
}

html.dark .pulse-operacao-stat--sky {
    background: rgba(12, 74, 110, 0.35);
    border-color: rgba(56, 189, 248, 0.35);
}

html.dark .pulse-operacao-stat--sky .pulse-operacao-stat__label,
html.dark .pulse-operacao-stat--sky .pulse-operacao-stat__value,
html.dark .pulse-operacao-stat--sky .pulse-operacao-stat__hint {
    color: #bae6fd;
}

html.dark .pulse-operacao-subpanel--amber {
    background: rgba(120, 53, 15, 0.28);
    border-color: rgba(251, 191, 36, 0.35);
}

html.dark .pulse-operacao-subpanel--emerald {
    background: rgba(20, 83, 45, 0.28);
    border-color: rgba(74, 222, 128, 0.35);
}

html.dark .pulse-operacao-badge--amber {
    color: #fde68a;
    background: rgba(120, 53, 15, 0.55);
    border-color: rgba(251, 191, 36, 0.35);
}

html.dark .pulse-operacao-badge--emerald {
    color: #bbf7d0;
    background: rgba(20, 83, 45, 0.55);
    border-color: rgba(74, 222, 128, 0.35);
}

html.dark .pulse-operacao-badge--violet {
    color: #ddd6fe;
    background: rgba(76, 29, 149, 0.55);
    border-color: rgba(167, 139, 250, 0.35);
}

html.dark .pulse-operacao-badge--rose {
    color: #fecdd3;
    background: rgba(136, 19, 55, 0.55);
    border-color: rgba(251, 113, 133, 0.35);
}

html.dark .pulse-operacao-badge--indigo {
    color: #c7d2fe;
    background: rgba(49, 46, 129, 0.55);
    border-color: rgba(129, 140, 248, 0.35);
}

html.dark .pulse-operacao-badge--teal {
    color: #99f6e4;
    background: rgba(19, 78, 74, 0.55);
    border-color: rgba(45, 212, 191, 0.35);
}

html.dark .pulse-operacao-badge--orange {
    color: #fed7aa;
    background: rgba(124, 45, 18, 0.55);
    border-color: rgba(251, 146, 60, 0.35);
}

html.dark .pulse-operacao-ticket--violet {
    color: #ddd6fe;
    background: rgba(76, 29, 149, 0.4);
    border-color: rgba(167, 139, 250, 0.35);
}

html.dark .pulse-operacao-ticket--sky {
    color: #bae6fd;
    background: rgba(12, 74, 110, 0.4);
    border-color: rgba(56, 189, 248, 0.35);
}

html.dark .pulse-operacao-ticket--indigo {
    color: #c7d2fe;
    background: rgba(49, 46, 129, 0.4);
    border-color: rgba(129, 140, 248, 0.35);
}

html.dark .pulse-operacao-ticket--orange {
    color: #fed7aa;
    background: rgba(124, 45, 18, 0.4);
    border-color: rgba(251, 146, 60, 0.35);
}

html.dark .pulse-operacao-helena-warn {
    background: rgba(120, 53, 15, 0.35);
    border-color: rgba(251, 191, 36, 0.35);
    color: #fde68a;
}

html.dark .pulse-operacao-alert {
    background: rgba(120, 53, 15, 0.35);
    border-left-color: #facc15;
    color: #fde68a;
}

html.dark .pulse-operacao-alert i {
    color: #facc15;
}

/* Badges — modo escuro: fundo escuro saturado + texto claro */
html.dark .pulse-sol-badge--pendente {
    color: #fde68a;
    background: rgba(120, 53, 15, 0.72);
    border-color: rgba(251, 191, 36, 0.42);
}

html.dark .pulse-sol-badge--em_andamento {
    color: #bae6fd;
    background: rgba(12, 74, 110, 0.72);
    border-color: rgba(56, 189, 248, 0.42);
}

html.dark .pulse-sol-badge--aceito {
    color: #c7d2fe;
    background: rgba(49, 46, 129, 0.72);
    border-color: rgba(129, 140, 248, 0.42);
}

html.dark .pulse-sol-badge--finalizado {
    color: #bbf7d0;
    background: rgba(20, 83, 45, 0.72);
    border-color: rgba(74, 222, 128, 0.42);
}

html.dark .pulse-sol-badge--recusado {
    color: #fecaca;
    background: rgba(127, 29, 29, 0.72);
    border-color: rgba(248, 113, 113, 0.42);
}

html.dark .pulse-sol-badge--cancelado {
    color: #cbd5e1;
    background: rgba(51, 65, 85, 0.82);
    border-color: rgba(148, 163, 184, 0.38);
}

html.dark .pulse-sol-priority--baixa {
    color: #cbd5e1;
    background: rgba(51, 65, 85, 0.82);
    border-color: rgba(148, 163, 184, 0.38);
}

html.dark .pulse-sol-priority--normal {
    color: #bae6fd;
    background: rgba(12, 74, 110, 0.72);
    border-color: rgba(56, 189, 248, 0.42);
}

html.dark .pulse-sol-priority--alta {
    color: #fed7aa;
    background: rgba(124, 45, 18, 0.72);
    border-color: rgba(251, 146, 60, 0.42);
}

html.dark .pulse-sol-priority--urgente {
    color: #fecaca;
    background: rgba(127, 29, 29, 0.72);
    border-color: rgba(248, 113, 113, 0.42);
}

html.dark .pulse-sol-tipo--inclusao {
    color: #bbf7d0;
    background: rgba(20, 83, 45, 0.72);
    border-color: rgba(74, 222, 128, 0.42);
}

html.dark .pulse-sol-tipo--alteracao {
    color: #c7d2fe;
    background: rgba(49, 46, 129, 0.72);
    border-color: rgba(129, 140, 248, 0.42);
}

html.dark .pulse-sol-tipo--remocao {
    color: #fecaca;
    background: rgba(127, 29, 29, 0.72);
    border-color: rgba(248, 113, 113, 0.42);
}

html.dark .pulse-sol-stat--pending .pulse-sol-stat__icon {
    color: #fde68a;
    background: rgba(120, 53, 15, 0.55);
}

html.dark .pulse-sol-stat--progress .pulse-sol-stat__icon {
    color: #bae6fd;
    background: rgba(12, 74, 110, 0.55);
}

html.dark .pulse-sol-stat--done .pulse-sol-stat__icon {
    color: #bbf7d0;
    background: rgba(20, 83, 45, 0.55);
}

html.dark .pulse-sol-code {
    color: #cbd5e1;
    background: rgba(51, 65, 85, 0.55);
    border-color: #475569;
}

.pulse-candidato-drawer .field {
    margin-bottom: 0.85rem;
}

.pulse-candidato-drawer .field:last-of-type {
    margin-bottom: 0;
}

.pulse-candidato-vinculo {
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--pulse-border);
}

html.dark .pulse-candidato-vinculo {
    border-bottom-color: #334155;
}

.pulse-usuario-avatar{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:999px;background:color-mix(in srgb,#6366f1 14%,var(--pulse-card) 86%);color:#4338ca;font-weight:800;overflow:hidden;vertical-align:middle}
.pulse-usuario-avatar--lg{width:3.5rem;height:3.5rem;font-size:1.1rem}
.pulse-usuario-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.pulse-usuario-avatar:not(.is-image)>span{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.pulse-usuario-drawer-avatar{margin-bottom:1rem}
.pulse-usuario-drawer-avatar__inner{display:flex;align-items:center;gap:.85rem;padding:.75rem;border:1px solid var(--pulse-border);border-radius:12px;background:color-mix(in srgb,var(--pulse-card) 92%,#6366f1 8%)}
.pulse-usuario-drawer-avatar__inner strong{display:block;color:var(--pulse-text)}
.pulse-usuario-drawer-avatar__inner span{display:block;color:var(--pulse-muted);font-size:.85rem}
.pulse-usuario-table-actions,
.pulse-candidato-table-actions,
.pulse-empresa-table-actions,
.pulse-cliente-table-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
    align-items: center;
    white-space: nowrap;
}

.pulse-usuario-acessos-grid {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.pulse-usuario-acesso-fieldset {
    border: 1px solid var(--pulse-border);
    border-radius: 10px;
    padding: 0.65rem 0.85rem 0.75rem;
    margin: 0;
}

.pulse-usuario-acesso-legend {
    font-size: 0.8rem;
    font-weight: 600;
    padding: 0 0.25rem;
    color: var(--pulse-text);
}

.pulse-usuario-acesso-checks {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.35rem;
}

.pulse-usuario-acesso-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.8rem;
    border: 1px solid var(--pulse-border);
    border-radius: 8px;
    padding: 0.35rem 0.65rem;
    background: #f9fafb;
    cursor: pointer;
}

.pulse-usuario-acesso-chip:hover {
    background: #fff7ed;
    border-color: #fdba74;
}

html.dark .pulse-usuario-acesso-chip {
    background: rgba(30, 41, 59, 0.5);
    border-color: #334155;
    color: #e2e8f0;
}

.pulse-usuario-bloco-acesso[hidden] {
    display: none !important;
}

.pulse-usuario-acessos-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.pulse-usuario-empresa-all-label {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    cursor: pointer;
    font-weight: 600;
}

.pulse-usuario-acesso-chip-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
}

.pulse-usuario-contexto-radio {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.72rem;
    color: #64748b;
    cursor: pointer;
    padding-left: 0.15rem;
}

.pulse-usuario-contexto-radio input:checked + span {
    color: var(--pulse-orange);
    font-weight: 600;
}

.pulse-usuario-contexto-celula__grupo {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin-bottom: 0.2rem;
    max-width: 14rem;
}

.pulse-usuario-contexto-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.pulse-usuario-contexto-list li {
    padding: 0.12rem 0;
    color: #475569;
}

.pulse-usuario-contexto-list__item {
    max-width: 14rem;
}

.pulse-usuario-contexto-list__text,
.pulse-usuario-contexto-celula__grupo .pulse-usuario-contexto-list__text {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 12rem;
}

.pulse-usuario-contexto-list li.is-padrao {
    color: #1e293b;
}

.pulse-usuario-contexto-resumo {
    margin-top: 0.75rem;
    padding: 0.75rem 0.85rem;
    border: 1px solid #e2e8f0;
    border-radius: 0.5rem;
    background: #f8fafc;
}

.pulse-usuario-contexto-list-form {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.pulse-usuario-contexto-list-form__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.35rem 0;
    border-bottom: 1px solid #e2e8f0;
}

.pulse-usuario-contexto-list-form__item:last-child {
    border-bottom: none;
}

.pulse-usuario-contexto-list-form__label {
    font-size: 0.82rem;
    color: #334155;
    flex: 1;
    min-width: 0;
}

/* Botões refinados (empresas, drawer) */
.pulse-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    font-family: inherit;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.2;
    border: none;
    cursor: pointer;
    border-radius: 9999px;
    padding: 0.45rem 1.1rem;
    transition: transform 0.16s ease, box-shadow 0.16s ease, background 0.16s ease, color 0.16s ease, border-color 0.16s ease;
    white-space: nowrap;
    text-decoration: none;
}

.pulse-btn:focus-visible {
    outline: 2px solid var(--pulse-orange);
    outline-offset: 2px;
}

.pulse-btn:disabled {
    opacity: 0.55;
    cursor: not-allowed;
    transform: none !important;
    box-shadow: none !important;
}

.pulse-btn--sm {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.34rem 0.85rem;
    gap: 0.32rem;
}

.pulse-btn--icon {
    padding: 0;
    width: 2.35rem;
    height: 2.35rem;
    min-width: 2.35rem;
    min-height: 2.35rem;
    border-radius: 12px;
    gap: 0;
    font-size: 0.85rem;
}

.pulse-btn--table-action {
    width: 1.85rem;
    height: 1.85rem;
    min-width: 1.85rem;
    min-height: 1.85rem;
    border-radius: 8px;
    font-size: 0.78rem;
}

.pulse-projetos-table {
    font-size: 0.78rem;
}

.pulse-projetos-table th,
.pulse-projetos-table td {
    padding: 0.42rem 0.5rem;
    vertical-align: middle;
}

.pulse-projetos-table th {
    font-size: 0.68rem;
    letter-spacing: 0;
    text-transform: uppercase;
    color: #64748b;
}

.pulse-projetos-table code {
    font-size: 0.72rem;
    padding: 0.08rem 0.25rem;
}

.pulse-projetos-table .pulse-btn {
    box-shadow: none;
}

.pulse-projetos-table--planejamento {
    min-width: 980px;
    table-layout: auto;
    font-size: 0.74rem;
}

.pulse-projetos-table--planejamento th,
.pulse-projetos-table--planejamento td {
    padding: 0.32rem 0.42rem !important;
    line-height: 1.25;
    vertical-align: top;
}

.pulse-projetos-table--planejamento th:first-child {
    min-width: 420px;
}

.pulse-projetos-table--planejamento th:nth-child(2) {
    min-width: 120px;
}

.pulse-projetos-table--planejamento th:nth-child(3) {
    min-width: 86px;
}

.pulse-projetos-table--planejamento th:nth-child(4) {
    min-width: 112px;
}

.pulse-projetos-table--planejamento th:nth-child(5) {
    min-width: 76px;
}

.pulse-projetos-table--planejamento th:nth-child(6) {
    min-width: 140px;
}

.pulse-projeto-row--fase {
    border-top: 1px solid rgba(148, 163, 184, 0.35);
}

.pulse-projeto-row--fase > td {
    padding-top: 0.46rem !important;
    padding-bottom: 0.46rem !important;
}

.pulse-projeto-row--tarefa > td {
    border-top: 1px solid rgba(226, 232, 240, 0.72);
}

html.dark .pulse-projeto-row--tarefa > td {
    border-top-color: rgba(51, 65, 85, 0.8);
}

.pulse-projeto-etapa-cell {
    min-width: 320px;
}

.pulse-projeto-etapa-indent {
    position: relative;
    margin-left: 1.55rem;
    padding-left: 0.72rem;
}

.pulse-projeto-etapa-indent::before {
    content: "";
    position: absolute;
    left: -0.24rem;
    top: 0.55rem;
    width: 0.42rem;
    border-top: 1px solid #cbd5e1;
}

html.dark .pulse-projeto-etapa-indent::before {
    border-top-color: #475569;
}

.pulse-projeto-etapa-badge {
    display: inline-flex;
    min-width: 2.7rem;
    justify-content: center;
    align-items: center;
    border-radius: 6px;
    padding: 0.12rem 0.35rem;
    font-size: 0.68rem;
    font-weight: 800;
    line-height: 1.15;
    white-space: nowrap;
}

.pulse-projeto-etapa-badge--fase {
    min-width: 3.05rem;
}

.pulse-projeto-etapa-title {
    min-width: 0;
    font-size: 0.78rem;
    line-height: 1.18;
    overflow-wrap: anywhere;
}

.pulse-projeto-etapa-meta {
    display: none;
}

.pulse-projeto-etapa-meta--tarefa {
    display: none;
}

.pulse-projeto-etapa-desc {
    margin-top: 0.18rem;
    margin-left: 3.25rem;
    max-width: 58rem;
    font-size: 0.69rem;
    line-height: 1.25;
    max-height: 2.55em;
    overflow: hidden;
}

.pulse-projeto-etapa-desc--tarefa {
    margin-left: 4.38rem;
}

.pulse-projeto-status-badge {
    display: inline-flex;
    align-items: center;
    border-radius: 6px;
    padding: 0.12rem 0.38rem;
    font-size: 0.66rem;
    font-weight: 700;
    line-height: 1.15;
    white-space: nowrap;
}

.pulse-projeto-actions {
    display: flex;
    justify-content: flex-end;
    gap: 0.18rem;
    min-width: 8.2rem;
}

.pulse-projeto-actions .pulse-btn--table-action {
    width: 1.65rem;
    height: 1.65rem;
    min-width: 1.65rem;
    min-height: 1.65rem;
    padding: 0;
    border-radius: 6px;
    font-size: 0.7rem;
}

#etapa-acao-drawer,
#etapa-comunicacao-drawer,
#etapa-detalhe-drawer,
#etapa-editor-drawer {
    position: fixed !important;
    inset: 0 !important;
    z-index: 10060 !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: stretch !important;
    background: rgba(15, 23, 42, 0.52) !important;
}

#etapa-acao-drawer > a,
#etapa-comunicacao-drawer > a,
#etapa-detalhe-drawer > a,
#etapa-editor-drawer > a {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
}

#etapa-acao-drawer > aside,
#etapa-comunicacao-drawer > aside,
#etapa-detalhe-drawer > aside,
#etapa-editor-drawer > aside {
    position: relative !important;
    z-index: 1 !important;
    width: min(640px, 100vw) !important;
    max-width: 100vw !important;
    height: 100vh !important;
    overflow-y: auto !important;
    background: var(--pulse-card) !important;
    color: var(--pulse-text) !important;
    border-left: 1px solid var(--pulse-border) !important;
    box-shadow: -18px 0 48px rgba(15, 23, 42, 0.22) !important;
}

#etapa-acao-drawer form,
#etapa-comunicacao-drawer form,
#etapa-editor-drawer form {
    display: flex;
    min-height: calc(100vh - 92px);
    flex-direction: column;
}

#etapa-acao-drawer form > :last-child,
#etapa-comunicacao-drawer form > :last-child,
#etapa-editor-drawer form > :last-child,
#etapa-detalhe-drawer aside > :last-child {
    margin-top: auto !important;
    position: static !important;
    bottom: auto !important;
}

#etapa-acao-drawer .input,
#etapa-acao-drawer .textarea,
#etapa-acao-drawer select,
#etapa-comunicacao-drawer .input,
#etapa-comunicacao-drawer .textarea,
#etapa-comunicacao-drawer select,
#etapa-editor-drawer .input,
#etapa-editor-drawer .textarea,
#etapa-editor-drawer select {
    width: 100%;
}

html.dark #etapa-acao-drawer > aside,
html.dark #etapa-comunicacao-drawer > aside,
html.dark #etapa-detalhe-drawer > aside,
html.dark #etapa-editor-drawer > aside {
    box-shadow: -18px 0 52px rgba(0, 0, 0, 0.54) !important;
}

.pulse-btn--primary {
    color: #fff;
    background: linear-gradient(135deg, var(--pulse-orange), var(--pulse-orange-dark));
    box-shadow: 0 2px 12px rgba(235, 73, 16, 0.32);
}

.pulse-btn--primary:hover:not(:disabled) {
    transform: translateY(-1px);
    box-shadow: 0 4px 18px rgba(235, 73, 16, 0.42);
}

.pulse-btn--ghost {
    color: #4b5563;
    background: #fff;
    border: 1px solid #e5e7eb;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
}

.pulse-btn--ghost:hover:not(:disabled) {
    color: #111827;
    background: #f9fafb;
    border-color: #d1d5db;
    transform: translateY(-1px);
    box-shadow: 0 3px 10px rgba(15, 23, 42, 0.08);
}

.pulse-btn--view {
    color: #475569;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.pulse-btn--view:hover:not(:disabled) {
    color: #1e293b;
    background: #e2e8f0;
    border-color: #cbd5e1;
    transform: translateY(-1px);
}

.pulse-btn--edit {
    color: #c2410c;
    background: linear-gradient(180deg, #fff7ed, #ffedd5);
    border: 1px solid rgba(251, 146, 60, 0.45);
    box-shadow: 0 1px 3px rgba(234, 88, 12, 0.12);
}

.pulse-btn--edit:hover:not(:disabled) {
    color: #9a3412;
    background: #ffedd5;
    border-color: rgba(249, 115, 22, 0.65);
    transform: translateY(-1px);
    box-shadow: 0 3px 12px rgba(234, 88, 12, 0.2);
}

.pulse-btn--warn {
    color: #9a3412;
    background: linear-gradient(180deg, #fffbeb, #fef3c7);
    border: 1px solid rgba(245, 158, 11, 0.45);
    box-shadow: 0 1px 3px rgba(245, 158, 11, 0.12);
}

.pulse-btn--warn:hover:not(:disabled) {
    color: #7c2d12;
    background: #fef3c7;
    border-color: rgba(245, 158, 11, 0.7);
    transform: translateY(-1px);
}

.pulse-btn--danger-soft {
    color: #b91c1c;
    background: linear-gradient(180deg, #fef2f2, #fee2e2);
    border: 1px solid rgba(239, 68, 68, 0.4);
}

.pulse-btn--danger-soft:hover:not(:disabled) {
    color: #991b1b;
    background: #fee2e2;
    border-color: rgba(239, 68, 68, 0.65);
    transform: translateY(-1px);
}

.pulse-btn--positive {
    color: #065f46;
    background: linear-gradient(180deg, #ecfdf5, #d1fae5);
    border: 1px solid rgba(16, 185, 129, 0.4);
    box-shadow: 0 1px 3px rgba(16, 185, 129, 0.12);
}

.pulse-btn--positive:hover:not(:disabled) {
    color: #064e3b;
    background: #d1fae5;
    border-color: rgba(16, 185, 129, 0.65);
    transform: translateY(-1px);
}

html.dark .pulse-btn--ghost {
    color: #cbd5e1;
    background: #1e293b;
    border-color: #334155;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
}

html.dark .pulse-btn--ghost:hover:not(:disabled) {
    color: #f1f5f9;
    background: #334155;
    border-color: #475569;
}

html.dark .pulse-btn--view {
    color: #cbd5e1;
    background: #1e293b;
    border-color: #334155;
}

html.dark .pulse-btn--view:hover:not(:disabled) {
    background: #334155;
    color: #f8fafc;
}

html.dark .pulse-btn--edit {
    color: #fdba74;
    background: rgba(124, 45, 18, 0.35);
    border-color: rgba(251, 146, 60, 0.35);
}

html.dark .pulse-btn--edit:hover:not(:disabled) {
    color: #ffedd5;
    background: rgba(124, 45, 18, 0.55);
}

html.dark .pulse-btn--warn {
    color: #fde68a;
    background: rgba(113, 63, 18, 0.4);
    border-color: rgba(245, 158, 11, 0.35);
}

html.dark .pulse-btn--positive {
    color: #a7f3d0;
    background: rgba(6, 78, 59, 0.45);
    border-color: rgba(16, 185, 129, 0.35);
}

.pulse-empresa-form--view .pulse-drawer__details summary {
    cursor: default;
    opacity: 0.92;
}

.pulse-empresa-form--view .pulse-cert-upload {
    display: none;
}

/* Modo grupo — banner e chips de unidades */
.pulse-grupo-banner {
    border: 1px solid rgba(124, 58, 237, 0.25);
    border-radius: 1rem;
    background: linear-gradient(135deg, rgba(124, 58, 237, 0.06) 0%, rgba(99, 102, 241, 0.04) 100%);
    padding: 1rem 1.25rem;
}

.pulse-grupo-banner__head {
    display: flex;
    gap: 0.75rem;
    align-items: flex-start;
    margin-bottom: 0;
}

.pulse-grupo-banner__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 0.75rem;
    background: linear-gradient(135deg, #7c3aed, #6366f1);
    color: #fff;
    flex-shrink: 0;
}

.pulse-grupo-banner__label {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #6d28d9;
    margin: 0 0 0.15rem;
    font-weight: 600;
}

.pulse-grupo-banner__title {
    font-size: 1.1rem;
    font-weight: 700;
    margin: 0 0 0.35rem;
    color: #1e1b4b;
}

.pulse-grupo-banner__hint {
    font-size: 0.8rem;
    color: #475569;
    margin: 0;
    line-height: 1.45;
}

.pulse-grupo-banner__unidades {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    list-style: none;
    margin: 0.75rem 0 0;
    padding: 0;
}

.pulse-grupo-banner__unidade-tag {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    max-width: 100%;
    padding: 0.28rem 0.55rem;
    border-radius: 999px;
    border: 1px solid rgba(124, 58, 237, 0.2);
    background: rgba(255, 255, 255, 0.85);
    font-size: 0.72rem;
    color: #475569;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pulse-grupo-banner__unidade-empresa {
    font-weight: 600;
    color: #5b21b6;
}

.pulse-grupo-banner__unidade-sep {
    opacity: 0.5;
}

.pulse-cliente-unidade {
    padding: 0.75rem 1rem;
    border-radius: 0.75rem;
    border: 1px dashed rgba(124, 58, 237, 0.35);
    background: rgba(124, 58, 237, 0.04);
}

html.dark .pulse-grupo-banner {
    border-color: rgba(167, 139, 250, 0.35);
    background: linear-gradient(135deg, rgba(91, 33, 182, 0.25) 0%, rgba(49, 46, 129, 0.2) 100%);
}

html.dark .pulse-grupo-banner__title {
    color: #ede9fe;
}

html.dark .pulse-grupo-banner__hint {
    color: #cbd5e1;
}

html.dark .pulse-grupo-banner__unidade-tag {
    background: rgba(15, 23, 42, 0.55);
    border-color: rgba(167, 139, 250, 0.25);
    color: #cbd5e1;
}

html.dark .pulse-grupo-banner__unidade-empresa {
    color: #c4b5fd;
}

html.dark .pulse-grupo-chip--write {
    background: rgba(91, 33, 182, 0.45);
    color: #ede9fe;
}

html.dark .pulse-cliente-unidade {
    border-color: rgba(167, 139, 250, 0.35);
    background: rgba(91, 33, 182, 0.15);
}

.pulse-perfil-permissoes__title {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--pulse-text);
    margin: 0 0 0.35rem;
}

html.dark .pulse-perfil-permissoes__title {
    color: #e2e8f0;
}

.pulse-perfil-telas-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
}

.pulse-perfil-telas-search {
    flex: 1 1 12rem;
    min-width: 10rem;
    max-width: 100%;
}

.pulse-perfil-telas-toolbar__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.pulse-perfil-modulos {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    max-height: min(58vh, 34rem);
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 0.25rem;
}

.pulse-perfil-modulo {
    display: block;
    width: 100%;
    flex: 0 0 auto;
    border: 1px solid rgba(148, 163, 184, 0.45);
    border-radius: 0.85rem;
    background: #fff;
}

.pulse-perfil-modulo[hidden] {
    display: none !important;
}

.pulse-perfil-modulo.is-open {
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
}

.pulse-perfil-modulo__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.7rem 0.85rem;
    background: #f8fafc;
    border-radius: 0.85rem;
}

.pulse-perfil-modulo.is-open .pulse-perfil-modulo__header {
    border-bottom: 1px solid rgba(148, 163, 184, 0.35);
    border-radius: 0.85rem 0.85rem 0 0;
}

.pulse-perfil-modulo__toggle {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
    cursor: pointer;
    color: inherit;
    font: inherit;
}

.pulse-perfil-modulo__chevron {
    flex-shrink: 0;
    width: 1rem;
    height: 1rem;
    margin-top: 0.15rem;
    position: relative;
}

.pulse-perfil-modulo__chevron::before {
    content: '\25B8';
    display: block;
    color: var(--pulse-orange, #ea580c);
    font-size: 0.85rem;
    line-height: 1;
    transition: transform 0.15s ease;
}

.pulse-perfil-modulo.is-open .pulse-perfil-modulo__chevron::before {
    transform: rotate(90deg);
}

.pulse-perfil-modulo__heading {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
}

.pulse-perfil-modulo__title {
    display: block;
    color: #0f172a;
    font-size: 0.9rem;
    line-height: 1.3;
}

.pulse-perfil-modulo__desc {
    display: block;
    font-size: 0.75rem;
    line-height: 1.35;
    color: #64748b;
}

.pulse-perfil-modulo__meta {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.35rem;
    flex-shrink: 0;
}

.pulse-perfil-modulo__actions {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.2rem;
}

.pulse-perfil-modulo__body {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
    gap: 0.5rem;
    padding: 0.75rem 0.85rem 0.85rem;
}

.pulse-perfil-modulo__body[hidden] {
    display: none !important;
}

.pulse-perfil-subgrupo {
    grid-column: 1 / -1;
    margin: 0.25rem 0 0;
    padding-top: 0.45rem;
    border-top: 1px dashed rgba(148, 163, 184, 0.45);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #64748b;
}

.pulse-perfil-subgrupo:first-child {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

.pulse-perfil-tela-chip[hidden] {
    display: none !important;
}

.pulse-perfil-telas-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
    gap: 0.5rem;
    max-height: min(50vh, 28rem);
    overflow-y: auto;
    padding-right: 0.25rem;
}

.pulse-perfil-tela-chip {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    border: 1px solid rgba(148, 163, 184, 0.45);
    border-radius: 0.75rem;
    padding: 0.5rem 0.65rem;
    background: #f8fafc;
    cursor: pointer;
    transition: border-color 0.15s ease, background 0.15s ease;
}

.pulse-perfil-tela-chip:hover {
    border-color: #64748b;
    background: #fff7ed;
}

.pulse-perfil-tela-chip__body {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    font-size: 0.8rem;
    line-height: 1.3;
}

.pulse-perfil-tela-chip__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.35rem;
}

.pulse-perfil-tela-chip__tipo {
    font-size: 0.62rem !important;
    height: auto !important;
    padding: 0.1rem 0.4rem !important;
    flex-shrink: 0;
}

.pulse-perfil-tela-chip__body strong {
    color: #0f172a;
    font-size: 0.82rem;
    word-break: break-word;
}

.pulse-perfil-tela-chip__desc {
    font-size: 0.75rem;
    line-height: 1.35;
    color: #64748b;
}

html.dark .pulse-perfil-tela-chip {
    background: rgba(15, 23, 42, 0.5);
    border-color: rgba(148, 163, 184, 0.3);
}

html.dark .pulse-perfil-tela-chip:hover {
    background: rgba(30, 41, 59, 0.8);
}

html.dark .pulse-perfil-modulo {
    background: rgba(15, 23, 42, 0.55);
    border-color: rgba(148, 163, 184, 0.28);
}

html.dark .pulse-perfil-modulo__header {
    background: rgba(30, 41, 59, 0.65);
}

html.dark .pulse-perfil-modulo__title {
    color: #f1f5f9;
}

html.dark .pulse-perfil-modulo__desc,
html.dark .pulse-perfil-tela-chip__desc {
    color: #94a3b8;
}

html.dark .pulse-perfil-tela-chip__body strong {
    color: #f1f5f9;
}

.pulse-login--single {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
}

.pulse-login__card--wide {
    max-width: 32rem;
    width: 100%;
}

.pulse-ctx-picker__empresa {
    border: 1px solid var(--pulse-border);
    border-radius: 0.75rem;
    padding: 0.75rem 1rem;
    margin-bottom: 0.75rem;
}

.pulse-ctx-picker__legend {
    font-weight: 700;
    font-size: 0.9rem;
    color: #334155;
    padding: 0 0.25rem;
}

.pulse-ctx-picker__unidades {
    list-style: none;
    margin: 0.5rem 0 0;
    padding: 0;
}

.pulse-ctx-picker__unidades li {
    margin: 0.25rem 0;
}

.pulse-ctx-picker__opcao {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 0.5rem;
    border-radius: 0.5rem;
    cursor: pointer;
}

.pulse-ctx-picker__opcao:hover {
    background: var(--pulse-orange-soft);
}

/* Select customizado — alinhado aos inputs dos formulários Pulse */
.pulse-select {
    position: relative;
    display: block;
    width: 100%;
}

.pulse-select select {
    display: block;
    width: 100%;
    min-height: 2.5rem;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: 0.5rem 2.5rem 0.5rem 0.75rem;
    font-size: 0.875rem;
    line-height: 1.45;
    font-family: inherit;
    color: var(--pulse-text);
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236b7280'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 0 1 1.06.02L10 11.168l3.71-3.94a.75.75 0 1 1 1.08 1.04l-4.25 4.5a.75.75 0 0 1-1.08 0l-4.25-4.5a.75.75 0 0 1 .02-1.06z' clip-rule='evenodd'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.65rem center;
    background-size: 1.125rem 1.125rem;
    border: 1px solid #d1d5db;
    border-radius: 0.5rem;
    cursor: pointer;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.pulse-select select:hover:not(:disabled) {
    border-color: #9ca3af;
}

.pulse-select select:focus {
    outline: none;
    border-color: var(--pulse-orange);
    box-shadow: 0 0 0 3px rgba(235, 73, 16, 0.18);
}

.pulse-select select:disabled {
    cursor: not-allowed;
    opacity: 0.65;
    background-color: #f3f4f6;
    color: #6b7280;
}

.pulse-select select:invalid,
.pulse-select select option[value=""] {
    color: #6b7280;
}

.pulse-select select option {
    color: var(--pulse-text);
    background: #fff;
}

.pulse-select--compact select {
    min-height: 2.25rem;
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
    font-size: 0.8125rem;
}

html.dark .pulse-select select {
    background-color: #0f172a;
    border-color: var(--pulse-border);
    color: #f1f5f9;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2394a3b8'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 0 1 1.06.02L10 11.168l3.71-3.94a.75.75 0 1 1 1.08 1.04l-4.25 4.5a.75.75 0 0 1-1.08 0l-4.25-4.5a.75.75 0 0 1 .02-1.06z' clip-rule='evenodd'/%3E%3C/svg%3E");
}

html.dark .pulse-select select:hover:not(:disabled) {
    border-color: #64748b;
}

html.dark .pulse-select select:focus {
    border-color: var(--pulse-orange);
    box-shadow: 0 0 0 3px rgba(235, 73, 16, 0.28);
}

html.dark .pulse-select select:disabled {
    background-color: #1e293b;
    color: #94a3b8;
}

html.dark .pulse-select select option {
    background: #0f172a;
    color: #f1f5f9;
}

.pulse-clientes-filtros {
    background: var(--pulse-card);
    border: 1px solid var(--pulse-border);
    border-radius: 1rem;
    padding: 1rem 1.1rem;
    color: var(--pulse-text);
}

.pulse-clientes-filtros .pulse-select select {
    min-height: 2.35rem;
}

/* Ficha de visualização do cliente */
.pulse-cliente-visao-card {
    background: var(--pulse-card);
    border: 1px solid var(--pulse-border);
    border-radius: 1rem;
    padding: 1.25rem 1.35rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.pulse-cliente-visao-card__title {
    font-size: 1rem;
    font-weight: 600;
    color: #1f2937;
    margin: 0 0 1rem 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.pulse-cliente-visao-dl {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.85rem 1.25rem;
    margin: 0;
}

.pulse-cliente-visao-dl > div {
    min-width: 0;
}

.pulse-cliente-visao-dl dt {
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #6b7280;
    margin-bottom: 0.2rem;
}

.pulse-cliente-visao-dl dd {
    margin: 0;
    font-size: 0.875rem;
    color: #111827;
    word-break: break-word;
}

.pulse-cliente-visao-kpi {
    text-align: center;
    padding: 0.65rem 0.35rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 0.65rem;
}

.pulse-cliente-visao-kpi--alert .pulse-cliente-visao-kpi__val {
    color: var(--pulse-orange-dark);
}

.pulse-cliente-visao-kpi__val {
    display: block;
    font-size: 1.35rem;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.2;
}

.pulse-cliente-visao-kpi__lbl {
    display: block;
    font-size: 0.65rem;
    color: #64748b;
    margin-top: 0.15rem;
    line-height: 1.2;
}

.pulse-cliente-visao-ticket-list {
    list-style: none;
    margin: 0;
    padding: 0;
    max-height: 22rem;
    overflow-y: auto;
    border: 1px solid #e2e8f0;
    border-radius: 0.5rem;
}

.pulse-cliente-visao-ticket-item {
    border-bottom: 1px solid #f1f5f9;
}

.pulse-cliente-visao-ticket-item:last-child {
    border-bottom: none;
}

.pulse-cliente-visao-ticket-item__link {
    display: block;
    padding: 0.55rem 0.65rem;
    text-decoration: none;
    color: inherit;
    transition: background 0.12s;
}

.pulse-cliente-visao-ticket-item__link:hover {
    background: var(--pulse-orange-soft);
}

.pulse-cliente-visao-ticket-item__id {
    font-size: 0.7rem;
    font-weight: 700;
    color: var(--pulse-orange-dark);
    display: block;
}

.pulse-cliente-visao-ticket-item__assunto {
    font-size: 0.8rem;
    color: #334155;
    display: block;
    margin: 0.15rem 0;
    line-height: 1.35;
}

.pulse-cliente-visao-ticket-item__meta {
    font-size: 0.7rem;
    color: #94a3b8;
    display: flex;
    align-items: center;
    gap: 0.35rem;
    flex-wrap: wrap;
}

html.dark .pulse-cliente-visao-card {
    background: var(--pulse-card);
    border-color: var(--pulse-border);
}

html.dark .pulse-cliente-visao-card__title {
    color: #f1f5f9;
}

html.dark .pulse-cliente-visao-dl dt {
    color: #94a3b8;
}

html.dark .pulse-cliente-visao-dl dd {
    color: #e2e8f0;
}

html.dark .pulse-cliente-visao-kpi {
    background: #0f172a;
    border-color: #334155;
}

html.dark .pulse-cliente-visao-kpi__val {
    color: #f8fafc;
}

html.dark .pulse-cliente-visao-ticket-list {
    border-color: #334155;
}

html.dark .pulse-cliente-visao-ticket-item {
    border-color: #1e293b;
}

html.dark .pulse-cliente-visao-ticket-item__assunto {
    color: #cbd5e1;
}

.pulse-cliente-visao-tickets__wrap {
    position: relative;
    min-height: 5.5rem;
}

.pulse-cliente-visao-tickets__loading {
    position: absolute;
    inset: 0;
    z-index: 4;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

.pulse-cliente-visao-tickets__loading[hidden] {
    display: none !important;
}

.pulse-cliente-visao-tickets__spinner {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.7rem;
    font-size: 0.75rem;
    font-weight: 500;
    color: #64748b;
    background: rgba(255, 255, 255, 0.95);
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.08);
}

.pulse-cliente-visao-tickets__spinner .fa-spinner {
    color: var(--pulse-orange);
    font-size: 0.85rem;
}

.pulse-cliente-visao-tickets.is-loading [data-pulse-cliente-tickets-body] {
    opacity: 0.45;
    pointer-events: none;
    transition: opacity 0.15s ease;
}

html.dark .pulse-cliente-visao-tickets__spinner {
    background: rgba(30, 41, 59, 0.95);
    border-color: #334155;
    color: #94a3b8;
}

.pulse-cliente-visao-unidades-table .pulse-cliente-visao-unidade-row {
    cursor: pointer;
    transition: background 0.12s ease;
}

.pulse-cliente-visao-unidades-table .pulse-cliente-visao-unidade-row:hover {
    background: var(--pulse-orange-soft) !important;
}

.pulse-cliente-visao-unidades-table .pulse-cliente-visao-unidade-row.is-selected {
    background: rgba(235, 73, 16, 0.12) !important;
    box-shadow: inset 3px 0 0 var(--pulse-orange);
}

.pulse-cliente-visao-unidades-table .pulse-cliente-visao-unidade-row:focus-visible {
    outline: 2px solid var(--pulse-orange);
    outline-offset: -2px;
}

.pulse-cliente-visao-unidade-detalhe {
    padding: 1rem 1.1rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 0.75rem;
}

.pulse-cliente-visao-unidade-detalhe[hidden] {
    display: none !important;
}

.pulse-cliente-visao-unidade-detalhe__head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem 1rem;
    margin-bottom: 0.85rem;
    padding-bottom: 0.65rem;
    border-bottom: 1px solid #e2e8f0;
}

.pulse-cliente-visao-unidade-detalhe__title {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: #1f2937;
}

html.dark .pulse-cliente-visao-unidade-detalhe {
    background: #0f172a;
    border-color: #334155;
}

html.dark .pulse-cliente-visao-unidade-detalhe__head {
    border-color: #334155;
}

html.dark .pulse-cliente-visao-unidade-detalhe__title {
    color: #f1f5f9;
}

html.dark .pulse-cliente-visao-unidades-table .pulse-cliente-visao-unidade-row:hover {
    background: rgba(234, 88, 12, 0.15) !important;
}

html.dark .pulse-cliente-visao-unidades-table .pulse-cliente-visao-unidade-row.is-selected {
    background: rgba(234, 88, 12, 0.22) !important;
}

@media (max-width: 640px) {
    .pulse-cliente-visao-dl {
        grid-template-columns: 1fr;
    }
}

html.dark .pulse-clientes-filtros a.has-text-link {
    color: #7dd3fc !important;
}

html.dark .pulse-clientes-filtros a.has-text-link:hover {
    color: #bae6fd !important;
}

.pulse-clientes-filtros__row {
    display: grid;
    grid-template-columns: 1fr 1fr 1.4fr auto;
    gap: 0.75rem;
    align-items: end;
}

@media (max-width: 900px) {
    .pulse-clientes-filtros__row {
        grid-template-columns: 1fr 1fr;
    }

    .pulse-clientes-filtros__q {
        grid-column: 1 / -1;
    }

    .pulse-clientes-filtros__btn {
        grid-column: 1 / -1;
    }
}

/* =========================================================================
 * COMERCIAL P3 — Cotações (lista + drawer multi-vista)
 * ========================================================================= */
.pulse-cot-filtros {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 0.75rem;
    padding: 0.75rem;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}
.pulse-cot-filtros__row {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr 1fr auto;
    gap: 0.75rem;
    align-items: end;
}
@media (max-width: 1100px) {
    .pulse-cot-filtros__row { grid-template-columns: 1fr 1fr; }
    .pulse-cot-filtros__busca, .pulse-cot-filtros__btn { grid-column: 1 / -1; }
}

html.dark .pulse-cot-filtros { background: #1e293b; border-color: #334155; }

/* Drawer */
.pulse-cot-drawer .pulse-cot-drawer__header {
    display: flex; align-items: flex-start; gap: 1rem; justify-content: space-between;
}
.pulse-cot-drawer__title-wrap { flex: 1; min-width: 0; }
.pulse-cot-drawer__meta {
    display: flex; gap: 0.4rem; flex-wrap: wrap; margin-top: 0.5rem;
}

.pulse-cot-tabs {
    display: flex; gap: 0; border-bottom: 1px solid #e2e8f0;
    padding: 0 1.5rem;
}
.pulse-cot-tab {
    appearance: none; background: transparent; border: 0;
    padding: 0.85rem 1.1rem; cursor: pointer; font-weight: 500;
    color: #64748b; border-bottom: 3px solid transparent;
    transition: color 0.15s, border-color 0.15s;
    display: inline-flex; align-items: center; gap: 0.5rem;
}
.pulse-cot-tab:hover { color: #0f172a; }
.pulse-cot-tab.is-active { color: #0ea5e9; border-bottom-color: #0ea5e9; }
html.dark .pulse-cot-tabs { border-bottom-color: #334155; }
html.dark .pulse-cot-tab { color: #94a3b8; }
html.dark .pulse-cot-tab:hover { color: #f1f5f9; }
html.dark .pulse-cot-tab.is-active { color: #38bdf8; border-bottom-color: #38bdf8; }

.pulse-cot-drawer-loading {
    position: absolute;
    inset: 0;
    z-index: 30;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.72);
    backdrop-filter: blur(2px);
}

.pulse-cot-drawer-loading[hidden] {
    display: none !important;
}

.pulse-cot-drawer-loading__box {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
    padding: 1.5rem 2rem;
    border-radius: 0.75rem;
    background: var(--pulse-card, #fff);
    border: 1px solid var(--pulse-border, #e2e8f0);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
    color: #475569;
    font-size: 0.875rem;
    font-weight: 500;
}

.pulse-cot-drawer-loading__box .fa-spinner {
    color: #0ea5e9;
}

html.dark .pulse-cot-drawer-loading {
    background: rgba(15, 23, 42, 0.75);
}

html.dark .pulse-cot-drawer-loading__box {
    background: #1e293b;
    border-color: #334155;
    color: #cbd5e1;
}

html.dark .pulse-cot-drawer-loading__box .fa-spinner {
    color: #38bdf8;
}

.pulse-cot-drawer--view [data-cot-edicao-only] {
    display: none !important;
}

.pulse-cot-drawer--fluxo [data-cot-pane]:not(.is-fluxo-ativa) [data-cot-edicao-only] {
    display: none !important;
}

.pulse-cot-fluxo-hint {
    margin: 0 0 1rem;
    padding: 0.65rem 0.85rem;
    border-radius: 0.5rem;
    font-size: 0.8125rem;
    line-height: 1.45;
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    color: #0c4a6e;
}

html.dark .pulse-cot-fluxo-hint {
    background: rgba(14, 165, 233, 0.12);
    border-color: #334155;
    color: #bae6fd;
}

.pulse-cot-orcar-tax-readonly {
    margin: 0;
    padding: 0.5rem 0.65rem;
    border-radius: 0.375rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    font-size: 0.8125rem;
    color: #475569;
}

html.dark .pulse-cot-orcar-tax-readonly {
    background: #0f172a;
    border-color: #334155;
    color: #cbd5e1;
}

.pulse-cot-orcar-calc-lines {
    margin: 0;
    display: grid;
    gap: 0.35rem;
    font-size: 0.875rem;
}

.pulse-cot-orcar-calc-lines > div {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.pulse-cot-orcar-calc-lines dt {
    color: #64748b;
    font-weight: 500;
}

.pulse-cot-orcar-calc-lines__sub {
    padding-top: 0.35rem;
    border-top: 1px solid #e2e8f0;
    font-weight: 600;
}

.pulse-cot-orcar-calc-lines__total {
    padding-top: 0.35rem;
    border-top: 2px solid #0ea5e9;
    font-weight: 700;
    color: #0c4a6e;
}

html.dark .pulse-cot-orcar-calc-lines__total {
    color: #7dd3fc;
}

.pulse-cot-markup-slider-wrap {
    margin-bottom: 1rem;
}

.pulse-cot-markup-slider {
    width: 100%;
    height: 0.5rem;
    cursor: pointer;
    accent-color: #0ea5e9;
}

.pulse-cot-markup-slider-labels {
    display: flex;
    justify-content: space-between;
    font-size: 0.75rem;
    color: #64748b;
    margin-top: 0.35rem;
}

.pulse-cot-markup-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.pulse-cot-markup-card {
    text-align: center;
    padding: 0.5rem;
    border-radius: 0.5rem;
    border: 1px solid #e2e8f0;
    font-size: 0.75rem;
}

.pulse-cot-markup-card__title {
    display: block;
    margin-bottom: 0.25rem;
    font-weight: 600;
}

.pulse-cot-markup-card--min { background: #fef2f2; border-color: #fecaca; color: #991b1b; }
.pulse-cot-markup-card--neg { background: #eff6ff; border-color: #bfdbfe; color: #1e40af; }
.pulse-cot-markup-card--ideal { background: #f0fdf4; border-color: #bbf7d0; color: #166534; }

.pulse-cot-markup-atual {
    text-align: center;
    padding: 0.75rem;
    border-radius: 0.5rem;
    border: 2px solid #0ea5e9;
    background: rgba(14, 165, 233, 0.08);
}

.pulse-cot-markup-atual span {
    display: block;
    font-size: 0.75rem;
    color: #64748b;
    margin-bottom: 0.25rem;
}

.pulse-cot-markup-atual strong {
    font-size: 1.125rem;
    color: #0369a1;
}

html.dark .pulse-cot-markup-card--min { background: rgba(127, 29, 29, 0.25); }
html.dark .pulse-cot-markup-card--neg { background: rgba(30, 64, 175, 0.25); }
html.dark .pulse-cot-markup-card--ideal { background: rgba(22, 101, 52, 0.25); }

.pulse-cot-pane { padding: 1.25rem 0 0 0; }

.pulse-cot-drawer,
.pulse-cot-drawer .pulse-drawer__body {
    color: #0f172a;
}

html.dark .pulse-cot-drawer,
html.dark .pulse-cot-drawer .pulse-drawer__body {
    color: #f1f5f9;
}

html.dark .pulse-cot-drawer :is(h1, h2, h3, h4, h5, h6, p, span, div, label, strong) {
    color: inherit;
}

html.dark .pulse-cot-drawer :is(.text-gray-900, .text-gray-800) {
    color: #f1f5f9 !important;
}

html.dark .pulse-cot-drawer :is(.text-gray-700, .text-gray-600, .text-gray-500) {
    color: #cbd5e1 !important;
}

html.dark .pulse-cot-drawer .label {
    color: #cbd5e1 !important;
}

html.dark .pulse-cot-drawer :is(.input, .textarea, .select select),
html.dark .pulse-cot-drawer .pulse-field :is(input, select, textarea) {
    background-color: var(--pulse-bg, #0f172a) !important;
    border-color: var(--pulse-border, #334155) !important;
    color: var(--pulse-text, #f8fafc) !important;
    -webkit-text-fill-color: var(--pulse-text, #f8fafc) !important;
    caret-color: var(--pulse-text, #f8fafc);
}

html.dark .pulse-cot-drawer :is(.input, .textarea)::placeholder,
html.dark .pulse-cot-drawer .pulse-field input::placeholder,
html.dark .pulse-cot-drawer .pulse-field textarea::placeholder {
    color: #64748b !important;
    -webkit-text-fill-color: #64748b !important;
}

html.dark .pulse-cot-drawer .select select option {
    background: var(--pulse-card, #1e293b) !important;
    color: var(--pulse-text, #f8fafc) !important;
    -webkit-text-fill-color: var(--pulse-text, #f8fafc) !important;
}

html.dark .pulse-cot-drawer .select:not(.is-multiple):not(:loading)::after {
    border-color: #94a3b8 !important;
}

html.dark .pulse-cot-drawer :is(.input, .textarea, .select select):focus,
html.dark .pulse-cot-drawer .pulse-field :is(input, select, textarea):focus {
    border-color: #38bdf8 !important;
    box-shadow: 0 0 0 0.125em rgba(56, 189, 248, 0.25) !important;
}

html.dark .pulse-cot-drawer :is(.input, .textarea, .select select):disabled,
html.dark .pulse-cot-drawer .pulse-field :is(input, select, textarea):disabled {
    background: rgba(15, 23, 42, 0.5) !important;
    color: var(--pulse-muted, #94a3b8) !important;
    -webkit-text-fill-color: var(--pulse-muted, #94a3b8) !important;
}

html.dark .pulse-cot-drawer #pulse-cot-organizacao-resumo,
html.dark .pulse-cot-drawer .has-text-grey {
    color: #94a3b8 !important;
}

/* Form */
.pulse-cot-form { display: flex; flex-direction: column; gap: 1.1rem; }
.pulse-cot-form__section {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 0.75rem;
    padding: 1rem 1.25rem;
}
.pulse-cot-form__section h4 {
    font-size: 0.85rem; font-weight: 600; color: #0f172a;
    margin: 0 0 0.85rem 0;
    display: inline-flex; align-items: center; gap: 0.4rem;
}
.pulse-cot-form__section h4 i { color: #0ea5e9; }
.pulse-cot-form__footer {
    display: flex; gap: 0.5rem; justify-content: flex-end;
    padding-top: 0.75rem; border-top: 1px solid #e2e8f0;
}
html.dark .pulse-cot-form__section { background: #0f172a; border-color: #334155; }
html.dark .pulse-cot-form__section h4 { color: #f1f5f9; }
html.dark .pulse-cot-form__section h4 i { color: #38bdf8; }
html.dark .pulse-cot-form__footer { border-top-color: #334155; }

.pulse-cot-grid {
    display: grid; gap: 0.75rem;
    grid-template-columns: repeat(1, minmax(0, 1fr));
}
.pulse-cot-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.pulse-cot-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pulse-cot-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.pulse-cot-grid--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.pulse-cot-grid--6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.pulse-cot-span-2 { grid-column: span 2; }
.pulse-cot-span-3 { grid-column: span 3; }
.pulse-cot-span-4 { grid-column: span 4; }
.pulse-cot-span-5 { grid-column: span 5; }
@media (max-width: 900px) {
    .pulse-cot-grid--3, .pulse-cot-grid--4, .pulse-cot-grid--5, .pulse-cot-grid--6 { grid-template-columns: 1fr 1fr; }
    .pulse-cot-span-2, .pulse-cot-span-3, .pulse-cot-span-4, .pulse-cot-span-5 { grid-column: span 2; }
}

.pulse-field { display: flex; flex-direction: column; gap: 0.25rem; }
.pulse-field__label {
    font-size: 0.75rem; font-weight: 500; color: #475569;
    text-transform: uppercase; letter-spacing: 0.02em;
}
html.dark .pulse-field__label { color: #cbd5e1; }

.pulse-cot-sol-add-panel {
    padding: 0.85rem 1rem;
    border: 1px dashed #cbd5e1;
    border-radius: 0.5rem;
    background: #f8fafc;
}
html.dark .pulse-cot-sol-add-panel {
    background: #0f172a;
    border-color: #475569;
}
.pulse-cot-solicitados-table-wrap {
    border: 1px solid #e2e8f0;
    border-radius: 0.5rem;
    overflow: hidden;
}
html.dark .pulse-cot-solicitados-table-wrap {
    border-color: #334155;
}
html.dark .pulse-cot-solicitados-table thead th {
    background: #1e293b;
    color: #cbd5e1;
    border-color: #334155;
}
html.dark .pulse-cot-solicitados-table tbody td {
    border-color: #334155;
    color: #f1f5f9;
}

.pulse-cot-solicitados { display: flex; flex-direction: column; gap: 0.5rem; }
.pulse-cot-solicitado-row {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 0.5rem;
    padding: 0.6rem 0.75rem;
}
.pulse-cot-solicitado-actions { display: flex; align-items: flex-end; }
html.dark .pulse-cot-solicitado-row { background: #1e293b; border-color: #334155; }

.pulse-cot-empty {
    color: #64748b; padding: 1.25rem; text-align: center;
    background: #ffffff; border: 1px dashed #cbd5e1; border-radius: 0.75rem;
}
html.dark .pulse-cot-empty { background: #1e293b; border-color: #475569; color: #94a3b8; }

/* Orçar */
.pulse-cot-orcar-shell { display: flex; flex-direction: column; gap: 1rem; }
.pulse-cot-orcar-header {
    display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem;
}
.pulse-cot-orcar-actions { display: flex; gap: 0.5rem; }
.pulse-cot-orcar-grid {
    display: grid; grid-template-columns: minmax(0, 280px) 1fr; gap: 1rem;
}
@media (max-width: 900px) { .pulse-cot-orcar-grid { grid-template-columns: 1fr; } }

.pulse-cot-orcar-list {
    display: flex; flex-direction: column; gap: 0.5rem;
    max-height: 60vh; overflow-y: auto; padding-right: 0.25rem;
}
.pulse-cot-orcar-card {
    text-align: left; appearance: none; background: #ffffff; border: 1px solid #e2e8f0;
    border-radius: 0.6rem; padding: 0.7rem 0.85rem; cursor: pointer;
    display: flex; flex-direction: column; gap: 0.4rem;
    transition: border-color 0.15s, background 0.15s;
}
.pulse-cot-orcar-card:hover { border-color: #38bdf8; background: #f0f9ff; }
.pulse-cot-orcar-card__top { display: flex; justify-content: space-between; align-items: center; gap: 0.4rem; font-size: 0.875rem; }
.pulse-cot-orcar-card__meta { display: flex; flex-direction: column; gap: 0.15rem; font-size: 0.75rem; color: #64748b; }
.pulse-cot-orcar-card__total { font-size: 0.8rem; color: #0f172a; font-weight: 600; }
.pulse-cot-orcar-flag {
    display: inline-flex; width: 22px; height: 22px; border-radius: 999px;
    align-items: center; justify-content: center; background: #16a34a; color: #fff;
    font-size: 0.6rem;
}
html.dark .pulse-cot-orcar-card { background: #1e293b; border-color: #334155; }
html.dark .pulse-cot-orcar-card:hover { background: #0c4a6e; border-color: #38bdf8; }
html.dark .pulse-cot-orcar-card__meta { color: #94a3b8; }
html.dark .pulse-cot-orcar-card__total { color: #f1f5f9; }

.pulse-cot-orcar-detail {
    background: #ffffff; border: 1px solid #e2e8f0;
    border-radius: 0.75rem; padding: 1rem;
}
html.dark .pulse-cot-orcar-detail { background: #1e293b; border-color: #334155; }

.pulse-cot-orcar-totais {
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.5rem; padding: 0.6rem; background: #f1f5f9;
    border-radius: 0.5rem;
}
.pulse-cot-orcar-totais .label { font-size: 0.7rem; color: #64748b; display: block; }
.pulse-cot-orcar-totais strong { font-size: 0.9rem; color: #0f172a; }
html.dark .pulse-cot-orcar-totais { background: #0f172a; }
html.dark .pulse-cot-orcar-totais .label { color: #94a3b8; }
html.dark .pulse-cot-orcar-totais strong { color: #f1f5f9; }

/* Proposta — tabela de itens (Gestor2) */
.pulse-cot-form--proposta { display: flex; flex-direction: column; gap: 0.25rem; }
.pulse-cot-prop-info {
    padding: 0.75rem 1rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 0.5rem;
    font-size: 0.8rem;
    color: #475569;
    margin-bottom: 0.5rem;
}
.pulse-cot-prop-info strong { color: #0f172a; }
.pulse-cot-prop-subsection { margin-top: 1rem; }
.pulse-cot-prop-itens__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-bottom: 0.25rem;
}
.pulse-cot-prop-itens__header h4 { margin: 0; }
.pulse-cot-prop-itens__badge {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6d28d9;
    background: #f5f3ff;
    border: 1px solid #ddd6fe;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
}
.pulse-cot-prop-table-wrap {
    overflow-x: auto;
    border: 1px solid #e2e8f0;
    border-radius: 0.5rem;
    max-height: min(52vh, 420px);
    overflow-y: auto;
}
.pulse-cot-prop-table { margin: 0; font-size: 0.8rem; }
.pulse-cot-prop-table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #f1f5f9;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    white-space: nowrap;
}
.pulse-cot-prop-table tbody tr.pulse-cot-prop-row { background: #f0fdf4; }
.pulse-cot-prop-table tbody tr.pulse-cot-prop-row:hover { background: #dcfce7; }
.pulse-cot-prop-table tfoot td { background: #f8fafc; border-top: 2px solid #cbd5e1; }
.pulse-cot-prop-tfoot-total td { font-size: 0.9rem; }
.pulse-cot-prop-total-val { color: #6d28d9; font-size: 1rem; }
.pulse-cot-markup-badge {
    display: inline-block;
    padding: 0.15rem 0.5rem;
    border-radius: 0.35rem;
    font-size: 0.7rem;
    font-weight: 700;
    border: 1px solid transparent;
    white-space: nowrap;
    line-height: 1.3;
}
/* Badges na tabela de proposta: contraste fixo (não herdar cor de html.dark .table td) */
.pulse-cot-prop-table .pulse-cot-markup-badge--min {
    color: #991b1b !important;
    background-color: #fecaca !important;
    border-color: #f87171 !important;
}
.pulse-cot-prop-table .pulse-cot-markup-badge--neg {
    color: #1e40af !important;
    background-color: #bfdbfe !important;
    border-color: #60a5fa !important;
}
.pulse-cot-prop-table .pulse-cot-markup-badge--ideal {
    color: #166534 !important;
    background-color: #bbf7d0 !important;
    border-color: #4ade80 !important;
}
.pulse-cot-prop-table .pulse-cot-markup-badge--ideal-plus {
    color: #14532d !important;
    background-color: #86efac !important;
    border-color: #22c55e !important;
}
.pulse-cot-markup-badge--min { color: #b91c1c; background-color: #fef2f2; border-color: #fecaca; }
.pulse-cot-markup-badge--neg { color: #1d4ed8; background-color: #eff6ff; border-color: #bfdbfe; }
.pulse-cot-markup-badge--ideal { color: #15803d; background-color: #dcfce7; border-color: #86efac; }
.pulse-cot-markup-badge--ideal-plus { color: #166534; background-color: #bbf7d0; border-color: #4ade80; }
html.dark .pulse-cot-prop-table .pulse-cot-markup-badge--min {
    color: #fecaca !important;
    background-color: #7f1d1d !important;
    border-color: #b91c1c !important;
}
html.dark .pulse-cot-prop-table .pulse-cot-markup-badge--neg {
    color: #bfdbfe !important;
    background-color: #1e3a8a !important;
    border-color: #3b82f6 !important;
}
html.dark .pulse-cot-prop-table .pulse-cot-markup-badge--ideal {
    color: #bbf7d0 !important;
    background-color: #166534 !important;
    border-color: #22c55e !important;
}
html.dark .pulse-cot-prop-table .pulse-cot-markup-badge--ideal-plus {
    color: #dcfce7 !important;
    background-color: #14532d !important;
    border-color: #16a34a !important;
}
html.dark .pulse-cot-prop-info { background: #0f172a; border-color: #334155; color: #94a3b8; }
html.dark .pulse-cot-prop-info strong { color: #f1f5f9; }
html.dark .pulse-cot-prop-table-wrap { border-color: #334155; }
html.dark .pulse-cot-prop-table thead th { background: #1e293b; color: #cbd5e1; }
html.dark .pulse-cot-prop-table tbody tr.pulse-cot-prop-row { background: #052e16; }
html.dark .pulse-cot-prop-table tbody tr.pulse-cot-prop-row:hover { background: #14532d; }
html.dark .pulse-cot-prop-table tfoot td { background: #0f172a; }

.pulse-cot-prop-pag-demo {
    margin-top: 0.85rem;
    padding: 0.85rem 1rem;
    background: #f8fafc;
    border: 1px solid #c7d2fe;
    border-radius: 0.5rem;
    border-left: 4px solid #6366f1;
}
.pulse-cot-prop-pag-demo__title {
    margin: 0 0 0.5rem;
    font-size: 0.8rem;
    font-weight: 600;
    color: #4338ca;
}
.pulse-cot-prop-pag-demo__list {
    margin: 0;
    padding: 0 0 0 1.1rem;
    list-style: disc;
}
.pulse-cot-prop-pag-demo__list li {
    margin: 0.45rem 0;
    font-size: 0.8rem;
    line-height: 1.45;
    color: #334155;
}
.pulse-cot-prop-pag-valor { color: #4f46e5; }
.pulse-cot-prop-pag-juros {
    margin-top: 0.65rem;
    padding: 0.5rem 0.65rem;
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 0.35rem;
    font-size: 0.78rem;
    color: #92400e;
}
html.dark .pulse-cot-prop-pag-demo { background: #1e1b4b; border-color: #4338ca; }
html.dark .pulse-cot-prop-pag-demo__title { color: #a5b4fc; }
html.dark .pulse-cot-prop-pag-demo__list li { color: #cbd5e1; }
html.dark .pulse-cot-prop-pag-juros { background: #422006; border-color: #b45309; color: #fcd34d; }

/* Identificar */
.pulse-cot-ident-shell { display: flex; flex-direction: column; gap: 1rem; }
.pulse-cot-ident-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; }
.pulse-cot-ident-actions { display: flex; gap: 0.4rem; flex-wrap: wrap; }

/* Proposta */
.pulse-cot-checkboxes {
    display: grid; gap: 0.4rem;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}
.pulse-cot-checkbox {
    background: #ffffff; border: 1px solid #e2e8f0;
    border-radius: 0.5rem; padding: 0.55rem 0.75rem;
    display: flex; gap: 0.5rem; align-items: flex-start;
    font-size: 0.8rem; cursor: pointer;
}
.pulse-cot-checkbox:hover { border-color: #38bdf8; background: #f0f9ff; }
html.dark .pulse-cot-checkbox { background: #1e293b; border-color: #334155; color: #f1f5f9; }
html.dark .pulse-cot-checkbox:hover { background: #0c4a6e; border-color: #38bdf8; }

.pulse-cot-resumo h4 { margin: 0 0 0.6rem 0; font-weight: 600; color: #0f172a; display: inline-flex; align-items: center; gap: 0.4rem; }
.pulse-cot-resumo-grid {
    display: grid; gap: 0.5rem;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
}
.pulse-cot-resumo-grid > div {
    background: #ffffff; border: 1px solid #e2e8f0;
    border-radius: 0.6rem; padding: 0.65rem 0.85rem;
    display: flex; flex-direction: column; gap: 0.15rem;
}
.pulse-cot-resumo-grid .label { font-size: 0.7rem; color: #64748b; text-transform: uppercase; letter-spacing: 0.02em; }
.pulse-cot-resumo-grid strong { font-size: 1.05rem; color: #0f172a; }
.pulse-cot-resumo-grid .pulse-cot-resumo-total { background: #ecfdf5; border-color: #6ee7b7; }
.pulse-cot-resumo-grid .pulse-cot-resumo-total strong { color: #047857; font-size: 1.2rem; }
html.dark .pulse-cot-resumo h4 { color: #f1f5f9; }
html.dark .pulse-cot-resumo-grid > div { background: #1e293b; border-color: #334155; }
html.dark .pulse-cot-resumo-grid .label { color: #94a3b8; }
html.dark .pulse-cot-resumo-grid strong { color: #f1f5f9; }
html.dark .pulse-cot-resumo-grid .pulse-cot-resumo-total { background: rgba(5, 150, 105, 0.15); border-color: rgba(5, 150, 105, 0.4); }
html.dark .pulse-cot-resumo-grid .pulse-cot-resumo-total strong { color: #6ee7b7; }

/* Toast */
.pulse-toast {
    position: fixed; bottom: 1.25rem; right: 1.25rem; z-index: 9999;
    padding: 0.7rem 1rem; border-radius: 0.5rem;
    background: #0f172a; color: #f1f5f9; font-size: 0.85rem;
    box-shadow: 0 10px 30px rgba(15,23,42,0.25);
    transition: opacity 0.3s, transform 0.3s;
}
.pulse-toast--success { background: #047857; }
.pulse-toast--error { background: #b91c1c; }
.pulse-toast--info { background: #0369a1; }
.pulse-toast.is-out { opacity: 0; transform: translateY(8px); }

/* Confirmação de ações (PulseConfirm) */
body.pulse-confirm-open { overflow: hidden; }
.pulse-confirm {
    position: fixed;
    inset: 0;
    z-index: 12000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    pointer-events: none;
}
.pulse-confirm[hidden] { display: none !important; }
.pulse-confirm.is-open { pointer-events: auto; }
.pulse-confirm__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    opacity: 0;
    transition: opacity 0.18s ease;
}
.pulse-confirm.is-open .pulse-confirm__backdrop { opacity: 1; }
.pulse-confirm__panel {
    position: relative;
    width: min(100%, 420px);
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 0.75rem;
    padding: 1.25rem 1.35rem 1.1rem;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.18);
    transform: translateY(8px) scale(0.98);
    opacity: 0;
    transition: opacity 0.18s ease, transform 0.18s ease;
}
.pulse-confirm.is-open .pulse-confirm__panel {
    opacity: 1;
    transform: translateY(0) scale(1);
}
.pulse-confirm__header {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin-bottom: 0.65rem;
}
.pulse-confirm__icon {
    flex-shrink: 0;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.95rem;
}
.pulse-confirm--primary .pulse-confirm__icon { background: #e0f2fe; color: #0369a1; }
.pulse-confirm--danger .pulse-confirm__icon { background: #fee2e2; color: #b91c1c; }
.pulse-confirm--warning .pulse-confirm__icon { background: #fef3c7; color: #b45309; }
.pulse-confirm__title {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 600;
    color: #0f172a;
    line-height: 1.35;
}
.pulse-confirm__message {
    margin: 0 0 1.1rem;
    font-size: 0.9rem;
    color: #475569;
    line-height: 1.5;
}
.pulse-confirm__actions {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    flex-wrap: wrap;
}
html.dark .pulse-confirm__panel { background: #1e293b; border-color: #334155; }
html.dark .pulse-confirm__title { color: #f1f5f9; }
html.dark .pulse-confirm__message { color: #94a3b8; }
html.dark .pulse-confirm--primary .pulse-confirm__icon { background: #0c4a6e; color: #7dd3fc; }
html.dark .pulse-confirm--danger .pulse-confirm__icon { background: #450a0a; color: #fca5a5; }
html.dark .pulse-confirm--warning .pulse-confirm__icon { background: #451a03; color: #fcd34d; }
@media (prefers-reduced-motion: reduce) {
    .pulse-confirm__backdrop,
    .pulse-confirm__panel { transition: none; }
}

/* ControlKan integrado ao layout Pulse */
.pulse-content--kan .pulse-kan-root {
    margin-top: 0.25rem;
}
.pulse-content--kan .pulse-kan-layout {
    min-height: 320px;
}

/* Central de notificacoes */
.pulse-notifications {
    position: relative;
    display: flex;
    align-items: center;
}
.pulse-notifications__trigger {
    width: 40px;
    height: 40px;
    border: 1px solid rgba(148, 163, 184, .45);
    border-radius: 10px;
    background: #fff;
    color: #475569;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    cursor: pointer;
    transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.pulse-notifications__trigger:hover,
.pulse-notifications.is-open .pulse-notifications__trigger {
    background: #fff7ed;
    border-color: rgba(249, 115, 22, .35);
    color: var(--pulse-orange-dark);
}
.pulse-notifications__badge {
    position: absolute;
    top: -6px;
    right: -6px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: #dc2626;
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    line-height: 18px;
    text-align: center;
    box-shadow: 0 0 0 2px #fff;
}
.pulse-notifications__panel {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    width: min(360px, calc(100vw - 24px));
    background: #fff;
    border: 1px solid rgba(148, 163, 184, .28);
    border-radius: 10px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .18);
    z-index: 70;
    overflow: hidden;
}
.pulse-notifications__panel[hidden] {
    display: none;
}
.pulse-notifications__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 14px;
    border-bottom: 1px solid #e2e8f0;
}
.pulse-notifications__head strong {
    color: #0f172a;
}
.pulse-notifications__head button {
    border: 0;
    background: transparent;
    color: var(--pulse-orange-dark);
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}
.pulse-notifications__list {
    max-height: 340px;
    overflow-y: auto;
}
.pulse-notifications__item,
.pulse-notification-row {
    display: flex;
    gap: 10px;
    padding: 12px 14px;
    color: #334155;
    text-decoration: none;
    border-bottom: 1px solid #eef2f7;
}
.pulse-notifications__item {
    flex-direction: column;
    gap: 3px;
}
.pulse-notifications__item:hover,
.pulse-notification-row:hover {
    background: #f8fafc;
}
.pulse-notifications__item.is-unread,
.pulse-notification-row.is-unread {
    background: #fff7ed;
}
.pulse-notifications__item-title,
.pulse-notification-row__title {
    color: #0f172a;
    font-size: 13px;
    font-weight: 800;
}
.pulse-notifications__item-msg,
.pulse-notification-row__msg {
    color: #64748b;
    font-size: 12px;
    line-height: 1.35;
}
.pulse-notifications__item-meta,
.pulse-notification-row__meta {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 700;
}
.pulse-notifications__empty {
    padding: 22px;
    text-align: center;
    color: #64748b;
    font-size: 13px;
}
.pulse-notifications__all {
    display: block;
    padding: 11px 14px;
    text-align: center;
    color: var(--pulse-orange-dark);
    font-size: 13px;
    font-weight: 800;
    border-top: 1px solid #e2e8f0;
}
.pulse-notification-row {
    align-items: center;
    position: relative;
}
.pulse-notification-row__icon {
    width: 36px;
    height: 36px;
    border: 1px solid;
    border-radius: 9px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}
.pulse-notification-row__body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.pulse-notification-row__dot {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    background: #f97316;
    margin-left: auto;
    flex: 0 0 auto;
}
html.dark .pulse-notifications__trigger {
    background: #1e293b;
    border-color: #334155;
    color: #cbd5e1;
}
html.dark .pulse-notifications__trigger:hover,
html.dark .pulse-notifications.is-open .pulse-notifications__trigger {
    background: #0f172a;
    border-color: rgba(251, 146, 60, .45);
    color: #fed7aa;
}
html.dark .pulse-notifications__badge {
    box-shadow: 0 0 0 2px #0f172a;
}
html.dark .pulse-notifications__panel {
    background: #1e293b;
    border-color: #334155;
    box-shadow: 0 18px 45px rgba(0, 0, 0, .35);
}
html.dark .pulse-notifications__head,
html.dark .pulse-notifications__all {
    border-color: #334155;
}
html.dark .pulse-notifications__head strong,
html.dark .pulse-notifications__item-title,
html.dark .pulse-notification-row__title {
    color: #f8fafc;
}
html.dark .pulse-notifications__item,
html.dark .pulse-notification-row {
    border-color: #334155;
    color: #cbd5e1;
}
html.dark .pulse-notifications__item:hover,
html.dark .pulse-notification-row:hover {
    background: #0f172a;
}
html.dark .pulse-notifications__item.is-unread,
html.dark .pulse-notification-row.is-unread {
    background: rgba(251, 146, 60, .12);
}
html.dark .pulse-notifications__item-msg,
html.dark .pulse-notification-row__msg,
html.dark .pulse-notifications__empty {
    color: #cbd5e1;
}
html.dark .pulse-notifications__item-meta,
html.dark .pulse-notification-row__meta {
    color: #94a3b8;
}

/* Chat interno */
.pulse-chat{display:flex;flex-direction:column;gap:1rem;min-height:calc(100vh - 150px)}
.pulse-chat__header,.pulse-chat__grid,.pulse-chat-modal__panel,.pulse-chat__empty-state{background:var(--pulse-card);border:1px solid var(--pulse-border);box-shadow:var(--pulse-shadow-sm)}
.pulse-chat__header{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-radius:8px;padding:.9rem 1rem}
.pulse-chat__title{display:flex;align-items:center;gap:.65rem;margin:0;color:var(--pulse-text);font-size:1.25rem;font-weight:800}
.pulse-chat__title-icon{display:inline-flex;width:2.25rem;height:2.25rem;align-items:center;justify-content:center;border-radius:8px;background:#f97316;color:#fff}
.pulse-chat__subtitle,.pulse-chat__room-head p,.pulse-chat-conversation small,.pulse-chat-user small{color:var(--pulse-muted)}
.pulse-chat__header-actions{display:flex;gap:.5rem;flex-wrap:wrap}
.pulse-chat__grid{display:grid;grid-template-columns:minmax(250px,320px) minmax(0,1fr);min-height:620px;border-radius:8px;overflow:hidden}
.pulse-chat__sidebar{display:flex;flex-direction:column;min-width:0;border-right:1px solid var(--pulse-border);background:color-mix(in srgb,var(--pulse-card) 88%,var(--pulse-surface) 12%)}
.pulse-chat__search{display:flex;align-items:center;gap:.5rem;padding:.75rem;border-bottom:1px solid var(--pulse-border);color:var(--pulse-muted)}
.pulse-chat__search input,.pulse-chat__composer textarea{width:100%;border:1px solid var(--pulse-border);border-radius:8px;background:var(--pulse-card);color:var(--pulse-text);outline:none}
.pulse-chat__search input{min-height:2.25rem;padding:.45rem .6rem}
.pulse-chat__conversations{overflow:auto;padding:.5rem}
.pulse-chat-conversation{width:100%;display:grid;grid-template-columns:2rem minmax(0,1fr) auto;gap:.65rem;align-items:center;padding:.65rem;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--pulse-text);text-align:left;cursor:pointer}
.pulse-chat-conversation:hover,.pulse-chat-conversation.is-active{background:color-mix(in srgb,#f97316 12%,var(--pulse-card) 88%);border-color:color-mix(in srgb,#f97316 32%,var(--pulse-border) 68%)}
.pulse-chat-conversation__icon,.pulse-chat-user__avatar,.pulse-chat-message__avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:color-mix(in srgb,#0ea5e9 14%,var(--pulse-card) 86%);color:#0369a1;overflow:hidden;flex:0 0 auto;font-weight:800}
.pulse-chat-conversation__icon{width:2rem;height:2rem}
.pulse-chat-conversation__icon img,.pulse-chat-user__avatar img,.pulse-chat-message__avatar img{width:100%;height:100%;object-fit:cover;display:block}
.pulse-chat-conversation__body{min-width:0}
.pulse-chat-conversation strong,.pulse-chat-conversation small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pulse-chat-conversation strong{display:flex;align-items:center;gap:.35rem}
.pulse-chat-conversation__badge{min-width:1.35rem;padding:.12rem .4rem;border-radius:999px;background:#ef4444;color:#fff;font-size:.75rem;text-align:center;font-weight:800}
.pulse-chat-status{display:inline-flex;align-items:center;gap:.25rem;vertical-align:middle;color:var(--pulse-muted);font-size:.72rem;font-weight:700}
.pulse-chat-status>span{width:.55rem;height:.55rem;border-radius:999px;background:#22c55e;box-shadow:0 0 0 2px color-mix(in srgb,#22c55e 18%,transparent)}
.pulse-chat-status.is-ocupado>span{background:#f97316;box-shadow:0 0 0 2px color-mix(in srgb,#f97316 20%,transparent)}
.pulse-chat-status.is-ausente>span{background:#38bdf8;box-shadow:0 0 0 2px color-mix(in srgb,#38bdf8 20%,transparent)}
.pulse-chat-status.is-offline>span{background:#94a3b8;box-shadow:0 0 0 2px color-mix(in srgb,#94a3b8 20%,transparent)}
.pulse-chat-status em{font-style:normal}
.pulse-chat__room{min-width:0;display:flex;flex-direction:column;min-height:0;overflow:hidden}
.pulse-chat__room-empty,.pulse-chat__empty-state{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:var(--pulse-muted);text-align:center;padding:2rem}
.pulse-chat__room-empty i,.pulse-chat__empty-state i{font-size:2rem;color:#f97316}
.pulse-chat__room-panel{display:flex;flex-direction:column;min-height:620px;min-width:0;overflow:hidden}
.pulse-chat__room-head{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.8rem 1rem;border-bottom:1px solid var(--pulse-border)}
.pulse-chat__room-profile{display:flex;align-items:center;gap:.75rem;min-width:0;border:0;background:transparent;padding:0;text-align:left;cursor:pointer;color:inherit}
.pulse-chat__room-profile:hover .pulse-chat__room-avatar,.pulse-chat__room-profile:focus-visible .pulse-chat__room-avatar{box-shadow:0 0 0 2px color-mix(in srgb,#f97316 45%,transparent)}
.pulse-chat__room-profile-text{min-width:0}
.pulse-chat__room-avatar-wrap{display:inline-flex;flex:0 0 auto}
.pulse-chat__room-avatar,.pulse-chat-profile-hero__avatar,.pulse-chat-profile-card__avatar{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:999px;background:color-mix(in srgb,#0ea5e9 14%,var(--pulse-card) 86%);color:#0369a1;overflow:hidden;font-weight:800;flex:0 0 auto}
.pulse-chat__room-avatar img,.pulse-chat-profile-hero__avatar img,.pulse-chat-profile-card__avatar img{width:100%;height:100%;object-fit:cover;display:block}
.pulse-chat__room-avatar--group{background:color-mix(in srgb,#f97316 16%,var(--pulse-card) 84%);color:#ea580c;font-size:1rem}
.pulse-chat__room-head h2{margin:0;color:var(--pulse-text);font-size:1rem;font-weight:800}
.pulse-chat__messages{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:1rem;background:color-mix(in srgb,var(--pulse-surface) 40%,var(--pulse-card) 60%);-webkit-overflow-scrolling:touch}
.pulse-chat-message{max-width:min(680px,90%);margin:0 0 .75rem;display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.5rem;align-items:end}
.pulse-chat-message.is-mine{margin-left:auto}
.pulse-chat-message.is-mine{grid-template-columns:minmax(0,1fr) 2rem}
.pulse-chat-message.is-mine .pulse-chat-message__avatar{order:2}
.pulse-chat-message.is-mine .pulse-chat-message__content{order:1}
.pulse-chat-message__avatar{width:2rem;height:2rem;font-size:.72rem}
.pulse-chat-message__content{min-width:0}
.pulse-chat-message__meta{display:flex;align-items:center;gap:.5rem;margin:0 0 .2rem;color:var(--pulse-muted);font-size:.75rem}
.pulse-chat-message__meta strong{display:inline-flex;align-items:center;gap:.35rem}
.pulse-chat-message.is-mine .pulse-chat-message__meta{justify-content:flex-end}
.pulse-chat-message__meta button{border:0;background:transparent;color:var(--pulse-muted);cursor:pointer}
.pulse-chat-message__bubble{padding:.65rem .8rem;border-radius:8px;background:var(--pulse-card);color:var(--pulse-text);border:1px solid var(--pulse-border);white-space:normal;overflow-wrap:anywhere}
.pulse-chat-message.is-mine .pulse-chat-message__bubble{background:#f97316;border-color:#ea580c;color:#fff}
.pulse-chat-message.is-pending{opacity:.72}
.pulse-chat-message.is-removed .pulse-chat-message__bubble{font-style:italic;color:var(--pulse-muted);background:transparent}
.pulse-chat-message__read{display:inline-flex;align-items:center;gap:.28rem;margin-top:.22rem;color:var(--pulse-muted);font-size:.68rem;line-height:1.2}
.pulse-chat-message.is-mine .pulse-chat-message__read{justify-content:flex-end;width:100%}
.pulse-chat-message__read.is-read{color:#0284c7}
.pulse-chat-message__read.is-partial{color:#64748b}
.pulse-chat-message__read.is-sending{opacity:.72}
.pulse-chat-message.is-mine .pulse-chat-message__read.is-read{color:#bae6fd}
.pulse-chat__composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;padding:.8rem;border-top:1px solid var(--pulse-border);position:sticky;bottom:0;z-index:2;background:var(--pulse-card);flex:0 0 auto}
.pulse-chat__composer textarea{resize:none;min-height:2.75rem;max-height:9rem;padding:.65rem .75rem}
.pulse-chat-modal[hidden]{display:none}
.pulse-chat-modal{position:fixed;inset:0;z-index:80;display:flex;justify-content:flex-end;align-items:stretch;padding:.75rem}
.pulse-chat-modal__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.46)}
.pulse-chat-modal__panel{position:relative;display:flex;flex-direction:column;width:min(460px,100%);height:min(100%,calc(100dvh - 1.5rem));max-height:calc(100dvh - 1.5rem);padding:0;overflow:hidden}
.pulse-chat-modal__panel form{display:flex;flex-direction:column;min-height:0;flex:1}
.pulse-chat-modal__head,.pulse-chat-modal__foot{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1rem;flex:0 0 auto}
.pulse-chat-modal__head{border-bottom:1px solid var(--pulse-border)}
.pulse-chat-modal__foot{margin-top:auto;border-top:1px solid var(--pulse-border);background:var(--pulse-card)}
.pulse-chat-modal__head h2{margin:0;color:var(--pulse-text);font-size:1.1rem;font-weight:800}
.pulse-chat-modal__close{display:inline-flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;border:1px solid var(--pulse-border);border-radius:8px;background:var(--pulse-card);color:var(--pulse-text);cursor:pointer}
.pulse-chat-modal__body{display:flex;flex-direction:column;gap:.65rem;min-height:0;flex:1;padding:.85rem 1rem;overflow:hidden}
.pulse-chat-modal__body .field{margin-bottom:0}
.pulse-chat-users{display:flex;flex-direction:column;gap:.5rem;min-height:160px;max-height:none;overflow:auto;padding:.25rem 0 .6rem}
.pulse-chat__select-help{padding:.45rem .55rem;color:var(--pulse-muted);font-size:.78rem}
.pulse-chat-user{display:grid;grid-template-columns:auto 2.2rem minmax(0,1fr);gap:.65rem;align-items:center;padding:.55rem;border:1px solid var(--pulse-border);border-radius:8px;cursor:pointer;color:var(--pulse-text)}
.pulse-chat-user.is-selected{border-color:#f97316;background:color-mix(in srgb,#f97316 12%,var(--pulse-card) 88%)}
.pulse-chat-user__avatar{width:2.2rem;height:2.2rem;font-size:.78rem}
.pulse-chat-user strong,.pulse-chat-user small{display:block}
.pulse-chat-user strong{color:var(--pulse-text)}
.pulse-chat-modal .label{color:var(--pulse-text)}
.pulse-chat-modal .input{background:var(--pulse-card);border-color:var(--pulse-border);color:var(--pulse-text)}
.pulse-chat-modal .input::placeholder,.pulse-chat__search input::placeholder,.pulse-chat__composer textarea::placeholder{color:var(--pulse-muted)}
.pulse-chat__no-results{padding:1rem;color:var(--pulse-muted);text-align:center}
.pulse-chat-profile-modal{position:fixed;inset:0;z-index:13050;display:flex;align-items:center;justify-content:center;padding:1rem;pointer-events:auto}
.pulse-chat-profile-modal.is-open{display:flex!important}
.pulse-chat-profile-modal[hidden]{display:none!important}
.pulse-chat-profile-modal__backdrop{position:absolute;inset:0;z-index:0;background:rgba(15,23,42,.46);cursor:pointer}
.pulse-chat-profile-modal__panel{position:relative;z-index:1;width:min(420px,100%);max-height:min(80vh,560px);overflow:auto;border:1px solid var(--pulse-border);border-radius:12px;background:var(--pulse-card);box-shadow:0 24px 70px rgba(15,23,42,.34);pointer-events:auto}
.pulse-chat-profile-modal__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--pulse-border)}
.pulse-chat-profile-modal__head h2{margin:0;font-size:1rem;font-weight:800;color:var(--pulse-text)}
.pulse-chat-profile-modal__body{padding:1rem}
.pulse-chat-profile-hero{display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center}
.pulse-chat-profile-hero__avatar{width:5rem;height:5rem;font-size:1.35rem}
.pulse-chat-profile-hero__text{display:flex;flex-direction:column;gap:.25rem;align-items:center}
.pulse-chat-profile-hero__text strong{font-size:1.05rem;color:var(--pulse-text)}
.pulse-chat-profile-hero__text span{color:var(--pulse-muted);font-size:.85rem}
.pulse-chat-profile-list{display:flex;flex-direction:column;gap:.55rem}
.pulse-chat-profile-card{display:grid;grid-template-columns:2.5rem minmax(0,1fr);gap:.65rem;align-items:center;padding:.55rem;border:1px solid var(--pulse-border);border-radius:10px}
.pulse-chat-profile-card__text strong,.pulse-chat-profile-card__text small{display:block}
.pulsechat-widget__panel.is-drag-ready .pulsechat-widget__head,.pulsechat-widget__panel.is-dragging .pulsechat-widget__head{cursor:grabbing}
.pulsechat-widget__head[data-chat-panel-drag-handle]{cursor:grab;user-select:none;touch-action:none}
.pulsechat-widget__head-actions,.pulsechat-widget__head-actions *{cursor:pointer}
html.dark .pulse-chat-conversation__icon,html.dark .pulse-chat-user__avatar,html.dark .pulse-chat-message__avatar{color:#7dd3fc}
html.dark .pulse-chat-user{background:#0f172a;border-color:#334155;color:#e2e8f0}
html.dark .pulse-chat-user strong,html.dark .pulse-chat-modal .label{color:#f8fafc}
html.dark .pulse-chat-user small,html.dark .pulse-chat__select-help{color:#cbd5e1}
html.dark .pulse-chat-modal .input,html.dark .pulse-chat__search input,html.dark .pulse-chat__composer textarea{background:#0f172a;border-color:#334155;color:#f8fafc}
html.dark .pulsechat-widget__panel,
html.dark .pulsechat-widget__head,
html.dark .pulse-chat-modal__panel{background:#1e293b;border-color:#334155;color:#f8fafc}
html.dark .pulse-chat__sidebar{background:#172033;border-color:#334155}
html.dark .pulse-chat__room-head{border-color:#334155;background:#1e293b}
html.dark .pulse-chat__room-head h2,
html.dark .pulse-chat-conversation strong,
html.dark .pulse-chat-message__meta strong{color:#f8fafc}
html.dark .pulse-chat__room-head p,
html.dark .pulse-chat-conversation small,
html.dark .pulse-chat-message__meta,
html.dark .pulse-chat__no-results,
html.dark .pulse-chat__room-empty{color:#cbd5e1}
html.dark .pulse-chat-conversation{color:#e2e8f0}
html.dark .pulse-chat-conversation:hover,
html.dark .pulse-chat-conversation.is-active,
html.dark .pulse-chat-user.is-selected{background:rgba(249,115,22,.16);border-color:rgba(251,146,60,.55)}
html.dark .pulse-chat__messages{background:#0f172a}
html.dark .pulse-chat-message__bubble{background:#1e293b;border-color:#334155;color:#f8fafc}
html.dark .pulse-chat-message.is-mine .pulse-chat-message__bubble{background:#ea580c;border-color:#fb923c;color:#fff}
html.dark .pulse-chat-message.is-removed .pulse-chat-message__bubble{background:transparent;color:#94a3b8}
html.dark .pulse-chat-message__read{color:#94a3b8}
html.dark .pulse-chat-message__read.is-read{color:#7dd3fc}
html.dark .pulse-chat-message.is-mine .pulse-chat-message__read.is-read{color:#bae6fd}
html.dark .pulsechat-widget__icon-btn,
html.dark .pulse-chat-modal__close{background:#0f172a;border-color:#334155;color:#f8fafc}

/* Auditoria PulseChat */
.pulsechat-audit{display:flex;flex-direction:column;gap:1rem}
.pulsechat-audit__hero,.pulsechat-audit__filters,.pulsechat-audit__section{background:var(--pulse-card);border:1px solid var(--pulse-border);border-radius:8px;box-shadow:var(--pulse-shadow-sm)}
.pulsechat-audit__hero{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem}
.pulsechat-audit__hero h1{display:flex;align-items:center;gap:.6rem;margin:0;color:var(--pulse-text);font-size:1.35rem;font-weight:800}
.pulsechat-audit__hero h1 i{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:8px;background:#f97316;color:#fff}
.pulsechat-audit__hero p,.pulsechat-audit__section-head span{margin:0;color:var(--pulse-muted);font-size:.9rem}
.pulsechat-audit__filters{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(180px,1.2fr) minmax(160px,1fr) repeat(3,minmax(120px,.7fr)) auto;gap:.75rem;align-items:end;padding:1rem}
.pulsechat-audit__filters .label{color:var(--pulse-text);font-size:.78rem}
.pulsechat-audit__filters .input,.pulsechat-audit__filters select{background:var(--pulse-card);border-color:var(--pulse-border);color:var(--pulse-text)}
.pulsechat-audit__filters input[type="date"]{min-height:2.65rem;padding-right:.65rem;color-scheme:light}
.pulsechat-audit__filters input[type="date"]::-webkit-calendar-picker-indicator{display:none;-webkit-appearance:none}
.pulsechat-audit__filter-actions{display:flex;gap:.5rem;align-items:center;white-space:nowrap}
.pulsechat-audit__reader{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:0;background:var(--pulse-card);border:1px solid var(--pulse-border);border-radius:8px;box-shadow:var(--pulse-shadow-sm);overflow:hidden}
.pulsechat-audit__reader-side{padding:1rem;border-right:1px solid var(--pulse-border);background:color-mix(in srgb,var(--pulse-card) 92%,#f97316 8%)}
.pulsechat-audit__reader-kicker{display:block;color:#ea580c;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.pulsechat-audit__reader-side h2{margin:.25rem 0 .35rem;color:var(--pulse-text);font-size:1rem;font-weight:800;line-height:1.25}
.pulsechat-audit__reader-side p{margin:0;color:var(--pulse-muted);font-size:.85rem;line-height:1.35}
.pulsechat-audit__reader-meta{display:grid;gap:.35rem;margin-top:.85rem;color:var(--pulse-muted);font-size:.78rem}
.pulsechat-audit__reader-meta strong{color:var(--pulse-text)}
.pulsechat-audit__reader-chat{display:flex;flex-direction:column;gap:.55rem;max-height:520px;overflow:auto;padding:1rem;background:color-mix(in srgb,var(--pulse-card) 94%,var(--pulse-surface) 6%)}
.pulsechat-audit__bubble{width:min(680px,100%);padding:.65rem .75rem;border:1px solid var(--pulse-border);border-radius:8px;background:var(--pulse-card);color:var(--pulse-text);box-shadow:0 1px 2px rgba(15,23,42,.04)}
.pulsechat-audit__bubble header{display:flex;justify-content:space-between;gap:.75rem;margin-bottom:.35rem;color:var(--pulse-muted);font-size:.74rem}
.pulsechat-audit__bubble header strong{color:var(--pulse-text);font-size:.82rem}
.pulsechat-audit__bubble p{margin:0;white-space:normal;overflow-wrap:anywhere;font-size:.88rem;line-height:1.45}
.pulsechat-audit__bubble small{display:block;margin-top:.35rem;color:var(--pulse-muted);font-size:.72rem}
.pulsechat-audit__bubble.is-removed{border-style:dashed;background:transparent;color:var(--pulse-muted)}
.pulsechat-audit__reader-empty{display:flex;align-items:center;gap:.6rem;padding:.85rem 1rem;border:1px dashed var(--pulse-border);border-radius:8px;color:var(--pulse-muted);background:color-mix(in srgb,var(--pulse-card) 90%,var(--pulse-surface) 10%);font-size:.88rem}
.pulsechat-audit__reader-empty i{color:#f97316}
.pulsechat-audit__section{overflow:hidden}
.pulsechat-audit__section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border-bottom:1px solid var(--pulse-border)}
.pulsechat-audit__section-head h2{margin:0;color:var(--pulse-text);font-size:1rem;font-weight:800}
.pulsechat-audit__table-wrap{overflow:auto}
.pulsechat-audit__table{width:100%;border-collapse:collapse;font-size:.86rem}
.pulsechat-audit__table th{position:sticky;top:0;z-index:1;text-align:left;padding:.65rem .75rem;background:color-mix(in srgb,var(--pulse-card) 88%,var(--pulse-surface) 12%);color:var(--pulse-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.02em;border-bottom:1px solid var(--pulse-border)}
.pulsechat-audit__table td{vertical-align:top;padding:.65rem .75rem;color:var(--pulse-text);border-bottom:1px solid var(--pulse-border)}
.pulsechat-audit__table td span:not(.pulsechat-audit__tag),.pulsechat-audit__table td small{display:block;color:var(--pulse-muted)}
.pulsechat-audit__table td .pulsechat-audit__tag{display:inline-flex;color:#fff}
.pulsechat-audit__message{min-width:280px;max-width:560px;white-space:normal;overflow-wrap:anywhere}
.pulsechat-audit__tag{display:inline-flex;align-items:center;width:max-content;min-width:4.5rem;justify-content:center;border-radius:6px;padding:.3rem .6rem;font-size:.78rem;font-weight:700;line-height:1.2;letter-spacing:.02em;border:1px solid transparent;white-space:nowrap}
.pulsechat-audit__tag.is-ok,.pulsechat-audit__tag.is-create{background:#15803d;border-color:#166534;color:#fff}
.pulsechat-audit__tag.is-warning,.pulsechat-audit__tag.is-edit{background:#b45309;border-color:#92400e;color:#fff}
.pulsechat-audit__tag.is-danger,.pulsechat-audit__tag.is-delete{background:#b91c1c;border-color:#991b1b;color:#fff}
.pulsechat-audit__tag.is-view{background:#1d4ed8;border-color:#1e40af;color:#fff}
.pulsechat-audit__tag.is-list{background:#475569;border-color:#334155;color:#fff}
.pulsechat-audit__tag.is-secret{background:#c2410c;border-color:#9a3412;color:#fff}
.pulsechat-audit__tag.is-neutral{background:#64748b;border-color:#475569;color:#fff}
.pulsechat-audit__empty{padding:1.5rem;text-align:center;color:var(--pulse-muted)}
.pulsechat-audit__pagination{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;color:var(--pulse-muted);font-size:.88rem}
.pulsechat-audit__pagination .is-disabled{opacity:.45;pointer-events:none}
.pulsechat-audit__events{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem;padding:1rem}
.pulsechat-audit__events article{border:1px solid var(--pulse-border);border-radius:8px;padding:.75rem;background:color-mix(in srgb,var(--pulse-card) 92%,var(--pulse-surface) 8%)}
.pulsechat-audit__events strong{display:block;color:var(--pulse-text);font-weight:800}
.pulsechat-audit__events span,.pulsechat-audit__events p{display:block;margin:.15rem 0 0;color:var(--pulse-muted);font-size:.82rem}
html.dark .pulsechat-audit__hero,html.dark .pulsechat-audit__filters,html.dark .pulsechat-audit__section,html.dark .pulsechat-audit__reader{background:#1e293b;border-color:#334155;color:#f8fafc}
html.dark .pulsechat-audit__hero h1,html.dark .pulsechat-audit__section-head h2,html.dark .pulsechat-audit__filters .label,html.dark .pulsechat-audit__table td,html.dark .pulsechat-audit__events strong,html.dark .pulsechat-audit__reader-side h2,html.dark .pulsechat-audit__reader-meta strong,html.dark .pulsechat-audit__bubble header strong{color:#f8fafc}
html.dark .pulsechat-audit__hero p,html.dark .pulsechat-audit__section-head span,html.dark .pulsechat-audit__table td span:not(.pulsechat-audit__tag),html.dark .pulsechat-audit__table td small,html.dark .pulsechat-audit__events span,html.dark .pulsechat-audit__events p,html.dark .pulsechat-audit__empty,html.dark .pulsechat-audit__pagination,html.dark .pulsechat-audit__reader-side p,html.dark .pulsechat-audit__reader-meta,html.dark .pulsechat-audit__bubble header,html.dark .pulsechat-audit__bubble small,html.dark .pulsechat-audit__reader-empty{color:#cbd5e1}
html.dark .pulsechat-audit__table td .pulsechat-audit__tag{color:#fff}
html.dark .pulsechat-audit__tag.is-ok,html.dark .pulsechat-audit__tag.is-create{background:#16a34a;border-color:#4ade80;color:#fff}
html.dark .pulsechat-audit__tag.is-warning,html.dark .pulsechat-audit__tag.is-edit{background:#d97706;border-color:#fbbf24;color:#fff}
html.dark .pulsechat-audit__tag.is-danger,html.dark .pulsechat-audit__tag.is-delete{background:#dc2626;border-color:#f87171;color:#fff}
html.dark .pulsechat-audit__tag.is-view{background:#2563eb;border-color:#60a5fa;color:#fff}
html.dark .pulsechat-audit__tag.is-list{background:#64748b;border-color:#94a3b8;color:#fff}
html.dark .pulsechat-audit__tag.is-secret{background:#ea580c;border-color:#fb923c;color:#fff}
html.dark .pulsechat-audit__tag.is-neutral{background:#475569;border-color:#94a3b8;color:#f8fafc}
html.dark .pulsechat-audit__filters .input,html.dark .pulsechat-audit__filters select{background:#0f172a;border-color:#334155;color:#f8fafc}
html.dark .pulsechat-audit__filters input[type="date"]{color-scheme:dark}
html.dark .pulsechat-audit__filters input[type="date"]::-webkit-calendar-picker-indicator{display:none;-webkit-appearance:none}
html.dark .pulsechat-audit__table th{background:#0f172a;border-color:#334155;color:#94a3b8}
html.dark .pulsechat-audit__table td,html.dark .pulsechat-audit__section-head,html.dark .pulsechat-audit__reader-side,html.dark .pulsechat-audit__bubble{border-color:#334155}
html.dark .pulsechat-audit__events article{background:#0f172a;border-color:#334155}
html.dark .pulsechat-audit__reader-side{background:#172033}
html.dark .pulsechat-audit__reader-chat{background:#0f172a}
html.dark .pulsechat-audit__bubble{background:#1e293b;color:#f8fafc}
html.dark .pulsechat-audit__bubble.is-removed{background:transparent;color:#94a3b8}
html.dark .pulsechat-audit__reader-empty{background:#0f172a;border-color:#334155}
.pulsechat-audit--inventario .pulsechat-audit__table td.pulsechat-audit__col-acao{min-width:7.5rem}
.pulsechat-audit--inventario .pulsechat-audit__table th.pulsechat-audit__col-acao{min-width:7.5rem}
.pulsechat-audit--inventario .pulsechat-audit__col-registro{min-width:220px;max-width:360px}
.pulsechat-audit--inventario .pulsechat-audit__col-contexto{min-width:180px;max-width:280px}
.pulsechat-audit__registro-titulo{display:block;color:var(--pulse-text);font-size:.9rem;font-weight:700;line-height:1.35}
.pulsechat-audit__registro-meta{display:block;margin-top:.2rem;color:var(--pulse-muted);font-size:.74rem}
.pulsechat-audit__registro-cod{display:block;margin-top:.15rem;color:var(--pulse-muted);font-size:.68rem;opacity:.85}
.pulsechat-audit__col-registro .pulsechat-audit__registro-meta{color:var(--pulse-muted)}
html.dark .pulsechat-audit__registro-titulo{color:#f8fafc}
html.dark .pulsechat-audit__registro-meta{color:#94a3b8}
@media (max-width:1200px){.pulsechat-audit__filters{grid-template-columns:repeat(2,minmax(0,1fr))}.pulsechat-audit__filter-actions{grid-column:1/-1}}
@media (max-width:700px){.pulsechat-audit__hero,.pulsechat-audit__pagination{flex-direction:column;align-items:stretch}.pulsechat-audit__filters{grid-template-columns:1fr}.pulsechat-audit__reader{grid-template-columns:1fr}.pulsechat-audit__reader-side{border-right:0;border-bottom:1px solid var(--pulse-border)}}
@media (max-width:900px){.pulse-chat__grid{grid-template-columns:1fr}.pulse-chat__sidebar{border-right:0;border-bottom:1px solid var(--pulse-border);max-height:260px}.pulse-chat__header{flex-direction:column;align-items:stretch}.pulse-chat__composer{grid-template-columns:1fr}}

/* PulseChat flutuante */
.pulsechat-widget{position:fixed;right:1.25rem;bottom:1.25rem;z-index:70;pointer-events:none}
.pulsechat-widget *{box-sizing:border-box}
.pulsechat-widget__launcher{position:relative;display:inline-flex;align-items:center;justify-content:center;width:3.45rem;height:3.45rem;border:0;border-radius:999px;background:#f97316;color:#fff;box-shadow:0 18px 40px rgba(15,23,42,.28);cursor:grab;pointer-events:auto;font-size:1.25rem;touch-action:none;user-select:none}
.pulsechat-widget.is-drag-ready .pulsechat-widget__launcher,.pulsechat-widget.is-dragging .pulsechat-widget__launcher{cursor:grabbing}
.pulsechat-widget.is-dragging{transition:none}
.pulsechat-widget.is-dragging .pulsechat-widget__launcher{transform:scale(1.04);box-shadow:0 22px 52px rgba(15,23,42,.38)}
.pulsechat-widget__launcher:hover{background:#ea580c}
.pulsechat-widget.has-unread .pulsechat-widget__launcher{animation:pulsechat-attention 1.15s ease-in-out infinite;box-shadow:0 0 0 0 rgba(249,115,22,.55),0 18px 40px rgba(15,23,42,.32)}
@keyframes pulsechat-attention{0%{transform:translateY(0) scale(1);box-shadow:0 0 0 0 rgba(249,115,22,.55),0 18px 40px rgba(15,23,42,.32)}55%{transform:translateY(-2px) scale(1.04);box-shadow:0 0 0 .55rem rgba(249,115,22,0),0 18px 40px rgba(15,23,42,.32)}100%{transform:translateY(0) scale(1);box-shadow:0 0 0 0 rgba(249,115,22,0),0 18px 40px rgba(15,23,42,.32)}}
.pulsechat-widget__badge{position:absolute;top:-.25rem;right:-.25rem;min-width:1.35rem;height:1.35rem;padding:0 .35rem;border-radius:999px;background:#ef4444;color:#fff;border:2px solid var(--pulse-card);font-size:.7rem;font-weight:800;line-height:1.1rem;text-align:center}
.pulsechat-widget__panel{position:absolute;right:0;bottom:4.25rem;width:min(920px,calc(100vw - 2rem));height:min(600px,calc(100vh - var(--topbar-h) - 5.5rem));height:min(600px,calc(100dvh - var(--topbar-h) - 5.5rem));min-height:360px;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--pulse-border);border-radius:8px;background:var(--pulse-card);box-shadow:0 24px 70px rgba(15,23,42,.34);pointer-events:auto}
.pulsechat-widget__panel[hidden]{display:none}
.pulsechat-widget__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:3.25rem;padding:.65rem .8rem;border-bottom:1px solid var(--pulse-border);background:color-mix(in srgb,var(--pulse-card) 92%,#f97316 8%)}
.pulsechat-widget__head strong{display:block;color:var(--pulse-text);font-size:.95rem;font-weight:800}
.pulsechat-widget__head .pulse-chat__subtitle{display:block;font-size:.75rem}
.pulsechat-widget__head-actions{display:flex;align-items:center;gap:.35rem}
.pulsechat-widget__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1px solid var(--pulse-border);border-radius:8px;background:var(--pulse-card);color:var(--pulse-text);cursor:pointer}
.pulsechat-widget__icon-btn:hover{background:color-mix(in srgb,#f97316 12%,var(--pulse-card) 88%);border-color:#fb923c}
.pulsechat-widget .pulse-chat{min-height:auto}
.pulsechat-widget .pulse-chat__grid{flex:1;min-height:0;height:calc(100% - 3.25rem);border:0;border-radius:0;box-shadow:none;overflow:hidden}
.pulsechat-widget .pulse-chat__sidebar{width:290px}
.pulsechat-widget .pulse-chat__room-panel{min-height:0;height:100%;overflow:hidden}
.pulsechat-widget .pulse-chat__room-empty{min-height:100%;padding:1rem}
.pulsechat-widget .pulse-chat__messages{min-height:0;max-height:100%}
.pulsechat-widget .pulse-chat__composer{grid-template-columns:minmax(0,1fr) 2.5rem;padding:.65rem}
.pulsechat-widget .pulse-chat__composer textarea{min-height:2.5rem}
.pulsechat-widget .pulse-chat-modal{position:fixed;inset:0;z-index:90;pointer-events:auto;display:block;padding:0}
.pulsechat-widget .pulse-chat-modal[hidden]{display:none!important}
.pulsechat-widget .pulse-chat-modal__panel{position:fixed;right:.85rem;bottom:.1rem;top:auto;width:min(420px,calc(100vw - 1.7rem));height:min(460px,calc(100vh - 1rem));height:min(460px,calc(100dvh - 1rem));max-height:calc(100vh - 1rem);max-height:calc(100dvh - 1rem);border-radius:10px;box-shadow:0 24px 70px rgba(15,23,42,.34)}
.pulsechat-widget .pulse-chat-modal__foot{padding:.45rem .65rem}
.pulsechat-widget .pulse-chat-modal__foot .pulse-btn{min-height:2rem;padding:.38rem .7rem;font-size:.78rem;line-height:1.1}
html.dark .pulsechat-widget__badge{border-color:#1e293b}
@media (max-width:760px){.pulsechat-widget{right:.75rem;bottom:.75rem}.pulsechat-widget__panel{right:-.25rem;bottom:4rem;width:calc(100vw - 1rem);height:calc(100vh - var(--topbar-h) - 5rem);height:calc(100dvh - var(--topbar-h) - 5rem);min-height:320px}.pulsechat-widget .pulse-chat__grid{grid-template-columns:1fr}.pulsechat-widget .pulse-chat__sidebar{width:100%;max-height:190px}.pulsechat-widget .pulse-chat__room-panel{min-height:0}.pulsechat-widget .pulse-chat-modal__panel{right:.5rem;bottom:.15rem;width:calc(100vw - 1rem);height:min(450px,calc(100vh - .75rem));height:min(450px,calc(100dvh - .75rem));max-height:calc(100vh - .75rem);max-height:calc(100dvh - .75rem);border-radius:10px}.pulse-chat-modal__foot{flex-wrap:wrap}.pulse-chat-modal__foot .pulse-btn{flex:1 1 120px}}
@media (max-height:700px){.pulsechat-widget__panel{height:calc(100vh - var(--topbar-h) - 5rem);height:calc(100dvh - var(--topbar-h) - 5rem);min-height:300px}.pulsechat-widget__head{min-height:2.8rem;padding:.45rem .65rem}.pulsechat-widget .pulse-chat__grid{height:calc(100% - 2.8rem)}.pulsechat-widget .pulse-chat__sidebar{max-height:none}.pulsechat-widget .pulse-chat__room-empty{padding:.75rem}.pulsechat-widget .pulse-chat__room-empty i{font-size:1.55rem}}
@media (max-height:580px){.pulsechat-widget__panel{height:calc(100vh - var(--topbar-h) - 4.6rem);height:calc(100dvh - var(--topbar-h) - 4.6rem);min-height:260px}.pulsechat-widget__head .pulse-chat__subtitle{font-size:.7rem}.pulsechat-widget__icon-btn{width:1.8rem;height:1.8rem}.pulsechat-widget .pulse-chat__search{padding:.5rem}.pulsechat-widget .pulse-chat__search input{height:2rem}.pulsechat-widget .pulse-chat__sidebar{max-height:165px}}
@media (max-height:720px){.pulsechat-widget .pulse-chat-modal__panel{height:min(420px,calc(100vh - .75rem));height:min(420px,calc(100dvh - .75rem));max-height:calc(100vh - .75rem);max-height:calc(100dvh - .75rem);bottom:.1rem}.pulse-chat-modal__head{padding:.55rem .75rem}.pulse-chat-modal__body{padding:.55rem .75rem}.pulse-chat-user{padding:.42rem}.pulse-chat-users{min-height:90px}.pulse-chat-modal__head h2{font-size:1rem}}
@media (max-height:560px){.pulsechat-widget .pulse-chat-modal__panel{height:min(360px,calc(100vh - .5rem));height:min(360px,calc(100dvh - .5rem));max-height:calc(100vh - .5rem);max-height:calc(100dvh - .5rem);bottom:.05rem}.pulse-chat-modal__head{padding:.45rem .65rem}.pulse-chat-modal__body{padding:.45rem .65rem;gap:.45rem}.pulse-chat-user__avatar{width:1.9rem;height:1.9rem}.pulse-chat-user{grid-template-columns:auto 1.9rem minmax(0,1fr);gap:.5rem}.pulse-chat-user small{display:none}}

/* ------------------------------------------------------------------ Intranet */
.pulse-content--intranet {
    width: 100%;
    max-width: none;
    padding: 1.25rem 1.5rem 1.5rem 1.25rem;
}

@media (min-width: 769px) {
    .pulse-content--intranet {
        padding: 1.5rem 2rem 2rem 1.5rem;
    }
}

@media (min-width: 1200px) {
    .pulse-content--intranet {
        padding: 1.75rem 2.25rem 2rem 1.75rem;
    }
}

.intranet-page {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    width: 100%;
    color: var(--pulse-text);
}

.intranet-hero {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.intranet-hero--banner {
    position: relative;
    display: block;
    overflow: hidden;
    border: 1px solid var(--pulse-border);
    border-radius: 16px;
    background: var(--pulse-card);
    box-shadow: 0 8px 28px rgba(15, 23, 42, 0.06);
}

.intranet-hero__cover {
    display: block;
    width: 100%;
    height: 96px;
    background:
        radial-gradient(circle at 88% 18%, rgba(255, 255, 255, 0.24) 0%, transparent 40%),
        linear-gradient(120deg, color-mix(in srgb, var(--pulse-orange) 86%, #1e293b 14%), color-mix(in srgb, var(--pulse-orange-dark, #ea580c) 72%, #0f172a 28%));
}

.intranet-hero--compact .intranet-hero__cover {
    height: 72px;
}

.intranet-hero__body {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: end;
    gap: 1rem 1.25rem;
    padding: 0 1.35rem 1.2rem 1.35rem;
    margin-top: -1.75rem;
}

.intranet-hero--compact .intranet-hero__body {
    margin-top: -1.35rem;
    padding-bottom: 1rem;
}

.intranet-hero--reader .intranet-hero__body {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    margin-top: -0.5rem;
    padding-top: 0.75rem;
}

.intranet-hero--reader .intranet-hero__brand {
    display: none;
}

.intranet-hero__brand {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    background: var(--pulse-card);
    border: 3px solid var(--pulse-card);
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
    color: var(--pulse-orange);
    font-size: 1.25rem;
}

.intranet-hero__info {
    min-width: 0;
}

.intranet-hero__body > .intranet-actions,
.intranet-hero__body > .pulse-btn {
    align-self: end;
}

.intranet-kicker {
    display: block;
    margin-bottom: 0.2rem;
    color: var(--pulse-orange);
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.intranet-hero h1,
.intranet-reader__head h1,
.intranet-panel__head h2 {
    margin: 0;
    color: var(--pulse-text);
    font-weight: 850;
}

.intranet-hero h1 {
    font-size: clamp(1.35rem, 2.2vw, 1.75rem);
    line-height: 1.15;
}

.intranet-hero p,
.intranet-reader__head p,
.intranet-panel__head p {
    margin: 0.35rem 0 0;
    color: var(--pulse-muted);
    font-size: 0.86rem;
    line-height: 1.45;
}

.intranet-actions {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
}

.intranet-overview {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.85rem;
}

.intranet-overview article {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-areas: "icon number" "icon label";
    gap: 0.05rem 0.7rem;
    align-items: center;
    padding: 0.95rem 1rem;
    border: 1px solid var(--pulse-border);
    border-radius: 14px;
    background: var(--pulse-card);
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04);
}

.intranet-overview i {
    grid-area: icon;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 10px;
    background: color-mix(in srgb, var(--pulse-orange) 12%, var(--pulse-card) 88%);
    color: var(--pulse-orange);
}

.intranet-overview span {
    grid-area: number;
    color: var(--pulse-text);
    font-size: 1.35rem;
    font-weight: 900;
    line-height: 1;
}

.intranet-overview strong {
    grid-area: label;
    color: var(--pulse-muted);
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.intranet-overview article.is-new {
    border-color: color-mix(in srgb, var(--pulse-orange) 38%, var(--pulse-border) 62%);
}

.intranet-overview article.is-urgent {
    border-color: #fca5a5;
    background: color-mix(in srgb, #fee2e2 34%, var(--pulse-card) 66%);
}

.intranet-overview article.is-urgent i {
    background: #fee2e2;
    color: #b91c1c;
}

.intranet-overview article.is-read {
    border-color: #bfdbfe;
    background: color-mix(in srgb, #dbeafe 32%, var(--pulse-card) 68%);
}

.intranet-overview article.is-read i {
    background: #dbeafe;
    color: #1d4ed8;
}

.intranet-panel {
    border: 1px solid var(--pulse-border);
    border-radius: 14px;
    background: var(--pulse-card);
    box-shadow: 0 2px 14px rgba(15, 23, 42, 0.04);
    overflow: hidden;
}

.intranet-panel__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 1rem 1.35rem 0.85rem 1.45rem;
    border-bottom: 1px solid color-mix(in srgb, var(--pulse-border) 85%, transparent);
}

.intranet-panel__head h2 {
    font-size: 0.98rem;
}

.intranet-panel--feed .intranet-feed,
.intranet-panel--feed .intranet-empty {
    margin: 0 1.35rem 1.2rem 1.45rem;
}

.intranet-release {
    border: 1px solid color-mix(in srgb, var(--pulse-orange) 38%, var(--pulse-border) 62%);
    border-radius: 14px;
    background: color-mix(in srgb, var(--pulse-orange) 8%, var(--pulse-card) 92%);
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04);
}

.intranet-release summary {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: center;
    padding: 0.95rem 1.15rem;
    cursor: pointer;
    list-style: none;
}

.intranet-release summary::-webkit-details-marker {
    display: none;
}

.intranet-release__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 10px;
    background: var(--pulse-orange);
    color: #fff;
}

.intranet-release__body {
    min-width: 0;
}

.intranet-release__body strong,
.intranet-release__body small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.intranet-release__body strong {
    color: var(--pulse-text);
    font-size: 0.92rem;
    font-weight: 850;
}

.intranet-release__body small {
    margin-top: 0.12rem;
    color: var(--pulse-muted);
    font-size: 0.76rem;
}

.intranet-release__toggle {
    padding: 0.32rem 0.65rem;
    border-radius: 999px;
    background: var(--pulse-card);
    border: 1px solid var(--pulse-border);
    color: var(--pulse-text);
    font-size: 0.74rem;
    font-weight: 800;
}

.intranet-release[open] .intranet-release__toggle {
    background: var(--pulse-orange);
    border-color: var(--pulse-orange);
    color: #fff;
}

.intranet-release__content {
    padding: 0 1.15rem 1.1rem 4rem;
    color: var(--pulse-text);
    font-size: 0.9rem;
    line-height: 1.65;
}

.intranet-filters {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) minmax(180px, 240px) auto auto;
    gap: 0.75rem;
    align-items: end;
    padding: 1rem 1.35rem 1.2rem 1.45rem;
}

.intranet-filters label span {
    display: block;
    margin-bottom: 0.25rem;
    color: var(--pulse-muted);
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.intranet-feed {
    display: grid;
    gap: 0.75rem;
}

.intranet-post {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.85rem;
    align-items: center;
    padding: 1rem 1.05rem;
    border: 1px solid var(--pulse-border);
    border-radius: 12px;
    background: color-mix(in srgb, var(--pulse-card) 96%, var(--pulse-surface) 4%);
    overflow: hidden;
    transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.intranet-post:hover {
    border-color: color-mix(in srgb, var(--pulse-orange) 35%, var(--pulse-border) 65%);
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
    transform: translateY(-1px);
}

.intranet-post:before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: #94a3b8;
}

.intranet-post.is-importante:before {
    background: #f59e0b;
}

.intranet-post.is-urgente:before {
    background: #ef4444;
}

.intranet-post.is-unread {
    border-color: color-mix(in srgb, var(--pulse-orange) 42%, var(--pulse-border) 58%);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
}

.intranet-post__signal {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.55rem;
    height: 2.55rem;
    border-radius: 10px;
    background: #e2e8f0;
    color: #334155;
    font-size: 1rem;
}

.intranet-post.is-importante .intranet-post__signal {
    background: #fef3c7;
    color: #92400e;
}

.intranet-post.is-urgente .intranet-post__signal {
    background: #fee2e2;
    color: #991b1b;
}

.intranet-post__body {
    min-width: 0;
}

.intranet-post__top {
    display: flex;
    gap: 0.4rem;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 0.28rem;
}

.intranet-post__priority,
.intranet-post__category,
.intranet-post__status {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    width: max-content;
    padding: 0.18rem 0.5rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 850;
    line-height: 1.2;
}

.intranet-post__priority {
    background: #e2e8f0;
    color: #334155;
}

.intranet-post.is-importante .intranet-post__priority {
    background: #fef3c7;
    color: #92400e;
}

.intranet-post.is-urgente .intranet-post__priority {
    background: #fee2e2;
    color: #991b1b;
}

.intranet-post__category {
    background: color-mix(in srgb, var(--pulse-orange) 9%, var(--pulse-card) 91%);
    color: var(--pulse-orange);
}

.intranet-post__status {
    background: color-mix(in srgb, var(--pulse-border) 45%, transparent);
    color: var(--pulse-muted);
}

.intranet-post__status.is-new {
    background: var(--pulse-orange);
    color: #fff;
}

.intranet-post__meta {
    display: flex;
    gap: 0.7rem;
    flex-wrap: wrap;
    margin-top: 0.45rem;
    color: var(--pulse-muted);
    font-size: 0.74rem;
    font-weight: 700;
}

.intranet-post__meta span {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
}

.intranet-post h2 {
    margin: 0;
    font-size: 1.02rem;
    font-weight: 850;
    line-height: 1.25;
}

.intranet-post h2 a {
    color: var(--pulse-text);
    text-decoration: none;
}

.intranet-post h2 a:hover {
    color: var(--pulse-orange);
}

.intranet-post p {
    margin: 0.22rem 0 0;
    color: var(--pulse-muted);
    font-size: 0.84rem;
    line-height: 1.45;
}

.intranet-post__open {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--pulse-border);
    border-radius: 10px;
    color: var(--pulse-text);
    font-size: 0.78rem;
    font-weight: 850;
    text-decoration: none;
    white-space: nowrap;
}

.intranet-post__open:hover {
    border-color: var(--pulse-orange);
    color: var(--pulse-orange);
    background: color-mix(in srgb, var(--pulse-orange) 7%, var(--pulse-card) 93%);
}

.intranet-empty {
    min-height: 260px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    border: 1px dashed var(--pulse-border);
    border-radius: 12px;
    color: var(--pulse-muted);
    background: color-mix(in srgb, var(--pulse-card) 94%, var(--pulse-surface) 6%);
}

.intranet-empty i {
    font-size: 1.8rem;
    color: var(--pulse-orange);
}

.intranet-reader {
    width: 100%;
    max-width: none;
}

.intranet-reader__summary {
    margin: 0;
    padding: 0.95rem 1rem;
    border-left: 4px solid var(--pulse-orange);
    background: color-mix(in srgb, var(--pulse-orange) 8%, var(--pulse-card) 92%);
    border-radius: 0 12px 12px 0;
    color: var(--pulse-text);
    font-weight: 650;
    line-height: 1.5;
}

.intranet-reader__content {
    padding: 1.25rem 1.35rem;
    border: 1px solid var(--pulse-border);
    border-radius: 14px;
    background: var(--pulse-card);
    line-height: 1.7;
    white-space: normal;
    box-shadow: 0 2px 14px rgba(15, 23, 42, 0.04);
}

.intranet-reader__read {
    display: flex;
    justify-content: flex-end;
    color: #16a34a;
    font-weight: 800;
}

.intranet-alert {
    padding: 0.85rem 1rem;
    border-radius: 12px;
    border: 1px solid var(--pulse-border);
    font-weight: 750;
}

.intranet-alert.is-success {
    background: #ecfdf5;
    border-color: #bbf7d0;
    color: #166534;
}

.intranet-alert.is-danger {
    background: #fef2f2;
    border-color: #fecaca;
    color: #991b1b;
}

.intranet-panel .intranet-table-wrap {
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.intranet-table-wrap {
    overflow: auto;
    border: 1px solid var(--pulse-border);
    border-radius: 12px;
    background: var(--pulse-card);
}

.intranet-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.84rem;
}

.intranet-table th,
.intranet-table td {
    padding: 0.78rem 1rem;
    border-bottom: 1px solid var(--pulse-border);
    text-align: left;
    vertical-align: middle;
}

.intranet-table th {
    color: var(--pulse-muted);
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    background: color-mix(in srgb, var(--pulse-card) 92%, var(--pulse-surface) 8%);
}

.intranet-table td strong,
.intranet-table td small {
    display: block;
}

.intranet-table td small {
    margin-top: 0.15rem;
    color: var(--pulse-muted);
}

.intranet-table__actions {
    display: flex;
    gap: 0.35rem;
    align-items: center;
}

.intranet-pill {
    display: inline-flex;
    padding: 0.16rem 0.45rem;
    border-radius: 999px;
    background: #e2e8f0;
    color: #334155;
    font-size: 0.72rem;
    font-weight: 800;
}

.intranet-pill.is-ok {
    background: #dcfce7;
    color: #166534;
}

.intranet-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 400px);
    gap: 1.15rem;
    align-items: start;
}

.intranet-form__main,
.intranet-form__targets {
    padding: 1.15rem 1.35rem;
    border: 1px solid var(--pulse-border);
    border-radius: 14px;
    background: var(--pulse-card);
    box-shadow: 0 2px 14px rgba(15, 23, 42, 0.04);
}

.intranet-form__targets {
    position: sticky;
    top: calc(var(--pulse-topbar-height, 58px) + 0.75rem);
}

.intranet-form__targets h2 {
    margin: 0;
    color: var(--pulse-text);
    font-size: 1rem;
    font-weight: 850;
}

.intranet-form__targets p {
    margin: 0.25rem 0 0.8rem;
    color: var(--pulse-muted);
    font-size: 0.8rem;
    line-height: 1.45;
}

.intranet-target-section {
    margin-top: 0.9rem;
    padding: 0.85rem;
    border: 1px solid color-mix(in srgb, var(--pulse-border) 78%, transparent);
    border-radius: 10px;
    background: color-mix(in srgb, var(--pulse-card) 88%, var(--pulse-bg) 12%);
}

.intranet-target-section h3 {
    margin: 0;
    color: var(--pulse-text);
    font-size: 0.86rem;
    font-weight: 850;
}

.intranet-target-section p {
    margin: 0.2rem 0 0.65rem;
    font-size: 0.76rem;
    line-height: 1.45;
    color: var(--pulse-muted);
}

.intranet-target-section .field {
    margin-bottom: 0.65rem;
}

.intranet-target-section .field:last-child {
    margin-bottom: 0;
}

.intranet-target-all {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0 0 0.65rem;
    padding: 0.55rem 0.65rem;
    border: 1px dashed var(--pulse-border);
    border-radius: 10px;
    background: color-mix(in srgb, var(--pulse-orange) 7%, var(--pulse-card) 93%);
    color: var(--pulse-text);
    font-size: 0.8rem;
    font-weight: 800;
}

.intranet-target-all i {
    color: var(--pulse-orange);
}

.intranet-textarea {
    min-height: 260px;
    resize: vertical;
}

.intranet-multi {
    min-height: 120px;
}

.intranet-switches {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 1rem;
    color: var(--pulse-text);
    font-weight: 750;
}

.intranet-switches label {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.intranet-form__foot {
    grid-column: 1 / -1;
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    padding-top: 0.25rem;
}

.intranet-permissions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
}

.intranet-permissions article {
    padding: 1.1rem 1.2rem;
    border: 1px solid var(--pulse-border);
    border-radius: 14px;
    background: var(--pulse-card);
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04);
}

.intranet-permissions i {
    color: var(--pulse-orange);
    font-size: 1.35rem;
}

.intranet-permissions strong {
    display: block;
    margin: 0.45rem 0 0.2rem;
    color: var(--pulse-text);
}

.intranet-permissions p {
    margin: 0;
    color: var(--pulse-muted);
    font-size: 0.86rem;
    line-height: 1.45;
}

html.dark .intranet-release {
    background: rgba(249, 115, 22, 0.1);
    border-color: rgba(251, 146, 60, 0.5);
}

html.dark .intranet-overview article.is-urgent {
    background: rgba(127, 29, 29, 0.18);
    border-color: rgba(248, 113, 113, 0.45);
}

html.dark .intranet-overview article.is-read {
    background: rgba(30, 64, 175, 0.16);
    border-color: rgba(96, 165, 250, 0.4);
}

html.dark .intranet-alert.is-success {
    background: rgba(22, 101, 52, 0.22);
    border-color: #166534;
    color: #bbf7d0;
}

html.dark .intranet-alert.is-danger {
    background: rgba(127, 29, 29, 0.28);
    border-color: #7f1d1d;
    color: #fecaca;
}

html.dark .intranet-post__priority,
html.dark .intranet-post__signal,
html.dark .intranet-pill {
    background: #334155;
    color: #e2e8f0;
}

html.dark .intranet-post.is-importante .intranet-post__priority {
    background: rgba(245, 158, 11, 0.2);
    color: #fde68a;
}

html.dark .intranet-post.is-urgente .intranet-post__priority {
    background: rgba(239, 68, 68, 0.22);
    color: #fecaca;
}

html.dark .intranet-post.is-importante .intranet-post__signal {
    background: rgba(245, 158, 11, 0.2);
    color: #fde68a;
}

html.dark .intranet-post.is-urgente .intranet-post__signal {
    background: rgba(239, 68, 68, 0.22);
    color: #fecaca;
}

html.dark .intranet-post__category {
    background: rgba(249, 115, 22, 0.14);
    color: #fdba74;
}

html.dark .intranet-post__status {
    background: rgba(148, 163, 184, 0.16);
    color: #cbd5e1;
}

html.dark .intranet-pill.is-ok {
    background: rgba(22, 163, 74, 0.2);
    color: #bbf7d0;
}

html.dark .intranet-target-section {
    background: rgba(15, 23, 42, 0.45);
    border-color: rgba(148, 163, 184, 0.24);
}

html.dark .intranet-target-all {
    background: rgba(249, 115, 22, 0.12);
    border-color: rgba(251, 146, 60, 0.42);
}

@media (max-width: 1100px) {
    .intranet-form {
        grid-template-columns: 1fr;
    }

    .intranet-form__targets {
        position: static;
    }
}

@media (max-width: 900px) {
    .intranet-overview,
    .intranet-filters,
    .intranet-form {
        grid-template-columns: 1fr;
    }

    .intranet-form__foot {
        grid-column: auto;
    }

    .intranet-post {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .intranet-post__open {
        grid-column: 1 / -1;
        justify-content: center;
    }

    .intranet-permissions {
        grid-template-columns: 1fr;
    }

    .intranet-hero__body {
        grid-template-columns: 1fr;
        align-items: start;
        margin-top: -1.35rem;
        padding-inline: 1.15rem;
    }

    .intranet-hero--reader .intranet-hero__body {
        grid-template-columns: 1fr;
    }

    .intranet-actions {
        justify-content: flex-start;
        width: 100%;
    }
}

@media (max-width: 640px) {
    .intranet-overview {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .intranet-filters {
        padding-inline: 1rem;
    }

    .intranet-panel--feed .intranet-feed,
    .intranet-panel--feed .intranet-empty {
        margin-inline: 1rem;
    }
}

/* Helena IA */
.helena-page{display:flex;flex-direction:column;gap:1rem;height:calc(100vh - 150px);min-height:620px;overflow:hidden}
.helena-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.helena-title{display:flex;align-items:center;gap:.75rem;margin:0;color:var(--pulse-text);font-size:1.45rem;font-weight:800;letter-spacing:0}
.helena-title__icon{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:.65rem;background:color-mix(in srgb,var(--pulse-primary) 16%,transparent);color:var(--pulse-primary);overflow:hidden}
.helena-title__icon img{width:100%;height:100%;object-fit:cover;display:block}
.helena-subtitle{margin:.35rem 0 0;color:var(--pulse-muted);font-size:.95rem}
.helena-status{display:inline-flex;align-items:center;gap:.45rem;min-height:2rem;padding:.35rem .7rem;border-radius:999px;background:var(--pulse-surface);border:1px solid var(--pulse-border);color:var(--pulse-muted);font-size:.82rem;font-weight:700}
.helena-status i{font-size:.55rem}
.helena-status.is-online{color:#15803d}
.helena-status.is-offline{color:#b91c1c}
.helena-layout{display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:1rem;min-height:0;flex:1}
.helena-sidebar{display:flex;flex-direction:column;gap:.75rem;min-height:0;padding:1rem;border:1px solid var(--pulse-border);border-radius:.75rem;background:var(--pulse-card);overflow:hidden}
.helena-sidebar__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.helena-sidebar h2{margin:0 0 .45rem;color:var(--pulse-text);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.helena-sidebar button{display:flex;align-items:center;gap:.65rem;width:100%;min-height:2.45rem;padding:.55rem .65rem;border:1px solid transparent;border-radius:.55rem;background:transparent;color:var(--pulse-text);font-size:.88rem;font-weight:650;text-align:left;cursor:pointer}
.helena-sidebar button:hover{background:var(--pulse-surface);border-color:var(--pulse-border)}
.helena-sidebar i{width:1rem;color:var(--pulse-primary);text-align:center}
.helena-icon-btn{display:inline-flex!important;align-items:center;justify-content:center!important;flex:0 0 2.2rem!important;width:2.2rem!important;min-height:2.2rem!important;padding:0!important;border:1px solid var(--pulse-border)!important;background:var(--pulse-surface)!important}
.helena-conversations{display:flex;flex-direction:column;gap:.35rem;min-height:0;overflow:auto;padding-right:.15rem}
.helena-conversation-wrap{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;border:1px solid var(--pulse-border);border-radius:.65rem;background:var(--pulse-surface)}
.helena-conversation-wrap.is-active{border-color:color-mix(in srgb,var(--pulse-primary) 45%,var(--pulse-border));background:color-mix(in srgb,var(--pulse-primary) 10%,var(--pulse-surface))}
.helena-conversation{display:grid!important;gap:.15rem;min-height:4.1rem!important;padding:.65rem!important;border:0!important;background:transparent!important}
.helena-conversation strong{display:block;color:var(--pulse-text);font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.helena-conversation span{display:block;color:var(--pulse-muted);font-size:.77rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.helena-conversation small{color:var(--pulse-muted);font-size:.7rem}
.helena-conversation-menu-btn{display:inline-flex!important;align-items:center;justify-content:center!important;width:2.15rem!important;min-height:4.1rem!important;padding:0!important;border:0!important;border-left:1px solid var(--pulse-border)!important;border-radius:0 .65rem .65rem 0!important;background:transparent!important}
.helena-conversation-menu-btn i{color:var(--pulse-muted)}
.helena-conversation-menu{position:fixed;right:auto;top:auto;z-index:1000;min-width:9rem;padding:.35rem;border:1px solid var(--pulse-border);border-radius:.55rem;background:var(--pulse-card);box-shadow:var(--pulse-shadow-lg)}
.helena-conversation-menu button{min-height:2rem!important;padding:.45rem .55rem!important;font-size:.82rem!important;border-radius:.4rem!important}
.helena-conversation-menu button i{color:var(--pulse-primary)}
.helena-empty,.helena-loading{padding:.85rem;border:1px dashed var(--pulse-border);border-radius:.65rem;color:var(--pulse-muted);font-size:.86rem;text-align:center}
.helena-chat{display:flex;flex-direction:column;min-width:0;min-height:0;border:1px solid var(--pulse-border);border-radius:.75rem;background:var(--pulse-card);overflow:hidden}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.helena-chat__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border-bottom:1px solid var(--pulse-border);background:var(--pulse-card)}
.helena-chat__head h2{margin:0;color:var(--pulse-text);font-size:1rem;font-weight:800}
.helena-chat__head p{margin:.15rem 0 0;color:var(--pulse-muted);font-size:.8rem}
.helena-report-control{display:flex;align-items:center;gap:.5rem;flex:0 0 auto}
.helena-report-control select{height:2.25rem;min-width:9rem;border:1px solid var(--pulse-border);border-radius:.55rem;background:var(--pulse-card);color:var(--pulse-text);padding:0 .65rem;font-size:.82rem;font-weight:700}
.helena-report-btn{flex:0 0 auto;min-height:2.25rem}
.helena-messages{flex:1;min-height:0;overflow:auto;padding:1rem;background:color-mix(in srgb,var(--pulse-surface) 42%,var(--pulse-card) 58%)}
.helena-message{display:flex;gap:.7rem;margin-bottom:.8rem;max-width:82%}
.helena-message.is-user{margin-left:auto;flex-direction:row-reverse}
.helena-message__avatar{display:flex;align-items:center;justify-content:center;flex:0 0 2rem;width:2rem;height:2rem;border-radius:999px;background:var(--pulse-card);border:1px solid var(--pulse-border);color:var(--pulse-primary);overflow:hidden}
.helena-message__avatar img{width:100%;height:100%;object-fit:cover;display:block}
.helena-message__avatar span{font-size:.76rem;font-weight:800;color:var(--pulse-primary)}
.helena-message__body{min-width:0;padding:.7rem .85rem;border:1px solid var(--pulse-border);border-radius:.75rem;background:var(--pulse-card);box-shadow:var(--pulse-shadow-sm)}
.helena-message.is-user .helena-message__body{background:color-mix(in srgb,var(--pulse-primary) 11%,var(--pulse-card));border-color:color-mix(in srgb,var(--pulse-primary) 30%,var(--pulse-border))}
.helena-message__body strong{display:block;margin-bottom:.25rem;color:var(--pulse-text);font-size:.78rem}
.helena-message__body p{margin:0;color:var(--pulse-text);font-size:.94rem;line-height:1.5;overflow-wrap:anywhere}
.helena-message__text{color:var(--pulse-text);font-size:.94rem;line-height:1.5;overflow-wrap:anywhere}
.helena-message__text p{margin:0 0 .55rem}
.helena-message__text p:last-child{margin-bottom:0}
.helena-message__text ul{display:grid;gap:.35rem;margin:.25rem 0 .65rem;padding-left:1.1rem}
.helena-message__text li{padding-left:.1rem}
.helena-message__text a{color:var(--pulse-primary);font-weight:700;text-decoration:none}
.helena-message__text a:hover{text-decoration:underline}
.helena-message__text code{display:inline-block;max-width:100%;padding:.08rem .35rem;border:1px solid var(--pulse-border);border-radius:.35rem;background:var(--pulse-surface);font-size:.78rem;white-space:normal;overflow-wrap:anywhere}
.helena-message__progress{position:relative;overflow:hidden;height:.36rem;margin-top:.65rem;border-radius:999px;background:color-mix(in srgb,var(--pulse-primary) 14%,var(--pulse-border))}
.helena-message__progress span{display:block;height:100%;min-width:.45rem;border-radius:inherit;background:linear-gradient(90deg,var(--pulse-primary),color-mix(in srgb,var(--pulse-primary) 45%,#fff));transition:width .35s ease}
.helena-message__progress-meta{margin-top:.35rem;color:var(--pulse-muted);font-size:.75rem;font-weight:700}
.helena-message__cancel{margin-top:.55rem}
.helena-message__attachment{margin-top:.7rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.helena-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.7rem;padding:.85rem;border-top:1px solid var(--pulse-border);background:var(--pulse-card)}
.helena-composer textarea{width:100%;min-height:3rem;max-height:8rem;resize:vertical;border:1px solid var(--pulse-border);border-radius:.65rem;background:var(--pulse-surface);color:var(--pulse-text);padding:.65rem .75rem;font:inherit}
.helena-composer textarea:focus{outline:2px solid color-mix(in srgb,var(--pulse-primary) 30%,transparent);border-color:var(--pulse-primary)}
@media (max-width:900px){.helena-page{height:auto;min-height:0;overflow:visible}.helena-layout{grid-template-columns:1fr}.helena-sidebar{order:2;max-height:420px}.helena-chat{height:70vh;min-height:520px}.helena-head{flex-direction:column}.helena-message{max-width:94%}}

.helena-audit{display:flex;flex-direction:column;gap:1rem}
.helena-audit__rag{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--pulse-border);border-radius:.75rem;background:var(--pulse-card);box-shadow:var(--pulse-shadow-sm)}
.helena-audit__rag h2{margin:.35rem 0 .2rem;color:var(--pulse-text);font-size:1rem;font-weight:800}
.helena-audit__rag p,.helena-audit__rag small{margin:0;color:var(--pulse-muted);font-size:.86rem;line-height:1.45}
.helena-audit__rag p strong{color:var(--pulse-text)}
.helena-audit__rag form{margin:0;flex:0 0 auto}
.helena-audit__rag-status{display:inline-flex;align-items:center;gap:.45rem;width:max-content;min-height:1.8rem;padding:.28rem .6rem;border-radius:999px;border:1px solid var(--pulse-border);background:var(--pulse-surface);color:var(--pulse-muted);font-size:.78rem;font-weight:800}
.helena-audit__rag-status.is-ok{border-color:#16a34a;background:color-mix(in srgb,#16a34a 12%,var(--pulse-card));color:#15803d}
.helena-audit__rag-status.is-danger{border-color:#dc2626;background:color-mix(in srgb,#dc2626 10%,var(--pulse-card));color:#b91c1c}
.helena-audit__tabs{display:flex;flex-wrap:wrap;gap:.5rem;padding:.45rem;border:1px solid var(--pulse-border);border-radius:.75rem;background:var(--pulse-card);box-shadow:var(--pulse-shadow-sm)}
.helena-audit__tabs button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.45rem;padding:.55rem .9rem;border:1px solid transparent;border-radius:.55rem;background:transparent;color:var(--pulse-muted);font-weight:800;font-size:.88rem;cursor:pointer}
.helena-audit__tabs button:hover{background:var(--pulse-surface);color:var(--pulse-text);border-color:var(--pulse-border)}
.helena-audit__tabs button.is-active{background:var(--pulse-primary);border-color:var(--pulse-primary);color:#fff;box-shadow:0 10px 24px color-mix(in srgb,var(--pulse-primary) 24%,transparent)}
.helena-audit__tabs button i{font-size:.9rem}
.helena-audit__panel[hidden]{display:none!important}
.helena-audit__knowledge{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}
.helena-audit__card{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border:1px solid var(--pulse-border);border-radius:.75rem;background:var(--pulse-card);box-shadow:var(--pulse-shadow-sm)}
.helena-audit__card header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
.helena-audit__card h3{margin:.45rem 0 0;color:var(--pulse-text);font-size:1rem;font-weight:800;line-height:1.3}
.helena-audit__card small{color:var(--pulse-muted);white-space:nowrap}
.helena-audit__card p{margin:0;color:var(--pulse-text);font-size:.9rem;line-height:1.48;overflow-wrap:anywhere}
.helena-audit__meta{display:flex;flex-wrap:wrap;gap:.45rem .8rem;color:var(--pulse-muted);font-size:.78rem}
.helena-audit__meta strong{color:var(--pulse-text)}
.helena-audit__card footer{display:flex;flex-wrap:wrap;gap:.5rem;padding-top:.35rem;border-top:1px solid var(--pulse-border)}
.helena-audit__card footer form{margin:0}
.pulse-btn--danger{background:#dc2626!important;border-color:#dc2626!important;color:#fff!important}
.pulse-btn--danger:hover{background:#b91c1c!important;border-color:#b91c1c!important}
html.dark .helena-audit__card{background:var(--pulse-card);border-color:#334155}
html.dark .helena-audit__tabs{background:var(--pulse-card);border-color:#334155}
.helena-audit__concept{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.8rem;align-items:flex-start;margin-bottom:1rem;padding:1rem;border:1px solid color-mix(in srgb,var(--pulse-primary) 28%,var(--pulse-border));border-radius:.75rem;background:color-mix(in srgb,var(--pulse-primary) 7%,var(--pulse-card))}
.helena-audit__concept i{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:.65rem;background:var(--pulse-primary);color:#fff}
.helena-audit__concept p{margin:0;color:var(--pulse-text);font-size:.92rem;line-height:1.5}
.helena-audit__learning-map{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:1rem}
.helena-audit__learned{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border:1px solid var(--pulse-border);border-radius:.75rem;background:var(--pulse-card);box-shadow:var(--pulse-shadow-sm)}
.helena-audit__learned header{display:flex;flex-direction:column;gap:.45rem}
.helena-audit__learned h3{margin:0;color:var(--pulse-text);font-size:1rem;font-weight:800;line-height:1.3}
.helena-audit__learned dl{display:grid;gap:.5rem;margin:0}
.helena-audit__learned dl div{display:grid;gap:.15rem}
.helena-audit__learned dt{color:var(--pulse-muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.helena-audit__learned dd{margin:0;color:var(--pulse-text);font-size:.85rem;line-height:1.4;overflow-wrap:anywhere}
.helena-audit__learned p{margin:0;color:var(--pulse-muted);font-size:.86rem;line-height:1.45;overflow-wrap:anywhere}
.helena-audit__tag-list{display:flex;flex-wrap:wrap;gap:.35rem}
.helena-audit__tag-list span{display:inline-flex;align-items:center;min-height:1.45rem;padding:.18rem .5rem;border:1px solid color-mix(in srgb,var(--pulse-primary) 28%,var(--pulse-border));border-radius:999px;background:color-mix(in srgb,var(--pulse-primary) 9%,var(--pulse-card));color:var(--pulse-text);font-size:.76rem;font-weight:800}
.helena-audit__tag-empty{color:var(--pulse-muted);font-size:.8rem}
.helena-audit__relations{display:flex;flex-direction:column;gap:.4rem;padding:.75rem;border:1px solid var(--pulse-border);border-radius:.65rem;background:var(--pulse-surface)}
.helena-audit__relations strong{color:var(--pulse-text);font-size:.8rem}
.helena-audit__relations span{color:var(--pulse-text);font-size:.82rem;line-height:1.35}
.helena-audit__relations small{display:block;color:var(--pulse-muted)}
.helena-audit__relations.is-empty span{color:var(--pulse-muted)}
.helena-audit__sources-table td:first-child{min-width:280px}
.helena-audit__sources-table td:first-child strong{display:block;color:var(--pulse-text);font-size:.86rem;line-height:1.3}
.helena-audit__sources-table td:first-child span{display:block;margin-top:.2rem;color:var(--pulse-muted);font-size:.72rem;overflow-wrap:anywhere}
.helena-audit__source-actions{display:flex;flex-wrap:wrap;gap:.35rem;min-width:7rem}
.helena-audit__source-action{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:2rem;padding:.35rem .55rem;border:1px solid var(--pulse-border);border-radius:.45rem;background:var(--pulse-surface);color:var(--pulse-text);font-size:.76rem;font-weight:800;text-decoration:none;cursor:pointer}
.helena-audit__source-action:hover{border-color:var(--pulse-primary);color:var(--pulse-primary)}
.helena-audit__source-action.is-copied{border-color:#16a34a;color:#15803d}
.helena-audit__source-empty{color:var(--pulse-muted)}
.helena-audit__tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;padding:1rem}
.helena-audit__tool{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border:1px solid var(--pulse-border);border-radius:.75rem;background:var(--pulse-card);box-shadow:var(--pulse-shadow-sm)}
.helena-audit__tool header{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.7rem;align-items:center}
.helena-audit__tool header i{display:inline-flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;border-radius:.55rem;background:color-mix(in srgb,var(--pulse-primary) 12%,var(--pulse-card));color:var(--pulse-primary)}
.helena-audit__tool h3{margin:0;color:var(--pulse-text);font-size:.98rem;font-weight:800;line-height:1.25}
.helena-audit__tool small,.helena-audit__tool p{margin:0;color:var(--pulse-muted);font-size:.84rem;line-height:1.45}
.helena-audit__tool-detail{display:grid;gap:.2rem;padding:.55rem .65rem;border:1px solid var(--pulse-border);border-radius:.55rem;background:var(--pulse-surface)}
.helena-audit__tool-detail strong{color:var(--pulse-text);font-size:.72rem;font-weight:900;text-transform:uppercase}
.helena-audit__tool-detail span{color:var(--pulse-muted);font-size:.8rem;line-height:1.35}
.helena-audit__tool-detail.is-blocked{border-color:color-mix(in srgb,#dc2626 26%,var(--pulse-border));background:color-mix(in srgb,#dc2626 7%,var(--pulse-surface))}
.helena-audit__tool dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:0;padding-top:.45rem;border-top:1px solid var(--pulse-border)}
.helena-audit__tool dt{color:var(--pulse-muted);font-size:.68rem;font-weight:800;text-transform:uppercase}
.helena-audit__tool dd{margin:0;color:var(--pulse-text);font-size:.84rem;font-weight:700}
.helena-audit__governance,.helena-audit__approvals{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;padding:1rem}
.helena-audit__governance article,.helena-audit__approval{display:flex;flex-direction:column;gap:.55rem;padding:1rem;border:1px solid var(--pulse-border);border-radius:.75rem;background:var(--pulse-card);box-shadow:var(--pulse-shadow-sm)}
.helena-audit__governance strong{color:var(--pulse-text);font-size:.92rem;font-weight:900}
.helena-audit__governance span{display:flex;align-items:center;gap:.4rem;color:var(--pulse-muted);font-size:.84rem;line-height:1.35}
.helena-audit__governance b{color:var(--pulse-text)}
.helena-audit__document-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;padding:1rem}
.helena-audit__document{display:flex;flex-direction:column;gap:.65rem;padding:1rem;border:1px solid var(--pulse-border);border-radius:.75rem;background:var(--pulse-card);box-shadow:var(--pulse-shadow-sm)}
.helena-audit__document header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
.helena-audit__document h3{margin:.35rem 0 0;color:var(--pulse-text);font-size:.98rem;line-height:1.25}
.helena-audit__document p{margin:0;color:var(--pulse-text);font-size:.84rem;line-height:1.45}
.helena-audit__document code{display:block;max-height:4.5rem;overflow:auto;padding:.45rem .55rem;border-radius:.45rem;background:color-mix(in srgb,var(--pulse-text) 5%,transparent);color:var(--pulse-muted);font-size:.72rem;white-space:pre-wrap;word-break:break-word}
.helena-audit__document footer{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto}
.helena-audit__quality{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;padding:1rem}
.helena-audit__quality article{display:flex;flex-direction:column;gap:.25rem;padding:1rem;border:1px solid var(--pulse-border);border-radius:.75rem;background:var(--pulse-card);box-shadow:var(--pulse-shadow-sm)}
.helena-audit__quality strong{font-size:.78rem;color:var(--pulse-muted);text-transform:uppercase;letter-spacing:.02em}
.helena-audit__quality span{font-size:1.35rem;font-weight:900;color:var(--pulse-text)}
.helena-audit__approval header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
.helena-audit__approval h3{margin:.4rem 0 0;color:var(--pulse-text);font-size:.98rem;font-weight:800}
.helena-audit__approval p,.helena-audit__approval small{margin:0;color:var(--pulse-muted);font-size:.84rem;line-height:1.45}
.helena-audit__approval dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:0}
.helena-audit__approval dt{color:var(--pulse-muted);font-size:.68rem;font-weight:800;text-transform:uppercase}
.helena-audit__approval dd{margin:0;color:var(--pulse-text);font-size:.84rem;font-weight:700}
.helena-audit__approval footer{display:flex;flex-wrap:wrap;gap:.5rem}
html.dark .helena-audit__concept{background:color-mix(in srgb,var(--pulse-primary) 10%,var(--pulse-card))}
html.dark .helena-audit__learned{background:var(--pulse-card);border-color:#334155}
html.dark .helena-audit__relations{background:#0f172a;border-color:#334155}
html.dark .helena-audit__tool{background:var(--pulse-card);border-color:#334155}
html.dark .helena-audit__governance article,html.dark .helena-audit__approval,html.dark .helena-audit__document,html.dark .helena-audit__quality article{background:var(--pulse-card);border-color:#334155}
@media(max-width:760px){.helena-chat__head{align-items:flex-start;flex-direction:column}.helena-report-control{width:100%;align-items:stretch}.helena-report-control select{flex:1;min-width:0}}
html.dark .helena-audit__tool-detail,html.dark .helena-audit__source-action{background:#0f172a;border-color:#334155}
html.dark .helena-audit__tool dl{border-color:#334155}
html.dark .helena-message__text code{background:#0f172a;border-color:#334155}
html.dark .helena-audit__rag{background:var(--pulse-card);border-color:#334155}
html.dark .helena-audit__rag-status.is-ok{color:#86efac}
html.dark .helena-audit__rag-status.is-danger{color:#fca5a5}

/* Inventario de clientes (Pulse Control) */
.pulse-inventario__tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;min-height:1.35rem;padding:0 .35rem;border-radius:999px;background:color-mix(in srgb,var(--pulse-primary) 12%,var(--pulse-surface));color:var(--pulse-text);font-size:.72rem;font-weight:800}

/* Inventario v2 — layout e legibilidade */
.pulse-content--inventario{
    --inv-radius:1rem;
    width:100%;
    max-width:none;
    min-width:0;
    box-sizing:border-box;
}
.pulse-inventario-page{display:flex;flex-direction:column;gap:1rem;width:100%;min-width:0}
.pulse-drawer[hidden],.pulse-inv-palette[hidden]{display:none!important}
.pulse-inventario__cliente-bar{display:flex;align-items:flex-end;gap:.85rem;padding:1rem 1.15rem;border:1px solid var(--pulse-border);border-radius:var(--inv-radius);background:var(--pulse-surface);box-shadow:var(--pulse-shadow-sm)}
.pulse-inventario__cliente-bar-icon{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:.75rem;background:color-mix(in srgb,var(--pulse-primary) 14%,var(--pulse-surface));color:var(--pulse-primary);font-size:1.1rem;flex-shrink:0;margin-bottom:.1rem}
.pulse-inventario__cliente-label{display:block;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--pulse-muted);margin-bottom:.35rem}
.pulse-inventario__client-header{padding:.25rem .15rem .5rem}
.pulse-inventario__client-name{margin:0;font-size:1.35rem;font-weight:800;color:var(--pulse-text);line-height:1.2}
.pulse-inventario__client-meta{margin:.25rem 0 0;font-size:.88rem;color:var(--pulse-muted)}
.pulse-inventario__client-chave{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.82rem;padding:.1rem .35rem;border-radius:4px;background:color-mix(in srgb,var(--pulse-surface) 70%,var(--pulse-card) 30%);color:var(--pulse-text)}
.pulse-inventario__kpi-strip{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.85rem;position:relative;z-index:2}
.pulse-inventario__kpi{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .7rem;border:1px solid var(--pulse-border);border-radius:.65rem;background:var(--pulse-card);color:var(--pulse-muted);font-size:.78rem;font-weight:700;cursor:pointer;transition:border-color .15s,background .15s,color .15s,box-shadow .15s}
.pulse-inventario__kpi:hover{border-color:color-mix(in srgb,var(--pulse-primary) 35%,var(--pulse-border));color:var(--pulse-text);box-shadow:0 2px 6px rgba(15,23,42,.05)}
.pulse-inventario__kpi.is-active{background:color-mix(in srgb,var(--pulse-primary) 12%,var(--pulse-surface));border-color:var(--pulse-primary);color:var(--pulse-primary);box-shadow:0 4px 12px color-mix(in srgb,var(--pulse-primary) 18%,transparent)}
.pulse-inventario__kpi-label{max-width:9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pulse-inventario__kpi-val{font-size:.72rem;padding:.1rem .4rem;border-radius:.35rem;background:color-mix(in srgb,var(--pulse-primary) 10%,transparent)}
.pulse-inventario__kpi.is-active .pulse-inventario__kpi-val{background:rgba(255,255,255,.22);color:inherit}
.pulse-inventario__empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:3rem 1.5rem;border:1px dashed var(--pulse-border);border-radius:var(--inv-radius);background:var(--pulse-surface)}
.pulse-inventario__empty-state>i{font-size:2.75rem;color:var(--pulse-muted);opacity:.4;margin-bottom:.75rem}
.pulse-inventario__empty-title{margin:0;font-size:1.1rem;font-weight:800;color:var(--pulse-text)}
.pulse-inventario__empty-desc{margin:.35rem 0 0;max-width:28rem;font-size:.88rem;color:var(--pulse-muted)}
.pulse-inventario__filters{padding:1rem 1.15rem;border:1px solid var(--pulse-border);border-radius:var(--inv-radius);background:var(--pulse-surface);box-shadow:var(--pulse-shadow-sm)}
.pulse-inventario-page>.pulse-inventario__tabs.helena-audit__tabs{display:none}
.pulse-inventario__filters .label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--pulse-muted)}
.pulse-inventario__panel-shell{padding:1rem 1.15rem 1.15rem;border:1px solid var(--pulse-border);border-radius:var(--inv-radius);background:var(--pulse-surface);box-shadow:var(--pulse-shadow-sm)}
.pulse-inventario__section-head{display:flex;align-items:flex-start;gap:.85rem;margin-bottom:1rem;padding-bottom:.85rem;border-bottom:1px solid var(--pulse-border)}
.pulse-inventario__section-head-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.7rem;background:color-mix(in srgb,var(--pulse-primary) 12%,var(--pulse-surface));color:var(--pulse-primary);flex-shrink:0}
.pulse-inventario__section-head-icon--info{background:color-mix(in srgb,#0ea5e9 14%,var(--pulse-surface));color:#0284c7}
.pulse-inventario__section-head-icon--cofre{background:color-mix(in srgb,#8b5cf6 14%,var(--pulse-surface));color:#7c3aed}
.pulse-inventario__section-head-text{flex:1;min-width:0}
.pulse-inventario__section-title{margin:0;font-size:1.05rem;font-weight:800;color:var(--pulse-text)}
.pulse-inventario__section-desc{margin:.2rem 0 0;font-size:.84rem;color:var(--pulse-muted);line-height:1.45}
.pulse-inventario__table-card{border:1px solid var(--pulse-border);border-radius:.85rem;overflow:hidden;background:var(--pulse-card)}
.pulse-inventario__table-scroll{overflow-x:auto;max-height:min(70vh,42rem);overflow-y:auto}
.pulse-inventario__table--v2{border-collapse:separate;border-spacing:0;font-size:.84rem}
.pulse-inventario__table--v2 thead{position:sticky;top:0;z-index:2}
.pulse-inventario__th{background:color-mix(in srgb,var(--pulse-text) 4%,var(--pulse-surface));font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--pulse-muted);padding:.65rem .75rem;border-bottom:2px solid var(--pulse-border);white-space:nowrap}
.pulse-inventario__th--primary{color:var(--pulse-text)}
.pulse-inventario__th--actions{text-align:right;position:sticky;right:0;background:color-mix(in srgb,var(--pulse-text) 4%,var(--pulse-surface));box-shadow:-4px 0 8px rgba(15,23,42,.04)}
.pulse-inventario__td{padding:.7rem .75rem;border-bottom:1px solid color-mix(in srgb,var(--pulse-border) 70%,transparent);vertical-align:top;background:var(--pulse-card)}
.pulse-inventario__row:hover .pulse-inventario__td{background:color-mix(in srgb,var(--pulse-primary) 4%,var(--pulse-card))}
.pulse-inventario__row:nth-child(even) .pulse-inventario__td{background:color-mix(in srgb,var(--pulse-text) 2%,var(--pulse-card))}
.pulse-inventario__row:nth-child(even):hover .pulse-inventario__td{background:color-mix(in srgb,var(--pulse-primary) 5%,var(--pulse-card))}
.pulse-inventario__td--primary .pulse-inventario__cell-primary .pulse-inventario__cell-text{font-weight:800;font-size:.9rem;color:var(--pulse-text);line-height:1.35}
.pulse-inventario__td--actions{text-align:right;white-space:nowrap;position:sticky;right:0;box-shadow:-4px 0 8px rgba(15,23,42,.04)}
.pulse-inventario__cell-text{line-height:1.4;color:var(--pulse-text)}
.pulse-inventario__meta-line{display:grid;grid-template-columns:minmax(3.5rem,4.5rem) minmax(0,1fr);gap:.15rem .45rem;align-items:baseline;padding:.2rem 0}
.pulse-inventario__meta-line+.pulse-inventario__meta-line{border-top:1px dashed color-mix(in srgb,var(--pulse-border) 80%,transparent)}
.pulse-inventario__secret-mask{letter-spacing:.14em;color:var(--pulse-muted)}
.pulse-inventario__secret-wrap{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.25rem;max-width:100%}
.pulse-inventario__secret-wrap.is-revealed .pulse-inventario__secret--inline{max-width:none;overflow:visible;text-overflow:unset;white-space:normal}
.pulse-inventario__secret-value.is-revealed{color:var(--pulse-text);letter-spacing:normal;word-break:break-all}
.pulse-inventario__secret-actions{display:inline-flex;align-items:center;gap:.1rem;vertical-align:middle}
.pulse-inventario__secret-actions .pulse-btn--xs{min-width:1.65rem;height:1.65rem;padding:0;font-size:.72rem}
.pulse-inventario__pw-control{position:relative;display:flex;align-items:center;gap:.35rem}
.pulse-inventario__pw-control .input{flex:1;min-width:0}
.pulse-inventario__pw-toggle{flex-shrink:0}
.pulse-inventario__row-secret-badge{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;margin-right:.35rem;border-radius:.35rem;background:color-mix(in srgb,var(--pulse-warning,#f59e0b) 18%,var(--pulse-surface));color:color-mix(in srgb,var(--pulse-warning,#f59e0b) 85%,#000);font-size:.62rem;vertical-align:middle;flex-shrink:0}
.pulse-inventario__cell-primary{display:flex;align-items:center;gap:.15rem;min-width:0}
.pulse-inventario__quick-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.65rem;padding-top:.65rem;border-top:1px dashed var(--pulse-border)}
.pulse-inventario__quick-filters-label{font-size:.72rem;font-weight:700;color:var(--pulse-muted);text-transform:uppercase;letter-spacing:.04em;margin-right:.25rem}
.pulse-inventario__quick-filter{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .55rem;border:1px solid var(--pulse-border);border-radius:999px;background:var(--pulse-surface);color:var(--pulse-text);font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}
.pulse-inventario__quick-filter:hover{border-color:color-mix(in srgb,var(--pulse-primary) 40%,var(--pulse-border));background:color-mix(in srgb,var(--pulse-primary) 6%,var(--pulse-surface))}
.pulse-inventario__quick-filter.is-active{background:color-mix(in srgb,var(--pulse-primary) 14%,var(--pulse-surface));border-color:color-mix(in srgb,var(--pulse-primary) 45%,var(--pulse-border));color:var(--pulse-primary)}
.pulse-inventario__view-host{padding:.15rem 0}
.pulse-inventario__view-dl{margin:0;display:flex;flex-direction:column;gap:.55rem}
.pulse-inventario__view-row{display:grid;grid-template-columns:minmax(6.5rem,9rem) minmax(0,1fr);gap:.35rem .75rem;align-items:baseline;margin:0}
.pulse-inventario__view-row dt{margin:0;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--pulse-muted)}
.pulse-inventario__view-row dd{margin:0;font-size:.88rem;color:var(--pulse-text);overflow-wrap:anywhere}
.pulse-inventario__view-row--block{grid-template-columns:1fr}
.pulse-inventario__view-row--block dt{margin-bottom:.15rem}
.pulse-inventario__view-text{line-height:1.45;white-space:pre-wrap}
.pulse-inventario__view-subcard{padding:.65rem .75rem;border:1px solid var(--pulse-border);border-radius:.55rem;margin-bottom:.5rem;background:color-mix(in srgb,var(--pulse-text) 2%,var(--pulse-surface))}
.pulse-estacao-detalhe{display:flex;flex-direction:column;gap:1rem}
.pulse-estacao-detalhe__hero,.pulse-estacao-detalhe__panel,.pulse-estacao-detalhe__summary{background:var(--pulse-card);border:1px solid var(--pulse-border);border-radius:8px;box-shadow:var(--pulse-shadow-sm)}
.pulse-estacao-detalhe__hero{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.1rem}
.pulse-estacao-detalhe__kicker{display:block;margin-bottom:.2rem;color:#2563eb;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.pulse-estacao-detalhe__hero h1{display:flex;align-items:center;gap:.6rem;margin:0 0 .35rem;color:var(--pulse-text);font-size:1.45rem;font-weight:800}
.pulse-estacao-detalhe__hero h1 i{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:8px;background:#2563eb;color:#fff}
.pulse-estacao-detalhe__hero p{margin:0;color:var(--pulse-muted);font-size:.92rem}
.pulse-estacao-detalhe__hero-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}
.pulse-estacao-detalhe__summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;padding:.85rem 1rem}
.pulse-estacao-detalhe__chip{display:flex;flex-direction:column;gap:.2rem;padding:.65rem .75rem;border:1px solid var(--pulse-border);border-radius:.55rem;background:color-mix(in srgb,var(--pulse-card) 92%,#2563eb 8%)}
.pulse-estacao-detalhe__chip span{color:var(--pulse-muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.pulse-estacao-detalhe__chip strong,.pulse-estacao-detalhe__chip code{color:var(--pulse-text);font-size:.95rem}
.pulse-estacao-detalhe__chip small{color:var(--pulse-muted);font-size:.72rem}
.pulse-estacao-detalhe__atividade{display:inline-flex;align-items:center;gap:.4rem}
.pulse-estacao-detalhe__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.pulse-estacao-detalhe__panel--wide{grid-column:1/-1}
.pulse-estacao-detalhe__panel-head{display:flex;flex-direction:column;gap:.2rem;padding:.85rem 1rem;border-bottom:1px solid var(--pulse-border)}
.pulse-estacao-detalhe__panel-head h2{display:flex;align-items:center;gap:.5rem;margin:0;color:var(--pulse-text);font-size:1rem;font-weight:800}
.pulse-estacao-detalhe__panel-head span{color:var(--pulse-muted);font-size:.8rem}
.pulse-estacao-detalhe__panel-body{padding:1rem}
.pulse-estacao-detalhe__section{border:1px solid var(--pulse-border);border-radius:.55rem;margin-bottom:.75rem;overflow:hidden}
.pulse-estacao-detalhe__section summary{display:flex;align-items:center;gap:.45rem;padding:.65rem .75rem;cursor:pointer;font-weight:700;color:var(--pulse-text);background:color-mix(in srgb,var(--pulse-card) 94%,var(--pulse-surface) 6%)}
.pulse-estacao-detalhe__section .pulse-inventario__view-dl{padding:.65rem .75rem .75rem}
.pulse-estacao-detalhe__empty{margin:0;color:var(--pulse-muted);font-size:.9rem}
.pulse-estacao-detalhe__timeline{display:flex;flex-direction:column;gap:.65rem}
.pulse-estacao-detalhe__event{padding:.75rem;border:1px solid var(--pulse-border);border-left:4px solid #64748b;border-radius:.55rem;background:color-mix(in srgb,var(--pulse-card) 96%,var(--pulse-surface) 4%)}
.pulse-estacao-detalhe__event.is-info{border-left-color:#64748b}
.pulse-estacao-detalhe__event.is-baixo{border-left-color:#22c55e}
.pulse-estacao-detalhe__event.is-medio{border-left-color:#f59e0b}
.pulse-estacao-detalhe__event.is-alto{border-left-color:#ef4444}
.pulse-estacao-detalhe__event.is-critico{border-left-color:#7f1d1d}
.pulse-estacao-detalhe__event header strong{display:block;color:var(--pulse-text);font-size:.92rem}
.pulse-estacao-detalhe__event-meta{display:block;margin-top:.15rem;color:var(--pulse-muted);font-size:.76rem}
.pulse-estacao-detalhe__event p{margin:.45rem 0 0;color:var(--pulse-text);font-size:.86rem}
.pulse-estacao-detalhe__event-link{margin:.35rem 0 0;font-size:.82rem}
.pulse-estacao-detalhe__event-link a{display:inline-flex;align-items:center;gap:.35rem;color:#2563eb;font-weight:700;text-decoration:none}
.pulse-estacao-incidente__hero{margin-bottom:1rem}
.pulse-estacao-incidente__summary{margin-bottom:1rem;padding:1rem 1.1rem;border:1px solid var(--pulse-border);border-left:4px solid #f59e0b;border-radius:.7rem;background:color-mix(in srgb,var(--pulse-card) 96%,var(--pulse-surface) 4%)}
.pulse-estacao-incidente__summary.is-info{border-left-color:#64748b}
.pulse-estacao-incidente__summary.is-baixo{border-left-color:#22c55e}
.pulse-estacao-incidente__summary.is-medio{border-left-color:#f59e0b}
.pulse-estacao-incidente__summary.is-alto,.pulse-estacao-incidente__summary.is-critico{border-left-color:#ef4444}
.pulse-estacao-incidente__summary-main{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}
.pulse-estacao-incidente__summary-main strong{display:block;color:var(--pulse-text);font-size:.95rem}
.pulse-estacao-incidente__summary-main span{color:var(--pulse-muted);font-size:.8rem}
.pulse-estacao-incidente__badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.pulse-estacao-incidente__badge.is-info{background:#e2e8f0;color:#334155}
.pulse-estacao-incidente__badge.is-baixo{background:#dcfce7;color:#166534}
.pulse-estacao-incidente__badge.is-medio{background:#fef3c7;color:#92400e}
.pulse-estacao-incidente__badge.is-alto,.pulse-estacao-incidente__badge.is-critico{background:#fee2e2;color:#991b1b}
.pulse-estacao-incidente__descricao{margin:.65rem 0 0;color:var(--pulse-text);font-size:.9rem;line-height:1.45}
.pulse-estacao-detalhe__diff{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:.55rem}
.pulse-estacao-detalhe__diff>div{display:flex;flex-direction:column;gap:.25rem}
.pulse-estacao-detalhe__diff>div>span{color:var(--pulse-muted);font-size:.72rem;font-weight:700;text-transform:uppercase}
.pulse-estacao-detalhe__json,.pulse-estacao-detalhe__mono{margin:0;padding:.55rem .65rem;border-radius:.45rem;background:#0f172a;color:#e2e8f0;font-size:.74rem;line-height:1.35;overflow:auto;white-space:pre-wrap}
.pulse-estacao-detalhe__table{font-size:.84rem}
.pulse-estacao-detalhe__table tr.is-current-row td{background:color-mix(in srgb,var(--pulse-card) 92%,#22c55e 8%)}
.pulse-estacao-detalhe__snapshots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.pulse-estacao-detalhe__snap-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem}
.pulse-estacao-detalhe__mini-dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem .75rem;margin:0}
.pulse-estacao-detalhe__mini-dl>div{display:flex;flex-direction:column;gap:.1rem;min-width:0}
.pulse-estacao-detalhe__mini-dl dt{color:var(--pulse-muted);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.pulse-estacao-detalhe__mini-dl dd{margin:0;color:var(--pulse-text);font-size:.84rem;word-break:break-word}
.pulse-estacao-detalhe__empty-inline{margin:0;color:var(--pulse-muted);font-size:.82rem}
.pulse-estacao-detalhe__chip-list{display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none}
.pulse-estacao-detalhe__chip-list code{display:inline-block;padding:.2rem .45rem;border-radius:.35rem;background:color-mix(in srgb,var(--pulse-card) 88%,#2563eb 12%);color:var(--pulse-text);font-size:.76rem}
.pulse-estacao-detalhe__nested-list{display:grid;gap:.55rem}
.pulse-estacao-detalhe__nested-item{padding:.55rem .65rem;border:1px solid var(--pulse-border);border-radius:.55rem;background:color-mix(in srgb,var(--pulse-card) 96%,var(--pulse-surface) 4%)}
.pulse-estacao-detalhe__nested-kicker{display:block;margin-bottom:.35rem;color:var(--pulse-muted);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.pulse-estacao-detalhe__usuario-atual{display:flex;gap:.85rem;padding:.85rem;border:1px solid color-mix(in srgb,#2563eb 35%,var(--pulse-border));border-radius:.65rem;background:color-mix(in srgb,var(--pulse-card) 90%,#2563eb 10%);margin-bottom:1rem}
.pulse-estacao-detalhe__usuario-kicker{display:block;margin:0 0 .15rem;color:#2563eb;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.pulse-estacao-detalhe__usuario-atual-body strong{display:block;color:var(--pulse-text);font-size:1.05rem}
.pulse-estacao-detalhe__usuario-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 2.6rem;width:2.6rem;height:2.6rem;border-radius:999px;background:#2563eb;color:#fff;font-size:.9rem;font-weight:800}
.pulse-estacao-detalhe__usuario-contacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .85rem;margin:.55rem 0 0}
.pulse-estacao-detalhe__usuario-contacts>div{display:flex;flex-direction:column;gap:.1rem}
.pulse-estacao-detalhe__usuario-contacts dt{display:flex;align-items:center;gap:.35rem;color:var(--pulse-muted);font-size:.72rem;font-weight:700}
.pulse-estacao-detalhe__usuario-contacts dd{margin:0;color:var(--pulse-text);font-size:.86rem;word-break:break-word}
.pulse-estacao-detalhe__usuario-cards{display:flex;flex-direction:column;gap:.65rem}
.pulse-estacao-detalhe__usuario-card{display:flex;gap:.75rem;padding:.75rem;border:1px solid var(--pulse-border);border-radius:.6rem;background:color-mix(in srgb,var(--pulse-card) 96%,var(--pulse-surface) 4%)}
.pulse-estacao-detalhe__usuario-card.is-current{border-color:color-mix(in srgb,#22c55e 45%,var(--pulse-border));background:color-mix(in srgb,var(--pulse-card) 92%,#22c55e 8%)}
.pulse-estacao-detalhe__usuario-card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.pulse-estacao-detalhe__usuario-card-head strong{color:var(--pulse-text);font-size:.92rem}
.pulse-estacao-detalhe__usuario-period{margin:.2rem 0 .45rem;color:var(--pulse-muted);font-size:.78rem}
.pulse-estacao-detalhe__pagination{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--pulse-border);color:var(--pulse-muted);font-size:.84rem}
.pulse-estacao-detalhe__pagination-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem}
.pulse-estacao-detalhe__pagination-size{display:inline-flex;align-items:center;gap:.45rem;margin:0;font-size:.8rem}
.pulse-estacao-detalhe__pagination-size select{padding:.25rem .45rem;border:1px solid var(--pulse-border);border-radius:.35rem;background:var(--pulse-card);color:var(--pulse-text);font-size:.8rem}
.pulse-estacao-detalhe__pagination-nav{display:flex;align-items:center;gap:.5rem}
.pulse-estacao-detalhe__pagination-page{min-width:7rem;text-align:center;font-size:.8rem}
.pulse-estacao-detalhe__pagination .is-disabled{opacity:.45;pointer-events:none}
@media(max-width:1100px){.pulse-estacao-detalhe__grid,.pulse-estacao-detalhe__snapshots,.pulse-estacao-detalhe__diff,.pulse-estacao-detalhe__mini-dl,.pulse-saude__dashboard,.pulse-saude__table,.pulse-saude__table--disk,.pulse-saude__volumes-inline,.pulse-saude__grid,.pulse-saude__kpis,.pulse-saude__discos{grid-template-columns:1fr}.pulse-estacao-detalhe__summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){.pulse-estacao-detalhe__hero{flex-direction:column}.pulse-estacao-detalhe__summary{grid-template-columns:1fr}.pulse-estacao-detalhe__pagination{flex-direction:column;align-items:stretch}.pulse-saude__head{flex-direction:column;align-items:flex-start}}
.pulse-saude__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
.pulse-saude__status{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .65rem;border-radius:999px;font-size:.78rem;font-weight:800;white-space:nowrap}
.pulse-saude__status.is-ok{background:#dcfce7;color:#14532d;border:1px solid #86efac}
.pulse-saude__status.is-aviso{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}
.pulse-saude__status.is-critico{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}
.pulse-saude__status.is-sem_dados{background:var(--pulse-card);color:var(--pulse-muted);border:1px solid var(--pulse-border)}
.pulse-saude__status i{font-size:.45rem}
.pulse-saude__meta-line{margin:0 0 1rem;color:var(--pulse-muted);font-size:.84rem}
.pulse-saude__meta-line--warn{color:#b45309}
.pulse-saude__meta-line strong{color:var(--pulse-text)}
.pulse-saude__dashboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}
.pulse-saude__block{padding:1rem;border:1px solid var(--pulse-border);border-radius:.7rem;background:color-mix(in srgb,var(--pulse-card) 97%,var(--pulse-surface) 3%)}
.pulse-saude__block--wide{grid-column:1/-1}
.pulse-saude__block-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem;padding-bottom:.55rem;border-bottom:1px solid var(--pulse-border)}
.pulse-saude__block-head h3{display:flex;align-items:center;gap:.45rem;margin:0;font-size:.95rem;font-weight:800;color:var(--pulse-text)}
.pulse-saude__block-badges{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.35rem}
.pulse-saude__table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem .85rem;margin:0}
.pulse-saude__table--disk{grid-template-columns:repeat(3,minmax(0,1fr))}
.pulse-saude__row{display:flex;flex-direction:column;gap:.12rem;min-width:0}
.pulse-saude__row dt{color:var(--pulse-muted);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.pulse-saude__row dd{margin:0;color:var(--pulse-text);font-size:.9rem;line-height:1.35;word-break:break-word}
.pulse-saude__row dd strong{font-weight:800}
.pulse-saude__row dd code{font-size:.78rem;padding:.12rem .35rem;border-radius:.3rem;background:color-mix(in srgb,var(--pulse-card) 88%,#2563eb 12%)}
.pulse-saude__row dd.is-ok{color:#14532d;font-weight:800}
.pulse-saude__row dd.is-aviso{color:#b45309;font-weight:800}
.pulse-saude__row dd.is-critico{color:#b91c1c;font-weight:800}
.pulse-saude__disk-usage{margin-top:.75rem}
.pulse-saude__disk-usage>span{display:block;margin-bottom:.35rem;color:var(--pulse-muted);font-size:.78rem;font-weight:700}
.pulse-saude__volumes-inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.pulse-saude__volume-chip{display:grid;grid-template-columns:auto 1fr;gap:.65rem;align-items:start;padding:.75rem;border:1px solid var(--pulse-border);border-radius:.6rem;background:color-mix(in srgb,var(--pulse-card) 98%,var(--pulse-surface) 2%)}
.pulse-saude__volume-chip-body{display:flex;flex-direction:column;gap:.1rem}
.pulse-saude__volume-chip-body strong{color:var(--pulse-text);font-size:.88rem}
.pulse-saude__volume-chip-body span{color:var(--pulse-muted);font-size:.76rem}
.pulse-saude__volume-chip .pulse-saude__bar{grid-column:1/-1}
.pulse-saude__empty{display:flex;align-items:flex-start;gap:.85rem;padding:1rem;border:1px dashed color-mix(in srgb,#2563eb 35%,var(--pulse-border));border-radius:.65rem;background:color-mix(in srgb,var(--pulse-card) 94%,#2563eb 6%)}
.pulse-saude__empty i{font-size:1.35rem;color:#2563eb;margin-top:.15rem}
.pulse-saude__empty strong{display:block;margin-bottom:.2rem;color:var(--pulse-text)}
.pulse-saude__empty p{margin:0;color:var(--pulse-muted);font-size:.88rem;line-height:1.45}
.pulse-saude__kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}
.pulse-saude__kpi{padding:.75rem;border:1px solid var(--pulse-border);border-radius:.6rem;background:color-mix(in srgb,var(--pulse-card) 96%,var(--pulse-surface) 4%)}
.pulse-saude__kpi-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem;color:var(--pulse-text);font-size:.8rem}
.pulse-saude__kpi-head strong{font-size:1rem}
.pulse-saude__kpi-note{margin:.35rem 0 0;color:var(--pulse-muted);font-size:.74rem}
.pulse-saude__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}
.pulse-saude__card{padding:.85rem;border:1px solid var(--pulse-border);border-radius:.65rem;background:color-mix(in srgb,var(--pulse-card) 96%,var(--pulse-surface) 4%)}
.pulse-saude__card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}
.pulse-saude__card-head h3{display:flex;align-items:center;gap:.45rem;margin:0;font-size:.92rem;font-weight:800;color:var(--pulse-text)}
.pulse-saude__card-title{margin:0 0 .45rem;color:var(--pulse-text);font-size:.95rem;font-weight:700;line-height:1.35}
.pulse-saude__card-empty{margin:0;color:var(--pulse-muted);font-size:.86rem}
.pulse-saude__specs{display:flex;flex-wrap:wrap;gap:.35rem .65rem;margin-bottom:.65rem;color:var(--pulse-muted);font-size:.8rem}
.pulse-saude__specs span{padding:.2rem .5rem;border-radius:999px;background:color-mix(in srgb,var(--pulse-card) 90%,#2563eb 10%)}
.pulse-saude__specs strong{color:var(--pulse-text)}
.pulse-saude__mem-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-bottom:.65rem}
.pulse-saude__mem-stats div{display:flex;flex-direction:column;gap:.1rem}
.pulse-saude__mem-stats span{color:var(--pulse-muted);font-size:.72rem;font-weight:700;text-transform:uppercase}
.pulse-saude__mem-stats strong{color:var(--pulse-text);font-size:.9rem}
.pulse-saude__bar{height:.45rem;border-radius:999px;background:color-mix(in srgb,var(--pulse-muted) 18%,var(--pulse-card));overflow:hidden}
.pulse-saude__bar--lg{height:.6rem;margin-top:.15rem}
.pulse-saude__bar-fill{height:100%;border-radius:999px;transition:width .25s ease}
.pulse-saude__bar-fill.is-ok{background:linear-gradient(90deg,#22c55e,#16a34a)}
.pulse-saude__bar-fill.is-aviso{background:linear-gradient(90deg,#f59e0b,#d97706)}
.pulse-saude__bar-fill.is-critico{background:linear-gradient(90deg,#ef4444,#dc2626)}
.pulse-saude__bar-fill.is-neutro{background:color-mix(in srgb,var(--pulse-muted) 55%,var(--pulse-card))}
.pulse-saude__pill{display:inline-flex;align-items:center;padding:.18rem .5rem;border-radius:999px;font-size:.72rem;font-weight:800;white-space:nowrap}
.pulse-saude__pill.is-ok{background:#dcfce7;color:#14532d;border:1px solid #86efac}
.pulse-saude__pill.is-aviso{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}
.pulse-saude__pill.is-critico{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}
.pulse-saude__pill.is-neutro{background:var(--pulse-card);color:var(--pulse-text);border:1px solid var(--pulse-border)}
.pulse-saude__section{margin-top:1rem}
.pulse-saude__section-head{display:flex;flex-direction:column;gap:.15rem;margin-bottom:.65rem}
.pulse-saude__section-head h3{display:flex;align-items:center;gap:.45rem;margin:0;font-size:.95rem;font-weight:800;color:var(--pulse-text)}
.pulse-saude__section-head span{color:var(--pulse-muted);font-size:.78rem}
.pulse-saude__volumes{display:flex;flex-direction:column;gap:.65rem}
.pulse-saude__volume{padding:.75rem;border:1px solid var(--pulse-border);border-radius:.6rem;background:color-mix(in srgb,var(--pulse-card) 97%,var(--pulse-surface) 3%)}
.pulse-saude__volume-head{display:grid;grid-template-columns:auto 1fr auto;gap:.65rem;align-items:center;margin-bottom:.45rem}
.pulse-saude__drive{display:inline-flex;align-items:center;justify-content:center;min-width:2.4rem;height:2.4rem;border-radius:.55rem;background:#2563eb;color:#fff;font-size:.95rem;font-weight:800}
.pulse-saude__volume-head strong{display:block;color:var(--pulse-text);font-size:.88rem}
.pulse-saude__volume-head span{display:block;color:var(--pulse-muted);font-size:.76rem}
.pulse-saude__volume-meta{margin:.4rem 0 0;color:var(--pulse-muted);font-size:.74rem}
.pulse-saude__discos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.pulse-saude__disco{padding:.8rem;border:1px solid var(--pulse-border);border-radius:.65rem;background:color-mix(in srgb,var(--pulse-card) 96%,var(--pulse-surface) 4%)}
.pulse-saude__disco-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}
.pulse-saude__disco-head strong{display:block;color:var(--pulse-text);font-size:.9rem}
.pulse-saude__disco-head span{display:block;color:var(--pulse-muted);font-size:.76rem}
.pulse-saude__disco-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem .75rem;margin:0}
.pulse-saude__disco-grid>div{display:flex;flex-direction:column;gap:.08rem;min-width:0}
.pulse-saude__disco-grid dt{color:var(--pulse-muted);font-size:.7rem;font-weight:700;text-transform:uppercase}
.pulse-saude__disco-grid dd{margin:0;color:var(--pulse-text);font-size:.82rem;word-break:break-word}
.pulse-saude__disco-grid dd.is-ok{color:#166534;font-weight:700}
.pulse-saude__disco-grid dd.is-aviso{color:#92400e;font-weight:700}
.pulse-saude__disco-grid dd.is-critico{color:#991b1b;font-weight:700}
.pulse-saude__disco-grid code{font-size:.74rem}
.pulse-saude__events{display:flex;flex-direction:column;gap:.65rem}
.pulse-saude__event{padding:.8rem;border:1px solid var(--pulse-border);border-left:4px solid var(--pulse-border);border-radius:.6rem;background:color-mix(in srgb,var(--pulse-card) 97%,var(--pulse-surface) 3%)}
.pulse-saude__event.is-critico{border-left-color:#ef4444}
.pulse-saude__event.is-aviso{border-left-color:#f59e0b}
.pulse-saude__event.is-ok{border-left-color:#22c55e}
.pulse-saude__event-head{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.45rem}
.pulse-saude__event-head strong{color:var(--pulse-text);font-size:.86rem}
.pulse-saude__event-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem .75rem;margin:0 0 .45rem}
.pulse-saude__event-meta>div{display:flex;flex-direction:column;gap:.08rem}
.pulse-saude__event-meta dt{color:var(--pulse-muted);font-size:.68rem;font-weight:800;text-transform:uppercase}
.pulse-saude__event-meta dd{margin:0;color:var(--pulse-text);font-size:.8rem;word-break:break-word}
.pulse-saude__event-msg{margin:0;color:var(--pulse-text);font-size:.84rem;line-height:1.45}
.pulse-inventario-form__section-desc{margin:-.25rem 0 .75rem;padding:0 .15rem;font-size:.78rem;color:var(--pulse-muted);line-height:1.4}
.pulse-field-tip{display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;margin-left:.25rem;padding:0;border:0;border-radius:999px;background:color-mix(in srgb,var(--pulse-primary) 10%,transparent);color:var(--pulse-primary);font-size:.65rem;vertical-align:middle;cursor:help}
.pulse-field-tip:hover{background:color-mix(in srgb,var(--pulse-primary) 18%,transparent)}
.pulse-inventario-form .field .help{margin-top:.25rem;font-size:.74rem;line-height:1.35}
.pulse-inventario__empty-cell{padding:0!important;border:0!important}
.pulse-inventario__table-empty{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2.5rem 1rem;text-align:center;color:var(--pulse-muted)}
.pulse-inventario__table-empty i{font-size:1.75rem;opacity:.45}
html.dark .pulse-inventario__table-card,html.dark .pulse-inventario__panel-shell,html.dark .pulse-inventario__filters,html.dark .pulse-inventario__cliente-bar{background:#0f172a;border-color:#334155}
html.dark .pulse-inventario__th{background:#1e293b;color:#94a3b8}
html.dark .pulse-inventario__td{background:#0f172a}
html.dark .pulse-inventario__row:nth-child(even) .pulse-inventario__td{background:#111827}
html.dark .pulse-inventario__row:hover .pulse-inventario__td{background:#172554}
@media(max-width:768px){.pulse-inventario__kpi-label{max-width:5.5rem}.pulse-inventario__section-head{flex-wrap:wrap}}
.pulse-inventario__tabs button.is-active .pulse-inventario__tab-count{background:rgba(255,255,255,.2);color:#fff}
.pulse-inventario__panel[hidden]{display:none!important}
.pulse-inventario__tag{display:inline-block;padding:.12rem .45rem;border-radius:.35rem;background:color-mix(in srgb,var(--pulse-primary) 10%,var(--pulse-surface));color:var(--pulse-primary);font-size:.78rem;font-weight:800;letter-spacing:.04em}
.pulse-inventario__secret{display:inline-block;max-width:16rem;padding:.12rem .45rem;border-radius:.35rem;background:var(--pulse-surface);border:1px solid var(--pulse-border);color:var(--pulse-text);font-size:.78rem;overflow-wrap:anywhere}
.pulse-inventario__table td,.pulse-inventario__table th{vertical-align:middle}
.pulse-inventario__th--compact,.pulse-inventario__td--compact{white-space:nowrap;width:1%}
.pulse-inventario__meta-line{display:block;font-size:.72rem;line-height:1.3;white-space:nowrap}
.pulse-inventario__meta-line+.pulse-inventario__meta-line{margin-top:.15rem}
.pulse-inventario__meta-label{color:var(--pulse-muted);font-weight:700;font-size:.68rem;text-transform:uppercase;letter-spacing:.03em}
.pulse-inventario__mac{display:inline;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;font-weight:600;color:var(--pulse-text);white-space:nowrap;letter-spacing:.02em}
.pulse-inventario__secret--inline{display:inline;max-width:9rem;padding:0 .2rem;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap}
.pulse-inventario__truncate{display:-webkit-box;max-width:11rem;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.35;font-size:.82rem;color:var(--pulse-text)}
.pulse-inventario__th--truncate,.pulse-inventario__td--truncate{max-width:11rem}
html.dark .pulse-inventario__mac{color:#e2e8f0}
html.dark .pulse-inventario__tag{background:#1e293b;color:#7dd3fc}
html.dark .pulse-inventario__secret{background:#0f172a;border-color:#334155;color:#e2e8f0}
.pulse-inventario-servidores-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:.75rem}
.pulse-inventario-servidor-card{display:flex;flex-direction:column;gap:.45rem;padding:.85rem;border:2px solid var(--pulse-border);border-radius:.85rem;background:var(--pulse-surface);cursor:pointer;transition:border-color .15s,box-shadow .15s}
.pulse-inventario-servidor-card--ativo{border-color:#22c55e66}
.pulse-inventario-servidor-card--inativo{border-color:#ef444466;opacity:.92}
.pulse-inventario-servidor-card:hover,.pulse-inventario-servidor-card:focus-visible{box-shadow:0 4px 14px rgba(15,23,42,.12);outline:none}
.pulse-inventario-servidor-card__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.pulse-inventario-servidor-card__hostname{font-size:1rem;line-height:1.25;color:var(--pulse-text)}
.pulse-inventario-servidor-card__desc{font-size:.78rem;color:var(--pulse-muted)}
.pulse-inventario-servidor-card__meta{display:flex;flex-direction:column;gap:.2rem;font-size:.76rem;color:var(--pulse-muted)}
.pulse-inventario-servidor-card__meta i{width:1rem;color:var(--color-primary,#f97316)}
.pulse-inventario-servidor-card__footer{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:auto;padding-top:.35rem;border-top:1px solid var(--pulse-border)}
.pulse-inventario-servidor-card__chip{font-size:.72rem;font-weight:700;color:var(--pulse-muted)}
.pulse-inventario-servidor-card__actions{margin-left:auto;display:flex;gap:.15rem}
.pulse-inventario__cards-empty,.pulse-inventario__cards-filter-empty{grid-column:1/-1;text-align:center;padding:2rem;color:var(--pulse-muted)}
.pulse-inventario__tv-connect{display:inline-flex;align-items:center;gap:.4rem;padding:.28rem .65rem;border-radius:.5rem;border:1px solid #0e71eb;background:linear-gradient(180deg,#1a82ff 0%,#0e71eb 100%);color:#fff;font-size:.78rem;font-weight:700;line-height:1.2;box-shadow:0 1px 2px rgba(14,113,235,.25)}
.pulse-inventario__tv-connect:hover,.pulse-inventario__tv-connect:focus-visible{color:#fff;border-color:#0a5ec7;background:linear-gradient(180deg,#1678f5 0%,#0a5ec7 100%)}
.pulse-inventario__tv-connect .fa-teamviewer{font-size:1rem}
.pulse-inventario__acesso-connect{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .65rem;border-radius:.5rem;border:1px solid #16a34a;background:linear-gradient(180deg,#22c55e 0%,#16a34a 100%);color:#fff;font-size:.78rem;font-weight:700;line-height:1.2}
.pulse-inventario__acesso-connect:hover,.pulse-inventario__acesso-connect:focus-visible{color:#fff;border-color:#15803d;background:linear-gradient(180deg,#1db954 0%,#15803d 100%)}
.pulse-inventario__th--tv,.pulse-inventario__td--tv{width:8.5rem;text-align:center}
.pulse-inventario__th--atividade,.pulse-inventario__td--atividade{min-width:9.5rem}
.pulse-inventario__atividade{display:inline-flex;align-items:center;gap:.55rem;min-width:0}
.pulse-inventario__atividade-dot{width:.62rem;height:.62rem;border-radius:999px;flex:0 0 auto;box-shadow:0 0 0 2px color-mix(in srgb,currentColor 18%,transparent)}
.pulse-inventario__atividade-dot.is-online{background:#22c55e;color:#22c55e}
.pulse-inventario__atividade-dot.is-atencao{background:#f59e0b;color:#f59e0b}
.pulse-inventario__atividade-dot.is-offline{background:#ef4444;color:#ef4444}
.pulse-inventario__atividade-body{display:flex;flex-direction:column;gap:.08rem;min-width:0}
.pulse-inventario__atividade-body strong{font-size:.84rem;line-height:1.2}
.pulse-inventario__atividade-body small{color:var(--pulse-muted);font-size:.72rem;line-height:1.2}
.pulse-inventario__tag-chips{display:flex;flex-wrap:wrap;gap:.25rem;max-width:14rem}
.pulse-inventario__tag-chip{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:999px;background:color-mix(in srgb,var(--tag-cor,#64748b) 18%,var(--pulse-surface));border:1px solid color-mix(in srgb,var(--tag-cor,#64748b) 35%,var(--pulse-border));color:var(--pulse-text);font-size:.72rem;font-weight:700;line-height:1.2;white-space:nowrap}
.pulse-inventario__item-tags .pulse-inventario__item-tag-row{padding:.65rem .75rem;border:1px solid var(--pulse-border);border-radius:.65rem;margin-bottom:.5rem;background:var(--pulse-surface)}
.pulse-inventario__item-tag-row--compact{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.45rem .65rem;margin-bottom:.35rem}
.pulse-inventario__cred-row{padding:.65rem .75rem;border:1px solid var(--pulse-border);border-radius:.65rem;margin-bottom:.5rem;background:var(--pulse-surface)}
.pulse-inventario__credenciais .field{margin-bottom:.5rem}
.pulse-inventario__th--tags,.pulse-inventario__td--tags{max-width:14rem}
.pulse-drawer__panel--servidor,.pulse-drawer__panel--inventario-grouped{max-width:36rem}
.pulse-inventario-form__hero{margin-bottom:1rem;padding:.85rem 1rem;border-radius:.75rem;border:1px solid color-mix(in srgb,var(--pulse-primary) 25%,var(--pulse-border));background:color-mix(in srgb,var(--pulse-primary) 6%,var(--pulse-surface))}
.pulse-inventario-form__hero--preview{padding:.9rem 1rem}
.pulse-inventario-form__hero-preview-row{display:flex;align-items:flex-start;gap:.85rem}
.pulse-inventario-form__hero-icon{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:.65rem;background:color-mix(in srgb,var(--pulse-primary) 18%,var(--pulse-surface));color:var(--pulse-primary);font-size:1rem;flex-shrink:0}
.pulse-inventario-form__hero-preview-body{min-width:0;flex:1}
.pulse-inventario-form__hero-preview{display:block;margin-top:.2rem;font-size:1rem;font-weight:800;color:var(--pulse-text);word-break:break-word;background:transparent;border:0;padding:0;border-radius:0;font-family:inherit;letter-spacing:normal}
.pulse-cofre__item-hero-preview{font-family:inherit}
.pulse-inventario-form__hero-tag{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}
.pulse-inventario-form__hero-label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--pulse-muted)}
.pulse-inventario-form__hero-hint{margin:.35rem 0 0;font-size:.75rem;color:var(--pulse-muted)}
.pulse-inventario-form__sections{display:flex;flex-direction:column;gap:.65rem}
.pulse-inventario-form__section.pulse-drawer__details{margin:0}
.pulse-inventario-form__section-title{font-size:.88rem;font-weight:800}
.pulse-inventario-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:0 .85rem}
.pulse-inventario-form__field--half{grid-column:span 1}
.pulse-inventario-form__field:not(.pulse-inventario-form__field--half):not(.pulse-inventario-form__field--checkbox){grid-column:1/-1}
.pulse-inventario-form__field--checkbox{grid-column:1/-1;margin-top:.15rem}
.pulse-inventario-form__field{margin-bottom:.65rem}
.pulse-inventario-form__custom-input[hidden]{display:none!important}
.pulse-inventario-form__meta{margin-top:.75rem;padding-top:.75rem;border-top:1px dashed var(--pulse-border)}
.pulse-inventario-form__meta-block+.pulse-inventario-form__meta-block{margin-top:.55rem}
.pulse-inventario-form__meta-label{display:block;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--pulse-muted);margin-bottom:.25rem}
.pulse-inventario-form__meta-list{margin:0;padding-left:1.1rem;font-size:.8rem;color:var(--pulse-text)}
.pulse-inventario-form__meta-list li{margin:.15rem 0}
@media(max-width:640px){.pulse-inventario-form__grid{grid-template-columns:1fr}.pulse-inventario-form__field--half{grid-column:1/-1}}
html.dark .pulse-inventario-form__hero{background:#0f172a;border-color:#334155}
html.dark .pulse-inventario-form__hero-icon{background:#1e293b;color:#38bdf8}
html.dark .pulse-inventario-form__hero-hint,html.dark .pulse-inventario-form__meta-label{color:#94a3b8}
.pulse-inventario-form__field--motivo-inativacao[hidden]{display:none!important}
.pulse-inventario-form__field--motivo-inativacao:not([hidden]) .textarea{border-color:color-mix(in srgb,var(--pulse-orange) 45%,var(--pulse-border))}
.pulse-inventario__info-list{display:flex;flex-direction:column;gap:.75rem}
.pulse-inventario__info-card{background:var(--pulse-surface);border:1px solid var(--pulse-border);border-radius:1rem;padding:1rem 1.1rem;box-shadow:0 1px 3px rgba(15,23,42,.06)}
.pulse-inventario__info-card--pinned{border-color:color-mix(in srgb,var(--pulse-primary) 35%,var(--pulse-border));background:color-mix(in srgb,var(--pulse-primary) 5%,var(--pulse-surface))}
.pulse-inventario__info-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
.pulse-inventario__info-title{margin:0;font-size:1rem;font-weight:800;color:var(--pulse-text);line-height:1.3}
.pulse-inventario__info-badges{display:flex;flex-wrap:wrap;gap:.35rem;margin:.5rem 0}
.pulse-inventario__info-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.12rem .5rem;border-radius:999px;background:color-mix(in srgb,var(--pulse-primary) 10%,var(--pulse-surface));border:1px solid var(--pulse-border);font-size:.7rem;font-weight:700;color:var(--pulse-muted)}
.pulse-inventario__info-badge--pin{color:var(--pulse-primary)}
.pulse-inventario__info-badge--private{color:#b45309}
.pulse-inventario__info-content{font-size:.88rem;line-height:1.55;color:var(--pulse-text);white-space:pre-wrap;word-break:break-word}
.pulse-inventario__info-meta{margin:.65rem 0 0;font-size:.72rem;color:var(--pulse-muted)}
.pulse-inventario__info-actions{flex-shrink:0}
html.dark .pulse-inventario__info-card--pinned{background:#172554;border-color:#3b82f6}
.pulse-inventario__filters-row{display:grid;grid-template-columns:1fr;gap:1rem;align-items:end}
@media(min-width:768px){.pulse-inventario__filters-row{grid-template-columns:2fr 1fr 1fr auto}}
.pulse-inventario__filters-actions{display:flex;align-items:flex-end;padding-bottom:.1rem}
.pulse-inventario__filters-status{font-weight:600;color:var(--pulse-primary)}
.pulse-inventario__tab-count--filtered{color:var(--pulse-primary);font-weight:800}
.pulse-inventario__info-grid{display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:900px){.pulse-inventario__info-grid{grid-template-columns:repeat(2,1fr)}}
.pulse-inventario__info-card{position:relative;overflow:hidden;display:flex;gap:0;padding:0}
.pulse-inventario__info-card-accent{display:flex;align-items:flex-start;justify-content:center;width:2.75rem;flex-shrink:0;padding-top:1rem;color:#fff;font-size:.95rem}
.pulse-inventario__info-card--geral .pulse-inventario__info-card-accent{background:#64748b}
.pulse-inventario__info-card--infra .pulse-inventario__info-card-accent{background:#0ea5e9}
.pulse-inventario__info-card--comercial .pulse-inventario__info-card-accent{background:#8b5cf6}
.pulse-inventario__info-card--acesso .pulse-inventario__info-card-accent{background:#f59e0b}
.pulse-inventario__info-card--incidente .pulse-inventario__info-card-accent{background:#ef4444}
.pulse-inventario__info-card--reuniao .pulse-inventario__info-card-accent{background:#10b981}
.pulse-inventario__info-card--outro .pulse-inventario__info-card-accent{background:#6b7280}
.pulse-inventario__info-card-body{flex:1;padding:1rem 1.1rem 1rem .25rem;min-width:0}
.pulse-inventario__info-badge--cat{background:color-mix(in srgb,var(--pulse-text) 6%,var(--pulse-surface))}
.pulse-inventario__info-content--expanded{max-height:none}
.pulse-inventario__info-expand{margin-top:.5rem;padding:0;border:0;background:none;color:var(--pulse-primary);font-size:.78rem;font-weight:700;cursor:pointer;text-decoration:underline}
.pulse-inventario__info-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2.5rem 1.5rem;background:var(--pulse-surface);border:1px dashed var(--pulse-border);border-radius:1rem}
.pulse-inventario__info-empty i{font-size:2.5rem;color:var(--pulse-muted);opacity:.45;margin-bottom:.75rem}
.pulse-inventario__info-empty-title{margin:0;font-weight:800;color:var(--pulse-text)}
.pulse-inventario__info-empty-desc{margin:.35rem 0 0;font-size:.88rem;color:var(--pulse-muted)}
.pulse-inventario__info-actions .pulse-btn.is-copied{color:#16a34a}
html.dark .pulse-inventario__info-card{box-shadow:none;background:#0f172a;border-color:#334155}
html.dark .helena-audit__tag-list span{background:rgba(235,73,16,.14);border-color:rgba(235,73,16,.35)}
.pulse-inventario__filter-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}
.pulse-inventario__filter-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:999px;border:1px solid var(--pulse-border);background:color-mix(in srgb,var(--pulse-primary) 8%,var(--pulse-surface));font-size:.75rem;font-weight:700;cursor:pointer}
.pulse-inventario__filter-banner{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.75rem;padding:.65rem .85rem;border-radius:.75rem;background:color-mix(in srgb,var(--pulse-primary) 10%,var(--pulse-surface));border:1px solid color-mix(in srgb,var(--pulse-primary) 25%,var(--pulse-border));font-size:.82rem}
.pulse-inventario__filter-banner-link{padding:0;border:0;background:none;color:var(--pulse-primary);font-weight:800;cursor:pointer;text-decoration:underline}
mark.pulse-inv-highlight{background:color-mix(in srgb,#fbbf24 55%,transparent);padding:0 .1em;border-radius:.15em}
.pulse-inventario__info-badge--ativo{background:color-mix(in srgb,#0ea5e9 12%,var(--pulse-surface));border:1px solid color-mix(in srgb,#0ea5e9 30%,var(--pulse-border))}
.pulse-inventario__tags-catalog-groups{display:flex;flex-direction:column;gap:.75rem}
.pulse-inventario__tags-catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.5rem;padding:.5rem 0}
.pulse-inventario__tags-catalog-item{display:flex;flex-direction:column;gap:.35rem;padding:.65rem;border:1px solid var(--pulse-border);border-radius:.65rem;background:var(--pulse-surface)}
.pulse-inventario__tags-catalog-actions{display:flex;gap:.25rem;justify-content:flex-end}
.pulse-inventario__cofre-groups{display:flex;flex-direction:column;gap:1.25rem}
.pulse-inventario__cofre-group-title{display:flex;align-items:center;gap:.5rem;margin:0 0 .65rem;font-size:.95rem;font-weight:800}
.pulse-inventario__cofre-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:.75rem}
.pulse-inventario__cofre-card{padding:.85rem 1rem;border:1px solid var(--pulse-border);border-radius:.85rem;background:var(--pulse-surface)}
.pulse-inventario__cofre-card--confidencial{border-color:color-mix(in srgb,#ef4444 40%,var(--pulse-border))}
.pulse-inventario__cofre-card--restrito{border-color:color-mix(in srgb,#f59e0b 35%,var(--pulse-border))}
.pulse-inventario__cofre-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.5rem}
.pulse-inventario__cofre-card-head h5{margin:0;font-size:.92rem;font-weight:800}
.pulse-inventario__cofre-badges{display:flex;flex-wrap:wrap;gap:.25rem}
.pulse-inventario__cofre-meta{margin:.35rem 0 0;font-size:.78rem;color:var(--pulse-muted)}
.pulse-inventario__cofre-empty{display:flex;flex-direction:column;align-items:center;padding:2.5rem 1.5rem;text-align:center;border:1px dashed var(--pulse-border);border-radius:1rem}
.pulse-inventario__cofre-empty i{font-size:2.25rem;opacity:.4;margin-bottom:.65rem}

/* Pulse Vault — cofre (arvore + cards) */
.pulse-cofre{display:grid;grid-template-columns:minmax(11rem,14rem) minmax(0,1fr);gap:1rem;min-height:20rem}
@media (max-width:768px){.pulse-cofre{grid-template-columns:1fr}}
.pulse-cofre__sidebar{border:1px solid var(--pulse-border);border-radius:.85rem;background:var(--pulse-surface);padding:.65rem;display:flex;flex-direction:column;gap:.5rem;max-height:32rem;overflow:auto}
.pulse-cofre__sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:.35rem}
.pulse-cofre__sidebar-title{margin:0;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--pulse-muted)}
.pulse-cofre__tree{display:flex;flex-direction:column;gap:.15rem}
.pulse-cofre__tree-item{display:flex;align-items:center;gap:.4rem;width:100%;padding:.45rem .55rem;border:0;border-radius:.55rem;background:transparent;color:var(--pulse-text);font-size:.82rem;font-weight:600;text-align:left;cursor:pointer}
.pulse-cofre__tree-item:hover{background:color-mix(in srgb,var(--pulse-primary) 8%,var(--pulse-surface))}
.pulse-cofre__tree-item.is-active{background:color-mix(in srgb,var(--pulse-primary) 14%,var(--pulse-surface));color:var(--pulse-primary)}
.pulse-cofre__tree-actions{margin-left:auto;opacity:.55;font-size:.72rem}
.pulse-cofre__main{border:1px solid var(--pulse-border);border-radius:.85rem;background:var(--pulse-surface);padding:.85rem 1rem;min-width:0}
.pulse-cofre__toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem;flex-wrap:wrap}
.pulse-cofre__toolbar-left{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem;min-width:0}
.pulse-cofre__tag-filter{min-width:11rem;max-width:14rem}
.pulse-cofre__tag-filter .label{margin-bottom:.2rem;font-size:.72rem}
.pulse-cofre__card-tags{display:flex;flex-wrap:wrap;gap:.2rem}
.pulse-cofre__panel-title{margin:0;font-size:1rem;font-weight:800}
.pulse-cofre__toolbar-actions{display:flex;flex-wrap:wrap;gap:.35rem}
.pulse-cofre__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:.75rem}
.pulse-cofre__card{padding:.85rem 1rem;border:1px solid var(--pulse-border);border-radius:.85rem;background:var(--pulse-bg)}
.pulse-cofre__card--confidencial{border-color:color-mix(in srgb,#ef4444 40%,var(--pulse-border))}
.pulse-cofre__card--restrito{border-color:color-mix(in srgb,#f59e0b 35%,var(--pulse-border))}
.pulse-cofre__card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.65rem}
.pulse-cofre__card-title-wrap{min-width:0;flex:1}
.pulse-cofre__card-head h5{margin:0 0 .35rem;font-size:.95rem;font-weight:800}
.pulse-cofre__card-actions{display:flex;gap:.2rem;flex-shrink:0}
.pulse-cofre__card--clickable{cursor:pointer;transition:border-color .15s,box-shadow .15s}
.pulse-cofre__card--clickable:hover{border-color:color-mix(in srgb,var(--pulse-primary) 35%,var(--pulse-border));box-shadow:0 2px 8px rgba(0,0,0,.06)}
.pulse-cofre__card-fields{display:flex;flex-direction:column;gap:.4rem}
.pulse-cofre__card-field{display:grid;grid-template-columns:6.5rem 1fr;gap:.35rem .5rem;font-size:.8rem;align-items:baseline}
.pulse-cofre__card-label{font-weight:700;color:var(--pulse-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.03em}
.pulse-cofre__card-value{min-width:0;word-break:break-word}
.pulse-cofre__mask{font-family:ui-monospace,monospace;letter-spacing:.12em;color:var(--pulse-muted)}
.pulse-cofre__hint{font-size:.72rem;color:var(--pulse-muted);font-style:italic}
.pulse-cofre__pasta-icon-field .field{margin-bottom:0}
.pulse-cofre__pasta-icon-row{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;gap:.45rem .55rem;align-items:center;margin-top:.15rem}
.pulse-cofre__pasta-icon-preview{grid-row:1/span 2;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;align-self:start;border:1px solid var(--pulse-border);border-radius:.55rem;background:color-mix(in srgb,var(--pulse-primary) 8%,var(--pulse-surface));font-size:1.05rem;color:var(--pulse-primary)}
.pulse-cofre__pasta-icon-input{grid-column:2;grid-row:1;width:100%;min-height:2.5rem;margin:0}
.pulse-cofre__pasta-icon-toggle{grid-column:2;grid-row:2;justify-self:start;min-height:2.15rem;padding:.35rem .75rem;font-size:.8rem}
.pulse-cofre__pasta-icon-help{margin-top:.45rem!important;line-height:1.45}
.pulse-cofre__pasta-icon-help a{color:var(--pulse-primary);text-decoration:none;font-weight:600}
.pulse-cofre__pasta-icon-help a:hover{text-decoration:underline}
.pulse-cofre__pasta-icon-sample{display:inline;padding:.05rem .35rem;border-radius:.3rem;background:color-mix(in srgb,var(--pulse-primary) 10%,var(--pulse-surface));color:var(--pulse-text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88em;font-weight:600}
.pulse-cofre__pasta-icon-picker{margin-top:.55rem;padding:.65rem;border:1px solid var(--pulse-border);border-radius:.65rem;background:var(--pulse-bg)}
.pulse-cofre__pasta-icon-search{margin-bottom:.55rem;width:100%}
.pulse-cofre__pasta-icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));gap:.35rem;max-height:12rem;overflow:auto}
.pulse-cofre__pasta-icon-option{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.45rem .35rem;border:1px solid var(--pulse-border);border-radius:.5rem;background:var(--pulse-surface);color:var(--pulse-text);font-size:.68rem;font-weight:600;line-height:1.2;text-align:center;cursor:pointer;transition:border-color .12s,background .12s}
.pulse-cofre__pasta-icon-option i{font-size:1.05rem;color:var(--pulse-primary)}
.pulse-cofre__pasta-icon-option:hover{border-color:color-mix(in srgb,var(--pulse-primary) 40%,var(--pulse-border));background:color-mix(in srgb,var(--pulse-primary) 6%,var(--pulse-surface))}
.pulse-cofre__pasta-icon-option.is-active{border-color:var(--pulse-primary);background:color-mix(in srgb,var(--pulse-primary) 12%,var(--pulse-surface));box-shadow:0 0 0 1px color-mix(in srgb,var(--pulse-primary) 25%,transparent)}
.pulse-cofre__pasta-icon-option span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pulse-cofre__pasta-icon-empty{margin:0;padding:.75rem;font-size:.78rem;color:var(--pulse-muted);text-align:center}
html.dark .pulse-cofre__pasta-icon-sample{background:color-mix(in srgb,var(--pulse-primary) 14%,#0f172a);color:#e2e8f0}
html.dark .pulse-cofre__pasta-icon-preview{background:color-mix(in srgb,var(--pulse-primary) 12%,#0f172a);border-color:#334155}
html.dark .pulse-cofre__pasta-icon-picker{background:#0f172a;border-color:#334155}
.pulse-cofre__link{color:var(--pulse-primary);text-decoration:none;word-break:break-all}
.pulse-cofre__link:hover{text-decoration:underline}
.pulse-cofre__view-dl{margin:0;display:flex;flex-direction:column;gap:0}
.pulse-cofre__view-row{display:grid;grid-template-columns:8.5rem 1fr;gap:.5rem;padding:.65rem 0;border-bottom:1px solid var(--pulse-border);align-items:start}
.pulse-cofre__view-row dt{margin:0;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--pulse-muted)}
.pulse-cofre__view-row dd{margin:0;min-width:0;word-break:break-word}
.pulse-cofre__view-row--block dd{white-space:pre-wrap;line-height:1.5}
.pulse-cofre__view-notas{font-size:.88rem}
.pulse-cofre__secret-row dd{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}
.pulse-cofre__secret-value{font-size:.85rem;padding:.2rem .45rem;background:color-mix(in srgb,var(--pulse-primary) 6%,var(--pulse-surface));border-radius:.35rem}
.pulse-cofre__secret-value.is-revealed{color:var(--pulse-text);letter-spacing:normal;word-break:break-all}
.pulse-cofre__secret-actions{display:flex;flex-wrap:wrap;gap:.25rem}
.pulse-cofre__view-footer{padding:1rem 1.25rem;border-top:1px solid var(--pulse-border);display:flex;justify-content:flex-end;gap:.5rem}
@media (max-width:520px){.pulse-cofre__card-field,.pulse-cofre__view-row{grid-template-columns:1fr}}
.pulse-cofre__badges{display:flex;flex-wrap:wrap;gap:.25rem}
.pulse-cofre__meta{margin:.35rem 0 0;font-size:.78rem;color:var(--pulse-muted)}
.pulse-cofre__empty{display:flex;flex-direction:column;align-items:center;padding:2.5rem 1.5rem;text-align:center;border:1px dashed var(--pulse-border);border-radius:1rem}
.pulse-cofre__empty i{font-size:2.25rem;opacity:.4;margin-bottom:.65rem}
.pulse-cofre__campo-row{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-bottom:.5rem}
.pulse-cofre-page__empty{display:flex;flex-direction:column;align-items:center;padding:3rem 1.5rem;text-align:center;border:1px dashed var(--pulse-border);border-radius:1rem;color:var(--pulse-muted)}
.pulse-cofre-page__empty i{font-size:2.5rem;opacity:.35;margin-bottom:.75rem}
.pulse-cliente-visao-tabs{display:flex;flex-wrap:wrap;gap:.35rem;border-bottom:1px solid var(--pulse-border);padding-bottom:.35rem}
.pulse-cliente-visao-tabs__item{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;border-radius:.55rem .55rem 0 0;font-size:.88rem;font-weight:700;color:var(--pulse-muted);text-decoration:none}
.pulse-cliente-visao-tabs__item:hover{color:var(--pulse-text);background:color-mix(in srgb,var(--pulse-primary) 6%,var(--pulse-surface))}
.pulse-cliente-visao-tabs__item.is-active{color:var(--pulse-primary);border-bottom:2px solid var(--pulse-primary);margin-bottom:-1px}
.pulse-cliente-visao-cofre{margin-bottom:1.5rem}

/* Inventario — seletor de cliente + command palette */
.pulse-inventario__cliente-bar{align-items:stretch;flex-wrap:wrap}
.pulse-inventario__cliente-form{min-width:min(100%,16rem)}
.pulse-inv-cliente-picker{position:relative}
.pulse-inv-cliente-picker__control{display:flex;align-items:center;gap:.35rem;border:1px solid var(--pulse-border);border-radius:.55rem;background:var(--pulse-card);padding:.15rem .45rem .15rem .65rem;transition:border-color .15s,box-shadow .15s}
.pulse-inv-cliente-picker__control:focus-within{border-color:var(--pulse-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--pulse-primary) 18%,transparent)}
.pulse-inv-cliente-picker__icon{color:var(--pulse-muted);font-size:.85rem;flex-shrink:0}
.pulse-inv-cliente-picker__input{border:0!important;box-shadow:none!important;background:transparent!important;padding:.45rem 0!important;flex:1;min-width:0;font-size:.92rem}
.pulse-inv-cliente-picker__fav{flex-shrink:0;width:2rem;height:2rem;border:0;border-radius:.45rem;background:transparent;color:var(--pulse-muted);cursor:pointer;transition:color .15s,background .15s}
.pulse-inv-cliente-picker__fav:hover,.pulse-inv-cliente-picker__fav[aria-pressed="true"]{color:#f59e0b;background:color-mix(in srgb,#f59e0b 12%,transparent)}
.pulse-inv-cliente-picker__native{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;overflow:hidden}
.pulse-inv-cliente-picker__dropdown{position:absolute;z-index:40;top:calc(100% + .35rem);left:0;right:0;max-height:min(22rem,55vh);overflow:auto;border:1px solid var(--pulse-border);border-radius:.65rem;background:var(--pulse-card);box-shadow:var(--pulse-shadow-md,0 12px 32px rgba(15,23,42,.12));padding:.35rem}
.pulse-inv-cliente-picker__section+.pulse-inv-cliente-picker__section{margin-top:.35rem;padding-top:.35rem;border-top:1px solid var(--pulse-border)}
.pulse-inv-cliente-picker__section-title{display:flex;align-items:center;gap:.4rem;padding:.25rem .55rem;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--pulse-muted)}
.pulse-inv-cliente-picker__option{display:flex;align-items:center;gap:.5rem;width:100%;padding:.55rem .65rem;border:0;border-radius:.45rem;background:transparent;text-align:left;cursor:pointer;color:var(--pulse-text);font-size:.88rem}
.pulse-inv-cliente-picker__option:hover,.pulse-inv-cliente-picker__option.is-active{background:color-mix(in srgb,var(--pulse-primary) 10%,var(--pulse-surface));color:var(--pulse-primary)}
.pulse-inv-cliente-picker__option-label{flex:1;min-width:0;line-height:1.35}
.pulse-inv-cliente-picker__option-fav{color:#f59e0b;font-size:.75rem}
.pulse-inv-cliente-picker__empty{padding:.85rem .65rem;font-size:.85rem;color:var(--pulse-muted)}
.pulse-inv-cliente-picker mark{background:color-mix(in srgb,var(--pulse-primary) 22%,transparent);color:inherit;border-radius:2px;padding:0 .1rem}
.pulse-inv-cmd-trigger{flex-shrink:0;align-self:flex-end;display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap}
.pulse-inv-cmd-trigger__label{font-weight:700}
.pulse-inv-cmd-trigger__kbd{display:inline-flex;align-items:center;padding:.12rem .4rem;border-radius:.35rem;border:1px solid var(--pulse-border);background:var(--pulse-surface);font-size:.68rem;font-weight:700;color:var(--pulse-muted);font-family:ui-monospace,monospace}
body.pulse-inv-palette-open{overflow:hidden}
.pulse-inv-palette{position:fixed;inset:0;z-index:120;display:flex;align-items:flex-start;justify-content:center;padding:min(12vh,6rem) 1rem 1rem}
.pulse-inv-palette[hidden]{display:none!important}
.pulse-inv-palette__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.45);backdrop-filter:blur(2px)}
.pulse-inv-palette__panel{position:relative;width:min(42rem,100%);border:1px solid var(--pulse-border);border-radius:.85rem;background:var(--pulse-card);box-shadow:0 24px 48px rgba(15,23,42,.18);overflow:hidden;display:flex;flex-direction:column;max-height:min(70vh,32rem)}
.pulse-inv-palette__head{display:flex;align-items:center;gap:.65rem;padding:.85rem 1rem;border-bottom:1px solid var(--pulse-border);color:var(--pulse-muted)}
.pulse-inv-palette__input{flex:1;border:0!important;box-shadow:none!important;background:transparent!important;font-size:1rem;font-weight:600;color:var(--pulse-text);padding:.25rem 0!important}
.pulse-inv-palette__esc{font-size:.68rem;padding:.15rem .4rem;border-radius:.35rem;border:1px solid var(--pulse-border);color:var(--pulse-muted);font-family:ui-monospace,monospace}
.pulse-inv-palette__results{flex:1;overflow:auto;padding:.35rem}
.pulse-inv-palette__hint,.pulse-inv-palette__empty{padding:.85rem 1rem;font-size:.85rem;color:var(--pulse-muted);margin:0}
.pulse-inv-palette__item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.65rem .85rem;border:0;border-radius:.55rem;background:transparent;text-align:left;cursor:pointer;color:var(--pulse-text)}
.pulse-inv-palette__item:hover,.pulse-inv-palette__item.is-active{background:color-mix(in srgb,var(--pulse-primary) 10%,var(--pulse-surface))}
.pulse-inv-palette__item-icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.5rem;background:color-mix(in srgb,var(--pulse-primary) 12%,var(--pulse-surface));color:var(--pulse-primary);flex-shrink:0}
.pulse-inv-palette__item-body{flex:1;min-width:0}
.pulse-inv-palette__item-label{display:block;font-weight:800;font-size:.92rem;line-height:1.3}
.pulse-inv-palette__item-sub{display:block;font-size:.78rem;color:var(--pulse-muted);margin-top:.1rem}
.pulse-inv-palette__item-go{color:var(--pulse-muted);opacity:.5;font-size:.8rem}
.pulse-inv-palette__item.is-active .pulse-inv-palette__item-go{opacity:1;color:var(--pulse-primary)}
.pulse-inv-palette__key{font-size:.72rem;color:#f59e0b;margin-left:.25rem}
.pulse-inv-palette__foot{display:flex;flex-wrap:wrap;gap:.65rem 1rem;padding:.55rem 1rem;border-top:1px solid var(--pulse-border);font-size:.72rem;color:var(--pulse-muted)}
.pulse-inv-palette__foot kbd{display:inline-flex;align-items:center;padding:.08rem .35rem;border-radius:.3rem;border:1px solid var(--pulse-border);background:var(--pulse-surface);font-family:ui-monospace,monospace;margin-right:.15rem}
.pulse-inv-highlight{background:color-mix(in srgb,var(--pulse-primary) 24%,transparent);color:inherit;border-radius:2px;padding:0 .08rem}
@media (max-width:640px){.pulse-inv-cmd-trigger__label{display:none}.pulse-inventario__cliente-bar{flex-direction:column;align-items:stretch}.pulse-inv-cmd-trigger{align-self:stretch;justify-content:center}}
.pulse-inventario__row[data-inv-row]{cursor:pointer}
.pulse-inventario__row[data-inv-row]:hover .pulse-inventario__td--primary .pulse-inventario__cell-text{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--pulse-primary) 35%,transparent)}
.pulse-inventario__th--sortable{padding:0;vertical-align:middle}
.pulse-inventario__th-sort{display:flex;align-items:center;gap:.35rem;width:100%;padding:.65rem .75rem;border:0;background:transparent;color:inherit;font:inherit;font-weight:800;text-align:left;cursor:pointer;border-radius:.35rem;transition:background .12s,color .12s}
.pulse-inventario__th-sort:hover{background:color-mix(in srgb,var(--pulse-primary) 8%,transparent);color:var(--pulse-primary)}
.pulse-inventario__th.is-sorted .pulse-inventario__th-sort{color:var(--pulse-primary)}
.pulse-inventario__th-sort-icon{font-size:.68rem;opacity:.45;flex-shrink:0}
.pulse-inventario__th.is-sorted .pulse-inventario__th-sort-icon{opacity:1}
.pulse-inventario__filters-hint kbd{display:inline-flex;align-items:center;padding:.08rem .35rem;border-radius:.3rem;border:1px solid var(--pulse-border);background:var(--pulse-surface);font-family:ui-monospace,monospace;font-size:.68rem}

/* Estoque interno — alinhado ao inventario, sem cards brancos */
.pulse-content--estoque{
    --est-radius:1rem;
    --pulse-primary:var(--pulse-orange);
    --pulse-surface:color-mix(in srgb,var(--pulse-bg) 88%,var(--pulse-text) 12%);
    --pulse-shadow-sm:0 1px 3px rgba(15,23,42,.06);
}
.pulse-estoque-page{display:flex;flex-direction:column;gap:1rem}
.pulse-estoque__head{display:flex;align-items:flex-start;gap:.85rem;flex-wrap:wrap;padding-bottom:.85rem;border-bottom:1px solid var(--pulse-border)}
.pulse-estoque__head-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.7rem;background:color-mix(in srgb,var(--pulse-orange) 14%,transparent);color:var(--pulse-orange);font-size:1.05rem;flex-shrink:0}
.pulse-estoque__head-text{flex:1;min-width:min(100%,14rem)}
.pulse-estoque__title{margin:0;font-size:1.35rem;font-weight:800;color:var(--pulse-text);line-height:1.2}
.pulse-estoque__desc{margin:.25rem 0 0;font-size:.88rem;color:var(--pulse-muted);line-height:1.45;max-width:42rem}
.pulse-estoque__head-actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;margin-left:auto}
.pulse-estoque__tabs{display:flex;flex-wrap:wrap;gap:.45rem;padding:0;border:0;background:transparent;box-shadow:none}
.pulse-estoque__tab{display:inline-flex;align-items:center;justify-content:center;min-height:2.35rem;padding:.5rem .85rem;border:1px solid var(--pulse-border);border-radius:.65rem;background:transparent;color:var(--pulse-muted);font-weight:800;font-size:.84rem;text-decoration:none;transition:background .15s,border-color .15s,color .15s}
.pulse-estoque__tab:hover{background:color-mix(in srgb,var(--pulse-orange) 7%,transparent);border-color:color-mix(in srgb,var(--pulse-orange) 35%,var(--pulse-border));color:var(--pulse-text)}
.pulse-estoque__tab.is-active{background:color-mix(in srgb,var(--pulse-orange) 14%,transparent);border-color:var(--pulse-orange);color:var(--pulse-orange);box-shadow:0 4px 14px color-mix(in srgb,var(--pulse-orange) 16%,transparent)}
.pulse-content--estoque .pulse-inventario__filters{padding:1rem 1.1rem;border:1px solid var(--pulse-border);border-radius:var(--est-radius);background:transparent;box-shadow:none}
.pulse-content--estoque .pulse-inventario__filters .label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--pulse-muted)}
.pulse-estoque__filter-check{display:flex;align-items:center;gap:.45rem;min-height:2.5rem;font-size:.88rem;color:var(--pulse-text)}
.pulse-estoque__kpi-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}
@media(max-width:768px){.pulse-estoque__kpi-strip{grid-template-columns:1fr}}
.pulse-estoque__kpi{padding:.75rem .85rem;border:1px solid var(--pulse-border);border-radius:.8rem;background:color-mix(in srgb,var(--pulse-orange) 5%,transparent)}
.pulse-estoque__kpi-label{display:block;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--pulse-muted)}
.pulse-estoque__kpi-val{display:block;margin-top:.2rem;font-size:1.15rem;font-weight:800;color:var(--pulse-text)}
.pulse-estoque__kpi--alert{border-color:color-mix(in srgb,#ef4444 35%,var(--pulse-border));background:color-mix(in srgb,#ef4444 8%,transparent)}
.pulse-estoque__kpi--alert .pulse-estoque__kpi-val{color:#b91c1c}
.pulse-estoque__table-wrap{border:1px solid var(--pulse-border);border-radius:var(--est-radius);overflow:hidden;background:transparent}
.pulse-estoque__table-scroll{overflow-x:auto;max-height:min(70vh,42rem);overflow-y:auto}
.pulse-estoque__table{width:100%;border-collapse:separate;border-spacing:0;font-size:.84rem;background:transparent}
.pulse-estoque__table thead{position:sticky;top:0;z-index:1}
.pulse-estoque__table th{background:color-mix(in srgb,var(--pulse-text) 4%,var(--pulse-bg));font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--pulse-muted);padding:.65rem .75rem;border-bottom:2px solid var(--pulse-border);white-space:nowrap;text-align:left}
.pulse-estoque__table td{padding:.7rem .75rem;border-bottom:1px solid color-mix(in srgb,var(--pulse-border) 75%,transparent);vertical-align:top;color:var(--pulse-text);background:transparent}
.pulse-estoque__table tbody tr:hover td{background:color-mix(in srgb,var(--pulse-orange) 5%,transparent)}
.pulse-estoque__th--actions,.pulse-estoque__td--actions{text-align:right;white-space:nowrap;width:1%}
.pulse-estoque__td--nowrap{white-space:nowrap}
.pulse-estoque__sku{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;padding:.1rem .35rem;border-radius:.35rem;background:color-mix(in srgb,var(--pulse-text) 5%,transparent);color:var(--pulse-text)}
.pulse-estoque__prod-nome{display:block;font-weight:800;font-size:.9rem}
.pulse-estoque__prod-desc{margin-top:.15rem;font-size:.78rem;color:var(--pulse-muted);line-height:1.35}
.pulse-estoque__unidade-label{font-size:.78rem;font-weight:700;color:var(--pulse-muted);line-height:1.35}
.pulse-estoque__badge{display:inline-flex;align-items:center;padding:.15rem .55rem;border-radius:999px;font-size:.72rem;font-weight:800;border:1px solid transparent}
.pulse-estoque__badge--ok{background:color-mix(in srgb,#94a3b8 12%,transparent);border-color:color-mix(in srgb,#94a3b8 28%,var(--pulse-border));color:#475569}
.pulse-estoque__badge--critico{background:color-mix(in srgb,#ef4444 14%,transparent);border-color:#ef4444;color:#b91c1c}
.pulse-estoque__badge--proximo_minimo{background:color-mix(in srgb,#eab308 14%,transparent);border-color:#eab308;color:#a16207}
.pulse-estoque__badge--proximo_maximo{background:color-mix(in srgb,#22c55e 14%,transparent);border-color:#22c55e;color:#15803d}
.pulse-estoque__badge--acima_maximo{background:color-mix(in srgb,#3b82f6 14%,transparent);border-color:#3b82f6;color:#1d4ed8}
.pulse-estoque__badge--baixo{background:color-mix(in srgb,#ef4444 12%,transparent);border-color:color-mix(in srgb,#ef4444 30%,var(--pulse-border));color:#b91c1c}
.pulse-estoque__badge--alto{background:color-mix(in srgb,#3b82f6 12%,transparent);border-color:color-mix(in srgb,#3b82f6 30%,var(--pulse-border));color:#1d4ed8}
.pulse-estoque__badge--neutral{background:color-mix(in srgb,var(--pulse-text) 6%,transparent);border-color:var(--pulse-border);color:var(--pulse-muted)}
.pulse-estoque__row--critico td:first-child{box-shadow:inset 4px 0 0 #ef4444}
.pulse-estoque__row--proximo_minimo td:first-child{box-shadow:inset 4px 0 0 #eab308}
.pulse-estoque__row--proximo_maximo td:first-child{box-shadow:inset 4px 0 0 #22c55e}
.pulse-estoque__row--acima_maximo td:first-child{box-shadow:inset 4px 0 0 #3b82f6}
.pulse-estoque-nivel-legend{display:flex;flex-wrap:wrap;gap:.55rem .85rem;padding:.75rem .85rem;border:1px solid var(--pulse-border);border-radius:.85rem;background:color-mix(in srgb,var(--pulse-text) 3%,transparent)}
.pulse-estoque-nivel-legend--compact{gap:.4rem .65rem;padding:.55rem .7rem}
.pulse-estoque-nivel-legend__item{display:inline-flex;align-items:flex-start;gap:.45rem;min-width:min(100%,11rem)}
.pulse-estoque-nivel-legend__swatch{width:.85rem;height:.85rem;border-radius:.25rem;border:2px solid transparent;flex-shrink:0;margin-top:.12rem}
.pulse-estoque-nivel-legend__item--critico .pulse-estoque-nivel-legend__swatch{border-color:#ef4444;background:color-mix(in srgb,#ef4444 18%,transparent)}
.pulse-estoque-nivel-legend__item--proximo_minimo .pulse-estoque-nivel-legend__swatch{border-color:#eab308;background:color-mix(in srgb,#eab308 18%,transparent)}
.pulse-estoque-nivel-legend__item--ok .pulse-estoque-nivel-legend__swatch{border-color:#94a3b8;background:color-mix(in srgb,#94a3b8 18%,transparent)}
.pulse-estoque-nivel-legend__item--proximo_maximo .pulse-estoque-nivel-legend__swatch{border-color:#22c55e;background:color-mix(in srgb,#22c55e 18%,transparent)}
.pulse-estoque-nivel-legend__item--acima_maximo .pulse-estoque-nivel-legend__swatch{border-color:#3b82f6;background:color-mix(in srgb,#3b82f6 18%,transparent)}
.pulse-estoque-nivel-legend__text{display:flex;flex-direction:column;gap:.05rem;font-size:.78rem;line-height:1.3}
.pulse-estoque-nivel-legend__text strong{font-weight:800;color:var(--pulse-text)}
.pulse-estoque-nivel-legend__desc{color:var(--pulse-muted);font-size:.72rem}
.pulse-estoque-nivel-filters{display:flex;flex-wrap:wrap;gap:.4rem}
.pulse-estoque-nivel-chip{display:inline-flex;align-items:center;min-height:2rem;padding:.35rem .7rem;border:2px solid var(--pulse-border);border-radius:999px;font-size:.78rem;font-weight:800;color:var(--pulse-muted);text-decoration:none}
.pulse-estoque-nivel-chip.is-active{color:var(--pulse-text);background:color-mix(in srgb,var(--pulse-orange) 10%,transparent);border-color:var(--pulse-orange)}
.pulse-estoque-nivel-chip--critico.is-active{border-color:#ef4444;background:color-mix(in srgb,#ef4444 10%,transparent)}
.pulse-estoque-nivel-chip--proximo_minimo.is-active{border-color:#eab308;background:color-mix(in srgb,#eab308 10%,transparent)}
.pulse-estoque-nivel-chip--proximo_maximo.is-active{border-color:#22c55e;background:color-mix(in srgb,#22c55e 10%,transparent)}
.pulse-estoque-nivel-chip--acima_maximo.is-active{border-color:#3b82f6;background:color-mix(in srgb,#3b82f6 10%,transparent)}
.pulse-estoque-saldo-visual{display:flex;flex-direction:column;gap:.35rem;min-width:10rem}
.pulse-estoque-saldo-visual__top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}
.pulse-estoque-saldo-visual__qty{font-size:.95rem;font-weight:800;color:var(--pulse-text)}
.pulse-estoque-saldo-visual__qty span{font-size:.75rem;font-weight:700;color:var(--pulse-muted)}
.pulse-estoque-saldo-visual__bar{position:relative;height:.45rem;border-radius:999px;background:color-mix(in srgb,var(--pulse-text) 8%,transparent)}
.pulse-estoque-saldo-visual__bar-fill{display:block;height:100%;border-radius:999px}
.pulse-estoque-saldo-visual--critico .pulse-estoque-saldo-visual__bar-fill{background:#ef4444}
.pulse-estoque-saldo-visual--proximo_minimo .pulse-estoque-saldo-visual__bar-fill{background:#eab308}
.pulse-estoque-saldo-visual--ok .pulse-estoque-saldo-visual__bar-fill{background:#94a3b8}
.pulse-estoque-saldo-visual--proximo_maximo .pulse-estoque-saldo-visual__bar-fill{background:#22c55e}
.pulse-estoque-saldo-visual--acima_maximo .pulse-estoque-saldo-visual__bar-fill{background:#3b82f6}
.pulse-estoque-saldo-visual__marker{position:absolute;top:-2px;width:2px;height:calc(100% + 4px);background:var(--pulse-text);opacity:.45;transform:translateX(-50%)}
.pulse-estoque-saldo-visual__refs{display:flex;justify-content:space-between;gap:.5rem;font-size:.68rem;color:var(--pulse-muted)}
.pulse-estoque-saldo-visual__condicoes{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.35rem}
.pulse-estoque-condicao-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.08rem .45rem;border-radius:999px;border:1px solid var(--pulse-border);font-size:.66rem;font-weight:600;line-height:1.5;color:var(--pulse-muted);background:color-mix(in srgb,var(--pulse-text) 4%,transparent)}
.pulse-estoque-condicao-chip strong{font-weight:800;color:var(--pulse-text)}
.pulse-estoque-condicao-chip--novo{border-color:color-mix(in srgb,#22c55e 32%,var(--pulse-border));color:#15803d;background:color-mix(in srgb,#22c55e 10%,transparent)}
.pulse-estoque-condicao-chip--usado{border-color:color-mix(in srgb,#eab308 34%,var(--pulse-border));color:#a16207;background:color-mix(in srgb,#eab308 10%,transparent)}
.pulse-estoque-condicao-chip--recond{border-color:color-mix(in srgb,#3b82f6 32%,var(--pulse-border));color:#1d4ed8;background:color-mix(in srgb,#3b82f6 10%,transparent)}
html.dark .pulse-estoque-condicao-chip--novo{color:#86efac}
html.dark .pulse-estoque-condicao-chip--usado{color:#fde047}
html.dark .pulse-estoque-condicao-chip--recond{color:#93c5fd}
.pulse-estoque-faturar-wrap{padding:.75rem;border:1px solid var(--pulse-border);border-radius:.65rem;background:color-mix(in srgb,var(--pulse-text) 3%,transparent)}
.pulse-estoque-faturar-choice{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:.35rem 0}
.pulse-estoque-faturar-total{padding:.55rem .75rem;border:1px solid var(--pulse-border);border-radius:.5rem;font-weight:800;font-size:1rem;background:color-mix(in srgb,var(--pulse-text) 4%,transparent)}
.pulse-estoque-dash__summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}
@media(max-width:900px){.pulse-estoque-dash__summary{grid-template-columns:1fr}}
.pulse-estoque-dash-card{padding:.85rem;border:1px solid var(--pulse-border);border-radius:.85rem;background:color-mix(in srgb,var(--pulse-text) 3%,transparent)}
.pulse-estoque-dash-card__label{display:block;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--pulse-muted)}
.pulse-estoque-dash-card__val{display:block;margin-top:.25rem;font-size:1.35rem;font-weight:800;color:var(--pulse-text)}
.pulse-estoque-dash-card__hint,.pulse-estoque-dash-card__link{display:block;margin-top:.2rem;font-size:.75rem;color:var(--pulse-muted)}
.pulse-estoque-dash-card__link{color:var(--pulse-orange);text-decoration:none;font-weight:700}
.pulse-estoque-dash__niveis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem}
@media(max-width:1100px){.pulse-estoque-dash__niveis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pulse-estoque-dash-nivel{display:flex;flex-direction:column;gap:.15rem;padding:.75rem;border:2px solid var(--pulse-border);border-radius:.8rem;text-decoration:none}
.pulse-estoque-dash-nivel__count{font-size:1.4rem;font-weight:800;line-height:1}
.pulse-estoque-dash-nivel__label{font-size:.74rem;font-weight:700;line-height:1.25}
.pulse-estoque-dash-nivel--critico{border-color:#ef4444;color:#b91c1c;background:color-mix(in srgb,#ef4444 8%,transparent)}
.pulse-estoque-dash-nivel--proximo_minimo{border-color:#eab308;color:#a16207;background:color-mix(in srgb,#eab308 8%,transparent)}
.pulse-estoque-dash-nivel--ok{border-color:#94a3b8;color:#475569;background:color-mix(in srgb,#94a3b8 8%,transparent)}
.pulse-estoque-dash-nivel--proximo_maximo{border-color:#22c55e;color:#15803d;background:color-mix(in srgb,#22c55e 8%,transparent)}
.pulse-estoque-dash-nivel--acima_maximo{border-color:#3b82f6;color:#1d4ed8;background:color-mix(in srgb,#3b82f6 8%,transparent)}
.pulse-estoque-dash__section{display:flex;flex-direction:column;gap:.75rem}
.pulse-estoque-dash__section-head{display:flex;flex-direction:column;gap:.15rem}
.pulse-estoque-dash__section-title{margin:0;font-size:1rem;font-weight:800;color:var(--pulse-text);display:flex;align-items:center;gap:.45rem}
.pulse-estoque-dash__section-desc{margin:0;font-size:.82rem;color:var(--pulse-muted)}
.pulse-estoque-dash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.65rem}
.pulse-estoque-dash-grid--all{max-height:min(70vh,40rem);overflow:auto;padding:.15rem}
.pulse-estoque-prod-card{display:flex;flex-direction:column;gap:.45rem;padding:.75rem;border:2px solid var(--pulse-border);border-radius:.85rem;background:color-mix(in srgb,var(--pulse-text) 2%,transparent);text-decoration:none;color:inherit}
.pulse-estoque-prod-card--critico{border-color:#ef4444}
.pulse-estoque-prod-card--proximo_minimo{border-color:#eab308}
.pulse-estoque-prod-card--ok{border-color:color-mix(in srgb,#94a3b8 45%,var(--pulse-border))}
.pulse-estoque-prod-card--proximo_maximo{border-color:#22c55e}
.pulse-estoque-prod-card--acima_maximo{border-color:#3b82f6}
.pulse-estoque-prod-card__head{display:flex;align-items:center;justify-content:space-between;gap:.35rem}
.pulse-estoque-prod-card__nome{font-size:.9rem;font-weight:800;line-height:1.25}
.pulse-estoque-dash__empty{padding:2rem 1rem}
.pulse-estoque__table-scroll--short{max-height:18rem}
.pulse-estoque__empty-cell{padding:0!important;border:0!important}
html.dark .pulse-content--estoque{--pulse-surface:#0f172a}
html.dark .pulse-estoque__kpi--alert .pulse-estoque__kpi-val{color:#fca5a5}
html.dark .pulse-estoque__badge--critico{color:#fca5a5}
html.dark .pulse-estoque__badge--proximo_minimo{color:#fde047}
html.dark .pulse-estoque__badge--proximo_maximo{color:#86efac}
html.dark .pulse-estoque__badge--acima_maximo{color:#93c5fd}
html.dark .pulse-estoque-dash-nivel--critico{color:#fca5a5}
html.dark .pulse-estoque-dash-nivel--proximo_minimo{color:#fde047}
html.dark .pulse-estoque-dash-nivel--proximo_maximo{color:#86efac}
html.dark .pulse-estoque-dash-nivel--acima_maximo{color:#93c5fd}
html.dark .pulse-estoque__table th{background:color-mix(in srgb,#fff 4%,#0f172a)}
html.dark .pulse-estoque__table tbody tr:hover td{background:color-mix(in srgb,var(--pulse-orange) 10%,transparent)}
.pulse-estoque-form .pulse-inventario-form__hero-icon--saida{background:color-mix(in srgb,#f97316 18%,var(--pulse-surface));color:var(--pulse-orange)}
html.dark .pulse-estoque-form .pulse-inventario-form__hero-icon--saida{background:#1e293b;color:#fb923c}
.pulse-est-produto-picker{position:relative;display:flex;flex-direction:column;gap:.55rem}
.pulse-est-produto-picker__selected:not([hidden]){display:block}
.pulse-est-produto-picker__card{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem .85rem;border:1px solid color-mix(in srgb,var(--pulse-orange) 35%,var(--pulse-border));border-radius:.7rem;background:color-mix(in srgb,var(--pulse-orange) 7%,var(--pulse-card))}
.pulse-est-produto-picker__card-icon{display:flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;border-radius:.55rem;background:color-mix(in srgb,var(--pulse-orange) 16%,transparent);color:var(--pulse-orange);flex:0 0 auto}
.pulse-est-produto-picker__card-body{display:flex;flex-direction:column;gap:.12rem;min-width:0}
.pulse-est-produto-picker__card-sku{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;color:var(--pulse-muted)}
.pulse-est-produto-picker__card-nome{font-size:.95rem;line-height:1.25}
.pulse-est-produto-picker__card-desc{font-size:.78rem;color:var(--pulse-muted);line-height:1.35}
.pulse-est-produto-picker__card-meta{font-size:.76rem;color:var(--pulse-muted)}
.pulse-est-produto-picker__control{display:flex;align-items:center;gap:.45rem;border:1px solid var(--pulse-border);border-radius:.55rem;background:var(--pulse-card);padding:.15rem .45rem .15rem .65rem;transition:border-color .15s,box-shadow .15s}
.pulse-est-produto-picker__control:focus-within{border-color:var(--pulse-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--pulse-orange) 18%,transparent)}
.pulse-est-produto-picker__icon{color:var(--pulse-muted);font-size:.85rem;flex-shrink:0}
.pulse-est-produto-picker__input{border:0!important;box-shadow:none!important;background:transparent!important;padding:.45rem 0!important;flex:1;min-width:0;font-size:.92rem}
.pulse-est-produto-picker__clear{flex-shrink:0;width:2rem;height:2rem;border:0;border-radius:.45rem;background:transparent;color:var(--pulse-muted);cursor:pointer}
.pulse-est-produto-picker__clear:hover{color:var(--pulse-text);background:color-mix(in srgb,var(--pulse-text) 6%,transparent)}
.pulse-est-produto-picker__dropdown{position:absolute;z-index:45;top:calc(100% + .35rem);left:0;right:0;max-height:min(18rem,45vh);overflow:auto;border:1px solid var(--pulse-border);border-radius:.65rem;background:var(--pulse-card);box-shadow:var(--pulse-shadow-md,0 12px 32px rgba(15,23,42,.12));padding:.35rem}
.pulse-est-produto-picker__option{display:flex;flex-direction:column;align-items:flex-start;gap:.18rem;width:100%;padding:.6rem .7rem;border:0;border-radius:.45rem;background:transparent;text-align:left;cursor:pointer;color:var(--pulse-text)}
.pulse-est-produto-picker__option:hover,.pulse-est-produto-picker__option:focus{background:color-mix(in srgb,var(--pulse-orange) 10%,var(--pulse-surface));outline:none}
.pulse-est-produto-picker__option-main{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .55rem}
.pulse-est-produto-picker__option-main code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;color:var(--pulse-muted)}
.pulse-est-produto-picker__option-main strong{font-size:.9rem;line-height:1.25}
.pulse-est-produto-picker__option-meta{font-size:.74rem;color:var(--pulse-muted)}
.pulse-est-produto-picker__empty{padding:.85rem .7rem;font-size:.84rem;color:var(--pulse-muted)}
.pulse-estoque__row-actions{display:inline-flex;align-items:center;gap:.25rem;justify-content:flex-end}

/* ===========================================================================
 * Item a faturar — drawer compartilhado (Financeiro e Estoque)
 * =========================================================================== */
#pulse-fat-drawer .pulse-drawer__panel{width:min(1080px,100vw)}
.pulse-drawer__form{display:flex;flex-direction:column;gap:1.1rem}
.pulse-fat-form-intro{display:flex;gap:.85rem;align-items:flex-start;padding:.95rem 1.05rem;border:1px solid var(--pulse-border);border-radius:.85rem;background:color-mix(in srgb,var(--pulse-orange) 7%,transparent)}
.pulse-fat-form-intro__icon{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;flex:0 0 auto;border-radius:.7rem;background:color-mix(in srgb,var(--pulse-orange) 18%,var(--pulse-card));color:var(--pulse-orange);font-size:1.05rem}
.pulse-fat-form-intro strong{display:block;font-weight:800;color:var(--pulse-text);font-size:.95rem}
.pulse-fat-form-intro p{margin:.2rem 0 0;font-size:.82rem;line-height:1.45;color:var(--pulse-muted)}
.pulse-fat-form-block{border:1px solid var(--pulse-border);border-radius:.9rem;padding:1.05rem 1.1rem;background:var(--pulse-card)}
.pulse-fat-form-block + .pulse-fat-form-block{margin-top:0}
.pulse-fat-form-block__head{display:flex;gap:.75rem;align-items:flex-start;margin-bottom:.95rem}
.pulse-fat-form-block__icon{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;flex:0 0 auto;border-radius:.6rem;background:color-mix(in srgb,var(--pulse-text) 6%,transparent);color:var(--pulse-text);font-size:.9rem}
.pulse-fat-form-block__title{display:block;font-weight:800;color:var(--pulse-text);font-size:.92rem}
.pulse-fat-form-block__desc{display:block;margin-top:.15rem;font-size:.8rem;line-height:1.4;color:var(--pulse-muted)}
.pulse-fat-form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.85rem 1rem}
.pulse-fat-field{display:flex;flex-direction:column;gap:.3rem;min-width:0}
.pulse-fat-field .label{margin-bottom:.1rem;font-size:.8rem;font-weight:700;color:var(--pulse-text)}
.pulse-fat-field .help{margin-top:.15rem;color:var(--pulse-muted)}
.pulse-fat-col-12{grid-column:span 12}
.pulse-fat-col-6{grid-column:span 6}
.pulse-fat-col-4{grid-column:span 4}
.pulse-fat-col-3{grid-column:span 3}
.pulse-fat-contexto{padding:.55rem .7rem;border:1px dashed var(--pulse-border);border-radius:.5rem;font-size:.82rem;color:var(--pulse-muted);background:color-mix(in srgb,var(--pulse-text) 2%,transparent)}
.pulse-fat-form-total{display:flex;align-items:center;min-height:2.5rem;padding:.55rem .75rem;border:1px solid var(--pulse-border);border-radius:.5rem;font-weight:800;font-size:1.05rem;color:var(--pulse-text);background:color-mix(in srgb,var(--pulse-orange) 8%,transparent)}
.pulse-fat-section-note{margin:0;font-size:.78rem;color:var(--pulse-muted)}
@media(max-width:760px){
    .pulse-fat-col-3,.pulse-fat-col-4,.pulse-fat-col-6{grid-column:span 12}
}
html.dark .pulse-fat-form-intro{background:color-mix(in srgb,var(--pulse-orange) 14%,#0f172a)}
html.dark .pulse-fat-form-block{background:#0f172a}
