/* /Components/Account/Pages/ForgotPassword.razor.rz.scp.css */
/* estilos em AuthLayout.razor.css e app.css */
/* /Components/Account/Pages/Login.razor.rz.scp.css */
/* estilos em AuthLayout.razor.css e app.css */
/* /Components/Account/Pages/ResetPassword.razor.rz.scp.css */
/* Estilos movidos para Components/Shared/ */
/* /Components/Layout/AuthLayout.razor.rz.scp.css */
*[b-jwl7tfpir2] {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: Arial, sans-serif;
}

.auth-background[b-jwl7tfpir2] {
    height: 100vh;
    background: linear-gradient( 135deg, #051c38, #132c4f, #1f3f7a, #2852A3, #1f3f7a, #132c4f, #0b1726 );
    display: flex;
    align-items: center;
    justify-content: center;
}

.auth-container[b-jwl7tfpir2] {
    width: 100%;
    display: flex;
    justify-content: center;
}

.auth-card[b-jwl7tfpir2] {
    width: 500px;
    min-height: 510px;
    background-color: white;
    border-radius: 20px;
    padding: 40px 50px;
    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.6);
    display: flex;
    flex-direction: column;
    justify-content: center;
    position:relative;
}

.auth-logo[b-jwl7tfpir2] {
    width: 250px;
    max-width: 100%;
    height: auto;
    margin: 0 auto 2rem auto;
    display: block;
}

.auth-body[b-jwl7tfpir2] {
    flex: 1;
    display: flex;
    flex-direction: column;
}

[b-jwl7tfpir2] .login-titulo {
    padding-top: 0 !important;
    text-align: center;
    color: #17305c;
    margin-bottom: 1.75rem;
}

/* Botão primário das páginas de autenticação */
[b-jwl7tfpir2] button[type="submit"] {
    margin-top: 10px;
    padding: 12px;
    border-radius: var(--sg-radius-md);
    border: none;
    cursor: pointer;
    background: linear-gradient(90deg, var(--sg-primary-dark), var(--sg-primary-mid), var(--sg-primary));
    color: white;
    font-weight: 500;
    transition: var(--sg-transition);
}

    [b-jwl7tfpir2] button[type="submit"]:hover {
        transform: translateY(-2px);
        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.25);
    }
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-0z9s5l1tlb] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-0z9s5l1tlb] {
    flex: 1;
    min-width: 0;
}

.content-body[b-0z9s5l1tlb] {
    padding-top: 1.1rem;
    padding-bottom: 1.875rem;
}

.sidebar[b-0z9s5l1tlb] {
    background-image: linear-gradient(180deg, #052767 0%, #0a4fb3 100%);
}

.top-row[b-0z9s5l1tlb] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-start;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-0z9s5l1tlb]  a, .top-row[b-0z9s5l1tlb]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-0z9s5l1tlb]  a:hover, .top-row[b-0z9s5l1tlb]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-0z9s5l1tlb]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

/* Header: área de ações à direita */
.header-actions[b-0z9s5l1tlb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-left: auto;
}

/* Botão de notificação */
.header-btn[b-0z9s5l1tlb] {
    position: relative;
    background: none;
    border: none;
    color: #555;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.15s;
    font-size: 1.2rem;
    padding-top: 5%;
}

    .header-btn:hover[b-0z9s5l1tlb] {
        background-color: rgba(0,0,0,0.06);
        color: #111;
    }

.notif-badge[b-0z9s5l1tlb] {
    position: absolute;
    top: 2px;
    right: 2px;
    background: #e53e3e;
    color: white;
    font-size: 0.6rem;
    font-weight: 700;
    min-width: 1rem;
    height: 1rem;
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 0.2rem;
    line-height: 1;
    pointer-events: none;
}

.sidebar-toggle-btn[b-0z9s5l1tlb] {
    font-size: 1.35rem;
    flex-shrink: 0;
    padding-top: 0;
}

/* Separador visual entre notificação e usuário */
.header-actions[b-0z9s5l1tlb]::before {
    display: none;
}

/* Dropdown wrapper */
.user-dropdown[b-0z9s5l1tlb] {
    position: relative;
}

    .user-dropdown[open] .user-chevron[b-0z9s5l1tlb] {
        transform: rotate(180deg);
    }

/* Summary: remove marcador padrão */
.header-user[b-0z9s5l1tlb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0.6rem 0.25rem 0.25rem;
    border-radius: 2rem;
    cursor: pointer;
    list-style: none;
    transition: background-color 0.15s;
    margin-left: 0.25rem;
    user-select: none;
}

    .header-user[b-0z9s5l1tlb]::-webkit-details-marker { display: none; }

    .header-user:hover[b-0z9s5l1tlb] {
        background-color: rgba(0,0,0,0.06);
    }

.user-avatar[b-0z9s5l1tlb] {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background-color: var(--sg-primary);
    color: white;
    font-size: 0.75rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    letter-spacing: 0.03em;
}

.user-name[b-0z9s5l1tlb] {
    font-size: 0.875rem;
    font-weight: 500;
    color: #222;
    white-space: nowrap;
}

.user-chevron[b-0z9s5l1tlb] {
    font-size: 0.65rem;
    color: #888;
    transition: transform 0.2s ease;
}

/* Menu dropdown */
.user-dropdown-menu[b-0z9s5l1tlb] {
    position: absolute;
    right: 0;
    top: calc(100% + 0.4rem);
    min-width: 160px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 0.5rem;
    box-shadow: 0 4px 16px rgba(0,0,0,0.10);
    padding: 0.35rem 0;
    z-index: 100;
}

.user-dropdown-item[b-0z9s5l1tlb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.55rem 1rem;
    font-size: 0.875rem;
    color: #374151;
    text-decoration: none;
    background: none;
    border: none;
    cursor: pointer;
    transition: background-color 0.12s;
    white-space: nowrap;
    margin-left: 0 !important;
}

    .user-dropdown-item:hover[b-0z9s5l1tlb] {
        background-color: #f3f4f6;
        color: #111;
        text-decoration: none;
    }

.user-dropdown-logout[b-0z9s5l1tlb] {
    color: #dc2626;
}

    .user-dropdown-logout:hover[b-0z9s5l1tlb] {
        background-color: #fef2f2;
        color: #b91c1c;
    }

.user-dropdown-divider[b-0z9s5l1tlb] {
    height: 1px;
    background-color: #e5e7eb;
    margin: 0.25rem 0;
}

.user-dropdown-form[b-0z9s5l1tlb] {
    display: contents;
}

@media (max-width: 640.98px) {
    .top-row[b-0z9s5l1tlb] {
        display: none;
    }
}

@media (min-width: 641px) {
    .page[b-0z9s5l1tlb] {
        flex-direction: row;
        min-height: 100vh;
    }

    /* Faixa de fundo da sidebar que cobre toda a altura da página,
       mesmo quando o conteúdo ultrapassa 100vh */
    .page[b-0z9s5l1tlb]::before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 250px;
        background: linear-gradient(180deg, #052767 0px, #0a4fb3 100vh, #0a4fb3 100%);
        z-index: 0;
        pointer-events: none;
        transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .sidebar[b-0z9s5l1tlb] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
        z-index: 1;
        background: transparent;
        overflow: hidden;
        transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        flex-shrink: 0;
    }

    .sidebar-fechada[b-0z9s5l1tlb]::before {
        width: 56px;
    }

    .sidebar-fechada .sidebar[b-0z9s5l1tlb] {
        width: 56px;
    }

    /* Modo ícone-only — sem alterar posicionamento para evitar glitch na transição */
    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .nav-group-text,
    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .nav-item-text,
    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .brand-sg {
        max-width: 0;
        opacity: 0;
        overflow: hidden;
    }

    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .brand-icon {
        max-width: 50px;
        opacity: 1;
    }

    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .nav-group-items {
        display: none;
    }

    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .menu-divider {
        opacity: 0;
    }

    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .nav-group {
        margin-left: 6px;
        margin-right: 6px;
    }

    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .nav-group-header {
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-top: 0.6rem;
        padding-bottom: 0.6rem;
    }

    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .nav-group-header::after {
        display: none;
    }

    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .nav-group-header.nav-group-ativo {
        background-color: rgba(255, 255, 255, 0.37);
        border-radius: 4px;
        color: white;
    }

    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .bi {
        margin-right: 0;
    }

    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .nav-group-header .bi {
        margin: auto;
    }

    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .nav-item:not(.nav-subitem) {
        padding-left: 6px !important;
        padding-right: 6px !important;
    }

    .sidebar-fechada .sidebar[b-0z9s5l1tlb]  .nav-item:not(.nav-subitem) .nav-link {
        justify-content: center;
        align-items: center;
        padding: 0;
    }

    .top-row[b-0z9s5l1tlb] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

        .top-row.auth[b-0z9s5l1tlb]  a:first-child {
            flex: 1;
            text-align: right;
            width: 0;
        }

    .top-row[b-0z9s5l1tlb], article[b-0z9s5l1tlb] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-0z9s5l1tlb] {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-0z9s5l1tlb] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
nav[b-7l5iijef0n] {
    padding-top: 0.5rem;
}

.navbar-toggler[b-7l5iijef0n] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-7l5iijef0n] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-7l5iijef0n] {
    height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
    padding-left: 0 !important;
    display: flex;
    align-items: center;
}

    .top-row .container-fluid[b-7l5iijef0n] {
        justify-content: center;
        display: flex;
        align-items: center;
        padding: 0;
        height: 100%;
    }

.navbar-brand[b-7l5iijef0n] {
    font-family: 'Rokkitt', serif;
    font-size: 1.9rem;
    font-weight: 400;
    color: white !important;
    letter-spacing: 0.5px;
    margin: 0 auto;
    text-align: center;
    justify-content: center;
    display: flex;
    align-items: center;
    height: 100%;
}

/* Ícones Bootstrap Icons inline */
.bi[b-7l5iijef0n] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    font-size: 1rem;
    line-height: 1;
    margin-right: 0.65rem;
    flex-shrink: 0;
    transition: margin-right 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Nav item padrão */
.nav-item[b-7l5iijef0n] {
    font-size: 0.9rem;
    padding-bottom: 0.25rem;
    padding-left: 0 !important;
    padding-right: 0 !important;
    transition: padding 0.32s cubic-bezier(0.4, 0, 0.2, 1);
}

    .nav-item:first-of-type[b-7l5iijef0n] {
        padding-top: 0.5rem;
    }

    .nav-item:last-of-type[b-7l5iijef0n] {
        padding-bottom: 0.2rem;
    }

    .nav-item[b-7l5iijef0n]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        height: 2.5rem;
        display: flex;
        align-items: center;
        width: 100%;
        padding-left: 2rem;
        transition: padding-left 0.32s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .nav-item[b-7l5iijef0n]  a.active {
        background-color: rgba(255,255,255,0.37);
        border-radius: 4px;
        color: white;
    }

    .nav-item[b-7l5iijef0n]  .nav-link:hover {
        background-color: rgba(255,255,255,0.1);
        color: white;
    }

/* Subitens (dentro de módulo) */
.nav-subitem[b-7l5iijef0n] {
    padding-bottom: 0.1rem;
}

    .nav-subitem[b-7l5iijef0n]  .nav-link {
        padding-left: 2rem;
        font-size: 0.85rem;
        height: 2.5rem;
        color: #b8b8b8;
    }

    .nav-subitem[b-7l5iijef0n]  a.active {
        background-color: rgba(255,255,255,0.25);
        color: white;
    }

    .nav-subitem[b-7l5iijef0n]  .nav-link:hover {
        background-color: rgba(255,255,255,0.08);
        color: white;
    }

/* Grupo de módulo */
.nav-group[b-7l5iijef0n] {
    margin-bottom: 0.25rem;
    transition: margin 0.25s ease;
}

.nav-group-header:hover[b-7l5iijef0n] {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-group-header[b-7l5iijef0n] {
    display: flex;
    align-items: center;
    list-style: none;
    color: white;
    font-size: 0.72rem;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 0.75rem 2rem 0.35rem;
    cursor: pointer;
    user-select: none;
    transition: padding 0.32s cubic-bezier(0.4, 0, 0.2, 1);
}

    .nav-group-header[b-7l5iijef0n]::after {
        content: "›";
        margin-left: auto;
        font-size: 1rem;
        font-weight: 300;
        opacity: 0.5;
        transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s ease;
        transform: rotate(90deg);
    }

/* Seta vira quando fechado */
.nav-group:not(.open) .nav-group-header[b-7l5iijef0n]::after {
    transform: rotate(0deg);
}

/* Início não é dentro de <details>, não precisa de seta */
nav > .nav-group-header[b-7l5iijef0n]::after {
    display: none;
}

.nav-group-items[b-7l5iijef0n] {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.28s ease;
}

.nav-group.open .nav-group-items[b-7l5iijef0n] {
    max-height: 600px;
    padding-bottom: 0.5rem;
}

/* Subitens */
.nav-subitem[b-7l5iijef0n] {
    padding-bottom: 0.1rem;
}

    .nav-subitem[b-7l5iijef0n]  .nav-link {
        font-size: 0.875rem;
        height: 2.4rem;
        color: rgba(255,255,255,0.65);
        transition: color 0.25s, background-color 0.25s, border-color 0.25s;
    }

    .nav-subitem[b-7l5iijef0n]  a.active {
        background-color: rgba(255,255,255,0.1);
        color: white;        
        border-left-color: rgba(0, 140, 255, 0.8);
    }

    .nav-subitem[b-7l5iijef0n]  .nav-link:hover {
        background-color: rgba(255,255,255,0.06);
        color: rgba(255,255,255,0.9);
        width: 100%;
    }

/* Transição suave dos textos no colapso/expansão do sidebar */
.nav-group-text[b-7l5iijef0n],
.nav-item-text[b-7l5iijef0n] {
    margin-top: 0.12rem;
    overflow: hidden;
    white-space: nowrap;
    max-width: 200px;
    transition: max-width 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
}

.brand-sg[b-7l5iijef0n] {
    overflow: hidden;
    max-width: 160px;
    transition: max-width 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
}

.brand-logo-full[b-7l5iijef0n] {
    display: block;
    height: 100px;
    width: auto;
    object-fit: contain;
}

.brand-icon[b-7l5iijef0n] {
    display: block;
    max-width: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-width 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
}

.brand-logo-icon[b-7l5iijef0n] {
    height: 33px;
    width: auto;
    object-fit: contain;
}

/* Seção de usuário mobile */
.nav-mobile-user[b-7l5iijef0n] {
    display: none;
}

.nav-mobile-user-divider[b-7l5iijef0n] {
    height: 1px;
    background-color: rgba(255,255,255,0.15);
    margin: 0.5rem 1.5rem;
}

.nav-mobile-user-info[b-7l5iijef0n] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.5rem 1.5rem 0.25rem;
}

.nav-mobile-avatar[b-7l5iijef0n] {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background-color: rgba(255,255,255,0.2);
    color: white;
    font-size: 0.75rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    letter-spacing: 0.03em;
}

.nav-mobile-name[b-7l5iijef0n] {
    font-size: 0.875rem;
    font-weight: 500;
    color: rgba(255,255,255,0.85);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.nav-mobile-logout-form[b-7l5iijef0n] {
    display: contents;
}

.nav-mobile-logout-btn[b-7l5iijef0n] {
    color: rgba(255,180,180,0.9) !important;
    background: none;
    border: none;
    width: 100%;
    text-align: left;
}

    .nav-mobile-logout-btn:hover[b-7l5iijef0n] {
        color: #ffaaaa !important;
    }

@media (max-width: 640.98px) {
    .nav-mobile-user[b-7l5iijef0n] {
        display: block;
        padding-bottom: 0.5rem;
    }
}

/* Scrollable */
.nav-scrollable[b-7l5iijef0n] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-7l5iijef0n] {
    display: block;
}


@media (min-width: 641px) {
    .navbar-toggler[b-7l5iijef0n] {
        display: none;
    }

    .nav-scrollable[b-7l5iijef0n] {
        display: block;
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
        scrollbar-width: thin;
        scrollbar-color: rgba(255,255,255,0.15) transparent;
    }

        .nav-scrollable:hover[b-7l5iijef0n] {
            scrollbar-color: rgba(255,255,255,0.3) transparent;
        }

        /* Webkit (Chrome, Edge, Safari) */
        .nav-scrollable[b-7l5iijef0n]::-webkit-scrollbar {
            width: 4px;
        }

        .nav-scrollable[b-7l5iijef0n]::-webkit-scrollbar-track {
            background: transparent;
        }

        .nav-scrollable[b-7l5iijef0n]::-webkit-scrollbar-thumb {
            background-color: rgba(255,255,255,0.15);
            border-radius: 4px;
        }

        .nav-scrollable:hover[b-7l5iijef0n]::-webkit-scrollbar-thumb {
            background-color: rgba(255,255,255,0.3);
        }
}
/* /Components/Layout/RelatorioLayout.razor.rz.scp.css */
/* ── Página ──────────────────────────────────────────── */

.relatorio-page[b-usfi67wh7u] {
    max-width: 1400px;
}

/* ── Cabeçalho ───────────────────────────────────────── */

.relatorio-header[b-usfi67wh7u] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.25rem;
}

.relatorio-titulo-h[b-usfi67wh7u] {
    margin: 0;
    line-height: 1.2;
}

.relatorio-header-acoes[b-usfi67wh7u] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

/* ── Botão e dropdown de download ────────────────────── */

.relatorio-download-wrapper[b-usfi67wh7u] {
    position: relative;
}

.btn-relatorio-download[b-usfi67wh7u] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.1rem;
    height: 2.1rem;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    background: white;
    color: #374151;
    font-size: 0.95rem;
    cursor: pointer;
    transition: all 0.15s;
}

    .btn-relatorio-download:hover[b-usfi67wh7u] {
        border-color: var(--sg-primary, #2852A3);
        background: var(--sg-primary);
        color: white;
    }

.relatorio-download-dropdown[b-usfi67wh7u] {
    position: absolute;
    top: calc(100% + 0.4rem);
    right: 0;
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    min-width: 130px;
    z-index: 1000;
    padding: 0.3rem 0;
}

.relatorio-download-item[b-usfi67wh7u] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.45rem 1rem;
    background: none;
    border: none;
    font-size: 0.85rem;
    color: #374151;
    cursor: pointer;
    text-align: left;
    transition: background 0.12s;
}

.relatorio-download-item:hover[b-usfi67wh7u] {
    background: #f5f7ff;
    color: var(--sg-primary, #2852A3);
}

/* ── Botão e dropdown de colunas ─────────────────────── */

.relatorio-colunas-wrapper[b-usfi67wh7u] {
    position: relative;
}

.btn-relatorio-colunas[b-usfi67wh7u] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.1rem;
    height: 2.1rem;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    background: white;
    color: #374151;
    font-size: 0.95rem;
    cursor: pointer;
    transition: all 0.15s;
}

    .btn-relatorio-colunas:hover[b-usfi67wh7u],
    .btn-relatorio-colunas.active[b-usfi67wh7u] {
        border-color: var(--sg-primary, #2852A3);
        background: var(--sg-primary);
        color: white;
    }

.relatorio-colunas-dropdown[b-usfi67wh7u] {
    position: absolute;
    top: calc(100% + 0.4rem);
    right: 0;
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    min-width: 225px;
    z-index: 1000;
    padding: 0.4rem 0;
}

.relatorio-colunas-header[b-usfi67wh7u] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.3rem 0.9rem;
    font-size: 0.72rem;
    font-weight: 600;
    color: #6b7280;
    border-bottom: 1px solid #f3f4f6;
    margin-bottom: 0.2rem;
}

.relatorio-colunas-acoes[b-usfi67wh7u] {
    display: flex;
    gap: 0.3rem;
    align-items: center;
    font-weight: 400;
}

.relatorio-colunas-link[b-usfi67wh7u] {
    cursor: pointer;
    color: var(--sg-primary, #2852A3);
}

    .relatorio-colunas-link:hover[b-usfi67wh7u] {
        text-decoration: underline;
    }

.relatorio-coluna-item[b-usfi67wh7u] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.28rem 0.9rem;
    font-size: 0.82rem;
    cursor: pointer;
    user-select: none;
    color: #374151;
    transition: background 0.1s;
    margin: 0;
}

    .relatorio-coluna-item:hover[b-usfi67wh7u] {
        background: #f5f7ff;
    }

    .relatorio-coluna-item input[type=checkbox][b-usfi67wh7u] {
        width: 14px;
        height: 14px;
        cursor: pointer;
        accent-color: var(--sg-primary, #2852A3);
        flex-shrink: 0;
    }

.relatorio-colunas-footer[b-usfi67wh7u] {
    display: flex;
    justify-content: flex-end;
    gap: 0.4rem;
    padding: 0.4rem 0.7rem 0.35rem;
    border-top: 1px solid #f3f4f6;
    margin-top: 0.2rem;
}

.relatorio-colunas-btn-aplicar[b-usfi67wh7u] {
    padding: 0.22rem 0.8rem;
    font-size: 0.78rem;
    background: var(--sg-primary, #2852A3);
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: filter 0.12s;
}

    .relatorio-colunas-btn-aplicar:hover[b-usfi67wh7u] {
        filter: brightness(0.9);
    }

.relatorio-colunas-btn-cancelar[b-usfi67wh7u] {
    padding: 0.22rem 0.8rem;
    font-size: 0.78rem;
    background: transparent;
    color: #6b7280;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    cursor: pointer;
    transition: background 0.12s;
}

    .relatorio-colunas-btn-cancelar:hover[b-usfi67wh7u] {
        background: #f5f5f5;
    }

/* ── Barra de filtros ────────────────────────────────── */

[b-usfi67wh7u] .relatorio-filtros {
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 0.65rem;
    padding: 0.65rem 0.65rem 0.65rem 1rem;
}

[b-usfi67wh7u] .relatorio-filtros > [class*="col-"] {
    flex-shrink: 0;
    min-width: 80px;
}

[b-usfi67wh7u] .filtro-campo-buscar {
    display: flex;
    align-items: flex-end;
}


[b-usfi67wh7u] .btn-relatorio-buscar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: calc(2.25rem + 2px);
    height: calc(2.05rem + 2px);
    border: 1px solid #dee2e6;
    border-radius: 6px;
    background: white;
    color: #374151;
    cursor: pointer;
    font-size: 0.9rem;
    transition: all 0.15s;
}

    [b-usfi67wh7u] .btn-relatorio-buscar:hover {
        border-color: var(--sg-primary, #2852A3);
        color: var(--sg-primary, #2852A3);
        background: #eff3fb;
    }

/* ── Resumo ──────────────────────────────────────── */

[b-usfi67wh7u] .relatorio-resumo {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.8rem;
    padding: 0.5rem 1rem;
    font-size: 0.72rem;
    background: var(--bg-card, #fff);
    border-bottom: 1px solid var(--border-color, #e5e7eb);
}

[b-usfi67wh7u] .relatorio-sep {
    color: #9ca3af;
}
/* /Components/Modules/Cadastros/Contrato/CadastroContrato.razor.rz.scp.css */
/* ── Lista de serviços adicionados ── */

.servico-list[b-i5xiw49wzh] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.servico-card[b-i5xiw49wzh] {
    border: 1px solid #e2e8f0;
    border-radius: 0.5rem;
    background: #fff;
}

/* Cabeçalho do card */
.servico-card-header[b-i5xiw49wzh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding: 0.65rem 1rem;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
    border-radius: 0.5rem 0.5rem 0 0;
}

.servico-card-title[b-i5xiw49wzh] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--sg-primary-dark, #1a3a5c);
    display: flex;
    align-items: center;
}

.servico-card-meta[b-i5xiw49wzh] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.4rem;
}

/* Badges de resumo no cabeçalho */
.servico-badge[b-i5xiw49wzh] {
    display: inline-flex;
    align-items: center;
    font-size: 0.78rem;
    padding: 0.2rem 0.6rem;
    border-radius: 50px;
    background: #e8edf8;
    color: var(--sg-primary-dark, #1a3a5c);
    white-space: nowrap;
}

.servico-badge-valor[b-i5xiw49wzh] {
    background: #eaf4fb;
    color: #1a6a9a;
}

.servico-badge-total[b-i5xiw49wzh] {
    background: #e6f4ee;
    color: #1a6a3a;
    font-weight: 600;
}

/* Corpo do card */
.servico-card-body[b-i5xiw49wzh] {
    padding: 1rem;
}

/* Tabela de placas */
.servico-table[b-i5xiw49wzh] {
    font-size: 0.875rem;
    border-radius: 0.375rem;
    overflow: hidden;
    border: 1px solid #e9ecef;
    margin-top: 0.25rem;
    width: 45.5%;
}

    .servico-table thead tr[b-i5xiw49wzh] {
        background: var(--sg-primary);
    }

.servico-table thead th[b-i5xiw49wzh] {
    font-size: 0.78rem;
    font-weight: 600;
    color: white;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    padding: 0.5rem 0.75rem;
    border-bottom: 1px solid #e2e8f0;
}

.servico-table tbody td[b-i5xiw49wzh] {
    padding: 0.45rem 0.75rem;
    vertical-align: middle;
    border-color: #f1f5f9;
}

.servico-table tbody tr:last-child td[b-i5xiw49wzh] {
    border-bottom: none;
}

/* Rodapé com total */
.servico-table-total td[b-i5xiw49wzh] {
    padding: 0.5rem 0.75rem;
    background: #edf4fa;
    border-top: 2px solid #e2e8f0 !important;
    font-size: 0.875rem;
}

/* /Components/Modules/Cadastros/Perfil/CadastroPerfil.razor.rz.scp.css */
/* ── Árvore de permissões ── */

.perm-secao[b-glwykad94p] {
    transition: background 0.15s;
}

.perm-secao--border[b-glwykad94p] {
    border-bottom: 1px solid #f0f2f5;
}

/* Linha genérica (seção ou sub-item) */
.perm-row[b-glwykad94p] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.55rem 1.25rem;
    cursor: default;
    transition: background 0.15s;
}

    .perm-row:hover[b-glwykad94p] {
        background: var(--sg-background);
    }

/* Sub-itens — fundo levemente diferente e indentação */
.perm-row--sub[b-glwykad94p] {
    padding-left: 3rem;
    background: var(--sg-background);
}

    .perm-row--sub:hover[b-glwykad94p] {
        background: #e6eafc;
    }

/* Botão [+] / [−] */
.perm-toggle[b-glwykad94p] {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    border: 1px solid #d0d7e3;
    border-radius: 4px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 0.7rem;
    color: var(--sg-primary);
    padding: 0;
    transition: background 0.15s, border-color 0.15s;
    line-height: 1;
}

.perm-toggle:hover:not(:disabled)[b-glwykad94p] {
    background: #e8edf8;
    border-color: var(--sg-primary);
}

.perm-toggle:disabled[b-glwykad94p] {
    cursor: default;
}

/* Versão "fantasma" — ocupa espaço para alinhar itens sem toggle */
.perm-toggle--ghost[b-glwykad94p] {
    background: transparent;
    border-color: transparent;
    pointer-events: none;
}

/* Checkbox */
.perm-check[b-glwykad94p] {
    flex-shrink: 0;
    cursor: pointer;
    width: 1rem;
    height: 1rem;
}

/* Nome do item */
.perm-nome[b-glwykad94p] {
    font-size: 0.875rem;
    color: #374151;
    user-select: none;
}

.perm-nome--secao[b-glwykad94p] {
    font-weight: 600;
    color: var(--sg-primary-dark);
}

/* Área dos sub-itens */
.perm-subitens[b-glwykad94p] {
    border-top: 1px solid #f0f2f5;
}
/* /Components/Modules/Cadastros/Prospeccao/CadastroProspeccao.razor.rz.scp.css */
/* ── Header da seção de histórico ─────────────────────────────── */
.prosp-hist-header[b-mdr1fvigxo] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* ── Linha do tempo ────────────────────────────────────────────── */
.prosp-timeline[b-mdr1fvigxo] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.prosp-timeline-item[b-mdr1fvigxo] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.85rem 0;
    border-bottom: 1px solid #f1f3f5;
    position: relative;
}

.prosp-timeline-item:last-child[b-mdr1fvigxo] {
    border-bottom: none;
}

.prosp-tl-dot[b-mdr1fvigxo] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #adb5bd;
    margin-top: 1rem;
    flex-shrink: 0;
}

/* Ícone circular */
.prosp-tl-icon[b-mdr1fvigxo] {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 1rem;
    color: #fff;
}

.prosp-icon-atendida[b-mdr1fvigxo]     { background: #0d6efd; }
.prosp-icon-nao-atendida[b-mdr1fvigxo] { background: #6c757d; }
.prosp-icon-whatsapp[b-mdr1fvigxo]     { background: #25d366; }
.prosp-icon-reuniao[b-mdr1fvigxo]      { background: #6f42c1; }
.prosp-icon-proposta[b-mdr1fvigxo]     { background: #f5bf1d; }
.prosp-icon-interesse[b-mdr1fvigxo]    { background: #dc3545; }

/* Corpo central */
.prosp-tl-body[b-mdr1fvigxo] {
    flex: 1;
    min-width: 0;
}

.prosp-tl-meta[b-mdr1fvigxo] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-bottom: 0.2rem;
}

.prosp-tl-date[b-mdr1fvigxo] {
    font-weight: 600;
    font-size: 0.82rem;
}

.prosp-tl-user[b-mdr1fvigxo] {
    font-size: 0.82rem;
    color: #6c757d;
}

/* Badge */
.prosp-tl-badge[b-mdr1fvigxo] {
    margin-left: auto;
    padding: 0.15rem 0.55rem;
    border-radius: 4px;
    font-size: 0.72rem;
    font-weight: 600;
}

.prosp-badge-proxima[b-mdr1fvigxo]  { background: #fff3cd; color: #856404; }
.prosp-badge-concluida[b-mdr1fvigxo] { background: #e9ecef; color: #6c757d; }

.prosp-tl-title[b-mdr1fvigxo] {
    font-weight: 600;
    font-size: 0.88rem;
    margin-bottom: 0.15rem;
}

.prosp-tl-obs[b-mdr1fvigxo] {
    font-size: 0.8rem;
    color: #495057;
}

/* Botões Editar / Excluir na interação */
.prosp-tl-actions[b-mdr1fvigxo] {
    display: flex;
    justify-content: flex-end;
    gap: 1rem;
    margin-top: auto;
    padding-top: 0.5rem;
}

.text-decoration-underline[b-mdr1fvigxo] {
    font-size: 0.8rem !important;
}

/* Coluna lateral (próxima ação / retorno + ações) */
.prosp-tl-aside[b-mdr1fvigxo] {
    display: flex;
    flex-direction: column;
    font-size: 0.78rem;
    color: #6c757d;
    text-align: right;
    flex-shrink: 0;
    min-width: 190px;
    padding-top: 0.15rem;
}

.prosp-tl-aside div[b-mdr1fvigxo] { margin-bottom: 0.1rem; }

.prosp-tl-aside-label[b-mdr1fvigxo] {
    color: #495057;
    font-weight: 500;
}

/* Botão "Carregar mais" */
.prosp-load-more[b-mdr1fvigxo] {
    width: 100%;
    margin-top: 0.75rem;
    border: 1px solid #dee2e6;
    background: #fff;
    color: #495057;
    font-size: 0.85rem;
    padding: 0.5rem;
    border-radius: 6px;
}

.prosp-load-more:hover[b-mdr1fvigxo] { background: #f8f9fa; }

/* Formulário de primeiro contato (modo novo) */
.prosp-interacao-form[b-mdr1fvigxo] {
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 0.5rem;
    padding: 1rem;
}

/* ── Resumo do Lead ────────────────────────────────────────────── */
.prosp-resumo-row[b-mdr1fvigxo] {
    display: flex;
    align-items: center;
    padding: 0.5rem 0;
    border-bottom: 1px solid #f1f3f5;
    font-size: 0.875rem;
}

.prosp-resumo-row:last-child[b-mdr1fvigxo] { border-bottom: none; }

.prosp-resumo-label[b-mdr1fvigxo] {
    width: 170px;
    flex-shrink: 0;
    color: #6c757d;
}

.prosp-resumo-value[b-mdr1fvigxo] { font-weight: 500; }

.prosp-resumo-badge[b-mdr1fvigxo] {
    display: inline-block;
    padding: 0.15rem 0.7rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
}

.prosp-resumo-badge-ativo[b-mdr1fvigxo]   { background: #e7f1ff; color: #0d6efd; }
.prosp-resumo-badge-inativo[b-mdr1fvigxo] { background: #e9ecef; color: #6c757d; }

/* ── Funil comercial ───────────────────────────────────────────── */
.prosp-funil[b-mdr1fvigxo] {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    margin: 1rem 0 1.5rem;
    overflow-x: auto;
    padding-bottom: 0.25rem;
    padding-top: 0.3rem;
    isolation: isolate;
}

.prosp-funil-step[b-mdr1fvigxo] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    position: relative;
    min-width: 68px;
}

/* Linha conectora à esquerda de cada step */
.prosp-funil-step[b-mdr1fvigxo]::before {
    content: "";
    position: absolute;
    top: 18px;
    right: 50%;
    left: -50%;
    height: 2px;
    background: #dee2e6;
    z-index: 0;
}

.prosp-funil-step:first-child[b-mdr1fvigxo]::before { display: none; }

.prosp-funil-step--done[b-mdr1fvigxo]::before,
.prosp-funil-step--active[b-mdr1fvigxo]::before { background: #0d6efd; }

/* Círculo */
.prosp-funil-circle[b-mdr1fvigxo] {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.88rem;
    position: relative;
    z-index: 1;
    border: 2px solid #dee2e6;
    background: #fff;
    color: #adb5bd;
    transition: box-shadow 0.15s;
}

.prosp-funil-step--done .prosp-funil-circle[b-mdr1fvigxo] {
    background: #0d6efd;
    border-color: #0d6efd;
    color: #fff;
}

.prosp-funil-step--active .prosp-funil-circle[b-mdr1fvigxo] {
    background: #0d6efd;
    border-color: #0d6efd;
    color: #fff;
    box-shadow: 0 0 0 4px rgba(13, 110, 253, 0.18);
}

/* Rótulo */
.prosp-funil-label[b-mdr1fvigxo] {
    font-size: 0.7rem;
    text-align: center;
    margin-top: 0.45rem;
    color: #6c757d;
    line-height: 1.25;
    max-width: 78px;
}

.prosp-funil-step--done .prosp-funil-label[b-mdr1fvigxo]   { color: #0d6efd; }
.prosp-funil-step--active .prosp-funil-label[b-mdr1fvigxo] { color: #0d6efd; font-weight: 600; }

.prosp-funil-step--ganho .prosp-funil-circle[b-mdr1fvigxo] {
    background: #198754;
    border-color: #198754;
    color: #fff;
}
.prosp-funil-step--ganho[b-mdr1fvigxo]::before { background: #0d6efd; }
.prosp-funil-step--ganho .prosp-funil-label[b-mdr1fvigxo] { color: #198754; font-weight: 600; }

.prosp-funil-step--perdido .prosp-funil-circle[b-mdr1fvigxo] {
    background: #dc3545;
    border-color: #dc3545;
    color: #fff;
}
.prosp-funil-step--perdido[b-mdr1fvigxo]::before { background: #0d6efd; }
.prosp-funil-step--perdido .prosp-funil-label[b-mdr1fvigxo] { color: #dc3545; font-weight: 600; }

.prosp-funil-step--conclusao .prosp-funil-circle[b-mdr1fvigxo] {
    border-style: dashed;
    border-color: #ced4da;
    color: #ced4da;
}
.prosp-funil-step--conclusao .prosp-funil-label[b-mdr1fvigxo] { color: #ced4da; }

/* ── Serviços de interesse ─────────────────────────────────────── */
.prosp-servico-input-row[b-mdr1fvigxo] {
    display: flex;
    gap: 0.35rem;
    align-items: flex-end;
}

.prosp-servico-select-wrap[b-mdr1fvigxo] {
    flex: 1;
    min-width: 0;
}

.prosp-servicos-selecionados[b-mdr1fvigxo] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
    margin-top: 0.75rem;
    padding: 0.5rem 0.75rem;
    background: #f8f9fa;
    border-radius: 0.375rem;
}

.prosp-servicos-label[b-mdr1fvigxo] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #6c757d;
    margin-right: 0.15rem;
    white-space: nowrap;
}

.prosp-chip[b-mdr1fvigxo] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    background: #e7f1ff;
    color: #0d6efd;
    border-radius: 999px;
    padding: 0.2rem 0.6rem 0.2rem 0.75rem;
    font-size: 0.78rem;
    font-weight: 500;
}

.prosp-chip-remove[b-mdr1fvigxo] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    padding: 0;
    color: inherit;
    opacity: 0.6;
    cursor: pointer;
    font-size: 0.65rem;
    line-height: 1;
}

.prosp-chip-remove:hover[b-mdr1fvigxo] { opacity: 1; }

/* ── Upload de proposta ────────────────────────────────────────── */
.prosp-proposta-drop[b-mdr1fvigxo] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    width: 100%;
    padding: 2rem 1rem;
    border: 2px dashed #dee2e6;
    border-radius: 0.5rem;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
    text-align: center;
}

.prosp-proposta-drop:hover[b-mdr1fvigxo] {
    border-color: #0d6efd;
    background: #f0f6ff;
}

/* ── Modal ─────────────────────────────────────────────────────── */
.prosp-modal-overlay[b-mdr1fvigxo] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    z-index: 1060;
    display: flex;
    align-items: center;
    justify-content: center;
}

.prosp-modal[b-mdr1fvigxo] {
    background: #fff;
    border-radius: 0.6rem;
    width: 580px;
    max-width: 95vw;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.22);
    display: flex;
    flex-direction: column;
}

.prosp-modal-sm[b-mdr1fvigxo] {
    width: 420px;
}

.prosp-modal-header[b-mdr1fvigxo] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #dee2e6;
}

.prosp-modal-body[b-mdr1fvigxo] {
    padding: 1.25rem;
    flex: 1;
}

.prosp-modal-footer[b-mdr1fvigxo] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
    padding: 0.85rem 1.25rem;
    border-top: 1px solid #dee2e6;
}

.ssm-add-btn[b-mdr1fvigxo] {
    width: 35px;
    height: 35px;
}

.serv-interesse[b-mdr1fvigxo] {
    padding-top: 15px;
}
/* /Components/Modules/Cadastros/Prospeccao/ProspeccaoIndex.razor.rz.scp.css */
.prosp-estagio[b-k6f01cbd69] {
    display: inline-block;
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.prosp-estagio-novo[b-k6f01cbd69] {
    background: #e9ecef;
    color: #495057;
}

.prosp-estagio-andamento[b-k6f01cbd69] {
    background: #cce5ff;
    color: #004085;
}

.prosp-estagio-quente[b-k6f01cbd69] {
    background: #fff3cd;
    color: #856404;
}

.prosp-estagio-ganho[b-k6f01cbd69] {
    background: #d4edda;
    color: #155724;
}

.prosp-estagio-perdido[b-k6f01cbd69] {
    background: #f8d7da;
    color: #721c24;
}
/* /Components/Modules/Cadastros/Veiculo/VeiculoIndex.razor.rz.scp.css */
.btn-vincular[b-sbwoazcye1] {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    padding: 0.15rem 0.45rem;
    border-radius: 20px;
    border: none;
    background-color: #dce8f8;
    color: var(--sg-primary);
    font-size: 0.75rem;
    font-weight: 500;
    cursor: pointer;
    white-space: nowrap;
    transition: background-color var(--sg-transition), color var(--sg-transition);
}

.btn-vincular:hover[b-sbwoazcye1] {
    background-color: var(--sg-primary);
    color: #fff;
}

th.col-vincular[b-sbwoazcye1],
td.col-vincular[b-sbwoazcye1] {
    width: 1%;
    white-space: nowrap;
}
/* /Components/Modules/Cameras/AoVivo.razor.rz.scp.css */
/* ── Grid de câmeras ─────────────────────────────────── */

.av-grid[b-i1xlcid4y4] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
}

@media (max-width: 576px) {
    .av-grid[b-i1xlcid4y4] { grid-template-columns: 1fr; }
}

/* ── Container de câmera ─────────────────────────────── */

.av-camera[b-i1xlcid4y4] {
    border: 1px solid #dee2e6;
    border-radius: 6px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 1px 4px rgba(0,0,0,.06);
}

.av-camera-feed[b-i1xlcid4y4] {
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #1a1a1a;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.av-camera-icon[b-i1xlcid4y4] {
    font-size: 3rem;
    color: rgba(255,255,255,.15);
}

/* ── Badge AO VIVO ───────────────────────────────────── */

.av-badge-live[b-i1xlcid4y4] {
    position: absolute;
    top: .6rem;
    left: .6rem;
    background: #dc2626;
    color: #fff;
    font-size: .65rem;
    font-weight: 700;
    letter-spacing: .08em;
    padding: .15rem .45rem;
    border-radius: 3px;
    animation: av-pulse-b-i1xlcid4y4 1.6s ease-in-out infinite;
}

@keyframes av-pulse-b-i1xlcid4y4 {
    0%, 100% { opacity: 1;   }
    50%       { opacity: .4;  }
}

/* ── Badge canal ─────────────────────────────────────── */

.av-badge-canal[b-i1xlcid4y4] {
    position: absolute;
    top: .6rem;
    right: .6rem;
    background: rgba(0,0,0,.55);
    color: #e5e7eb;
    font-size: .7rem;
    font-weight: 600;
    padding: .15rem .45rem;
    border-radius: 3px;
}

/* ── Rodapé do container ─────────────────────────────── */

.av-camera-footer[b-i1xlcid4y4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .5rem .75rem;
    font-size: .82rem;
    color: #374151;
}

.av-camera-placa[b-i1xlcid4y4] {
    font-weight: 600;
}

.av-camera-equip[b-i1xlcid4y4] {
    color: #6b7280;
    font-size: .78rem;
}
/* /Components/Modules/Cameras/RelEvidencia.razor.rz.scp.css */
/* ── Filtros ─────────────────────────────────────────── */

.ev-placa-row[b-lb7ufk7frk] {
    display: flex;
    gap: 0.35rem;
    align-items: flex-end;
}

.ev-placa-select[b-lb7ufk7frk] {
    flex: 1;
    min-width: 0;
}

.ev-add-btn[b-lb7ufk7frk] {
    width: calc(2.375rem + 2px);
    height: calc(2.1rem + 2px);
    flex-shrink: 0;
}

.ev-check-wrap[b-lb7ufk7frk] {
    display: flex;
    align-items: center;
    height: calc(2.03rem + 2px);
    margin-right: 0.7rem;
}

/* ── Placas selecionadas ─────────────────────────────── */

.ev-placas-selecionadas[b-lb7ufk7frk] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 1rem;
}

.ev-placas-label[b-lb7ufk7frk] {
    font-size: .8rem;
    font-weight: 600;
    color: #6b7280;
}

.ev-placa-tag[b-lb7ufk7frk] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: .15rem .5rem;
    border-radius: 999px;
    background: #e0e7ff;
    color: #3730a3;
    font-size: .78rem;
    font-weight: 500;
    white-space: nowrap;
}

.ev-placa-tag-remove[b-lb7ufk7frk] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: inherit;
    opacity: 0.6;
    font-size: .75rem;
    transition: opacity 0.15s;
}

.ev-placa-tag-remove:hover[b-lb7ufk7frk] {
    opacity: 1;
}

/* ── Resumo ──────────────────────────────────────────── */

.ev-resumo[b-lb7ufk7frk] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.25rem;
    padding: 0.65rem 1rem;
    font-size: .85rem;
    color: #374151;
}

.ev-num[b-lb7ufk7frk] {
    color: var(--sg-primary, #2852A3);
    font-weight: 600;
}

/* ── Grid de cards ───────────────────────────────────── */

.ev-grid[b-lb7ufk7frk] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}

@media (max-width: 992px) {
    .ev-grid[b-lb7ufk7frk] { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 576px) {
    .ev-grid[b-lb7ufk7frk] { grid-template-columns: 1fr; }
}

/* ── Card ────────────────────────────────────────────── */

.ev-card[b-lb7ufk7frk] {
    border: 1px solid #dee2e6;
    border-radius: 6px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 1px 4px rgba(0,0,0,.06);
    cursor: pointer;
    transition: box-shadow .15s;
}

.ev-card:hover[b-lb7ufk7frk] {
    box-shadow: 0 4px 14px rgba(0,0,0,.13);
}

.ev-card-img[b-lb7ufk7frk] {
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #2b2b2b;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ev-card-img-icon[b-lb7ufk7frk] {
    font-size: 2.5rem;
    color: rgba(255,255,255,.25);
}

.ev-card-body[b-lb7ufk7frk] {
    padding: .65rem .75rem;
}

.ev-card-row[b-lb7ufk7frk] {
    margin: 0 0 .2rem;
    font-size: .82rem;
    color: #374151;
}

.ev-card-row:last-child[b-lb7ufk7frk] {
    margin-bottom: 0;
}

.ev-card-label[b-lb7ufk7frk] {
    color: #6b7280;
}

.ev-card-evento[b-lb7ufk7frk] {
    color: var(--sg-primary, #2852A3);
}

.form-check-input[b-lb7ufk7frk] {
    margin-top: 0 !important;
}

/* ── Modal de detalhes ───────────────────────────────── */

.ev-modal-backdrop[b-lb7ufk7frk] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.45);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
}

.ev-modal[b-lb7ufk7frk] {
    background: #fff;
    border-radius: 8px;
    width: 90%;
    max-width: 720px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 8px 32px rgba(0,0,0,.2);
}

.ev-modal-header[b-lb7ufk7frk] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .75rem 1rem;
    border-bottom: 1px solid #dee2e6;
    flex-shrink: 0;
}

.ev-modal-titulo[b-lb7ufk7frk] {
    font-weight: 700;
    font-size: .9rem;
    color: #374151;
    letter-spacing: .04em;
}

.ev-modal-body[b-lb7ufk7frk] {
    overflow-y: auto;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.ev-modal-info[b-lb7ufk7frk] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .3rem .75rem;
    font-size: .85rem;
    color: #374151;
}

.ev-modal-info-item[b-lb7ufk7frk] {
    min-width: 0;
}

.ev-modal-label[b-lb7ufk7frk] {
    color: #6b7280;
    font-weight: 500;
    margin-right: .2rem;
}

.ev-modal-just-form[b-lb7ufk7frk] {
    display: flex;
    flex-direction: column;
    gap: .5rem;
    padding: .75rem;
    background: #f8f9fa;
    border-radius: 6px;
    border: 1px solid #dee2e6;
}

.ev-modal-just-footer[b-lb7ufk7frk] {
    display: flex;
    justify-content: flex-end;
    gap: .5rem;
}

.ev-modal-gallery[b-lb7ufk7frk] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: .75rem;
}

.ev-modal-media-item[b-lb7ufk7frk] {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: 4px;
    background: #2b2b2b;
    display: block;
}

.ev-modal-footer[b-lb7ufk7frk] {
    padding: .65rem 1rem;
    border-top: 1px solid #dee2e6;
    display: flex;
    justify-content: flex-end;
    gap: .5rem;
    flex-shrink: 0;
}
/* /Components/Modules/Cameras/RelFadiga.razor.rz.scp.css */
/* Table font size */

[b-kjjf1g1g0k] .list-table tbody td {
    font-size: 0.7rem;
}
[b-kjjf1g1g0k] .list-table thead th {
    font-size: 0.69rem;
}

/* Fatigue level badges */
.fa-nivel[b-kjjf1g1g0k] {
    display: inline-block;
    padding: .15rem .55rem;
    border-radius: 4px;
    font-size: .75rem;
    font-weight: 700;
    white-space: nowrap;
}

.fa-nivel-alto[b-kjjf1g1g0k]  { background: #f8d7da; color: #842029; }
.fa-nivel-médio[b-kjjf1g1g0k] { background: #fff3cd; color: #856404; }
.fa-nivel-baixo[b-kjjf1g1g0k] { background: #d4edda; color: #155724; }

/* Justify button */
.fa-btn-justificar[b-kjjf1g1g0k] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: .375rem;
    border: 1px solid var(--sg-primary, #2852A3);
    background: transparent;
    color: var(--sg-primary, #2852A3);
    font-size: .8125rem;
    cursor: pointer;
    transition: background .15s, color .15s;
}

.fa-btn-justificar:hover[b-kjjf1g1g0k] {
    background: var(--sg-primary, #2852A3);
    color: #fff;
}

/* Justification modal */
.fa-modal-backdrop[b-kjjf1g1g0k] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.45);
    z-index: 1050;
    display: flex;
    align-items: center;
    justify-content: center;
}

.fa-modal[b-kjjf1g1g0k] {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 8px 32px rgba(0,0,0,.18);
    width: 100%;
    max-width: 480px;
    overflow: hidden;
}

.fa-modal-header[b-kjjf1g1g0k] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .75rem 1rem;
    border-bottom: 1px solid #dee2e6;
}

.fa-modal-title[b-kjjf1g1g0k] {
    margin: 0;
    font-size: .95rem;
    font-weight: 600;
}

.fa-modal-info[b-kjjf1g1g0k] {
    padding: .5rem 1rem;
    background: #f8f9fa;
    font-size: .82rem;
    border-bottom: 1px solid #dee2e6;
}

.fa-modal-body[b-kjjf1g1g0k] {
    padding: 1rem;
}

.fa-modal-footer[b-kjjf1g1g0k] {
    display: flex;
    justify-content: flex-end;
    gap: .5rem;
    padding: .75rem 1rem;
    border-top: 1px solid #dee2e6;
}
/* /Components/Modules/Cameras/RelGravacoes.razor.rz.scp.css */
/* ── Ações ───────────────────────────────────────────── */

.gr-acoes[b-qvhoun4ec1] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
}

.gr-btn-acao[b-qvhoun4ec1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: .375rem;
    border: 1px solid var(--sg-primary, #2852A3);
    background: transparent;
    color: var(--sg-primary, #2852A3);
    font-size: .95rem;
    cursor: pointer;
    transition: background .15s, color .15s;
}

.gr-btn-acao:hover[b-qvhoun4ec1] {
    background: var(--sg-primary, #2852A3);
    color: #fff;
}

/* ── Player modal ────────────────────────────────────── */

.gr-player-backdrop[b-qvhoun4ec1] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.55);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
}

.gr-player-modal[b-qvhoun4ec1] {
    background: #1a1a1a;
    border-radius: 8px;
    width: 90%;
    max-width: 860px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 8px 32px rgba(0,0,0,.4);
    overflow: hidden;
}

.gr-player-header[b-qvhoun4ec1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .6rem 1rem;
    background: #111;
}

.gr-player-titulo[b-qvhoun4ec1] {
    font-size: .82rem;
    font-weight: 600;
    color: #e5e7eb;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.gr-player-header .btn-close[b-qvhoun4ec1] {
    filter: invert(1);
    flex-shrink: 0;
}

.gr-player-body[b-qvhoun4ec1] {
    background: #000;
    display: flex;
    align-items: center;
    justify-content: center;
}

.gr-player-video[b-qvhoun4ec1] {
    width: 100%;
    max-height: 72vh;
    display: block;
}
/* /Components/Modules/Cameras/RelTotalizador.razor.rz.scp.css */
/* ── Filtros dropdown ─────────────────────────────── */

.to-filtros-wrapper[b-f63qgx72ic] {
    position: relative;
}

.to-filtros-btn[b-f63qgx72ic] {
    text-align: left;
    cursor: pointer;
}

.to-filtros-placeholder[b-f63qgx72ic] {
    color: #9ca3af;
}

.to-filtros-overlay[b-f63qgx72ic] {
    position: fixed;
    inset: 0;
    z-index: 99;
}

.to-filtros-dropdown[b-f63qgx72ic] {
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    min-width: 220px;
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0,0,0,.10);
    z-index: 100;
    padding: .25rem 0;
}

.to-filtros-item[b-f63qgx72ic] {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .35rem .75rem;
    cursor: pointer;
    font-size: .82rem;
    user-select: none;
}

.to-filtros-item:hover[b-f63qgx72ic] {
    background: #f3f4f6;
}

/* ── Seleção de placa ─────────────────────────────── */

.ev-placa-row[b-f63qgx72ic] {
    display: flex;
    gap: 0.35rem;
    align-items: flex-end;
}

.ev-placa-select[b-f63qgx72ic] {
    flex: 1;
    min-width: 0;
}

.ev-add-btn[b-f63qgx72ic] {
    width: calc(2.375rem + 2px);
    height: calc(2.1rem + 2px);
    flex-shrink: 0;
}

/* ── Placas selecionadas ─────────────────────────────── */

.to-placas-selecionadas[b-f63qgx72ic] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .4rem;
    padding: .5rem 1rem;
}

.to-placas-label[b-f63qgx72ic] {
    font-size: .8rem;
    font-weight: 600;
    color: #6b7280;
}

.to-placa-tag[b-f63qgx72ic] {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    padding: .15rem .5rem;
    border-radius: 999px;
    background: #e0e7ff;
    color: #3730a3;
    font-size: .78rem;
    font-weight: 500;
    white-space: nowrap;
}

.to-placa-tag-remove[b-f63qgx72ic] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: inherit;
    opacity: 0.6;
    font-size: .75rem;
    transition: opacity 0.15s;
}

.to-placa-tag-remove:hover[b-f63qgx72ic] {
    opacity: 1;
}

/* ── Tabela ──────────────────────────────────────────── */

.to-table-wrapper[b-f63qgx72ic] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

[b-f63qgx72ic] .to-table-wrapper .list-table thead th,
[b-f63qgx72ic] .to-table-wrapper .list-table tbody td {
    font-size: 0.69rem;
    white-space: nowrap;
    padding: .25rem .4rem;
}

/* ── Contadores ──────────────────────────────────────── */

.to-count-nz[b-f63qgx72ic] {
    color: var(--sg-primary, #2852A3);
    font-weight: 600;
}

.to-count-z[b-f63qgx72ic] {
    color: #d1d5db;
}
/* /Components/Modules/CTeOS/CTeOS/CadastroCteos.razor.rz.scp.css */
/* ── Abas de tributação ─────────────────────────────── */

.trib-nav[b-iz9r6czc0v] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    padding: 0.875rem 1rem;
    background: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
}

.trib-tab-btn[b-iz9r6czc0v] {
    padding: 0.3rem 1.1rem;
    border-radius: 20px;
    border: 1px solid #dee2e6;
    background: #fff;
    color: #6c757d;
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
    line-height: 1.6;
}

    .trib-tab-btn:hover[b-iz9r6czc0v] {
        background: #e9ecef;
        color: var(--sg-primary-mid);
        border-color: var(--sg-primary-mid);
    }

    .trib-tab-btn.ativo[b-iz9r6czc0v] {
        background: var(--sg-primary-mid);
        color: #fff;
        border-color: var(--sg-primary-mid);
        box-shadow: 0 2px 6px rgba(0,0,0,0.12);
    }

.trib-content[b-iz9r6czc0v] {
    padding: 1.25rem;
}
/* /Components/Modules/CTeOS/CTeOS/CteosIndex.razor.rz.scp.css */
/* ── Tabela ────────────────────────────────────────── */

.cteos-table[b-v51yzig472] { table-layout: fixed; width: 100%; font-size: 0.7rem; }

    .cteos-table thead th[b-v51yzig472] {
        font-size: 0.7rem;
        text-align: left;
    }

.col-cod[b-v51yzig472]    { width: 6%; }
.col-num[b-v51yzig472]    { width: 6%; }
.col-nome[b-v51yzig472]   { width: 18%; white-space: normal; word-break: break-word; }
.col-doc[b-v51yzig472]    { width: 12%; white-space: nowrap; }
.col-valor[b-v51yzig472]  { width: 8%; white-space: nowrap; }
.col-prot[b-v51yzig472]   { width: 11%; }
.col-status[b-v51yzig472] { width: 9%;}
.col-acoes[b-v51yzig472]  { width: 9%; }

.badge-status[b-v51yzig472] {
    font-size: 0.77rem !important;
}

.list-table td[b-v51yzig472] {
    font-size: 0.75rem !important;
}

.prot-cell[b-v51yzig472] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ── Ações ─────────────────────────────────────────── */

.acoes-cteos[b-v51yzig472] {
    display: grid;
    grid-template-columns: repeat(2, 30px);
    gap: 0.25rem;
}

.btn-acao[b-v51yzig472] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    background: transparent;
    color: #6c757d;
    font-size: 0.875rem;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
    padding: 0;
}

    .btn-acao:hover[b-v51yzig472] {
        background: #f1f3f5;
        color: var(--sg-primary-mid);
        border-color: #adb5bd;
    }

.btn-acao-pdf:hover[b-v51yzig472] {
    background: #fff0f0;
    color: #e53935;
    border-color: #e53935;
}

.btn-acao-xml:hover[b-v51yzig472] {
    background: #e8f5e9;
    color: #2e7d32;
    border-color: #2e7d32;
}

.btn-acao-danger:hover[b-v51yzig472] {
    background: #fdecea;
    color: var(--sg-danger, #dc3545);
    border-color: var(--sg-danger, #dc3545);
}

/* ── Status ────────────────────────────────────────── */

.badge-status[b-v51yzig472] {
    display: inline-block;
    font-weight: 600;
    padding: 0.1em 0.95em;
    border-radius: 999px;
    border: none;
}

.badge-status-aprovado[b-v51yzig472] {
    background-color: #27a15f;
    color: #fff;
}

.badge-status-rejeitado[b-v51yzig472] {
    background-color: #d44848;
    color: #fff;
}
/* /Components/Modules/Financeiro/Boletos/BoletoIndex.razor.rz.scp.css */
.acoes-boleto[b-h9wgrj5xj5] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    align-items: center;
    max-width: 98px;
}

.btn-acao[b-h9wgrj5xj5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    background: transparent;
    color: #6c757d;
    font-size: 0.875rem;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
    padding: 0;
}

    .btn-acao:hover[b-h9wgrj5xj5] {
        background: #f1f3f5;
        color: var(--sg-primary-mid);
        border-color: #adb5bd;
    }

.btn-acao-whatsapp:hover[b-h9wgrj5xj5] {
    background: #e8f5e9;
    color: #25d366;
    border-color: #25d366;
}

.btn-acao-success:hover[b-h9wgrj5xj5] {
    background: #f0fdf4;
    color: #166534;
    border-color: #86efac;
}

.btn-acao-pdf:hover[b-h9wgrj5xj5] {
    background: #fff0f0;
    color: #e53935;
    border-color: #e53935;
}

.btn-acao-danger:hover[b-h9wgrj5xj5] {
    background: #fdecea;
    color: var(--sg-danger, #dc3545);
    border-color: var(--sg-danger, #dc3545);
}

.boleto-legenda[b-h9wgrj5xj5] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.55rem;
    font-size: 0.8rem;
    color: #6b7280;
    margin-bottom: 0.75rem;
}

.boleto-legenda-label[b-h9wgrj5xj5] {
    font-weight: 600;
    color: #4b5563;
    margin-right: 0.1rem;
}

.boleto-legenda-badge[b-h9wgrj5xj5] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    padding: 0;
    margin: 0;
    box-shadow: 0 0 0 1.5px rgba(0,0,0,0.18);
    flex-shrink: 0;
}

.descricao-col[b-h9wgrj5xj5] {
    max-width: 220px;
    white-space: normal;
    word-break: break-word;
}

.badge-status[b-h9wgrj5xj5] {
    display: inline-block;
    font-weight: 600;
    padding: 0.1em 0.95em;
    border-radius: 999px;
    margin-top: 4px;
    border: none;
}

.badge-status-em-aberto[b-h9wgrj5xj5] {
    background-color: #405abd;
    color: #fff;
}

.badge-status-recebido[b-h9wgrj5xj5] {
    background-color: #27a15f;
    color: #fff;
}

.badge-status-atrasado[b-h9wgrj5xj5] {
    background-color: #d44848;
    color: #fff;
}

.badge-status-cancelado[b-h9wgrj5xj5] {
    background-color: #a1a1a1;
    color: #fff;
}

.badge-status-em-processamento[b-h9wgrj5xj5] {
    background-color: #F2C94C;
    color: #3d3d3c;
}
/* /Components/Modules/Financeiro/Boletos/GerarBoleto.razor.rz.scp.css */
.form-hint[b-u8ywdejvq4] {
    font-size: 0.78rem;
    color: #c2185b;
    margin-top: 0.25rem;
}
/* /Components/Modules/Financeiro/Faturamento/FaturamentoIndex.razor.rz.scp.css */
/* ── Page ─────────────────────────────────────────── */

.faturamento-page[b-okn8el3qya] {
    max-width: 1340px;
}

/* ── Header ─────────────────────────────────────────── */

.faturamento-header[b-okn8el3qya] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.25rem;
}

.btn-nao-faturavel[b-okn8el3qya] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.45rem 1rem;
    border: 1.5px solid #f59e0b;
    border-radius: 8px;
    background: #fffbeb;
    color: #b45309;
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
}

    .btn-nao-faturavel:hover[b-okn8el3qya] {
        background: #fef3c7;
        box-shadow: 0 2px 8px rgba(245,158,11,0.2);
    }

/* ── Transitions ───────────────────────────────────── */

@keyframes fadeSlideIn-b-okn8el3qya {
    from { opacity: 0; transform: translateX(-6px); }
    to   { opacity: 1; transform: translateX(0); }
}

.painel-acao[b-okn8el3qya] {
    animation: fadeSlideIn-b-okn8el3qya 0.2s ease both;
}

/* ── Control panel ─────────────────────────────────── */

.form-section-body[b-okn8el3qya] {
    width: 100%;
    min-width: 0;
}

.acoes-row[b-okn8el3qya] {
    margin-top: 0.2rem;
}

.campo-readonly[b-okn8el3qya] {
    display: flex;
    align-items: center;
    padding: 0.32rem 0.68rem;
    background: #f8fafc;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    font-size: 0.925rem;
    font-weight: 500;
    color: #374151;
    white-space: nowrap;
    line-height: 1.5;
}

.painel-acao .btn-sm[b-okn8el3qya] {
    font-size: 0.925rem;
    padding: 0.32rem 0.6rem;
}

.filtro-select[b-okn8el3qya] {
    min-width: 160px;
}

.btn-filter[b-okn8el3qya] {
    height: calc(1.5em + 0.5rem + 2px);
    font-size: 0.875rem;
    padding: 0 0.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* ── Buttons ─────────────────────────────────────────── */

.btn-faturamento[b-okn8el3qya] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    height: calc(1.5em + 0.5rem + 2px);
    padding: 0 1rem;
    border: none;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
    flex-shrink: 0;
}

    .btn-faturamento:disabled[b-okn8el3qya] {
        opacity: 0.5;
        cursor: not-allowed;
    }

.btn-faturamento-primary[b-okn8el3qya] {
    background: var(--sg-primary, #2852A3);
    color: white;
}

    .btn-faturamento-primary:hover:not(:disabled)[b-okn8el3qya] {
        background: var(--sg-primary-mid, #22488a);
        box-shadow: 0 3px 10px rgba(40,82,163,0.3);
    }

.btn-faturamento-outline[b-okn8el3qya] {
    background: transparent;
    color: var(--sg-primary, #2852A3);
    border: 1.5px solid var(--sg-primary, #2852A3);
}

    .btn-faturamento-outline:hover:not(:disabled)[b-okn8el3qya] {
        background: #eff3fb;
    }

.btn-faturamento-success[b-okn8el3qya] {
    background: var(--sg-success, #198754);
    color: white;
}

    .btn-faturamento-success:hover:not(:disabled)[b-okn8el3qya] {
        background: #157347;
        box-shadow: 0 3px 10px rgba(25,135,84,0.25);
    }

/* ── Summary bar ─────────────────────────────────────── */

.form-resumo[b-okn8el3qya] {
    display: flex;
    flex-direction: row !important;
    align-items: stretch;
    background: white;
    border-radius: var(--sg-radius-md, 10px);
    margin-bottom: 1.25rem;
    overflow: hidden;
}

.resumo-item[b-okn8el3qya] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 0.85rem;
    padding: 1rem 1.5rem;
}

.resumo-sep[b-okn8el3qya] {
    width: 1px;
    background: #f1f5f9;
    margin: 0.75rem 0;
    flex-shrink: 0;
}

.resumo-icone[b-okn8el3qya] {
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    flex-shrink: 0;
    background: #eff3fb;
    color: var(--sg-primary, #2852A3);
}

.resumo-icone-blue[b-okn8el3qya] { background: #eff3fb; color: var(--sg-primary, #2852A3); }
.resumo-icone-green[b-okn8el3qya] { background: #f0fdf4; color: var(--sg-success, #198754); }

.resumo-texto[b-okn8el3qya] {
    display: flex;
    flex-direction: column;
    gap: 0.05rem;
}

.resumo-label[b-okn8el3qya] {
    font-size: 0.73rem;
    color: #6b7280;
    font-weight: 500;
    white-space: nowrap;
}

.resumo-valor[b-okn8el3qya] {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--sg-primary-dark, #132c4f);
    line-height: 1.2;
}

.resumo-valor-blue[b-okn8el3qya]  { color: var(--sg-primary, #2852A3); }
.resumo-valor-green[b-okn8el3qya] { color: var(--sg-success, #198754); }

/* ── Table ─────────────────────────────────────────── */
.contratos-table[b-okn8el3qya] { width: 100%; table-layout: fixed; }
.contratos-table .col-check[b-okn8el3qya] { width: 5%; }
.contratos-table .col-status[b-okn8el3qya] { width: 11%; }

.col-cliente[b-okn8el3qya] {
    width: 18%;
    white-space: normal;
    word-break: break-word;
}

.col-descrition[b-okn8el3qya] {
    width: 20%;
    white-space: normal;
    word-break: break-word;
    font-size: 0.75rem;
}

/* Valor Bruto, Valor Líquido, Vencimento, Banco */
.contratos-table th:nth-child(4)[b-okn8el3qya],
.contratos-table td:nth-child(4)[b-okn8el3qya] {
    width: 10%;
    font-size: 0.75rem
}

.contratos-table th:nth-child(5)[b-okn8el3qya],
.contratos-table td:nth-child(5)[b-okn8el3qya] {
    width: 10%;
    font-size: 0.75rem
}

.contratos-table th:nth-child(6)[b-okn8el3qya],
.contratos-table td:nth-child(6)[b-okn8el3qya] {
    width: 10%;
    font-size: 0.75rem
}

.contratos-table th:nth-child(7)[b-okn8el3qya],
.contratos-table td:nth-child(7)[b-okn8el3qya] {
    width: 9%;
    font-size: 0.75rem
}

.contratos-table th[b-okn8el3qya] {
    font-size: 0.68rem !important;
    white-space: normal;
    word-break: break-word;
    padding-right: 0.75rem;
}

.contratos-table thead .form-check-input[b-okn8el3qya] {
    width: 0.9rem;
    height: 0.9rem;
}

.cli-nome[b-okn8el3qya] {
    display: block;
    font-weight: 600;
    font-size: 0.75rem;
    color: var(--sg-primary-dark, #132c4f);
}

.col-valor[b-okn8el3qya] {
    font-weight: 500;
    font-size: 0.75rem;
    white-space: nowrap;
}

.col-status[b-okn8el3qya] {
    width: 10%;
}

.contrato-row[b-okn8el3qya] {
    transition: background 0.1s;
}
    .contrato-row:hover[b-okn8el3qya] {
        background: #e1ecf5;
    }

.contrato-row-sel[b-okn8el3qya] {
    background: #158eeb !important;
}

/* Linha de detalhes expandida */
.detalhe-row td[b-okn8el3qya] {
    background: #e1ecf5;
    border-top: none !important;
    border-left: 3px solid var(--sg-primary, #2852A3) !important;
    padding: 0.6rem 1rem 0.75rem 3.25rem;
}

.detalhe-titulo[b-okn8el3qya] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #1e3a5f;
    margin-bottom: 0.4rem;
}

.detalhe-lista[b-okn8el3qya] {
    display: flex;
    flex-direction: column;
    gap: 0.18rem;
}

.detalhe-linha[b-okn8el3qya] {
    display: flex;
    gap: 0.3rem;
    font-size: 0.82rem;
    color: #1e293b;
    align-items: baseline;
}

.detalhe-label[b-okn8el3qya] {
    font-weight: 600;
    white-space: nowrap;
    color: #1e3a5f;
}

.detalhe-valor[b-okn8el3qya] {
    font-weight: 400;
    color: #1e293b;
}

.detalhe-erros[b-okn8el3qya] {
    margin-top: 0.6rem;
    padding: 0.5rem 0.75rem;
    background: #fef2f2;
    border-left: 3px solid var(--sg-danger, #dc3545);
    border-radius: 4px;
}

.detalhe-erros-titulo[b-okn8el3qya] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--sg-danger, #dc3545);
    margin-bottom: 0.25rem;
}

.detalhe-erros-lista[b-okn8el3qya] {
    margin: 0;
    padding-left: 1.25rem;
    font-size: 0.8rem;
    color: #991b1b;
}

    .detalhe-erros-lista li[b-okn8el3qya] {
        margin-bottom: 0.1rem;
    }

/* ── Status icons ──────────────────────────────────── */

.status-row[b-okn8el3qya] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    flex-wrap: wrap;
}

.status-icone[b-okn8el3qya] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 6px;
    border: 1.5px solid;
    background: transparent;
    font-size: 0.78rem;
    cursor: default;
    flex-shrink: 0;
    padding: 0;
}

.status-ok[b-okn8el3qya] {
    border-color: #86efac;
    color: var(--sg-success, #198754);
    background: #f0fdf4;
}

.status-pendente[b-okn8el3qya] {
    border-color: #fcd34d;
    color: #b45309;
    background: #fffbeb;
}

.status-erro[b-okn8el3qya] {
    border-color: #fca5a5;
    color: var(--sg-danger, #dc3545);
    background: #fef2f2;
}

.status-na[b-okn8el3qya] {
    border-color: #e9ecef;
    color: #dee2e6;
    background: transparent;
}

.status-alerta[b-okn8el3qya] {
    border-color: var(--sg-danger, #dc3545);
    color: var(--sg-danger, #dc3545);
    background: #fef2f2;
    font-size: 0.8rem;
}

    .status-alerta:hover[b-okn8el3qya] {
        background: #fee2e2;
    }

/* Botão expandir */
.btn-expandir[b-okn8el3qya] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 6px;
    border: 1.5px solid #dee2e6;
    background: transparent;
    color: #6b7280;
    font-size: 0.78rem;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.4,0,0.2,1);
    flex-shrink: 0;
    padding: 0;
}

    .btn-expandir:hover[b-okn8el3qya] {
        background: #f1f5f9;
        color: var(--sg-primary, #2852A3);
        border-color: var(--sg-primary, #2852A3);
    }

.btn-expandir-aberto[b-okn8el3qya] {
    background: var(--sg-primary, #2852A3) !important;
    color: white !important;
    border-color: var(--sg-primary, #2852A3) !important;
    transform: rotate(45deg);
}

/* Estado vazio */
.icone-vazio[b-okn8el3qya] {
    display: block;
    font-size: 1.75rem;
    margin-bottom: 0.5rem;
    opacity: 0.35;
}
/* /Components/Modules/Financeiro/Faturamento/NaoFaturaveisIndex.razor.rz.scp.css */
.nao-faturavel-page[b-84yxtlroy1] {
    max-width: 1100px;
}

/* ── Header ──────────────────────────────────────────── */

.nao-faturavel-header[b-84yxtlroy1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.bi[b-84yxtlroy1] {
    color: var(--sg-primary, #2852A3);
}

.btn-voltar[b-84yxtlroy1] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.28rem 0.58rem;
    border: 1.5px solid #dee2e6;
    border-color: var(--sg-primary, #2852A3);
    border-radius: 50%;
    background: white;
    color: #374151;
    font-size: 0.87rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s;
    flex-shrink: 0;
}

    .btn-voltar:hover[b-84yxtlroy1] {
        border-color: var(--sg-primary, #2852A3);
        color: var(--sg-primary, #2852A3);
        background: #eff3fb;
    }

.nao-faturavel-titulo[b-84yxtlroy1] {
    margin: 0;
    line-height: 1.2;
}

.nao-faturavel-empresa[b-84yxtlroy1] {
    font-size: 0.82rem;
    color: #6b7280;
    font-weight: 400;
}

/* ── Table ───────────────────────────────────────────── */

.nao-faturavel-table[b-84yxtlroy1] {
    width: 100%;
    table-layout: fixed;
}

.nao-faturavel-table .col-icone[b-84yxtlroy1] {
    width: 8%;
    text-align: center;
}

.nao-faturavel-table .col-mensagem[b-84yxtlroy1] {
    width: 50%;
}

.nao-faturavel-table .col-cliente[b-84yxtlroy1] {
    width: 25%;
    white-space: normal;
    word-break: break-word;
}

.nao-faturavel-table .col-contrato[b-84yxtlroy1] {
    width: 17%;
    white-space: normal;
    word-break: break-word;
}


/* ── Icons ───────────────────────────────────────────── */

.icone-erro[b-84yxtlroy1] {
    color: var(--sg-danger, #dc3545);
    font-size: 1.3rem;
}

.icone-alerta[b-84yxtlroy1] {
    color: #f59e0b;
    font-size: 1.3rem;
}
/* /Components/Modules/Financeiro/NotasFiscais/GerarNotaFiscal.razor.rz.scp.css */
/* Campos calculados / read-only com aparência visual distinta */
.form-control:disabled[b-6nqm84gpoe] {
    background-color: #f8f9fa;
    color: #495057;
    border-color: #dee2e6;
    cursor: default;
    opacity: 1;
}
/* /Components/Modules/Financeiro/NotasFiscais/NotaFiscalIndex.razor.rz.scp.css */
.acoes-nf[b-92k93dqz25] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    align-items: center;
    max-width: 98px;
}

.btn-acao[b-92k93dqz25] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    background: transparent;
    color: #6c757d;
    font-size: 0.875rem;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
    padding: 0;
}

    .btn-acao:hover[b-92k93dqz25] {
        background: #f1f3f5;
        color: var(--sg-primary-mid);
        border-color: #adb5bd;
    }

.btn-acao-whatsapp:hover[b-92k93dqz25] {
    background: #e8f5e9;
    color: #25d366;
    border-color: #25d366;
}

.btn-acao-pdf:hover[b-92k93dqz25] {
    background: #fff0f0;
    color: #e53935;
    border-color: #e53935;
}

.btn-acao-xml:hover[b-92k93dqz25] {
    background: #e8f5e9;
    color: #2e7d32;
    border-color: #2e7d32;
}

.btn-acao-danger:hover[b-92k93dqz25] {
    background: #fdecea;
    color: var(--sg-danger, #dc3545);
    border-color: var(--sg-danger, #dc3545);
}

.badge-status[b-92k93dqz25] {
    display: inline-block;
    font-weight: 600;
    padding: 0.1em 0.95em;
    border-radius: 999px;
    border: none;
}

.badge-status-aprovada[b-92k93dqz25] {
    background-color: #27a15f;
    color: #fff;
}

.badge-status-recusada[b-92k93dqz25] {
    background-color: #d44848;
    color: #fff;
}

.badge-status-cancelada[b-92k93dqz25] {
    background-color: #a1a1a1;
    color: #fff;
}

/* /Components/Modules/Geral/Comandos.razor.rz.scp.css */
.cmd-secao-titulo[b-2ws0032h2c] {
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--bs-secondary);
    padding: .75rem 1rem .5rem;
    border-bottom: 1px solid var(--bs-border-color);
}

/* ── Área flex de envio (select + campos + botão) ── */

.cmd-envio-corpo[b-2ws0032h2c] {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    padding: .75rem 1rem 1rem;
    align-items: flex-end;
}

.cmd-campo[b-2ws0032h2c] {
    min-width: 180px;
    flex: 0 1 auto;
}

.cmd-campo-lg[b-2ws0032h2c] {
    min-width: 280px;
}

.cmd-campo-btn[b-2ws0032h2c] {
    min-width: auto;
}

/* ── Sub-seções dentro de "Enviar comandos" ── */

/* wrapper que ocupa linha inteira e exibe os dois subgrupos lado a lado */
.cmd-div[b-2ws0032h2c] {
    flex: 0 0 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    border-top: 1px solid var(--bs-border-color);
    padding-top: .75rem;
    margin-top: .25rem;
}

.cmd-subgrupo[b-2ws0032h2c] {
    flex: 0 0 auto;
    padding-right: 2rem;
}

.cmd-subtitulo[b-2ws0032h2c] {
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--bs-secondary);
    margin-bottom: .5rem;
}

.cmd-saidas-corpo[b-2ws0032h2c] {
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.cmd-saida-row[b-2ws0032h2c] {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.cmd-saida-label[b-2ws0032h2c] {
    font-size: .875rem;
    font-weight: 600;
    min-width: 70px;
    color: var(--bs-body-color);
}

.cmd-outros-corpo[b-2ws0032h2c] {
    display: inline-flex;
    flex-direction: column;
    gap: .5rem;
}

.cmd-outros-corpo .btn-cmd[b-2ws0032h2c] {
    width: 100%;
    justify-content: center;
}

/* ── Botões de comando (mesmo estilo do btn-buzzer de TransmissaoEquipamento) ── */

.btn-cmd[b-2ws0032h2c] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .35rem .9rem;
    border-radius: 6px;
    border: none;
    font-size: .875rem;
    font-weight: 500;
    cursor: pointer;
    transition: background-color .15s, color .15s;
}

.btn-cmd-enviar[b-2ws0032h2c] {
    background-color: var(--sg-primary);
    color: #fff;
}

.btn-cmd-enviar:hover[b-2ws0032h2c] {
    background-color: var(--sg-primary-dark, #03327a);
}

.btn-cmd-parar[b-2ws0032h2c] {
    background-color: #dc3545;
    color: #fff;
}

.btn-cmd-parar:hover[b-2ws0032h2c] {
    background-color: #b02a37;
}

/* ── Botão cancelar (idêntico ao de Configurações) ── */

.cancelamento-config[b-2ws0032h2c] {
    display: flex;
    text-align: center;
    font-size: 1.1rem;
    color: red;
}

/* /Components/Modules/Geral/Configuracoes.razor.rz.scp.css */
.cfg-secao-titulo[b-vbpqehxixw] {
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--bs-secondary);
    padding: .75rem 1rem .5rem;
    border-bottom: 1px solid var(--bs-border-color);
}

.cfg-envio-corpo[b-vbpqehxixw] {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    padding: 0.2rem 1rem 1rem 1rem;
    align-items: flex-end;
}

.cfg-campo[b-vbpqehxixw] {
    min-width: 180px;
    flex: 0 1 auto;
}

.cfg-campo-lg[b-vbpqehxixw] {
    min-width: 280px;
}

.cfg-campo-btn[b-vbpqehxixw] {
    min-width: auto;
}

.cancelamento-config[b-vbpqehxixw] {
    display: flex;
    text-align: center;
    font-size: 1.1rem;
    color: red;
}
/* /Components/Modules/Geral/Laudo/GerarLaudo.razor.rz.scp.css */
.laudo-btn-opcao[b-bms4z3zowb] {
    padding: 0.15rem 0.4rem;
    font-size: 0.8rem;
}

/* ── Tabela de evidências ─────────────────────────────── */

.laudo-ev-table[b-bms4z3zowb] {
    font-size: 0.8rem;
}

.laudo-ev-table th[b-bms4z3zowb]{
    font-size: 0.7rem;
}

/* TD de Status: restaura ao tamanho normal para não afetar os ícones */
.laudo-ev-table .laudo-ev-status-td[b-bms4z3zowb] {
    font-size: 1rem;
}

/* ── Status row (mesmos estilos de Trajetos, scoped aqui) ── */

.traj-status-row[b-bms4z3zowb] {
    display: flex;
    align-items: center;
    gap: .35rem;
}

.traj-ignicao[b-bms4z3zowb] {
    width: 1.56rem;
    height: 1.56rem;
}

.laudo-icone-circulo[b-bms4z3zowb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.56rem;
    height: 1.56rem;
    border-radius: 50%;
    font-size: .73rem;
    color: #fff;
}

.laudo-icone-limpador[b-bms4z3zowb] { background: var(--sg-primary, #2852A3); }
.laudo-icone-buzzer[b-bms4z3zowb]   { background: #ef4444; font-size: 0.8rem; }

/* ── Drop zone de anexos ─────────────────────────────── */

.laudo-anexo-drop[b-bms4z3zowb] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    width: 100%;
    padding: 2rem 1rem;
    border: 2px dashed #dee2e6;
    border-radius: 0.5rem;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
    text-align: center;
}

.laudo-anexo-drop:hover[b-bms4z3zowb] {
    border-color: #0d6efd;
    background: #f0f6ff;
}
/* /Components/Modules/Geral/Localizacao.razor.rz.scp.css */
/* ── Layout principal ────────────────────────────────────────────── */
.loc-page[b-2vckwep0sq] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Título da página */
.loc-page[b-2vckwep0sq]  h3,
h3[b-2vckwep0sq] {
    color: var(--sg-primary-titles, #17305c);
    margin: 0 0 0.25rem 0;
}

/* ── Toolbar ─────────────────────────────────────────────────────── */
.loc-toolbar[b-2vckwep0sq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.5rem 0.75rem;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    flex-wrap: wrap;
}

.loc-filtros[b-2vckwep0sq] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    flex-wrap: wrap;
}

/* SearchSelectInput de empresa */
.loc-empresa-wrapper[b-2vckwep0sq]  label                  { display: none; }
.loc-empresa-wrapper[b-2vckwep0sq]  > div                  { margin-bottom: 0; }
.loc-empresa-wrapper[b-2vckwep0sq]  .search-select-wrapper { width: 300px; }

.loc-busca-wrapper[b-2vckwep0sq] { position: relative; }

.loc-busca-icon[b-2vckwep0sq] {
    position: absolute;
    left: 0.6rem;
    top: 50%;
    transform: translateY(-50%);
    color: #9ca3af;
    font-size: 0.8rem;
    pointer-events: none;
}

.loc-busca[b-2vckwep0sq] {
    padding-left: 1.9rem;
    width: 230px;
}

.loc-acoes[b-2vckwep0sq] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

/* Legenda */
.loc-legenda[b-2vckwep0sq] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    font-size: 0.8rem;
    color: #6b7280;
}

.loc-dot[b-2vckwep0sq] {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    box-shadow: 0 0 0 1.5px rgba(0,0,0,0.18);
    flex-shrink: 0;
}

.loc-dot-ligado[b-2vckwep0sq]    { background-color: #22c55e; }
.loc-dot-desligado[b-2vckwep0sq] { background-color: #ef4444; }
.loc-dot-sem-info[b-2vckwep0sq]  { background-color: #94a3b8; }

.loc-btn-atualizar[b-2vckwep0sq] { font-size: 0.8rem; white-space: nowrap; }

/* ── Seção do mapa ───────────────────────────────────────────────── */
.loc-mapa-secao[b-2vckwep0sq] {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
    min-height: 600px;
}

/* ── Painel da tabela ────────────────────────────────────────────── */
.loc-painel[b-2vckwep0sq] {
    width: 100%;
    display: flex;
    flex-direction: column;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
    background: white;
    margin-bottom: 1rem;
}

.loc-painel-body[b-2vckwep0sq] {
    flex: 1;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(0,0,0,0.12) transparent;
}

    .loc-painel-body[b-2vckwep0sq]::-webkit-scrollbar       { width: 4px; }
    .loc-painel-body[b-2vckwep0sq]::-webkit-scrollbar-track { background: transparent; }
    .loc-painel-body[b-2vckwep0sq]::-webkit-scrollbar-thumb { background-color: rgba(0,0,0,0.12); border-radius: 4px; }

.loc-painel-footer[b-2vckwep0sq] {
    padding: 0.45rem 1rem;
    font-size: 0.73rem;
    color: #9ca3af;
    border-top: 1px solid #f3f4f6;
    flex-shrink: 0;
    background: white;
}

.loc-footer-realtime[b-2vckwep0sq]    { color: #22c55e; font-weight: 500; }
.loc-footer-carregando[b-2vckwep0sq]  { color: #9ca3af; }
.loc-spin[b-2vckwep0sq]               { display: inline-block; animation: loc-spin-b-2vckwep0sq 1s linear infinite; }
@keyframes loc-spin-b-2vckwep0sq     { to { transform: rotate(360deg); } }

/* ── Tabela ──────────────────────────────────────────────────────── */
.loc-tabela[b-2vckwep0sq] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8rem;
}

.loc-tabela thead th[b-2vckwep0sq] {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #f9fafb;
    padding: 0.55rem 0.9rem;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #6b7280;
    border-bottom: 1px solid #e5e7eb;
    white-space: nowrap;
}

/* Larguras proporcionais (8 colunas) */
.loc-tabela th:nth-child(1)[b-2vckwep0sq] { width:  3%; } /* Expand */
.loc-tabela th:nth-child(2)[b-2vckwep0sq] { width: 10%; } /* Placa */
.loc-tabela th:nth-child(3)[b-2vckwep0sq] { width:  9%; } /* Equipamento */
.loc-tabela th:nth-child(4)[b-2vckwep0sq] { width: 12%; } /* Data */
.loc-tabela th:nth-child(5)[b-2vckwep0sq] { width:  7%; } /* Velocidade */
.loc-tabela th:nth-child(6)[b-2vckwep0sq] { width: 14%; } /* Motorista */
.loc-tabela th:nth-child(7)[b-2vckwep0sq] { width: 40%; } /* Local */
.loc-tabela th:nth-child(8)[b-2vckwep0sq] { width:  5%; text-align: center; } /* Status */

.loc-linha[b-2vckwep0sq] {
    cursor: pointer;
    transition: background-color 0.1s;
}

    .loc-linha:hover[b-2vckwep0sq]    { background-color: #f5f7ff; }
    .loc-linha-ativa[b-2vckwep0sq]    { background-color: #dbeafe !important; }
    .loc-linha-ativa td[b-2vckwep0sq] { color: #1e40af; }

.loc-tabela tbody td[b-2vckwep0sq] {
    padding: 0.55rem 0.9rem;
    border-bottom: 1px solid #f3f4f6;
    vertical-align: middle;
    color: #374151;
}

.loc-tabela tbody tr:last-child td[b-2vckwep0sq] { border-bottom: none; }

.loc-equip-codigo[b-2vckwep0sq] {
    color: #111827;
    font-size: 0.78rem;
}

.loc-data[b-2vckwep0sq] {
    font-size: 0.78rem;
    color: #6b7280;
}

.loc-data-nowrap[b-2vckwep0sq] {
    white-space: nowrap;
}

.loc-status-dot[b-2vckwep0sq] {
    display: inline-block;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    box-shadow: 0 0 0 1.5px rgba(0,0,0,0.18);
    margin: 0 auto;
    display: block;
}

.loc-tabela th:nth-child(8)[b-2vckwep0sq],
.loc-tabela td:nth-child(8)[b-2vckwep0sq] { text-align: center; }

.loc-tabela-vazio[b-2vckwep0sq] {
    text-align: center;
    padding: 3rem 1rem;
    color: #9ca3af;
    font-size: 0.85rem;
}

/* ── Expand toggle ───────────────────────────────────────────────── */
.loc-td-expand[b-2vckwep0sq] {
    padding: 0 0.2rem !important;
    text-align: center;
}

.loc-expand-btn[b-2vckwep0sq] {
    background: none;
    border: none;
    cursor: pointer;
    color: #9ca3af;
    padding: 0.15rem 0.35rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    transition: color 0.15s, background 0.15s;
}
    .loc-expand-btn:hover[b-2vckwep0sq] { color: #374151; background: #f3f4f6; }

.loc-expand-icon[b-2vckwep0sq] {
    font-size: 0.78rem;
    display: inline-block;
    transition: transform 0.2s;
}
    .loc-expand-icon--aberto[b-2vckwep0sq] { transform: rotate(90deg); }

/* ── Linha de detalhe ────────────────────────────────────────────── */
.loc-detalhe-row[b-2vckwep0sq] { cursor: default !important; }
    .loc-detalhe-row:hover[b-2vckwep0sq] { background: #f8fafc !important; }

.loc-detalhe-row td[b-2vckwep0sq] {
    padding: 0.75rem 1rem 1rem !important;
    background: #f8fafc;
    border-bottom: 2px solid #e5e7eb !important;
}

.loc-detalhe[b-2vckwep0sq] {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.loc-detalhe-campos[b-2vckwep0sq] {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0 1.5rem;
}

.loc-detalhe-grupo[b-2vckwep0sq] {
    display: flex;
    flex-direction: column;
    gap: 0;
    border-right: 1px solid #e5e7eb;
    padding-right: 1.5rem;
}
    .loc-detalhe-grupo:last-child[b-2vckwep0sq] { border-right: none; padding-right: 0; }

.loc-detalhe-item[b-2vckwep0sq] {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    gap: 0.5rem;
    padding: 0.28rem 0;
    border-bottom: 1px solid #f3f4f6;
    font-size: 0.78rem;
    color: #111827;
}
    .loc-detalhe-item:last-child[b-2vckwep0sq] { border-bottom: none; }

.loc-detalhe-label[b-2vckwep0sq] {
    flex-shrink: 0;
    min-width: 110px;
    font-size: 0.7rem;
    font-weight: 600;
    color: #6b7280;
}

/* ── Botões de ação do detalhe ───────────────────────────────────── */
.loc-detalhe-acoes[b-2vckwep0sq] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.loc-acao-btn[b-2vckwep0sq] {
    display: inline-flex;
    align-items: center;
    padding: 0.3rem 0.5rem;
    font-size: 0.75rem;
    font-weight: 500;
    border-radius: 6px;
    border: 1px solid #d1d5db;
    background: white;
    color: #374151;
    text-decoration: none;
    overflow: hidden;
    transition: background 0.2s, border-color 0.2s, color 0.2s, padding 0.25s;
}
    .loc-acao-btn:hover[b-2vckwep0sq] { background: #f3f4f6; border-color: #9ca3af; color: #111827; padding: 0.3rem 0.8rem; }
    .loc-acao-btn i[b-2vckwep0sq] { font-size: 0.8rem; flex-shrink: 0; }

.loc-acao-texto[b-2vckwep0sq] {
    display: inline-block;
    max-width: 0;
    overflow: hidden;
    opacity: 0;
    white-space: nowrap;
    margin-left: 0;
    transition: max-width 0.25s ease, opacity 0.2s ease, margin-left 0.25s ease;
}

.loc-acao-btn:hover .loc-acao-texto[b-2vckwep0sq] {
    max-width: 160px;
    opacity: 1;
    margin-left: 0.4rem;
}

/* /Components/Modules/Geral/RelMonitoramento.razor.rz.scp.css */
/* ── Página ───────────────────────────────────────────── */

.mon-page[b-qg4l9j9ka0] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.mon-page-header[b-qg4l9j9ka0] {
    padding: 1rem 1.25rem .25rem;
}

.mon-titulo[b-qg4l9j9ka0] {
    font-size: 1.15rem;
    font-weight: 600;
    color: var(--sg-primary, #2852A3);
    display: flex;
    align-items: center;
    gap: .4rem;
    margin: 0;
}

/* ── Mapa ─────────────────────────────────────────────── */

.mon-mapa-section[b-qg4l9j9ka0] {
    padding: 0;
}

.mon-mapa[b-qg4l9j9ka0] {
    height: 480px;
    position: relative;
    background: #e8eef4;
}

.mon-mapa-placeholder[b-qg4l9j9ka0] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .7rem;
    color: #9baabf;
    background: #e8eef4;
}

.mon-mapa-placeholder i[b-qg4l9j9ka0]  { font-size: 2.2rem; opacity: .45; }
.mon-mapa-placeholder span[b-qg4l9j9ka0] { font-size: .875rem; }

/* ── Status bar ───────────────────────────────────────── */

.mon-status-bar[b-qg4l9j9ka0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .38rem 1rem;
    border-top: 1px solid #e9ecef;
    background: #f8f9fa;
    gap: 1rem;
    flex-wrap: wrap;
    min-height: 36px;
}

.mon-status-left[b-qg4l9j9ka0] {
    display: flex;
    align-items: center;
    gap: .45rem;
    font-size: .78rem;
    color: #555;
}

.mon-status-right[b-qg4l9j9ka0] {
    display: flex;
    align-items: center;
    gap: .3rem;
}

.mon-sep[b-qg4l9j9ka0]   { color: #ccc; }
.mon-sep-v[b-qg4l9j9ka0] {
    width: 1px;
    height: 16px;
    background: #dee2e6;
    margin: 0 .25rem;
}

/* Dot pulsante ao vivo */
.mon-live-dot[b-qg4l9j9ka0] {
    font-size: .45rem;
    color: #22c55e;
    animation: mon-pulse 1.5s ease-in-out infinite;
}

@@keyframes mon-pulse {
    0%[b-qg4l9j9ka0], 100%[b-qg4l9j9ka0] { opacity: 1; }
    50%[b-qg4l9j9ka0]       { opacity: .25; }
}

/* Botão trocar provedor */
.mon-btn-provedor[b-qg4l9j9ka0] {
    padding: .18rem .55rem;
    font-size: .72rem;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    background: #fff;
    color: #495057;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: .3rem;
    transition: background .15s;
}

.mon-btn-provedor:hover[b-qg4l9j9ka0] { background: #e9ecef; }

/* Intervalo */
.mon-interval-label[b-qg4l9j9ka0] {
    font-size: .72rem;
    color: #6c757d;
    margin-right: .1rem;
}

.mon-interval-btn[b-qg4l9j9ka0] {
    padding: .18rem .45rem;
    font-size: .72rem;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    background: #fff;
    color: #495057;
    cursor: pointer;
    transition: background .15s;
}

.mon-interval-btn:hover[b-qg4l9j9ka0] { background: #e9ecef; }

.mon-interval-btn.active[b-qg4l9j9ka0] {
    background: #2852A3;
    color: #fff;
    border-color: #2852A3;
}

/* Botão Atualizar */
.mon-btn-atualizar[b-qg4l9j9ka0] {
    padding: .18rem .55rem;
    font-size: .72rem;
    border: 1px solid #2852A3;
    border-radius: 4px;
    background: #fff;
    color: #2852A3;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: .25rem;
    transition: background .15s;
    margin-left: .15rem;
}

.mon-btn-atualizar:hover:not(:disabled)[b-qg4l9j9ka0] {
    background: #2852A3;
    color: #fff;
}

.mon-btn-atualizar:disabled[b-qg4l9j9ka0] { opacity: .5; cursor: default; }

/* ── Barra de filtros ─────────────────────────────────── */

.relatorio-filtros[b-qg4l9j9ka0] {
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 0.65rem;
    padding: 0.65rem 0.65rem 0.65rem 1rem;
}

.relatorio-filtros > [class*="col-"][b-qg4l9j9ka0] {
    flex-shrink: 0;
    min-width: 80px;
}

.filtro-campo-buscar[b-qg4l9j9ka0] {
    display: flex;
    align-items: flex-end;
}

/* ── Tabela ───────────────────────────────────────────── */

.mon-table[b-qg4l9j9ka0] {
    table-layout: fixed;
    width: 100%;
}

.mon-table th[b-qg4l9j9ka0],
.mon-table td[b-qg4l9j9ka0] {
    font-size: .72rem;
}

.mon-table th:first-child[b-qg4l9j9ka0],
.mon-table td:first-child[b-qg4l9j9ka0] {
    padding-left: .75rem;
    width: 24px;
}

.mon-col-placa[b-qg4l9j9ka0] { width: 7%; }
.mon-col-kmh[b-qg4l9j9ka0]   { width: 5%; }
.mon-col-ign[b-qg4l9j9ka0]   { width: 6%; }
.mon-col-data[b-qg4l9j9ka0]  { width: 9%; }
.mon-col-local[b-qg4l9j9ka0] {
    max-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mon-cor-dot[b-qg4l9j9ka0] {
    display: inline-block;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,.8);
    box-shadow: 0 0 0 1.5px rgba(0,0,0,.15);
    vertical-align: middle;
}

.mon-row[b-qg4l9j9ka0] {
    cursor: pointer;
    transition: background .1s;
}

.mon-row:hover td[b-qg4l9j9ka0] {
    background: rgba(40, 82, 163, .055);
}
/* /Components/Modules/Geral/Trajetos.razor.rz.scp.css */
/* ── Mapa ─────────────────────────────────────────────── */

.trajetos-mapa-section[b-k5ctl5qtp6] {
    padding: 0;
}

.trajetos-mapa[b-k5ctl5qtp6] {
    height: 420px;
    border-radius: 0.5rem;
    position: relative;
    background: #e8eef4;
}

.trajetos-mapa-placeholder[b-k5ctl5qtp6] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    color: #9baabf;
    background: #e8eef4;
    border-radius: 0.5rem;
}

.trajetos-mapa-placeholder i[b-k5ctl5qtp6] {
    font-size: 2.5rem;
    opacity: .5;
}

.trajetos-mapa-placeholder span[b-k5ctl5qtp6] {
    font-size: .875rem;
}

/* ── Tabela de trajeto (aba mapa) ─────────────────────── */

.trajeto-table[b-k5ctl5qtp6] {
    table-layout: fixed;
    width: 100%;
}

    .trajeto-table th[b-k5ctl5qtp6] {
        font-size: .68rem;
    }

    .trajeto-table td[b-k5ctl5qtp6] {
        font-size: .72rem;
    }

.trajeto-table th:first-child[b-k5ctl5qtp6],
.trajeto-table td:first-child[b-k5ctl5qtp6] {
    padding-left: 1rem;
}

.trajeto-table .col-seq[b-k5ctl5qtp6]      { width: 3.5rem; }
.trajeto-table .col-traj-status[b-k5ctl5qtp6] { width: 10%; }
.trajeto-table .col-dist[b-k5ctl5qtp6]     { width: 8rem; }

.trajeto-table .col-motorista[b-k5ctl5qtp6]      { width: 15%; padding-left:2%;}
.trajeto-table .col-tipo[b-k5ctl5qtp6] { width: 6%; }
.trajeto-table .col-data[b-k5ctl5qtp6]   { width: 10%; }
.trajeto-table .col-kmh[b-k5ctl5qtp6]   { width: 6%; justify-content: center;}
.trajeto-table .col-hodometro[b-k5ctl5qtp6]  { width: 6%; }
.trajeto-table .col-local[b-k5ctl5qtp6]     { width: 15%; }
.trajeto-table .col-cerca[b-k5ctl5qtp6]      { width: 10%; }


.traj-icone-circulo[b-k5ctl5qtp6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.7rem;
    height: 1.7rem;
    border-radius: 50%;
    font-size: .75rem;
    color: #fff;
}

.traj-icone-limpador[b-k5ctl5qtp6] { background: var(--sg-primary, #2852A3); }
.traj-icone-buzzer[b-k5ctl5qtp6]   { background: #ef4444; font-size: 0.9rem; }
.bi-broadcast[b-k5ctl5qtp6] { align-content: center; margin-top: 0.1rem; }

/* ── Localização ──────────────────────────────────────── */

.traj-local[b-k5ctl5qtp6] {
    font-size: .8125rem;
    color: #555;
}

/* ── Aba: Registros ───────────────────────────────────── */

.registros-titulo[b-k5ctl5qtp6] {
    font-size: .9375rem;
    font-weight: 600;
    color: var(--sg-primary, #2852A3);
    margin: 1rem 0 .5rem;
    display: flex;
    align-items: center;
    gap: .4rem;
}

.registros-table th:first-child[b-k5ctl5qtp6],
.registros-table td:first-child[b-k5ctl5qtp6] {
    padding-left: 1rem;
}

.registros-table[b-k5ctl5qtp6] {
    table-layout: fixed;
    width: 100%;
}

.registros-table th[b-k5ctl5qtp6] {
    font-size: .68rem;
}

.registros-table td[b-k5ctl5qtp6] {
    font-size: .72rem;
}

.registros-table .col-motorista[b-k5ctl5qtp6]      { width: 17%; }
.registros-table .col-gps[b-k5ctl5qtp6]     { width: 10%; }
.registros-table .col-data[b-k5ctl5qtp6]      { width: 11%; }
    .registros-table .col-kmh[b-k5ctl5qtp6] {
        width: 7%;
        justify-content: center;
    }
.registros-table .col-tipo[b-k5ctl5qtp6]      { width: 9%;}
.registros-table .col-reg-status[b-k5ctl5qtp6]{ width: 10%; }
.registros-table .col-local-r[b-k5ctl5qtp6]  { width: 19%; }
.registros-table .col-num[b-k5ctl5qtp6]      { width: 8%; }
.registros-table .col-bat[b-k5ctl5qtp6]      { width: 8%; }

/* ── Status row (registros) ───────────────────────────── */

.traj-status-row[b-k5ctl5qtp6] {
    display: flex;
    align-items: center;
    gap: .35rem;
}

.traj-sinal[b-k5ctl5qtp6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.6rem;
    height: 1.6rem;
    border-radius: 50%;
    background: #d0e8ff;
    color: var(--sg-primary, #2852A3);
    font-size: .75rem;
}

/* ── Botões de opção ──────────────────────────────────── */

.traj-opcoes[b-k5ctl5qtp6] {
    display: flex;
    gap: .25rem;
}

.traj-btn-opcao[b-k5ctl5qtp6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: .375rem;
    border: 1px solid var(--sg-primary, #2852A3);
    background: transparent;
    color: var(--sg-primary, #2852A3);
    font-size: .8125rem;
    cursor: pointer;
    transition: background .15s, color .15s;
}

.traj-btn-opcao:hover[b-k5ctl5qtp6] {
    background: var(--sg-primary, #2852A3);
    color: #fff;
}

.filtro-campo[b-k5ctl5qtp6] {
    margin-bottom: 0.5rem;
}

/* ── Playback ─────────────────────────────────────────── */

.traj-playback-section[b-k5ctl5qtp6] {
    padding: .5rem 1rem;
    border-top: 1px solid #e9ecef;
    background: #f8f9fa;
}

.traj-pb-controles[b-k5ctl5qtp6] {
    display: flex;
    align-items: center;
    gap: .6rem;
    flex-wrap: wrap;
}

.traj-pb-btn[b-k5ctl5qtp6] {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: 1px solid #dee2e6;
    background: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .95rem;
    color: #495057;
    flex-shrink: 0;
    transition: background .15s;
}

.traj-pb-btn:hover[b-k5ctl5qtp6] { background: #e9ecef; }

.traj-pb-btn-ativo[b-k5ctl5qtp6] {
    background: #2852A3;
    border-color: #2852A3;
    color: #fff;
    font-size: 1.05rem;
    width: 38px;
    height: 38px;
}

.traj-pb-btn-ativo:hover[b-k5ctl5qtp6] { background: #1e3f7e; }

.traj-pb-barra-wrap[b-k5ctl5qtp6] {
    flex: 1;
    min-width: 60px;
}

.traj-pb-barra[b-k5ctl5qtp6] {
    height: 4px;
    background: #dee2e6;
    border-radius: 2px;
}

.traj-pb-barra-inner[b-k5ctl5qtp6] {
    height: 100%;
    background: #2852A3;
    border-radius: 2px;
    transition: width .4s linear;
}

.traj-pb-info[b-k5ctl5qtp6] {
    display: flex;
    align-items: center;
    gap: .6rem;
    font-size: .78rem;
}

.traj-pb-tipo[b-k5ctl5qtp6] { font-weight: 600; color: #2852A3; }
.traj-pb-hora[b-k5ctl5qtp6] { color: #6c757d; }
.traj-pb-kmh[b-k5ctl5qtp6]  { font-weight: 500; color: #495057; }
.traj-pb-prog[b-k5ctl5qtp6] { color: #6c757d; white-space: nowrap; }

.traj-pb-velocidade[b-k5ctl5qtp6] {
    display: flex;
    align-items: center;
    gap: .2rem;
    flex-shrink: 0;
}

.traj-pb-vel-label[b-k5ctl5qtp6] {
    font-size: .72rem;
    color: #6c757d;
    margin-right: .15rem;
}

.traj-pb-vel-btn[b-k5ctl5qtp6] {
    padding: .18rem .45rem;
    font-size: .72rem;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    background: #fff;
    color: #495057;
    cursor: pointer;
    transition: background .15s;
}

.traj-pb-vel-btn:hover[b-k5ctl5qtp6] { background: #e9ecef; }

.traj-pb-vel-btn.active[b-k5ctl5qtp6] {
    background: #2852A3;
    color: #fff;
    border-color: #2852A3;
}

.traj-pb-sep-v[b-k5ctl5qtp6] {
    width: 1px;
    height: 18px;
    background: #dee2e6;
    margin: 0 .2rem;
    flex-shrink: 0;
}

.traj-pb-provedor-btn[b-k5ctl5qtp6] {
    padding: .18rem .52rem;
    font-size: .72rem;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    background: #fff;
    color: #495057;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: .25rem;
    transition: background .15s;
    flex-shrink: 0;
}

.traj-pb-provedor-btn:hover[b-k5ctl5qtp6] { background: #e9ecef; }
/* /Components/Modules/Geral/UltimosRegistros.razor.rz.scp.css */
.ur-table[b-qrvegbwwd6] {
    table-layout: fixed;
    width: 100%;
}

.ur-table th[b-qrvegbwwd6] {
    font-size: .68rem;
}

.ur-table td[b-qrvegbwwd6] {
    font-size: .72rem;
}

.ur-table th:first-child[b-qrvegbwwd6],
.ur-table td:first-child[b-qrvegbwwd6] {
    padding-left: 1rem;
}

.ur-col-motorista[b-qrvegbwwd6] { width: 17%; }
.ur-col-tipo[b-qrvegbwwd6]      { width: 9%; }
.ur-col-gps[b-qrvegbwwd6]       { width: 11%; }
.ur-col-data[b-qrvegbwwd6]      { width: 12%; }
.ur-col-kmh[b-qrvegbwwd6]       { width: 6%; text-align: center; }
.ur-col-status[b-qrvegbwwd6]    { width: 7%; }
.ur-col-local[b-qrvegbwwd6]     { width: 17%; }
.ur-col-num[b-qrvegbwwd6]       { width: 8%; }
.ur-col-bat[b-qrvegbwwd6]       { width: 6%; }

/* ── Paginação ── */
.ur-paginacao[b-qrvegbwwd6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .5rem 1rem;
    border-top: 1px solid #e9ecef;
    flex-wrap: wrap;
    gap: .5rem;
}

.ur-pag-info[b-qrvegbwwd6] {
    font-size: .75rem;
    color: #6c757d;
}

.ur-pag-controles[b-qrvegbwwd6] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.ur-pag-tamanho[b-qrvegbwwd6] {
    display: flex;
    align-items: center;
    gap: .25rem;
}

.ur-pag-label[b-qrvegbwwd6] {
    font-size: .75rem;
    color: #6c757d;
    margin-right: .25rem;
}

.ur-pag-btn-size[b-qrvegbwwd6] {
    padding: .2rem .55rem;
    font-size: .75rem;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    background: #fff;
    color: #495057;
    cursor: pointer;
    transition: background .15s;
}

.ur-pag-btn-size:hover[b-qrvegbwwd6],
.ur-pag-btn-size.active[b-qrvegbwwd6] {
    background: #2852A3;
    color: #fff;
    border-color: #2852A3;
}

.ur-pag-nav[b-qrvegbwwd6] {
    display: flex;
    gap: .2rem;
}

.ur-pag-btn[b-qrvegbwwd6] {
    min-width: 30px;
    padding: .2rem .45rem;
    font-size: .75rem;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    background: #fff;
    color: #495057;
    cursor: pointer;
    transition: background .15s;
}

.ur-pag-btn:hover:not(:disabled)[b-qrvegbwwd6] {
    background: #e9ecef;
}

.ur-pag-btn.active[b-qrvegbwwd6] {
    background: #2852A3;
    color: #fff;
    border-color: #2852A3;
}

.ur-pag-btn:disabled[b-qrvegbwwd6] {
    opacity: .4;
    cursor: default;
}
/* /Components/Modules/Relatorios/RelBafometro.razor.rz.scp.css */
.bf-table[b-7m0g2r4zwi] {
    font-size: 0.82rem;
    white-space: nowrap;
}

.bf-col-endereco[b-7m0g2r4zwi] {
    white-space: normal;
    min-width: 200px;
}

/* ── Botão de mapa (mesmo padrão de RelVelocidade) ── */

.traj-btn-opcao[b-7m0g2r4zwi] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: .375rem;
    border: 1px solid var(--sg-primary, #2852A3);
    background: transparent;
    color: var(--sg-primary, #2852A3);
    font-size: .8125rem;
    cursor: pointer;
    transition: background .15s, color .15s;
}

.traj-btn-opcao:hover[b-7m0g2r4zwi] {
    background: var(--sg-primary, #2852A3);
    color: #fff;
}

/* ── Modal de mapa ── */

.vm-modal-backdrop[b-7m0g2r4zwi] {
    background: rgba(0, 0, 0, 0.5);
}

.vm-modal-backdrop .modal-body[b-7m0g2r4zwi] {
    border-radius: 0 0 0.375rem 0.375rem;
    overflow: hidden;
}
/* /Components/Modules/Relatorios/RelBalanca.razor.rz.scp.css */
/* ── Tabela principal ─────────────────────────────────── */

.bl-table th[b-hh2nlc4gmq],
.bl-table td[b-hh2nlc4gmq] {
    vertical-align: middle;
}

.bl-table th:nth-child(1)[b-hh2nlc4gmq],
.bl-table td:nth-child(1)[b-hh2nlc4gmq] { width: 10%; }

.bl-table th:nth-child(2)[b-hh2nlc4gmq],
.bl-table td:nth-child(2)[b-hh2nlc4gmq] { width: 12%; }

.bl-table th:nth-child(3)[b-hh2nlc4gmq],
.bl-table td:nth-child(3)[b-hh2nlc4gmq] { width: 12%; }

.bl-table th:nth-child(4)[b-hh2nlc4gmq],
.bl-table td:nth-child(4)[b-hh2nlc4gmq] { width: 7%; }

.bl-table th:nth-child(5)[b-hh2nlc4gmq],
.bl-table td:nth-child(5)[b-hh2nlc4gmq] { width: 10%; }

.bl-table th:nth-child(6)[b-hh2nlc4gmq],
.bl-table td:nth-child(6)[b-hh2nlc4gmq] { width: 14%; }

.bl-table th:nth-child(7)[b-hh2nlc4gmq],
.bl-table td:nth-child(7)[b-hh2nlc4gmq] { width: 11%; }

.bl-table th:nth-child(8)[b-hh2nlc4gmq],
.bl-table td:nth-child(8)[b-hh2nlc4gmq] { width: 12%; }

.bl-table th:nth-child(9)[b-hh2nlc4gmq],
.bl-table td:nth-child(9)[b-hh2nlc4gmq] { width: 12%; }

/* ── Linha de carregamento (clicável) ─────────────────── */

.bl-row-carregamento[b-hh2nlc4gmq] {
    cursor: pointer;
    background-color: #fff !important;
    transition: background-color 0.1s;
}

.bl-row-carregamento:hover[b-hh2nlc4gmq] {
    filter: brightness(0.96);
}

.bl-row-aberta[b-hh2nlc4gmq] {
    background-color: #f0f4ff !important;
}

/* ── Peso excedido ────────────────────────────────────── */

.bl-row-excedido[b-hh2nlc4gmq] {
    background-color: rgba(220, 53, 69, 0.1) !important;
}

.bl-peso-excedido[b-hh2nlc4gmq] {
    color: #dc3545;
    font-weight: 600;
}

/* ── Ícone expandir ───────────────────────────────────── */

.bl-expandir-icone[b-hh2nlc4gmq] {
    display: inline-block;
    font-size: 0.7rem;
    margin-right: 0.35rem;
    color: #9baabf;
    transition: transform 0.15s ease;
    vertical-align: middle;
}

.bl-expandir-icone.expandido[b-hh2nlc4gmq] {
    transform: rotate(90deg);
    color: var(--sg-primary, #2852A3);
}

/* ── Linha de pazadas ─────────────────────────────────── */

.bl-pazadas-row > td[b-hh2nlc4gmq] {
    background-color: #f8f9ff !important;
    border-top: none !important;
    padding: 0 !important;
}

.bl-pazadas-container[b-hh2nlc4gmq] {
    padding: 0.65rem 1.5rem 0.75rem 2.5rem;
    border-top: 1px solid #e2e8f0;
}

.bl-pazadas-header[b-hh2nlc4gmq] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--sg-primary, #2852A3);
    margin-bottom: 0.45rem;
}

.bl-pazadas-total[b-hh2nlc4gmq] {
    font-weight: 400;
    font-size: 0.75rem;
    color: #6b7280;
    margin-left: 0.25rem;
}

/* ── Tabela de pazadas ────────────────────────────────── */

.bl-pazadas-table[b-hh2nlc4gmq] {
    width: 55%;
    border-collapse: collapse;
    font-size: 0.78rem;
}

.bl-pazadas-table th[b-hh2nlc4gmq] {
    font-size: 0.71rem;
    font-weight: 600;
    color: #6b7280;
    padding: 0.2rem 0.6rem;
    border-bottom: 1px solid #e5e7eb;
    text-align: left;
}

.bl-pazadas-table td[b-hh2nlc4gmq] {
    padding: 0.25rem 0.6rem;
    border-bottom: 1px solid #f3f4f6;
    color: #374151;
}

.bl-pazadas-table tbody tr:last-child td[b-hh2nlc4gmq] {
    border-bottom: none;
}

/* /Components/Modules/Relatorios/RelControlePontos.razor.rz.scp.css */
/* Tabela geral */
.cp-table th[b-x1kqjbcff5],
.cp-table td[b-x1kqjbcff5] {
    vertical-align: middle;
    font-size: .85rem;
}

/* Linha sem saída registrada → amarelo suave */
.cp-row-sem-saida[b-x1kqjbcff5] {
    background-color: rgba(255, 193, 7, 0.07);
}

/* Linha com infração de velocidade → vermelho suave */
.cp-row-infracao[b-x1kqjbcff5] {
    background-color: rgba(220, 53, 69, 0.06);
}

/* Indicador textual de aviso (sem saída) */
.cp-aviso[b-x1kqjbcff5] {
    color: #b08800;
}

/* Indicador textual de infração */
.cp-infracao[b-x1kqjbcff5] {
    color: #dc3545;
    font-weight: 600;
}

/* Valor de velocidade em infração */
.cp-infracao-valor[b-x1kqjbcff5] {
    color: #dc3545;
    font-weight: 600;
}

/* Link para o mapa */
.cp-map-link[b-x1kqjbcff5] {
    color: inherit;
    text-decoration: none;
}
.cp-map-link:hover[b-x1kqjbcff5] {
    text-decoration: underline;
    color: #0d6efd;
}
/* /Components/Modules/Relatorios/RelDeslocamentosParadas.razor.rz.scp.css */
/* ── Multi-select input+button (mesmo padrão RelDistanciaPercorrida) ── */
.rv-placa-input-row[b-iuhz793w4x] {
    display: flex;
    gap: 0.4rem;
    align-items: flex-end;
}

.rv-placa-select-wrap[b-iuhz793w4x] {
    flex: 1;
    min-width: 0;
}

.rv-add-btn[b-iuhz793w4x] {
    flex-shrink: 0;
    margin-bottom: 0;
    align-self: flex-end;
}

    .rv-add-btn:disabled[b-iuhz793w4x] {
        cursor: not-allowed;
    }

/* ── Seção de tags selecionadas ─────────────────────────────────────── */
.rv-placas-selecionadas[b-iuhz793w4x] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 1rem;
}

.rv-placas-selecionadas-label[b-iuhz793w4x] {
    font-size: 0.82rem;
    color: #6c757d;
    font-weight: 500;
    white-space: nowrap;
}

.dp-label-sep[b-iuhz793w4x] {
    margin-left: 0.6rem;
}

.rv-placa-tag[b-iuhz793w4x] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.25rem 0.5rem 0.25rem 0.65rem;
    background-color: #e8edf8;
    color: #1e40af;
    border-radius: 50px;
    font-size: 0.8rem;
    font-weight: 500;
}

.rv-placa-tag-mot[b-iuhz793w4x] {
    background-color: #f0fdf4;
    color: #166534;
}

.rv-placa-tag-remove[b-iuhz793w4x] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    border: none;
    background: none;
    color: inherit;
    border-radius: 50%;
    font-size: 0.85rem;
    cursor: pointer;
    line-height: 1;
    transition: background-color 0.15s, color 0.15s;
}

.rv-placa-tag-remove:hover[b-iuhz793w4x] {
    background-color: currentColor;
    color: #fff;
}

/* ── Gráfico ─────────────────────────────────────────────────────────── */
.dp-grafico-section[b-iuhz793w4x] {
    padding: 0.75rem 1rem 0.25rem;
    width: 100%;
    min-width: 0;
    overflow: hidden;
}

/* ── Tabela ──────────────────────────────────────────────────────────── */
.dp-table[b-iuhz793w4x] { width: 100%; font-size: 0.82rem; }
.dp-table th[b-iuhz793w4x],
.dp-table td[b-iuhz793w4x] { vertical-align: middle; }

/* ── Badges de tipo ──────────────────────────────────────────────────── */
.dp-tipo[b-iuhz793w4x] {
    display: inline-block;
    padding: 0.1rem 0.4rem;
    border-radius: 4px;
    font-weight: 700;
    font-size: 0.72rem;
    letter-spacing: 0.02em;
    white-space: nowrap;
}
.dp-tipo-d[b-iuhz793w4x]  { background: #dbeafe; color: #1d4ed8; }
.dp-tipo-p[b-iuhz793w4x]  { background: #fee2e2; color: #b91c1c; }
.dp-tipo-lp[b-iuhz793w4x] { background: #fef9c3; color: #713f12; }
.dp-tipo-r[b-iuhz793w4x]  { background: #f3e8ff; color: #6b21a8; }

/* Linhas coloridas sutis por tipo */
.dp-row-p[b-iuhz793w4x]  { background-color: rgba(239, 68,  68,  .04); }
.dp-row-lp[b-iuhz793w4x] { background-color: rgba(245, 158, 11,  .04); }
.dp-row-r[b-iuhz793w4x]  { background-color: rgba(107, 33,  168, .03); }

/* ── Endereços ───────────────────────────────────────────────────────── */
.dp-endereco[b-iuhz793w4x] {
    max-width: 220px;
    white-space: normal;
    font-size: 0.78rem;
    line-height: 1.3;
}

/* ── Link mapa ───────────────────────────────────────────────────────── */
.dp-map-link[b-iuhz793w4x] { color: inherit; text-decoration: none; font-size: 0.78rem; }
.dp-map-link:hover[b-iuhz793w4x] { text-decoration: underline; color: #0d6efd; }

/* ── Dropdown Exibir ─────────────────────────────────────────────────── */
.dp-opcoes-dropdown[b-iuhz793w4x] { position: relative; }

.dp-opcoes-btn[b-iuhz793w4x] {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dp-opcoes-btn.dp-opcoes-aberto[b-iuhz793w4x] {
    border-color: #0d6efd;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.dp-opcoes-chevron[b-iuhz793w4x] {
    font-size: 0.7rem;
    margin-left: 0.4rem;
    flex-shrink: 0;
    transition: transform 0.15s ease;
}

.dp-opcoes-btn.dp-opcoes-aberto .dp-opcoes-chevron[b-iuhz793w4x] { transform: rotate(180deg); }

.dp-opcoes-panel[b-iuhz793w4x] {
    position: absolute;
    z-index: 500;
    top: calc(100% + 4px);
    left: 0;
    min-width: 180px;
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    padding: 0.5rem 0.75rem;
    box-shadow: 0 4px 16px rgba(0,0,0,.12);
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.dp-opcoes-panel .form-check-label[b-iuhz793w4x] { font-size: .875rem; cursor: pointer; }
/* /Components/Modules/Relatorios/RelDistanciaPercorrida.razor.rz.scp.css */
/* Linha com select + botão */
.rv-placa-input-row[b-7xx1nh2rmt] {
    display: flex;
    gap: 0.35rem;
    align-items: flex-end;
}

.rv-placa-select-wrap[b-7xx1nh2rmt] {
    flex: 1;
    min-width: 0;
}

/* Botão + alinhado com os inputs do filtro */
.rv-add-btn[b-7xx1nh2rmt] {
    width: calc(2.375rem + 2px);
    height: calc(2.05rem + 2px);
    flex-shrink: 0;
}

    .rv-add-btn:disabled[b-7xx1nh2rmt] {
        width: calc(2.375rem + 2px);
        height: calc(2.05rem + 2px);
        flex-shrink: 0;
    }

/* Seção de placas selecionadas */
.rv-placas-selecionadas[b-7xx1nh2rmt] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
    padding: 0.65rem 1rem;
}

.rv-placas-selecionadas-label[b-7xx1nh2rmt] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--color-text-muted, #6b7280);
    margin-right: 0.15rem;
    white-space: nowrap;
}

/* Tags de placas */
.rv-placa-tag[b-7xx1nh2rmt] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.15rem 0.5rem 0.15rem 0.6rem;
    background: var(--color-primary-light, #eff6ff);
    border: 1px solid var(--color-primary, #2563eb);
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--color-primary, #2563eb);
}

.rv-placa-tag-remove[b-7xx1nh2rmt] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    padding: 0;
    color: var(--color-primary, #2563eb);
    cursor: pointer;
    font-size: 0.85rem;
    line-height: 1;
    opacity: 0.7;
    transition: opacity 0.15s;
}

.rv-placa-tag-remove:hover[b-7xx1nh2rmt] {
    opacity: 1;
}

/* Seção do gráfico */
.dp-dist-grafico-section[b-7xx1nh2rmt] {
    padding: 0.75rem 1rem 0.5rem;
}

/* Tabela */
.dp-dist-table th[b-7xx1nh2rmt],
.dp-dist-table td[b-7xx1nh2rmt] {
    vertical-align: middle;
    font-size: .84rem;
}

/* Dia sem distância percorrida */
.dp-dist-row-zero[b-7xx1nh2rmt] { color: #9ca3af; }

/* Valor de km positivo */
.dp-dist-km[b-7xx1nh2rmt] { color: #1d4ed8; }

.dp-dist-table th:nth-child(1)[b-7xx1nh2rmt],
.dp-dist-table td:nth-child(1)[b-7xx1nh2rmt] { width: 12%; }

.dp-dist-table th:nth-child(2)[b-7xx1nh2rmt],
.dp-dist-table td:nth-child(2)[b-7xx1nh2rmt] { width: 18%; }

.dp-dist-table th:nth-child(3)[b-7xx1nh2rmt],
.dp-dist-table td:nth-child(3)[b-7xx1nh2rmt] { width: 18%; }

.dp-dist-table th:nth-child(4)[b-7xx1nh2rmt],
.dp-dist-table td:nth-child(4)[b-7xx1nh2rmt] { width: 15%; }

.dp-dist-table th:nth-child(5)[b-7xx1nh2rmt],
.dp-dist-table td:nth-child(5)[b-7xx1nh2rmt] { width: 15%; }

.dp-dist-table th:nth-child(6)[b-7xx1nh2rmt],
.dp-dist-table td:nth-child(6)[b-7xx1nh2rmt] { width: 22%; }
/* /Components/Modules/Relatorios/RelEntradasSaidas.razor.rz.scp.css */
/* ── Multi-select rv-* (mesmo padrão dos outros relatórios) ─────────── */
.rv-placa-input-row[b-ci7q5k2bzn] {
    display: flex;
    gap: 0.35rem;
    align-items: flex-end;
}

.rv-placa-select-wrap[b-ci7q5k2bzn] {
    flex: 1;
    min-width: 0;
}

/* Dimensões idênticas ao padrão de outros relatórios (RelDistanciaPercorrida) */
.rv-add-btn[b-ci7q5k2bzn] {
    width: calc(2.375rem + 2px);
    height: calc(2.05rem + 2px);
    flex-shrink: 0;
}

    .rv-add-btn:disabled[b-ci7q5k2bzn] {
        width: calc(2.375rem + 2px);
        height: calc(2.05rem + 2px);
        flex-shrink: 0;
        cursor: not-allowed;
    }

.rv-placas-selecionadas[b-ci7q5k2bzn] {
    display: flex; flex-wrap: wrap; align-items: center;
    gap: 0.4rem; padding: 0.5rem 1rem;
}
.rv-placas-selecionadas-label[b-ci7q5k2bzn] { font-size: .82rem; color: #6c757d; font-weight: 500; white-space: nowrap; }

.rv-placa-tag[b-ci7q5k2bzn] {
    display: inline-flex; align-items: center; gap: 0.3rem;
    padding: .25rem .5rem .25rem .65rem;
    background-color: #e8edf8; color: #1e40af;
    border-radius: 50px; font-size: .8rem; font-weight: 500;
}
.rv-placa-tag-remove[b-ci7q5k2bzn] {
    display: flex; align-items: center; justify-content: center;
    width: 18px; height: 18px; padding: 0; border: none;
    background: none; color: inherit; border-radius: 50%;
    font-size: .85rem; cursor: pointer; line-height: 1;
    transition: background-color .15s, color .15s;
}
.rv-placa-tag-remove:hover[b-ci7q5k2bzn] { background-color: #1e40af; color: #fff; }

/* ── Badges de tipo ──────────────────────────────────────────────────── */
.es-tipo[b-ci7q5k2bzn] {
    display: inline-block;
    padding: .15rem .5rem;
    border-radius: 4px;
    font-size: .78rem;
    font-weight: 600;
    white-space: nowrap;
}
.es-tipo-entrada[b-ci7q5k2bzn] { background: #dcfce7; color: #15803d; }
.es-tipo-saida[b-ci7q5k2bzn]   { background: #fee2e2; color: #b91c1c; }

/* Cores no resumo */
.es-entrada[b-ci7q5k2bzn] { color: #15803d; font-weight: 500; }
.es-saida[b-ci7q5k2bzn]   { color: #b91c1c; font-weight: 500; }

/* Linhas coloridas sutis */
.es-row-entrada[b-ci7q5k2bzn] { background-color: rgba(21, 128, 61,  .03); }
.es-row-saida[b-ci7q5k2bzn]   { background-color: rgba(185, 28, 28, .03); }

/* Tabela */
.es-table th[b-ci7q5k2bzn], .es-table td[b-ci7q5k2bzn] { vertical-align: middle; font-size: .83rem; }

.es-endereco[b-ci7q5k2bzn] { font-size: .78rem; max-width: 200px; white-space: normal; }

/* Link mapa */
.es-map-link[b-ci7q5k2bzn] { color: #6c757d; text-decoration: none; font-size: .78rem; }
.es-map-link:hover[b-ci7q5k2bzn] { color: #0d6efd; text-decoration: underline; }
/* /Components/Modules/Relatorios/RelEstoqueEquipamentos.razor.rz.scp.css */
/* Tabela */
.ee-table th[b-kkvz9vtm92],
.ee-table td[b-kkvz9vtm92] {
    vertical-align: middle;
    font-size: 0.72rem !important;
}

.ee-table thead th[b-kkvz9vtm92] {
    font-size: 0.71rem !important;
}

.ee-table th:nth-child(1)[b-kkvz9vtm92],
.ee-table td:nth-child(1)[b-kkvz9vtm92] { width: 8%; }

.ee-table th:nth-child(2)[b-kkvz9vtm92],
.ee-table td:nth-child(2)[b-kkvz9vtm92] { width: 10%; }

.ee-table th:nth-child(3)[b-kkvz9vtm92],
.ee-table td:nth-child(3)[b-kkvz9vtm92] { width: 7%; }

.ee-table th:nth-child(4)[b-kkvz9vtm92],
.ee-table td:nth-child(4)[b-kkvz9vtm92] { width: 7%; }

.ee-table th:nth-child(5)[b-kkvz9vtm92],
.ee-table td:nth-child(5)[b-kkvz9vtm92] { width: 11%; }

.ee-table th:nth-child(6)[b-kkvz9vtm92],
.ee-table td:nth-child(6)[b-kkvz9vtm92] { width: 10%; }

.ee-table th:nth-child(7)[b-kkvz9vtm92],
.ee-table td:nth-child(7)[b-kkvz9vtm92] { width: 10%; }

.ee-table th:nth-child(8)[b-kkvz9vtm92],
.ee-table td:nth-child(8)[b-kkvz9vtm92] { width: 8%; }

.ee-table th:nth-child(9)[b-kkvz9vtm92],
.ee-table td:nth-child(9)[b-kkvz9vtm92] { width: 9%; }

.ee-table th:nth-child(10)[b-kkvz9vtm92],
.ee-table td:nth-child(10)[b-kkvz9vtm92] { width: 11%; }

.ee-table th:nth-child(11)[b-kkvz9vtm92],
.ee-table td:nth-child(11)[b-kkvz9vtm92] { width: 8%; }
/* /Components/Modules/Relatorios/RelHodometro.razor.rz.scp.css */
/* ── Multi-select (rv-* padrão) ──────────────────────────────────────── */
.rv-placa-input-row[b-i0zes0q0ae] { display: flex; gap: 0.4rem; align-items: flex-end; }
.rv-placa-select-wrap[b-i0zes0q0ae] { flex: 1; min-width: 0; }
.rv-add-btn[b-i0zes0q0ae] { flex-shrink: 0; margin-bottom: 0; align-self: flex-end; }
.rv-add-btn:disabled[b-i0zes0q0ae] { cursor: not-allowed; }

.rv-placas-selecionadas[b-i0zes0q0ae] {
    display: flex; flex-wrap: wrap; align-items: center;
    gap: 0.4rem; padding: 0.5rem 1rem;
}
.rv-placas-selecionadas-label[b-i0zes0q0ae] { font-size: .82rem; color: #6c757d; font-weight: 500; white-space: nowrap; }

.rv-placa-tag[b-i0zes0q0ae] {
    display: inline-flex; align-items: center; gap: 0.3rem;
    padding: .25rem .5rem .25rem .65rem;
    background-color: #e8edf8; color: #1e40af;
    border-radius: 50px; font-size: .8rem; font-weight: 500;
}
.rv-placa-tag-remove[b-i0zes0q0ae] {
    display: flex; align-items: center; justify-content: center;
    width: 18px; height: 18px; padding: 0; border: none;
    background: none; color: inherit; border-radius: 50%;
    font-size: .85rem; cursor: pointer; line-height: 1;
    transition: background-color .15s, color .15s;
}
.rv-placa-tag-remove:hover[b-i0zes0q0ae] { background-color: #1e40af; color: #fff; }

/* ── Tabela ──────────────────────────────────────────────────────────── */
.hd-table th[b-i0zes0q0ae], .hd-table td[b-i0zes0q0ae] { vertical-align: middle; font-size: .84rem; }

/* Cabeçalho de veículo */
.hd-row-veiculo[b-i0zes0q0ae] {
    background-color: #f0f4ff;
    border-top: 2px solid #c7d6f7;
}
.hd-veiculo-total[b-i0zes0q0ae] {
    margin-left: 1rem; font-size: .78rem; color: #5c73a8; font-weight: 400;
}

/* Dia sem distância */
.hd-row-zerado[b-i0zes0q0ae] { color: #9ca3af; }

/* Valor km positivo */
.hd-km-positivo[b-i0zes0q0ae] { color: #1d4ed8; }

/* Resumo — linha clicável */
.hd-row-resumo[b-i0zes0q0ae] { cursor: pointer; }
.hd-row-resumo:hover[b-i0zes0q0ae] { background-color: #f8faff; }
.hd-row-expandida[b-i0zes0q0ae] { background-color: #eef3ff; }

/* Ícone expandir */
.bl-expandir-icone[b-i0zes0q0ae] { transition: transform .2s ease; display: inline-block; font-size: .75rem; color: #6c757d; }
.bl-expandir-icone.expandido[b-i0zes0q0ae] { transform: rotate(90deg); }

/* Detalhe expandido */
.hd-detalhe-row td[b-i0zes0q0ae] { padding: 0 !important; }
.hd-detalhe-container[b-i0zes0q0ae] { padding: .5rem 1.5rem .75rem 3rem; background: #f8faff; border-top: 1px solid #d1daf8; }
.hd-detalhe-table[b-i0zes0q0ae] { width: 100%; font-size: .8rem; border-collapse: collapse; }
.hd-detalhe-table th[b-i0zes0q0ae] {
    color: #6b7280; font-weight: 600; font-size: .75rem;
    text-transform: uppercase; letter-spacing: .03em;
    padding: .3rem .5rem; border-bottom: 1px solid #dce4f5;
}
.hd-detalhe-table td[b-i0zes0q0ae] { padding: .3rem .5rem; }

/* Linha de total geral */
.hd-row-total[b-i0zes0q0ae] { background-color: #e8edf8; border-top: 2px solid #b0c0e8; font-weight: 600; }
/* /Components/Modules/Relatorios/RelHorimetro.razor.rz.scp.css */
/* ── Multi-select (mesmo padrão rv-* de RelDeslocamentosParadas) ────── */
.rv-placa-input-row[b-hoy3vz8vbt] {
    display: flex;
    gap: 0.4rem;
    align-items: flex-end;
}

.rv-placa-select-wrap[b-hoy3vz8vbt] {
    flex: 1;
    min-width: 0;
}

.rv-add-btn[b-hoy3vz8vbt] {
    flex-shrink: 0;
    margin-bottom: 0;
    align-self: flex-end;
}

    .rv-add-btn:disabled[b-hoy3vz8vbt] { cursor: not-allowed; }

.rv-placas-selecionadas[b-hoy3vz8vbt] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 1rem;
}

.rv-placas-selecionadas-label[b-hoy3vz8vbt] {
    font-size: 0.82rem;
    color: #6c757d;
    font-weight: 500;
    white-space: nowrap;
}

.rv-placa-tag[b-hoy3vz8vbt] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.25rem 0.5rem 0.25rem 0.65rem;
    background-color: #e8edf8;
    color: #1e40af;
    border-radius: 50px;
    font-size: 0.8rem;
    font-weight: 500;
}

.rv-placa-tag-remove[b-hoy3vz8vbt] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    border: none;
    background: none;
    color: inherit;
    border-radius: 50%;
    font-size: 0.85rem;
    cursor: pointer;
    line-height: 1;
    transition: background-color 0.15s, color 0.15s;
}

.rv-placa-tag-remove:hover[b-hoy3vz8vbt] {
    background-color: #1e40af;
    color: #fff;
}

/* ── Tabela base ─────────────────────────────────────────────────────── */
.hr-table th[b-hoy3vz8vbt],
.hr-table td[b-hoy3vz8vbt] { vertical-align: middle; font-size: .84rem; }

/* Cabeçalho de veículo (modo Detalhe) */
.hr-row-veiculo[b-hoy3vz8vbt] {
    background-color: #f0f4ff;
    border-top: 2px solid #c7d6f7;
}
.hr-row-veiculo td[b-hoy3vz8vbt] { font-size: .83rem; }

.hr-veiculo-total[b-hoy3vz8vbt] {
    margin-left: 1rem;
    font-size: .78rem;
    color: #5c73a8;
    font-weight: 400;
}

/* Linha sem horímetro (dia sem transmissão) */
.hr-row-zerado[b-hoy3vz8vbt] { color: #9ca3af; }

/* Valor de ignição com movimento */
.hr-total-positivo[b-hoy3vz8vbt] { color: #1d4ed8; }

/* Linha de resumo – clicável */
.hr-row-resumo[b-hoy3vz8vbt] { cursor: pointer; }
.hr-row-resumo:hover[b-hoy3vz8vbt] { background-color: #f8faff; }
.hr-row-expandida[b-hoy3vz8vbt] { background-color: #eef3ff; }

/* Ícone de expandir */
.bl-expandir-icone[b-hoy3vz8vbt] {
    transition: transform .2s ease;
    display: inline-block;
    font-size: .75rem;
    color: #6c757d;
}
.bl-expandir-icone.expandido[b-hoy3vz8vbt] { transform: rotate(90deg); }

/* Container de detalhe expandido */
.hr-detalhe-row td[b-hoy3vz8vbt] { padding: 0 !important; }
.hr-detalhe-container[b-hoy3vz8vbt] {
    padding: .5rem 1.5rem .75rem 3rem;
    background: #f8faff;
    border-top: 1px solid #d1daf8;
}
.hr-detalhe-table[b-hoy3vz8vbt] { width: 100%; font-size: .8rem; border-collapse: collapse; }
.hr-detalhe-table th[b-hoy3vz8vbt] {
    color: #6b7280;
    font-weight: 600;
    font-size: .75rem;
    text-transform: uppercase;
    letter-spacing: .03em;
    padding: .3rem .5rem;
    border-bottom: 1px solid #dce4f5;
}
.hr-detalhe-table td[b-hoy3vz8vbt] { padding: .3rem .5rem; }

/* Linha de total geral */
.hr-row-total[b-hoy3vz8vbt] {
    background-color: #e8edf8;
    border-top: 2px solid #b0c0e8;
    font-weight: 600;
}
/* /Components/Modules/Relatorios/RelLogs.razor.rz.scp.css */
.logs-table-wrapper[b-tied8zug9l] {
    overflow-x: auto;
}

.logs-table[b-tied8zug9l] {
    font-size: 0.8rem;
}

    .logs-table thead th[b-tied8zug9l] {
        font-size: 0.75rem;
    }

.logs-col-data[b-tied8zug9l] {
    white-space: nowrap;
}

.logs-col-registro[b-tied8zug9l] {
    white-space: normal;
    min-width: 220px;
}
/* /Components/Modules/Relatorios/RelPainelTemperatura.razor.rz.scp.css */
/* Tabela */
.pt-table th[b-5h6236yp02],
.pt-table td[b-5h6236yp02] {
    vertical-align: middle;
}

.pt-table th:nth-child(1)[b-5h6236yp02],
.pt-table td:nth-child(1)[b-5h6236yp02] { width: 16%; }

.pt-table th:nth-child(2)[b-5h6236yp02],
.pt-table td:nth-child(2)[b-5h6236yp02] { width: 10%; }

.pt-table th:nth-child(3)[b-5h6236yp02],
.pt-table td:nth-child(3)[b-5h6236yp02] { width: 7%; }

.pt-table th:nth-child(4)[b-5h6236yp02],
.pt-table td:nth-child(4)[b-5h6236yp02] { width: 7%; }

.pt-table th:nth-child(5)[b-5h6236yp02],
.pt-table td:nth-child(5)[b-5h6236yp02] { width: 7%; }

.pt-table th:nth-child(6)[b-5h6236yp02],
.pt-table td:nth-child(6)[b-5h6236yp02] { width: 7%; }

.pt-table th:nth-child(7)[b-5h6236yp02],
.pt-table td:nth-child(7)[b-5h6236yp02] { width: 38%; }

.pt-table th:nth-child(8)[b-5h6236yp02],
.pt-table td:nth-child(8)[b-5h6236yp02] { width: 8%; }

/* Alerta de temperatura fora do intervalo */
.pt-row-alerta[b-5h6236yp02] {
    background-color: rgba(220, 53, 69, 0.1) !important;
}

.pt-temp-alerta[b-5h6236yp02] {
    color: #dc3545;
    font-weight: 600;
}

/* Contador de alertas no resumo */
.pt-resumo-alerta[b-5h6236yp02] {
    color: #dc3545;
    font-weight: 600;
}
/* /Components/Modules/Relatorios/RelTelemetria.razor.rz.scp.css */
/* Tabela */
.tel-table th[b-ty9i7c9iwv],
.tel-table td[b-ty9i7c9iwv] {
    vertical-align: middle;
}

.tel-table th:nth-child(1)[b-ty9i7c9iwv],
.tel-table td:nth-child(1)[b-ty9i7c9iwv] { width: 8%; }

.tel-table th:nth-child(2)[b-ty9i7c9iwv],
.tel-table td:nth-child(2)[b-ty9i7c9iwv] { width: 11%; }

.tel-table th:nth-child(3)[b-ty9i7c9iwv],
.tel-table td:nth-child(3)[b-ty9i7c9iwv] { width: 15%; }

.tel-table th:nth-child(4)[b-ty9i7c9iwv],
.tel-table td:nth-child(4)[b-ty9i7c9iwv] { width: 13%; }

.tel-table th:nth-child(5)[b-ty9i7c9iwv],
.tel-table td:nth-child(5)[b-ty9i7c9iwv] { width: 13%; }

.tel-table th:nth-child(6)[b-ty9i7c9iwv],
.tel-table td:nth-child(6)[b-ty9i7c9iwv] { width: 24%; }

.tel-table th:nth-child(7)[b-ty9i7c9iwv],
.tel-table td:nth-child(7)[b-ty9i7c9iwv] { width: 6%; }

.tel-table th:nth-child(8)[b-ty9i7c9iwv],
.tel-table td:nth-child(8)[b-ty9i7c9iwv] { width: 7%; }

.tel-table th:nth-child(9)[b-ty9i7c9iwv],
.tel-table td:nth-child(9)[b-ty9i7c9iwv] { width: 5%; }

/* ── Dropdown de tipos de evento ──────────────────────── */

.tel-tipos-wrap[b-ty9i7c9iwv] {
    position: relative;
}

.tel-tipos-toggle[b-ty9i7c9iwv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
    width: 100%;
    padding: 0.375rem 0.75rem;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    border: 1px solid #ced4da;
    border-radius: 0.375rem;
    cursor: pointer;
    user-select: none;
    overflow: hidden;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.tel-tipos-toggle:focus[b-ty9i7c9iwv] {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.tel-tipos-texto[b-ty9i7c9iwv] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
}

.tel-tipos-chevron[b-ty9i7c9iwv] {
    font-size: 0.7rem;
    transition: transform 0.15s;
    flex-shrink: 0;
    margin-left: 0.3rem;
}

.tel-tipos-chevron.aberto[b-ty9i7c9iwv] {
    transform: rotate(180deg);
}

.tel-tipos-panel[b-ty9i7c9iwv] {
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    min-width: 210px;
    z-index: 1050;
    background: #fff;
    border: 1px solid #ced4da;
    border-radius: 0.375rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    padding: 0.3rem 0;
}

.tel-tipos-acoes[b-ty9i7c9iwv] {
    display: flex;
    gap: 0.5rem;
    padding: 0.3rem 0.75rem 0.4rem;
    border-bottom: 1px solid #f0f0f0;
}

.tel-tipos-link[b-ty9i7c9iwv] {
    background: none;
    border: none;
    padding: 0;
    font-size: 0.75rem;
    color: var(--sg-primary, #2852A3);
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.tel-tipos-link:hover[b-ty9i7c9iwv] {
    opacity: 0.75;
}

.tel-tipos-item[b-ty9i7c9iwv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.3rem 0.75rem;
    font-size: 0.82rem;
    cursor: pointer;
    white-space: nowrap;
}

.tel-tipos-item:hover[b-ty9i7c9iwv] {
    background: #f5f7fa;
}

.tel-tipos-item input[type="checkbox"][b-ty9i7c9iwv] {
    cursor: pointer;
    flex-shrink: 0;
}

/* ── Placa multi-select (mesmo padrão de RelVelocidade) ── */

.rv-placa-input-row[b-ty9i7c9iwv] {
    display: flex;
    gap: 0.35rem;
    align-items: flex-end;
}

.rv-placa-select-wrap[b-ty9i7c9iwv] {
    flex: 1;
    min-width: 0;
}

.rv-add-btn[b-ty9i7c9iwv] {
    width: calc(2.375rem + 2px);
    height: calc(2.1rem + 2px);
    flex-shrink: 0;
}

.rv-add-btn:disabled[b-ty9i7c9iwv] {
    width: calc(2.375rem + 2px);
    height: calc(2.1rem + 2px);
    flex-shrink: 0;
}

.rv-placas-selecionadas[b-ty9i7c9iwv] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
    padding: 0.65rem 1rem;
}

.rv-placas-selecionadas-label[b-ty9i7c9iwv] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--color-text-muted, #6b7280);
    margin-right: 0.15rem;
    white-space: nowrap;
}

.rv-placa-tag[b-ty9i7c9iwv] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.15rem 0.5rem 0.15rem 0.6rem;
    background: var(--color-primary-light, #eff6ff);
    border: 1px solid var(--color-primary, #2563eb);
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--color-primary, #2563eb);
}

.rv-placa-tag-remove[b-ty9i7c9iwv] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    padding: 0;
    color: var(--color-primary, #2563eb);
    cursor: pointer;
    font-size: 0.85rem;
    line-height: 1;
    opacity: 0.7;
    transition: opacity 0.15s;
}

.rv-placa-tag-remove:hover[b-ty9i7c9iwv] {
    opacity: 1;
}

/* ── Botão de visualizar no mapa ──────────────────────── */

.traj-btn-opcao[b-ty9i7c9iwv] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: .375rem;
    border: 1px solid var(--sg-primary, #2852A3);
    background: transparent;
    color: var(--sg-primary, #2852A3);
    font-size: .8125rem;
    cursor: pointer;
    transition: background .15s, color .15s;
}

.traj-btn-opcao:hover[b-ty9i7c9iwv] {
    background: var(--sg-primary, #2852A3);
    color: #fff;
}
/* /Components/Modules/Relatorios/RelTransmissaoEquipamento.razor.rz.scp.css */
/* ── Ações do resultado ───────────────────────────── */

.transm-acoes[b-xjo6wq44i6] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

/* ── Botão Buzzer ─────────────────────────────────── */

.btn-buzzer[b-xjo6wq44i6] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.35rem 0.9rem;
    border-radius: 6px;
    border: none;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.15s, color 0.15s;
}

.btn-buzzer-enviar[b-xjo6wq44i6] {
    background-color: var(--sg-primary);
    color: #fff;
}

    .btn-buzzer-enviar:hover[b-xjo6wq44i6] {
        background-color: var(--sg-primary-dark, #03327a);
    }

.btn-buzzer-parar[b-xjo6wq44i6] {
    background-color: #dc3545;
    color: #fff;
}

    .btn-buzzer-parar:hover[b-xjo6wq44i6] {
        background-color: #b02a37;
    }

/* ── Tabela de registros ──────────────────────────── */

.transm-table-wrapper[b-xjo6wq44i6] {
    overflow-x: auto;
}

.transm-table[b-xjo6wq44i6] {
    font-size: 0.7rem;
    white-space: nowrap;
}

    .transm-table thead th[b-xjo6wq44i6] {
        font-size: 0.67rem;
    }

.transm-col-local[b-xjo6wq44i6] {
    white-space: normal;
    min-width: 180px;
}

/* Indicador booleano (Sinal GPS, Saída/Entrada) */
.transm-bool[b-xjo6wq44i6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.7rem;
    height: 1.7rem;
    border-radius: 50%;
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: .02em;
    color: #fff;
}

.transm-bool.sim[b-xjo6wq44i6] { background: #22c55e; }
.transm-bool.nao[b-xjo6wq44i6] { background: #94a3b8; }

/* ── Botão Vincular ───────────────────────────────── */

.btn-vincular[b-xjo6wq44i6] {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    padding: 0.15rem 0.45rem;
    border-radius: 20px;
    border: none;
    background-color: #dce8f8;
    color: var(--sg-primary);
    font-size: 0.75rem;
    font-weight: 500;
    cursor: pointer;
    white-space: nowrap;
    transition: background-color var(--sg-transition), color var(--sg-transition);
}

    .btn-vincular:hover[b-xjo6wq44i6] {
        background-color: var(--sg-primary);
        color: #fff;
    }

.btn-vincular-lg[b-xjo6wq44i6] {
    padding: 0.35rem 0.9rem;
    border-radius: 6px;
    font-size: 0.875rem;
}
/* /Components/Modules/Relatorios/RelVeiculoSemContrato.razor.rz.scp.css */
/* Barra de ações */
.vsc-toolbar[b-dko3c9jdso] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0 0.65rem 0;
}

/* Tabela */
.vsc-table th[b-dko3c9jdso],
.vsc-table td[b-dko3c9jdso] {
    vertical-align: middle;
    font-size: 0.82rem;
}

.vsc-col-check[b-dko3c9jdso] {
    width: 40px;
}

/* Linha selecionada */
.vsc-row-sel[b-dko3c9jdso] {
    background: #f0f6ff;
}
/* /Components/Modules/Relatorios/RelVelocidade.razor.rz.scp.css */
/* Botão de ação na tabela (mesmo estilo de Trajetos) */
.traj-btn-opcao[b-qrdt5qu75i] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: .375rem;
    border: 1px solid var(--sg-primary, #2852A3);
    background: transparent;
    color: var(--sg-primary, #2852A3);
    font-size: .8125rem;
    cursor: pointer;
    transition: background .15s, color .15s;
}

.traj-btn-opcao:hover[b-qrdt5qu75i] {
    background: var(--sg-primary, #2852A3);
    color: #fff;
}

/* Linha com select + botões */
.rv-placa-input-row[b-qrdt5qu75i] {
    display: flex;
    gap: 0.35rem;
    align-items: flex-end;
}

.rv-placa-select-wrap[b-qrdt5qu75i] {
    flex: 1;
    min-width: 0;
}

/* Ajusta o botão + para ter o mesmo tamanho dos inputs do filtro */
.rv-add-btn[b-qrdt5qu75i] {
    width: calc(2.375rem + 2px);
    height: calc(2.1rem + 2px);
    flex-shrink: 0;
}

.rv-add-btn:disabled[b-qrdt5qu75i] {
    width: calc(2.375rem + 2px);
    height: calc(2.1rem + 2px);
    flex-shrink: 0;
}


/* Seção de placas selecionadas (abaixo dos filtros) */
.rv-placas-selecionadas[b-qrdt5qu75i] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
    padding: 0.65rem 1rem;
}

.rv-placas-selecionadas-label[b-qrdt5qu75i] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--color-text-muted, #6b7280);
    margin-right: 0.15rem;
    white-space: nowrap;
}

/* Tags de placas selecionadas */
.rv-placas-tags[b-qrdt5qu75i] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
}

.rv-placa-tag[b-qrdt5qu75i] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.15rem 0.5rem 0.15rem 0.6rem;
    background: var(--color-primary-light, #eff6ff);
    border: 1px solid var(--color-primary, #2563eb);
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--color-primary, #2563eb);
}

.rv-placa-tag-remove[b-qrdt5qu75i] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    padding: 0;
    color: var(--color-primary, #2563eb);
    cursor: pointer;
    font-size: 0.85rem;
    line-height: 1;
    opacity: 0.7;
    transition: opacity 0.15s;
}

.rv-placa-tag-remove:hover[b-qrdt5qu75i] {
    opacity: 1;
}

/* Velocidade excedida — destaque em vermelho */
.rv-vel-excedida[b-qrdt5qu75i] { color: #b91c1c; }
/* /Components/Modules/Relatorios/RelViagemMonitriip.razor.rz.scp.css */
/* ── Botão Retorno ANTT — mesma altura do btn-relatorio-buscar ── */
.btn-retorno-antt[b-s5wf3vst2v] {
    height: calc(0.925rem * 1.5 + 0.64rem + 2px);
    padding: 0 18px;
    border-radius: var(--sg-radius-sm, 6px);
    border: none;
    background: #28a745;
    color: #fff;
    font-size: 0.84rem;
    font-weight: 500;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s, box-shadow 0.15s;
    align-self: flex-end;
}

.btn-retorno-antt:hover[b-s5wf3vst2v] {
    background: #218838;
    box-shadow: 0 2px 8px rgba(40,167,69,.35);
}

.btn-retorno-antt.ativo[b-s5wf3vst2v] {
    background: #155724;
}

/* ── Campo de data sem ícone de calendário ────────── */
input[type="date"][b-s5wf3vst2v]::-webkit-calendar-picker-indicator {
    display: none;
}

/* ── Painel Retorno ANTT ──────────────────────────── */
.vm-antt-panel[b-s5wf3vst2v] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    margin: 0 0 12px 0;
    padding: 16px 24px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.vm-antt-vazio[b-s5wf3vst2v] {
    font-size: 0.82rem;
    color: #94a3b8;
    font-style: italic;
}

/* ── Tabela interna ANTT ──────────────────────────── */
.vm-antt-table[b-s5wf3vst2v] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    overflow: hidden;
}

/* Linha de título colorida (Sucesso / Erros) */
.vm-antt-thead-sucesso th[b-s5wf3vst2v] {
    background: #1d6fc4;
    color: #fff;
    font-weight: 700;
    font-size: 0.83rem;
    padding: 7px 10px;
    letter-spacing: 0.02em;
    border-bottom: none;
}

.vm-antt-thead-erro th[b-s5wf3vst2v] {
    background: #dc3545;
    color: #fff;
    font-weight: 700;
    font-size: 0.83rem;
    padding: 7px 10px;
    letter-spacing: 0.02em;
    border-bottom: none;
}

/* Linha de cabeçalho das colunas */
.vm-antt-table thead tr:last-child th[b-s5wf3vst2v] {
    padding: 6px 10px;
    font-weight: 600;
    color: #374151;
    background: #f1f5f9;
    border-bottom: 1px solid #e2e8f0;
    white-space: nowrap;
}

.vm-antt-table td[b-s5wf3vst2v] {
    padding: 5px 10px;
    color: #4b5563;
    border-bottom: 1px solid #f1f5f9;
    vertical-align: top;
}

.vm-antt-table tbody tr:last-child td[b-s5wf3vst2v] { border-bottom: none; }
.vm-antt-table tbody tr:hover td[b-s5wf3vst2v]     { background: #f1f5f9; }

.vm-antt-transacao[b-s5wf3vst2v] {
    font-family: monospace;
    font-size: 0.78rem;
    color: #64748b;
    white-space: nowrap;
}

/* ── Modal mapa ──────────────────────────────────── */
.vm-modal-backdrop[b-s5wf3vst2v] {
    background: rgba(0, 0, 0, 0.5);
}

.vm-modal-backdrop .modal-body[b-s5wf3vst2v] {
    border-radius: 0 0 0.375rem 0.375rem;
    overflow: hidden;
}

/* ── Tabela de registros GPS ──────────────────────── */
.vm-registros-table th[b-s5wf3vst2v] { font-size: 0.72rem; }
.vm-registros-table td[b-s5wf3vst2v] { font-size: 0.78rem; }

.vm-tipo[b-s5wf3vst2v] { font-weight: 500; }
.vm-tipo-abertura[b-s5wf3vst2v]     { color: #2563eb; }
.vm-tipo-encerramento[b-s5wf3vst2v] { color: #7c3aed; }
.vm-tipo-evento[b-s5wf3vst2v]       { color: #d97706; }

.vm-icone-btn[b-s5wf3vst2v] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    color: var(--sg-primary);
    cursor: pointer;
    padding: 2px 4px;
    font-size: 1rem;
    border-radius: 4px;
    text-decoration: none;
    transition: color 0.15s, background 0.15s;
}

.vm-icone-btn:hover[b-s5wf3vst2v] {
    color: var(--sg-primary, #2852A3);
    background: #eff6ff;
}

.vm-coord[b-s5wf3vst2v] {
    font-size: 0.78rem;
    font-family: monospace;
    color: #64748b;
    white-space: nowrap;
}
/* /Components/Shared/Campos/CepInput.razor.rz.scp.css */
.cep-search-btn[b-2pnjqmz4p3] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 12px;
    border: 1px solid #ced4da;
    border-left: none;
    border-radius: 0 4px 4px 0;
    background: transparent;
    color: var(--sg-primary);
    cursor: pointer;
    transition: background var(--sg-transition), color var(--sg-transition);
}

    .cep-search-btn:hover[b-2pnjqmz4p3] {
        background: var(--sg-primary);
        color: white;
    }
/* /Components/Shared/Campos/SearchSelectMultiInput.razor.rz.scp.css */

.ssm-div[b-xesfqabjyz] {
    margin-bottom: 0.7rem;
}

/* Linha input + botão + */
.ssm-row[b-xesfqabjyz] {
    display: flex;
    gap: 0.4rem;
    align-items: flex-start;
}

.ssm-input-wrapper[b-xesfqabjyz] {
    flex: 1;
    min-width: 0;
}

/* Botão + */
.ssm-add-btn[b-xesfqabjyz] {
    flex-shrink: 0;
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--sg-primary);
    color: #fff;
    border: none;
    border-radius: 0.375rem;
    font-size: 1rem;
    cursor: pointer;
    transition: background-color var(--sg-transition);
    padding: 0;
}

    .ssm-add-btn:hover:not(:disabled)[b-xesfqabjyz] {
        background-color: var(--sg-primary-mid);
    }

    .ssm-add-btn:disabled[b-xesfqabjyz] {
        background-color: #adb5bd;
        cursor: not-allowed;
    }

/* Tags de itens selecionados */
.ssm-tags[b-xesfqabjyz] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.5rem;
}

.ssm-tag[b-xesfqabjyz] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.25rem 0.5rem 0.25rem 0.65rem;
    background-color: #e8edf8;
    color: var(--sg-primary-dark);
    border-radius: 50px;
    font-size: 0.8rem;
    font-weight: 500;
}

.ssm-tag-remove[b-xesfqabjyz] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    border: none;
    background: none;
    color: var(--sg-primary);
    border-radius: 50%;
    font-size: 0.85rem;
    cursor: pointer;
    line-height: 1;
    transition: background-color var(--sg-transition), color var(--sg-transition);
}

    .ssm-tag-remove:hover[b-xesfqabjyz] {
        background-color: var(--sg-primary);
        color: #fff;
    }
/* /Components/Shared/DateTimeInput.razor.rz.scp.css */
input[type="date"][b-km1drq110l],
input[type="datetime-local"][b-km1drq110l] {
    appearance: auto !important;
    -webkit-appearance: auto !important;
}

input[type="date"][b-km1drq110l]::-webkit-calendar-picker-indicator,
input[type="datetime-local"][b-km1drq110l]::-webkit-calendar-picker-indicator {
    display: block !important;
    cursor: pointer;
    opacity: 0.5;
}
/* /Components/Shared/Modal/AvisoModal.razor.rz.scp.css */
/* estilos em app.css */
/* /Components/Shared/Modal/ConfirmacaoModal.razor.rz.scp.css */
/* estilos em app.css */
/* /Components/Shared/Modal/SucessoModal.razor.rz.scp.css */
/* estilos em app.css */
/* /Components/Shared/Paginacao/BackButton.razor.rz.scp.css */
.sg-back-btn[b-kv8988ohqk] {
    position: absolute;
    top: 25px;
    left: 25px;
    font-size: 35px;
    cursor: pointer;
    color: var(--sg-primary);
    font-weight: bold;
    transition: 0.2s;
    text-decoration: none;
}

.sg-back-btn:hover[b-kv8988ohqk] {
    transform: translateX(-3px);
}
/* /Components/Shared/Paginacao/PageCard.razor.rz.scp.css */
.sg-card[b-750a9q1h9g] {
    background: white;
    border-radius: var(--sg-radius-lg);
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
    padding: 24px 32px;
    margin-bottom: 24px;
}

.sg-card-header h2[b-750a9q1h9g] {
    color: var(--sg-primary-dark);
    font-size: 1.2rem;
    font-weight: 600;
    margin: 0;
}

.sg-card-divider[b-750a9q1h9g] {
    height: 2px;
    background: linear-gradient(90deg, var(--sg-primary), transparent);
    margin: 10px 0 16px;
}
/* /Components/Shared/Paginacao/PageHeader.razor.rz.scp.css */
.sg-page-header h1[b-dbx0pyz0gu] {
    color: var(--sg-primary-dark);
    font-size: 1.4rem;
    font-weight: 600;
    margin: 0;
}

.sg-page-header h2[b-dbx0pyz0gu] {
    color: var(--sg-primary-dark);
    font-size: 0.95rem;
    font-weight: 400;
    margin-top: 4px;
    margin-bottom: 0;
}

.sg-divider[b-dbx0pyz0gu] {
    height: 2px;
    width: 75%;
    background: linear-gradient(90deg, transparent, rgba(0, 140, 255, 0.6), transparent);
    margin: 14px auto;
}
/* /Components/Shared/Paginacao/PrimaryButton.razor.rz.scp.css */
.sg-btn[b-q863za62b7] {
    padding: 12px;
    border-radius: var(--sg-radius-md);
    border: none;
    cursor: pointer;
    background: linear-gradient(90deg, var(--sg-primary-dark), var(--sg-primary-mid), var(--sg-primary));
    color: white;
    font-weight: 500;
    font-size: 1rem;
    transition: var(--sg-transition);
    margin-top: 10px;
}

.sg-btn:hover[b-q863za62b7] {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.25);
}
