/* /Layout/HomeLayout.razor.rz.scp.css */
body[b-l12opfql4r] {
    margin: 0;
    padding: 0;
    background-color: black;
    color: white;
    font-family: Arial, sans-serif;
}

.container[b-l12opfql4r] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    justify-content: space-between;
}

.header[b-l12opfql4r] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 10px;
}

    .header h1[b-l12opfql4r] {
        margin: 0;
    }

.link[b-l12opfql4r] {
    color: #e94e1b;
    text-decoration: none;
    font-size: 16px;
    margin-left: auto;  Adiciona margem automática à esquerda para empurrar o link para a direita 
}

.main-content[b-l12opfql4r] {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1;
}

.footer[b-l12opfql4r] {
    text-align: center;
    padding: 10px 0;
}

/*body {
    margin: 0 !important;
    padding: 0 !important;
    background-color: black !important;
    color: white !important;
    font-family: Arial, sans-serif;
}

.container {
    display: flex !important;
    flex-direction: column !important;
    height: 100vh !important;
    justify-content: space-between !important;
}

.header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 10px 10px !important;
}

    .header h1 {
        margin: 0 !important;
    }

.link {
    color: #e94e1b !important;
    text-decoration: none !important;
    font-size: 16px !important;
    margin-left: auto !important;
}

    .link:hover {
        color: #ff6b3d !important;
    }

.main-content {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-grow: 1 !important;
}

.footer {
    text-align: center !important;
    padding: 10px 0 !important;
}
*/
/* /Layout/LoginLayout.razor.rz.scp.css */
/* Reset agressivo para corrigir HTML aninhado do Blazor */
html[b-1p5crjcl4f], body[b-1p5crjcl4f] {
    margin: 0 !important;
    padding: 0 !important;
    height: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    background-color: black !important;
    color: white;
    font-family: Arial, sans-serif;
    overflow-x: hidden !important; /* Previne scroll horizontal */
}

/* Force o box-sizing em TUDO */
*[b-1p5crjcl4f], *[b-1p5crjcl4f]::before, *[b-1p5crjcl4f]::after {
    box-sizing: border-box !important;
    margin: 0;
    padding: 0;
}

/* Container principal - FORÇA 100% da largura da viewport */
.container[b-1p5crjcl4f] {
    display: flex !important;
    flex-direction: column !important;
    height: 100vh !important;
    justify-content: space-between !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100vw !important; /* 100% da largura da viewport */
    max-width: 100vw !important;
    min-width: 100vw !important;
    overflow-x: hidden !important;
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
}

/* Header - ocupa 100% da largura */
.header[b-1p5crjcl4f] {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 10px 20px !important;
    background-color: black !important;
    min-height: 140px !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

    .header h1[b-1p5crjcl4f] {
        margin: 0 !important;
    }

.link[b-1p5crjcl4f] {
    color: #e94e1b !important;
    text-decoration: none !important;
    font-size: 16px !important;
    margin-left: auto !important;
}

/* CRÍTICO: Main content - ZERO de tudo, 100% da largura */
.main-content[b-1p5crjcl4f] {
    background-color: white !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    padding: 0 !important; /* ZERO padding */
    margin: 0 !important; /* ZERO margin */
    flex-grow: 1 !important;
    width: 100% !important; /* 100% da largura */
    max-width: 100% !important;
    min-width: 100% !important;
    color: black !important;
    overflow-x: hidden !important; /* Previne overflow horizontal */
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
}

/* Footer - ocupa 100% da largura */
.footer[b-1p5crjcl4f] {
    background-color: #000000 !important;
    height: 80px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: white !important;
    font-size: 12px !important;
    font-weight: 300 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Previne qualquer elemento filho de causar overflow */
.main-content > *[b-1p5crjcl4f],
.container > *[b-1p5crjcl4f] {
    max-width: 100% !important;
}

/* Se o Blazor adicionar divs extras, force-as também */
#app[b-1p5crjcl4f] {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* /Layout/LogoffLayout.razor.rz.scp.css */
body[b-hbomnbxnjr] {
    margin: 0;
    padding: 0;
    background-color: black;
    color: white;
    font-family: Arial, sans-serif;
}

.container[b-hbomnbxnjr] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    justify-content: space-between;
}

.header[b-hbomnbxnjr] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 10px;
}

    .header h1[b-hbomnbxnjr] {
        margin: 0;
    }

.link[b-hbomnbxnjr] {
    color: #e94e1b;
    text-decoration: none;
    font-size: 16px;
    margin-left: auto; /* Adiciona margem automática à esquerda para empurrar o link para a direita */
}

.main-content[b-hbomnbxnjr] {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1;
}

.footer[b-hbomnbxnjr] {
    text-align: center;
    padding: 10px 0;
}
/* /Layout/MainLayout.razor.rz.scp.css */
/* Reset agressivo para corrigir HTML aninhado do Blazor */
html[b-xxspkys4yv], body[b-xxspkys4yv] {
    margin: 0 !important;
    padding: 0 !important;
    height: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    background-color: black !important;
    color: white;
    font-family: Arial, sans-serif;
    overflow-x: hidden !important; /* Previne scroll horizontal */
}

/* Force o box-sizing em TUDO */
*[b-xxspkys4yv], *[b-xxspkys4yv]::before, *[b-xxspkys4yv]::after {
    box-sizing: border-box !important;
    margin: 0;
    padding: 0;
}

/* Container principal - FOR�A 100% da largura da viewport */
.container[b-xxspkys4yv] {
    display: flex !important;
    flex-direction: column !important;
    height: 100vh !important;
    justify-content: space-between !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100vw !important; /* 100% da largura da viewport */
    max-width: 100vw !important;
    min-width: 100vw !important;
    overflow-x: hidden !important;
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
}

/* Header - ocupa 100% da largura */
.header[b-xxspkys4yv] {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 10px 20px !important;
    background-color: black !important;
    min-height: 140px !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

    .header h1[b-xxspkys4yv] {
        margin: 0 !important;
    }

.link[b-xxspkys4yv] {
    color: #e94e1b !important;
    text-decoration: none !important;
    font-size: 16px !important;
    margin-left: auto !important;
}

/* CR�TICO: Main content - ZERO de tudo, 100% da largura */
.main-content[b-xxspkys4yv] {
    background-color: white !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    padding: 0 !important; /* ZERO padding */
    margin: 0 !important; /* ZERO margin */
    flex-grow: 1 !important;
    width: 100% !important; /* 100% da largura */
    max-width: 100% !important;
    min-width: 100% !important;
    color: black !important;
    overflow-x: hidden !important; /* Previne overflow horizontal */
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
}

/* Footer - ocupa 100% da largura */
.footer[b-xxspkys4yv] {
    background-color: #000000 !important;
    min-height: 80px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: white !important;
    font-size: 12px !important;
    font-weight: 300 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Previne qualquer elemento filho de causar overflow */
.main-content > *[b-xxspkys4yv],
.container > *[b-xxspkys4yv] {
    max-width: 100% !important;
}

/* Se o Blazor adicionar divs extras, force-as tamb�m */
#app[b-xxspkys4yv] {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* /Pages/Customers.razor.rz.scp.css */
.container[b-8vmnmet4dt] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

/* Header */
.header[b-8vmnmet4dt] {
    background: white;
    border-radius: 12px;
    padding: 24px;
    margin-bottom: 24px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.header-top[b-8vmnmet4dt] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.header h1[b-8vmnmet4dt] {
    color: #2c3e50;
    font-size: 28px;
    font-weight: 600;
    margin: 0;
}

.contador-info[b-8vmnmet4dt] {
    text-align: right;
    color: #666;
    font-size: 14px;
}

.contador-nome[b-8vmnmet4dt] {
    font-weight: 600;
    color: #ff8c00;
    font-size: 16px;
}

/* Search and Actions Bar */
.actions-bar[b-8vmnmet4dt] {
    display: flex;
    gap: 12px;
    align-items: center;
    flex-wrap: wrap;
}

.search-box[b-8vmnmet4dt] {
    flex: 1;
    min-width: 300px;
    position: relative;
}

    .search-box input[b-8vmnmet4dt] {
        width: 100%;
        padding: 12px 16px 12px 44px;
        border: 2px solid #e0e0e0;
        border-radius: 8px;
        font-size: 14px;
        transition: all 0.3s;
    }

        .search-box input:focus[b-8vmnmet4dt] {
            outline: none;
            border-color: #ff8c00;
            box-shadow: 0 0 0 3px rgba(255, 140, 0, 0.1);
        }

.search-icon[b-8vmnmet4dt] {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: #999;
}

.btn[b-8vmnmet4dt] {
    padding: 12px 24px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.btn-primary[b-8vmnmet4dt] {
    background: #4caf50;
    color: white;
}

    .btn-primary:hover[b-8vmnmet4dt] {
        background: #45a049;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(76, 175, 80, 0.3);
    }

.btn-secondary[b-8vmnmet4dt] {
    background: white;
    color: #666;
    border: 2px solid #e0e0e0;
}

    .btn-secondary:hover[b-8vmnmet4dt] {
        border-color: #ff8c00;
        color: #ff8c00;
    }

/* Stats Cards */
.stats-container[b-8vmnmet4dt] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 16px;
    margin-bottom: 24px;
}

.stat-card[b-8vmnmet4dt] {
    background: white;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s;
}

    .stat-card:hover[b-8vmnmet4dt] {
        transform: translateY(-4px);
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
    }

.stat-label[b-8vmnmet4dt] {
    color: #666;
    font-size: 14px;
    margin-bottom: 8px;
}

.stat-value[b-8vmnmet4dt] {
    font-size: 32px;
    font-weight: 700;
    color: #2c3e50;
}

.stat-card.orange .stat-value[b-8vmnmet4dt] {
    color: #ff8c00;
}

.stat-card.green .stat-value[b-8vmnmet4dt] {
    color: #4caf50;
}

/* Table Container */
.table-container[b-8vmnmet4dt] {
    background: white;
    border-radius: 12px;
    padding: 24px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.table-header[b-8vmnmet4dt] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 2px solid #f0f0f0;
}

.table-title[b-8vmnmet4dt] {
    font-size: 20px;
    font-weight: 600;
    color: #2c3e50;
    margin: 0;
}

.results-count[b-8vmnmet4dt] {
    color: #666;
    font-size: 14px;
}

/* Table */
.clients-table[b-8vmnmet4dt] {
    width: 100%;
    border-collapse: collapse;
}

    .clients-table thead[b-8vmnmet4dt] {
        background: #f8f9fa;
    }

    .clients-table th[b-8vmnmet4dt] {
        padding: 16px;
        text-align: left;
        font-weight: 600;
        color: #2c3e50;
        font-size: 14px;
        border-bottom: 2px solid #e0e0e0;
    }

    .clients-table td[b-8vmnmet4dt] {
        padding: 16px;
        border-bottom: 1px solid #f0f0f0;
        color: #444;
    }

    .clients-table tbody tr[b-8vmnmet4dt] {
        transition: background 0.2s;
    }

        .clients-table tbody tr:hover[b-8vmnmet4dt] {
            background: #f8f9fa;
        }

.client-name[b-8vmnmet4dt] {
    font-weight: 600;
    color: #2c3e50;
    font-size: 15px;
}

.client-fantasy-name[b-8vmnmet4dt] {
    color: #666;
    font-size: 14px;
    margin-top: 4px;
}

.cnpj[b-8vmnmet4dt] {
    font-family: 'Courier New', monospace;
    color: #666;
    font-size: 14px;
}

.badge[b-8vmnmet4dt] {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
}

.badge-active[b-8vmnmet4dt] {
    background: #e8f5e9;
    color: #4caf50;
}

.action-buttons[b-8vmnmet4dt] {
    display: flex;
    gap: 8px;
    justify-content: center;
}

.btn-icon[b-8vmnmet4dt] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s;
    font-size: 16px;
}

.btn-view[b-8vmnmet4dt] {
    background: #e3f2fd;
    color: #2196f3;
}

    .btn-view:hover[b-8vmnmet4dt] {
        background: #2196f3;
        color: white;
        transform: scale(1.1);
    }

/* Loading State */
.loading-state[b-8vmnmet4dt] {
    text-align: center;
    padding: 60px 20px;
}

.spinner[b-8vmnmet4dt] {
    width: 50px;
    height: 50px;
    margin: 0 auto 20px;
    border: 4px solid #f0f0f0;
    border-top: 4px solid #ff8c00;
    border-radius: 50%;
    animation: spin-b-8vmnmet4dt 1s linear infinite;
}

@keyframes spin-b-8vmnmet4dt {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.loading-state p[b-8vmnmet4dt] {
    color: #666;
    font-size: 16px;
}

/* Empty State */
.empty-state[b-8vmnmet4dt] {
    text-align: center;
    padding: 60px 20px;
}

.empty-state-icon[b-8vmnmet4dt] {
    font-size: 64px;
    color: #ccc;
    margin-bottom: 16px;
}

.empty-state h3[b-8vmnmet4dt] {
    color: #666;
    font-size: 20px;
    margin-bottom: 8px;
}

.empty-state p[b-8vmnmet4dt] {
    color: #999;
    font-size: 14px;
}

/* Pagination */
.pagination[b-8vmnmet4dt] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #f0f0f0;
}

.page-btn[b-8vmnmet4dt] {
    width: 36px;
    height: 36px;
    border: 2px solid #e0e0e0;
    background: white;
    border-radius: 8px;
    cursor: pointer;
    font-weight: 600;
    transition: all 0.3s;
}

    .page-btn:hover:not(:disabled)[b-8vmnmet4dt] {
        border-color: #ff8c00;
        color: #ff8c00;
    }

    .page-btn.active[b-8vmnmet4dt] {
        background: #ff8c00;
        color: white;
        border-color: #ff8c00;
    }

    .page-btn:disabled[b-8vmnmet4dt] {
        opacity: 0.5;
        cursor: not-allowed;
    }

/* Responsive */
@media (max-width: 768px) {
    .header-top[b-8vmnmet4dt] {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .contador-info[b-8vmnmet4dt] {
        text-align: left;
    }

    .actions-bar[b-8vmnmet4dt] {
        flex-direction: column;
    }

    .search-box[b-8vmnmet4dt] {
        width: 100%;
        min-width: unset;
    }

    .btn[b-8vmnmet4dt] {
        width: 100%;
        justify-content: center;
    }

    .table-container[b-8vmnmet4dt] {
        overflow-x: auto;
    }

    .clients-table[b-8vmnmet4dt] {
        min-width: 800px;
    }

    .stats-container[b-8vmnmet4dt] {
        grid-template-columns: 1fr;
    }
}

/* Filter Panel */
.filter-overlay[b-8vmnmet4dt] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 999;
    animation: fadeIn-b-8vmnmet4dt 0.3s;
}

@keyframes fadeIn-b-8vmnmet4dt {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.filter-panel[b-8vmnmet4dt] {
    position: fixed;
    top: 0;
    right: 0;
    width: 400px;
    max-width: 90%;
    height: 100vh;
    background: white;
    box-shadow: -4px 0 16px rgba(0, 0, 0, 0.2);
    z-index: 1000;
    display: flex;
    flex-direction: column;
    animation: slideIn-b-8vmnmet4dt 0.3s;
}

@keyframes slideIn-b-8vmnmet4dt {
    from {
        transform: translateX(100%);
    }

    to {
        transform: translateX(0);
    }
}

.filter-header[b-8vmnmet4dt] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px;
    border-bottom: 2px solid #f0f0f0;
}

    .filter-header h3[b-8vmnmet4dt] {
        margin: 0;
        color: #2c3e50;
        font-size: 20px;
        font-weight: 600;
    }

.btn-close[b-8vmnmet4dt] {
    width: 36px;
    height: 36px;
    border: none;
    background: #f0f0f0;
    border-radius: 8px;
    cursor: pointer;
    font-size: 20px;
    color: #666;
    transition: all 0.3s;
}

    .btn-close:hover[b-8vmnmet4dt] {
        background: #ff8c00;
        color: white;
    }

.filter-content[b-8vmnmet4dt] {
    flex: 1;
    overflow-y: auto;
    padding: 24px;
}

.filter-group[b-8vmnmet4dt] {
    margin-bottom: 24px;
}

.filter-label[b-8vmnmet4dt] {
    display: block;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 12px;
    font-size: 14px;
}

.filter-options[b-8vmnmet4dt] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.checkbox-label[b-8vmnmet4dt] {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    padding: 8px;
    border-radius: 6px;
    transition: background 0.2s;
}

    .checkbox-label:hover[b-8vmnmet4dt] {
        background: #f8f9fa;
    }

    .checkbox-label input[type="checkbox"][b-8vmnmet4dt] {
        width: 18px;
        height: 18px;
        cursor: pointer;
        accent-color: #ff8c00;
    }

    .checkbox-label span[b-8vmnmet4dt] {
        font-size: 14px;
        color: #444;
    }

.filter-select[b-8vmnmet4dt] {
    width: 100%;
    padding: 12px;
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    font-size: 14px;
    color: #444;
    background: white;
    cursor: pointer;
    transition: all 0.3s;
}

    .filter-select:focus[b-8vmnmet4dt] {
        outline: none;
        border-color: #ff8c00;
        box-shadow: 0 0 0 3px rgba(255, 140, 0, 0.1);
    }

.filter-footer[b-8vmnmet4dt] {
    padding: 24px;
    border-top: 2px solid #f0f0f0;
    display: flex;
    gap: 12px;
}

    .filter-footer .btn[b-8vmnmet4dt] {
        flex: 1;
    }

.location[b-8vmnmet4dt] {
    color: #666;
    font-size: 14px;
}

.badge-inactive[b-8vmnmet4dt] {
    background: #ffebee;
    color: #d32f2f;
}

@media (max-width: 768px) {
    .filter-panel[b-8vmnmet4dt] {
        width: 100%;
    }
}
/* /Pages/Dashboard.razor.rz.scp.css */
/* ============================================
   ESPAudit - Dashboard Contador
   CSS Isolado (scoped)
   Paleta: Cinzas + Laranja (#ff8c00) + Verde (#4caf50)
   ============================================ */

/* Container Principal */
.dashboard-container[b-401ewp06r8] {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 2rem;
    box-sizing: border-box;
    min-height: 100vh;
}

/* ========== LOADING ========== */
.loading-container[b-401ewp06r8] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    gap: 1rem;
}

.loading-spinner[b-401ewp06r8] {
    width: 50px;
    height: 50px;
    border: 4px solid #f0f0f0;
    border-top-color: #ff8c00;
    border-radius: 50%;
    animation: spin-b-401ewp06r8 1s linear infinite;
}

@keyframes spin-b-401ewp06r8 {
    to {
        transform: rotate(360deg);
    }
}

/* ========== 1. HEADER - SAUDAÇÃO ========== */
.dashboard-header[b-401ewp06r8] {
    background: white;
    border-radius: 16px;
    padding: 2rem;
    margin-bottom: 2rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1.5rem;
}

.header-content[b-401ewp06r8] {
    flex: 1;
}

.greeting[b-401ewp06r8] {
    font-size: 2rem;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 0.5rem 0;
}

.subtitle[b-401ewp06r8] {
    font-size: 1rem;
    color: #666;
    margin: 0;
}

.header-info[b-401ewp06r8] {
    display: flex;
    gap: 1rem;
}

.info-badge[b-401ewp06r8] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1.25rem;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-radius: 12px;
    border: 1px solid #e0e0e0;
}

.info-icon[b-401ewp06r8] {
    font-size: 1.5rem;
}

.info-text[b-401ewp06r8] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.info-label[b-401ewp06r8] {
    font-size: 0.7rem;
    color: #999;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.5px;
}

.info-value[b-401ewp06r8] {
    font-size: 1rem;
    font-weight: 700;
    color: #1a1a1a;
}

/* ========== 2. SEÇÃO DE BUSCA ========== */
.search-section[b-401ewp06r8] {
    margin-bottom: 2rem;
}

.search-card[b-401ewp06r8] {
    background: white;
    border-radius: 16px;
    padding: 2rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.section-title[b-401ewp06r8] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 1.25rem;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 1.5rem 0;
}

.title-icon[b-401ewp06r8] {
    font-size: 1.5rem;
}

.search-form[b-401ewp06r8] {
    width: 100%;
}

.input-group[b-401ewp06r8] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.input-label[b-401ewp06r8] {
    font-size: 0.9rem;
    font-weight: 600;
    color: #333;
}

.input-wrapper[b-401ewp06r8] {
    display: flex;
    gap: 0.75rem;
}

.search-input[b-401ewp06r8] {
    flex: 1;
    padding: 0.875rem 1.25rem;
    font-size: 1rem;
    border: 2px solid #e0e0e0;
    border-radius: 12px;
    transition: all 0.3s;
    font-family: inherit;
}

    .search-input:focus[b-401ewp06r8] {
        outline: none;
        border-color: #ff8c00;
        box-shadow: 0 0 0 3px rgba(255, 140, 0, 0.1);
    }

.search-btn[b-401ewp06r8] {
    padding: 0.875rem 2rem;
    background: linear-gradient(135deg, #ff8c00, #e67e00);
    color: white;
    border: none;
    border-radius: 12px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-family: inherit;
    box-shadow: 0 4px 12px rgba(255, 140, 0, 0.3);
}

    .search-btn:hover:not(:disabled)[b-401ewp06r8] {
        transform: translateY(-2px);
        box-shadow: 0 6px 16px rgba(255, 140, 0, 0.4);
    }

    .search-btn:disabled[b-401ewp06r8] {
        opacity: 0.6;
        cursor: not-allowed;
        transform: none;
    }

    .search-btn:active:not(:disabled)[b-401ewp06r8] {
        transform: translateY(0);
    }

.btn-icon[b-401ewp06r8] {
    font-size: 1.1rem;
}

.input-hint[b-401ewp06r8] {
    font-size: 0.85rem;
    color: #999;
    margin-top: 0.25rem;
}

.error-message[b-401ewp06r8] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: #fff0f0;
    border: 1px solid #ffcdd2;
    border-left: 4px solid #e94e1b;
    border-radius: 8px;
    color: #c62828;
    font-size: 0.9rem;
    margin-top: 0.5rem;
}

.error-icon[b-401ewp06r8] {
    font-size: 1.2rem;
}

/* ========== 3. CARD DO CLIENTE ========== */
.client-section[b-401ewp06r8] {
    margin-bottom: 2rem;
}

.client-card[b-401ewp06r8] {
    background: white;
    border-radius: 16px;
    padding: 2rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    border: 2px solid #e0e0e0;
    transition: all 0.3s;
}

    .client-card:hover[b-401ewp06r8] {
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
        border-color: #ff8c00;
    }

.client-header[b-401ewp06r8] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid #f5f5f5;
}

.client-status[b-401ewp06r8] {
    display: flex;
    gap: 0.5rem;
}

.status-badge[b-401ewp06r8] {
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

    .status-badge.active[b-401ewp06r8] {
        background: linear-gradient(135deg, #e8f5e9, #c8e6c9);
        color: #2e7d32;
        border: 1px solid #81c784;
    }

    .status-badge.inactive[b-401ewp06r8] {
        background: linear-gradient(135deg, #ffebee, #ffcdd2);
        color: #c62828;
        border: 1px solid #ef9a9a;
    }

.client-actions[b-401ewp06r8] {
    display: flex;
    gap: 0.5rem;
}

.icon-btn[b-401ewp06r8] {
    width: 36px;
    height: 36px;
    border: 2px solid #e0e0e0;
    background: white;
    border-radius: 8px;
    cursor: pointer;
    font-size: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s;
}

    .icon-btn:hover[b-401ewp06r8] {
        border-color: #ff8c00;
        background: #fff8f0;
        transform: translateY(-2px);
    }

.client-info[b-401ewp06r8] {
    margin-bottom: 2rem;
}

.client-main[b-401ewp06r8] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

.client-avatar[b-401ewp06r8] {
    width: 80px;
    height: 80px;
    border-radius: 16px;
    background: linear-gradient(135deg, #fff8f0, #ffe8cc);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.5rem;
    border: 2px solid #ffd699;
    flex-shrink: 0;
}

.client-details[b-401ewp06r8] {
    flex: 1;
}

.client-name[b-401ewp06r8] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 0.25rem 0;
}

.client-fantasy[b-401ewp06r8] {
    font-size: 1rem;
    color: #666;
    margin: 0;
}

.client-data-grid[b-401ewp06r8] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1.5rem;
    padding: 1.5rem;
    background: linear-gradient(135deg, #f8f9fa, #e9ecef);
    border-radius: 12px;
    border: 1px solid #e0e0e0;
}

.data-item[b-401ewp06r8] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.data-label[b-401ewp06r8] {
    font-size: 0.75rem;
    color: #999;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.5px;
}

.data-value[b-401ewp06r8] {
    font-size: 1rem;
    font-weight: 700;
    color: #1a1a1a;
}

/* ========== KPIs do Cliente ========== */
.client-kpis[b-401ewp06r8] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
    padding: 1.5rem;
    background: linear-gradient(135deg, #fafbfc, #f5f6f8);
    border-radius: 12px;
}

.kpi-item[b-401ewp06r8] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: white;
    border-radius: 10px;
    border: 1px solid #e0e0e0;
    transition: all 0.3s;
}

    .kpi-item:hover[b-401ewp06r8] {
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
        border-color: #ff8c00;
    }

.kpi-icon[b-401ewp06r8] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

    .kpi-icon.total[b-401ewp06r8] {
        background: linear-gradient(135deg, #e3f2fd, #bbdefb);
        color: #1976d2;
    }

    .kpi-icon.value[b-401ewp06r8] {
        background: linear-gradient(135deg, #fff8f0, #ffe8cc);
        color: #ff8c00;
    }

    .kpi-icon.month[b-401ewp06r8] {
        background: linear-gradient(135deg, #f3e5f5, #e1bee7);
        color: #8e24aa;
    }

    .kpi-icon.recent[b-401ewp06r8] {
        background: linear-gradient(135deg, #e8f5e9, #c8e6c9);
        color: #388e3c;
    }

.kpi-content[b-401ewp06r8] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.kpi-label[b-401ewp06r8] {
    font-size: 0.8rem;
    color: #666;
    font-weight: 500;
}

.kpi-value[b-401ewp06r8] {
    font-size: 1.1rem;
    font-weight: 700;
    color: #1a1a1a;
}

/* ========== Botão de Ação Principal ========== */
.client-action[b-401ewp06r8] {
    display: flex;
    justify-content: center;
}

.primary-btn[b-401ewp06r8] {
    width: 100%;
    max-width: 600px;
    padding: 1.5rem 2rem;
    background: linear-gradient(135deg, #ff8c00, #e67e00);
    color: white;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    font-family: inherit;
    box-shadow: 0 4px 16px rgba(255, 140, 0, 0.3);
}

    .primary-btn:hover[b-401ewp06r8] {
        transform: translateY(-3px);
        box-shadow: 0 8px 24px rgba(255, 140, 0, 0.4);
    }

    .primary-btn:active[b-401ewp06r8] {
        transform: translateY(-1px);
    }

.btn-content[b-401ewp06r8] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
}

.btn-title[b-401ewp06r8] {
    font-size: 1.1rem;
    font-weight: 700;
}

.btn-subtitle[b-401ewp06r8] {
    font-size: 0.85rem;
    opacity: 0.9;
}

.btn-arrow[b-401ewp06r8] {
    font-size: 1.5rem;
    font-weight: 300;
}

/* ========== 4. ACESSO RÁPIDO ========== */
.quick-actions-section[b-401ewp06r8] {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
}

.quick-actions-grid[b-401ewp06r8] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
}

.action-card[b-401ewp06r8] {
    background: white;
    border: 2px solid #e0e0e0;
    border-radius: 12px;
    padding: 1.5rem;
    cursor: pointer;
    transition: all 0.3s;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    font-family: inherit;
}

    .action-card:hover[b-401ewp06r8] {
        transform: translateY(-4px);
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
        border-color: #ff8c00;
    }

.action-icon[b-401ewp06r8] {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #f8f9fa, #e9ecef);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    transition: all 0.3s;
}

.action-card:hover .action-icon[b-401ewp06r8] {
    background: linear-gradient(135deg, #fff8f0, #ffe8cc);
    transform: scale(1.1);
}

.action-label[b-401ewp06r8] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #333;
    text-align: center;
}

/* ========== 5. EMPTY STATE ========== */
.empty-state[b-401ewp06r8] {
    background: white;
    border-radius: 16px;
    padding: 4rem 2rem;
    text-align: center;
    border: 2px dashed #e0e0e0;
    margin-bottom: 2rem;
}

.empty-icon[b-401ewp06r8] {
    font-size: 5rem;
    margin-bottom: 1.5rem;
    opacity: 0.3;
}

.empty-title[b-401ewp06r8] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 0.75rem 0;
}

.empty-text[b-401ewp06r8] {
    font-size: 1rem;
    color: #666;
    margin: 0 0 2rem 0;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.6;
}

.empty-tips[b-401ewp06r8] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    max-width: 400px;
    margin: 0 auto;
}

.tip-item[b-401ewp06r8] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: linear-gradient(135deg, #f8f9fa, #e9ecef);
    border-radius: 8px;
    text-align: left;
    font-size: 0.9rem;
    color: #666;
}

.tip-icon[b-401ewp06r8] {
    font-size: 1.25rem;
    flex-shrink: 0;
}

/* ========== RESPONSIVIDADE ========== */
@media (max-width: 768px) {
    .dashboard-container[b-401ewp06r8] {
        padding: 1rem;
    }

    .dashboard-header[b-401ewp06r8] {
        flex-direction: column;
        align-items: flex-start;
    }

    .header-info[b-401ewp06r8] {
        width: 100%;
        flex-direction: column;
    }

    .info-badge[b-401ewp06r8] {
        width: 100%;
        justify-content: flex-start;
    }

    .greeting[b-401ewp06r8] {
        font-size: 1.5rem;
    }

    .input-wrapper[b-401ewp06r8] {
        flex-direction: column;
    }

    .search-btn[b-401ewp06r8] {
        width: 100%;
        justify-content: center;
    }

    .client-main[b-401ewp06r8] {
        flex-direction: column;
        text-align: center;
    }

    .client-data-grid[b-401ewp06r8] {
        grid-template-columns: 1fr;
    }

    .client-kpis[b-401ewp06r8] {
        grid-template-columns: 1fr;
    }

    .quick-actions-grid[b-401ewp06r8] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .dashboard-container[b-401ewp06r8] {
        padding: 0.75rem;
    }

    .dashboard-header[b-401ewp06r8],
    .search-card[b-401ewp06r8],
    .client-card[b-401ewp06r8] {
        padding: 1.25rem;
    }

    .greeting[b-401ewp06r8] {
        font-size: 1.25rem;
    }

    .client-name[b-401ewp06r8] {
        font-size: 1.25rem;
    }

    .quick-actions-grid[b-401ewp06r8] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Login.razor.rz.scp.css */
/* Container principal do formulário - ADICIONA espaçamento INTERNO */
/*.login-form {
    display: flex;
    flex-direction: column;
    width: 100%;*/ /* ← 100% da largura disponível */
    /*max-width: 1200px;*/ /* ← Limita largura máxima para legibilidade */
    /*margin: 0 auto;*/ /* ← Centraliza horizontalmente */
    /*padding: 2rem;*/ /* ← Espaçamento INTERNO (não cria bordas externas) */
    /*background-color: white;
    font-family: Arial, sans-serif;
    box-sizing: border-box;*/ /* ← CRÍTICO: padding incluído na largura */
/*}

h3 {
    font-size: 24px;
    font-weight: bold;
    color: #333333;
    margin-bottom: 10px;
    margin-top: 0;
}

hr {
    border: none;
    border-top: 2px solid #e0e0e0;
    margin-bottom: 30px;
    width: 100%;
}*/

/* Texto introdutório */
/*.intro-text {
    font-size: 14px;
    color: #555;
    line-height: 1.5;
    margin-bottom: 15px;
    text-align: justify;
}*/

/* Form groups */
/*.form-group {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    width: 100%;
}

    .form-group label {
        display: block;
        font-size: 14px;
        color: #555555;
        margin-bottom: 5px;
    }*/

    /* ===========================================
   FORM CONTROLS - Estilos dos inputs
   Sobrescreve TODOS os estados de validação do Blazor
   =========================================== */

    /* Estado base */
    /*::deep .form-control,
    ::deep input.form-control,
    ::deep input[type="text"],
    ::deep input[type="password"],
    ::deep input[type="email"],
    .form-group .form-control,
    .form-group input {
        width: 100%;
        height: 35px;
        border: 1px solid #ff8c00 !important;
        border-radius: 4px;
        padding: 0 10px;
        font-size: 14px;
        background-color: #ffffff !important;
        box-sizing: border-box;
        outline: none !important;
        box-shadow: none !important;
    }*/

        /* Estado de foco */
        /*::deep .form-control:focus,
        ::deep input.form-control:focus,
        ::deep input[type="text"]:focus,
        ::deep input[type="password"]:focus,
        ::deep input[type="email"]:focus,
        .form-group .form-control:focus,
        .form-group input:focus {
            border: 1px solid #e94e1b !important;
            box-shadow: 0 0 0 2px rgba(255, 140, 0, 0.25) !important;
            background-color: #ffffff !important;
            outline: none !important;
        }*/

        /* =========================================== 
   ANULA estilos de validação do Blazor
   Classes: .valid, .invalid, .modified
   =========================================== */

        /*::deep .form-control.valid,
        ::deep .form-control.invalid,
        ::deep .form-control.modified,
        ::deep .form-control.valid.modified,
        ::deep .form-control.invalid.modified,
        ::deep input.valid,
        ::deep input.invalid,
        ::deep input.modified,
        ::deep input.valid.modified,
        ::deep input.invalid.modified,
        .form-group .form-control.valid,
        .form-group .form-control.invalid,
        .form-group .form-control.modified,
        .form-group input.valid,
        .form-group input.invalid,
        .form-group input.modified {
            background-color: #ffffff !important;
            border: 1px solid #ff8c00 !important;
            box-shadow: none !important;
            outline: none !important;
            background-image: none !important;
        }*/

            /* Foco nos estados de validação */
            /*::deep .form-control.valid:focus,
            ::deep .form-control.invalid:focus,
            ::deep .form-control.modified:focus,
            ::deep input.valid:focus,
            ::deep input.invalid:focus,
            ::deep input.modified:focus,
            .form-group .form-control.valid:focus,
            .form-group .form-control.invalid:focus,
            .form-group input.valid:focus,
            .form-group input.invalid:focus {
                border: 1px solid #e94e1b !important;
                box-shadow: 0 0 0 2px rgba(255, 140, 0, 0.25) !important;
                background-color: #ffffff !important;
                outline: none !important;
                background-image: none !important;
            }*/

/* Mensagens de validação */
/*::deep .validation-message,
.validation-message {
    color: #dc3545;
    font-size: 12px;
    margin-top: 5px;
}*/

/* Container do botão */
/*.button-container {
    display: flex;
    justify-content: flex-end;
    margin-top: 30px;
    width: 100%;
}*/

/* Botões de ação */
/*.buttonAction,
.buttonEfect {
    width: 130px;
    height: 35px;
    background-color: #FF8C00;
    color: white;
    font-size: 14px;
    font-weight: bold;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

    .buttonAction:hover,
    .buttonEfect:hover {
        background-color: #e67e00;
    }

    .buttonAction:focus,
    .buttonEfect:focus {
        outline: none;
        box-shadow: 0 0 0 2px rgba(255, 140, 0, 0.4);
    }*/

/* Alertas de erro */
/*.alert {
    padding: 10px;
    border-radius: 4px;
    margin-bottom: 15px;
    font-size: 14px;
}

.alert-danger {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}*/

/* Link de assinatura centralizado */
/*.centralizar-link {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    margin-top: 10px;
}

::deep .nav-link {
    color: #FF8C00;
    font-size: 14px;
    text-decoration: none;
}

    ::deep .nav-link:hover {
        color: #e67e00;
        text-decoration: underline;
    }*/

/* Responsividade */
/*@media (max-width: 768px) {
    .login-form {
        padding: 1.5rem;*/ /* Menos padding em telas pequenas */
    /*}

    .button-container {
        justify-content: center;
    }

    .buttonAction,
    .buttonEfect {
        width: 100%;
        max-width: 250px;
    }
}*/

/* Telas muito pequenas */
/*@media (max-width: 480px) {
    .login-form {
        padding: 1rem;
    }
}*/

/* Container principal do formulário - ADICIONA espaçamento INTERNO */
.login-form[b-fdxil5zgow] {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 2rem;
    background-color: white;
    font-family: Arial, sans-serif;
    box-sizing: border-box;
}

h3[b-fdxil5zgow] {
    font-size: 24px;
    font-weight: bold;
    color: #333333;
    margin-bottom: 10px;
    margin-top: 0;
}

hr[b-fdxil5zgow] {
    border: none;
    border-top: 2px solid #e0e0e0;
    margin-bottom: 30px;
    width: 100%;
}

/* Texto introdutório */
.intro-text[b-fdxil5zgow] {
    font-size: 14px;
    color: #555;
    line-height: 1.5;
    margin-bottom: 15px;
    text-align: justify;
}

/* ============================================
   TOGGLE SWITCH - SELEÇÃO DE TIPO DE USUÁRIO
============================================ */
.user-type-selector[b-fdxil5zgow] {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 30px 0;
    padding: 20px;
    background-color: #fafafa;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
}

.selector-label[b-fdxil5zgow] {
    font-size: 14px;
    color: #555;
    margin-bottom: 15px;
    font-weight: 500;
}

.toggle-container[b-fdxil5zgow] {
    display: flex;
    align-items: center;
    gap: 15px;
}

.toggle-text[b-fdxil5zgow] {
    font-size: 14px;
    font-weight: bold;
    color: #999;
    transition: color 0.3s ease;
    min-width: 100px;
    text-align: center;
}

    .toggle-text.active[b-fdxil5zgow] {
        color: #ff8c00;
    }

/* O Toggle Switch propriamente dito */
.toggle-switch[b-fdxil5zgow] {
    position: relative;
    width: 80px;
    height: 40px;
    background-color: #e0e0e0;
    border-radius: 20px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
}

    .toggle-switch.active[b-fdxil5zgow] {
        background-color: #ff8c00;
    }

/* O círculo que desliza */
.toggle-slider[b-fdxil5zgow] {
    position: absolute;
    top: 4px;
    left: 4px;
    width: 32px;
    height: 32px;
    background-color: white;
    border-radius: 50%;
    transition: transform 0.3s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.toggle-switch.active .toggle-slider[b-fdxil5zgow] {
    transform: translateX(40px);
}

/* Ícones dentro do toggle */
.toggle-icon[b-fdxil5zgow] {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    transition: opacity 0.3s ease;
}

.toggle-icon-left[b-fdxil5zgow] {
    left: 10px;
    opacity: 1;
}

.toggle-icon-right[b-fdxil5zgow] {
    right: 10px;
    opacity: 0.3;
}

.toggle-switch.active .toggle-icon-left[b-fdxil5zgow] {
    opacity: 0.3;
}

.toggle-switch.active .toggle-icon-right[b-fdxil5zgow] {
    opacity: 1;
}

/* ============================================
   FORM GROUPS
============================================ */
.form-group[b-fdxil5zgow] {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    width: 100%;
}

    .form-group label[b-fdxil5zgow] {
        display: block;
        font-size: 14px;
        color: #555555;
        margin-bottom: 5px;
    }

    /* ===========================================
   FORM CONTROLS - Estilos dos inputs
   Sobrescreve TODOS os estados de validação do Blazor
=========================================== */

    /* Estado base */
    [b-fdxil5zgow] .form-control,
    [b-fdxil5zgow] input.form-control,
    [b-fdxil5zgow] input[type="text"],
    [b-fdxil5zgow] input[type="password"],
    [b-fdxil5zgow] input[type="email"],
    .form-group .form-control[b-fdxil5zgow],
    .form-group input[b-fdxil5zgow] {
        width: 100%;
        height: 35px;
        border: 1px solid #ff8c00 !important;
        border-radius: 4px;
        padding: 0 10px;
        font-size: 14px;
        background-color: #ffffff !important;
        box-sizing: border-box;
        outline: none !important;
        box-shadow: none !important;
    }

        /* Estado de foco */
        [b-fdxil5zgow] .form-control:focus,
        [b-fdxil5zgow] input.form-control:focus,
        [b-fdxil5zgow] input[type="text"]:focus,
        [b-fdxil5zgow] input[type="password"]:focus,
        [b-fdxil5zgow] input[type="email"]:focus,
        .form-group .form-control:focus[b-fdxil5zgow],
        .form-group input:focus[b-fdxil5zgow] {
            border: 1px solid #e94e1b !important;
            box-shadow: 0 0 0 2px rgba(255, 140, 0, 0.25) !important;
            background-color: #ffffff !important;
            outline: none !important;
        }

        /* =========================================== 
   ANULA estilos de validação do Blazor
   Classes: .valid, .invalid, .modified
=========================================== */

        [b-fdxil5zgow] .form-control.valid,
        [b-fdxil5zgow] .form-control.invalid,
        [b-fdxil5zgow] .form-control.modified,
        [b-fdxil5zgow] .form-control.valid.modified,
        [b-fdxil5zgow] .form-control.invalid.modified,
        [b-fdxil5zgow] input.valid,
        [b-fdxil5zgow] input.invalid,
        [b-fdxil5zgow] input.modified,
        [b-fdxil5zgow] input.valid.modified,
        [b-fdxil5zgow] input.invalid.modified,
        .form-group .form-control.valid[b-fdxil5zgow],
        .form-group .form-control.invalid[b-fdxil5zgow],
        .form-group .form-control.modified[b-fdxil5zgow],
        .form-group input.valid[b-fdxil5zgow],
        .form-group input.invalid[b-fdxil5zgow],
        .form-group input.modified[b-fdxil5zgow] {
            background-color: #ffffff !important;
            border: 1px solid #ff8c00 !important;
            box-shadow: none !important;
            outline: none !important;
            background-image: none !important;
        }

            /* Foco nos estados de validação */
            [b-fdxil5zgow] .form-control.valid:focus,
            [b-fdxil5zgow] .form-control.invalid:focus,
            [b-fdxil5zgow] .form-control.modified:focus,
            [b-fdxil5zgow] input.valid:focus,
            [b-fdxil5zgow] input.invalid:focus,
            [b-fdxil5zgow] input.modified:focus,
            .form-group .form-control.valid:focus[b-fdxil5zgow],
            .form-group .form-control.invalid:focus[b-fdxil5zgow],
            .form-group input.valid:focus[b-fdxil5zgow],
            .form-group input.invalid:focus[b-fdxil5zgow] {
                border: 1px solid #e94e1b !important;
                box-shadow: 0 0 0 2px rgba(255, 140, 0, 0.25) !important;
                background-color: #ffffff !important;
                outline: none !important;
                background-image: none !important;
            }

/* Mensagens de validação */
[b-fdxil5zgow] .validation-message,
.validation-message[b-fdxil5zgow] {
    color: #dc3545;
    font-size: 12px;
    margin-top: 5px;
}

/* Container do botão */
.button-container[b-fdxil5zgow] {
    display: flex;
    justify-content: flex-end;
    margin-top: 30px;
    width: 100%;
}

/* Botões de ação */
.buttonAction[b-fdxil5zgow],
.buttonEfect[b-fdxil5zgow] {
    width: 130px;
    height: 35px;
    background-color: #FF8C00;
    color: white;
    font-size: 14px;
    font-weight: bold;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

    .buttonAction:hover[b-fdxil5zgow],
    .buttonEfect:hover[b-fdxil5zgow] {
        background-color: #e67e00;
    }

    .buttonAction:focus[b-fdxil5zgow],
    .buttonEfect:focus[b-fdxil5zgow] {
        outline: none;
        box-shadow: 0 0 0 2px rgba(255, 140, 0, 0.4);
    }

    .buttonAction:disabled[b-fdxil5zgow],
    .buttonEfect:disabled[b-fdxil5zgow] {
        opacity: 0.6;
        cursor: not-allowed;
    }

/* Alertas de erro */
.alert[b-fdxil5zgow] {
    padding: 10px;
    border-radius: 4px;
    margin-bottom: 15px;
    font-size: 14px;
}

.alert-danger[b-fdxil5zgow] {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

/* Responsividade */
@media (max-width: 768px) {
    .login-form[b-fdxil5zgow] {
        padding: 1.5rem;
    }

    .toggle-container[b-fdxil5zgow] {
        flex-direction: column;
        gap: 10px;
    }

    .toggle-text[b-fdxil5zgow] {
        min-width: auto;
    }

    .button-container[b-fdxil5zgow] {
        justify-content: center;
    }

    .buttonAction[b-fdxil5zgow],
    .buttonEfect[b-fdxil5zgow] {
        width: 100%;
        max-width: 250px;
    }
}

/* Telas muito pequenas */
@media (max-width: 480px) {
    .login-form[b-fdxil5zgow] {
        padding: 1rem;
    }

    h3[b-fdxil5zgow] {
        font-size: 20px;
    }
}
/* /Pages/TransactionsListing.razor.rz.scp.css */
/* ============================================
   ESPAudit - TransactionsListing
   CSS Isolado (scoped)
   Paleta: Cinzas + Laranja (#ff8c00) + Verde (#4caf50) + Azul (#2196f3)
   ============================================ */

/* Container Principal */
.transactions-container[b-wtom96sjjq] {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 2rem;
    box-sizing: border-box;
}

/* ========== LOADING ========== */
.loading-container[b-wtom96sjjq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    gap: 1rem;
}

.loading-spinner[b-wtom96sjjq] {
    width: 50px;
    height: 50px;
    border: 4px solid #f0f0f0;
    border-top-color: #ff8c00;
    border-radius: 50%;
    animation: spin-b-wtom96sjjq 1s linear infinite;
}

@keyframes spin-b-wtom96sjjq {
    to {
        transform: rotate(360deg);
    }
}

/* ========== BREADCRUMB ========== */
.breadcrumb[b-wtom96sjjq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
    font-size: 0.9rem;
    color: #666;
}

.breadcrumb-link[b-wtom96sjjq] {
    color: #ff8c00;
    text-decoration: none;
    transition: color 0.3s;
}

    .breadcrumb-link:hover[b-wtom96sjjq] {
        color: #e67e00;
        text-decoration: underline;
    }

.breadcrumb-separator[b-wtom96sjjq] {
    color: #999;
}

.breadcrumb-current[b-wtom96sjjq] {
    color: #333;
    font-weight: 600;
}

/* ========== HEADER DO CLIENTE ========== */
.client-header-card[b-wtom96sjjq] {
    background: white;
    border-radius: 16px;
    padding: 2rem;
    margin-bottom: 2rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    border: 2px solid #e0e0e0;
}

.client-header-top[b-wtom96sjjq] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.client-info-section[b-wtom96sjjq] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex: 1;
}

.client-avatar-large[b-wtom96sjjq] {
    width: 70px;
    height: 70px;
    border-radius: 14px;
    background: linear-gradient(135deg, #fff8f0, #ffe8cc);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.2rem;
    border: 2px solid #ffd699;
    flex-shrink: 0;
}

.client-info-text h1[b-wtom96sjjq] {
    font-size: 1.75rem;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 0.25rem 0;
}

.client-info-text p[b-wtom96sjjq] {
    font-size: 0.95rem;
    color: #666;
    margin: 0;
}

.client-header-actions[b-wtom96sjjq] {
    display: flex;
    gap: 0.75rem;
}

.btn[b-wtom96sjjq] {
    padding: 0.75rem 1.5rem;
    border-radius: 10px;
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s;
    border: none;
    font-family: inherit;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.btn-secondary[b-wtom96sjjq] {
    background: white;
    border: 2px solid #e0e0e0;
    color: #333;
}

    .btn-secondary:hover[b-wtom96sjjq] {
        border-color: #ff8c00;
        background: #fff8f0;
        transform: translateY(-2px);
    }

.btn-primary[b-wtom96sjjq] {
    background: linear-gradient(135deg, #ff8c00, #e67e00);
    color: white;
    box-shadow: 0 4px 12px rgba(255, 140, 0, 0.3);
}

    .btn-primary:hover[b-wtom96sjjq] {
        transform: translateY(-2px);
        box-shadow: 0 6px 16px rgba(255, 140, 0, 0.4);
    }

/* ========== FILTROS E STATS ========== */
.filters-stats-section[b-wtom96sjjq] {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 1.5rem;
    margin-bottom: 2rem;
}

.filters-card[b-wtom96sjjq], .stats-card[b-wtom96sjjq] {
    background: white;
    border-radius: 16px;
    padding: 1.75rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.card-title[b-wtom96sjjq] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 1.25rem 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.card-icon[b-wtom96sjjq] {
    font-size: 1.3rem;
}

.filter-group[b-wtom96sjjq] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.filter-label[b-wtom96sjjq] {
    font-size: 0.85rem;
    font-weight: 600;
    color: #555;
}

.filter-select[b-wtom96sjjq] {
    padding: 0.75rem;
    border: 2px solid #e0e0e0;
    border-radius: 10px;
    font-size: 0.95rem;
    font-family: inherit;
    background: white;
    transition: all 0.3s;
}

    .filter-select:focus[b-wtom96sjjq] {
        outline: none;
        border-color: #ff8c00;
        box-shadow: 0 0 0 3px rgba(255, 140, 0, 0.1);
    }

.stats-grid[b-wtom96sjjq] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1.25rem;
}

.stat-item[b-wtom96sjjq] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: linear-gradient(135deg, #f8f9fa, #e9ecef);
    border-radius: 12px;
    border: 1px solid #e0e0e0;
    transition: all 0.3s;
}

    .stat-item:hover[b-wtom96sjjq] {
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    }

.stat-icon[b-wtom96sjjq] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

    .stat-icon.total[b-wtom96sjjq] {
        background: linear-gradient(135deg, #e3f2fd, #bbdefb);
        color: #1976d2;
    }

    .stat-icon.value[b-wtom96sjjq] {
        background: linear-gradient(135deg, #fff8f0, #ffe8cc);
        color: #ff8c00;
    }

    .stat-icon.types[b-wtom96sjjq] {
        background: linear-gradient(135deg, #f3e5f5, #e1bee7);
        color: #8e24aa;
    }

.stat-content[b-wtom96sjjq] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.stat-label[b-wtom96sjjq] {
    font-size: 0.75rem;
    color: #666;
    font-weight: 500;
}

.stat-value[b-wtom96sjjq] {
    font-size: 1.15rem;
    font-weight: 700;
    color: #1a1a1a;
}

/* ========== TABELA DE TRANSAÇÕES ========== */
.transactions-table-card[b-wtom96sjjq] {
    background: white;
    border-radius: 16px;
    padding: 0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    overflow: hidden;
}

.table-header[b-wtom96sjjq] {
    padding: 1.75rem 2rem;
    border-bottom: 2px solid #f0f0f0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

    .table-header h3[b-wtom96sjjq] {
        font-size: 1.1rem;
        font-weight: 600;
        color: #1a1a1a;
        margin: 0;
        display: flex;
        align-items: center;
        gap: 0.5rem;
    }

.table-actions[b-wtom96sjjq] {
    display: flex;
    gap: 0.75rem;
}

.btn-icon[b-wtom96sjjq] {
    width: 38px;
    height: 38px;
    border: 2px solid #e0e0e0;
    background: white;
    border-radius: 8px;
    cursor: pointer;
    font-size: 1.1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s;
}

    .btn-icon:hover[b-wtom96sjjq] {
        border-color: #ff8c00;
        background: #fff8f0;
        transform: translateY(-2px);
    }

.table-container[b-wtom96sjjq] {
    overflow-x: auto;
}

.transactions-table[b-wtom96sjjq] {
    width: 100%;
    border-collapse: collapse;
}

    .transactions-table thead[b-wtom96sjjq] {
        background: linear-gradient(135deg, #f8f9fa, #e9ecef);
    }

    .transactions-table th[b-wtom96sjjq] {
        padding: 1rem 1.5rem;
        text-align: left;
        font-size: 0.8rem;
        font-weight: 700;
        color: #666;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        border-bottom: 2px solid #e0e0e0;
    }

    .transactions-table td[b-wtom96sjjq] {
        padding: 1.25rem 1.5rem;
        border-bottom: 1px solid #f0f0f0;
        font-size: 0.95rem;
    }

    .transactions-table tbody tr[b-wtom96sjjq] {
        transition: background 0.2s;
    }

        .transactions-table tbody tr:hover[b-wtom96sjjq] {
            background: #fafbfc;
        }

.transaction-id[b-wtom96sjjq] {
    font-family: 'Courier New', monospace;
    font-size: 0.85rem;
    color: #666;
    font-weight: 600;
}

.transaction-date[b-wtom96sjjq] {
    color: #666;
}

.transaction-type[b-wtom96sjjq] {
    display: inline-block;
    padding: 0.35rem 0.85rem;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
}

.type-compra[b-wtom96sjjq] {
    background: linear-gradient(135deg, #e3f2fd, #bbdefb);
    color: #1976d2;
}

.type-venda[b-wtom96sjjq] {
    background: linear-gradient(135deg, #e8f5e9, #c8e6c9);
    color: #2e7d32;
}

.type-pagamento[b-wtom96sjjq] {
    background: linear-gradient(135deg, #fff8f0, #ffe8cc);
    color: #ff8c00;
}

.transaction-value[b-wtom96sjjq] {
    font-weight: 700;
    color: #1a1a1a;
    font-size: 1rem;
}

.nf-link[b-wtom96sjjq] {
    color: #2196f3;
    text-decoration: none;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.35rem;
    transition: color 0.2s;
}

    .nf-link:hover[b-wtom96sjjq] {
        color: #1976d2;
        text-decoration: underline;
    }

.nf-unavailable[b-wtom96sjjq] {
    color: #999;
    font-style: italic;
}

/* ========== PAGINAÇÃO ========== */
.pagination[b-wtom96sjjq] {
    padding: 1.5rem 2rem;
    border-top: 2px solid #f0f0f0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.pagination-info[b-wtom96sjjq] {
    font-size: 0.9rem;
    color: #666;
}

.pagination-controls[b-wtom96sjjq] {
    display: flex;
    gap: 0.5rem;
}

.pagination-btn[b-wtom96sjjq] {
    width: 36px;
    height: 36px;
    border: 2px solid #e0e0e0;
    background: white;
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.9rem;
    font-weight: 600;
    transition: all 0.3s;
}

    .pagination-btn:hover:not(:disabled)[b-wtom96sjjq] {
        border-color: #ff8c00;
        background: #fff8f0;
    }

    .pagination-btn:disabled[b-wtom96sjjq] {
        opacity: 0.4;
        cursor: not-allowed;
    }

    .pagination-btn.active[b-wtom96sjjq] {
        background: linear-gradient(135deg, #ff8c00, #e67e00);
        color: white;
        border-color: #ff8c00;
    }

/* ========== EMPTY STATE ========== */
.empty-state[b-wtom96sjjq] {
    text-align: center;
    padding: 4rem 2rem;
}

.empty-icon[b-wtom96sjjq] {
    font-size: 4rem;
    margin-bottom: 1rem;
    opacity: 0.3;
}

.empty-title[b-wtom96sjjq] {
    font-size: 1.35rem;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 0.5rem 0;
}

.empty-text[b-wtom96sjjq] {
    font-size: 0.95rem;
    color: #666;
    margin: 0;
    line-height: 1.6;
}

/* ========== RESPONSIVIDADE ========== */
@media (max-width: 1024px) {
    .filters-stats-section[b-wtom96sjjq] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .transactions-container[b-wtom96sjjq] {
        padding: 1rem;
    }

    .client-header-top[b-wtom96sjjq] {
        flex-direction: column;
        align-items: flex-start;
    }

    .client-header-actions[b-wtom96sjjq] {
        width: 100%;
    }

    .btn[b-wtom96sjjq] {
        flex: 1;
        justify-content: center;
    }

    .stats-grid[b-wtom96sjjq] {
        grid-template-columns: 1fr;
    }

    .table-header[b-wtom96sjjq] {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }

    .table-actions[b-wtom96sjjq] {
        width: 100%;
        justify-content: flex-end;
    }

    .transactions-table th[b-wtom96sjjq],
    .transactions-table td[b-wtom96sjjq] {
        padding: 0.75rem;
        font-size: 0.85rem;
    }

    .pagination[b-wtom96sjjq] {
        flex-direction: column;
        gap: 1rem;
    }
}

@media (max-width: 480px) {
    .client-info-section[b-wtom96sjjq] {
        flex-direction: column;
        text-align: center;
    }

    .client-header-actions[b-wtom96sjjq] {
        flex-direction: column;
    }

    .pagination-controls[b-wtom96sjjq] {
        flex-wrap: wrap;
        justify-content: center;
    }
}
/* /Pages/Users.razor.rz.scp.css */
/* Container principal da página */
.users-page[b-f61pehk334] {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 2rem;
    background-color: white;
    font-family: Arial, sans-serif;
    box-sizing: border-box;
}

h3[b-f61pehk334] {
    font-size: 24px;
    font-weight: bold;
    color: #333333;
    margin-bottom: 10px;
}

hr[b-f61pehk334] {
    border: none;
    border-top: 2px solid #e0e0e0;
    margin-bottom: 30px;
}

/* ============================================
   ALERTAS
============================================ */
.alert[b-f61pehk334] {
    padding: 12px 15px;
    border-radius: 4px;
    margin-bottom: 20px;
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.alert-success[b-f61pehk334] {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.alert-danger[b-f61pehk334] {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

/* ============================================
   SEÇÃO DE CADASTRO (FORMULÁRIO)
============================================ */
.form-section[b-f61pehk334] {
    background-color: #fafafa;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 30px;
}

    .form-section h4[b-f61pehk334] {
        font-size: 18px;
        color: #ff8c00;
        margin-bottom: 20px;
        font-weight: bold;
    }

.form-row[b-f61pehk334] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
    margin-bottom: 20px;
}

.form-group[b-f61pehk334] {
    display: flex;
    flex-direction: column;
}

    .form-group label[b-f61pehk334] {
        font-size: 14px;
        color: #555;
        margin-bottom: 5px;
        font-weight: 500;
    }

    /* Form controls */
    [b-f61pehk334] .form-control,
    [b-f61pehk334] input.form-control,
    [b-f61pehk334] input[type="text"],
    [b-f61pehk334] input[type="password"],
    [b-f61pehk334] input[type="email"],
    .form-group .form-control[b-f61pehk334],
    .form-group input[b-f61pehk334] {
        width: 100%;
        height: 35px;
        border: 1px solid #ff8c00 !important;
        border-radius: 4px;
        padding: 0 10px;
        font-size: 14px;
        background-color: #ffffff !important;
        box-sizing: border-box;
        outline: none !important;
        box-shadow: none !important;
    }

        [b-f61pehk334] .form-control:focus,
        [b-f61pehk334] input.form-control:focus,
        [b-f61pehk334] input[type="text"]:focus,
        [b-f61pehk334] input[type="password"]:focus,
        [b-f61pehk334] input[type="email"]:focus,
        .form-group .form-control:focus[b-f61pehk334],
        .form-group input:focus[b-f61pehk334] {
            border: 1px solid #e94e1b !important;
            box-shadow: 0 0 0 2px rgba(255, 140, 0, 0.25) !important;
            background-color: #ffffff !important;
            outline: none !important;
        }

        /* Anula estilos de validação do Blazor */
        [b-f61pehk334] .form-control.valid,
        [b-f61pehk334] .form-control.invalid,
        [b-f61pehk334] .form-control.modified,
        [b-f61pehk334] .form-control.valid.modified,
        [b-f61pehk334] .form-control.invalid.modified,
        [b-f61pehk334] input.valid,
        [b-f61pehk334] input.invalid,
        [b-f61pehk334] input.modified,
        .form-group .form-control.valid[b-f61pehk334],
        .form-group .form-control.invalid[b-f61pehk334],
        .form-group input.valid[b-f61pehk334],
        .form-group input.invalid[b-f61pehk334] {
            background-color: #ffffff !important;
            border: 1px solid #ff8c00 !important;
            box-shadow: none !important;
            outline: none !important;
            background-image: none !important;
        }

            [b-f61pehk334] .form-control.valid:focus,
            [b-f61pehk334] .form-control.invalid:focus,
            [b-f61pehk334] .form-control.modified:focus,
            [b-f61pehk334] input.valid:focus,
            [b-f61pehk334] input.invalid:focus,
            .form-group .form-control.valid:focus[b-f61pehk334],
            .form-group .form-control.invalid:focus[b-f61pehk334],
            .form-group input.valid:focus[b-f61pehk334],
            .form-group input.invalid:focus[b-f61pehk334] {
                border: 1px solid #e94e1b !important;
                box-shadow: 0 0 0 2px rgba(255, 140, 0, 0.25) !important;
                background-color: #ffffff !important;
                outline: none !important;
                background-image: none !important;
            }

/* Mensagens de validação */
[b-f61pehk334] .validation-message,
.validation-message[b-f61pehk334] {
    color: #dc3545;
    font-size: 12px;
    margin-top: 5px;
}

.button-row[b-f61pehk334] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 20px;
}

.btn[b-f61pehk334] {
    height: 35px;
    padding: 0 25px;
    font-size: 14px;
    font-weight: bold;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-primary[b-f61pehk334] {
    background-color: #ff8c00;
    color: white;
}

    .btn-primary:hover[b-f61pehk334] {
        background-color: #e67e00;
    }

    .btn-primary:focus[b-f61pehk334] {
        outline: none;
        box-shadow: 0 0 0 2px rgba(255, 140, 0, 0.4);
    }

.btn-secondary[b-f61pehk334] {
    background-color: #e0e0e0;
    color: #555;
}

    .btn-secondary:hover[b-f61pehk334] {
        background-color: #d0d0d0;
    }

.btn:disabled[b-f61pehk334] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* ============================================
   SEÇÃO DE LISTAGEM (TABELA)
============================================ */
.list-section[b-f61pehk334] {
    margin-top: 30px;
}

    .list-section h4[b-f61pehk334] {
        font-size: 18px;
        color: #333;
        margin-bottom: 20px;
        font-weight: bold;
    }

.table-container[b-f61pehk334] {
    overflow-x: auto;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
}

table[b-f61pehk334] {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    table-layout: fixed; /* ← Ativa controle manual de larguras */
}

thead[b-f61pehk334] {
    background-color: #ff8c00;
    color: white;
}

    thead th[b-f61pehk334] {
        padding: 12px;
        text-align: left;
        font-weight: bold;
    }

        /* ✅ Larguras específicas por coluna */
        thead th:nth-child(1)[b-f61pehk334] { /* Nome */
            width: 35%;
        }

        thead th:nth-child(2)[b-f61pehk334] { /* E-mail (Login) */
            width: 35%;
        }

        thead th:nth-child(3)[b-f61pehk334] { /* Status */
            width: 15%;
        }

        thead th:nth-child(4)[b-f61pehk334] { /* Ações */
            width: 15%;
        }

tbody tr[b-f61pehk334] {
    border-bottom: 1px solid #e0e0e0;
    transition: background-color 0.2s ease;
}

    tbody tr:hover[b-f61pehk334] {
        background-color: #fff8f0;
    }

tbody td[b-f61pehk334] {
    padding: 12px;
    color: #555;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Badge de status */
.status-badge[b-f61pehk334] {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: bold;
}

.status-permitido[b-f61pehk334] {
    background-color: #d4edda;
    color: #155724;
}

.status-bloqueado[b-f61pehk334] {
    background-color: #f8d7da;
    color: #721c24;
}

/* Ícones de ação na tabela */
.action-buttons[b-f61pehk334] {
    display: flex;
    gap: 15px;
    align-items: center;
    justify-content: flex-start; /* ← Alinha os ícones à esquerda */
}

.action-icon[b-f61pehk334] {
    font-size: 18px;
    cursor: pointer;
    transition: all 0.2s ease;
    padding: 5px;
    border-radius: 4px;
}

    .action-icon:hover[b-f61pehk334] {
        transform: scale(1.2);
    }

/* Ícone de editar (lápis) */
.icon-edit[b-f61pehk334] {
    color: #0066cc;
}

    .icon-edit:hover[b-f61pehk334] {
        background-color: #e7f3ff;
    }

/* Ícone de bloquear (cadeado fechado) */
.icon-lock[b-f61pehk334] {
    color: #ffc107;
}

    .icon-lock:hover[b-f61pehk334] {
        background-color: #fff8e7;
    }

/* Ícone de desbloquear (cadeado aberto) */
.icon-unlock[b-f61pehk334] {
    color: #4caf50;
}

    .icon-unlock:hover[b-f61pehk334] {
        background-color: #e8f5e9;
    }

/* Ícone de excluir (lixeira) */
.icon-delete[b-f61pehk334] {
    color: #dc3545;
}

    .icon-delete:hover[b-f61pehk334] {
        background-color: #f8d7da;
    }

/* Estados especiais */
.loading-state[b-f61pehk334],
.empty-state[b-f61pehk334] {
    text-align: center;
    padding: 40px;
    color: #999;
    font-size: 14px;
}

    .empty-state i[b-f61pehk334] {
        font-size: 48px;
        margin-bottom: 15px;
        display: block;
    }

/* ============================================
   RESPONSIVIDADE
============================================ */
@media (max-width: 768px) {
    .users-page[b-f61pehk334] {
        padding: 1.5rem;
    }

    .form-row[b-f61pehk334] {
        grid-template-columns: 1fr;
    }

    .button-row[b-f61pehk334] {
        flex-direction: column;
    }

    .btn[b-f61pehk334] {
        width: 100%;
    }

    table[b-f61pehk334] {
        font-size: 12px;
        table-layout: auto; /* ← Remove fixed em mobile */
    }

    /* Remove larguras fixas em mobile */
    thead th:nth-child(1)[b-f61pehk334],
    thead th:nth-child(2)[b-f61pehk334],
    thead th:nth-child(3)[b-f61pehk334],
    thead th:nth-child(4)[b-f61pehk334] {
        width: auto;
    }

    thead th[b-f61pehk334],
    tbody td[b-f61pehk334] {
        padding: 8px;
    }

    tbody td[b-f61pehk334] {
        white-space: normal; /* ← Permite quebra de linha em mobile */
    }

    .action-buttons[b-f61pehk334] {
        flex-direction: column;
        gap: 8px;
    }
}

@media (max-width: 480px) {
    .users-page[b-f61pehk334] {
        padding: 1rem;
    }

    h3[b-f61pehk334] {
        font-size: 20px;
    }
}
